12:12: Geoff Knott firstname.lastname@example.org sends an email around to ask if there has been an issue with the Origami build service, with this screenshot:
The issue was on http://developer.ft.com, where this CSS would give a “400 Bad Request” error:
Body of the request:
/* Cannot complete build: Unable to find suitable version for o-colors o-colors 2.3.17 required by __MAIN__ undefined o-colors ^2.3.15 required by o-ft-header 2.5.5 o-colors ^2.2.20 required by o-hierarchical-nav ^0.2.8 o-colors ^2.3.0 required by o-ft-typography 1.12.2 o-colors ^2.4.3 required by o-ft-buttons ~1.5.2 */
The the Origami team answered within minutes with a fix:
12:16: Kaelig Deloumeau email@example.com sends a fix
There is a cross dependency issue with the modules that are being required.
Can you please the URL pointing to the build service to this one: https://build.origami.ft.com/bundles/css?modules=o-grid@^2.1.5,o-ft-icons@^2.2.2,firstname.lastname@example.org,email@example.com,firstname.lastname@example.org,email@example.com,firstname.lastname@example.org
12:25: Kaelig Deloumeau email@example.com sends a quick explanation and an update on what the Origami team will do about it:
It seems the inconvenience was caused before we’ve updated the dependencies on some modules recently, but the modules that your product were requiring had clashing interests.
We’re going to widen the dependency range so that this doesn’t happen again.
13:01: Kaelig Deloumeau firstname.lastname@example.org sends an explanation:
I am happy to announce that we’ve rolled out fixes to the dependency ranges, but the URL pointing to the build service in developer.ft.com will still return an error (you can use the URL in my previous email).
We’d like to advise against targeting specific versions of modules and caret ranges at the same time, as it increases the chance of running into such dependency issues.
In a nutshell, you should request either:
- a mix of specific versions @1.2.3 with tilde semver ranges @~1.2.x
- only caret semver ranges @^1.x.x
This is because a minor release might introduce changes that break the dependency tree.
13:05: Kaelig Deloumeau email@example.com goes to the impacted product team, speak to Ben Bernardo and Martin Garton to ask who can solve that problem in production.
13:15: Ben Bernardo firstname.lastname@example.org asks if there is some dev time from Christina to solve this problem
13:43: Ben Bernardo email@example.com:
Hi Geoff and Kaelig(+All),
Please be advised that the fix has been deployed to Prod successfully.
Special thanks to Cristina for a job well done!
Following this, Alberto Elias firstname.lastname@example.org did a series of tweaks to allow for broader dependency version tolerance in a few modules:
Following investigation, the Origami team thinks it was a build service bug, and opened a JIRA ticket ORIGBUILD-26 where further discussion should happen.