Skip to content

Commit

Permalink
Prevent runtime incompatibility with 'early-semver' content-api-model…
Browse files Browse the repository at this point in the history
…s-scala

Now that guardian/content-api-models#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
guardian/facia-scala-client#301 which occurred
with the rollout of the innocent-looking changes in
https://github.com/guardian/facia-scala-client/releases/tag/v4.0.6 .
  • Loading branch information
rtyley committed Jan 25, 2024
1 parent a2acce2 commit 253f60e
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion project/Dependencies.scala
Original file line number Diff line number Diff line change
Expand Up @@ -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"
Expand Down

0 comments on commit 253f60e

Please sign in to comment.