Commit Graph

10806 Commits

Author SHA1 Message Date
Sylwester Lachiewicz 6c01ec18cb [MNG-6633] - Reduce memory usage of excludes - fix rat/checkstyle errors 2019-05-25 14:26:09 +02:00
Stefan Oehme 790dc0f2b7 [MNG-6633] - Reduce memory usage of excludes
ExcludesArtifactFilter was highly inefficient.
It took the group and artifact ID of an Exclusion, concatenated them into
a new String, which was kept in memory for the whole duration
of the build and then compared that String against the concatenation
of group and artifact ID of each incoming artifact, adding more
CPU cycles than necessary.

Instead we now just wrap the existing Exclusion object and check its
groupId and artifactId against the artifact to tell whether it should
be excluded.

The old class is kept around for binary compatibility, but is now unused.

Closes #243
2019-05-25 13:12:47 +02:00
rfscholte ff8c5c8706 MNG-6069: unittest with compact and spaced -D options 2019-05-17 22:09:48 +02:00
Joseph Walton 658301276a [MNG-6069] Avoid (some) deprecated commons-cli methods
Switch from OptionBuilder to Option.Builder. Confirm by
inspection that the resulting Option objects are the same.

For now, leave GnuParser. Despite the upgrade advice in the GnuParser
Javadoc ("since 1.3, use the DefaultParser instead"), it behaves
differently.

Closes #247
2019-05-17 22:09:48 +02:00
Sergey Chernov 1a18eb6c9c [MNG-6626] fix DefaultExceptionHandler NPE
Closes #241
2019-05-13 09:43:56 +02:00
Michael Osipov 3ac9718f82 [MNG-6655] Add support for "release" qualifier
This closes #249
2019-05-12 18:16:31 +02:00
Piotrek Żygieło 2760e3e175 (doc) - correct plural form of 'child'
Closes #248
2019-05-08 21:00:55 +02:00
rfscholte 4ff24e3678 [MNG-6643] Integration test 2019-04-29 23:27:58 +02:00
Hervé Boutemy 5350ed8a1f [MNG-6644] don't fail if no input location tracking available
this can happen when the POM is not parsed by Maven core from XML
2019-04-28 19:42:25 +02:00
Hervé Boutemy 869b615189 [MNG-6636] merge reports location tracking
- avoids NPE during DefaultReportingConverter work
- fixes missing location tracking when parent values injected into
  existing child values
2019-04-28 19:42:19 +02:00
Stefan Oehme 1e03388d5b [MNG-6632] - Remember artifact handlers after they've been used once
Otherwise we have to go through the whole sisu engine again,
which is very slow, because it does a linear scan.
2019-04-27 18:23:00 +02:00
Hervé Boutemy d34e8fbdc0 [MNG-6631] documented the performance intent 2019-04-27 18:22:32 +02:00
Stefan Oehme 44ad1aafa6 [MNG-6631] - Make DefaultArtifactVersion faster
Use if-statements instead of exception-based control flow.
Throwing exceptions is very expensive and should not be used
for normal flow.
2019-04-27 18:03:38 +02:00
Stefan Oehme ebac165990 [MNG-6630] - Make ComparableVersion faster
By not allocating the canonical representation for equals/hashcode,
but instead using the items we already have. This saves both time
and memory.

I left the canonical field around for testing purposes.
2019-04-27 18:03:31 +02:00
Stefan Oehme baed5a294f [MNG-6629] - Make ID validation faster
Use a simple list of allowed characters instead of a regex.
2019-04-27 18:03:20 +02:00
Karl Heinz Marbaise 80c6fe3a01
[MNG-6643] - Version comparison CLI does not work anymore 2019-04-24 19:56:24 +02:00
Joseph Walton fdde73fcb4 Remove unused code that triggers Error Prone (#245)
Running Error Prone over Maven triggers an infinite recursion
check in AbstractCoreMavenComponentTestCase.PluginBuilder
2019-04-20 16:08:06 +02:00
Sylwester Lachiewicz 763f76cf83 [MNG-6642] Revert "[MNG-5995] Remove dependency to maven-compat (#185)"
This partially reverts commit bb3ec5da71 to restore working with Tycho P2 repository.
2019-04-20 00:10:59 +02:00
Sylwester Lachiewicz 61d888c785 [MNG-6646] Upgrade maven-assembly-plugin to 3.1.1 2019-04-19 23:42:59 +02:00
Jesse Glick 0940c7c973 [MNG-6405] Fix basedir in MavenProject.deepCopy (#225)
* [MNG-6405] Fix basedir in MavenProject.deepCopy.

* Reproduced bug in test.
Failure without patch:
junit.framework.AssertionFailedError: Base directory is preserved across clone expected:<…/maven-core/target/test-classes> but was:<…/maven-core/target/test-classes/target>
	at org.apache.maven.project.MavenProjectTest.testCloneWithBaseDir(MavenProjectTest.java:188)

* Code style. Not enforced in tests during build?
2019-04-16 21:28:03 +10:00
Karl Heinz Marbaise 715d90b880
Update DOAP Information for new release. 2019-04-12 19:58:11 +02:00
Hervé Boutemy 55614d32d9 [MNG-6627] upgrade Plexus container to 2.0.0 for Reproducible Builds 2019-04-07 16:18:23 +02:00
Karl Heinz Marbaise 5222f03d05
[maven-release-plugin] prepare for next development iteration 2019-04-04 20:56:37 +02:00
Karl Heinz Marbaise d66c9c0b31
[maven-release-plugin] prepare release maven-3.6.1 2019-04-04 20:56:16 +02:00
Romain Manni-Bucau 0ba5753c17 [MNG-6618] adding org.slf4j.event in exported packages
Based on MNG-6360
2019-04-01 11:55:58 +02:00
Raymond Auge 95401cf7a6 [MNG-6605] Unable to suppress download/upload messages (in interactive mode)
This closes #239
2019-04-01 08:47:10 +02:00
Sylwester Lachiewicz a7acfe75b1 [MNG-6611] Update animal-sniffer-maven-plugin to version 1.17
Fixes #237
2019-03-29 15:55:28 +01:00
Sylwester Lachiewicz 5306cd010e [MNG-6506] [MNG-6543] Upgrade Plexus Classworlds to 2.6.0
Enable plugins that use the new JPMS Java 9 API to work in Java 9+
2019-03-28 21:06:18 +01:00
Sylwester Lachiewicz 0be26449fb
[MNG-6538] Upgrade maven-resolver to 1.3.3 2019-03-24 22:47:59 +01:00
Gabriel Belingueres f5a13746e1 [MNG-6572] use int or long instead of BigIntegers for little numbers in
ComparableVersion

- Added class IntItem and LongItem for handling numbers lower than 2^31
and 2^63.
- Renamed IntegerItem to BigIntegerItem for handling larger numbers.
- Changed old Stack implementation to LinkedList.
- Changed LinkedList to ArrayDeque.
- Changed thrown RuntimeException by IllegalStateException.
- Ensure numeric values don't have leading zeroes, therefore ensuring
that IntItem, LongItem and BigIntItem represent bigger numeric values,
respectively.
- Only compare item value when the other Item is of the same type.
Otherwise infer comparison result from the quantity of digits of the
numerical value representing the other Item.
- Added tests.
2019-03-17 10:58:26 +01:00
Hervé Boutemy 49c8f17ed4 [MNG-6601] add input location tracking for m-site-p converted reports 2019-03-11 23:44:32 +01:00
Hervé Boutemy 0b10fe75a5 [MNG-6597] add input location tracking for plugins configuration
add also xpp3-extended-writer directly in Maven core
2019-03-11 23:44:31 +01:00
Hervé Boutemy 4bec5502d5 [MNG-6600] add inputlocation tracking for default lifecycle executions 2019-03-11 23:44:31 +01:00
Hervé Boutemy 37676a2617 [MNG-6599] use version from parent if necessary, like groupId 2019-03-11 23:44:31 +01:00
Michael Osipov 9dd4732b74 Revert "[MNG-6548] Lifecycle plugin version upgrades"
This reverts commit 33e4f201d3.
Commit will be postponed to 3.7.0.
2019-02-17 20:30:25 +01:00
Hervé Boutemy bd4a3a0d22 [MNG-6593] track input location for super-pom content 2019-02-17 15:28:39 +01:00
Michael Osipov c674bcfb42 [MNG-6495] ModelResolver cannot be null 2019-02-16 22:37:27 +01:00
Michael Osipov 4decfcfcfe [MNG-6591] Upgrade to Wagon 3.3.2 2019-02-13 19:46:38 +01:00
Hervé Boutemy 961746f25f [MNG-6571] separate caches for create from spec and version 2019-02-11 14:31:13 +01:00
Hervé Boutemy 657fbb76cf Revert "[MNG-6571] forgot to put new instance in cache"
This reverts commit 6bd8bb9ba6.
2019-02-06 08:49:04 +01:00
Hervé Boutemy 6bd8bb9ba6 [MNG-6571] forgot to put new instance in cache 2019-02-05 08:34:55 +01:00
Hervé Boutemy 8f9075d3ad [MNG-6571] cache VersionRange instances, they are immutable 2019-02-05 00:38:25 +01:00
Sylwester Lachiewicz b7249aff22 Revert [MNG-6069] Migrate to non deprecated parts of Commons CLI
This reverts commit 396291bba0 due to regression
2019-02-01 21:41:23 +01:00
Guy Brand 15c647182a [MNG-6558] ToolchainsBuildingResult event is not sent on EventSpy
Closes #231
2019-01-27 12:01:35 +01:00
Sylwester Lachiewicz 7e3e5453c0 [MNG-6573] Use Maven 3.6.0 for CI
Closes #235
2019-01-27 11:02:00 +01:00
Sylwester Lachiewicz bb3ec5da71 [MNG-5995] Remove dependency to maven-compat (#185)
No implementation for deprecated Maven 2.x RepositorySystem interface
2019-01-26 14:37:51 +01:00
Hervé Boutemy 24c762d7c3 [MNG-6533] catch InvalidArtifactRTException runtime exception
instead of global Exception that may hide too many cases
2019-01-14 14:30:06 +01:00
Mickael Istria 27332cfab0 [MNG-6533] ProjectBuilder report ModelProblem instead of Exception
Sending ModelProblems allows to keep processing other pom files.
2019-01-14 13:55:45 +01:00
Mickael Istria 8b7055fe3f [MNG-6533] Prefer passing the interim project in ProjectBuildingResult
Initialize the interim project with "simple" items (ie do not build
not reference parent if it's not yet in the projectIndex) and returns
it when installation fails further.
This give a partial validation of the file, pretty convenient in IDEs.
2019-01-14 13:55:45 +01:00
Mickael Istria ae1c32aa09 [MNG-6533] Test: ProjectBuildingException miss reference to MavenProject 2019-01-14 13:55:44 +01:00