Drop manually shaded version of circe #271
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Ok, so this PR is good news and bad news.
The good news is that this will enable publication to maven central (partially solving #262 ).
For the bad news, it'll break builds. Let's start with some...
... Background
Circe is an amazing json library, and it's used in this sbt plugin and many others. However, it's not binary compatible across versions, and earlier on it caused a lot of friction where adding the ST plugin to a build would break other plugins (using a different version of circe). Before I fixed it, binary incompatibility with older versions of circe was the number one issue with the sbt plugin.
My fix was to manually shade all the circe modules, see https://github.com/ScalablyTyped/circe and https://github.com/ScalablyTyped/circe-jackson . All these modules were published to Bintray along with the converter. Note that this was not done lightly, because it's obviously not a very nice thing to do. I spent much time on this, and no other methods seemed to work. I really have enjoyed developing plugins for sbt - it's a fantastic tool - but this single issue ruins the experience.
Publication to maven central
Now that bintray is going away we'll need a new solution here. The manually shaded version should not be published in its current form to maven central where it'll be for all eternity.
So now I'm reverting that fix. This means that
1.0.0-beta31
will be broken for some users until a new solution is found.If you read this issue I guess it'll have broken your build.
Short term options for now:
1.0.0-beta30
for a while longerPermanent solutions on the ST side:
Even more permanent solutions on the sbt side: