Commit Graph

2976 Commits

Author SHA1 Message Date
Hervé Boutemy fdf5d921a3 renamed variables for better understanding 2019-01-13 19:18:30 +01:00
Mickael Istria d9facde3bc [MNG-6530] Introduce system property to disable global model cache
The global model cache introduced in MNG-6311 causes severe regressions
in case of POM files changing during application lifetime.
This patch adds a system property
`defaultProjectBuilder.disableGlobalModelCache` that disables this global
model cache when set to true, ensure pom modifications are honored.

This closes #194
2019-01-08 15:25:27 +01:00
Michael Osipov 33e4f201d3 [MNG-6548] Lifecycle plugin version upgrades
* Upgrade to Maven Clean Plugin 3.1.0
* Upgrade to Maven Site Plugin 3.7.1
2019-01-07 13:23:57 +01:00
Josh Soref 71128cb6c0 spelling: vertices
This closes #102
2018-12-28 15:07:21 +01:00
Michael Osipov c7ab9876f5 [MNG-6544] Replace CacheUtils#{eq,hash} with Objects
This closes #195
2018-12-27 21:41:59 +01:00
Duarte Meneses c6bdafed23 [MNG-5965] Parallel build multiplies work if multiple goals are given
This closes #125
2018-12-26 15:24:16 +01:00
Mickael Istria 732e7de893 [MNG-6529] ProjectBuilder.build(List<Project> ...) honor
request.isResolveDependency
2018-12-18 09:04:17 +01:00
Sylwester Lachiewicz 78f605e377 [MNG-6515] Fix Javadoc build errors 2018-11-12 17:23:56 +01:00
Karl Heinz Marbaise 6e376d424e
[maven-release-plugin] prepare for next development iteration 2018-10-24 20:38:30 +02:00
Karl Heinz Marbaise 97c98ec64a
[maven-release-plugin] prepare release maven-3.6.0 2018-10-24 20:38:06 +02:00
HoaPhan ba74b96633
[MNG-6492] - Minor improvement on Array construction, conversion performance 2018-10-24 18:07:13 +02:00
Christian Schulte 44826ab446 [MNG-6164] Collections inconsistently immutable
Make non-empty collections returned immutable just like those returned by
java.util.Collections.
2018-10-09 22:12:50 +02:00
rfscholte 7c1e7129b1 [MNG-6415] Project Artifacts Cache does not retain the order of classpath entries. 2018-09-24 19:50:39 +02:00
Sylwester Lachiewicz 8bc3c207d0 [MNG-6311] Implement class-level ModelCache in DefaultProjectBuilder to solve slow pom resolutions
Fix by: David Churcher
2018-09-14 18:43:47 +02:00
Phillip Webb 01f098efd1
[MNG-6475] Remove unused Guava dependencies 2018-09-13 20:45:25 +02:00
Hervé Boutemy f5674713a6 improved documentation 2018-08-12 00:01:17 +02:00
rfscholte 72dca39807 Replace org.apache.commons.lang3.Validate#notNull with java.util.Objects#requireNonNull 2018-07-15 10:36:08 +02:00
Stephen Connolly bf0bd6350e Master is now on 3.6.0-SNAPSHOT 2018-06-17 22:38:49 +01:00
Stephen Connolly 1efd571b0a [maven-release-plugin] prepare for next development iteration 2018-06-17 19:29:56 +01:00
Stephen Connolly 1edded0938 [maven-release-plugin] prepare release maven-3.5.4 2018-06-17 19:29:25 +01:00
Łukasz Dywicki 454a4e7954 [MNG-6411] Improve readability of project list returned when --resume-from option value is invalid
This closes #164
2018-05-18 22:47:24 +02:00
Michael Osipov 8e0efaa107 [MNG-6386] ${project.baseUri} is not a valid URI (according to RFC 3986)
File#toURI()#toString() produces a non-compliant URI making tools like
Subversion or Git to choke on those URIs. Whereas Path#toUri()#toASCIIString()
does the right job.
2018-05-07 22:35:43 +02:00
Michael Osipov 5beb347f41 Fix missing/improper use of @link
This closes #132
2018-05-05 22:56:09 +02:00
Sylwester Lachiewicz faa9ef0cd3 [MNG-6370] ConcurrencyDependencyGraph#getNumberOfBuilds() does not remove finished projects from unfinished ones
This closes #161
2018-03-07 23:58:20 +01:00
Stephen Connolly 85b4e3d8e8 [maven-release-plugin] prepare for next development iteration 2018-02-24 19:29:56 +00:00
Stephen Connolly 3383c37e1f [maven-release-plugin] prepare release maven-3.5.3 2018-02-24 19:29:21 +00:00
Sylwester Lachiewicz b8c06e61ab Remove Google Guava usage (move to Java7) 2018-02-11 11:54:17 +01:00
Sylwester Lachiewicz d925081794 Reduce number of global checkstyle rule violations
Fix code for following checkstyle rules:
ConstantName, FileLength, InnerAssignment, JavadocType, MagicNumber, MethodLength, MethodName, NewlineAtEndOfFile, ParameterNumber, RedundantThrows, VisibilityModifier

Fixes #149
2018-02-11 11:41:16 +01:00
Hervé Boutemy 0dc70cc691 upgrade m-site-p to 3.7 + Fluido 1.7 + edit button 2018-02-10 11:42:33 +01:00
Hervé Boutemy cf7b0a3ec0 fixed new issues reported by Checkstyle 6.18 2018-02-10 11:42:33 +01:00
Sylwester Lachiewicz a03489b67d [ MNG-6335] Update Mockito to 2.12.0
Also change scope to test
2018-02-09 00:20:03 +01:00
Bengt Söderberg 6285bb96c5 [MNG-6298] 3.5.2: ClassNotFoundException: javax.annotation.security.RolesAllowed
Adding exportedPackage to find class:
javax.annotation.security.RolesAllowed

First maven commit :) Works but might be deeper issue

Signed-off-by: Karl Heinz Marbaise <khmarbaise@apache.org>
Now with correct issue reference.
2018-01-19 19:40:50 +01:00
Karl Heinz Marbaise 42918c37c5 Revert "[MNG-6296] 3.5.2: ClassNotFoundException: javax.annotation.security.RolesAllowed"
This reverts commit c311e0d812.
2018-01-18 20:18:32 +01:00
Bengt Söderberg c311e0d812 [MNG-6296] 3.5.2: ClassNotFoundException: javax.annotation.security.RolesAllowed
Adding exportedPackage to find class:
javax.annotation.security.RolesAllowed

First maven commit :) Works but might be deeper issue

Signed-off-by: Karl Heinz Marbaise <khmarbaise@apache.org>
2018-01-17 19:16:02 +01:00
rfscholte 98af937bc6 [MNG-6300] Multi module release creates empty directories in war file instead of jars 2017-12-22 14:25:46 +01:00
Stephen Connolly 3d0efa3696 [maven-release-plugin] prepare for next development iteration 2017-10-18 08:55:05 +01:00
Stephen Connolly 138edd61fd [maven-release-plugin] prepare release maven-3.5.2 2017-10-18 08:54:47 +01:00
Stephen Connolly 4b95ad9fce Revert "MNG-6209 better executeMojo thread context classloader"
This reverts commit ec629f7d51.
2017-10-17 19:18:43 +01:00
Stephen Connolly cae779e4fb Revert "[MNG-6275] Maven Embedder compatible fix"
This reverts commit 27a2bda3f4.
2017-10-17 19:17:17 +01:00
Stephen Connolly 542a7a8915 [MNG-6275] Defang the tests when their core assumption is invalid.
- The tests assume that the JRE has a ScriptEngineFactory
- Not all JREs have a ScriptEngineFactory (I'm looking at Azul's Zulu Open JDK 7 builds)
- Ideally we'd skip these tests using Assume.assumeThat(...) but PlexusTestCase doesn't support
  AssumptionViolatedException for marking tests as skipped.

Issue identified during testing of the 3.5.1 release candidate
2017-09-11 10:25:11 +01:00
Stephen Connolly 312eb53502 [maven-release-plugin] prepare for next development iteration 2017-09-10 12:51:43 +01:00
Stephen Connolly 094e4e31a5 [maven-release-plugin] prepare release maven-3.5.1 2017-09-10 12:51:26 +01:00
Stephen Connolly 27a2bda3f4 [MNG-6275] Maven Embedder compatible fix
- Need to use PARENT_CLASSLOADER so that when used by embedder we get a
consistent view of the available classes

- Restores test case from f047ea1437
2017-09-09 11:56:27 +01:00
rfscholte 170c1ed82c Revert "Squashed commit of the following:"
This reverts commit f047ea1437.
2017-08-30 11:12:20 +02:00
rfscholte f047ea1437 Squashed commit of the following:
commit c829bdcfc275b207e23fc568b3c16d98195675be
Author: rfscholte <rfscholte@apache.org>
Date:   Thu Aug 24 10:54:08 2017 +0200

    [MNG-6275] ServiceLoaderFactory can't find implementations via ClassRealm
2017-08-24 11:33:01 +02:00
Mario Krizmanic f1ed6592b1 [MNG-6127] Fix plugin execution configuration interference
Signed-off-by: rfscholte <rfscholte@apache.org>
2017-08-15 21:46:29 +02:00
Guillaume Boué a1fe421995 [MNG-6240] Duplicate components in plugin extension realm when plugin depends on maven-aether-resolver
Maven Core needs to export the maven-aether-provider artifact so that its components do not get added twice in plugin realm. This happens if the build uses an extension plugin depending on maven-aether-provider, before it was renamed to maven-resolver-provider
2017-06-14 19:55:41 +02:00
Dan Tran a7dddcb876 [MNG-6084] Support JSR 250 annotations 2017-05-25 20:05:35 +02:00
Hervé Boutemy 44634982a1 improved modello and animal sniffer's execution ids 2017-05-21 19:14:54 +02:00
Michael Osipov ecef59f1cb [MNG-6167] Clean up dependency mess (reported by dependency:analyze)
Clean up compile and runtime dependencies. Test dependencies have not been
touched because their seem to be false positives due to DI.
2017-05-16 15:27:22 +02:00
Christian Schulte f4ede96fd0 [MNG-5935] Optional true getting lost in managed dependencies when transitive
Updated to correctly map the optional flag of Maven model dependencies to
Aether dependencies. Prior to this change all managed dependencies implicitly
had the optional flag set to 'false' leading to Aether managing that flag to
'false' on all managed dependencies when transitive.
2017-05-10 10:36:19 +02:00
Michael Osipov fd988e78e9 [MNG-6228] Optionality not displayed in dependency tree when run in debug mode
Log message in DefaultProjectDependenciesResolver has been extended with
"(optional)" if dependency is marked as optional (direct or transitive).
2017-05-09 22:15:21 +02:00
Anton Tanasenko be22380893 Add a ProjectArtifactsCache similar to PluginArtifactsCache
Signed-off-by: Jason van Zyl <jason@vanzyl.ca>

