[GitHub] [maven-surefire] Tibor17 commented on a diff in pull request #519: After surefire 2058
Tibor17 commented on code in PR #519: URL: https://github.com/apache/maven-surefire/pull/519#discussion_r851560523 ## surefire-api/src/main/java/org/apache/maven/surefire/api/stream/AbstractStreamDecoder.java: ## @@ -305,32 +313,24 @@ private String readString( @Nonnull final Memento memento, @Nonnegative final in memento.getDecoder().reset(); final CharBuffer output = memento.getCharBuffer(); ( (Buffer) output ).clear(); -final ByteBuffer input = memento.getByteBuffer(); final List strings = new ArrayList<>(); int countDecodedBytes = 0; for ( boolean endOfInput = false; !endOfInput; ) { -final int bytesToRead = totalBytes - countDecodedBytes; +final int bytesToRead = totalBytes - countDecodedBytes; // our wish to read bytes as much as possible read( memento, bytesToRead ); -int bytesToDecode = min( input.remaining(), bytesToRead ); +final ByteBuffer input = memento.getByteBuffer(); +int bytesToDecode = min( input.remaining(), bytesToRead ); // our guarantee of available bytes in buffer final boolean isLastChunk = bytesToDecode == bytesToRead; endOfInput = countDecodedBytes + bytesToDecode >= totalBytes; -do -{ -boolean endOfChunk = output.remaining() >= bytesToRead; -boolean endOfOutput = isLastChunk && endOfChunk; -int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, -memento.getLine().getPositionByteBuffer() ); -bytesToDecode -= readInputBytes; -countDecodedBytes += readInputBytes; -} -while ( isLastChunk && bytesToDecode > 0 && output.hasRemaining() ); - -if ( isLastChunk || !output.hasRemaining() ) -{ -strings.add( ( (Buffer) output ).flip().toString() ); -( (Buffer) output ).clear(); -} +boolean endOfChunk = output.remaining() >= bytesToRead; +boolean endOfOutput = isLastChunk && endOfChunk; +int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, +memento.getLine().getPositionByteBuffer() ); +countDecodedBytes += readInputBytes; +strings.add( ( (Buffer) output ).flip().toString() ); +( (Buffer) output ).clear(); +memento.getLine().setPositionByteBuffer( 0 ); Review Comment: The memento holds the reference to the buffer too. And if I clean it up, I should reset the position variable via `memento.getLine().setPositionByteBuffer( 0 )` in order to be consistent. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-surefire] Tibor17 commented on a diff in pull request #519: After surefire 2058
Tibor17 commented on code in PR #519: URL: https://github.com/apache/maven-surefire/pull/519#discussion_r851560523 ## surefire-api/src/main/java/org/apache/maven/surefire/api/stream/AbstractStreamDecoder.java: ## @@ -305,32 +313,24 @@ private String readString( @Nonnull final Memento memento, @Nonnegative final in memento.getDecoder().reset(); final CharBuffer output = memento.getCharBuffer(); ( (Buffer) output ).clear(); -final ByteBuffer input = memento.getByteBuffer(); final List strings = new ArrayList<>(); int countDecodedBytes = 0; for ( boolean endOfInput = false; !endOfInput; ) { -final int bytesToRead = totalBytes - countDecodedBytes; +final int bytesToRead = totalBytes - countDecodedBytes; // our wish to read bytes as much as possible read( memento, bytesToRead ); -int bytesToDecode = min( input.remaining(), bytesToRead ); +final ByteBuffer input = memento.getByteBuffer(); +int bytesToDecode = min( input.remaining(), bytesToRead ); // our guarantee of available bytes in buffer final boolean isLastChunk = bytesToDecode == bytesToRead; endOfInput = countDecodedBytes + bytesToDecode >= totalBytes; -do -{ -boolean endOfChunk = output.remaining() >= bytesToRead; -boolean endOfOutput = isLastChunk && endOfChunk; -int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, -memento.getLine().getPositionByteBuffer() ); -bytesToDecode -= readInputBytes; -countDecodedBytes += readInputBytes; -} -while ( isLastChunk && bytesToDecode > 0 && output.hasRemaining() ); - -if ( isLastChunk || !output.hasRemaining() ) -{ -strings.add( ( (Buffer) output ).flip().toString() ); -( (Buffer) output ).clear(); -} +boolean endOfChunk = output.remaining() >= bytesToRead; +boolean endOfOutput = isLastChunk && endOfChunk; +int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, +memento.getLine().getPositionByteBuffer() ); +countDecodedBytes += readInputBytes; +strings.add( ( (Buffer) output ).flip().toString() ); +( (Buffer) output ).clear(); +memento.getLine().setPositionByteBuffer( 0 ); Review Comment: The memento holds the reference to the buffer too. And if I clean it up, I should reset the position via `memento.getLine().setPositionByteBuffer( 0 )` in order to be consistent. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-surefire] Tibor17 commented on a diff in pull request #519: After surefire 2058
Tibor17 commented on code in PR #519: URL: https://github.com/apache/maven-surefire/pull/519#discussion_r851560523 ## surefire-api/src/main/java/org/apache/maven/surefire/api/stream/AbstractStreamDecoder.java: ## @@ -305,32 +313,24 @@ private String readString( @Nonnull final Memento memento, @Nonnegative final in memento.getDecoder().reset(); final CharBuffer output = memento.getCharBuffer(); ( (Buffer) output ).clear(); -final ByteBuffer input = memento.getByteBuffer(); final List strings = new ArrayList<>(); int countDecodedBytes = 0; for ( boolean endOfInput = false; !endOfInput; ) { -final int bytesToRead = totalBytes - countDecodedBytes; +final int bytesToRead = totalBytes - countDecodedBytes; // our wish to read bytes as much as possible read( memento, bytesToRead ); -int bytesToDecode = min( input.remaining(), bytesToRead ); +final ByteBuffer input = memento.getByteBuffer(); +int bytesToDecode = min( input.remaining(), bytesToRead ); // our guarantee of available bytes in buffer final boolean isLastChunk = bytesToDecode == bytesToRead; endOfInput = countDecodedBytes + bytesToDecode >= totalBytes; -do -{ -boolean endOfChunk = output.remaining() >= bytesToRead; -boolean endOfOutput = isLastChunk && endOfChunk; -int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, -memento.getLine().getPositionByteBuffer() ); -bytesToDecode -= readInputBytes; -countDecodedBytes += readInputBytes; -} -while ( isLastChunk && bytesToDecode > 0 && output.hasRemaining() ); - -if ( isLastChunk || !output.hasRemaining() ) -{ -strings.add( ( (Buffer) output ).flip().toString() ); -( (Buffer) output ).clear(); -} +boolean endOfChunk = output.remaining() >= bytesToRead; +boolean endOfOutput = isLastChunk && endOfChunk; +int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, +memento.getLine().getPositionByteBuffer() ); +countDecodedBytes += readInputBytes; +strings.add( ( (Buffer) output ).flip().toString() ); +( (Buffer) output ).clear(); +memento.getLine().setPositionByteBuffer( 0 ); Review Comment: The memento holds the reference to the buffer too. And if I clean it up, I should reset the position via `memento.getLine().setPositionByteBuffer( 0 )`. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Created] (MJAVADOC-713) Skipping Javadoc reportset leaves empty Javadoc link in site
Joshua created MJAVADOC-713: --- Summary: Skipping Javadoc reportset leaves empty Javadoc link in site Key: MJAVADOC-713 URL: https://issues.apache.org/jira/browse/MJAVADOC-713 Project: Maven Javadoc Plugin Issue Type: Bug Affects Versions: 3.3.0 Reporter: Joshua Attachments: image-2022-04-15-17-47-49-771.png I am trying to skip a reportset that is inherited from a parent pom This is what the report plugin looks like in the parent pom org.apache.maven.plugins maven-javadoc-plugin javadoc-no-fork javadoc-no-fork test-javadoc-no-fork test-javadoc-no-fork package I don't want the test-javadoc-no-fork report in my project If I do this in my pom org.apache.maven.plugins maven-javadoc-plugin test-javadoc-no-fork true It will skip the Javadoc generation but still adds a link to site and when you click on the link you get a 404 since the test Javadoc wasn't inherited. !image-2022-04-15-17-47-49-771.png! I logged this as a defect because I would think skip would prevent the Javadoc generation and NOT add a link to the site for a report set that wasn't generated. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [maven-surefire] zoltanmeze commented on a diff in pull request #519: After surefire 2058
zoltanmeze commented on code in PR #519: URL: https://github.com/apache/maven-surefire/pull/519#discussion_r851522300 ## surefire-api/src/main/java/org/apache/maven/surefire/api/stream/AbstractStreamDecoder.java: ## @@ -305,32 +313,24 @@ private String readString( @Nonnull final Memento memento, @Nonnegative final in memento.getDecoder().reset(); final CharBuffer output = memento.getCharBuffer(); ( (Buffer) output ).clear(); -final ByteBuffer input = memento.getByteBuffer(); final List strings = new ArrayList<>(); int countDecodedBytes = 0; for ( boolean endOfInput = false; !endOfInput; ) { -final int bytesToRead = totalBytes - countDecodedBytes; +final int bytesToRead = totalBytes - countDecodedBytes; // our wish to read bytes as much as possible read( memento, bytesToRead ); -int bytesToDecode = min( input.remaining(), bytesToRead ); +final ByteBuffer input = memento.getByteBuffer(); +int bytesToDecode = min( input.remaining(), bytesToRead ); // our guarantee of available bytes in buffer final boolean isLastChunk = bytesToDecode == bytesToRead; endOfInput = countDecodedBytes + bytesToDecode >= totalBytes; -do -{ -boolean endOfChunk = output.remaining() >= bytesToRead; -boolean endOfOutput = isLastChunk && endOfChunk; -int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, -memento.getLine().getPositionByteBuffer() ); -bytesToDecode -= readInputBytes; -countDecodedBytes += readInputBytes; -} -while ( isLastChunk && bytesToDecode > 0 && output.hasRemaining() ); - -if ( isLastChunk || !output.hasRemaining() ) -{ -strings.add( ( (Buffer) output ).flip().toString() ); -( (Buffer) output ).clear(); -} +boolean endOfChunk = output.remaining() >= bytesToRead; +boolean endOfOutput = isLastChunk && endOfChunk; +int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, +memento.getLine().getPositionByteBuffer() ); +countDecodedBytes += readInputBytes; +strings.add( ( (Buffer) output ).flip().toString() ); +( (Buffer) output ).clear(); +memento.getLine().setPositionByteBuffer( 0 ); Review Comment: I see. Wouldn't [read( memento, bytesToRead );](https://github.com/apache/maven-surefire/pull/519/files#diff-3d0df21c8b05874314acbad0ec8fc6778db9eebe5a08bba3bcff4f52872a4ce6R321) also reset this to 0 in every iteration starting from second? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-surefire] zoltanmeze commented on a diff in pull request #519: After surefire 2058
zoltanmeze commented on code in PR #519: URL: https://github.com/apache/maven-surefire/pull/519#discussion_r851522300 ## surefire-api/src/main/java/org/apache/maven/surefire/api/stream/AbstractStreamDecoder.java: ## @@ -305,32 +313,24 @@ private String readString( @Nonnull final Memento memento, @Nonnegative final in memento.getDecoder().reset(); final CharBuffer output = memento.getCharBuffer(); ( (Buffer) output ).clear(); -final ByteBuffer input = memento.getByteBuffer(); final List strings = new ArrayList<>(); int countDecodedBytes = 0; for ( boolean endOfInput = false; !endOfInput; ) { -final int bytesToRead = totalBytes - countDecodedBytes; +final int bytesToRead = totalBytes - countDecodedBytes; // our wish to read bytes as much as possible read( memento, bytesToRead ); -int bytesToDecode = min( input.remaining(), bytesToRead ); +final ByteBuffer input = memento.getByteBuffer(); +int bytesToDecode = min( input.remaining(), bytesToRead ); // our guarantee of available bytes in buffer final boolean isLastChunk = bytesToDecode == bytesToRead; endOfInput = countDecodedBytes + bytesToDecode >= totalBytes; -do -{ -boolean endOfChunk = output.remaining() >= bytesToRead; -boolean endOfOutput = isLastChunk && endOfChunk; -int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, -memento.getLine().getPositionByteBuffer() ); -bytesToDecode -= readInputBytes; -countDecodedBytes += readInputBytes; -} -while ( isLastChunk && bytesToDecode > 0 && output.hasRemaining() ); - -if ( isLastChunk || !output.hasRemaining() ) -{ -strings.add( ( (Buffer) output ).flip().toString() ); -( (Buffer) output ).clear(); -} +boolean endOfChunk = output.remaining() >= bytesToRead; +boolean endOfOutput = isLastChunk && endOfChunk; +int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, +memento.getLine().getPositionByteBuffer() ); +countDecodedBytes += readInputBytes; +strings.add( ( (Buffer) output ).flip().toString() ); +( (Buffer) output ).clear(); +memento.getLine().setPositionByteBuffer( 0 ); Review Comment: I see. Wouldn't [read](https://github.com/apache/maven-surefire/pull/519/files#diff-3d0df21c8b05874314acbad0ec8fc6778db9eebe5a08bba3bcff4f52872a4ce6R321) also reset this to 0 in every iteration starting from second? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-surefire] zoltanmeze commented on a diff in pull request #519: After surefire 2058
zoltanmeze commented on code in PR #519: URL: https://github.com/apache/maven-surefire/pull/519#discussion_r851522300 ## surefire-api/src/main/java/org/apache/maven/surefire/api/stream/AbstractStreamDecoder.java: ## @@ -305,32 +313,24 @@ private String readString( @Nonnull final Memento memento, @Nonnegative final in memento.getDecoder().reset(); final CharBuffer output = memento.getCharBuffer(); ( (Buffer) output ).clear(); -final ByteBuffer input = memento.getByteBuffer(); final List strings = new ArrayList<>(); int countDecodedBytes = 0; for ( boolean endOfInput = false; !endOfInput; ) { -final int bytesToRead = totalBytes - countDecodedBytes; +final int bytesToRead = totalBytes - countDecodedBytes; // our wish to read bytes as much as possible read( memento, bytesToRead ); -int bytesToDecode = min( input.remaining(), bytesToRead ); +final ByteBuffer input = memento.getByteBuffer(); +int bytesToDecode = min( input.remaining(), bytesToRead ); // our guarantee of available bytes in buffer final boolean isLastChunk = bytesToDecode == bytesToRead; endOfInput = countDecodedBytes + bytesToDecode >= totalBytes; -do -{ -boolean endOfChunk = output.remaining() >= bytesToRead; -boolean endOfOutput = isLastChunk && endOfChunk; -int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, -memento.getLine().getPositionByteBuffer() ); -bytesToDecode -= readInputBytes; -countDecodedBytes += readInputBytes; -} -while ( isLastChunk && bytesToDecode > 0 && output.hasRemaining() ); - -if ( isLastChunk || !output.hasRemaining() ) -{ -strings.add( ( (Buffer) output ).flip().toString() ); -( (Buffer) output ).clear(); -} +boolean endOfChunk = output.remaining() >= bytesToRead; +boolean endOfOutput = isLastChunk && endOfChunk; +int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, +memento.getLine().getPositionByteBuffer() ); +countDecodedBytes += readInputBytes; +strings.add( ( (Buffer) output ).flip().toString() ); +( (Buffer) output ).clear(); +memento.getLine().setPositionByteBuffer( 0 ); Review Comment: Wouldn't [read](https://github.com/apache/maven-surefire/pull/519/files#diff-3d0df21c8b05874314acbad0ec8fc6778db9eebe5a08bba3bcff4f52872a4ce6R321) also reset this to 0 in every iteration starting from second? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-surefire] sbabcoc commented on pull request #517: [SUREFIRE-2064] Allow all supported values of [parallel] option
sbabcoc commented on PR #517: URL: https://github.com/apache/maven-surefire/pull/517#issuecomment-1100376937 I'll see what I can come up with. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-resolver] cstamas commented on a diff in pull request #168: [MRESOLVER-253] Dynamic LRM
cstamas commented on code in PR #168: URL: https://github.com/apache/maven-resolver/pull/168#discussion_r851437437 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/EnhancedLocalRepositoryManager.java: ## @@ -142,7 +212,17 @@ public void add( RepositorySystemSession session, LocalArtifactRegistration requ { repositories = getRepositoryKeys( request.getRepository(), request.getContexts() ); } -addArtifact( request.getArtifact(), repositories, request.getRepository() == null ); +if ( request.getRepository() == null ) +{ +addArtifact( request.getArtifact(), repositories, null, null ); +} +else +{ +for ( String context : request.getContexts() ) +{ +addArtifact( request.getArtifact(), repositories, request.getRepository(), context ); Review Comment: if repository is null, then it enters block above (repo is RemoteRepository, so it repo is null, it is "locally installed") -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-resolver] cstamas commented on a diff in pull request #168: [MRESOLVER-253] Dynamic LRM
cstamas commented on code in PR #168: URL: https://github.com/apache/maven-resolver/pull/168#discussion_r851436810 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DynamicPrefixComposerFactorySupport.java: ## @@ -0,0 +1,81 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.RepositorySystemSession; +import org.eclipse.aether.metadata.Metadata; +import org.eclipse.aether.util.ConfigUtils; + +/** + * Support class for {@link DynamicPrefixComposerFactory} implementations. + * + * @since TBD + */ +public abstract class DynamicPrefixComposerFactorySupport implements DynamicPrefixComposerFactory +{ +@Override +public DynamicPrefixComposer createComposer( RepositorySystemSession session ) +{ +String localPrefix = ConfigUtils.getString( +session, "installed", "aether.enhancedLocalRepository.localPrefix" ); +String remotePrefix = ConfigUtils.getString( +session, "cached", "aether.enhancedLocalRepository.remotePrefix" ); +String releasePrefix = ConfigUtils.getString( +session, "release", "aether.enhancedLocalRepository.releasePrefix" ); +String snapshotPrefix = ConfigUtils.getString( +session, "snapshot", "aether.enhancedLocalRepository.snapshotPrefix" ); + +return dpCreateComposer( session, localPrefix, remotePrefix, releasePrefix, snapshotPrefix ); +} + +protected abstract DynamicPrefixComposer dpCreateComposer( RepositorySystemSession session, String localPrefix, + String remotePrefix, String releasePrefix, + String snapshotPrefix ); + +/** + * Support class for composers. + */ +protected abstract static class DynamicPrefixComposerSupport implements DynamicPrefixComposer +{ +protected final String localPrefix; + +protected final String remotePrefix; + +protected final String releasePrefix; + +protected final String snapshotPrefix; + +protected DynamicPrefixComposerSupport( String localPrefix, +String remotePrefix, +String releasePrefix, +String snapshotPrefix ) +{ +this.localPrefix = localPrefix; +this.remotePrefix = remotePrefix; +this.releasePrefix = releasePrefix; +this.snapshotPrefix = snapshotPrefix; +} +} + +protected static boolean isSnapshot( Metadata metadata ) +{ +return metadata.getVersion() != null && metadata.getVersion().endsWith( "SNAPSHOT" ); Review Comment: This needs testing, I was not aware of Nature enum. And this check was producing wrong results. See this gist again (the "local-release" containts actually metadata w/o versions! But I was building maven master, snapshot). So, will need to check is nature always properly set or not. This answers also the "why not local split by snapshot" question: I had problems with metadata separation. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-resolver] cstamas commented on a diff in pull request #168: [MRESOLVER-253] Dynamic LRM
cstamas commented on code in PR #168: URL: https://github.com/apache/maven-resolver/pull/168#discussion_r851435672 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/EnhancedLocalRepositoryManager.java: ## @@ -104,8 +176,8 @@ public LocalArtifactResult find( RepositorySystemSession session, LocalArtifactR } else { -String context = request.getContext(); -for ( RemoteRepository repository : request.getRepositories() ) +String context = result.getRequest().getContext(); +for ( RemoteRepository repository : result.getRequest().getRepositories() ) Review Comment: As I factored out this into `private void checkFind` method (before was inline), and `result.getRequest()` is same as `request`, so less method params -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Commented] (MNG-7438) add execution id to "Configuring mojo xxx with basic configurator" debug message
[ https://issues.apache.org/jira/browse/MNG-7438?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522934#comment-17522934 ] Hudson commented on MNG-7438: - Build succeeded in Jenkins: Maven » Maven TLP » maven » PR-720 #3 See https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven/job/PR-720/3/ > add execution id to "Configuring mojo xxx with basic configurator" debug > message > > > Key: MNG-7438 > URL: https://issues.apache.org/jira/browse/MNG-7438 > Project: Maven > Issue Type: Improvement > Components: Core >Affects Versions: 3.8.5 >Reporter: Herve Boutemy >Assignee: Herve Boutemy >Priority: Major > Fix For: 3.9.0, 4.0.0-alpha-1, 4.0.0 > > > currently, when running goals/mojos, we have in debug logs > {noformat} > [INFO] --- maven-surefire-plugin:3.0.0-M5:test (default-test) @ > org.example.apache.maven.execution --- > [DEBUG] Configuring mojo > org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test from plugin > realm > ClassRealm[plugin>org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5, > parent: sun.misc.Launcher$AppClassLoader@7852e922] > [DEBUG] Configuring mojo > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' with basic > configurator --> > [DEBUG] (s) additionalClasspathElements = [] > [DEBUG] (s) basedir = /home/herve/tmp/org.example.apache.maven.execution > {noformat} > on the "{{Configuring mojo > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' with basic > configurator}}" line, it completely hides the fact that configuration is > valid for an execution id, that has a default value when nobody defined any > (see https://maven.apache.org/guides/mini/guide-default-execution-ids.html ) > Just adding "{{execution 'default-test'}}" would make things more clear so > people learn about execution ids > {noformat} > [DEBUG] Configuring mojo > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' execution > 'default-test' with basic configurator --> > {noformat} > h2. final debug messages > {noformat} > [DEBUG] Loading mojo > org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test from plugin > realm > ClassRealm[plugin>org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5, > parent: sun.misc.Launcher$AppClassLoader@7852e922] > [DEBUG] Configuring mojo execution > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test:default-test' > with basic configurator --> > {noformat} -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Commented] (MJAVADOC-712) Remove remains of org.codehaus.doxia.sink.Sink
[ https://issues.apache.org/jira/browse/MJAVADOC-712?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522933#comment-17522933 ] Hudson commented on MJAVADOC-712: - Build succeeded in Jenkins: Maven » Maven TLP » maven-javadoc-plugin » master #14 See https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven-javadoc-plugin/job/master/14/ > Remove remains of org.codehaus.doxia.sink.Sink > -- > > Key: MJAVADOC-712 > URL: https://issues.apache.org/jira/browse/MJAVADOC-712 > Project: Maven Javadoc Plugin > Issue Type: Task >Reporter: Michael Osipov >Assignee: Michael Osipov >Priority: Major > Fix For: next-release > > -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [maven-resolver] michael-o commented on a diff in pull request #168: [MRESOLVER-253] Dynamic LRM
michael-o commented on code in PR #168: URL: https://github.com/apache/maven-resolver/pull/168#discussion_r851431775 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/EnhancedLocalRepositoryManagerFactory.java: ## @@ -51,7 +51,7 @@ { private static final String CONFIG_PROP_PREFIX_COMPOSER = "aether.enhancedLocalRepository.prefixComposer"; -private static final String DEFAULT_PREFIX_COMPOSER = NoopDynamicPrefixComposerFactory.NAME; +private static final String DEFAULT_PREFIX_COMPOSER = NoopLocalPathPrefixComposerFactory.NAME; Review Comment: `DEFAULT_PATH_PREFIX_COMPOSER` ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/EnhancedLocalRepositoryManagerFactory.java: ## @@ -51,7 +51,7 @@ { private static final String CONFIG_PROP_PREFIX_COMPOSER = "aether.enhancedLocalRepository.prefixComposer"; Review Comment: `CONFIG_PROP_PATH_PREFIX_COMPOSER` `pathPrefixComposer` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Commented] (MJAVADOC-711) Upgrade plugins in ITs
[ https://issues.apache.org/jira/browse/MJAVADOC-711?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522930#comment-17522930 ] Hudson commented on MJAVADOC-711: - Build succeeded in Jenkins: Maven » Maven TLP » maven-javadoc-plugin » master #13 See https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven-javadoc-plugin/job/master/13/ > Upgrade plugins in ITs > -- > > Key: MJAVADOC-711 > URL: https://issues.apache.org/jira/browse/MJAVADOC-711 > Project: Maven Javadoc Plugin > Issue Type: Dependency upgrade >Reporter: Michael Osipov >Assignee: Michael Osipov >Priority: Major > Fix For: next-release > > > * Maven Project Info Reports to 3.2.2 > * Maven Site Plugin to 3.11.0 -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [maven-resolver] michael-o commented on a diff in pull request #168: [MRESOLVER-253] Dynamic LRM
michael-o commented on code in PR #168: URL: https://github.com/apache/maven-resolver/pull/168#discussion_r851427076 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DynamicPrefixComposer.java: ## @@ -0,0 +1,68 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; +import org.eclipse.aether.repository.RemoteRepository; + +/** + * Composes prefixes for {@link EnhancedLocalRepositoryManager}. + * + * @since TBD + */ +public interface DynamicPrefixComposer +{ +/** + * Gets the path prefix for a locally installed artifact. + * + * @param artifact The artifact for which to determine the prefix, must not be {@code null}. + * @return The prefix, may be {@code null} (note: {@code null}s and empty strings are treated equally). + */ +String getPrefixForLocalArtifact( Artifact artifact ); + +/** + * Gets the path prefix for an artifact cached from a remote repository. + * + * @param artifact The artifact for which to determine the prefix, must not be {@code null}. + * @param repository The source repository of the artifact, must not be {@code null}. + * @param contextThe resolution context in which the artifact is being requested, may be {@code null}. + * @return The prefix, may be {@code null} (note: {@code null}s and empty strings are treated equally). + */ +String getPrefixForRemoteArtifact( Artifact artifact, RemoteRepository repository, String context ); Review Comment: I see, ok. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-resolver] michael-o commented on a diff in pull request #168: [MRESOLVER-253] Dynamic LRM
michael-o commented on code in PR #168: URL: https://github.com/apache/maven-resolver/pull/168#discussion_r851426787 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DynamicPrefixComposer.java: ## @@ -0,0 +1,68 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; +import org.eclipse.aether.repository.RemoteRepository; + +/** + * Composes prefixes for {@link EnhancedLocalRepositoryManager}. + * + * @since TBD + */ +public interface DynamicPrefixComposer Review Comment: Agreed. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-resolver] cstamas commented on a diff in pull request #168: [MRESOLVER-253] Dynamic LRM
cstamas commented on code in PR #168: URL: https://github.com/apache/maven-resolver/pull/168#discussion_r851424931 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DynamicPrefixComposerFactorySupport.java: ## @@ -0,0 +1,81 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.RepositorySystemSession; +import org.eclipse.aether.metadata.Metadata; +import org.eclipse.aether.util.ConfigUtils; + +/** + * Support class for {@link DynamicPrefixComposerFactory} implementations. + * + * @since TBD + */ +public abstract class DynamicPrefixComposerFactorySupport implements DynamicPrefixComposerFactory +{ +@Override +public DynamicPrefixComposer createComposer( RepositorySystemSession session ) +{ Review Comment: implicit, done by ConfigUtil -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Commented] (MNG-7438) add execution id to "Configuring mojo xxx with basic configurator" debug message
[ https://issues.apache.org/jira/browse/MNG-7438?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522926#comment-17522926 ] Hudson commented on MNG-7438: - Build succeeded in Jenkins: Maven » Maven TLP » maven » maven-3.9.x #17 See https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven/job/maven-3.9.x/17/ > add execution id to "Configuring mojo xxx with basic configurator" debug > message > > > Key: MNG-7438 > URL: https://issues.apache.org/jira/browse/MNG-7438 > Project: Maven > Issue Type: Improvement > Components: Core >Affects Versions: 3.8.5 >Reporter: Herve Boutemy >Assignee: Herve Boutemy >Priority: Major > Fix For: 3.9.0, 4.0.0-alpha-1, 4.0.0 > > > currently, when running goals/mojos, we have in debug logs > {noformat} > [INFO] --- maven-surefire-plugin:3.0.0-M5:test (default-test) @ > org.example.apache.maven.execution --- > [DEBUG] Configuring mojo > org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test from plugin > realm > ClassRealm[plugin>org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5, > parent: sun.misc.Launcher$AppClassLoader@7852e922] > [DEBUG] Configuring mojo > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' with basic > configurator --> > [DEBUG] (s) additionalClasspathElements = [] > [DEBUG] (s) basedir = /home/herve/tmp/org.example.apache.maven.execution > {noformat} > on the "{{Configuring mojo > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' with basic > configurator}}" line, it completely hides the fact that configuration is > valid for an execution id, that has a default value when nobody defined any > (see https://maven.apache.org/guides/mini/guide-default-execution-ids.html ) > Just adding "{{execution 'default-test'}}" would make things more clear so > people learn about execution ids > {noformat} > [DEBUG] Configuring mojo > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' execution > 'default-test' with basic configurator --> > {noformat} > h2. final debug messages > {noformat} > [DEBUG] Loading mojo > org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test from plugin > realm > ClassRealm[plugin>org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5, > parent: sun.misc.Launcher$AppClassLoader@7852e922] > [DEBUG] Configuring mojo execution > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test:default-test' > with basic configurator --> > {noformat} -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [maven-resolver] cstamas commented on a diff in pull request #168: [MRESOLVER-253] Dynamic LRM
cstamas commented on code in PR #168: URL: https://github.com/apache/maven-resolver/pull/168#discussion_r851423858 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DynamicPrefixComposer.java: ## @@ -0,0 +1,68 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; +import org.eclipse.aether.repository.RemoteRepository; + +/** + * Composes prefixes for {@link EnhancedLocalRepositoryManager}. + * + * @since TBD + */ +public interface DynamicPrefixComposer +{ +/** + * Gets the path prefix for a locally installed artifact. + * + * @param artifact The artifact for which to determine the prefix, must not be {@code null}. + * @return The prefix, may be {@code null} (note: {@code null}s and empty strings are treated equally). + */ +String getPrefixForLocalArtifact( Artifact artifact ); + +/** + * Gets the path prefix for an artifact cached from a remote repository. + * + * @param artifact The artifact for which to determine the prefix, must not be {@code null}. + * @param repository The source repository of the artifact, must not be {@code null}. + * @param contextThe resolution context in which the artifact is being requested, may be {@code null}. + * @return The prefix, may be {@code null} (note: {@code null}s and empty strings are treated equally). + */ +String getPrefixForRemoteArtifact( Artifact artifact, RemoteRepository repository, String context ); Review Comment: See this gist (follow the path "remote-release/central", and you will find contexts like "plugin", "project", "project-compile", "project-test" and "noctx" is value I put here when context is not given (is empty or null). ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DynamicPrefixComposer.java: ## @@ -0,0 +1,68 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; +import org.eclipse.aether.repository.RemoteRepository; + +/** + * Composes prefixes for {@link EnhancedLocalRepositoryManager}. + * + * @since TBD + */ +public interface DynamicPrefixComposer +{ +/** + * Gets the path prefix for a locally installed artifact. + * + * @param artifact The artifact for which to determine the prefix, must not be {@code null}. + * @return The prefix, may be {@code null} (note: {@code null}s and empty strings are treated equally). + */ +String getPrefixForLocalArtifact( Artifact artifact ); + +/** + * Gets the path prefix for an artifact cached from a remote repository. + * + * @param artifact The artifact for which to determine the prefix, must not be {@code null}. + * @param repository The source repository of the artifact, must not be {@code null}. + * @param contextThe resolution context in which the artifact is being requested, may be {@code null}. + * @return The prefix, may be {@code null} (note: {@code null}s and empty strings are treated equally). + */ +String getPrefixForRemoteArtifact( Artifact artifact, RemoteRepository repository, String context ); Review Comment: See this gist (follow the path "remote-release/cent
[GitHub] [maven-resolver] cstamas commented on a diff in pull request #168: [MRESOLVER-253] Dynamic LRM
cstamas commented on code in PR #168: URL: https://github.com/apache/maven-resolver/pull/168#discussion_r851423042 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DynamicPrefixComposer.java: ## @@ -0,0 +1,68 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; +import org.eclipse.aether.repository.RemoteRepository; + +/** + * Composes prefixes for {@link EnhancedLocalRepositoryManager}. + * + * @since TBD + */ +public interface DynamicPrefixComposer +{ +/** + * Gets the path prefix for a locally installed artifact. + * + * @param artifact The artifact for which to determine the prefix, must not be {@code null}. + * @return The prefix, may be {@code null} (note: {@code null}s and empty strings are treated equally). + */ +String getPrefixForLocalArtifact( Artifact artifact ); + +/** + * Gets the path prefix for an artifact cached from a remote repository. + * + * @param artifact The artifact for which to determine the prefix, must not be {@code null}. + * @param repository The source repository of the artifact, must not be {@code null}. + * @param contextThe resolution context in which the artifact is being requested, may be {@code null}. + * @return The prefix, may be {@code null} (note: {@code null}s and empty strings are treated equally). + */ +String getPrefixForRemoteArtifact( Artifact artifact, RemoteRepository repository, String context ); Review Comment: too long to explain :) but really, this is one of the most interesting features (but unfinished) of Maven: basically the "context of the artifact: like build, plugin, etc. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-resolver] cstamas commented on a diff in pull request #168: [MRESOLVER-253] Dynamic LRM
cstamas commented on code in PR #168: URL: https://github.com/apache/maven-resolver/pull/168#discussion_r851422063 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DynamicPrefixComposer.java: ## @@ -0,0 +1,68 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; +import org.eclipse.aether.repository.RemoteRepository; + +/** + * Composes prefixes for {@link EnhancedLocalRepositoryManager}. + * + * @since TBD + */ +public interface DynamicPrefixComposer Review Comment: Actually, am ok with `LocalPathPrefixComposer` and as I see below, rename methods as well to `...PathPrefix..`. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-resolver] michael-o commented on a diff in pull request #168: [MRESOLVER-253] Dynamic LRM
michael-o commented on code in PR #168: URL: https://github.com/apache/maven-resolver/pull/168#discussion_r851421587 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DynamicPrefixComposer.java: ## @@ -0,0 +1,68 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; +import org.eclipse.aether.repository.RemoteRepository; + +/** + * Composes prefixes for {@link EnhancedLocalRepositoryManager}. + * + * @since TBD + */ +public interface DynamicPrefixComposer Review Comment: OK, then let's go with `LocalPrefixComposer`. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-resolver] cstamas commented on a diff in pull request #168: [MRESOLVER-253] Dynamic LRM
cstamas commented on code in PR #168: URL: https://github.com/apache/maven-resolver/pull/168#discussion_r851421405 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DynamicPrefixComposer.java: ## @@ -0,0 +1,68 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; +import org.eclipse.aether.repository.RemoteRepository; + +/** + * Composes prefixes for {@link EnhancedLocalRepositoryManager}. + * + * @since TBD + */ +public interface DynamicPrefixComposer Review Comment: prefix refer to "final path", yes. So, if prefix given (is not null or empty string), path returned by eLRM will be like `$prefix/$localPath` otherwise only `$localPath` (localPath is produces by LocalPathComposer). ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DynamicPrefixComposer.java: ## @@ -0,0 +1,68 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; +import org.eclipse.aether.repository.RemoteRepository; + +/** + * Composes prefixes for {@link EnhancedLocalRepositoryManager}. + * + * @since TBD + */ +public interface DynamicPrefixComposer Review Comment: prefix refer to "final path", yes. So, if prefix given (is not null or empty string), path returned by eLRM will be like `$prefix/$localPath` otherwise only `$localPath` (localPath is produced by LocalPathComposer). -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-resolver] michael-o commented on a diff in pull request #168: [MRESOLVER-253] Dynamic LRM
michael-o commented on code in PR #168: URL: https://github.com/apache/maven-resolver/pull/168#discussion_r851419765 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DynamicPrefixComposer.java: ## @@ -0,0 +1,68 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; +import org.eclipse.aether.repository.RemoteRepository; + +/** + * Composes prefixes for {@link EnhancedLocalRepositoryManager}. + * + * @since TBD + */ +public interface DynamicPrefixComposer Review Comment: Question: Does the prefix refer to a path or decoupled from it? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-resolver] cstamas commented on a diff in pull request #168: [MRESOLVER-253] Dynamic LRM
cstamas commented on code in PR #168: URL: https://github.com/apache/maven-resolver/pull/168#discussion_r851419067 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DynamicPrefixComposer.java: ## @@ -0,0 +1,68 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; +import org.eclipse.aether.repository.RemoteRepository; + +/** + * Composes prefixes for {@link EnhancedLocalRepositoryManager}. + * + * @since TBD + */ +public interface DynamicPrefixComposer Review Comment: Unsure why Path in there? IMHO LocalPathComposer and LocalPrefixComposer are just nice pair -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven] cstamas commented on a diff in pull request #720: [MNG-7454] Include resolver-transport-http in Maven
cstamas commented on code in PR #720: URL: https://github.com/apache/maven/pull/720#discussion_r851418779 ## maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java: ## @@ -261,23 +261,24 @@ else if ( request.isUpdateSnapshots() ) } session.setAuthenticationSelector( authSelector ); -String transport = request.getUserProperties().getProperty( MAVEN_TRANSPORT_KEY, MAVEN_TRANSPORT_WAGON ); -if ( MAVEN_TRANSPORT_RESOLVER.equals( transport ) ) +String transport = request.getUserProperties() +.getProperty( MAVEN_RESOLVER_TRANSPORT_KEY, MAVEN_RESOLVER_TRANSPORT_WAGON ); +if ( MAVEN_RESOLVER_TRANSPORT_NATIVE.equals( transport ) ) { // Make sure (whatever extra priority is set) that resolver native is selected -configProps.put( RESOLVER_FILE_TRANSPORTER_PRIORITY_KEY, RESOLVER_MAX_PRIORITY ); -configProps.put( RESOLVER_HTTP_TRANSPORTER_PRIORITY_KEY, RESOLVER_MAX_PRIORITY ); +configProps.put( NATIVE_FILE_TRANSPORTER_PRIORITY_KEY, RESOLVER_MAX_PRIORITY ); +configProps.put( NATIVE_HTTP_TRANSPORTER_PRIORITY_KEY, RESOLVER_MAX_PRIORITY ); } -else if ( MAVEN_TRANSPORT_WAGON.equals( transport ) ) +else if ( MAVEN_RESOLVER_TRANSPORT_WAGON.equals( transport ) ) { // Make sure (whatever extra priority is set) that wagon is selected -configProps.put( WAGON_TRANSPORTER_KEY_PRIORITY_KEY, RESOLVER_MAX_PRIORITY ); +configProps.put( WAGON_TRANSPORTER_PRIORITY_KEY, RESOLVER_MAX_PRIORITY ); } -else if ( !MAVEN_TRANSPORT_AUTO.equals( transport ) ) +else if ( !MAVEN_RESOLVER_TRANSPORT_AUTO.equals( transport ) ) { -throw new IllegalArgumentException( "Unknown maven.transport=" + transport -+ ". Supported ones are: " + MAVEN_TRANSPORT_WAGON + ", " -+ MAVEN_TRANSPORT_RESOLVER + " and " + MAVEN_TRANSPORT_AUTO ); +throw new IllegalArgumentException( "Unknown " + MAVEN_RESOLVER_TRANSPORT_KEY + "=" + transport Review Comment: Done -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-resolver] michael-o commented on a diff in pull request #168: [MRESOLVER-253] Dynamic LRM
michael-o commented on code in PR #168: URL: https://github.com/apache/maven-resolver/pull/168#discussion_r851418583 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DynamicPrefixComposer.java: ## @@ -0,0 +1,68 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; +import org.eclipse.aether.repository.RemoteRepository; + +/** + * Composes prefixes for {@link EnhancedLocalRepositoryManager}. + * + * @since TBD + */ +public interface DynamicPrefixComposer Review Comment: ´LocalPathPrefixComposer` seems like a good counter part...no? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-resolver] cstamas commented on a diff in pull request #168: [MRESOLVER-253] Dynamic LRM
cstamas commented on code in PR #168: URL: https://github.com/apache/maven-resolver/pull/168#discussion_r851416689 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DynamicPrefixComposer.java: ## @@ -0,0 +1,68 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; +import org.eclipse.aether.repository.RemoteRepository; + +/** + * Composes prefixes for {@link EnhancedLocalRepositoryManager}. + * + * @since TBD + */ +public interface DynamicPrefixComposer Review Comment: I'd go simpler: LocalPrefixComposer alike to LocalPathComposer? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Commented] (MNG-7438) add execution id to "Configuring mojo xxx with basic configurator" debug message
[ https://issues.apache.org/jira/browse/MNG-7438?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522918#comment-17522918 ] Hudson commented on MNG-7438: - Build succeeded in Jenkins: Maven » Maven TLP » maven » master #31 See https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven/job/master/31/ > add execution id to "Configuring mojo xxx with basic configurator" debug > message > > > Key: MNG-7438 > URL: https://issues.apache.org/jira/browse/MNG-7438 > Project: Maven > Issue Type: Improvement > Components: Core >Affects Versions: 3.8.5 >Reporter: Herve Boutemy >Assignee: Herve Boutemy >Priority: Major > Fix For: 3.9.0, 4.0.0-alpha-1, 4.0.0 > > > currently, when running goals/mojos, we have in debug logs > {noformat} > [INFO] --- maven-surefire-plugin:3.0.0-M5:test (default-test) @ > org.example.apache.maven.execution --- > [DEBUG] Configuring mojo > org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test from plugin > realm > ClassRealm[plugin>org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5, > parent: sun.misc.Launcher$AppClassLoader@7852e922] > [DEBUG] Configuring mojo > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' with basic > configurator --> > [DEBUG] (s) additionalClasspathElements = [] > [DEBUG] (s) basedir = /home/herve/tmp/org.example.apache.maven.execution > {noformat} > on the "{{Configuring mojo > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' with basic > configurator}}" line, it completely hides the fact that configuration is > valid for an execution id, that has a default value when nobody defined any > (see https://maven.apache.org/guides/mini/guide-default-execution-ids.html ) > Just adding "{{execution 'default-test'}}" would make things more clear so > people learn about execution ids > {noformat} > [DEBUG] Configuring mojo > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' execution > 'default-test' with basic configurator --> > {noformat} > h2. final debug messages > {noformat} > [DEBUG] Loading mojo > org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test from plugin > realm > ClassRealm[plugin>org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5, > parent: sun.misc.Launcher$AppClassLoader@7852e922] > [DEBUG] Configuring mojo execution > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test:default-test' > with basic configurator --> > {noformat} -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Commented] (MJAVADOC-585) Incorrect quoting and escaping of nonProxyHosts-information from settings.xml
[ https://issues.apache.org/jira/browse/MJAVADOC-585?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522917#comment-17522917 ] Michael Osipov commented on MJAVADOC-585: - Still waiting for feedback... > Incorrect quoting and escaping of nonProxyHosts-information from settings.xml > - > > Key: MJAVADOC-585 > URL: https://issues.apache.org/jira/browse/MJAVADOC-585 > Project: Maven Javadoc Plugin > Issue Type: Bug > Components: jar, javadoc >Affects Versions: 3.1.0 > Environment: Maven 3.6.0 on RHEL 7.6 using OpenJDK 1.8.9.191 and > Bash; Maven 3.6.0 on Windows 7 using Oracle JDK 8 Update 201 and Windows-CMD >Reporter: Paul Busch >Priority: Major > Fix For: waiting-for-feedback > > > At my development site, I am behind a proxy server. That proxy server is > configured in my {{settings.xml}} in a corresponding > {{proxies/proxy}}-section. > For site-deployments I use an internal server named {{my-site-host}}. > To bypass the proxy for access to {{my-site-host}} and several other hosts in > the local network, there is a {{nonProxyHosts}}-element in the > proxy-configuration-section of my {{settings.xml}} which looks like this: > {code:java} > my-site-host|my-nexus-host > {code} > In an internal project {{linking-project,}} which uses a class {{LinkTarget}} > from another internal project {{link-target}} in its API, I would like to > have the class {{LinkTarget}} in the Javadocs of project {{linking-project}} > to be displayed as links to the Javadocs of project {{link-target}}. The > Javadocs of project {{link-target}} are published on {{my-site-host}} as part > of a maven-site. To achieve the linking I have configured the > {{maven-javadoc-plugin}} in {{linking-project}} as follows: > {code:java} > > > http://my-site-host/link-target/0.1.0-SNAPSHOT/apidocs > > > {code} > When the report {{javadoc:javadoc}} or the goal {{javadoc:jar}} is executed > during the build, I get the following warning: > {code:java} > [WARNING] javadoc: warning - Error fetching URL: > http://my-site-host/link-target/0.1.0-SNAPSHOT/apidocs/ > {code} > As a result, class {{LinkTarget}} in the generated Javadocs is displayed with > its fully qualified class name and not as a link. The expected behavior would > be class {{LinkTarget}} being displayed using its local name only and with an > underlying link to the Javadocs of that class. The problem occurs on both > Linux and Windows. > The problem also occurs when executing the {{javadoc.(sh|bat)}} script, which > is generated in {{target/site/apidocs}} when {{-Ddebug=true}} is used (on > Linux using Bash; on Windows using Windows-CMD). > The problem seems to be in the handling of the {{nonProxyHosts}}-information > from the {{settings.xml}} in {{AbstractJavadocMojo}}. In method > {{addProxyArg(Commandline)}} this information is (in two places) handled as > follows: > {code:java} > cmd.createArg().setValue( "-J-Dhttp.nonProxyHosts=\"" > + httpProxy.getNonProxyHosts().replace( "|", "^|" ) + "\"" ); > {code} > When the report/goal is executed, the {{Commandline}}-object is delegated to > {{CommandLineUtils.executeCommandLine(...)}} which in the end delegates to > the {{javadoc}}-program using {{Runtime.exec(...)}}. {{Runtime.exec(...)}} is > fed the command line parts as an array of Strings and apparently does not > need any quoting and escaping. When looking at it in a debugger the > {{nonProxyHosts}}-information – escaped with the code above – is passed to > the {{javadoc}}-program as > {{"-J-Dhttp.nonProxyHosts=\"my-site-host^|my-nexus-host\""}}. I guess this > value is split by the {{javadoc}}-program at the pipe symbol, resulting in > {{"my-site-host^}} and {{my-nexus-host"}} as the two host names. Thus the > {{javadoc}}-program bypasses the proxy for the nonexisting/nonsense host name > {{"my-site-host^}} (with a leading quote and a trailing caret) but uses the > proxy for the actual host {{my-site-host}} causing the malfuntion and the > warning. > For the sake of the report/goal-execution the above code could be fixed as > follows: > {code:java} > cmd.createArg().setValue( "-J-Dhttp.nonProxyHosts=" + > httpProxy.getNonProxyHosts() ); > {code} > i.e. no quoting and no escaping of pipe symbols. > This code change albeit completely breaks the generated > {{javadoc.(sh|bat)}}-scripts generated in {{target/site/apidocs}} with > {{-Ddebug=true}}. While {{Runtime.exec(...)}} *must not* have quoting and > escaping, Windows-CMD and Bash, for which the scripts are generated, *need* > special handling. Otherwise the pipe symbols in {{nonProxyHosts}} will be > interpreted as redirection of output to the input of another program. > The following aspects ne
[jira] [Updated] (MJAVADOC-585) Incorrect quoting and escaping of nonProxyHosts-information from settings.xml
[ https://issues.apache.org/jira/browse/MJAVADOC-585?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Michael Osipov updated MJAVADOC-585: Fix Version/s: waiting-for-feedback (was: next-release) > Incorrect quoting and escaping of nonProxyHosts-information from settings.xml > - > > Key: MJAVADOC-585 > URL: https://issues.apache.org/jira/browse/MJAVADOC-585 > Project: Maven Javadoc Plugin > Issue Type: Bug > Components: jar, javadoc >Affects Versions: 3.1.0 > Environment: Maven 3.6.0 on RHEL 7.6 using OpenJDK 1.8.9.191 and > Bash; Maven 3.6.0 on Windows 7 using Oracle JDK 8 Update 201 and Windows-CMD >Reporter: Paul Busch >Priority: Major > Fix For: waiting-for-feedback > > > At my development site, I am behind a proxy server. That proxy server is > configured in my {{settings.xml}} in a corresponding > {{proxies/proxy}}-section. > For site-deployments I use an internal server named {{my-site-host}}. > To bypass the proxy for access to {{my-site-host}} and several other hosts in > the local network, there is a {{nonProxyHosts}}-element in the > proxy-configuration-section of my {{settings.xml}} which looks like this: > {code:java} > my-site-host|my-nexus-host > {code} > In an internal project {{linking-project,}} which uses a class {{LinkTarget}} > from another internal project {{link-target}} in its API, I would like to > have the class {{LinkTarget}} in the Javadocs of project {{linking-project}} > to be displayed as links to the Javadocs of project {{link-target}}. The > Javadocs of project {{link-target}} are published on {{my-site-host}} as part > of a maven-site. To achieve the linking I have configured the > {{maven-javadoc-plugin}} in {{linking-project}} as follows: > {code:java} > > > http://my-site-host/link-target/0.1.0-SNAPSHOT/apidocs > > > {code} > When the report {{javadoc:javadoc}} or the goal {{javadoc:jar}} is executed > during the build, I get the following warning: > {code:java} > [WARNING] javadoc: warning - Error fetching URL: > http://my-site-host/link-target/0.1.0-SNAPSHOT/apidocs/ > {code} > As a result, class {{LinkTarget}} in the generated Javadocs is displayed with > its fully qualified class name and not as a link. The expected behavior would > be class {{LinkTarget}} being displayed using its local name only and with an > underlying link to the Javadocs of that class. The problem occurs on both > Linux and Windows. > The problem also occurs when executing the {{javadoc.(sh|bat)}} script, which > is generated in {{target/site/apidocs}} when {{-Ddebug=true}} is used (on > Linux using Bash; on Windows using Windows-CMD). > The problem seems to be in the handling of the {{nonProxyHosts}}-information > from the {{settings.xml}} in {{AbstractJavadocMojo}}. In method > {{addProxyArg(Commandline)}} this information is (in two places) handled as > follows: > {code:java} > cmd.createArg().setValue( "-J-Dhttp.nonProxyHosts=\"" > + httpProxy.getNonProxyHosts().replace( "|", "^|" ) + "\"" ); > {code} > When the report/goal is executed, the {{Commandline}}-object is delegated to > {{CommandLineUtils.executeCommandLine(...)}} which in the end delegates to > the {{javadoc}}-program using {{Runtime.exec(...)}}. {{Runtime.exec(...)}} is > fed the command line parts as an array of Strings and apparently does not > need any quoting and escaping. When looking at it in a debugger the > {{nonProxyHosts}}-information – escaped with the code above – is passed to > the {{javadoc}}-program as > {{"-J-Dhttp.nonProxyHosts=\"my-site-host^|my-nexus-host\""}}. I guess this > value is split by the {{javadoc}}-program at the pipe symbol, resulting in > {{"my-site-host^}} and {{my-nexus-host"}} as the two host names. Thus the > {{javadoc}}-program bypasses the proxy for the nonexisting/nonsense host name > {{"my-site-host^}} (with a leading quote and a trailing caret) but uses the > proxy for the actual host {{my-site-host}} causing the malfuntion and the > warning. > For the sake of the report/goal-execution the above code could be fixed as > follows: > {code:java} > cmd.createArg().setValue( "-J-Dhttp.nonProxyHosts=" + > httpProxy.getNonProxyHosts() ); > {code} > i.e. no quoting and no escaping of pipe symbols. > This code change albeit completely breaks the generated > {{javadoc.(sh|bat)}}-scripts generated in {{target/site/apidocs}} with > {{-Ddebug=true}}. While {{Runtime.exec(...)}} *must not* have quoting and > escaping, Windows-CMD and Bash, for which the scripts are generated, *need* > special handling. Otherwise the pipe symbols in {{nonProxyHosts}} will be > interpreted as redirection of output to the input of another program. > The following aspects need to
[GitHub] [maven] michael-o commented on a diff in pull request #720: [MNG-7454] Include resolver-transport-http in Maven
michael-o commented on code in PR #720: URL: https://github.com/apache/maven/pull/720#discussion_r851413825 ## maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java: ## @@ -261,23 +261,24 @@ else if ( request.isUpdateSnapshots() ) } session.setAuthenticationSelector( authSelector ); -String transport = request.getUserProperties().getProperty( MAVEN_TRANSPORT_KEY, MAVEN_TRANSPORT_WAGON ); -if ( MAVEN_TRANSPORT_RESOLVER.equals( transport ) ) +String transport = request.getUserProperties() +.getProperty( MAVEN_RESOLVER_TRANSPORT_KEY, MAVEN_RESOLVER_TRANSPORT_WAGON ); +if ( MAVEN_RESOLVER_TRANSPORT_NATIVE.equals( transport ) ) { // Make sure (whatever extra priority is set) that resolver native is selected -configProps.put( RESOLVER_FILE_TRANSPORTER_PRIORITY_KEY, RESOLVER_MAX_PRIORITY ); -configProps.put( RESOLVER_HTTP_TRANSPORTER_PRIORITY_KEY, RESOLVER_MAX_PRIORITY ); +configProps.put( NATIVE_FILE_TRANSPORTER_PRIORITY_KEY, RESOLVER_MAX_PRIORITY ); +configProps.put( NATIVE_HTTP_TRANSPORTER_PRIORITY_KEY, RESOLVER_MAX_PRIORITY ); } -else if ( MAVEN_TRANSPORT_WAGON.equals( transport ) ) +else if ( MAVEN_RESOLVER_TRANSPORT_WAGON.equals( transport ) ) { // Make sure (whatever extra priority is set) that wagon is selected -configProps.put( WAGON_TRANSPORTER_KEY_PRIORITY_KEY, RESOLVER_MAX_PRIORITY ); +configProps.put( WAGON_TRANSPORTER_PRIORITY_KEY, RESOLVER_MAX_PRIORITY ); } -else if ( !MAVEN_TRANSPORT_AUTO.equals( transport ) ) +else if ( !MAVEN_RESOLVER_TRANSPORT_AUTO.equals( transport ) ) { -throw new IllegalArgumentException( "Unknown maven.transport=" + transport -+ ". Supported ones are: " + MAVEN_TRANSPORT_WAGON + ", " -+ MAVEN_TRANSPORT_RESOLVER + " and " + MAVEN_TRANSPORT_AUTO ); +throw new IllegalArgumentException( "Unknown " + MAVEN_RESOLVER_TRANSPORT_KEY + "=" + transport Review Comment: This differs from this approach: https://github.com/apache/maven-resolver/pull/168/files#diff-a386807ca89d73dd92c1f453de3af43cee6044c2118d8952ee67ed0e8ba103d6R122-R124 Personally, I like the path from Resolver: Not using the key, but text. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Closed] (MJAVADOC-712) Remove remains of org.codehaus.doxia.sink.Sink
[ https://issues.apache.org/jira/browse/MJAVADOC-712?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Michael Osipov closed MJAVADOC-712. --- Resolution: Fixed Fixed with [47d03d3a08cc58a93fa384f4661d79c350842b82|https://gitbox.apache.org/repos/asf?p=maven-javadoc-plugin.git;a=commit;h=47d03d3a08cc58a93fa384f4661d79c350842b82]. > Remove remains of org.codehaus.doxia.sink.Sink > -- > > Key: MJAVADOC-712 > URL: https://issues.apache.org/jira/browse/MJAVADOC-712 > Project: Maven Javadoc Plugin > Issue Type: Task >Reporter: Michael Osipov >Assignee: Michael Osipov >Priority: Major > Fix For: next-release > > -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [maven] cstamas commented on a diff in pull request #720: [MNG-7454] Include resolver-transport-http in Maven
cstamas commented on code in PR #720: URL: https://github.com/apache/maven/pull/720#discussion_r851411531 ## maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java: ## @@ -261,23 +261,24 @@ else if ( request.isUpdateSnapshots() ) } session.setAuthenticationSelector( authSelector ); -String transport = request.getUserProperties().getProperty( MAVEN_TRANSPORT_KEY, MAVEN_TRANSPORT_WAGON ); -if ( MAVEN_TRANSPORT_RESOLVER.equals( transport ) ) +String transport = request.getUserProperties() +.getProperty( MAVEN_RESOLVER_TRANSPORT_KEY, MAVEN_RESOLVER_TRANSPORT_WAGON ); +if ( MAVEN_RESOLVER_TRANSPORT_NATIVE.equals( transport ) ) { // Make sure (whatever extra priority is set) that resolver native is selected -configProps.put( RESOLVER_FILE_TRANSPORTER_PRIORITY_KEY, RESOLVER_MAX_PRIORITY ); -configProps.put( RESOLVER_HTTP_TRANSPORTER_PRIORITY_KEY, RESOLVER_MAX_PRIORITY ); +configProps.put( NATIVE_FILE_TRANSPORTER_PRIORITY_KEY, RESOLVER_MAX_PRIORITY ); +configProps.put( NATIVE_HTTP_TRANSPORTER_PRIORITY_KEY, RESOLVER_MAX_PRIORITY ); } -else if ( MAVEN_TRANSPORT_WAGON.equals( transport ) ) +else if ( MAVEN_RESOLVER_TRANSPORT_WAGON.equals( transport ) ) { // Make sure (whatever extra priority is set) that wagon is selected -configProps.put( WAGON_TRANSPORTER_KEY_PRIORITY_KEY, RESOLVER_MAX_PRIORITY ); +configProps.put( WAGON_TRANSPORTER_PRIORITY_KEY, RESOLVER_MAX_PRIORITY ); } -else if ( !MAVEN_TRANSPORT_AUTO.equals( transport ) ) +else if ( !MAVEN_RESOLVER_TRANSPORT_AUTO.equals( transport ) ) { throw new IllegalArgumentException( "Unknown maven.transport=" + transport Review Comment: fixed -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-resolver] cstamas merged pull request #169: Reword warning on site
cstamas merged PR #169: URL: https://github.com/apache/maven-resolver/pull/169 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-resolver] cstamas commented on a diff in pull request #167: [MRESOLVER-252] Make LRM path composition reusable
cstamas commented on code in PR #167: URL: https://github.com/apache/maven-resolver/pull/167#discussion_r851408728 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DefaultArtifactPathComposer.java: ## @@ -0,0 +1,110 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import javax.inject.Named; +import javax.inject.Singleton; + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; + +/** + * Default implementation of {@link ArtifactPathComposer}. + * + * @since TBD + */ +@Singleton +@Named +public final class DefaultArtifactPathComposer implements ArtifactPathComposer +{ +@Override +public String getPathForArtifact( Artifact artifact, boolean local ) +{ +StringBuilder path = new StringBuilder( 128 ); + +path.append( artifact.getGroupId().replace( '.', '/' ) ).append( '/' ); + +path.append( artifact.getArtifactId() ).append( '/' ); + +path.append( artifact.getBaseVersion() ).append( '/' ); + +path.append( artifact.getArtifactId() ).append( '-' ); +if ( local ) +{ +path.append( artifact.getBaseVersion() ); +} +else +{ +path.append( artifact.getVersion() ); +} + +if ( artifact.getClassifier().length() > 0 ) +{ +path.append( '-' ).append( artifact.getClassifier() ); +} + +if ( artifact.getExtension().length() > 0 ) +{ +path.append( '.' ).append( artifact.getExtension() ); +} + +return path.toString(); +} + +@Override +public String getPathForMetadata( Metadata metadata, String repositoryKey ) +{ +StringBuilder path = new StringBuilder( 128 ); + +if ( metadata.getGroupId().length() > 0 ) +{ +path.append( metadata.getGroupId().replace( '.', '/' ) ).append( '/' ); + +if ( metadata.getArtifactId().length() > 0 ) +{ +path.append( metadata.getArtifactId() ).append( '/' ); + +if ( metadata.getVersion().length() > 0 ) +{ +path.append( metadata.getVersion() ).append( '/' ); +} +} +} + +path.append( insertRepositoryKey( metadata.getType(), repositoryKey ) ); + +return path.toString(); +} + +private String insertRepositoryKey( String filename, String repositoryKey ) +{ +String result; +int idx = filename.indexOf( '.' ); Review Comment: Renamed variable to be clear, that this is "metadata type", which is in case fixed to `maven-metadata.xml`, so yes, there is only one dot. ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DefaultArtifactPathComposer.java: ## @@ -0,0 +1,110 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import javax.inject.Named; +import javax.inject.Singleton; + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; + +/** + * Default implementation of {@link ArtifactPathComposer}. + * + * @since TBD + */ +@Singleton +@Named +public final class DefaultArtifactPathComposer implements ArtifactPathComposer +{ +@Override +public String getPathForArtifact( Artifact artifact, boolean local ) +{ +
[GitHub] [maven-resolver] cstamas commented on a diff in pull request #167: [MRESOLVER-252] Make LRM path composition reusable
cstamas commented on code in PR #167: URL: https://github.com/apache/maven-resolver/pull/167#discussion_r851408451 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/ArtifactPathComposer.java: ## @@ -0,0 +1,53 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; + +/** + * Composes {@link Artifact} and {@link Metadata} relative paths to be used in + * {@link org.eclipse.aether.repository.LocalRepositoryManager}. + * + * @since TBD + */ +public interface ArtifactPathComposer +{ +/** + * Gets the relative path for a locally installed (local=true) or remotely cached (local=false) artifact. + * + * @param artifact The artifact for which to determine the path, must not be {@code null}. + * @param local{@code true} if artifact is locally installed or {@code false} if artifact is remotely cached. + * @return A relative path representing artifact path. + */ +String getPathForArtifact( Artifact artifact, boolean local ); + +/** + * Gets the relative path for locally installed (repositoryKey=local) or remotely cached metadata. The + * {@code repositoryKey} should be used at caller discretion, it merely denotes the origin of the metadata, while + * value "local" usually means local origin, but again, this is not a must or enforced, just how things happened + * so far. + * + * @param metadata The metadata for which to determine the path, must not be {@code null}. + * @param repositoryKey The repository key, where {@code "local"} denotes locally installed one. Review Comment: Nope, cannot. Fixed. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Created] (MJAVADOC-712) Remove remains of org.codehaus.doxia.sink.Sink
Michael Osipov created MJAVADOC-712: --- Summary: Remove remains of org.codehaus.doxia.sink.Sink Key: MJAVADOC-712 URL: https://issues.apache.org/jira/browse/MJAVADOC-712 Project: Maven Javadoc Plugin Issue Type: Task Reporter: Michael Osipov Assignee: Michael Osipov Fix For: next-release -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [maven-resolver] cstamas commented on a diff in pull request #167: [MRESOLVER-252] Make LRM path composition reusable
cstamas commented on code in PR #167: URL: https://github.com/apache/maven-resolver/pull/167#discussion_r851408316 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/ArtifactPathComposer.java: ## @@ -0,0 +1,53 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; + +/** + * Composes {@link Artifact} and {@link Metadata} relative paths to be used in + * {@link org.eclipse.aether.repository.LocalRepositoryManager}. + * + * @since TBD + */ +public interface ArtifactPathComposer Review Comment: fixed -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-resolver] cstamas commented on a diff in pull request #169: Reword warning on site
cstamas commented on code in PR #169: URL: https://github.com/apache/maven-resolver/pull/169#discussion_r851402288 ## src/site/xdoc/index.xml: ## @@ -29,7 +29,7 @@ - Since version 1.7.0 Maven Resolver requires Maven 4.0.0-alpha-1 or newer to run. For a Maven 3.8.x compatible version read here. + Since version 1.7.0 Maven Resolver requires Java 8 to run. For a Maven 3.8.x (Java 7) compatible version read here. Review Comment: fixed -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Closed] (MJAVADOC-711) Upgrade plugins in ITs
[ https://issues.apache.org/jira/browse/MJAVADOC-711?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Michael Osipov closed MJAVADOC-711. --- Resolution: Fixed Fixed with [5fae3b656e131fa233982eebf0944b5253fc845e|https://gitbox.apache.org/repos/asf?p=maven-javadoc-plugin.git;a=commit;h=5fae3b656e131fa233982eebf0944b5253fc845e]. > Upgrade plugins in ITs > -- > > Key: MJAVADOC-711 > URL: https://issues.apache.org/jira/browse/MJAVADOC-711 > Project: Maven Javadoc Plugin > Issue Type: Dependency upgrade >Reporter: Michael Osipov >Assignee: Michael Osipov >Priority: Major > Fix For: next-release > > > * Maven Project Info Reports to 3.2.2 > * Maven Site Plugin to 3.11.0 -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Created] (MJAVADOC-711) Upgrade plugins in ITs
Michael Osipov created MJAVADOC-711: --- Summary: Upgrade plugins in ITs Key: MJAVADOC-711 URL: https://issues.apache.org/jira/browse/MJAVADOC-711 Project: Maven Javadoc Plugin Issue Type: Dependency upgrade Reporter: Michael Osipov Assignee: Michael Osipov Fix For: next-release * Maven Project Info Reports to 3.2.2 * Maven Site Plugin to 3.11.0 -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Closed] (MNG-7438) add execution id to "Configuring mojo xxx with basic configurator" debug message
[ https://issues.apache.org/jira/browse/MNG-7438?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Herve Boutemy closed MNG-7438. -- Fix Version/s: 4.0.0-alpha-1 4.0.0 Resolution: Fixed > add execution id to "Configuring mojo xxx with basic configurator" debug > message > > > Key: MNG-7438 > URL: https://issues.apache.org/jira/browse/MNG-7438 > Project: Maven > Issue Type: Improvement > Components: Core >Affects Versions: 3.8.5 >Reporter: Herve Boutemy >Assignee: Herve Boutemy >Priority: Major > Fix For: 3.9.0, 4.0.0-alpha-1, 4.0.0 > > > currently, when running goals/mojos, we have in debug logs > {noformat} > [INFO] --- maven-surefire-plugin:3.0.0-M5:test (default-test) @ > org.example.apache.maven.execution --- > [DEBUG] Configuring mojo > org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test from plugin > realm > ClassRealm[plugin>org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5, > parent: sun.misc.Launcher$AppClassLoader@7852e922] > [DEBUG] Configuring mojo > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' with basic > configurator --> > [DEBUG] (s) additionalClasspathElements = [] > [DEBUG] (s) basedir = /home/herve/tmp/org.example.apache.maven.execution > {noformat} > on the "{{Configuring mojo > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' with basic > configurator}}" line, it completely hides the fact that configuration is > valid for an execution id, that has a default value when nobody defined any > (see https://maven.apache.org/guides/mini/guide-default-execution-ids.html ) > Just adding "{{execution 'default-test'}}" would make things more clear so > people learn about execution ids > {noformat} > [DEBUG] Configuring mojo > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' execution > 'default-test' with basic configurator --> > {noformat} > h2. final debug messages > {noformat} > [DEBUG] Loading mojo > org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test from plugin > realm > ClassRealm[plugin>org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5, > parent: sun.misc.Launcher$AppClassLoader@7852e922] > [DEBUG] Configuring mojo execution > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test:default-test' > with basic configurator --> > {noformat} -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Commented] (MNG-7438) add execution id to "Configuring mojo xxx with basic configurator" debug message
[ https://issues.apache.org/jira/browse/MNG-7438?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522890#comment-17522890 ] Herve Boutemy commented on MNG-7438: fixed in https://github.com/apache/maven/commit/3c6009cbf48f78bc8f657c1eb18fa8f522a994a5 for 3.9.x and https://github.com/apache/maven/commit/643d1e782800e52bc2b8a85aa949e1c62b8f980a for 4.0.0-alpha > add execution id to "Configuring mojo xxx with basic configurator" debug > message > > > Key: MNG-7438 > URL: https://issues.apache.org/jira/browse/MNG-7438 > Project: Maven > Issue Type: Improvement > Components: Core >Affects Versions: 3.8.5 >Reporter: Herve Boutemy >Assignee: Herve Boutemy >Priority: Major > Fix For: 3.9.0 > > > currently, when running goals/mojos, we have in debug logs > {noformat} > [INFO] --- maven-surefire-plugin:3.0.0-M5:test (default-test) @ > org.example.apache.maven.execution --- > [DEBUG] Configuring mojo > org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test from plugin > realm > ClassRealm[plugin>org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5, > parent: sun.misc.Launcher$AppClassLoader@7852e922] > [DEBUG] Configuring mojo > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' with basic > configurator --> > [DEBUG] (s) additionalClasspathElements = [] > [DEBUG] (s) basedir = /home/herve/tmp/org.example.apache.maven.execution > {noformat} > on the "{{Configuring mojo > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' with basic > configurator}}" line, it completely hides the fact that configuration is > valid for an execution id, that has a default value when nobody defined any > (see https://maven.apache.org/guides/mini/guide-default-execution-ids.html ) > Just adding "{{execution 'default-test'}}" would make things more clear so > people learn about execution ids > {noformat} > [DEBUG] Configuring mojo > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' execution > 'default-test' with basic configurator --> > {noformat} > h2. final debug messages > {noformat} > [DEBUG] Loading mojo > org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test from plugin > realm > ClassRealm[plugin>org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5, > parent: sun.misc.Launcher$AppClassLoader@7852e922] > [DEBUG] Configuring mojo execution > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test:default-test' > with basic configurator --> > {noformat} -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Updated] (MNG-7438) add execution id to "Configuring mojo xxx with basic configurator" debug message
[ https://issues.apache.org/jira/browse/MNG-7438?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Herve Boutemy updated MNG-7438: --- Description: currently, when running goals/mojos, we have in debug logs {noformat} [INFO] --- maven-surefire-plugin:3.0.0-M5:test (default-test) @ org.example.apache.maven.execution --- [DEBUG] Configuring mojo org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5, parent: sun.misc.Launcher$AppClassLoader@7852e922] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' with basic configurator --> [DEBUG] (s) additionalClasspathElements = [] [DEBUG] (s) basedir = /home/herve/tmp/org.example.apache.maven.execution {noformat} on the "{{Configuring mojo 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' with basic configurator}}" line, it completely hides the fact that configuration is valid for an execution id, that has a default value when nobody defined any (see https://maven.apache.org/guides/mini/guide-default-execution-ids.html ) Just adding "{{execution 'default-test'}}" would make things more clear so people learn about execution ids {noformat} [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' execution 'default-test' with basic configurator --> {noformat} h2. final debug messages {noformat} [DEBUG] Loading mojo org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5, parent: sun.misc.Launcher$AppClassLoader@7852e922] [DEBUG] Configuring mojo execution 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test:default-test' with basic configurator --> {noformat} was: currently, when running goals/mojos, we have in debug logs {noformat} [INFO] --- maven-surefire-plugin:3.0.0-M5:test (default-test) @ org.example.apache.maven.execution --- [DEBUG] Configuring mojo org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5, parent: sun.misc.Launcher$AppClassLoader@7852e922] [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' with basic configurator --> [DEBUG] (s) additionalClasspathElements = [] [DEBUG] (s) basedir = /home/herve/tmp/org.example.apache.maven.execution {noformat} on the "{{Configuring mojo 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' with basic configurator}}" line, it completely hides the fact that configuration is valid for an execution id, that has a default value when nobody defined any (see https://maven.apache.org/guides/mini/guide-default-execution-ids.html ) Just adding "{{execution 'default-test'}}" would make things more clear so people learn about execution ids {noformat} [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' execution 'default-test' with basic configurator --> {noformat} > add execution id to "Configuring mojo xxx with basic configurator" debug > message > > > Key: MNG-7438 > URL: https://issues.apache.org/jira/browse/MNG-7438 > Project: Maven > Issue Type: Improvement > Components: Core >Affects Versions: 3.8.5 >Reporter: Herve Boutemy >Assignee: Herve Boutemy >Priority: Major > Fix For: 3.9.0 > > > currently, when running goals/mojos, we have in debug logs > {noformat} > [INFO] --- maven-surefire-plugin:3.0.0-M5:test (default-test) @ > org.example.apache.maven.execution --- > [DEBUG] Configuring mojo > org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test from plugin > realm > ClassRealm[plugin>org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5, > parent: sun.misc.Launcher$AppClassLoader@7852e922] > [DEBUG] Configuring mojo > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' with basic > configurator --> > [DEBUG] (s) additionalClasspathElements = [] > [DEBUG] (s) basedir = /home/herve/tmp/org.example.apache.maven.execution > {noformat} > on the "{{Configuring mojo > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' with basic > configurator}}" line, it completely hides the fact that configuration is > valid for an execution id, that has a default value when nobody defined any > (see https://maven.apache.org/guides/mini/guide-default-execution-ids.html ) > Just adding "{{execution 'default-test'}}" would make things more clear so > people learn about execution ids > {noformat} > [DEBUG] Configuring mojo > 'org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test' execution > 'default-test' with basic configurato
[GitHub] [maven] hboutemy merged pull request #700: MNG-7438 add execution id to "configuring mojo" debug message
hboutemy merged PR #700: URL: https://github.com/apache/maven/pull/700 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Updated] (MNG-7176) Resolve actual location of security-settings.xml
[ https://issues.apache.org/jira/browse/MNG-7176?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Michael Osipov updated MNG-7176: Fix Version/s: (was: waiting-for-feedback) > Resolve actual location of security-settings.xml > > > Key: MNG-7176 > URL: https://issues.apache.org/jira/browse/MNG-7176 > Project: Maven > Issue Type: Bug >Affects Versions: 3.8.1 >Reporter: Mykel Alvis >Priority: Major > > The > [documentation|https://maven.apache.org/guides/mini/guide-encryption.html] is > fairly clear about how to encrypt passwords in `settings.xml` > However, Maven (still, as of 3.8.1) appears to use `plexus-sec-dispather:1.4` > which specs the location as `~/.security-settings.xml` > Work with an injected `Settings` in a Maven plugin leads me to believe that > passwords aren't decrypted unless you're inside a wagon component, which I > guess makes sense but not for my purposes. So I used a `SecDispatcher` in > this code to decrypt the passwords. But it failed because it expected the > config for security to be at `~/.security-settings.xml` > Some other issue querying leads me to believe that my workaround (symlinking > ~/.m2/security-settings.xml` to `~/.security-settings.xml` is the rightest > answer I can arrive at. This appears to work, but isn't part of the > documentation. > Other queries appear to believe that the peer to settings.xml in ~/.m2 is the > actual "right" location. > I was unable to locate an issue or definitive answer to this question, which > leads me to believe that the documentation isn't accurate. > Note that I would be very happy to submit a doc PR if I know what the right > answer was > -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Commented] (MNG-6972) Allow access to org.apache.maven.graph
[ https://issues.apache.org/jira/browse/MNG-6972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522874#comment-17522874 ] Hudson commented on MNG-6972: - Build succeeded in Jenkins: Maven » Maven TLP » maven » MNG-7273 #2 See https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven/job/MNG-7273/2/ > Allow access to org.apache.maven.graph > -- > > Key: MNG-6972 > URL: https://issues.apache.org/jira/browse/MNG-6972 > Project: Maven > Issue Type: Improvement > Components: Class Loading, Plugin API >Affects Versions: 3.6.3 >Reporter: Michael Kroll >Assignee: Michael Osipov >Priority: Major > Labels: easyfix, pull-request-available > Fix For: 3.9.0, 4.0.0-alpha-1, 4.0.0 > > > Hi > maven doesn't export org.apache.maven.graph package in > maven-core/src/main/resources/META-INF/maven/extension.xml so the > GraphBuilder is not usable in extensions. > {code:java} > // leads to java.lang.NoClassDefFoundError: > Lorg/apache/maven/graph/GraphBuilder; > @Requirement( hint = GraphBuilder.HINT ) > private GraphBuilder graphBuilder; > {code} > Background: if one build extension adds dependencies and another build > extension uses {{session.getProjectDependencyGraph()}}, then the dependency > graph is out of date. This is because the graph is only rebuilt after > executing _all_ extensions. One solution to this would be to update the > {{MavenSession}} and setting the new dependency graph in the first extension, > but for this we need access to the {{GraphBuilder}}. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Commented] (MNG-828) log all mojo parameters and their populated values in debug mode
[ https://issues.apache.org/jira/browse/MNG-828?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522875#comment-17522875 ] Hudson commented on MNG-828: Build succeeded in Jenkins: Maven » Maven TLP » maven » MNG-7273 #2 See https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven/job/MNG-7273/2/ > log all mojo parameters and their populated values in debug mode > > > Key: MNG-828 > URL: https://issues.apache.org/jira/browse/MNG-828 > Project: Maven > Issue Type: Improvement > Components: Plugins and Lifecycle >Reporter: Brett Porter >Assignee: Brett Porter >Priority: Minor > Fix For: 2.0 (RC) > > > when we have this, we should remove the debugging code from plugins such as > ear that do this manually. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Commented] (MNG-5222) Maven 3 no longer logs warnings about deprecated plugin parameters.
[ https://issues.apache.org/jira/browse/MNG-5222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522876#comment-17522876 ] Hudson commented on MNG-5222: - Build succeeded in Jenkins: Maven » Maven TLP » maven » MNG-7273 #2 See https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven/job/MNG-7273/2/ > Maven 3 no longer logs warnings about deprecated plugin parameters. > --- > > Key: MNG-5222 > URL: https://issues.apache.org/jira/browse/MNG-5222 > Project: Maven > Issue Type: Bug > Components: Plugins and Lifecycle >Affects Versions: 3.0.3 >Reporter: Christian Schulte >Assignee: Slawomir Jaranowski >Priority: Minor > Fix For: 3.9.0, 4.0.0-alpha-1, 4.0.0 > > Time Spent: 10m > Remaining Estimate: 0h > > Providing a value for a deprecated plugin parameter, Maven 2.2.1 used to log > a warning. Currently Maven 3 does not. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Commented] (MNG-7045) Drop CDI API from Maven
[ https://issues.apache.org/jira/browse/MNG-7045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522873#comment-17522873 ] Hudson commented on MNG-7045: - Build succeeded in Jenkins: Maven » Maven TLP » maven » MNG-7273 #2 See https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven/job/MNG-7273/2/ > Drop CDI API from Maven > --- > > Key: MNG-7045 > URL: https://issues.apache.org/jira/browse/MNG-7045 > Project: Maven > Issue Type: Bug > Components: Core >Reporter: Romain Manni-Bucau >Assignee: Michael Osipov >Priority: Major > Labels: up-for-grabs > Fix For: 3.8.3, 4.0.0-alpha-1, 4.0.0 > > > This is an old leak which triggered a lot of regressions and still triggers > bugs in mojos. > Since there is on real justification in maven itself (@Typed is not since > there are alternative and cdi is not used in any piece of maven), let's drop > it. > If a plugin needs it, it already has it since cdi-api is outdated anyway. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Created] (MRELEASE-1085) Upgrade Maven Invoker to 3.2.0
Slawomir Jaranowski created MRELEASE-1085: - Summary: Upgrade Maven Invoker to 3.2.0 Key: MRELEASE-1085 URL: https://issues.apache.org/jira/browse/MRELEASE-1085 Project: Maven Release Plugin Issue Type: Dependency upgrade Reporter: Slawomir Jaranowski Very old version {{2.2}} is used in project. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [maven-surefire] Tibor17 commented on a diff in pull request #519: After surefire 2058
Tibor17 commented on code in PR #519: URL: https://github.com/apache/maven-surefire/pull/519#discussion_r851330547 ## surefire-api/src/main/java/org/apache/maven/surefire/api/stream/AbstractStreamDecoder.java: ## @@ -305,32 +313,24 @@ private String readString( @Nonnull final Memento memento, @Nonnegative final in memento.getDecoder().reset(); final CharBuffer output = memento.getCharBuffer(); ( (Buffer) output ).clear(); -final ByteBuffer input = memento.getByteBuffer(); final List strings = new ArrayList<>(); int countDecodedBytes = 0; for ( boolean endOfInput = false; !endOfInput; ) { -final int bytesToRead = totalBytes - countDecodedBytes; +final int bytesToRead = totalBytes - countDecodedBytes; // our wish to read bytes as much as possible read( memento, bytesToRead ); -int bytesToDecode = min( input.remaining(), bytesToRead ); +final ByteBuffer input = memento.getByteBuffer(); +int bytesToDecode = min( input.remaining(), bytesToRead ); // our guarantee of available bytes in buffer final boolean isLastChunk = bytesToDecode == bytesToRead; endOfInput = countDecodedBytes + bytesToDecode >= totalBytes; -do -{ -boolean endOfChunk = output.remaining() >= bytesToRead; -boolean endOfOutput = isLastChunk && endOfChunk; -int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, -memento.getLine().getPositionByteBuffer() ); -bytesToDecode -= readInputBytes; -countDecodedBytes += readInputBytes; -} -while ( isLastChunk && bytesToDecode > 0 && output.hasRemaining() ); - -if ( isLastChunk || !output.hasRemaining() ) -{ -strings.add( ( (Buffer) output ).flip().toString() ); -( (Buffer) output ).clear(); -} +boolean endOfChunk = output.remaining() >= bytesToRead; +boolean endOfOutput = isLastChunk && endOfChunk; +int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, +memento.getLine().getPositionByteBuffer() ); +countDecodedBytes += readInputBytes; +strings.add( ( (Buffer) output ).flip().toString() ); +( (Buffer) output ).clear(); +memento.getLine().setPositionByteBuffer( 0 ); Review Comment: If `MalformedFrameException` is caught, whole byte sequence is printed as a corrupted string starting by `memento.getLine().getPositionByteBuffer()` up to the buffer's position. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Closed] (MNG-7176) Resolve actual location of security-settings.xml
[ https://issues.apache.org/jira/browse/MNG-7176?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Karl Heinz Marbaise closed MNG-7176. Resolution: Cannot Reproduce > Resolve actual location of security-settings.xml > > > Key: MNG-7176 > URL: https://issues.apache.org/jira/browse/MNG-7176 > Project: Maven > Issue Type: Bug >Affects Versions: 3.8.1 >Reporter: Mykel Alvis >Priority: Major > Fix For: waiting-for-feedback > > > The > [documentation|https://maven.apache.org/guides/mini/guide-encryption.html] is > fairly clear about how to encrypt passwords in `settings.xml` > However, Maven (still, as of 3.8.1) appears to use `plexus-sec-dispather:1.4` > which specs the location as `~/.security-settings.xml` > Work with an injected `Settings` in a Maven plugin leads me to believe that > passwords aren't decrypted unless you're inside a wagon component, which I > guess makes sense but not for my purposes. So I used a `SecDispatcher` in > this code to decrypt the passwords. But it failed because it expected the > config for security to be at `~/.security-settings.xml` > Some other issue querying leads me to believe that my workaround (symlinking > ~/.m2/security-settings.xml` to `~/.security-settings.xml` is the rightest > answer I can arrive at. This appears to work, but isn't part of the > documentation. > Other queries appear to believe that the peer to settings.xml in ~/.m2 is the > actual "right" location. > I was unable to locate an issue or definitive answer to this question, which > leads me to believe that the documentation isn't accurate. > Note that I would be very happy to submit a doc PR if I know what the right > answer was > -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Commented] (MNG-5222) Maven 3 no longer logs warnings about deprecated plugin parameters.
[ https://issues.apache.org/jira/browse/MNG-5222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522870#comment-17522870 ] Hudson commented on MNG-5222: - Build succeeded in Jenkins: Maven » Maven TLP » maven » MNG-7451 #3 See https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven/job/MNG-7451/3/ > Maven 3 no longer logs warnings about deprecated plugin parameters. > --- > > Key: MNG-5222 > URL: https://issues.apache.org/jira/browse/MNG-5222 > Project: Maven > Issue Type: Bug > Components: Plugins and Lifecycle >Affects Versions: 3.0.3 >Reporter: Christian Schulte >Assignee: Slawomir Jaranowski >Priority: Minor > Fix For: 3.9.0, 4.0.0-alpha-1, 4.0.0 > > Time Spent: 10m > Remaining Estimate: 0h > > Providing a value for a deprecated plugin parameter, Maven 2.2.1 used to log > a warning. Currently Maven 3 does not. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Comment Edited] (WAGON-616) Deprecate Wagon SSH Provider
[ https://issues.apache.org/jira/browse/WAGON-616?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522862#comment-17522862 ] Michael Osipov edited comment on WAGON-616 at 4/15/22 2:58 PM: --- I would have expected that the proto would be {{scp://}}, but I guess at that time the user should have had a chance to explicit select the provided. In my opinion this is obsolete these days and should be {{scp}} in both cases. Please try that at work and let me know whether this is a suitable replacement for FTP for you. was (Author: michael-o): I would have expected that the proto would be {{scp://}}, but I guess at that time the user should have had a chance to explicit select the provided. In my opinion this is obsolete these days and should be {{scp}} in both cases. > Deprecate Wagon SSH Provider > > > Key: WAGON-616 > URL: https://issues.apache.org/jira/browse/WAGON-616 > Project: Maven Wagon > Issue Type: Task > Components: wagon-ssh >Reporter: Michael Osipov >Assignee: Michael Osipov >Priority: Major > Fix For: 3.5.0 > > > This provider has serious implications and implementation issues: > - JSch http://www.jcraft.com/jsch/ failed to provide a source repository, > accept contributions and address issues. > - Too complex and low level. > - It is disputed whether this is open source at all. > The sshexe ({{scp}}) provider remains until someone wants to write something > on top of Apache MINA SSHD. > We are deprecating this provider to be removed in 4.0.0. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Commented] (WAGON-616) Deprecate Wagon SSH Provider
[ https://issues.apache.org/jira/browse/WAGON-616?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522862#comment-17522862 ] Michael Osipov commented on WAGON-616: -- I would have expected that the proto would be {{scp://}}, but I guess at that time the user should have had a chance to explicit select the provided. In my opinion this is obsolete these days and should be {{scp}} in both cases. > Deprecate Wagon SSH Provider > > > Key: WAGON-616 > URL: https://issues.apache.org/jira/browse/WAGON-616 > Project: Maven Wagon > Issue Type: Task > Components: wagon-ssh >Reporter: Michael Osipov >Assignee: Michael Osipov >Priority: Major > Fix For: 3.5.0 > > > This provider has serious implications and implementation issues: > - JSch http://www.jcraft.com/jsch/ failed to provide a source repository, > accept contributions and address issues. > - Too complex and low level. > - It is disputed whether this is open source at all. > The sshexe ({{scp}}) provider remains until someone wants to write something > on top of Apache MINA SSHD. > We are deprecating this provider to be removed in 4.0.0. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Assigned] (MNG-7448) if we delete bin directory in apache-maven/src, we can not find because git has ignore it .
[ https://issues.apache.org/jira/browse/MNG-7448?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Karl Heinz Marbaise reassigned MNG-7448: Assignee: Karl Heinz Marbaise > if we delete bin directory in apache-maven/src, we can not find because git > has ignore it . > --- > > Key: MNG-7448 > URL: https://issues.apache.org/jira/browse/MNG-7448 > Project: Maven > Issue Type: Improvement > Components: build/consumer >Affects Versions: 3.8.5 >Reporter: Daqian Liao >Assignee: Karl Heinz Marbaise >Priority: Minor > Attachments: bin.png > > Original Estimate: 12h > Remaining Estimate: 12h > > when we download sourcecode, and push code to github, the > apache-maven/src/bin directory will not be pushed. > If we delete bin directory in apache-maven/src, we can not find because git > has ignore it . > The reason is that .gitignore file contains bin at line 6。 > fix: delete bin/ from .gitignore > !bin.png! > -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Commented] (WAGON-616) Deprecate Wagon SSH Provider
[ https://issues.apache.org/jira/browse/WAGON-616?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522858#comment-17522858 ] Curtis Rueden commented on WAGON-616: - Ah, thank you, I understand now that sshexe and scpexe mean wagon-ssh-external, as explained in the [Deployment of artifacts in an external SSH command|https://maven.apache.org/plugins/maven-deploy-plugin/examples/deploy-ssh-external.html] guide. Thank you for your patience, and the helpful links! I have now updated [my SO answer|https://stackoverflow.com/a/14404990/1207769] to explain the current situation, as well as mentioning Apache Mina SSHD as a potential way forward in the future. Please feel free to edit the answer if I got anything wrong, and/or correct me here on this comment thread. > Deprecate Wagon SSH Provider > > > Key: WAGON-616 > URL: https://issues.apache.org/jira/browse/WAGON-616 > Project: Maven Wagon > Issue Type: Task > Components: wagon-ssh >Reporter: Michael Osipov >Assignee: Michael Osipov >Priority: Major > Fix For: 3.5.0 > > > This provider has serious implications and implementation issues: > - JSch http://www.jcraft.com/jsch/ failed to provide a source repository, > accept contributions and address issues. > - Too complex and low level. > - It is disputed whether this is open source at all. > The sshexe ({{scp}}) provider remains until someone wants to write something > on top of Apache MINA SSHD. > We are deprecating this provider to be removed in 4.0.0. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Commented] (MENFORCER-416) Range [0, 3) out of bounds for length 2
[ https://issues.apache.org/jira/browse/MENFORCER-416?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522857#comment-17522857 ] Thomas LE CLERE commented on MENFORCER-416: --- We use different OS (MacOS and Windows) & different JDK: OpenJDK provided by Homebrew for me and Eclipse Adoptium for you. > Range [0, 3) out of bounds for length 2 > --- > > Key: MENFORCER-416 > URL: https://issues.apache.org/jira/browse/MENFORCER-416 > Project: Maven Enforcer Plugin > Issue Type: Bug >Reporter: Thomas LE CLERE >Priority: Major > Attachments: sample.zip > > > Hello, > I face an issue when I compile a maven project: > {code:java} > Caused by: java.lang.StringIndexOutOfBoundsException: Range [0, 3) out of > bounds for length 2 > at jdk.internal.util.Preconditions$1.apply (Preconditions.java:55) > at jdk.internal.util.Preconditions$1.apply (Preconditions.java:52) > at jdk.internal.util.Preconditions$4.apply (Preconditions.java:213) > at jdk.internal.util.Preconditions$4.apply (Preconditions.java:210) > at jdk.internal.util.Preconditions.outOfBounds (Preconditions.java:98) > at jdk.internal.util.Preconditions.outOfBoundsCheckFromToIndex > (Preconditions.java:112) > at jdk.internal.util.Preconditions.checkFromToIndex > (Preconditions.java:349) > at java.lang.String.checkBoundsBeginEnd (String.java:4589) > at java.lang.String.substring (String.java:2703) > at org.apache.commons.lang.SystemUtils.getJavaVersionAsFloat > (SystemUtils.java:1122) > at org.apache.commons.lang.SystemUtils. (SystemUtils.java:818) > at org.apache.maven.plugins.enforcer.RequireJavaVersion.execute > (RequireJavaVersion.java:52) > at org.apache.maven.plugins.enforcer.EnforceMojo.execute > (EnforceMojo.java:190) > at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo > (DefaultBuildPluginManager.java:137) > at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute > (MojoExecutor.java:301) > at org.apache.maven.lifecycle.internal.MojoExecutor.execute > (MojoExecutor.java:211) > at org.apache.maven.lifecycle.internal.MojoExecutor.execute > (MojoExecutor.java:165) > at org.apache.maven.lifecycle.internal.MojoExecutor.execute > (MojoExecutor.java:157) > at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject > (LifecycleModuleBuilder.java:121) > at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject > (LifecycleModuleBuilder.java:81) > at > org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build > (SingleThreadedBuilder.java:56) > at org.apache.maven.lifecycle.internal.LifecycleStarter.execute > (LifecycleStarter.java:127) > at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294) > at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) > at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) > at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960) > at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293) > at org.apache.maven.cli.MavenCli.main (MavenCli.java:196) > at jdk.internal.reflect.DirectMethodHandleAccessor.invoke > (DirectMethodHandleAccessor.java:104) > at java.lang.reflect.Method.invoke (Method.java:577) > at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced > (Launcher.java:282) > at org.codehaus.plexus.classworlds.launcher.Launcher.launch > (Launcher.java:225) > at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode > (Launcher.java:406) > at org.codehaus.plexus.classworlds.launcher.Launcher.main > (Launcher.java:347) {code} > Here is my settings > {code:java} > Apache Maven 3.8.5 (3599d3414f046de2324203b78ddcf9b5e4388aa0) > Maven home: /usr/local/Cellar/maven/3.8.5/libexec > Java version: 18, vendor: Homebrew, runtime: > /usr/local/Cellar/openjdk/18/libexec/openjdk.jdk/Contents/Home > Default locale: fr_FR, platform encoding: UTF-8 > OS name: "mac os x", version: "10.15.7", arch: "x86_64", family: "mac" {code} > Thanks in advance for your help. > Regards, -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [maven-surefire] Tibor17 commented on a diff in pull request #519: After surefire 2058
Tibor17 commented on code in PR #519: URL: https://github.com/apache/maven-surefire/pull/519#discussion_r851304878 ## surefire-api/src/main/java/org/apache/maven/surefire/api/stream/AbstractStreamDecoder.java: ## @@ -305,32 +313,24 @@ private String readString( @Nonnull final Memento memento, @Nonnegative final in memento.getDecoder().reset(); final CharBuffer output = memento.getCharBuffer(); ( (Buffer) output ).clear(); -final ByteBuffer input = memento.getByteBuffer(); final List strings = new ArrayList<>(); int countDecodedBytes = 0; for ( boolean endOfInput = false; !endOfInput; ) { -final int bytesToRead = totalBytes - countDecodedBytes; +final int bytesToRead = totalBytes - countDecodedBytes; // our wish to read bytes as much as possible read( memento, bytesToRead ); -int bytesToDecode = min( input.remaining(), bytesToRead ); +final ByteBuffer input = memento.getByteBuffer(); +int bytesToDecode = min( input.remaining(), bytesToRead ); // our guarantee of available bytes in buffer final boolean isLastChunk = bytesToDecode == bytesToRead; endOfInput = countDecodedBytes + bytesToDecode >= totalBytes; -do -{ -boolean endOfChunk = output.remaining() >= bytesToRead; -boolean endOfOutput = isLastChunk && endOfChunk; -int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, -memento.getLine().getPositionByteBuffer() ); -bytesToDecode -= readInputBytes; -countDecodedBytes += readInputBytes; -} -while ( isLastChunk && bytesToDecode > 0 && output.hasRemaining() ); - -if ( isLastChunk || !output.hasRemaining() ) -{ -strings.add( ( (Buffer) output ).flip().toString() ); -( (Buffer) output ).clear(); -} +boolean endOfChunk = output.remaining() >= bytesToRead; +boolean endOfOutput = isLastChunk && endOfChunk; +int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, +memento.getLine().getPositionByteBuffer() ); +countDecodedBytes += readInputBytes; +strings.add( ( (Buffer) output ).flip().toString() ); +( (Buffer) output ).clear(); +memento.getLine().setPositionByteBuffer( 0 ); Review Comment: After properly decoded bytes, we clear the buffer and new bytes will be decoded. The corrupted line has to reset to 0 and remaining is 0 too of course. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-surefire] Tibor17 commented on a diff in pull request #519: After surefire 2058
Tibor17 commented on code in PR #519: URL: https://github.com/apache/maven-surefire/pull/519#discussion_r851304878 ## surefire-api/src/main/java/org/apache/maven/surefire/api/stream/AbstractStreamDecoder.java: ## @@ -305,32 +313,24 @@ private String readString( @Nonnull final Memento memento, @Nonnegative final in memento.getDecoder().reset(); final CharBuffer output = memento.getCharBuffer(); ( (Buffer) output ).clear(); -final ByteBuffer input = memento.getByteBuffer(); final List strings = new ArrayList<>(); int countDecodedBytes = 0; for ( boolean endOfInput = false; !endOfInput; ) { -final int bytesToRead = totalBytes - countDecodedBytes; +final int bytesToRead = totalBytes - countDecodedBytes; // our wish to read bytes as much as possible read( memento, bytesToRead ); -int bytesToDecode = min( input.remaining(), bytesToRead ); +final ByteBuffer input = memento.getByteBuffer(); +int bytesToDecode = min( input.remaining(), bytesToRead ); // our guarantee of available bytes in buffer final boolean isLastChunk = bytesToDecode == bytesToRead; endOfInput = countDecodedBytes + bytesToDecode >= totalBytes; -do -{ -boolean endOfChunk = output.remaining() >= bytesToRead; -boolean endOfOutput = isLastChunk && endOfChunk; -int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, -memento.getLine().getPositionByteBuffer() ); -bytesToDecode -= readInputBytes; -countDecodedBytes += readInputBytes; -} -while ( isLastChunk && bytesToDecode > 0 && output.hasRemaining() ); - -if ( isLastChunk || !output.hasRemaining() ) -{ -strings.add( ( (Buffer) output ).flip().toString() ); -( (Buffer) output ).clear(); -} +boolean endOfChunk = output.remaining() >= bytesToRead; +boolean endOfOutput = isLastChunk && endOfChunk; +int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, +memento.getLine().getPositionByteBuffer() ); +countDecodedBytes += readInputBytes; +strings.add( ( (Buffer) output ).flip().toString() ); +( (Buffer) output ).clear(); +memento.getLine().setPositionByteBuffer( 0 ); Review Comment: After properly decoded bytes, we clear the buffer and new bytes will be decoded. The corrupted has to reset to 0 and remaining is 0 too of course. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-surefire] Tibor17 commented on a diff in pull request #519: After surefire 2058
Tibor17 commented on code in PR #519: URL: https://github.com/apache/maven-surefire/pull/519#discussion_r851302841 ## surefire-api/src/main/java/org/apache/maven/surefire/api/stream/AbstractStreamDecoder.java: ## @@ -305,32 +313,24 @@ private String readString( @Nonnull final Memento memento, @Nonnegative final in memento.getDecoder().reset(); final CharBuffer output = memento.getCharBuffer(); ( (Buffer) output ).clear(); -final ByteBuffer input = memento.getByteBuffer(); final List strings = new ArrayList<>(); int countDecodedBytes = 0; for ( boolean endOfInput = false; !endOfInput; ) { -final int bytesToRead = totalBytes - countDecodedBytes; +final int bytesToRead = totalBytes - countDecodedBytes; // our wish to read bytes as much as possible read( memento, bytesToRead ); -int bytesToDecode = min( input.remaining(), bytesToRead ); +final ByteBuffer input = memento.getByteBuffer(); +int bytesToDecode = min( input.remaining(), bytesToRead ); // our guarantee of available bytes in buffer final boolean isLastChunk = bytesToDecode == bytesToRead; endOfInput = countDecodedBytes + bytesToDecode >= totalBytes; -do -{ -boolean endOfChunk = output.remaining() >= bytesToRead; -boolean endOfOutput = isLastChunk && endOfChunk; -int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, -memento.getLine().getPositionByteBuffer() ); -bytesToDecode -= readInputBytes; -countDecodedBytes += readInputBytes; -} -while ( isLastChunk && bytesToDecode > 0 && output.hasRemaining() ); - -if ( isLastChunk || !output.hasRemaining() ) -{ -strings.add( ( (Buffer) output ).flip().toString() ); -( (Buffer) output ).clear(); -} +boolean endOfChunk = output.remaining() >= bytesToRead; +boolean endOfOutput = isLastChunk && endOfChunk; +int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, +memento.getLine().getPositionByteBuffer() ); +countDecodedBytes += readInputBytes; +strings.add( ( (Buffer) output ).flip().toString() ); +( (Buffer) output ).clear(); +memento.getLine().setPositionByteBuffer( 0 ); Review Comment: @zoltanmeze `memento.getLine()` holds the line which could not be properly decoded and it is eligible for printing a corruption status on the console. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-surefire] Tibor17 commented on a diff in pull request #519: After surefire 2058
Tibor17 commented on code in PR #519: URL: https://github.com/apache/maven-surefire/pull/519#discussion_r851302841 ## surefire-api/src/main/java/org/apache/maven/surefire/api/stream/AbstractStreamDecoder.java: ## @@ -305,32 +313,24 @@ private String readString( @Nonnull final Memento memento, @Nonnegative final in memento.getDecoder().reset(); final CharBuffer output = memento.getCharBuffer(); ( (Buffer) output ).clear(); -final ByteBuffer input = memento.getByteBuffer(); final List strings = new ArrayList<>(); int countDecodedBytes = 0; for ( boolean endOfInput = false; !endOfInput; ) { -final int bytesToRead = totalBytes - countDecodedBytes; +final int bytesToRead = totalBytes - countDecodedBytes; // our wish to read bytes as much as possible read( memento, bytesToRead ); -int bytesToDecode = min( input.remaining(), bytesToRead ); +final ByteBuffer input = memento.getByteBuffer(); +int bytesToDecode = min( input.remaining(), bytesToRead ); // our guarantee of available bytes in buffer final boolean isLastChunk = bytesToDecode == bytesToRead; endOfInput = countDecodedBytes + bytesToDecode >= totalBytes; -do -{ -boolean endOfChunk = output.remaining() >= bytesToRead; -boolean endOfOutput = isLastChunk && endOfChunk; -int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, -memento.getLine().getPositionByteBuffer() ); -bytesToDecode -= readInputBytes; -countDecodedBytes += readInputBytes; -} -while ( isLastChunk && bytesToDecode > 0 && output.hasRemaining() ); - -if ( isLastChunk || !output.hasRemaining() ) -{ -strings.add( ( (Buffer) output ).flip().toString() ); -( (Buffer) output ).clear(); -} +boolean endOfChunk = output.remaining() >= bytesToRead; +boolean endOfOutput = isLastChunk && endOfChunk; +int readInputBytes = decodeString( memento.getDecoder(), input, output, bytesToDecode, endOfOutput, +memento.getLine().getPositionByteBuffer() ); +countDecodedBytes += readInputBytes; +strings.add( ( (Buffer) output ).flip().toString() ); +( (Buffer) output ).clear(); +memento.getLine().setPositionByteBuffer( 0 ); Review Comment: @zoltanmeze `memento.getLine()` holds the line which could not be properly decoded and it is eligible for printing as a corruption on the console. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Comment Edited] (MNG-6762) Multimodule project with .mvn/settings.xml not working properly
[ https://issues.apache.org/jira/browse/MNG-6762?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522754#comment-17522754 ] Michael Osipov edited comment on MNG-6762 at 4/15/22 2:26 PM: -- I see, but I think that your expectations are wrong. You want to build a project standalone, then you should change into that directory or use {{--file}} Always consider that Maven needs to calculate things to build one module out of a whole reactor. Maybe you can decompose your entire project into a smaller one. I don't expect anyone to work on this any time soon. was (Author: michael-o): I see, but I think that your expectations are wrong. You want to build a project standalone, then you should change into that directory or use {{--file}} Always consider that Maven needs to calculate things to build one module out of a whole reactor. Maybe you can decompose your entire project into a smaller one. I don't expect anyone to work in the any time soon. > Multimodule project with .mvn/settings.xml not working properly > --- > > Key: MNG-6762 > URL: https://issues.apache.org/jira/browse/MNG-6762 > Project: Maven > Issue Type: Improvement >Affects Versions: 3.5.4 >Reporter: Morten Minke >Priority: Minor > Fix For: waiting-for-feedback, wontfix-candidate > > Time Spent: 20m > Remaining Estimate: 0h > > I have a project with the following setup: > > {noformat} > - MyProject > |- .mvn > | |- maven.config > | |- settings.xml > |- MyModule1 > | |- pom.xml > |- MyModule2 > | |- pom.xml > |- pom.xml{noformat} > > The .mvn/maven.config file contains the following: > {noformat} > .. > --settings .mvn/settings.xml{noformat} > With this setup, I cannot build the modules separately because it cannot find > the .mvn/settings.xml file in the MyModule1 directory. > > I looked into the code and saw that in the mvn script, the .mvn folder is > searched for in the parent folders. If it is found, that folder is marked as > the 'maven.multiModuleProjectDirectory'. > > However, as soon as the configuration is loaded, this > multiModuleProjectDirectory is not used anymore for the interpretation of the > --settings property, therefor maven tries to find the .mvn/settings.xml file > inside the MyModule1 folder where it is not found. > This results in an Exception and termination of Maven. > > I thought of a couple of ways this could be solved: > * Allow for a variable substitution to work in the maven.config file and > thus reference something like: > {noformat} > .. > --settings ${baseDir}/.mvn/settings.xml{noformat} > * When the maven.multiModuleProjectDirectory is configured and the > --settings flag is a relative directory, than use the > maven.multiModuleProjectDirectory as the root to obtain the settings.xml file. > -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Commented] (MNG-6762) Multimodule project with .mvn/settings.xml not working properly
[ https://issues.apache.org/jira/browse/MNG-6762?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522852#comment-17522852 ] Łukasz Dywicki commented on MNG-6762: - Understand, so to minimize impact this issue makes on me I started looking for workaround. One part of issue is handling of relative settings location, but other was really artifact resolution. Even if I had all artifacts cached in local and forced offline mode (-o -nsu), maven did insist on re-resolving them. I have mirrors which masks remote repos and reactor could not work without them, even in offline mode. For me solution is: {noformat} mvn -o -nsu -s ~/.m2/settings.xml -llr install {noformat} First part switch offline mode, then it reset settings to defaults, last one disable handling of {{_remote.repositories}} file which is contributing factor why re-resolving was made. So with this workaround I can keep going. :) Best, Łukasz > Multimodule project with .mvn/settings.xml not working properly > --- > > Key: MNG-6762 > URL: https://issues.apache.org/jira/browse/MNG-6762 > Project: Maven > Issue Type: Improvement >Affects Versions: 3.5.4 >Reporter: Morten Minke >Priority: Minor > Fix For: waiting-for-feedback, wontfix-candidate > > Time Spent: 20m > Remaining Estimate: 0h > > I have a project with the following setup: > > {noformat} > - MyProject > |- .mvn > | |- maven.config > | |- settings.xml > |- MyModule1 > | |- pom.xml > |- MyModule2 > | |- pom.xml > |- pom.xml{noformat} > > The .mvn/maven.config file contains the following: > {noformat} > .. > --settings .mvn/settings.xml{noformat} > With this setup, I cannot build the modules separately because it cannot find > the .mvn/settings.xml file in the MyModule1 directory. > > I looked into the code and saw that in the mvn script, the .mvn folder is > searched for in the parent folders. If it is found, that folder is marked as > the 'maven.multiModuleProjectDirectory'. > > However, as soon as the configuration is loaded, this > multiModuleProjectDirectory is not used anymore for the interpretation of the > --settings property, therefor maven tries to find the .mvn/settings.xml file > inside the MyModule1 folder where it is not found. > This results in an Exception and termination of Maven. > > I thought of a couple of ways this could be solved: > * Allow for a variable substitution to work in the maven.config file and > thus reference something like: > {noformat} > .. > --settings ${baseDir}/.mvn/settings.xml{noformat} > * When the maven.multiModuleProjectDirectory is configured and the > --settings flag is a relative directory, than use the > maven.multiModuleProjectDirectory as the root to obtain the settings.xml file. > -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Closed] (MENFORCER-416) Range [0, 3) out of bounds for length 2
[ https://issues.apache.org/jira/browse/MENFORCER-416?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Michael Osipov closed MENFORCER-416. Resolution: Cannot Reproduce Works for me: {noformat} D:\Entwicklung\Projekte\sample> D:\Entwicklung\Programme\apache-maven-3.8.5\bin\mvn.cmd validate -V Apache Maven 3.8.5 (3599d3414f046de2324203b78ddcf9b5e4388aa0) Maven home: D:\Entwicklung\Programme\apache-maven-3.8.5 Java version: 18, vendor: Eclipse Adoptium, runtime: D:\Entwicklung\Programme\jdk-18+36 Default locale: de_DE, platform encoding: UTF-8 OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows" [INFO] Scanning for projects... [INFO] [INFO] ---< org.foo.modules:sample >--- [INFO] Building sample 1.0.0-SNAPSHOT [INFO] [ jar ]- [INFO] [INFO] --- maven-enforcer-plugin:3.0.0:enforce (enforce-versions) @ sample --- [INFO] [INFO] BUILD SUCCESS [INFO] [INFO] Total time: 0.494 s [INFO] Finished at: 2022-04-15T16:20:40+02:00 [INFO] D:\Entwicklung\Projekte\sample> {noformat} > Range [0, 3) out of bounds for length 2 > --- > > Key: MENFORCER-416 > URL: https://issues.apache.org/jira/browse/MENFORCER-416 > Project: Maven Enforcer Plugin > Issue Type: Bug >Reporter: Thomas LE CLERE >Priority: Major > Attachments: sample.zip > > > Hello, > I face an issue when I compile a maven project: > {code:java} > Caused by: java.lang.StringIndexOutOfBoundsException: Range [0, 3) out of > bounds for length 2 > at jdk.internal.util.Preconditions$1.apply (Preconditions.java:55) > at jdk.internal.util.Preconditions$1.apply (Preconditions.java:52) > at jdk.internal.util.Preconditions$4.apply (Preconditions.java:213) > at jdk.internal.util.Preconditions$4.apply (Preconditions.java:210) > at jdk.internal.util.Preconditions.outOfBounds (Preconditions.java:98) > at jdk.internal.util.Preconditions.outOfBoundsCheckFromToIndex > (Preconditions.java:112) > at jdk.internal.util.Preconditions.checkFromToIndex > (Preconditions.java:349) > at java.lang.String.checkBoundsBeginEnd (String.java:4589) > at java.lang.String.substring (String.java:2703) > at org.apache.commons.lang.SystemUtils.getJavaVersionAsFloat > (SystemUtils.java:1122) > at org.apache.commons.lang.SystemUtils. (SystemUtils.java:818) > at org.apache.maven.plugins.enforcer.RequireJavaVersion.execute > (RequireJavaVersion.java:52) > at org.apache.maven.plugins.enforcer.EnforceMojo.execute > (EnforceMojo.java:190) > at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo > (DefaultBuildPluginManager.java:137) > at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute > (MojoExecutor.java:301) > at org.apache.maven.lifecycle.internal.MojoExecutor.execute > (MojoExecutor.java:211) > at org.apache.maven.lifecycle.internal.MojoExecutor.execute > (MojoExecutor.java:165) > at org.apache.maven.lifecycle.internal.MojoExecutor.execute > (MojoExecutor.java:157) > at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject > (LifecycleModuleBuilder.java:121) > at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject > (LifecycleModuleBuilder.java:81) > at > org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build > (SingleThreadedBuilder.java:56) > at org.apache.maven.lifecycle.internal.LifecycleStarter.execute > (LifecycleStarter.java:127) > at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294) > at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) > at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) > at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960) > at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293) > at org.apache.maven.cli.MavenCli.main (MavenCli.java:196) > at jdk.internal.reflect.DirectMethodHandleAccessor.invoke > (DirectMethodHandleAccessor.java:104) > at java.lang.reflect.Method.invoke (Method.java:577) > at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced > (Launcher.java:282) > at org.codehaus.plexus.classworlds.launcher.Launcher.launch > (Launcher.java:225) > at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode > (Launcher.java:406) > at org.codehaus.plexus.classworlds.launcher.Launcher.main > (Launcher.java:347) {code} > Here is my settings > {code:java} > Apache Maven 3.8.5 (3599d3414f046de2324203b78ddcf9b5e4388aa0) > Maven
[jira] [Commented] (MENFORCER-416) Range [0, 3) out of bounds for length 2
[ https://issues.apache.org/jira/browse/MENFORCER-416?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522846#comment-17522846 ] Thomas LE CLERE commented on MENFORCER-416: --- [~michael-o] , I added a sample project. Maybe it's a mistake in the enforcer-plugin declaration. > Range [0, 3) out of bounds for length 2 > --- > > Key: MENFORCER-416 > URL: https://issues.apache.org/jira/browse/MENFORCER-416 > Project: Maven Enforcer Plugin > Issue Type: Bug >Reporter: Thomas LE CLERE >Priority: Major > Attachments: sample.zip > > > Hello, > I face an issue when I compile a maven project: > {code:java} > Caused by: java.lang.StringIndexOutOfBoundsException: Range [0, 3) out of > bounds for length 2 > at jdk.internal.util.Preconditions$1.apply (Preconditions.java:55) > at jdk.internal.util.Preconditions$1.apply (Preconditions.java:52) > at jdk.internal.util.Preconditions$4.apply (Preconditions.java:213) > at jdk.internal.util.Preconditions$4.apply (Preconditions.java:210) > at jdk.internal.util.Preconditions.outOfBounds (Preconditions.java:98) > at jdk.internal.util.Preconditions.outOfBoundsCheckFromToIndex > (Preconditions.java:112) > at jdk.internal.util.Preconditions.checkFromToIndex > (Preconditions.java:349) > at java.lang.String.checkBoundsBeginEnd (String.java:4589) > at java.lang.String.substring (String.java:2703) > at org.apache.commons.lang.SystemUtils.getJavaVersionAsFloat > (SystemUtils.java:1122) > at org.apache.commons.lang.SystemUtils. (SystemUtils.java:818) > at org.apache.maven.plugins.enforcer.RequireJavaVersion.execute > (RequireJavaVersion.java:52) > at org.apache.maven.plugins.enforcer.EnforceMojo.execute > (EnforceMojo.java:190) > at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo > (DefaultBuildPluginManager.java:137) > at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute > (MojoExecutor.java:301) > at org.apache.maven.lifecycle.internal.MojoExecutor.execute > (MojoExecutor.java:211) > at org.apache.maven.lifecycle.internal.MojoExecutor.execute > (MojoExecutor.java:165) > at org.apache.maven.lifecycle.internal.MojoExecutor.execute > (MojoExecutor.java:157) > at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject > (LifecycleModuleBuilder.java:121) > at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject > (LifecycleModuleBuilder.java:81) > at > org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build > (SingleThreadedBuilder.java:56) > at org.apache.maven.lifecycle.internal.LifecycleStarter.execute > (LifecycleStarter.java:127) > at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294) > at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) > at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) > at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960) > at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293) > at org.apache.maven.cli.MavenCli.main (MavenCli.java:196) > at jdk.internal.reflect.DirectMethodHandleAccessor.invoke > (DirectMethodHandleAccessor.java:104) > at java.lang.reflect.Method.invoke (Method.java:577) > at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced > (Launcher.java:282) > at org.codehaus.plexus.classworlds.launcher.Launcher.launch > (Launcher.java:225) > at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode > (Launcher.java:406) > at org.codehaus.plexus.classworlds.launcher.Launcher.main > (Launcher.java:347) {code} > Here is my settings > {code:java} > Apache Maven 3.8.5 (3599d3414f046de2324203b78ddcf9b5e4388aa0) > Maven home: /usr/local/Cellar/maven/3.8.5/libexec > Java version: 18, vendor: Homebrew, runtime: > /usr/local/Cellar/openjdk/18/libexec/openjdk.jdk/Contents/Home > Default locale: fr_FR, platform encoding: UTF-8 > OS name: "mac os x", version: "10.15.7", arch: "x86_64", family: "mac" {code} > Thanks in advance for your help. > Regards, -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Updated] (MENFORCER-416) Range [0, 3) out of bounds for length 2
[ https://issues.apache.org/jira/browse/MENFORCER-416?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Thomas LE CLERE updated MENFORCER-416: -- Attachment: sample.zip > Range [0, 3) out of bounds for length 2 > --- > > Key: MENFORCER-416 > URL: https://issues.apache.org/jira/browse/MENFORCER-416 > Project: Maven Enforcer Plugin > Issue Type: Bug >Reporter: Thomas LE CLERE >Priority: Major > Attachments: sample.zip > > > Hello, > I face an issue when I compile a maven project: > {code:java} > Caused by: java.lang.StringIndexOutOfBoundsException: Range [0, 3) out of > bounds for length 2 > at jdk.internal.util.Preconditions$1.apply (Preconditions.java:55) > at jdk.internal.util.Preconditions$1.apply (Preconditions.java:52) > at jdk.internal.util.Preconditions$4.apply (Preconditions.java:213) > at jdk.internal.util.Preconditions$4.apply (Preconditions.java:210) > at jdk.internal.util.Preconditions.outOfBounds (Preconditions.java:98) > at jdk.internal.util.Preconditions.outOfBoundsCheckFromToIndex > (Preconditions.java:112) > at jdk.internal.util.Preconditions.checkFromToIndex > (Preconditions.java:349) > at java.lang.String.checkBoundsBeginEnd (String.java:4589) > at java.lang.String.substring (String.java:2703) > at org.apache.commons.lang.SystemUtils.getJavaVersionAsFloat > (SystemUtils.java:1122) > at org.apache.commons.lang.SystemUtils. (SystemUtils.java:818) > at org.apache.maven.plugins.enforcer.RequireJavaVersion.execute > (RequireJavaVersion.java:52) > at org.apache.maven.plugins.enforcer.EnforceMojo.execute > (EnforceMojo.java:190) > at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo > (DefaultBuildPluginManager.java:137) > at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute > (MojoExecutor.java:301) > at org.apache.maven.lifecycle.internal.MojoExecutor.execute > (MojoExecutor.java:211) > at org.apache.maven.lifecycle.internal.MojoExecutor.execute > (MojoExecutor.java:165) > at org.apache.maven.lifecycle.internal.MojoExecutor.execute > (MojoExecutor.java:157) > at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject > (LifecycleModuleBuilder.java:121) > at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject > (LifecycleModuleBuilder.java:81) > at > org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build > (SingleThreadedBuilder.java:56) > at org.apache.maven.lifecycle.internal.LifecycleStarter.execute > (LifecycleStarter.java:127) > at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294) > at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) > at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) > at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960) > at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293) > at org.apache.maven.cli.MavenCli.main (MavenCli.java:196) > at jdk.internal.reflect.DirectMethodHandleAccessor.invoke > (DirectMethodHandleAccessor.java:104) > at java.lang.reflect.Method.invoke (Method.java:577) > at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced > (Launcher.java:282) > at org.codehaus.plexus.classworlds.launcher.Launcher.launch > (Launcher.java:225) > at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode > (Launcher.java:406) > at org.codehaus.plexus.classworlds.launcher.Launcher.main > (Launcher.java:347) {code} > Here is my settings > {code:java} > Apache Maven 3.8.5 (3599d3414f046de2324203b78ddcf9b5e4388aa0) > Maven home: /usr/local/Cellar/maven/3.8.5/libexec > Java version: 18, vendor: Homebrew, runtime: > /usr/local/Cellar/openjdk/18/libexec/openjdk.jdk/Contents/Home > Default locale: fr_FR, platform encoding: UTF-8 > OS name: "mac os x", version: "10.15.7", arch: "x86_64", family: "mac" {code} > Thanks in advance for your help. > Regards, -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Commented] (MENFORCER-416) Range [0, 3) out of bounds for length 2
[ https://issues.apache.org/jira/browse/MENFORCER-416?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522836#comment-17522836 ] Michael Osipov commented on MENFORCER-416: -- Provide a sample reproducer. > Range [0, 3) out of bounds for length 2 > --- > > Key: MENFORCER-416 > URL: https://issues.apache.org/jira/browse/MENFORCER-416 > Project: Maven Enforcer Plugin > Issue Type: Bug >Reporter: Thomas LE CLERE >Priority: Major > > Hello, > I face an issue when I compile a maven project: > {code:java} > Caused by: java.lang.StringIndexOutOfBoundsException: Range [0, 3) out of > bounds for length 2 > at jdk.internal.util.Preconditions$1.apply (Preconditions.java:55) > at jdk.internal.util.Preconditions$1.apply (Preconditions.java:52) > at jdk.internal.util.Preconditions$4.apply (Preconditions.java:213) > at jdk.internal.util.Preconditions$4.apply (Preconditions.java:210) > at jdk.internal.util.Preconditions.outOfBounds (Preconditions.java:98) > at jdk.internal.util.Preconditions.outOfBoundsCheckFromToIndex > (Preconditions.java:112) > at jdk.internal.util.Preconditions.checkFromToIndex > (Preconditions.java:349) > at java.lang.String.checkBoundsBeginEnd (String.java:4589) > at java.lang.String.substring (String.java:2703) > at org.apache.commons.lang.SystemUtils.getJavaVersionAsFloat > (SystemUtils.java:1122) > at org.apache.commons.lang.SystemUtils. (SystemUtils.java:818) > at org.apache.maven.plugins.enforcer.RequireJavaVersion.execute > (RequireJavaVersion.java:52) > at org.apache.maven.plugins.enforcer.EnforceMojo.execute > (EnforceMojo.java:190) > at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo > (DefaultBuildPluginManager.java:137) > at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute > (MojoExecutor.java:301) > at org.apache.maven.lifecycle.internal.MojoExecutor.execute > (MojoExecutor.java:211) > at org.apache.maven.lifecycle.internal.MojoExecutor.execute > (MojoExecutor.java:165) > at org.apache.maven.lifecycle.internal.MojoExecutor.execute > (MojoExecutor.java:157) > at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject > (LifecycleModuleBuilder.java:121) > at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject > (LifecycleModuleBuilder.java:81) > at > org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build > (SingleThreadedBuilder.java:56) > at org.apache.maven.lifecycle.internal.LifecycleStarter.execute > (LifecycleStarter.java:127) > at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294) > at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) > at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) > at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960) > at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293) > at org.apache.maven.cli.MavenCli.main (MavenCli.java:196) > at jdk.internal.reflect.DirectMethodHandleAccessor.invoke > (DirectMethodHandleAccessor.java:104) > at java.lang.reflect.Method.invoke (Method.java:577) > at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced > (Launcher.java:282) > at org.codehaus.plexus.classworlds.launcher.Launcher.launch > (Launcher.java:225) > at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode > (Launcher.java:406) > at org.codehaus.plexus.classworlds.launcher.Launcher.main > (Launcher.java:347) {code} > Here is my settings > {code:java} > Apache Maven 3.8.5 (3599d3414f046de2324203b78ddcf9b5e4388aa0) > Maven home: /usr/local/Cellar/maven/3.8.5/libexec > Java version: 18, vendor: Homebrew, runtime: > /usr/local/Cellar/openjdk/18/libexec/openjdk.jdk/Contents/Home > Default locale: fr_FR, platform encoding: UTF-8 > OS name: "mac os x", version: "10.15.7", arch: "x86_64", family: "mac" {code} > Thanks in advance for your help. > Regards, -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Moved] (MENFORCER-416) Range [0, 3) out of bounds for length 2
[ https://issues.apache.org/jira/browse/MENFORCER-416?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Michael Osipov moved MNG-7462 to MENFORCER-416: --- Key: MENFORCER-416 (was: MNG-7462) Affects Version/s: (was: 3.8.5) Project: Maven Enforcer Plugin (was: Maven) > Range [0, 3) out of bounds for length 2 > --- > > Key: MENFORCER-416 > URL: https://issues.apache.org/jira/browse/MENFORCER-416 > Project: Maven Enforcer Plugin > Issue Type: Bug >Reporter: Thomas LE CLERE >Priority: Major > > Hello, > I face an issue when I compile a maven project: > {code:java} > Caused by: java.lang.StringIndexOutOfBoundsException: Range [0, 3) out of > bounds for length 2 > at jdk.internal.util.Preconditions$1.apply (Preconditions.java:55) > at jdk.internal.util.Preconditions$1.apply (Preconditions.java:52) > at jdk.internal.util.Preconditions$4.apply (Preconditions.java:213) > at jdk.internal.util.Preconditions$4.apply (Preconditions.java:210) > at jdk.internal.util.Preconditions.outOfBounds (Preconditions.java:98) > at jdk.internal.util.Preconditions.outOfBoundsCheckFromToIndex > (Preconditions.java:112) > at jdk.internal.util.Preconditions.checkFromToIndex > (Preconditions.java:349) > at java.lang.String.checkBoundsBeginEnd (String.java:4589) > at java.lang.String.substring (String.java:2703) > at org.apache.commons.lang.SystemUtils.getJavaVersionAsFloat > (SystemUtils.java:1122) > at org.apache.commons.lang.SystemUtils. (SystemUtils.java:818) > at org.apache.maven.plugins.enforcer.RequireJavaVersion.execute > (RequireJavaVersion.java:52) > at org.apache.maven.plugins.enforcer.EnforceMojo.execute > (EnforceMojo.java:190) > at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo > (DefaultBuildPluginManager.java:137) > at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute > (MojoExecutor.java:301) > at org.apache.maven.lifecycle.internal.MojoExecutor.execute > (MojoExecutor.java:211) > at org.apache.maven.lifecycle.internal.MojoExecutor.execute > (MojoExecutor.java:165) > at org.apache.maven.lifecycle.internal.MojoExecutor.execute > (MojoExecutor.java:157) > at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject > (LifecycleModuleBuilder.java:121) > at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject > (LifecycleModuleBuilder.java:81) > at > org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build > (SingleThreadedBuilder.java:56) > at org.apache.maven.lifecycle.internal.LifecycleStarter.execute > (LifecycleStarter.java:127) > at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294) > at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) > at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) > at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960) > at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293) > at org.apache.maven.cli.MavenCli.main (MavenCli.java:196) > at jdk.internal.reflect.DirectMethodHandleAccessor.invoke > (DirectMethodHandleAccessor.java:104) > at java.lang.reflect.Method.invoke (Method.java:577) > at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced > (Launcher.java:282) > at org.codehaus.plexus.classworlds.launcher.Launcher.launch > (Launcher.java:225) > at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode > (Launcher.java:406) > at org.codehaus.plexus.classworlds.launcher.Launcher.main > (Launcher.java:347) {code} > Here is my settings > {code:java} > Apache Maven 3.8.5 (3599d3414f046de2324203b78ddcf9b5e4388aa0) > Maven home: /usr/local/Cellar/maven/3.8.5/libexec > Java version: 18, vendor: Homebrew, runtime: > /usr/local/Cellar/openjdk/18/libexec/openjdk.jdk/Contents/Home > Default locale: fr_FR, platform encoding: UTF-8 > OS name: "mac os x", version: "10.15.7", arch: "x86_64", family: "mac" {code} > Thanks in advance for your help. > Regards, -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [maven-resolver] michael-o commented on a diff in pull request #168: [MRESOLVER-253] Dynamic LRM
michael-o commented on code in PR #168: URL: https://github.com/apache/maven-resolver/pull/168#discussion_r851271040 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DynamicPrefixComposer.java: ## @@ -0,0 +1,68 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; +import org.eclipse.aether.repository.RemoteRepository; + +/** + * Composes prefixes for {@link EnhancedLocalRepositoryManager}. + * + * @since TBD + */ +public interface DynamicPrefixComposer Review Comment: Akin to the other PR: `DynamicLocalPathPrefixComposer`? Otherwise it is not clear what kind of prefix is calculated. ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DynamicPrefixComposer.java: ## @@ -0,0 +1,68 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; +import org.eclipse.aether.repository.RemoteRepository; + +/** + * Composes prefixes for {@link EnhancedLocalRepositoryManager}. + * + * @since TBD + */ +public interface DynamicPrefixComposer +{ +/** + * Gets the path prefix for a locally installed artifact. + * + * @param artifact The artifact for which to determine the prefix, must not be {@code null}. + * @return The prefix, may be {@code null} (note: {@code null}s and empty strings are treated equally). + */ +String getPrefixForLocalArtifact( Artifact artifact ); + +/** + * Gets the path prefix for an artifact cached from a remote repository. + * + * @param artifact The artifact for which to determine the prefix, must not be {@code null}. + * @param repository The source repository of the artifact, must not be {@code null}. + * @param contextThe resolution context in which the artifact is being requested, may be {@code null}. + * @return The prefix, may be {@code null} (note: {@code null}s and empty strings are treated equally). + */ +String getPrefixForRemoteArtifact( Artifact artifact, RemoteRepository repository, String context ); + +/** + * Gets the path prefix for locally installed metadata. + * + * @param metadata The metadata for which to determine the prefix, must not be {@code null}. + * @return The prefix, may be {@code null} (note: {@code null}s and empty strings are treated equally). + */ +String getPrefixForLocalMetadata( Metadata metadata ); + +/** + * Gets the path prefix for metadata cached from a remote repository. + * + * @param metadata The metadata for which to determine the prefix, must not be {@code null}. + * @param repository The source repository of the metadata, must not be {@code null}. + * @param contextThe resolution context in which the metadata is being requested, may be {@code null}. + * @return The prefix, may be {@code null} (note: {@code null}s and empty strings are treated equally). + */ +String getPrefixForRemoteMetadata( Metadata metadata, RemoteRepository repository, String context ); Review Comment: `PathPrefix` ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/SplitDynamicPrefixComposerFactory.java: ## @@ -0,0 +1,85 @@
[GitHub] [maven-release] dependabot[bot] closed pull request #105: Bump commons-io from 2.6 to 2.7 in /maven-release-manager
dependabot[bot] closed pull request #105: Bump commons-io from 2.6 to 2.7 in /maven-release-manager URL: https://github.com/apache/maven-release/pull/105 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-release] dependabot[bot] commented on pull request #105: Bump commons-io from 2.6 to 2.7 in /maven-release-manager
dependabot[bot] commented on PR #105: URL: https://github.com/apache/maven-release/pull/105#issuecomment-1100086584 Looks like commons-io:commons-io is no longer a dependency, so this is no longer needed. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Updated] (SUREFIRE-2073) Test class filtering should be done in the particular fork JVM where the real test would run.
[ https://issues.apache.org/jira/browse/SUREFIRE-2073?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tibor Digana updated SUREFIRE-2073: --- Fix Version/s: 3.0 > Test class filtering should be done in the particular fork JVM where the real > test would run. > - > > Key: SUREFIRE-2073 > URL: https://issues.apache.org/jira/browse/SUREFIRE-2073 > Project: Maven Surefire > Issue Type: Bug > Components: JUnit 5.x support >Affects Versions: 3.0.0-M6 >Reporter: Piotr Karwasz >Priority: Major > Fix For: 3.0 > > > On projects using toolchains submodules can be compiled with a different Java > version than the main project. This can result in an > {{UnsupportedClassVersionError}} if the class scan is performed by the main > Maven JVM: > {noformat} > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test (test) on > project log4j-api-java9: Execution test of goal > org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test failed: > java.lang.UnsupportedClassVersionError: > org/apache/logging/log4j/util/java9/ProcessIdUtilTest has been compiled by a > more recent version of the Java Runtime (class file version 53.0), this > version of the Java Runtime only recognizes class file versions up to 52.0 -> > [Help 1]{noformat} > Therefore Surefire should probably fork a new instance to scan for test > classes whenever {{forkCount}} is not zero. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Updated] (SUREFIRE-2073) Test class filtering should be done in the particular fork JVM where the real test would run.
[ https://issues.apache.org/jira/browse/SUREFIRE-2073?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tibor Digana updated SUREFIRE-2073: --- Summary: Test class filtering should be done in the particular fork JVM where the real test would run. (was: Surefire should fork before class scan. Test class filtering should be done in the particular fork JVM where the real test would run.) > Test class filtering should be done in the particular fork JVM where the real > test would run. > - > > Key: SUREFIRE-2073 > URL: https://issues.apache.org/jira/browse/SUREFIRE-2073 > Project: Maven Surefire > Issue Type: Bug > Components: JUnit 5.x support >Affects Versions: 3.0.0-M6 >Reporter: Piotr Karwasz >Priority: Major > > On projects using toolchains submodules can be compiled with a different Java > version than the main project. This can result in an > {{UnsupportedClassVersionError}} if the class scan is performed by the main > Maven JVM: > {noformat} > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test (test) on > project log4j-api-java9: Execution test of goal > org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test failed: > java.lang.UnsupportedClassVersionError: > org/apache/logging/log4j/util/java9/ProcessIdUtilTest has been compiled by a > more recent version of the Java Runtime (class file version 53.0), this > version of the Java Runtime only recognizes class file versions up to 52.0 -> > [Help 1]{noformat} > Therefore Surefire should probably fork a new instance to scan for test > classes whenever {{forkCount}} is not zero. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Updated] (SUREFIRE-2073) Surefire should fork before class scan. Test class filtering should be done in the particular fork JVM where the real test would run.
[ https://issues.apache.org/jira/browse/SUREFIRE-2073?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tibor Digana updated SUREFIRE-2073: --- Summary: Surefire should fork before class scan. Test class filtering should be done in the particular fork JVM where the real test would run. (was: Surefire should fork before class scan) > Surefire should fork before class scan. Test class filtering should be done > in the particular fork JVM where the real test would run. > - > > Key: SUREFIRE-2073 > URL: https://issues.apache.org/jira/browse/SUREFIRE-2073 > Project: Maven Surefire > Issue Type: Bug > Components: JUnit 5.x support >Affects Versions: 3.0.0-M6 >Reporter: Piotr Karwasz >Priority: Major > > On projects using toolchains submodules can be compiled with a different Java > version than the main project. This can result in an > {{UnsupportedClassVersionError}} if the class scan is performed by the main > Maven JVM: > {noformat} > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test (test) on > project log4j-api-java9: Execution test of goal > org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test failed: > java.lang.UnsupportedClassVersionError: > org/apache/logging/log4j/util/java9/ProcessIdUtilTest has been compiled by a > more recent version of the Java Runtime (class file version 53.0), this > version of the Java Runtime only recognizes class file versions up to 52.0 -> > [Help 1]{noformat} > Therefore Surefire should probably fork a new instance to scan for test > classes whenever {{forkCount}} is not zero. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Commented] (SUREFIRE-2073) Surefire should fork before class scan
[ https://issues.apache.org/jira/browse/SUREFIRE-2073?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522817#comment-17522817 ] Tibor Digana commented on SUREFIRE-2073: SUREFIRE-2048 and SUREFIRE-2049 are a prereq for this change. > Surefire should fork before class scan > -- > > Key: SUREFIRE-2073 > URL: https://issues.apache.org/jira/browse/SUREFIRE-2073 > Project: Maven Surefire > Issue Type: Bug > Components: JUnit 5.x support >Affects Versions: 3.0.0-M6 >Reporter: Piotr Karwasz >Priority: Major > > On projects using toolchains submodules can be compiled with a different Java > version than the main project. This can result in an > {{UnsupportedClassVersionError}} if the class scan is performed by the main > Maven JVM: > {noformat} > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test (test) on > project log4j-api-java9: Execution test of goal > org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test failed: > java.lang.UnsupportedClassVersionError: > org/apache/logging/log4j/util/java9/ProcessIdUtilTest has been compiled by a > more recent version of the Java Runtime (class file version 53.0), this > version of the Java Runtime only recognizes class file versions up to 52.0 -> > [Help 1]{noformat} > Therefore Surefire should probably fork a new instance to scan for test > classes whenever {{forkCount}} is not zero. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Commented] (WAGON-616) Deprecate Wagon SSH Provider
[ https://issues.apache.org/jira/browse/WAGON-616?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522816#comment-17522816 ] Michael Osipov commented on WAGON-616: -- Thanks, yout gratitude is truly appreciated. As for using SCP. I have been using it for years with SF.net, so I know that it works. Have a look at my personal project POMs: * https://github.com/michael-o/michael-o-parent/commit/26c2a9b5948a4760401ec2b76fc7a997f8ef8bbd * https://github.com/michael-o/tomcatspnegoad/commit/5e2e4d3e64d1f4a802c62475ea23fafa29df81f0 Here is the build extension you need to have: * https://maven.apache.org/wagon/wagon-providers/wagon-ssh-external/index.html * https://github.com/apache/maven-wagon/blob/a40b7196f72f23a68b765c0a9a3c6984edbc221d/wagon-providers/wagon-ssh-external/src/main/java/org/apache/maven/wagon/providers/ssh/external/ScpExternalWagon.java#L52-L56 The protocol must be {{scpexe}} since this is used to lookup the protocol: https://github.com/mojohaus/wagon-maven-plugin/blob/264cdbd6e062656afcb368e4e1b84ff6a5db6be6/src/main/java/org/codehaus/mojo/wagon/shared/DefaultWagonFactory.java#L123-L140 > Deprecate Wagon SSH Provider > > > Key: WAGON-616 > URL: https://issues.apache.org/jira/browse/WAGON-616 > Project: Maven Wagon > Issue Type: Task > Components: wagon-ssh >Reporter: Michael Osipov >Assignee: Michael Osipov >Priority: Major > Fix For: 3.5.0 > > > This provider has serious implications and implementation issues: > - JSch http://www.jcraft.com/jsch/ failed to provide a source repository, > accept contributions and address issues. > - Too complex and low level. > - It is disputed whether this is open source at all. > The sshexe ({{scp}}) provider remains until someone wants to write something > on top of Apache MINA SSHD. > We are deprecating this provider to be removed in 4.0.0. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Comment Edited] (WAGON-616) Deprecate Wagon SSH Provider
[ https://issues.apache.org/jira/browse/WAGON-616?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522816#comment-17522816 ] Michael Osipov edited comment on WAGON-616 at 4/15/22 12:46 PM: Thanks, your gratitude is truly appreciated. As for using SCP. I have been using it for years with SF.net, so I know that it works. Have a look at my personal project POMs: * https://github.com/michael-o/michael-o-parent/commit/26c2a9b5948a4760401ec2b76fc7a997f8ef8bbd * https://github.com/michael-o/tomcatspnegoad/commit/5e2e4d3e64d1f4a802c62475ea23fafa29df81f0 Here is the build extension you need to have: * https://maven.apache.org/wagon/wagon-providers/wagon-ssh-external/index.html * https://github.com/apache/maven-wagon/blob/a40b7196f72f23a68b765c0a9a3c6984edbc221d/wagon-providers/wagon-ssh-external/src/main/java/org/apache/maven/wagon/providers/ssh/external/ScpExternalWagon.java#L52-L56 The protocol must be {{scpexe}} since this is used to lookup the protocol: https://github.com/mojohaus/wagon-maven-plugin/blob/264cdbd6e062656afcb368e4e1b84ff6a5db6be6/src/main/java/org/codehaus/mojo/wagon/shared/DefaultWagonFactory.java#L123-L140 was (Author: michael-o): Thanks, yout gratitude is truly appreciated. As for using SCP. I have been using it for years with SF.net, so I know that it works. Have a look at my personal project POMs: * https://github.com/michael-o/michael-o-parent/commit/26c2a9b5948a4760401ec2b76fc7a997f8ef8bbd * https://github.com/michael-o/tomcatspnegoad/commit/5e2e4d3e64d1f4a802c62475ea23fafa29df81f0 Here is the build extension you need to have: * https://maven.apache.org/wagon/wagon-providers/wagon-ssh-external/index.html * https://github.com/apache/maven-wagon/blob/a40b7196f72f23a68b765c0a9a3c6984edbc221d/wagon-providers/wagon-ssh-external/src/main/java/org/apache/maven/wagon/providers/ssh/external/ScpExternalWagon.java#L52-L56 The protocol must be {{scpexe}} since this is used to lookup the protocol: https://github.com/mojohaus/wagon-maven-plugin/blob/264cdbd6e062656afcb368e4e1b84ff6a5db6be6/src/main/java/org/codehaus/mojo/wagon/shared/DefaultWagonFactory.java#L123-L140 > Deprecate Wagon SSH Provider > > > Key: WAGON-616 > URL: https://issues.apache.org/jira/browse/WAGON-616 > Project: Maven Wagon > Issue Type: Task > Components: wagon-ssh >Reporter: Michael Osipov >Assignee: Michael Osipov >Priority: Major > Fix For: 3.5.0 > > > This provider has serious implications and implementation issues: > - JSch http://www.jcraft.com/jsch/ failed to provide a source repository, > accept contributions and address issues. > - Too complex and low level. > - It is disputed whether this is open source at all. > The sshexe ({{scp}}) provider remains until someone wants to write something > on top of Apache MINA SSHD. > We are deprecating this provider to be removed in 4.0.0. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Commented] (MNG-7419) Add overiding dependencies from a BOM dependencyManagement
[ https://issues.apache.org/jira/browse/MNG-7419?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522809#comment-17522809 ] zosrothko commented on MNG-7419: I do not have right now any other wishes... The BOM feature is really a "must-know" since it simplify greatly a product dependency for consumer. Thank you for having pointed this feature. > Add overiding dependencies from a BOM dependencyManagement > -- > > Key: MNG-7419 > URL: https://issues.apache.org/jira/browse/MNG-7419 > Project: Maven > Issue Type: New Feature > Components: Dependencies > Environment: Apache Maven 3.6.3 > (cecedd343002696d0abb50b32b541b8a6ba2883f) > Maven home: C:\ASF\apache-maven-3.6.3\bin\.. > Java version: 1.8.0_181, vendor: Oracle Corporation, runtime: C:\Program > Files\Java\jdk1.8.0_181\jre > Default locale: fr_FR, platform encoding: Cp1252 > OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows" >Reporter: zosrothko >Priority: Major > Labels: BOM > > Hello > By looking at [MNG-5102|https://issues.apache.org/jira/browse/MNG-5102], I > finally manage my BOM problem. But I need an extension that allows the > imported BOM to be overriden by some new dependencies specs. As for exemple > {code:java} > > > > com.scort > mi > 4.4.0 > import > pom > > > foo > bar > provided > > > > {code} > The use case is the case where a customer wants to integrate the com.scor:mi > jars in a war to run on Tomcat for exemple, while it would like also to > integrate com.scort:mi jars as a module of a JBoss server, in which case, the > artifacts should be marked as provided. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [maven-resolver] michael-o commented on a diff in pull request #167: [MRESOLVER-252] Make LRM path composition reusable
michael-o commented on code in PR #167: URL: https://github.com/apache/maven-resolver/pull/167#discussion_r851233135 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/ArtifactPathComposer.java: ## @@ -0,0 +1,53 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; + +/** + * Composes {@link Artifact} and {@link Metadata} relative paths to be used in + * {@link org.eclipse.aether.repository.LocalRepositoryManager}. + * + * @since TBD + */ +public interface ArtifactPathComposer Review Comment: Yes , reads nice -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Closed] (SUREFIRE-2057) JPMS Regression: requires static module not include anymore
[ https://issues.apache.org/jira/browse/SUREFIRE-2057?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tibor Digana closed SUREFIRE-2057. -- Resolution: Fixed https://gitbox.apache.org/repos/asf?p=maven-surefire.git;a=commit;h=541a65d6275dd5a5bb2a40be16716ebb2c637609 > JPMS Regression: requires static module not include anymore > --- > > Key: SUREFIRE-2057 > URL: https://issues.apache.org/jira/browse/SUREFIRE-2057 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Failsafe Plugin, Maven Surefire Plugin >Reporter: Olivier Lamy >Assignee: Olivier Lamy >Priority: Blocker > Fix For: 3.0.0-M7 > > -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [maven-surefire] Tibor17 merged pull request #508: [SUREFIRE-2057] jpms requires static must be included
Tibor17 merged PR #508: URL: https://github.com/apache/maven-surefire/pull/508 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-resolver] cstamas commented on a diff in pull request #167: [MRESOLVER-252] Make LRM path composition reusable
cstamas commented on code in PR #167: URL: https://github.com/apache/maven-resolver/pull/167#discussion_r851221360 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/ArtifactPathComposer.java: ## @@ -0,0 +1,53 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; + +/** + * Composes {@link Artifact} and {@link Metadata} relative paths to be used in + * {@link org.eclipse.aether.repository.LocalRepositoryManager}. + * + * @since TBD + */ +public interface ArtifactPathComposer Review Comment: LocalPathComposer? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-resolver] cstamas commented on pull request #167: [MRESOLVER-252] Make LRM path composition reusable
cstamas commented on PR #167: URL: https://github.com/apache/maven-resolver/pull/167#issuecomment-1100047719 General remark: code is unchanged, is just "moved out" from simple lrm. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-resolver] michael-o commented on pull request #168: [MRESOLVER-253] Dynamic LRM
michael-o commented on PR #168: URL: https://github.com/apache/maven-resolver/pull/168#issuecomment-1100047245 Nice work, will review today. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-resolver] michael-o commented on a diff in pull request #167: [MRESOLVER-252] Make LRM path composition reusable
michael-o commented on code in PR #167: URL: https://github.com/apache/maven-resolver/pull/167#discussion_r851214827 ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/ArtifactPathComposer.java: ## @@ -0,0 +1,53 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; + +/** + * Composes {@link Artifact} and {@link Metadata} relative paths to be used in + * {@link org.eclipse.aether.repository.LocalRepositoryManager}. + * + * @since TBD + */ +public interface ArtifactPathComposer Review Comment: The interface name confuses me because the actual methods handle both, but the name does not imply it. ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/ArtifactPathComposer.java: ## @@ -0,0 +1,53 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; + +/** + * Composes {@link Artifact} and {@link Metadata} relative paths to be used in + * {@link org.eclipse.aether.repository.LocalRepositoryManager}. + * + * @since TBD + */ +public interface ArtifactPathComposer +{ +/** + * Gets the relative path for a locally installed (local=true) or remotely cached (local=false) artifact. + * + * @param artifact The artifact for which to determine the path, must not be {@code null}. + * @param local{@code true} if artifact is locally installed or {@code false} if artifact is remotely cached. + * @return A relative path representing artifact path. + */ +String getPathForArtifact( Artifact artifact, boolean local ); Review Comment: I am confused why the second arg isn't repoId as well?! ## maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/ArtifactPathComposer.java: ## @@ -0,0 +1,53 @@ +package org.eclipse.aether.internal.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.eclipse.aether.artifact.Artifact; +import org.eclipse.aether.metadata.Metadata; + +/** + * Composes {@link Artifact} and {@link Metadata} relative paths to be used in + * {@link org.eclipse.aether.repository.LocalRepositoryManager}. + * + * @since TBD + */ +public interface ArtifactPathComposer +{ +/** + * Gets the relative path for a locally installed (local=true) or remotely cached (local=false) artifact. + * + * @param artifact The artifact for which to determine the path, must not be {@code null}. + * @param loc
[GitHub] [maven-release] dependabot[bot] commented on pull request #97: Bump plexus-interactivity-api from 1.0-alpha-6 to 1.1
dependabot[bot] commented on PR #97: URL: https://github.com/apache/maven-release/pull/97#issuecomment-1100038672 OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting `@dependabot ignore this major version` or `@dependabot ignore this minor version`. You can also ignore all major, minor, or patch releases for a dependency by adding an [`ignore` condition](https://docs.github.com/en/code-security/supply-chain-security/configuration-options-for-dependency-updates#ignore) with the desired `update_types` to your config file. If you change your mind, just re-open this PR and I'll resolve any conflicts on it. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-release] michael-o closed pull request #97: Bump plexus-interactivity-api from 1.0-alpha-6 to 1.1
michael-o closed pull request #97: Bump plexus-interactivity-api from 1.0-alpha-6 to 1.1 URL: https://github.com/apache/maven-release/pull/97 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-release] michael-o commented on pull request #97: Bump plexus-interactivity-api from 1.0-alpha-6 to 1.1
michael-o commented on PR #97: URL: https://github.com/apache/maven-release/pull/97#issuecomment-1100038662 Already superseded. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-release] michael-o opened a new pull request, #106: [MRELEASE-1084] Upgrade Maven to 3.5.4
michael-o opened a new pull request, #106: URL: https://github.com/apache/maven-release/pull/106 @cstamas This one is incomplete, need to swap classes. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Created] (MRELEASE-1084) Upgrade Maven to 3.5.4
Michael Osipov created MRELEASE-1084: Summary: Upgrade Maven to 3.5.4 Key: MRELEASE-1084 URL: https://issues.apache.org/jira/browse/MRELEASE-1084 Project: Maven Release Plugin Issue Type: Task Reporter: Michael Osipov Assignee: Michael Osipov Fix For: 3.0.0-M6 -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Created] (MRESOLVER-253) Dynamic prefixes for LRM
Tamás Cservenák created MRESOLVER-253: - Summary: Dynamic prefixes for LRM Key: MRESOLVER-253 URL: https://issues.apache.org/jira/browse/MRESOLVER-253 Project: Maven Resolver Issue Type: Task Components: Resolver Reporter: Tamás Cservenák Enhances existing "enhanced" LRM (local repository manager) with "dynamic prefix". Default behaviour is not changed (uses NOOP composer). The point in change is that it introduces a "composer", that is composing LRM path prefix, and is able to apply different strategies, and split local repository into "local" (locally built and installed) and "remote" (downloaded from remote, cache really), etc. There are 3 composers, but they are extensible (just implement new `DynamicLocalRepositoryManagerFactory` component): * `noop` - makes enhanced LRM behave exactly same as before, this is the default composer. * `split` - splits by local and remote release/snapshot * `split-repository` - as split but factors in remote repoId as well, basically splits cache by origin -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Updated] (MRESOLVER-252) Make LRM path composition reusable
[ https://issues.apache.org/jira/browse/MRESOLVER-252?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tamás Cservenák updated MRESOLVER-252: -- Description: LocalRepositoryManager path composition was enclosed into SimpleLocalRepositoryManager in not-quite reusable manner. Make it reusable, by making it into a component. Currently FileProvidedChecksumsSource was reusing local paths, is adjusted now. Also, make LRM implementations more encapsulated and clear up many ctors leaving only one for simplicity. was:The artifact and metadata path composition for LRM (local repository manager) is encapsulated in Simple LRM, and is not reusable. Make it reusable. > Make LRM path composition reusable > -- > > Key: MRESOLVER-252 > URL: https://issues.apache.org/jira/browse/MRESOLVER-252 > Project: Maven Resolver > Issue Type: Task > Components: Resolver >Reporter: Tamás Cservenák >Priority: Major > > LocalRepositoryManager path composition was enclosed > into SimpleLocalRepositoryManager in not-quite reusable > manner. Make it reusable, by making it into a component. > Currently FileProvidedChecksumsSource was reusing local > paths, is adjusted now. > Also, make LRM implementations more encapsulated and > clear up many ctors leaving only one for simplicity. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Created] (MRESOLVER-252) Make LRM path composition reusable
Tamás Cservenák created MRESOLVER-252: - Summary: Make LRM path composition reusable Key: MRESOLVER-252 URL: https://issues.apache.org/jira/browse/MRESOLVER-252 Project: Maven Resolver Issue Type: Task Components: Resolver Reporter: Tamás Cservenák The artifact and metadata path composition for LRM (local repository manager) is encapsulated in Simple LRM, and is not reusable. Make it reusable. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [maven-resolver] michael-o commented on a diff in pull request #169: Reword warning on site
michael-o commented on code in PR #169: URL: https://github.com/apache/maven-resolver/pull/169#discussion_r851206362 ## src/site/xdoc/index.xml: ## @@ -29,7 +29,7 @@ - Since version 1.7.0 Maven Resolver requires Maven 4.0.0-alpha-1 or newer to run. For a Maven 3.8.x compatible version read here. + Since version 1.7.0 Maven Resolver requires Java 8 to run. For a Maven 3.8.x (Java 7) compatible version read here. Review Comment: If you read the guide you will understand that my branch actually upgrades Maven 3.8.x to Java 8. I would just remove `(Java 7)`. That's it. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [maven-resolver] cstamas commented on a diff in pull request #169: Reword warning on site
cstamas commented on code in PR #169: URL: https://github.com/apache/maven-resolver/pull/169#discussion_r851205803 ## src/site/xdoc/index.xml: ## @@ -29,7 +29,7 @@ - Since version 1.7.0 Maven Resolver requires Maven 4.0.0-alpha-1 or newer to run. For a Maven 3.8.x compatible version read here. + Since version 1.7.0 Maven Resolver requires Java 8 to run. For a Maven 3.8.x (Java 7) compatible version read here. Review Comment: ? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Commented] (MRELEASE-1083) Upgrade Maven Plugin Plugin to 3.6.4
[ https://issues.apache.org/jira/browse/MRELEASE-1083?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522781#comment-17522781 ] Hudson commented on MRELEASE-1083: -- Build succeeded in Jenkins: Maven » Maven TLP » maven-release » master #11 See https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven-release/job/master/11/ > Upgrade Maven Plugin Plugin to 3.6.4 > > > Key: MRELEASE-1083 > URL: https://issues.apache.org/jira/browse/MRELEASE-1083 > Project: Maven Release Plugin > Issue Type: Dependency upgrade >Reporter: Michael Osipov >Assignee: Michael Osipov >Priority: Major > Fix For: 3.0.0-M6 > > -- This message was sent by Atlassian Jira (v8.20.1#820001)