Squash Tagging Migrations [FC-0030] - #95
Conversation
|
Thanks for the pull request, @bradenmacdonald! Please note that it may take us up to several weeks or months to complete a review and merge your PR. Feel free to add as much of the following information to the ticket as you can:
All technical communication about the code itself will be done via the GitHub pull request interface. As a reminder, our process documentation is here. Please let us know once your PR is ready for our review and all tests are green. |
ca56aff to
2c28544
Compare
pomegranited
left a comment
There was a problem hiding this comment.
👍 This works fine, thank you @bradenmacdonald !
I recommend merging this and tagging a new release and using 0.2.3 in openedx/openedx-platform#33438, so that all of this makes it into Quince.
|
@bradenmacdonald 🎉 Your pull request was merged! Please take a moment to answer a two question survey so we can improve your experience in the future. |
This squashes all the migrations from 0001 through 0011 into a single file. The old migrations are kept in place for now, per best practice, but they are unused and can soon be deleted.
Once openedx/openedx-platform#33438 is merged, the only migration that edx-platform refers to will be
0012_language_taxonomywhich is kept unchanged as an un-squashed migration. This is nice because it means that after we merge this, we don't have to make any corresponding changes to edx-platform; it won't have any references to any of the squashed migrations. However, we would have to merge a version bump PR to make sure this version of openedx-learning with the squashed PRs is used. I believe the Quince cutoff is scheduled for tomorrow, but I'm hoping we can get this in on time as having the squashed migrations will make things easier to reason about.Why I want to squash the migrations: one of the migrations loaded data from a fixture, which I realize now is a bad practice as it means that changes to the fixture file are not reflected in the migration. In this case we don't even need the fixture any more but deleting it and changing the migration accordingly turned out to produce a string of minor whack-a-mole problems. Likewise, one of the migrations included an import of a mixin that is now deleted, and so the migration actually failed even though we didn't modify it. So we had to change an existing migration just to avoid a bug on new installations of this repo. To resolve all these things cleanly and make things easier, it's best to just squash the migrations.
Once this PR is merged, the tagging app will essentially have only two migrations:
0001_squashedand0012_language_taxonomy. Future migrations will start with0013and proceed from there. But for the time being, we keep copies of the unsquashed migration files until we're sure that nobody has an intermediate state deployed. We can delete them in a week or two.Private-ref: FAL-3477