-
-
Notifications
You must be signed in to change notification settings - Fork 529
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Auto-Create Migrations #257
Comments
I don't see myself using such a feature. I like having control over the architecture of the DB. As such, I like to have conscientious control over migrations, and not have them auto-generated. |
I'm a huge fan of migration-diff generation, and would like to help work to get this in. I'm not interested in duplicating model definitions across my migrations. I want to either write the migration or the model change, not both. To me that's one of the main benefits of an ORM. I'm interested to know why you went with |
Diffs are quite ambitious, generating a base migration from existing model would be great for starters. This gist https://gist.github.com/manuelbieh/ae3b028286db10770c81 gives the gist of it. |
@benirose Have you made any progress on this? Doesn't seem like sequelize is prioritizing it from their roadmap page, but there is some interest in the comments. Curious if this is the most developed attempt at an equivalent to Django's South auto migration feature for sequelize or any other NodeJS ORM module. |
I sadly haven't had time/focus to work on it. My project needs also changed from MySQL to Mongo, so I'm not actively focused on using this library. I'd still like to contribute when I have some more time though. |
+1 to auto-migration generator feature. |
+1 |
1 similar comment
+1 |
So @Americas what about this highly requested feature ? |
+1 |
+1. This would be an awesome feature |
👍 - this is one of best things about Entity Framework as well. I'd be happy to help with this. |
+1 |
3 similar comments
+1 |
+1 |
+1 |
+10086 |
+1 |
1 similar comment
+1 |
Are there any other alternate ORMs supporting auto migrations? |
+1000000000000000 |
Hi. I make my own module to do it. It works, but have some issues. |
@flexxnn thank you it looks awesome. I'll give it a go soon |
+1 definitely some feature I would love to have on the ORM |
@flexxnn you implement your own migrations, not using sequelize's method. maybe we can change this to use regular migrations? |
+1. |
+1. Help @flexxnn's solution. |
+1. |
+1k |
+1 I would love this feature that has existed for a long time in Django. |
Any progress on that? It is something which really should be implemented. Entity Framework, Django, Hibernate - all works nice with migrating DB which is not possible at the moment with sequelize. |
+1 |
+1 for the completeness of the awesome Sequelize.
|
+1 |
Please, stop writing +1 comments, since Github added support for reacting to a comment, those are not needed anymore and just pollute the notifications of those subscribed to see real changes on issues. If you want to show your support to a feature, simply +1 the initial comment. That would also help maintainers to see if there's enough interest in the feature. It's easier to just have a look at the first comment and see |
@larsbs Hope the maintainers get annoyed enough to work on it. +1 👍 |
Work or ask for a patch and review without ego slaps.
|
@larsbs You're right. Sorry about that, then. |
what do you think of this approach https://medium.com/riipen-engineering/squashing-migrations-with-sequelize-5478336247e5 create schema dump file personally i want a solution where i can tell from where to where, consolidate all files. |
Hi, sequelize-auto-migrations was updated today (changelist here: flexxnn/sequelize-auto-migrations#31) |
+1 |
Only display "to get the next exercise" message if the server responds with the correct iteration value.
For those interested, keep an eye on this project. It seems to attack the issue correctly. However it's currently a WIP |
Also looking for an Auto-migration solution in Node. Djiango Migration solution is the best solution so far. wish sequelize can support it. |
I support a code-first migration feature; its the thing that is really missing here as the forced use of a CLI tool that does multiple things at once - for both model generation and migration creation - is a clear violation of DRY. |
In Python world we have
I know that it's not trivial to implement it from scratch but it would definitely improve usability of this library. And in most cases you still should review generated script before applying it to any environment as there is always some risk of error. It would be good to see some code examples of adding migrations manually as well (like simple table creation, adding foreign keys, dropping columns etc). |
I'm very surprised to see the response from the mantainers on this issue, about to stop using Sequelize because this. |
+1 |
1 similar comment
+1 |
Some of this js librarys are so weird , how can ORM not having this feature in 2024? |
Use primsa or drizzle i think a decade is enough forget this library |
I’m a bit surprised that I’m expected to maintain two separate files to represent a model. It feels like a trivial task to be able to generate a migration file directly from the class representation of a model, especially since the ORM is already interacting with the database using SQL behind the scenes. At the very least, it would be great to have the option to export the commands that are exucuted from themethod sequelize.sync() into a some sort of output (.sql file or return it as a string) |
I know this has been discussed before, but it would be really helpful if sequelize could auto-create migration scripts based on differences in sequelizer and the database.
I currently have a fork I'm testing out that attempts to solve this issue, and I wanted to open up the discussion again to make sure this would be accepted by sequelize/the community.
Right now the rules put into place for
sequelize migration:create:auto
does the following (note, this treats sequelize as canon, so it will attempt to resolve the migrations to create a state in the database that matches sequelizer imports):config/models.json
, and import the model/column definitions into sequelizer.removeColumn()
migrationaddColumn()
migration--drop
flag is present, in which case create adropTable()
migration{timestamp}-{model}-auto-{version}
, e.g.20160129135511-users-auto-0002.js
. If there were multiple changes, it will chain them all together in the same model file, relative to the models they're affecting. It will also clean any auto migration files that haven't been migrated to the database yet.This works very similar to how Django's South works, but it's a little less fleshed out. It (currently) doesn't handle column alters, indexes, associations, etc. Before I (or someone else I suppose) continues development on it I'd like to start a discussion to see if this is worth pursuing and if the owners have any hesitations on this.
The text was updated successfully, but these errors were encountered: