fedora-java / javapackages

Macros and scripts for Java packaging support
Other
7 stars 15 forks source link

Remove dependency generators #109

Open mizdebsk opened 1 month ago

mizdebsk commented 1 month ago

Deprecate and remove dependency generators written in Python in favor of the newer https://github.com/fedora-java/xmvn-generator

fridrich commented 1 month ago

The fact that some of the things that one needs on a pretty low level would not need java/maven helps us at least to prevent build cycles that are avoided as pest in SUSE environment where rebuilds are done very often and consistency of the repo is important. I had to rewrite a number of artifacts from using maven to a generated ant build just to be able to bootstrap the whole thing from scratch when needed. So, removing python stuff is not really welcome for me.

fridrich commented 1 month ago

Also, we still carry over eclipse, so the osgi stuff is welcome too.

mizdebsk commented 1 month ago

Regarding bootstrapping and avoiding dependency cycles, this is a very important matter to me. We rebuild everything regularly from scratch with help of https://github.com/fedora-java/javapackages-bootstrap

In a nutshell, Java Packages Bootstrap (JPB) is a standalone build of all Java software packages that are required for Java Packages Tools (JPT) to work.

Basically you need to build just a single package javapackages-bootstrap that contains everything needed to run javapackages-tools, including dependency generators, or Maven/XMvn (needed for %mvn_build etc.).

More documentation is available at https://fedoraproject.org/wiki/Maven_bootstrapping

Regardnig OSGi generators, I suppose they could be rewritten in Java too.

Alternatively I can keep dependency generators and other scripts requiring Python, but make it easier to build the project without Python. Or even extract them into a separate project.