FasterXML / jackson-annotations

Core annotations (annotations that only depend on jackson-core) for Jackson data processor
https://github.com/FasterXML/jackson
Apache License 2.0
1.03k stars 330 forks source link

Jackson-annotations 2.3.1? #27

Closed ColinHebert closed 10 years ago

ColinHebert commented 10 years ago

Shouldn't there be a new version of Jackson-annotations to keep the versions in line with Jackson-core?

cowtowncoder commented 10 years ago

The idea is to drop patch release from annotations, because there really should never be any changes for annotations. Change was not communicated well; and so I think I should just go ahead and push 2.3.1 for now. With 2.4, we will only have jackson-annotations-2.4; but since there was 2.3.0, releasing 2.3.1 probably makes sense.

ColinHebert commented 10 years ago

Wouldn't that make it more complicated to track in projects using a variable for the Jackson version?

This is how I noticed that the new version of annotations wasn't available. Keeping track of two different versions for jackson and jackson annotation can be a PITA (not the end of the world though).

cowtowncoder commented 10 years ago

Possibly. But having to push more versions of annotations package, and updating matching Maven dependencies is additional work for Jackson project. So this is one case where I will be selfish and actively try to reduce amount of release work we'll do.

For many projects it may be irrelevant if they only depend on jackson-databind, and take its transitive dependency to annotations.

ColinHebert commented 10 years ago

Actually I expected databind to use the dependency to annotation this way:

    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-annotations</artifactId>
      <version>${project.version}</version>
    </dependency>

This way no-one has to worry about the version of jackson-annotation and it would always stay in line with the other jackson projects.

(Actually now that I looked at it, I'm surprised to not see a parent pom that simply handles the version so everything can be released from one single pom project).