I found out even if I extend the CI-Friendly versions can't I find a good way to implement what I want, means declaring parent version from properties. If I really want it I have to modify maven to allow the pom be read, and modify flatten to flatten the version in parent, then add a validator for deploying to avoid some people pass a dynamic parent version to remote...
Christoph Läubrich <[email protected]> 于2025年10月14日周二 17:06写道: > Mavens CI-Friendly versions are extensible, see for example: > > > https://github.com/eclipse-tycho/tycho/blob/main/tycho-build/src/main/java/org/eclipse/tycho/build/TychoCiFriendlyVersions.java > > but you need to know them by name due to how they work, so there can't > be a simple prefix. > > > Am 14.10.25 um 11:02 schrieb Xeno Amess: > > findout I have to modify both maven and flatten-plugin to allow modify > the > > parent, and it be hard to forbid misuse to let dynamic parent version by > > argline > > possibly I should find another idea to achieve this... > > > > Xeno Amess <[email protected]> 于2025年10月11日周六 17:01写道: > > > >> according to the codes we only have 3 of these properties. > >> > >> private static final String SHA1_PROPERTY = "sha1"; > >> > >> private static final String CHANGELIST_PROPERTY = "changelist"; > >> > >> private static final String REVISION_PROPERTY = "revision"; > >> > >> > >> should we add a new set of them (likely a prefix like ci_friendly_* ) > >> > >> ---------- > >> > >> the reason I want it is I have several repos who both inherited from a > pom > >> of a version, and use a same version number elsewhere. > >> > >> for example > >> > >> we have > >> > >> <parent> > >> <groupId>org.springframework.boot</groupId> > >> <artifactId>spring-boot-starter-parent</artifactId> > >> <version>3.5.6</version> > >> <relativePath></relativePath> > >> </parent> > >> > >> and same time > >> > >> <properties> > >> <java.version>21</java.version> > >> <springboot.version>3.5.6</springboot.version> > >> <revision>0.0.1</revision> > >> <native.maven.plugin.version>0.11.0</native.maven.plugin.version> > >> <graalpy.version>25.0.0</graalpy.version> > >> <antlr.version>3.5.3</antlr.version> > >> <antlr4.version>4.13.2</antlr4.version> > >> <antlr4-c3.version>1.2.0x</antlr4-c3.version> > >> <grpc.version>1.76.0</grpc.version> > >> <protobuf.version>4.32.1</protobuf.version> > >> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> > >> <gop-root>${maven.multiModuleProjectDirectory}</gop-root> > >> <maven.compiler.proc>full</maven.compiler.proc> > >> <surefire-report-phase>prepare-package</surefire-report-phase> > >> <os-maven-plugin.version>1.7.1</os-maven-plugin.version> > >> > <protobuf-maven-plugin.version>0.6.1</protobuf-maven-plugin.version> > >> <replacer.version>1.5.3</replacer.version> > >> </properties> > >> > >> and > >> > >> <dependency> > >> <groupId>org.springframework.boot</groupId> > >> > <artifactId>spring-boot-starter-oauth2-authorization-server</artifactId> > >> <version>${springboot.version}</version> > >> </dependency> > >> > >> so seems it be better to let the version in parent use a same propertie > >> with the dependency. > >> so we have to use a ci friendly property > >> but we already use revision for the project version, and sha/changelist > >> seems not quite suitable > >> so maybe we shall add rule to make every of ci_friendly_* property be > >> ci_friendly property? > >> > >> > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > >
