versioning - Should i release maven library if one of its dependency changed? -
i have few libraries, of them depend on another. eg:
a 1.0.0 no dependencies
b 1.0.0 depends on: 1.0.0
question is:
if release 1.0.1 , release backward compatible 1.0.0 should release b?
this can depend lot on specifics of code , how artifacts deployed, in general, need release b make code changes in visible.
- assume b jar artifact, , client has
<dependency>on artifact. means client has transitive dependency on a, @ specific version expressed in<dependency>in b. taking example, client has dependency on b 1.0.0, has dependency on 1.0.0, client pick 1.0.0 transitively. in order publish bug fix in client, need release b 1.0.1<dependency>on updated point 1.0.1. - assume b war artifact deployed in web application container. each jar
<dependency>used web application shipped insidelibdirectory of built war. in order publish bug fix in web application, need release b 1.0.1<dependency>on updated point 1.0.1.
in first example, (client depends on b jar), possible workaround client override version of adding own explicit <dependency> on a, perhaps using version range flexibility pick latest released version. can cause maintenance pitfalls though, because means client combining version of , version of b not tested part of b build. in general, it's preferrable release b, if difficult release b, can viable short-term workaround.
more details on transitive dependencies , version range syntax available here:
Comments
Post a Comment