4 ms·
It's better to only change one thing at a time, not to get your dependencies updated as a surprise when you're trying to update something else. Besides, if the
by ReactiveJelly 5y ago
It's better to only change one thing at a time, not to get your dependencies updated as a surprise when you're trying to update something else.
Besides, if the dependencies aren't pinned in version control, how can you answer a query like "On this date last year, what version were we running?"
- oxfordmale 5y agoI am using AWS ECS as a Docker repo with releases using the image hash (as well as a server). If you want to rollback to a certain time, you just identify the appropriate Docker image tag, and restore the Docker you used at that time in your development environment. To give an example, we got stuck on Python Pandas 0.24.2 for two years when the Pandas 1.0 upgrade happened. At the time we pinned the version as one job was failing. With COVID priorities naturally changed and this was forgotten. When normality returned we suddenly had to upgrade 10 jobs to Pandas 1.2.x, a very painful migration that took one Engineer 4 weeks of testing. In hindsight it would have been far better to upgrade this one job, as it would have only taken a few hours. Again it is a trade off. Having unexpected dependency changes can be cumbersome when you are releasing a small change. However, getting senior management to agree of weeks of upgrade testing can be challenging as well. My natural preference is not to pin versions, unless I absolutely have to.