4 ms·
Bumping your comment because I would like to know. I'm following the github thread.
by 0xff00ffee 6y ago
Bumping your comment because I would like to know. I'm following the github thread.
- jakear 6y agoPotentially. If cra had pinned all their deps, and used a bot to automatically bump deps contingent on passing a comprehensive regression matrix, this would have been avoided. GitHub's Dependabot is good for this. In my opinion everybody besides libraries should pin deps and use dependabot.
- gombosg 6y agoExactly. We use Renovatebot for the same purpose. It pins dependencies and creates PRs for updates. Amazing to see how often the builds break, even sometimes after minor updates. But at least we fix them before release, and not after... :)
- jakear 6y agoYep. One of the very nice things about npm/node versus python or go or some others is that package locks and dependency pinning is possible. But few people seem to use it. I’ve seen reports of people using a go library that gets a minor update and breaks their app, at which point they become SOL as go always installs the lad test version. I myself have been working in python projects where the dockerfile simply says “pip install blah” and I get different deps than the working version. No clue why anyone would be okay with working like that.
- jen20 6y agoIt's not true that Go always installs the latest version of a dependency. `go get github.com/x/y@v1.3.4` installs v1.3.4 of x/y, assuming there is a tag matching that.
- jakear 6y agoI’m not familiar with go, would this persist to other people attempting to install the package? The issue I’ve seen is: https://github.com/go-yaml/yaml/issues/558 https://github.com/go-yaml/yaml/issues/558 > Please do follow semver as it's a nightmare for us to manage particularly using go module (you can't stick to a particular version). And of course everybody’s idea of a breaking change is different, so this idea that you can’t install a particular version seems unworkable.
- detaro 6y agoIf they'd pinned the dependency versions, and ran the tests before updating the pins, the tests should have catched it.