Changelog - order

I notice the dates on the changelog items are not necessarily in order.
Should these items be executed in order of the date to the left of the heading?

Good question - in general I'd trust the order of appearance over the date. The date reflects when the changelog was first written, and the order reflects when it was committed to the master branch. That said, I expect changelogs to be relatively independent of one another. If you open them up, each contains a bit of context around what precursor steps are necessary.

Also, the steps in the changelog may sometimes depend on the code versions which were live at the time. I would not be surprised if some of them reference commands that have since been removed. If you run into such issues, you might try checking out older versions of the code from that time period, but that would also require dependencies and databases to be compatible. One approach to updating a very old environment would be to do it in steps from changelog to changelog, deploying contemporaneous code at each stage.

Dimagi does try to keep things backwards compatible for a period to allow environments to be kept up-to-date with minimal friction (see here for a description of how we expect CommCareHQ environments to be maintened). We've also been working on a more in-depth document detailing our commitments of that nature, stay tuned for that.

1 Like

Thanks for that clarity Ethan, that makes sense. It would also explain why I've run into trouble with one or two instances that hadn't been maintained regularly. Thanks for that tip on checking out code relative to the changelog, that puts it in perspective for me.