[Hawkular-dev] is it time for a bom? or for version definitions in parent pom?

Peter Palaga ppalaga at redhat.com
Tue Dec 15 11:11:52 EST 2015


Hi Mazz, inline...

On 2015-12-15 16:12, John Mazzitelli wrote:
> I just released the wildfly agent (0.13.7.Final) and I just realized I may not have moved things up to the latest releases of its dependencies.
>
> It would be really nice now if we had something (even if its just versions in the parent pom) that defines the latest releases that components should be using because right now, how many of our pom.xml files have things like this:
>
>      <version.org.hawkular.accounts>1.1.1.Final</version.org.hawkular.accounts>
>      <version.org.hawkular.bus>0.7.3.Final</version.org.hawkular.bus>
>      <version.org.hawkular.cmdgw>0.10.4.Final</version.org.hawkular.cmdgw>
>      <version.org.hawkular.commons>0.2.3.Final</version.org.hawkular.commons>
>      <version.org.hawkular.inventory>0.9.0.Final</version.org.hawkular.inventory>
>      <version.org.hawkular.metrics>0.10.0.Final</version.org.hawkular.metrics>

Yes, every component in Hawkular has such a section of 
version.org.hawkular.* properties, but in each of the components the 
list is different, containing only the direct dependencies and nothing else.
I cannot imagine how *all* these componets props could live in a single 
pom (hawkular-parent or a separate hawkular-bom) - such a BoM would 
inevitably bring circular dependency to most of places where it would be 
used.

Say, the BoM version 0.0.1 would contain exactly the versions you listed 
above. Now, I want to use the BoM version 0.0.1 in Inventory, so that I 
do not have to maintain commons and accounts. What do I do? I'll import 
dependencyManagement/dependency/BoM version 0.0.1. But then I have 
released Inventory 0.9.1.Final and I need to upgrade the prop in the 
BoM, release BoM and ehm... upgrade the BoM version in Inventory and so on?

Maybe I misunderstood your idea?

-- P

> It would be nice if we aren't required to set these (but we could override them, right? if we want to try out a different version than what the parent pom defines).
>
> This would make releasing easier. We just comment out all the <version...> entries in all our pom.xml files (if they are there at all), thus falling back to what the parent-pom has defined. Or maybe we build a bom?? I dunno - all I know is, there is going to come a time when something breaks because "uh-oh, this component built on version x.y.z of metrics, but THIS component built on version a.b.c of metrics".
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>



More information about the hawkular-dev mailing list