#2 Re-include spring framework
Closed 3 years ago by ankursinha. Opened 3 years ago by ankursinha.

I file this with a heavy heavy heart:

The spring framework is currently also unmaintained:
https://src.fedoraproject.org/rpms/springframework

In fact, it seems like it hadn't been really maintained in ~3 years:
https://src.fedoraproject.org/rpms/springframework/commits/master

Lots of tools use bits of spring, so having it in Fedora would be nice. However:

  • it's a massive project
  • it uses gradle :sob:

So it is far from trivial to package up.


Lots of tools use bits of spring

Do you have any actual concrete use-cases?

Edit: I mean, Java developers will use spring from maven central, so is there an actual application you want to include in Fedora that needs it?

I've started to organize things on a kanban board, do you want to add work items for Spring there?

Something like "Investigate adding back springframework packages" would be a good first step for a "New" item, until we know more :)

https://teams.fedoraproject.org/project/java-package-maintainer-sig/kanban

Not sure if you can join the project yourself, otherwise I can invite you (and other interested SIG members).

I think you can easily patch out the dep on spring here.

It is used by only one abstract class in the tools module. Jaxb2-basics itself seems not to subclass this class, so unless your NeuroML application subclasses it (it probably does not because it only transitively depends on the tools module) then you should be fine.

Try removing the spring dep from pom and deleting the tools/src/main/java/org/jvnet/jaxb2_commons/plugin/spring/AbstractSpringConfigurablePlugin.java file.

EDIT: FWIW spring is such a huge and sprawling project that it feels like probably man-months of packaging effort. It is probably worth your time to quickly read the jaxb2-basics source and test to see if it can be trivially removed ;-)

I've started to organize things on a kanban board, do you want to add work items for Spring there?
Something like "Investigate adding back springframework packages" would be a good first step for a "New" item, until we know more :)
https://teams.fedoraproject.org/project/java-package-maintainer-sig/kanban
Not sure if you can join the project yourself, otherwise I can invite you (and other interested SIG members).

Sure. kanbans work really well :)

I think you need to invite people individually (and from what I remember you can't use the fp.o alias either, one has to use the actual e-mail addresses associated with our FAS accounts)

I think you can easily patch out the dep on spring here.
It is used by only one abstract class in the tools module. Jaxb2-basics itself seems not to subclass this class, so unless your NeuroML application subclasses it (it probably does not because it only transitively depends on the tools module) then you should be fine.
Try removing the spring dep from pom and deleting the tools/src/main/java/org/jvnet/jaxb2_commons/plugin/spring/AbstractSpringConfigurablePlugin.java file.
EDIT: FWIW spring is such a huge and sprawling project that it feels like probably man-months of packaging effort. It is probably worth your time to quickly read the jaxb2-basics source and test to see if it can be trivially removed ;-)

Thanks @mbooth : yes I'd really like to avoid going down the spring blackhole. I'll look at both jaxb2_common and the neuroml module to see if this dep list can be reduced.

I've started to organize things on a kanban board, do you want to add work items for Spring there?
Something like "Investigate adding back springframework packages" would be a good first step for a "New" item, until we know more :)
https://teams.fedoraproject.org/project/java-package-maintainer-sig/kanban
Not sure if you can join the project yourself, otherwise I can invite you (and other interested SIG members).

Added a ticket there. Still not had the chance to look at the code though.

I'm giving up on this. There's more that needs to be done even after spring is patched out, and after this, there are a lot of other packages in the dep tree that need to be salvaged. It'll have to be COPR---just too much work to manage it in Fedora :disappointed:

Metadata Update from @ankursinha:
- Issue status updated to: Closed (was: Open)

3 years ago

@ankursinha While it's sad to see you go, I understand that sometimes the pile of TODOs is just too big.

Do you still need maven-jaxb2-plugin / jaxb2-maven-plugin, and the additional features we re-enabled for you in glassfish-jaxb?

Yeh, sorry about that. I'll still try and help out where I can.

No, i don't need either of those---I built jneuroml in COPR now: https://copr.fedorainfracloud.org/coprs/g/neurofedora/neurofedora-extra/package/jneuroml/

I can hold on to them if that'll help?

@ankursinha looks like nothing depends on those two packages in rawhide, so feel free to drop them.

Thanks, I've orphaned them both now.

Login to comment on this ticket.

Metadata