closes #82
2017-05-05 22:08:16 +02:00
Igor Fedorenko ec629f7d51 MNG-6209 better executeMojo thread context classloader
Signed-off-by: Igor Fedorenko <ifedorenko@apache.org>
2017-04-13 14:12:23 -07:00
Stephen Connolly a4b0b63b62 [maven-release-plugin] prepare for next development iteration 2017-04-03 20:35:47 +01:00
Stephen Connolly ff8f5e7444 [maven-release-plugin] prepare release maven-3.5.0 2017-04-03 20:35:30 +01:00
Christian Schulte 8400984ac5 [MNG-6112] Central repository in the 4.0.0 super POM should declare update policy 'never'.
This reverts commit 13adc1bc2b *not changing
anything* just because someone did not react in time when this issue had been
lying around on a branch. If we would set pace for the industrie, everyone would
still be using 5.25" floppy disks and 8 bit hardware and we would tell them
that upgrading to be able to use new software would be too risky and they
better keep theire broken assembly routines until the machine goes up in
smoke.
2017-03-25 20:53:06 +01:00
Christian Schulte 0931bb2cc7 [MNG-6168] Fix unclosed streams 2017-03-24 22:04:37 +01:00
Christian Schulte 13adc1bc2b [MNG-6112] Central repository in the 4.0.0 super POM should declare update policy 'never'. 2017-03-21 00:30:28 +01:00
Christian Schulte d54e6f91a8 s/@since 3.5.0-alpha-2/@since 3.5.0/g 2017-03-21 00:21:43 +01:00
Stephen Connolly fd29ddebf9 [maven-release-plugin] prepare for next development iteration 2017-03-20 16:55:53 +00:00
Stephen Connolly 214540c2ae [maven-release-plugin] prepare release maven-3.5.0-beta-1 2017-03-20 16:55:36 +00:00
Christian Schulte f1ccecdd89 [MNG-6182] ModelResolver interface enhancements.
o Added unit tests for the 'ModelResolver' interface.
2017-03-19 04:01:34 +01:00
rfscholte 0e7e3eeb59 [MNG-6176] Javadoc errors prevent release with Java 8
Upgrade to modello-1.9.1
Fix javadoc errors in tests
2017-03-18 12:55:05 +01:00
Christian Schulte da03d6b031 [MNG-6183] Dependency management debug message corrections. 2017-03-14 19:20:47 +01:00
Karl Heinz Marbaise ab2e24fe36 Fixed checkstyle reported error. 2017-03-11 18:40:24 +01:00
Hervé Boutemy 24b9ef48f6 fixed typos 2017-03-11 18:19:02 +01:00
Karl Heinz Marbaise 7cdff43aba [MNG-6170] NPE in cases using Multithreaded -T X versions:set
-DnewVersion=1.0-SNAPSHOT
 o In some cases the code will return a null which should
   not be scheduled.
2017-03-11 12:00:24 +01:00
rfscholte 587317b009 [MNG-6176] Javadoc errors prevent release with Java 8
Upgrade modello to 1.9.0
Fix invalid Javadoc
2017-03-10 16:17:28 +01:00
rfscholte 8f025faab8 [MNG-6180] groupId has plain color when goal fails 2017-03-10 10:48:41 +01:00
Christian Schulte 34afec69c8 [MNG-6183] Dependency management debug message enhancements.
o Updated to add debug log messages about optional flag management.
2017-03-08 19:37:31 +01:00
Christian Schulte ab800b0cfa [MNG-6182] ModelResolver interface enhancements. 2017-03-08 18:24:18 +01:00
Christoph Böhme 114ef6c5a2 [MNG-6173] MavenSession.getAllProjects() should return all projects in the reactor
This commit removes the initialization of the MavenSession object from the
DefaultGraphBuilder. The GraphBuilder implementation should only build the
graph and should not touch the MavenSession object passed into it.

To allow complete initialization of the MavenSession the ProjectDependencyGraph
interface got enhanced so that GraphBuilder implementations can communicate all
collected projects in addition to the processed list of projects.

This closes #105
2017-03-06 17:35:24 +01:00
Stephen Connolly e652882757 [maven-release-plugin] prepare for next development iteration 2017-02-23 14:56:31 +00:00
Stephen Connolly 8e6bbc4d4a [maven-release-plugin] prepare release maven-3.5.0-alpha-1 2017-02-23 14:56:21 +00:00
Hervé Boutemy 3982c195e9 [MNG-6171] always show WARNING about usage of a non threadsafe plugin 2017-02-18 17:36:38 +01:00
Michael Osipov b66bdb9cbc [MNG-6150] Javadoc improvements for 3.5.0
* Remove duplicate plugin configuration
* Add workaround for Javadoc locale
* Clean up errors reported by Javadoc 7

Note: Javadoc 8 fails immediately because Modello generates invalid
Javadoc
2017-02-15 17:30:46 +01:00
Christian Schulte 37fef3d762 [MNG-5967] Dependency updates 2017-02-11 16:36:46 +01:00
Alex Henrie 8d91726f78 [MNG-5934] String handling issues identified by PMD 2017-02-11 14:08:24 +01:00
Christian Schulte 0514c1b14e [MNG-2199] Support version ranges in parent elements
o Updated to fix parent version range resolution broken since 3.2.3 and to
  remove parent version range resolution logic obsolete since Maven
  3.2.3 which changed the initialization of MavenProject instances.
o Updated local parent resolution to behave the same way remote parent
  resolution behaves. When referencing a parent using version ranges,
  inheriting the version or using version expressions should not be supported.
  It has been implemented that way for remote parent resolution as it got
  introduced in Maven 3.2.2. For local parent resolution the version in parent
  declarations had been ignored completely as of Maven 3.3.0 due to commit
  be3fb20032 removing all local parent version
  validation. Work on fixing this is tracked by MNG-5840 released with Maven
  3.3.9. This commit adds the final missing bits to make local and remote parent
  resolution behave the same way as much as possible. As an exception, remote
  parent resolution still is a bit more strict than local parent resolution due
  to a different API in use. When resolving a parent from a repository using
  version ranges, the ModelBuilder verifies the range in use to declare an upper
  bound. When resolving a parent locally using version ranges, those ranges are
  not required to declare an upper bound because the API in use does not support
  querying that. Authoring a POM relying on this difference should be considered
  a bug.
o Added test cases to maven-core testing parent version range resolution for
  local and remote parent models.
2017-02-10 22:46:52 +01:00
Archimedes Trajano 66a0fbe495 [MNG-6166] mvn dependency:go-offline fails due to missing transitive dependency jdom:jdom:jar:1.1 2017-02-06 20:36:39 +01:00
Josh Soref 1be7ea893e [MNG-6165] Deprecate and replace incorrectly spelled public API
Spelling fixes:

* spelling: collector
* spelling: executions
* spelling: repositories
* spelling: workspace

This closes #101
2017-02-06 20:36:38 +01:00
Josh Soref 1740265984 [MNG-6146] Several small stylistic and spelling improvements to code and documentation
Spelling fixes:

* system
* tokenizer
* toolchain
* trailing
* transitive
* unsupported
* version
* artifact
* attachment
* codehaus
* colleagues
* comparison
* concurrency
* configure
* creation
* dependency
* descriptor
* downstream
* efficient
* e.g.
* elements
* encountered
* encounters
* environments
* executed
* explicitly
* happens
* hierarchical
* hierarchy
* ignore
* implemented
* implementers
* independence
* indicates
* inheritance
* inherited
* inherits
* install
* interface
* javascript
* laziness
* management
* maven
* metadata
* mgmt
* minimalist
* nonexistent
* objects
* overridden
* print
* project
* properties
* recessive
* referring
* repository
* representation
* retrieval
* retrieve
* rigorous
* should
* spontaneously
* subsequent

Literal fixes:

*  use static final values

Style fixes:

* use the proper term for char U+002D (-) hyphen(-minus) instead of dash

This closes #100
2017-02-03 10:12:28 +01:00
Christian Schulte 8972072e32 [MNG-6110] renamed 'maven-aether-provider' to 'maven-resolver-provider' 2017-02-01 07:59:53 +01:00
Harald Wellmann 4d6c9292c4 [MNG-6110] Upgrade Aether to Maven Resolver 1.0.3 2017-02-01 07:59:52 +01:00
Karl Heinz Marbaise 5a462344f9 [MNG-6014] Removing ArtifactHandler for ejb3
o Followup to MNG-5894 of Maven 3.3.9 where the maven-ejb3-plugin
   has been removed from life cycle.
 o Removed the ArtifactHandler for ejb3 cause without
   a bound life cycle it does not make sense.
 o Removed entry from artifact-handlers.apt site.
2017-01-30 09:20:07 +01:00
Karl Heinz Marbaise 4604c49ee4 [MNG-6092] warn if prerequisites.maven is used for non-plugin projects 2017-01-29 21:16:35 +01:00
Karl Heinz Marbaise 017dcaf22a [MNG-5993] Confusing error message in case of missing/empty
artifactId/groupId and version in pluginManagement
2017-01-29 21:12:49 +01:00
Guillaume Boué 5b4b8bd94c [MNG-6105] properties.internal.SystemProperties.addSystemProperties() is not really thread-safe
Refactoring the current code setting system properties to synchronize correctly on the given ones: avoids ConcurrentModificationException and NullPointerException if the properties is modified by another thread.
2017-01-28 14:07:59 +01:00
Christian Schulte 1e2a80eced [MNG-5883] Silence unnecessary legacy local repository warning
o Updated to decrease logging level from 'warning' to 'info'.
2017-01-26 20:30:37 +01:00
Stuart McCulloch 6b31c4a556 [MNG-5958] restore binary compatibility of Lifecycle.setPhases
While MNG-5805 restored binary compatibility of Lifecycle.getPhases
it didn't do the same for Lifecycle.setPhases. This breaks plugins
like flexmojos-maven-plugin which have their own lifecycle mapping
implementations.

This closes #77
2017-01-26 20:19:57 +01:00
Karl Heinz Marbaise f20a5d940b [MNG-5931] Fixing documentation
Removing references to ejb3-lifecycle and par-lifecycle
cause they have been removed with Maven 3.3.9.
2017-01-25 21:30:02 +01:00
Hervé Boutemy 512fa6a45b improved documentation 2017-01-25 00:07:55 +01:00
Hervé Boutemy 0b684af45e added core extensions documentation 2017-01-25 00:04:31 +01:00
Hervé Boutemy 84085c0a9c updated urls (https, plexus) and license header formatting 2017-01-24 23:50:10 +01:00
Karl Heinz Marbaise bc07e74d3c [MNG-6017] Removing ArtifactHandler for par LifeCycle
o Removed ArtifactHandler configuration for par lifeclyce
   which has been removed in Maven 3.3.9
   See MNG-5892
2017-01-24 20:21:55 +01:00
Karl Heinz Marbaise cfb075ac70 [MNG-6030] ReactorModelCache do not used effectively after maven version 3.0.5 which cause a large memory footprint
o Reintroduced ReactorModelCache reduces the memory footprint.
2017-01-24 20:19:10 +01:00
Hervé Boutemy b80915b882 [MNG-3507] added color to Maven execution output messages 2017-01-24 18:40:07 +01:00
Michael Osipov be5caccaff [MNG-6102] Introduce ${maven.conf} in m2.conf
Set maven.conf to default ${maven.home}/conf in ${maven.home}/bin/m2.conf
to have a canonical property pointing to global configuration files from
within Java code.

This also helps package maintainers to decouple the Maven installation
from a global configuration by solely modifying m2.conf instead of using
dirty hacks, if possible at all.
2017-01-23 20:54:54 +01:00
Michael Osipov 8373c79a47 [MNG-6138] Remove obsolete message_*.properties form maven-core 2017-01-22 21:37:57 +01:00