From 253f60e50aa3427d2b01b140f5e6787c4f2c1d2c Mon Sep 17 00:00:00 2001 From: Roberto Tyley Date: Thu, 25 Jan 2024 13:55:35 +0000 Subject: [PATCH] Prevent runtime incompatibility with 'early-semver' content-api-models-scala Now that https://github.com/guardian/content-api-models/pull/232 has been merged and https://github.com/guardian/content-api-models/releases/tag/v18.0.1 has been released, the content-api-models models now declare themselves to adhere to 'early-semver' - and even more than that, thanks to sbt-version-policy, they actually _do_ adhere to it! This should mean that it is **no longer possible** for a single project that depends on content-api-scala-client & content-api-models to have _incompatible_ versions of those artifacts - sbt will reject the incompatibility **at compile time**, where it can be fixed by just ensuring that all libraries (eg including facia-scala-client) have all been compiled against the same versions: https://www.scala-lang.org/blog/2021/02/16/preventing-version-conflicts-with-versionscheme.html This should prevent horrible runtime errors like https://github.com/guardian/facia-scala-client/issues/301 which occurred with the rollout of the innocent-looking changes in https://github.com/guardian/facia-scala-client/releases/tag/v4.0.6 . --- project/Dependencies.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/project/Dependencies.scala b/project/Dependencies.scala index ae951f97..e5e99091 100644 --- a/project/Dependencies.scala +++ b/project/Dependencies.scala @@ -2,7 +2,7 @@ import sbt._ object Dependencies { val scalaVersions = Seq("2.12.18", "2.13.12") - val capiModelsVersion = "18.0.0" + val capiModelsVersion = "18.0.1" val thriftVersion = "0.15.0" val commonsCodecVersion = "1.10" val scalaTestVersion = "3.0.8"