Hi Petar,
IIRC the idea behind the original setup was to keep the original
builder
immutable and to keep a clear separation between what was configured by
descriptor and what by commandline.
And IIRC there's a set of properties that should NEVER be overridden
via
commandline.
Also, if this is that critical for you, remember to add a test. You've
seen that the codebased has changed a lot, verifying changes with
tests is
the only way to ensure the refactoring was done properly.
thanks,
Robert
On 21-4-2019 08:38:37, Petar Tahchiev <[email protected]> wrote:
Hey guys,
a while ago I raised this issue
https://issues.apache.org/jira/browse/MRELEASE-985
and also I made a pull-request:
https://github.com/apache/maven-release/pull/18
but it was closed, because I believe after a few years the code was
very
much out of sync with the master.
However, I checked the master and seems like there is a way to override
the
SNAPSHOT dependencies from the command with a command like this:
mvn
org.apache.maven.plugins:maven-release-plugin:3.0.0-SNAPSHOT:prepare
-DdryRun=true -Ddependency.com.nemesis:bom.release=2.0.1.RELEASE
-Ddependency.com.nemesis:bom.development=2.1.3-BUILD-SNAPSHOT -e -B
However, when I tried it I got the same error:
Caused by: org.apache.maven.shared.release.ReleaseFailureException:
Can't
release project due to non released dependencies :
com.nemesis:bom:pom:2.1.0.BUILD-SNAPSHOT
in project 'Nemesis Platform'
(com.nemesis:platform:pom:2.1.0.BUILD-SNAPSHOT)
Then I started digging and saw that in the DefaultReleaseManager the
command-line properties are copied to a new ReleaseBuilder using
ReleaseUtils.copyPropertiesToReleaseDescriptor and then this new
release
builder is ignored.
Furthermore the CheckDependenciesSnapshotsPhase was not interested if
the
dependency was resolved from the command-line and was simply checking
if
it
is a SNAPSHOT dependency.
With those two small changes my build works fine. Can someone of you
have
a
look at my PR:
https://github.com/apache/maven-release/pull/28
and confirm that the change in DefaultReleaseManager doesn't break
anything. All the tests pass. If you confirm that it is OK I can add a
test
Thank you.
--
Regards, Petar!
Karlovo, Bulgaria.
---
Public PGP Key at:
http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x19658550C3110611
Key Fingerprint: A369 A7EE 61BC 93A3 CDFF 55A5 1965 8550 C311 0611