Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Would it be possible to publish this library for circe 0.14? #346

Open
ScalaWilliam opened this issue Sep 1, 2021 · 25 comments
Open

Would it be possible to publish this library for circe 0.14? #346

ScalaWilliam opened this issue Sep 1, 2021 · 25 comments

Comments

@ScalaWilliam
Copy link

ScalaWilliam commented Sep 1, 2021

I see the latest build is already on 0.14 however the badge shows the latest released is for 0.13.

cc @travisbrown

Many thanks!

@travisbrown
Copy link
Member

@ScalaWilliam This library depends only on circe-core, which is backwards-binary-compatible in 0.14 with 0.13, so you can use the 0.13 circe-derivation releases safely with 0.14. I can publish an 0.14 release for convenience, but might not get around to it today.

@ScalaWilliam
Copy link
Author

Thanks for clarifying @travisbrown ! Yes that would be great - but noted, I will use the version that is published.

@threeseed
Copy link

@travisbrown .. This breaks sbt-assembly though.

Is this project abandoned or just wondering why it's not published in sync with other circe projects ?

@ScalaWilliam
Copy link
Author

@travisbrown .. This breaks sbt-assembly though.

Is this project abandoned or just wondering why it's not published in sync with other circe projects ?

breaks how? perhaps transitive dependency?

@threeseed
Copy link

@ScalaWilliam .. Ignore me. I forgot that you can just exclude specific transitive dependencies.

Point still stands why this can't be in sync with the others.

@adamnfish
Copy link

adamnfish commented Sep 29, 2022

Since circe 0.14.3 I'm seeing version conflict errors between circe 0.13.0 (pulled in by this library) and 0.14.x from the rest of the ecosystem. I'm not sure what it is about that latest patch update in particular that's caused the errors to start appearing*, but I wonder if you'd reconsider publishing this library for 0.14.x?

[Update]: I've been pointed at this PR, so it sounds like this is already in-flight. Thank you!

* Perhaps the scala-native support that appeared in 0.14.3 is relevant?

@armanbilge
Copy link

Perhaps the scala-native support that appeared in 0.14.3 is relevant?

It's not :) it was the change to the sbt-typelevel plugin for publishing, that started including the versioning scheme (early-semver).

@nafg
Copy link

nafg commented Nov 1, 2022

Is there any way I can help with this?

@matthughes
Copy link

Can we provide an example/document how you would override these eviction errors?

@armanbilge
Copy link

armanbilge commented Nov 18, 2022

Something like this I reckon:

libraryDependencySchemes ++= Seq(
  "io.circe" %% "circe-core" % VersionScheme.Always
)

@adamnfish
Copy link

You can write this in your build.sbt. Of course, this will prevent real warnings from showing up so use with caution!

ThisBuild / libraryDependencySchemes += "io.circe" %% "circe-core" % VersionScheme.Always

@nafg
Copy link

nafg commented Nov 20, 2022

@armanbilge do you know what's preventing publishing it? Who has the ability, and is there anything that needs to be done first?

@nickyrayray
Copy link

+1 on releasing a new version with 0.14. Would love to help contribute if there are any blockers to this.

@neko-kai
Copy link
Contributor

neko-kai commented Feb 5, 2023

Same issue since circe-core 0.14, makes it extremely painful to use libraries that themselves depend on circe-derivation, since every project using them needs to include the version scheme exclusion.

neko-kai added a commit to 7mind/izumi that referenced this issue Feb 5, 2023
…ivation#346

* Remove internal dependency on `fundamentals-json-circe` (unused)
* Move `CirceTool` from fundamentals-reflection to fundamentals-json-circe
neko-kai added a commit to 7mind/izumi that referenced this issue Feb 5, 2023
…ivation#346 (#1890)

* Remove internal dependency on `fundamentals-json-circe` (unused)
* Move `CirceTool` from fundamentals-reflection to fundamentals-json-circe
@zmccoy
Copy link
Member

zmccoy commented Feb 6, 2023

@nickyrayray Sorry we're catching up on all of these projects one by one, right now we need to get #423 finished up which will make releases easy.

@nafg
Copy link

nafg commented Feb 7, 2023

@zmccoy what's the status of #423? Can I help somehow?

@zmccoy
Copy link
Member

zmccoy commented Feb 7, 2023

@nafg I gave a ping to the author on there, but if someone wants to pick it up if they're gone and finish it that would be great. @zarthross and I can get that merged then and we'll be able to cut some new releases.

@nafg
Copy link

nafg commented Feb 8, 2023

@zmccoy I could but I have no idea what needs to be done

@matthughes
Copy link

matthughes commented Mar 10, 2023

@armanbilge @zmccoy So I tried the exclusion suggested above and it works my JVM project but doesn't for the JS project:

[error] 	* io.circe:circe-core_sjs1_2.13:0.14.5 (early-semver) is selected over {0.13.0, 0.14.3}
[error] 	    +- io.circe:circe-parser_sjs1_2.13:0.14.5             (depends on 0.14.5)
[error] 	    +- io.circe:circe-generic_sjs1_2.13:0.14.5            (depends on 0.14.5)
[error] 	    +- io.circe:circe-scalajs_sjs1_2.13:0.14.5            (depends on 0.14.5)
[error] 	    +- org.tpolecat:natchez-log_sjs1_2.13:0.3.0           (depends on 0.14.3)
[error] 	    +- io.circe:circe-derivation_sjs1_2.13:0.13.0-M5      (depends on 0.13.0)
[error]
[error]
[error] this can be overridden using libraryDependencySchemes or evictionErrorLevel
[error] Total time: 0 s, completed Mar 10, 2023, 11:57:31 AM
sbt:palermo-root> show commonJS/libraryDependencySchemes
[info] * io.circe:circe-core:always

Is this an SBT bug perhaps?

@matthughes
Copy link

Maybe sbt/sbt#7140?

@armanbilge
Copy link

Try something like this:

libraryDependencySchemes += "io.circe" %% "circe-core_sjs1" % VersionScheme.Always

@matthughes
Copy link

That works. This should be reported as SBT bug right?

@armanbilge
Copy link

This should be reported as SBT bug right?

SBT does not have first-class support for other non-JVM platforms, which leads to a lot of bugs like this. Unfortunately the prevailing opinion seems to be that the JS/Native user-bases are not big enough to warrant more substantial changes.

Thus, I would strongly encourage you to comment on the following discussions, in addition to the issue you linked, to demonstrate that there is a real need for first-class cross-platform support.

@f4x15
Copy link

f4x15 commented Apr 26, 2023

Hello. @travisbrown could you bump the library? Have been pass two years, so there are enough pain for all users.

@joel-apollo
Copy link
Contributor

Any progress here? @hamnis - any chance you could take a look?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests