Commit Graph

15161 Commits

Author SHA1 Message Date
dependabot[bot] ee5741d8cd
[MNG-8468] Bump ch.qos.logback:logback-classic from 1.5.14 to 1.5.15 (#2008)
Bumps [ch.qos.logback:logback-classic](https://github.com/qos-ch/logback) from 1.5.14 to 1.5.15.
- [Commits](https://github.com/qos-ch/logback/compare/v_1.5.14...v_1.5.15)

---
updated-dependencies:
- dependency-name: ch.qos.logback:logback-classic
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

---

https://issues.apache.org/jira/browse/MNG-8468
2024-12-23 12:30:09 +01:00
Guillaume Nodet 98dedaf0e3
[MNG-8465] Add support for project.rootDirectory in repositories and fix other expressions (#2007)
Valid expressions in repositories are:
* ${project.basedir}
* ${project.basedir.uri}
* ${project.rootDirectory}
* ${project.rootDirectory.uri}
2024-12-22 17:42:34 +01:00
Tamas Cservenak bebc3d4a2e
[MNG-8461] Initial settings method must restore context state (#2004)
Effective settings are (should be) created twice, once for "early boot" of Plexus when extensions are loaded up, and then again when Maven "boots".

Bug was that early call "corrupted" (inited settings) in context causing that 2nd required call (due spy) was omitted. This resulted in lack of settings related spy events firing (as we do have IT for spy but it does not test settings events).

---

https://issues.apache.org/jira/browse/MNG-8461
Related: https://github.com/alextu/maven4-reproducer/issues/1
2024-12-22 14:43:47 +01:00
Tamas Cservenak 751d3f18c9
[MNG-8463] Update plugins (#2005)
All the plugins referenced by Maven Core.

---

https://issues.apache.org/jira/browse/MNG-8463
2024-12-22 13:24:35 +01:00
Tamas Cservenak 80107b05d8
[MNG-8460] Implement flush() (#2006)
LoggingOutputStream used by default as sysout and syserr
were NOT flushing (def method is empty), and flush happened
only when EOL was printed.

Still, prompts and help:evaluate does print out unterminated
strings.

---

https://issues.apache.org/jira/browse/MNG-8460
2024-12-22 13:24:10 +01:00
Tamas Cservenak 575ad3719c
[MNG-8454] Force the FileSizeFormat UT to US Locale (#2003)
As it uses now String.format that produces different
decimal separator based on local, most notable DE

---

https://issues.apache.org/jira/browse/MNG-8454
2024-12-20 12:28:29 +01:00
dependabot[bot] 5f19dae0ce
[MNG-8458] Bump org.assertj:assertj-core from 3.26.3 to 3.27.0 (#2002)
Bumps [org.assertj:assertj-core](https://github.com/assertj/assertj) from 3.26.3 to 3.27.0.
- [Release notes](https://github.com/assertj/assertj/releases)
- [Commits](https://github.com/assertj/assertj/compare/assertj-build-3.26.3...assertj-build-3.27.0)

---
updated-dependencies:
- dependency-name: org.assertj:assertj-core
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

---

https://issues.apache.org/jira/browse/MNG-8458
2024-12-20 12:25:24 +01:00
dependabot[bot] 83dd275fff
[MNG-8457] Bump ch.qos.logback:logback-classic from 1.5.13 to 1.5.14 (#2001)
Bumps [ch.qos.logback:logback-classic](https://github.com/qos-ch/logback) from 1.5.13 to 1.5.14.
- [Commits](https://github.com/qos-ch/logback/compare/v_1.5.13...v_1.5.14)

---
updated-dependencies:
- dependency-name: ch.qos.logback:logback-classic
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

---

https://issues.apache.org/jira/browse/MNG-8457
2024-12-20 12:24:29 +01:00
Tamas Cservenak 0222aff6c9
[MNG-8447] Lossy ProblemCollector (#1994)
Historically (from Maven3) "problem collection" (in various scenarios, like building effective settings and toolchains, to building models) were done by passing around `List<Problem>` structure. This proved quite ineffective, as in case of (really) huge projects with quite big count of problems reported choked Maven (but also produced unusable output). We are aware of projects producing 3 million warnings! Dumping all of them onto console/log makes really no sense.

This PR changes Maven that by default it reports "problems" (settings building, toolchains building, or model building) as one liner warnings: how much and where were problems collected. This produces much more less overwhelming output than happens on master. User can control "build errors" using `-e`, so `mvn -e` will dump errors on screen/log.

The new `org.apache.maven.api.services.ProblemCollector<P>` class, that is somewhat "drop in" replacement for `List`, but with huge difference: it is "lossy", in a way, it maintains counters precisely, but actual problem instances are simply dropped after threshold `maven.builder.maxProblems` is surpassed (default 100). See `org.apache.maven.api.Constants#MAVEN_BUILDER_MAX_PROBLEMS`.

Rules:
* on problem addition counters are always updated
* if below threshold, store the problem (and will be reported later to the user)
* if above threshold, try to drop one problem with severity lower than currently reported problem, if succeeded, store the current problem, otherwise drop it

---

https://issues.apache.org/jira/browse/MNG-8447
2024-12-19 15:50:21 +01:00
dependabot[bot] 5599934016
[MNG-8452] Bump ch.qos.logback:logback-classic from 1.5.12 to 1.5.13 (#1999)
Bumps [ch.qos.logback:logback-classic](https://github.com/qos-ch/logback) from 1.5.12 to 1.5.13.
- [Commits](https://github.com/qos-ch/logback/commits)

---
updated-dependencies:
- dependency-name: ch.qos.logback:logback-classic
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

---

https://issues.apache.org/jira/browse/MNG-8452
2024-12-19 15:49:35 +01:00
dependabot[bot] 6c2adf7ecc
[MNG-8448] Bump com.google.guava:guava from 33.3.1-jre to 33.4.0-jre (#1995)
Bumps [com.google.guava:guava](https://github.com/google/guava) from 33.3.1-jre to 33.4.0-jre.
- [Release notes](https://github.com/google/guava/releases)
- [Commits](https://github.com/google/guava/commits)

---
updated-dependencies:
- dependency-name: com.google.guava:guava
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

---

https://issues.apache.org/jira/browse/MNG-8448
2024-12-18 10:36:54 +01:00
Guillaume Nodet 8a69678007
[MNG-8446] Project cannot start due to too many warnings (#1993)
JIRA issue: [MNG-8446](https://issues.apache.org/jira/browse/MNG-8446)

This will help (but is not sufficient) to make [camel-quarkus](https://github.com/apache/camel-quarkus) buildable with maven 4.x.

---

https://issues.apache.org/jira/browse/MNG-8446
2024-12-17 18:44:55 +01:00
Guillaume Nodet a68b52fcba
[MNG-8444] Exclude maven-xml and maven-xml-impl (the artifact has been renamed) (#1992)
Exclude the transitives.

---

https://issues.apache.org/jira/browse/MNG-8444
2024-12-17 11:30:28 +01:00
Guillaume Nodet 698614e3cc
[MNG-8436] Fix wrong transfer rates displayed in console (#1985)
```
Downloaded from central: https://repo.maven.apache.org/maven2/org/graalvm/compiler/compiler/24.1.1/compiler-24.1.1.pom (1.7 kB at 9223372036854775807 GB/s)
```

---

https://issues.apache.org/jira/browse/MNG-8436
2024-12-17 10:57:01 +01:00
Jermaine Hua 99777ace02
[MNG-8433] Use the switch expressions syntax (#1983)
Signed-off-by: crazyhzm <crazyhzm@apache.org>

---

https://issues.apache.org/jira/browse/MNG-8433
2024-12-17 10:56:12 +01:00
dependabot[bot] cd36684ade
[MNG-8440] Bump org.junit.jupiter:junit-jupiter from 5.11.3 to 5.11.4 (#1988)
Bumps [org.junit.jupiter:junit-jupiter](https://github.com/junit-team/junit5) from 5.11.3 to 5.11.4.
- [Release notes](https://github.com/junit-team/junit5/releases)
- [Commits](https://github.com/junit-team/junit5/compare/r5.11.3...r5.11.4)

---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

---

https://issues.apache.org/jira/browse/MNG-8440
2024-12-17 10:55:10 +01:00
dependabot[bot] d4a3f3c6f9
[MNG-8441] Bump org.junit:junit-bom from 5.11.3 to 5.11.4 (#1989)
Bumps [org.junit:junit-bom](https://github.com/junit-team/junit5) from 5.11.3 to 5.11.4.
- [Release notes](https://github.com/junit-team/junit5/releases)
- [Commits](https://github.com/junit-team/junit5/compare/r5.11.3...r5.11.4)

---
updated-dependencies:
- dependency-name: org.junit:junit-bom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

---

https://issues.apache.org/jira/browse/MNG-8441
2024-12-17 10:54:38 +01:00
dependabot[bot] 3b5129d91f
[MNG-8442] Bump eu.maveniverse.maven.plugins:bom-builder3 from 1.0.2 to 1.0.3 (#1990)
Bumps [eu.maveniverse.maven.plugins:bom-builder3](https://github.com/maveniverse/bom-builder-maven-plugin) from 1.0.2 to 1.0.3.
- [Release notes](https://github.com/maveniverse/bom-builder-maven-plugin/releases)
- [Commits](https://github.com/maveniverse/bom-builder-maven-plugin/compare/release-1.0.2...release-1.0.3)

---
updated-dependencies:
- dependency-name: eu.maveniverse.maven.plugins:bom-builder3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

---

https://issues.apache.org/jira/browse/MNG-8442
2024-12-17 10:52:40 +01:00
Tamas Cservenak cc368b31e3
[MNG-8438] maven-jline: Migrate to Maven DI (off javax.inject) (#1987)
Move to Maven DI

---

https://issues.apache.org/jira/browse/MNG-8438
2024-12-17 10:51:50 +01:00
Tamas Cservenak 49825e6dba
[MNG-8437] mvnsh (#1982)
Maven shell

Changes:
* (unrelated) contains fix for property handling in embedded executor and in lookup invoker
* pulled `-o` (offline) option to "generic" Options from MavenOptions
* introduce mvnsh (scripts, options, CLIng main class)
* simplified invokers (only one context needed for maven now)
* invokers made "reentrant", it all depends HOW context is created

Related PRs:
* mvnd changes https://github.com/apache/maven-mvnd/pull/1228

---

https://issues.apache.org/jira/browse/MNG-8437
2024-12-17 10:50:45 +01:00
dependabot[bot] d9dcac85d9
[MNG-8435] Bump net.bytebuddy:byte-buddy from 1.15.10 to 1.15.11 (#1984)
Bumps [net.bytebuddy:byte-buddy](https://github.com/raphw/byte-buddy) from 1.15.10 to 1.15.11.
- [Release notes](https://github.com/raphw/byte-buddy/releases)
- [Changelog](https://github.com/raphw/byte-buddy/blob/master/release-notes.md)
- [Commits](https://github.com/raphw/byte-buddy/compare/byte-buddy-1.15.10...byte-buddy-1.15.11)

---
updated-dependencies:
- dependency-name: net.bytebuddy:byte-buddy
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-17 10:48:01 +01:00
Tamas Cservenak 4b0ac99056 Post release setup 2024-12-16 20:32:37 +01:00
Guillaume Nodet 4714483009 [maven-release-plugin] prepare for next development iteration 2024-12-14 00:22:29 +01:00
Guillaume Nodet 273314404f [maven-release-plugin] prepare release maven-4.0.0-rc-2 2024-12-14 00:22:18 +01:00
Guillaume Nodet 7c14b3b419 Remove temporary staging profile 2024-12-14 00:14:02 +01:00
Guillaume Nodet 5375f61a1d
[MNG-8414] Warn when not able to downgrade consumer POM unless preserveModelVersion is forced to true (#1981) 2024-12-14 00:10:59 +01:00
Guillaume Nodet e600b09ea5
[MNG-8382] Docgen: remove property numbering, they are misleading and properties are "floating" anyway (alphabetically) (#1979) 2024-12-14 00:09:33 +01:00
Guillaume Nodet ddae283c2b
[MNG-8245][MNG-8246] Warn when calling before: or after: phases (#1974) 2024-12-14 00:07:01 +01:00
Guillaume Nodet 5d449f9a24
[MNG-8244] Using before:all / all / after:all is not triggered (#1973) 2024-12-14 00:04:37 +01:00
Guillaume Nodet 1fd7f879a4
[MNG-5729] Fix transfer rate computation (#1969) 2024-12-14 00:03:27 +01:00
Tamas Cservenak 5897cfe68d
[MNG-8430] Resolver 2.0.5 (#1975)
* [MNG-8430] Resolver 2.0.5

Prepare for Resolver 2.0.5

---

https://issues.apache.org/jira/browse/MNG-8430

* Switch to staged release

---------

Co-authored-by: Guillaume Nodet <gnodet@gmail.com>
2024-12-14 00:01:58 +01:00
Guillaume Nodet ccbd50c975
[MNG-5729] Fix possible NPE with introduction of mononic clock (#1972) 2024-12-13 16:40:45 +01:00
Guillaume Nodet a85ec9ffcc
Add missing package infos (#1980) 2024-12-13 16:40:20 +01:00
Tamas Cservenak 50aecc7432
[MNG-8419][MNG-8424] Too aggressive warning for pre-Maven4 passwords (#1970)
Toned down the Maven4 sec dispatcher messages. Also, IF maven3 passwords detected AND there was `.mvn/extensions.xml` the warnings were doubled.

Examples:

Failure to start Maven (due non-decryptable passwords):
```
$ mvn clean
[ERROR] Error executing Maven.
[ERROR] Error building settings
 * FATAL: Could not decrypt password (fix the corrupted password or remove it, if unused) {xL6L/HbmrY++sNkphnq3fguYepTpM04WlIXb8nB1pk=}
 * WARNING: Detected 2 pre-Maven 4 legacy encrypted password(s) - configure password encryption with the help of mvnenc for increased security.
$
```

Warning at start (due Maven3 passwords):
```
$ mvn clean
[INFO]
[INFO] Some problems were encountered while building the effective settings (use -X to see details)
[INFO]
[INFO] Scanning for projects...
[INFO] --------------------------------------------------------------------------------------------------------------------------
[INFO] Reactor Build Order:
[INFO]
[INFO] Apache Maven
...
```

---

https://issues.apache.org/jira/browse/MNG-8424
https://issues.apache.org/jira/browse/MNG-8419
2024-12-12 17:43:08 +01:00
Tamas Cservenak 79d7739dcc
[MNG-8406] Proper IT isolation (#1968)
Implement proper IT isolation, in a way, that user running ITs should not have it's own env "mixed in" into IT runs. In essence, use "alternate" `user.home` for ITs. Also use proper means to set user home. This will also stop fork 4 ITs (as they were forked due presence of env variable).

Note: yes, this causes longer IT execution time (as can be seen), as the ITs user home (core-it-suite/target/user-home) starts as empty (tail is set to "outer" local repo), so ITs do download stuff.

---

https://issues.apache.org/jira/browse/MNG-8406
2024-12-12 15:24:03 +01:00
Tamas Cservenak 0f15ad70e5
[MNG-8423] mvnenc -h (#1971)
Expand mvnenc help

---

https://issues.apache.org/jira/browse/MNG-8423
2024-12-12 15:23:28 +01:00
Guillaume Nodet 54ffc5014e
[MNG-5729] Use monotonic time measurements (#1965) 2024-12-12 12:02:17 +01:00
Tamas Cservenak 5b7a6de55a
[MNG-8421] Move all of logging setup to LookupInvoker; mvnenc IT (#1964)
Currently mvnenc is unable to log to file (-l) as logging setup is incomplete, move all of this logic to LookupInvoker. Also, create prompt in mvnenc only when needed. Finally, implement needed changes to support mvnenc ITs and add mvnenc IT.

Other changes:
* get rid of `distributionFileName` dirty hack, is remnant from old ITs
* fix CI re removal of that above and use of site that is brain-dead

---

https://issues.apache.org/jira/browse/MNG-8421
2024-12-12 09:43:12 +01:00
Guillaume Nodet 9c77221cbc
[MNG-8393] Enable consumer pom by default for 4.1.0 model version only (#1963) 2024-12-12 09:07:12 +01:00
Tamas Cservenak 6cb4482a98
[MNG-8411][MNG-8412][MNG-8416] mvnenc fixes (#1959)
Cumulative mvnenc fixes:
* make the 3 goals (sans init) work in batch mode
* move the Maven DI SecDispatcher provider to test scope in maven-impl (duplicates components in Maven)
* update to SecDisparcher 4.0.3 (contains fix for MNG-8416 and one other bug)

---

https://issues.apache.org/jira/browse/MNG-8411
https://issues.apache.org/jira/browse/MNG-8412
https://issues.apache.org/jira/browse/MNG-8416
2024-12-11 10:13:06 +01:00
dependabot[bot] 8706dd7edf
[MNG-8420] Bump jlineVersion from 3.27.1 to 3.28.0 (#1962)
Bumps `jlineVersion` from 3.27.1 to 3.28.0.

Updates `org.jline:jline-reader` from 3.27.1 to 3.28.0
- [Release notes](https://github.com/jline/jline3/releases)
- [Changelog](https://github.com/jline/jline3/blob/master/changelog.md)
- [Commits](https://github.com/jline/jline3/compare/jline-3.27.1...jline-3.28.0)

Updates `org.jline:jline-style` from 3.27.1 to 3.28.0
- [Release notes](https://github.com/jline/jline3/releases)
- [Changelog](https://github.com/jline/jline3/blob/master/changelog.md)
- [Commits](https://github.com/jline/jline3/compare/jline-3.27.1...jline-3.28.0)

Updates `org.jline:jline-builtins` from 3.27.1 to 3.28.0
- [Release notes](https://github.com/jline/jline3/releases)
- [Changelog](https://github.com/jline/jline3/blob/master/changelog.md)
- [Commits](https://github.com/jline/jline3/compare/jline-3.27.1...jline-3.28.0)

Updates `org.jline:jline-console-ui` from 3.27.1 to 3.28.0
- [Release notes](https://github.com/jline/jline3/releases)
- [Changelog](https://github.com/jline/jline3/blob/master/changelog.md)
- [Commits](https://github.com/jline/jline3/compare/jline-3.27.1...jline-3.28.0)

Updates `org.jline:jline-terminal-ffm` from 3.27.1 to 3.28.0
- [Release notes](https://github.com/jline/jline3/releases)
- [Changelog](https://github.com/jline/jline3/blob/master/changelog.md)
- [Commits](https://github.com/jline/jline3/compare/jline-3.27.1...jline-3.28.0)

Updates `org.jline:jline-terminal-jni` from 3.27.1 to 3.28.0
- [Release notes](https://github.com/jline/jline3/releases)
- [Changelog](https://github.com/jline/jline3/blob/master/changelog.md)
- [Commits](https://github.com/jline/jline3/compare/jline-3.27.1...jline-3.28.0)

Updates `org.jline:jansi-core` from 3.27.1 to 3.28.0
- [Release notes](https://github.com/jline/jline3/releases)
- [Changelog](https://github.com/jline/jline3/blob/master/changelog.md)
- [Commits](https://github.com/jline/jline3/compare/jline-3.27.1...jline-3.28.0)

---
updated-dependencies:
- dependency-name: org.jline:jline-reader
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.jline:jline-style
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.jline:jline-builtins
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.jline:jline-console-ui
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.jline:jline-terminal-ffm
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.jline:jline-terminal-jni
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.jline:jansi-core
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-11 06:32:54 +01:00
Guillaume Nodet 781d19d9f1
[MNG-8410] Rename maven-api-meta to maven-api-annotations (#1957) 2024-12-10 22:43:27 +01:00
Guillaume Nodet 1b5b5c8f9e
[MNG-8415] Add constant for the security settings xml file (#1956)
* Add a constant for the security settings file
* Avoid usage of system properties by using the ProtoSession
* Regen
2024-12-09 13:19:44 +01:00
Konrad Windszus 17b2f38142 [MNG-8401] Reference global Maven download page
Otherwise the ASF default template is used due to global redirects from
*/download.html -> */download.cgi (in
https://svn.apache.org/repos/asf/maven/website/content/.htaccess) ->
/var/www/dyn/closer.lua (in
0a8ee96efb/modules/closer_cgi/files/closer-cgi.conf (L6C21-L6C44))

The ASF default template does not work for the Maven Website
(maven.apache.org)
2024-12-09 13:13:50 +01:00
Slawomir Jaranowski 9113b99b4a Use https for www.apache.org/licenses/ 2024-12-08 22:10:14 +01:00
Konrad Windszus 8d4f455ac9 [MNG-8407] Add target attribute to SVG links 2024-12-06 17:32:45 +01:00
Jermaine Hua d6edb027c3
[MNG-8388] Fix escape characters being replaced to change the original configuration (#1946)
* [MNG-8388] Fix escape characters being replaced to change the original configuration

Signed-off-by: crazyhzm <crazyhzm@apache.org>

* Add unit test

---------

Signed-off-by: crazyhzm <crazyhzm@apache.org>
Co-authored-by: Guillaume Nodet <gnodet@gmail.com>
2024-12-05 19:36:08 +01:00
Tamas Cservenak 01e47259d2
IT: Streamline ITs more (#1952)
Changes:
* remove unneeded POM cruft
* remove embedded profile (is default) introduce forked profile
* CI: drop "embedded" profile use
2024-12-05 17:03:20 +01:00
Guillaume Nodet 789e2de812
[MNG-8404] ModelValidator: add unit tests and simplify a bit (#1948) 2024-12-05 15:16:47 +01:00
Tamas Cservenak f7f6281e13
IT: Drop dead stuff (#1951)
These are ancient ITs that are and were disabled forever. They were compiled, their resources copied and all, just to not contribute anything to build/ITs.
2024-12-05 14:40:43 +01:00