Improvements to bndmanifest
to support parallel usage with PDE #187
Description
We would like to generate our manifests with the bndmanifest
plugin.
Our idea is to generate the MANIFEST.MF
file, but in a way that it stays compatible with the PDE tooling running inside the IDE. In this setup we would have the MANIFEST.MF
file present in our Git Repo.
What already exists:
copyTo
from the osgiBndManifest
can be used like this:
osgiBndManifest {
copyTo 'META-INF/MANIFEST.MF'
}
A first limitation is that ManifestUtil from bnd is formatting the MANIFEST according to the spec (line should not exceed 72 bytes and so on).
For us this creates an artificial change in Service-Component:
because the org.eclipse.pde.ds.annotations
tooling in Eclipse creates one line per xml file in the OSGI-INF/
folder.
We would like both tools bndmanifest
and PDE tooling to have the same formatting (the Eclipse one).
A second feature we would like to have:
We consider that the generated MANIFEST created by the bndmanifest
should win over a manual change in the Eclipse IDE. But we would like to be able to detect those mismatch by having a build failure if the generated manifest does not match the current version.
So instead of copyTo
this should be something like a compareTo
option that fails the build if the MANIFEST file is not correct. Maybe with a possibility to copy instead of compare (think spotlessCheck
vs spotlessApply
).
Have you some opinion about this topic?
Would you accept a PR for features in this direction?