Open jjYBdx4IL opened 10 years ago
And what should we do when the upstream project gets upgraded, but not JavaCPP?
The version spec for external dependencies is part of JavaCPP Presets. When you change them, JavaCPP Presets changes, ie. 0.9 -> 0.9.1. Put the external versions into the README by using placeholders:
This release contains ffmpeg-${ffmpeg.version}, ....
Ok, do you have an example of that somewhere?
Hmmm. What's your usual way to release new libs? Do you release single libs?
It might happen, but that's not the point. I would like to know how we could put variables like that in README files and how that would interact with GitHub.
You can use the properties-maven-plugin (see http://mojo.codehaus.org/properties-maven-plugin/) to load variables into maven from a plain properties file. Maven's resource filtering may then be used to replace variables in READMEs etc.
Yes, I see that, thank you, but do you know of any project on GitHub that uses that to create README.md files, for example?
I don't think there is a nice solution to include the version numbers in the top README.md. The only elegant solution that comes to my mind, is to put the version numbers into a properties file and link that file in the README.md.
That's also the impression I get, it's just not obvious how to integrate a solution like that in this project. We'd have to think about it a bit more. Do you know of a blog post or something that explains everything? Or would you have a more concrete proposal to make?
<- around the "Resource filtering" heading. (ignore the profiles stuff)
So, are you proposing to put all the README.md
files in ./src/main/
somewhere and have them processed and copied in the root directory next to the pom.xml
file on some profile or something? Do you have a branch with an example that works?
BTW, this still sounds like a nice idea. I would be really happy to have more things automated, so please do contribute a working example!
My tests submodule in javacpp-presets needs to reference the correct preset generated during the current build. Keeping the versions specs in sync
manually
within the same project does not make much sense.Proposal: define the opencv, ffmpeg etc. artifact versions in a parent pom.xml. Or even use 0.9 instead of 2.4.9-0.9 -- that way one could simply write ${project.version}.
https://github.com/jjYBdx4IL/javacpp-presets/blob/master/tests/pom.xml :
Much nicer would be:
:-))