FasterXML / jackson-modules-java8

Set of support modules for Java 8 datatypes (Optionals, date/time) and features (parameter names)
Apache License 2.0
401 stars 117 forks source link

[Question] How manage module version policies? #160

Closed joongsoo closed 4 years ago

joongsoo commented 4 years ago

Hi. jackson-module version is same to jackson. so how do manage the versioning of the module source code changes?

If the module code is changed, will it overwrite release the existing same version?

kupci commented 4 years ago

Hi, for questions, these are best sent to the Jackson Discussion list groups:

The easiest ways to participate beyond using Jackson is to join one of Jackson mailing lists (Jackson google groups): Jackson User (https://groups.google.com/forum/#!forum/jackson-user): List dedicated for discussion on Jackson usage -or- Jackson Dev (https://groups.google.com/forum/#!forum/jackson-dev): List for developers of Jackson core components and modules, discussing implementation details, API changes.

But if I'm understanding your question right, you would use Maven, or whatever your preferred dependency management tool is (Apache Ivy is one I'm most familiar with, but it follows Maven conventions) to define the version you want like so:

  <groupId>com.fasterxml.jackson.module</groupId>
    <artifactId>jackson-modules-java8</artifactId>
    <version>3.0.0-SNAPSHOT</version>

and then (using Ivy terminology) when you resolve the dependencies, that should pull down the correct version, and overwrite the existing version with the new one.

There's also a 'bill of materials' file: https://github.com/FasterXML/jackson-bom

https://github.com/FasterXML/jackson

cowtowncoder commented 4 years ago

Also worth noting is that Jackson github repos have branches for different minor versions: so any changes to be released as 2.10.x patches need to go in 2.10 branch. master branch is currently for the next major version (3.0) and it will take quite a while until that gets released.

Modules use a parent pom (jackson-base) to get most settings, for what that is worth.

One thing that is often done with new modules is to first create a separate stand-alone repository, and once things work, I can help either transfer module under FasterXML, or, in case of multi-module project, add as sub-module (like happens with this repository, and jackson-modules-base).

joongsoo commented 4 years ago

Thanks for your reply! If I have another chance to ask questions, I will ask the forum.