[jira] [Commented] (SUREFIRE-1432) trimStackTrace = false by default

2023-04-19 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/SUREFIRE-1432?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17714051#comment-17714051
 ] 

Jesse Glick commented on SUREFIRE-1432:
---

[~ste...@apache.org] how would defaulting {{trimStackTrace}} to {{false}} 
_remove_ the ability to the get detailed results from test failures? In certain 
cases (depending on the sort of application) it _restores_ that ability. 
Setting it to {{true}} is fine if you know from experience that in your 
application domain, test framework, etc. the trimmed lines will in fact be 
irrelevant, and you want to make the root cause easier to spot instantly 
without distractions.

> trimStackTrace = false by default
> -
>
> Key: SUREFIRE-1432
> URL: https://issues.apache.org/jira/browse/SUREFIRE-1432
> Project: Maven Surefire
>  Issue Type: Bug
>  Components: Maven Failsafe Plugin, Maven Surefire Plugin
>Reporter: Tibor Digana
>Assignee: Tibor Digana
>Priority: Major
> Fix For: 3.0.0-M6
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> *New description:*
> Currently, the default value of the config parameter _trimStackTrace_ is set 
> to _true_. This fix changes the default value.
> *Old description:*
> Specify {{StackTraceInterpreterExtension}} abstract class with constructor 
> parameter {{boolean trim}} and protected getter for {{trim}}. Single public 
> method {{interpret(context): String}}.
> DefaultStackTraceImpl - current implementation that trimmed trace prints only 
> test class
> SmartStackTraceImpl - full trace or the following if trimmed (for error):
> java.lang.NullPointerException: msg
> o.a.s.m.xyz.ExceptionThrownFromHereClass (three classes here max.)
> o.a.s.m.NestedStackTraceInTheSamePackage
> o.a.s.m.NestedStackTraceInTheSamePackage
> ...
> o.a.s.m.SomeTestInSamePackageTest
> o.a.s.m.SomeTestInSamePackageTest
> (for failure - assertion failed - only this: )
> SomeAssertionError: msg
> o.a.s.m.SomeTestInSamePackageTest
> o.a.s.m.SomeTestInSamePackageTest
> Here is brief package displayed or full Java package if totally different 
> from package in test.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (SUREFIRE-2087) rerunFailingTestsCount incorrectly marks failed parametrized test as pass

2023-01-19 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/SUREFIRE-2087?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17678733#comment-17678733
 ] 

Jesse Glick commented on SUREFIRE-2087:
---

While a full fix would of course be to rerun parameterized tests as expected, I 
think it would suffice in the interim to just disable the rerun feature on 
parameterized tests, if that is easier to implement. It would certainly be 
better than pretending your test suite passes when in fact you have introduced 
a regression, which for a test runner is a critical defect.

> rerunFailingTestsCount incorrectly marks failed parametrized test as pass
> -
>
> Key: SUREFIRE-2087
> URL: https://issues.apache.org/jira/browse/SUREFIRE-2087
> Project: Maven Surefire
>  Issue Type: Bug
>Affects Versions: 3.0.0-M4
>Reporter: Ramanan Rajendran
>Priority: Major
>
> rerunFailingTestsCount is not working as expected with junit5 
> `@ParameterizedTest` 
> If 1st iteration of the test passes and the 2nd one fails, it still marks the 
> test as flaky passed. 
> Eg: In the following run, iteration 1 with input A passed but iteration 2 
> with input B failed. Iteration 2 was rerun 2 times and failed in all the 
> attempts. Instead of failing TestA, it's marked as flaky giving an overall 
> pass for the test suite. I believe it's using the Run 1 PASS as a gate to 
> mark the whole test as a pass. 
>  
> [INFO]  Run 1: PASS
> [ERROR]  Run 2: TestA.iteration2:101 1 expectation failed.
> Expected status code <400> doesn't match actual status code <401>.
> [ERROR]  Run 3: TestA.iteration2:101 1 expectation failed.
> Expected status code <400> doesn't match actual status code <401>.
> [ERROR]  Run 4: TestA.iteration2:101 1 expectation failed.
>  <400> doesn't match actual status code <401>.
>  
> Tests run: 23, Failures: 0, Errors: 0, Skipped: 2, Flakes: 1



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (MSHADE-323) Flatten Maven Plugin conflicts with Maven Shade Plugin

2022-09-01 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/MSHADE-323?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17599113#comment-17599113
 ] 

Jesse Glick commented on MSHADE-323:


https://github.com/mojohaus/flatten-maven-plugin/releases/tag/flatten-maven-plugin-1.3.0

> Flatten Maven Plugin conflicts with Maven Shade Plugin
> --
>
> Key: MSHADE-323
> URL: https://issues.apache.org/jira/browse/MSHADE-323
> Project: Maven Shade Plugin
>  Issue Type: Bug
>Reporter: lakunma
>Priority: Minor
>
> When using Flatten Maven Plugin in the same project with Maven Shade Plugin 
> then the dependency reduced POM is _not_ flattened.
> What i encountered that having flatten plugin configured according to 
> [https://maven.apache.org/maven-ci-friendly.html], and having shade plugin 
> configured with the default settings to produce uber jar the ${revision} 
> variable remains and gets installed/deployed within the final pom, thus 
> making the pom in the repository invalid.
> It seems that both plugins transform original pom. And then what gets 
> installed in the last one, which is the 'shades' one. I'm not sure that's a 
> bug (in a sense that it is shade's fault).
> See also [https://github.com/mojohaus/flatten-maven-plugin/issues/100]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (SUREFIRE-2058) Corrupted STDOUT by directly writing to native stream in forked JVM 1 with UTF-8 console logging

2022-06-13 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/SUREFIRE-2058?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17553669#comment-17553669
 ] 

Jesse Glick commented on SUREFIRE-2058:
---

I was able to confirm that M7 fixes at least one variety of the stream 
corruption problem mentioned in the plugin FAQ. 
([details|https://github.com/jenkinsci/plugin-pom/pull/557#issuecomment-1154075116])
 Thanks!

> Corrupted STDOUT by directly writing to native stream in forked JVM 1 with 
> UTF-8 console logging
> 
>
> Key: SUREFIRE-2058
> URL: https://issues.apache.org/jira/browse/SUREFIRE-2058
> Project: Maven Surefire
>  Issue Type: Bug
>  Components: JUnit 5.x support, Maven Surefire Plugin
>Affects Versions: 3.0.0-M6
>Reporter: Zoltan Meze
>Assignee: Tibor Digana
>Priority: Blocker
> Fix For: 3.0.0-M7
>
>
>  With 3.0.0-M6 surefire and slf4j + logback, most test runs end up with:
> {code:java}
> [WARNING] Corrupted channel by directly writing to native stream in forked 
> JVM 1. {code}
> This only affects *3.0.0-M6* (3.0.0-M5 version is working fine in test 
> project).
>  
> After some digging, there are two different scenarios (most likely caused by 
> the same issue):
>  * 2-byte character at position 1023 (or N * 1024 - 1) in log message is 
> causing the following warning
> {code:java}
> [WARNING] Corrupted channel by directly writing to native stream in forked 
> JVM 1.
> {code}
> To reproduce this issue logback (with slf4j) should be used. 
> Not able to reproduce with System.out.println.
>  * 4-byte character at position 1023 (or N * 1024 - 1) in log message.
> Can be reproduced with System.out.println (logback not required in this case).
> This blocks surefire entirely at (from jstack):
> {code:java}
> "fork-1-event-thread" #30 daemon prio=5 os_prio=0 cpu=32350.09ms 
> elapsed=32.94s tid=0x7ff8292d7800 nid=0x3caef runnable  
> [0x7ff7876f6000]
>java.lang.Thread.State: RUNNABLE
>   at 
> org.apache.maven.surefire.api.stream.AbstractStreamDecoder.decodeString(AbstractStreamDecoder.java:350)
>   at 
> org.apache.maven.surefire.api.stream.AbstractStreamDecoder.readString(AbstractStreamDecoder.java:322)
>   at 
> org.apache.maven.surefire.api.stream.AbstractStreamDecoder.readString(AbstractStreamDecoder.java:196)
>   at 
> org.apache.maven.surefire.stream.EventDecoder.decode(EventDecoder.java:176)
>   at 
> org.apache.maven.plugin.surefire.extensions.EventConsumerThread.run(EventConsumerThread.java:73)
> {code}
>  
> Project with reproducible tests (for both scenarios, more in README):
> [https://github.com/zoltanmeze/surefire-corrupted-channel]
>  
> One workaround on M6 for now is to use different charset (instead of default 
> UTF-8) or limit message size.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)


[jira] [Commented] (MRESOLVER-253) Dynamic prefixes for LRM

2022-04-25 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/MRESOLVER-253?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17527568#comment-17527568
 ] 

Jesse Glick commented on MRESOLVER-253:
---

This sounds promising. Is 
https://github.com/apache/maven-resolver/blob/master/src/site/markdown/local-repository.md
 + 
https://github.com/apache/maven-resolver/blob/master/src/site/markdown/configuration.md
 intended to be user documentation, or is something higher-level planned for 
the main Maven site?

> Dynamic prefixes for LRM
> 
>
> Key: MRESOLVER-253
> URL: https://issues.apache.org/jira/browse/MRESOLVER-253
> Project: Maven Resolver
>  Issue Type: New Feature
>  Components: Resolver
>Reporter: Tamás Cservenák
>Assignee: Tamás Cservenák
>Priority: Major
> Fix For: 1.8.1
>
>
> Enhances existing "enhanced" LRM (local repository manager) with "prefix" 
> from from path prefix composer. Default behavior is not changed (will not use 
> prefix, local repository will work as before).
> The point in change is that it introduce a "composer", that is composing LRM 
> path prefixes, and is able to apply different strategies, and split local 
> repository into "installed" (locally built and installed) and "cached" 
> (downloaded from remote), etc.
> There are several composer options out of the box:
>  * split between "cached" and locally "installed" artifacts
>  * split "cached" artifacts based on their origin (remote repository)
>  * split between "release" and "snapshot" versioned artifacts
> These properties can all be configured via resolver "configuration", 
> essentially via session configuration.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)


[jira] [Commented] (MCOMPILER-485) Incorrect internal string format in generated package-info.class files on Windows

2022-03-07 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/MCOMPILER-485?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17502454#comment-17502454
 ] 

Jesse Glick commented on MCOMPILER-485:
---

Will there be some notification when the fix is released to Central?

> Incorrect internal string format in generated package-info.class files on 
> Windows
> -
>
> Key: MCOMPILER-485
> URL: https://issues.apache.org/jira/browse/MCOMPILER-485
> Project: Maven Compiler Plugin
>  Issue Type: Bug
>Affects Versions: 3.10.0
> Environment: Windows, or any operating system with a file separator 
> character other than a forward slash
>Reporter: Daniel Widdis
>Assignee: Olivier Lamy
>Priority: Major
> Fix For: 3.11.0
>
>
> In 3.10.0, a new feature to generate package-info classes was added in 
> [[MCOMPILER-205] |https://github.com/apache/maven-compiler-plugin/pull/88]
> Unfortunately, the binary class file is incorrectly generated using Java's 
> file toString() which uses a platform dependent file separator character: on 
> Windows, these Strings contain a backslash.  See [this 
> line|https://github.com/gnodet/maven-compiler-plugin/blob/8521ef8fdd12cc0b85c1ace17114ed3d3ffd0b0c/src/main/java/org/apache/maven/plugin/compiler/AbstractCompilerMojo.java#L1356]
>  which passes the platform-dependent file name (minus the root path and .java 
> extension) to the ClassWriter.
> The Java class file specification (4.2.1) specifies the internal format: "In 
> this internal form, the ASCII periods (.) that normally separate the 
> identifiers which make up the binary name are replaced by ASCII forward 
> slashes (/)."
> This invalid class file format causes problems in downstream plugins, e.g.,
>  * The bnd-maven-plugin fails with an error: Classes found in the wrong 
> directory: 
> \{oshi/jna/platform/unix/package-info.class=oshi\jna\platform\unix\package-info
>  ... (and hundreds more) ... }
>  * The JDK's 
> [classFileParser|https://github.com/openjdk/jdk17/blob/74007890bb9a3fa3a65683a3f480e399f2b1a0b6/src/hotspot/share/classfile/classFileParser.cpp#L5797]
>  will throw java.lang.NoClassDefFoundError: 
> com\puppycrawl\tools\checkstyle\ant\package-info (wrong name: 
> com/puppycrawl/tools/checkstyle/ant/package-info
> Steps to reproduce:
>  # Perform a build on any Windows machine using maven-compiler-plugin 3.10.0
>  # Inspect any of the generated package-info.class files in target/classes 
> using a text editor
> Expected behavior:
> Internal strings representing package names use forward slashes
> Observed behavior:
> Internal strings representing package names use backward slashes
>  



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Commented] (SUREFIRE-1911) Groovy-based JUnit 4 tests no longer run w/ 5 in classpath

2022-01-03 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/SUREFIRE-1911?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17468167#comment-17468167
 ] 

Jesse Glick commented on SUREFIRE-1911:
---

Good to know that is a resolution once the problem is noticed, but it is still 
very dangerous for the mojo to silently decline to run any tests.

> Groovy-based JUnit 4 tests no longer run w/ 5 in classpath
> --
>
> Key: SUREFIRE-1911
> URL: https://issues.apache.org/jira/browse/SUREFIRE-1911
> Project: Maven Surefire
>  Issue Type: Bug
>  Components: Junit 4.x support, Maven Surefire Plugin
>Affects Versions: 3.0.0-M5
>Reporter: Jesse Glick
>Assignee: Tibor Digana
>Priority: Major
>  Labels: regression
>
> Using Maven 3.8.1 and JDK 8, 
> https://github.com/jenkins-infra/pipeline-library/commit/48fc69bdd3f7e3adbebea76b8bf68edfe5ed3e32
>  causes {{mvn test}} to not do anything:
> {code:none}
> Tests run: 0, Failures: 0, Errors: 0, Skipped: 0
> {code}
> In 3.0.0-M3, or for that matter 3.0.0-M4, this runs a variety of tests as 
> expected. {{git bisect}} points to the fix of SUREFIRE-1787 as the culprit:
> {code:none}
> d5bbb3f9ae37ff5ad2bb7e8b3c11d1f24ea6f041 is the first bad commit
> commit d5bbb3f9ae37ff5ad2bb7e8b3c11d1f24ea6f041
> Author: tibordigana 
> Date:   Sat May 2 13:08:16 2020 +0200
> [SUREFIRE-1787] Support multiple runners (JUnit4, TestNG, other) and 
> their API in JUnit5 Provider
> {code}



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Commented] (SUREFIRE-1911) Groovy-based JUnit 4 tests no longer run w/ 5 in classpath

2021-09-07 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/SUREFIRE-1911?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17411203#comment-17411203
 ] 

Jesse Glick commented on SUREFIRE-1911:
---

Struck again, this time in Jenkins core, and apparently causing Java-based 
JUnit 4 tests to be silently skipped:
* https://github.com/jnr/jnr-ffi/pull/269
* https://github.com/jenkinsci/jenkins/pull/5703
* https://github.com/jenkinsci/jenkins/pull/5712
* https://github.com/jenkinsci/jenkins/pull/5713

> Groovy-based JUnit 4 tests no longer run w/ 5 in classpath
> --
>
> Key: SUREFIRE-1911
> URL: https://issues.apache.org/jira/browse/SUREFIRE-1911
> Project: Maven Surefire
>  Issue Type: Bug
>  Components: Junit 4.x support, Maven Surefire Plugin
>Affects Versions: 3.0.0-M5
>Reporter: Jesse Glick
>Assignee: Tibor Digana
>Priority: Major
>  Labels: regression
>
> Using Maven 3.8.1 and JDK 8, 
> https://github.com/jenkins-infra/pipeline-library/commit/48fc69bdd3f7e3adbebea76b8bf68edfe5ed3e32
>  causes {{mvn test}} to not do anything:
> {code:none}
> Tests run: 0, Failures: 0, Errors: 0, Skipped: 0
> {code}
> In 3.0.0-M3, or for that matter 3.0.0-M4, this runs a variety of tests as 
> expected. {{git bisect}} points to the fix of SUREFIRE-1787 as the culprit:
> {code:none}
> d5bbb3f9ae37ff5ad2bb7e8b3c11d1f24ea6f041 is the first bad commit
> commit d5bbb3f9ae37ff5ad2bb7e8b3c11d1f24ea6f041
> Author: tibordigana 
> Date:   Sat May 2 13:08:16 2020 +0200
> [SUREFIRE-1787] Support multiple runners (JUnit4, TestNG, other) and 
> their API in JUnit5 Provider
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (MENFORCER-298) bannedDependencies can break compilation against a timestamped snapshot

2021-07-22 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/MENFORCER-298?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17385837#comment-17385837
 ] 

Jesse Glick commented on MENFORCER-298:
---

I managed to work around that by patching 
https://github.com/jenkinsci/pom/commit/f07a17276ba3d943a2b2550b22231b0163d6a9d1
 with

{code:xml}
diff --git pom.xml pom.xml
index 56911f6..0afd265 100644
--- pom.xml
+++ pom.xml
@@ -611,36 +611,6 @@
 
   [1.${java.level}.0,]
 
-
-
-  1.${java.level}
-  
-test
-  
-  
-
-com.google.code.findbugs:annotations
-  
-  
-
 
   No Snapshots Allowed For Release Versions
   true
{code}

({{requireUpperBoundDeps}} also failed here, for a different reason) and then 
using the patched parent

{code:xml}
diff --git pom.xml pom.xml
index cbbdc1e0df..68b6889ce1 100644
--- pom.xml
+++ pom.xml
@@ -28,7 +28,7 @@ THE SOFTWARE.
   
 org.jenkins-ci
 jenkins
-1.39
+1.39-SNAPSHOT
   
 
   org.jenkins-ci.main
{code}

With that, the build succeeds, and switching back to {{3.0.0-M1}} for Enforcer 
causes it to get a compilation error again, all suggesting that MENFORCER-277 
indeed worked.

> bannedDependencies can break compilation against a timestamped snapshot
> ---
>
> Key: MENFORCER-298
> URL: https://issues.apache.org/jira/browse/MENFORCER-298
> Project: Maven Enforcer Plugin
>  Issue Type: Bug
>  Components: Standard Rules
>Affects Versions: 3.0.0-M1, 3.0.0-M3
>Reporter: Jesse Glick
>Assignee: Robert Scholte
>Priority: Major
>
> While working heavily with timestamped snapshots across repositories 
> (reactors) I found occasional build errors suggesting that 
> {{maven-compiler-plugin}} was picking up the wrong version of a dependency. 
> To reproduce, using say Maven 3.5.2:
> {code:none}
> git clone https://github.com/jenkinsci/jenkins
> cd jenkins
> git checkout e2c1ae15a3bc6a9e1dcde0bc139b34d2c5812214
> mvn -DskipTests -am -pl core clean install
> {code}
> Compilation will fail with some errors like
> {code:none}
> [ERROR] 
> .../jenkins/core/src/main/java/jenkins/security/ClassFilterImpl.java:[77,19] 
> error: cannot find symbol
> [ERROR]   symbol:   method setDefault(ClassFilterImpl)
> [ERROR]   location: class ClassFilter
> {code}
> What is going on here is that [the artifact 
> repository|http://repo.jenkins-ci.org/public/org/jenkins-ci/main/remoting/3.15-SNAPSHOT/]
>  contains various timestamped snapshots for this base version of 
> {{remoting}}. The {{jenkins}} commit requests the {{-3}} snapshot in its 
> {{pom.xml}}; the newest currently available is {{-10}}, which represents an 
> unrelated branch. The compiler error happens when 
> {{jenkins/core/src/main/java/}} is compiled against the {{-10}} artifact.
> Now {{MavenITmng4189UniqueVersionSnapshotTest}} in 
> {{maven-integration-testing}} verifies that the compiler classpath in such 
> cases is correct, and in fact you can patch the IT to actually run the 
> compiler and it will work as expected: Maven will copy the requested 
> timestamped snapshot artifacts to the corresponding base versions, then 
> return those from {{MavenProject.getCompileClasspathElements}}, as [this 
> blog|http://blog.sonatype.com/2009/12/maven-dependency-resolution-a-repository-perspective/]
>  says it will (without further explanation). Yet it breaks in {{jenkins}}.
> I managed to narrow this down to the fact that {{jenkins}} used the 
> {{bannedDependencies}} Enforcer rule. If it uses only, say, 
> {{}}, then there is no error. But running {{bannedDependencies}} 
> changes the behavior of compilation (even though the {{enforce}} mojo 
> passes): the {{-10}} artifacts ({{pom}} and {{jar}}) are downloaded, and the 
> base artifacts (esp. {{remoting-3.15-SNAPSHOT.jar}}) are overwritten with the 
> {{-10}} versions, not the {{-3}} versions as expected. By patching 
> {{BannedDependencies}} I found that this problem occurs iff 
> {{buildDependencyGraph}} is called. By adding
> {code}
> System.setSecurityManager( new SecurityManager()
> {
> @Override
> public void checkWrite( String file )
> {
> if ( file.contains( "remoting" ) )
> {
> System.err.println( file );
> Thread.dumpStack();
> }
> }
> @Override
> public void checkPermission( Permission perm )
> {
> }
> }
> );
> {code}
> I found this stack trace:
> {code:none}
> at java.io.FileOutputStream.(FileOutputStream.java:200)
> at java.io.FileOutputStream.(FileOutputStream.java:162)
> at 
> 

[jira] [Commented] (MENFORCER-298) bannedDependencies can break compilation against a timestamped snapshot

2021-07-22 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/MENFORCER-298?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17385831#comment-17385831
 ] 

Jesse Glick commented on MENFORCER-298:
---

My original test case still reproduces the bug in Maven 3.8.1 given

{code:xml}
diff --git pom.xml pom.xml
index cbbdc1e0df..f92cdfe724 100644
--- pom.xml
+++ pom.xml
@@ -112,7 +112,7 @@ THE SOFTWARE.
   
 
   repo.jenkins-ci.org
-  http://repo.jenkins-ci.org/public/
+  https://repo.jenkins-ci.org/public/
   
 
   
@@ -120,7 +120,7 @@ THE SOFTWARE.
   
 
   repo.jenkins-ci.org
-  http://repo.jenkins-ci.org/public/
+  https://repo.jenkins-ci.org/public/
 
   
{code}

I {{install}}’d a snapshot from 
https://github.com/apache/maven-enforcer/commit/ab53fd99607eb36554f2fd3af41847ad9568a5ed
 and tried

{code:xml}
@@ -575,6 +575,7 @@ THE SOFTWARE.
   
 org.apache.maven.plugins
 maven-enforcer-plugin
+3.0.0-M4-SNAPSHOT
   
 
 
{code}

but this failed with

{code:none}
[ERROR] Failed to execute goal 
org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M4-SNAPSHOT:enforce 
(display-info) on project pom: Unable to parse configuration of mojo 
org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M4-SNAPSHOT:enforce for 
parameter enforceBytecodeVersion: Cannot create instance of class 
org.apache.maven.plugins.enforcer.EnforceBytecodeVersion: 
org/apache/maven/shared/dependency/tree/DependencyTreeBuilderException: 
org.apache.maven.shared.dependency.tree.DependencyTreeBuilderException -> [Help 
1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal 
org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M4-SNAPSHOT:enforce 
(display-info) on project pom: Unable to parse configuration of mojo 
org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M4-SNAPSHOT:enforce for 
parameter enforceBytecodeVersion: Cannot create instance of class 
org.apache.maven.plugins.enforcer.EnforceBytecodeVersion
at org.apache.maven.lifecycle.internal.MojoExecutor.execute 
(MojoExecutor.java:215)
at …
Caused by: org.apache.maven.plugin.PluginConfigurationException: Unable to 
parse configuration of mojo 
org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M4-SNAPSHOT:enforce for 
parameter enforceBytecodeVersion: Cannot create instance of class 
org.apache.maven.plugins.enforcer.EnforceBytecodeVersion
at 
org.apache.maven.plugin.internal.DefaultMavenPluginManager.populatePluginFields 
(DefaultMavenPluginManager.java:665)
at …
Caused by: 
org.codehaus.plexus.component.configurator.ComponentConfigurationException: 
Cannot create instance of class 
org.apache.maven.plugins.enforcer.EnforceBytecodeVersion
at 
org.codehaus.plexus.component.configurator.converters.AbstractConfigurationConverter.instantiateObject
 (AbstractConfigurationConverter.java:151)
at …
Caused by: java.lang.NoClassDefFoundError: 
org/apache/maven/shared/dependency/tree/DependencyTreeBuilderException
at …
at java.lang.Class.newInstance (Class.java:412)
at 
org.codehaus.plexus.component.configurator.converters.AbstractConfigurationConverter.instantiateObject
 (AbstractConfigurationConverter.java:143)
at …
Caused by: java.lang.ClassNotFoundException: 
org.apache.maven.shared.dependency.tree.DependencyTreeBuilderException
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass 
(SelfFirstStrategy.java:50)
at org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass 
(ClassRealm.java:271)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass 
(ClassRealm.java:247)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass 
(ClassRealm.java:239)
at java.lang.Class.getDeclaredConstructors0 (Native Method)
at …
{code}

> bannedDependencies can break compilation against a timestamped snapshot
> ---
>
> Key: MENFORCER-298
> URL: https://issues.apache.org/jira/browse/MENFORCER-298
> Project: Maven Enforcer Plugin
>  Issue Type: Bug
>  Components: Standard Rules
>Affects Versions: 3.0.0-M1, 3.0.0-M3
>Reporter: Jesse Glick
>Assignee: Robert Scholte
>Priority: Major
>
> While working heavily with timestamped snapshots across repositories 
> (reactors) I found occasional build errors suggesting that 
> {{maven-compiler-plugin}} was picking up the wrong version of a dependency. 
> To reproduce, using say Maven 3.5.2:
> {code:none}
> git clone https://github.com/jenkinsci/jenkins
> cd jenkins
> git checkout e2c1ae15a3bc6a9e1dcde0bc139b34d2c5812214
> mvn -DskipTests -am -pl core clean install
> {code}
> Compilation will fail with some errors like
> {code:none}
> [ERROR] 
> .../jenkins/core/src/main/java/jenkins/security/ClassFilterImpl.java:[77,19] 
> error: cannot 

[jira] [Commented] (MNG-6380) Option -Dstyle.color=always doesn't force color output

2021-07-21 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/MNG-6380?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17385140#comment-17385140
 ] 

Jesse Glick commented on MNG-6380:
--

Seems to work in

{code:none}
Apache Maven 3.8.2-SNAPSHOT (c395ca976dc9eaed65dcdc0037508d1edbfb57f3)
{code}

> Option -Dstyle.color=always doesn't force color output
> --
>
> Key: MNG-6380
> URL: https://issues.apache.org/jira/browse/MNG-6380
> Project: Maven
>  Issue Type: Improvement
>Affects Versions: 3.5.3
>Reporter: Henning Hoefer
>Priority: Minor
>  Labels: workaround-exists
> Fix For: waiting-for-feedback
>
>
> When the output is not a TTY (e.g. on a CI server), the new option 
> {{-Dstyle.color=always}} doesn't work, because JAnsi itself is disabling its 
> color output.
> {code:bash}
> # OK, produces color:
> mvn -B -Dstyle.color=always package
> # FAIL, doesn't produce color:
> mvn -B -Dstyle.color=always package | less -R
> # WORKAROUND:
> MAVEN_OPTS=-Djansi.force=true mvn -B -Dstyle.color=always package | less -R
> {code}
> The {{-Dstyle.color=always}} option needs to imply {{-Djansi.force=true}} – 
> otherwise, "always" doesn't really mean always.
> The problem for the implementation is, that the JAnsi option needs to be set 
> as a system property way early during startup.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (SUREFIRE-1911) Groovy-based JUnit 4 tests no longer run w/ 5 in classpath

2021-05-17 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/SUREFIRE-1911?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17346381#comment-17346381
 ] 

Jesse Glick commented on SUREFIRE-1911:
---

{code:none}
$ mvn dependency:tree
…
[INFO] io.jenkins.infra:pipeline-library:jar:0.0.1
[INFO] +- org.codehaus.groovy:groovy-all:pom:3.0.7:test
…
[INFO] |  +- org.codehaus.groovy:groovy-test:jar:3.0.7:test
[INFO] |  |  \- junit:junit:jar:4.13.1:test
[INFO] |  | \- org.hamcrest:hamcrest-core:jar:1.3:test
[INFO] |  +- org.codehaus.groovy:groovy-test-junit5:jar:3.0.7:test
[INFO] |  |  +- org.junit.platform:junit-platform-launcher:jar:1.7.0:test
[INFO] |  |  |  \- org.junit.platform:junit-platform-engine:jar:1.7.0:test
[INFO] |  |  \- org.junit.jupiter:junit-jupiter-engine:jar:5.7.0:test
…
[INFO] +- org.junit.jupiter:junit-jupiter-api:jar:5.7.0:test
[INFO] |  +- org.apiguardian:apiguardian-api:jar:1.1.0:test
[INFO] |  +- org.opentest4j:opentest4j:jar:1.2.0:test
[INFO] |  \- org.junit.platform:junit-platform-commons:jar:1.7.0:test
…
{code}

> Groovy-based JUnit 4 tests no longer run w/ 5 in classpath
> --
>
> Key: SUREFIRE-1911
> URL: https://issues.apache.org/jira/browse/SUREFIRE-1911
> Project: Maven Surefire
>  Issue Type: Bug
>  Components: Junit 4.x support, Maven Surefire Plugin
>Affects Versions: 3.0.0-M5
>Reporter: Jesse Glick
>Assignee: Tibor Digana
>Priority: Major
>  Labels: regression
>
> Using Maven 3.8.1 and JDK 8, 
> https://github.com/jenkins-infra/pipeline-library/commit/48fc69bdd3f7e3adbebea76b8bf68edfe5ed3e32
>  causes {{mvn test}} to not do anything:
> {code:none}
> Tests run: 0, Failures: 0, Errors: 0, Skipped: 0
> {code}
> In 3.0.0-M3, or for that matter 3.0.0-M4, this runs a variety of tests as 
> expected. {{git bisect}} points to the fix of SUREFIRE-1787 as the culprit:
> {code:none}
> d5bbb3f9ae37ff5ad2bb7e8b3c11d1f24ea6f041 is the first bad commit
> commit d5bbb3f9ae37ff5ad2bb7e8b3c11d1f24ea6f041
> Author: tibordigana 
> Date:   Sat May 2 13:08:16 2020 +0200
> [SUREFIRE-1787] Support multiple runners (JUnit4, TestNG, other) and 
> their API in JUnit5 Provider
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (SUREFIRE-1787) Support multiple runners (JUnit4, TestNG, other) and their API in JUnit5 Provider

2021-04-29 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/SUREFIRE-1787?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17335809#comment-17335809
 ] 

Jesse Glick commented on SUREFIRE-1787:
---

Appears to have caused a regression: SUREFIRE-1911

> Support multiple runners (JUnit4, TestNG, other) and their API in JUnit5 
> Provider
> -
>
> Key: SUREFIRE-1787
> URL: https://issues.apache.org/jira/browse/SUREFIRE-1787
> Project: Maven Surefire
>  Issue Type: Improvement
>  Components: JUnit 5.x support, Maven Failsafe Plugin, Maven Surefire 
> Plugin
>Reporter: Tibor Digana
>Assignee: Tibor Digana
>Priority: Major
> Fix For: 3.0.0-M5
>
>




--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (SUREFIRE-1911) Groovy-based JUnit 4 tests no longer run w/ 5 in classpath

2021-04-29 Thread Jesse Glick (Jira)
Jesse Glick created SUREFIRE-1911:
-

 Summary: Groovy-based JUnit 4 tests no longer run w/ 5 in classpath
 Key: SUREFIRE-1911
 URL: https://issues.apache.org/jira/browse/SUREFIRE-1911
 Project: Maven Surefire
  Issue Type: Bug
  Components: Junit 4.x support, Maven Surefire Plugin
Affects Versions: 3.0.0-M5
Reporter: Jesse Glick


Using Maven 3.8.1 and JDK 8, 
https://github.com/jenkins-infra/pipeline-library/commit/48fc69bdd3f7e3adbebea76b8bf68edfe5ed3e32
 causes {{mvn test}} to not do anything:

{code:none}
Tests run: 0, Failures: 0, Errors: 0, Skipped: 0
{code}

In 3.0.0-M3, or for that matter 3.0.0-M4, this runs a variety of tests as 
expected. {{git bisect}} points to the fix of SUREFIRE-1787 as the culprit:

{code:none}
d5bbb3f9ae37ff5ad2bb7e8b3c11d1f24ea6f041 is the first bad commit
commit d5bbb3f9ae37ff5ad2bb7e8b3c11d1f24ea6f041
Author: tibordigana 
Date:   Sat May 2 13:08:16 2020 +0200

[SUREFIRE-1787] Support multiple runners (JUnit4, TestNG, other) and their 
API in JUnit5 Provider
{code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (ARCHETYPE-539) Maven archetype:generate hangs on retrieval of archetype-catalog.xml even on offline mode

2020-11-05 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/ARCHETYPE-539?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17227010#comment-17227010
 ] 

Jesse Glick commented on ARCHETYPE-539:
---

This is particular painful when a Nexus mirror is configured; for some reason 
seems to be much slower, taking ~2m to generate one project from archetype.

I would think that if the GAV are all defined, then this should work offline; 
and if the GA are defined, and {{version}} is set to {{LATEST}} or {{RELEASE}}, 
then it should merely need to download {{maven-metadata.xml}} for that GA. The 
full catalog should only be necessary if you are running in interactive mode 
and browsing available archetypes.

> Maven archetype:generate hangs on retrieval of archetype-catalog.xml even on 
> offline mode
> -
>
> Key: ARCHETYPE-539
> URL: https://issues.apache.org/jira/browse/ARCHETYPE-539
> Project: Maven Archetype
>  Issue Type: Bug
>  Components: Generator
>Affects Versions: 3.0.1
> Environment: macOS High Sierra v10.13.1
> java version "1.8.0_121"
> Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
> Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)
> Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 
> 2017-10-18T15:58:13+08:00)
> Maven home: /opt/maven/active
> Java version: 1.8.0_121, vendor: Oracle Corporation
> Java home: 
> /Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/jre
> Default locale: en_US, platform encoding: UTF-8
> OS name: "mac os x", version: "10.13.1", arch: "x86_64", family: "mac"
>Reporter: Franz Allan Valencia See
>Priority: Major
> Attachments: build.log
>
>
> *Steps to reproduce* 
> 1.a Have slow connection 
> 1.b.Alternatively, simulate slow connection with 
> [crapify|https://www.npmjs.com/package/crapify]
> 1.b.1. Install crapify - {{npm install crapify -g}}
> 1.b.2. Run crapify - {{crapify --port=5000 --speed=1 start}}
> 1.b.3. Configure {{~/.m2/settings.xml}} to use crapify
> {code:xml}
> 
> ...
>    
>        
>            crapify-proxy
>            true
>            http
>            localhost
>            5000
>        
>     
> ...
> {code}
>  
> 2. Execute 
> {code:bash}
> $ mvn archetype:generate -DgroupId=com.example -DartifactId=example 
> -Dversion=1.0-SNAPSHOT -o
> {code}
>   
> *Expected Behaviour:*
> The list of available archetypes would be shown to the user. 
> _Note: I believe in older versions, only the basic archetypes are shown like 
> quickstart_
>  
> *Actual Behaviour:*
> Maven command hangs in this last last line:
> {code:bash}
> [DEBUG] Searching for remote catalog: 
> https://repo.maven.apache.org/maven2/archetype-catalog.xml
> {code}
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (MNG-6976) --no-transfer-progress variant to diagnose download issue

2020-10-22 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/MNG-6976?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17219317#comment-17219317
 ] 

Jesse Glick commented on MNG-6976:
--

A custom Logback configuration does not seem like a reasonable solution. Need 
something short and documented; if not {{-ntp}} itself, then something equally 
straightforward. Any usage of Maven from CI really needs this.

Will think about offering a PR to Maven Resolver. Minimally, if some downloads 
are in flight yet there has been no output for a while, print the last message 
that _would_ have been printed had {{-ntp}} not been in use.

> --no-transfer-progress variant to diagnose download issue
> -
>
> Key: MNG-6976
> URL: https://issues.apache.org/jira/browse/MNG-6976
> Project: Maven
>  Issue Type: Improvement
>  Components: Command Line, Logging
>Affects Versions: 3.6.3
>Reporter: Jesse Glick
>Priority: Major
>
> {{-ntp}} is very welcome as a way to cut down on log spam. This is especially 
> significant in a CI environment where Maven is being run in a virgin 
> container/VM with no initial local repository, typically with a settings file 
> directing downloads to some local mirror: every {{mvn}} command's output 
> would otherwise be 99% transfer messages, making it very difficult to find 
> real messages in the middle.
> The problem comes if there is a serious delay or even hang in some transfer. 
> Without {{-ntp}}, you could guess that a build was stuck waiting for an 
> overloaded Nexus server or the like just by scanning a timestamped log file 
> and noticing that some big artifact had been requested but never served, or 
> that thousands of little artifacts are being served but take a second each, 
> etc. With {{-ntp}}, it is less obvious what is going wrong: there is no 
> information about which artifact download is stuck, what the URL of the 
> server it is stuck on is, or even whether Maven is waiting for a download at 
> all (perhaps it is doing something unrelated).
> Suggestions:
> * Amend {{-ntp}} (or introduce an argument or a variant) so that if a 
> particular artifact download is in progress for, say, 10s that a warning is 
> emitted with the download URL. Or, if a whole block of downloads during some 
> artifact resolution phase is taking more than, say, 5m, print a warning 
> summarizing the server(s) in use, the number of artifacts requested vs. 
> retrieved, etc.
> * Offer a convenient way to capture the sort of logging produced by {{-B}} 
> without {{-ntp}} (i.e., one line per artifact requested or retrieved) but 
> direct this to a file rather than the stdout/stderr of the {{mvn}} process, 
> so it does not overwhelm a CI log yet can be inspected on demand.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (SUREFIRE-1798) trimStackTrace should be false by default

2020-09-02 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/SUREFIRE-1798?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17189572#comment-17189572
 ] 

Jesse Glick commented on SUREFIRE-1798:
---

bq. pushing this change right now would mean that the behavior of configuration 
parameter would change. We have a big opportunity to use the version 3.0.0-M5 
in Maven 3.7.0.

Misleading I think. From what I can tell, the current default version in Maven 
is 2.12.4, which did trim stack traces by default but only above the test code: 
in the above example, lines below {{BaseSlackIntegrationTest.setUp}}. (The 
trimming actually seems to be broken in 2.12.4 at least on JUnit 4.13; fixed in 
2.13.) Still potentially missing some critical diagnostic information, but far 
less likely than the current (2.19+) behavior.

Therefore I would advise against such an upgrade until this issue is fixed, as 
it would make everyday test-driven development less usable by default.

> trimStackTrace should be false by default
> -
>
> Key: SUREFIRE-1798
> URL: https://issues.apache.org/jira/browse/SUREFIRE-1798
> Project: Maven Surefire
>  Issue Type: Task
>  Components: Maven Surefire Plugin
>Reporter: Romain Manni-Bucau
>Priority: Major
>
> True was intended to clean up the output but it always misses any useful data 
> so let's set an useful default



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Comment Edited] (SUREFIRE-1827) The console output is not flushed

2020-08-28 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/SUREFIRE-1827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17186787#comment-17186787
 ] 

Jesse Glick edited comment on SUREFIRE-1827 at 8/28/20, 8:08 PM:
-

According to {{git bisect}}, SUREFIRE-1658 is the source of the regression in 
3.0.0-M5.


was (Author: jgl...@netbeans.org):
According to {{git bisect}}, SUREFIRE-1658 is the source of the regression.

> The console output is not flushed
> -
>
> Key: SUREFIRE-1827
> URL: https://issues.apache.org/jira/browse/SUREFIRE-1827
> Project: Maven Surefire
>  Issue Type: Improvement
>  Components: Maven Failsafe Plugin, Maven Surefire Plugin, process 
> forking
>Reporter: Tibor Digana
>Priority: Major
> Fix For: 3.0.0-M6
>
>




--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (SUREFIRE-1827) The console output is not flushed

2020-08-28 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/SUREFIRE-1827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17186787#comment-17186787
 ] 

Jesse Glick commented on SUREFIRE-1827:
---

According to {{git bisect}}, SUREFIRE-1658 is the source of the regression.

> The console output is not flushed
> -
>
> Key: SUREFIRE-1827
> URL: https://issues.apache.org/jira/browse/SUREFIRE-1827
> Project: Maven Surefire
>  Issue Type: Improvement
>  Components: Maven Failsafe Plugin, Maven Surefire Plugin, process 
> forking
>Reporter: Tibor Digana
>Priority: Major
> Fix For: 3.0.0-M6
>
>




--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (SUREFIRE-1818) Surefire buffers log messages in memory instead of printing them out to the terminal which leads to OOM error.

2020-08-28 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/SUREFIRE-1818?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17186779#comment-17186779
 ] 

Jesse Glick commented on SUREFIRE-1818:
---

Sounds similar to SUREFIRE-1827.

> Surefire buffers log messages in memory instead of printing them out to the 
> terminal which leads to OOM error.
> --
>
> Key: SUREFIRE-1818
> URL: https://issues.apache.org/jira/browse/SUREFIRE-1818
> Project: Maven Surefire
>  Issue Type: Bug
>Affects Versions: 2.22.1
>Reporter: Anton Ermolenko
>Priority: Major
> Attachments: image-2020-07-11-18-57-41-164.png
>
>
> For unknown reason when running tests Surefire version 2.22.1 buffers logging 
> messages in memory in {{ConcurrentLinkedQueue}} which leads to 
> OutOfMemoryError when amount of logging messages is sufficiently large. If 
> amount of memory is big enough to hold those messages, Surefire will print 
> those log messages after running the tests.
> Downgrading to 2.18.1 resolves the issue and log messages appear on the 
> terminal without delay.
> While it's printing those messages the following stack trace can be observed:
> {code:java}
> "main" #1 prio=5 os_prio=0 tid=0x7f3ff400b000 nid=0x30adf runnable 
> [0x7f3ffb3d7000]
>java.lang.Thread.State: RUNNABLE
>   at java.io.FileOutputStream.writeBytes(Native Method)
>   at java.io.FileOutputStream.write(FileOutputStream.java:326)
>   at 
> java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
>   at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
>   - locked <0x0005cc251490> (a java.io.BufferedOutputStream)
>   at java.io.PrintStream.write(PrintStream.java:482)
>   - locked <0x0005cc251470> (a java.io.PrintStream)
>   at sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:221)
>   at sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:291)
>   at sun.nio.cs.StreamEncoder.flushBuffer(StreamEncoder.java:104)
>   - locked <0x0005cc2515b0> (a java.io.OutputStreamWriter)
>   at java.io.OutputStreamWriter.flushBuffer(OutputStreamWriter.java:185)
>   at java.io.PrintStream.write(PrintStream.java:527)
>   - locked <0x0005cc251470> (a java.io.PrintStream)
>   at java.io.PrintStream.print(PrintStream.java:583)
>   at 
> org.fusesource.jansi.FilterPrintStream.write(FilterPrintStream.java:99)
>   at 
> org.fusesource.jansi.FilterPrintStream.write(FilterPrintStream.java:107)
>   at 
> org.fusesource.jansi.FilterPrintStream.print(FilterPrintStream.java:156)
>   at 
> org.fusesource.jansi.FilterPrintStream.println(FilterPrintStream.java:231)
>   - locked <0x0005cc22b6d0> (a org.fusesource.jansi.AnsiConsole$2)
>   at org.slf4j.impl.SimpleLogger.write(SimpleLogger.java:318)
>   at org.slf4j.impl.SimpleLogger.log(SimpleLogger.java:295)
>   at org.slf4j.impl.SimpleLogger.warn(SimpleLogger.java:522)
>   at org.apache.maven.cli.logging.Slf4jLogger.warn(Slf4jLogger.java:74)
>   at 
> org.apache.maven.plugin.surefire.log.PluginConsoleLogger.warning(PluginConsoleLogger.java:92)
>   at 
> org.apache.maven.plugin.surefire.booterclient.ForkStarter$CloseableCloser.run(ForkStarter.java:203)
>   at 
> org.apache.maven.surefire.shade.org.apache.maven.shared.utils.cli.CommandLineUtils$1.call(CommandLineUtils.java:282)
>   at 
> org.apache.maven.plugin.surefire.booterclient.ForkStarter.fork(ForkStarter.java:614)
>   at 
> org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:282)
>   at 
> org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:245)
>   at 
> org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeProvider(AbstractSurefireMojo.java:1183)
>   at 
> org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeAfterPreconditionsChecked(AbstractSurefireMojo.java:1011)
>   at 
> org.apache.maven.plugin.surefire.AbstractSurefireMojo.execute(AbstractSurefireMojo.java:857)
>   at 
> org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137)
>   at 
> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
>   at 
> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154)
>   at 
> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146)
>   at 
> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
>   at 
> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
>   at 
> 

[jira] [Commented] (SUREFIRE-1798) trimStackTrace should be false by default

2020-08-28 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/SUREFIRE-1798?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17186778#comment-17186778
 ] 

Jesse Glick commented on SUREFIRE-1798:
---

Argued before in SUREFIRE-1226.

> trimStackTrace should be false by default
> -
>
> Key: SUREFIRE-1798
> URL: https://issues.apache.org/jira/browse/SUREFIRE-1798
> Project: Maven Surefire
>  Issue Type: Task
>  Components: Maven Surefire Plugin
>Reporter: Romain Manni-Bucau
>Priority: Major
>
> True was intended to clean up the output but it always misses any useful data 
> so let's set an useful default



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (MNG-6976) --no-transfer-progress variant to diagnose download issue

2020-08-07 Thread Jesse Glick (Jira)
Jesse Glick created MNG-6976:


 Summary: --no-transfer-progress variant to diagnose download issue
 Key: MNG-6976
 URL: https://issues.apache.org/jira/browse/MNG-6976
 Project: Maven
  Issue Type: Improvement
  Components: Command Line, Logging
Affects Versions: 3.6.3
Reporter: Jesse Glick


{{-ntp}} is very welcome as a way to cut down on log spam. This is especially 
significant in a CI environment where Maven is being run in a virgin 
container/VM with no initial local repository, typically with a settings file 
directing downloads to some local mirror: every {{mvn}} command's output would 
otherwise be 99% transfer messages, making it very difficult to find real 
messages in the middle.

The problem comes if there is a serious delay or even hang in some transfer. 
Without {{-ntp}}, you could guess that a build was stuck waiting for an 
overloaded Nexus server or the like just by scanning a timestamped log file and 
noticing that some big artifact had been requested but never served, or that 
thousands of little artifacts are being served but take a second each, etc. 
With {{-ntp}}, it is less obvious what is going wrong: there is no information 
about which artifact download is stuck, what the URL of the server it is stuck 
on is, or even whether Maven is waiting for a download at all (perhaps it is 
doing something unrelated).

Suggestions:
* Amend {{-ntp}} (or introduce an argument or a variant) so that if a 
particular artifact download is in progress for, say, 10s that a warning is 
emitted with the download URL. Or, if a whole block of downloads during some 
artifact resolution phase is taking more than, say, 5m, print a warning 
summarizing the server(s) in use, the number of artifacts requested vs. 
retrieved, etc.
* Offer a convenient way to capture the sort of logging produced by {{-B}} 
without {{-ntp}} (i.e., one line per artifact requested or retrieved) but 
direct this to a file rather than the stdout/stderr of the {{mvn}} process, so 
it does not overwhelm a CI log yet can be inspected on demand.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (MDEP-667) dependency:sources skips *-test-sources.jar by default

2020-01-03 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/MDEP-667?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17007607#comment-17007607
 ] 

Jesse Glick commented on MDEP-667:
--

I suppose 
[this|https://github.com/apache/maven-dependency-plugin/blob/dd8928914ee4c6b08010a0f20063b4604207f8e6/src/main/java/org/apache/maven/plugins/dependency/resolvers/ResolveDependencySourcesMojo.java#L41-L54]
 a bit too simplistic.

Note that while specifying {{\-Dclassifier=test\-sources}} without a specific 
{{includeArtifactIds}} does seem to work¹, it is too slow to be a practical 
workaround as it attempts to download such an artifact for _every_ dependency 
(for example 
{{commons\-codec/commons\-codec/1.9/commons\-codec\-1.9\-test\-sources.jar}}), 
the vast majority of which did not specify {{tests}}.



¹After running the mojo with no arguments first. Using 
{{\-DincludeClassifiers=sources,test\-sources}} on a single invocation does 
_not_ work.

> dependency:sources skips *-test-sources.jar by default
> --
>
> Key: MDEP-667
> URL: https://issues.apache.org/jira/browse/MDEP-667
> Project: Maven Dependency Plugin
>  Issue Type: Bug
>  Components: sources
>Affects Versions: 3.1.1
>Reporter: Jesse Glick
>Priority: Major
>
> Save the following to {{/tmp/bug/Dockerfile}}:
> {code:none}
> FROM maven:3.6.3-jdk-8
> RUN git clone -b support-core-2.65 
> https://github.com/jenkinsci/support-core-plugin /src
> WORKDIR /src
> RUN git checkout HEAD^
> RUN mvn -B validate
> RUN mvn dependency:build-classpath | tee /classpath
> RUN ls -lR ~/.m2/repository/org/jenkins-ci/plugins/workflow/workflow-support 
> | tee /before
> RUN mvn dependency:sources
> RUN ls -lR ~/.m2/repository/org/jenkins-ci/plugins/workflow/workflow-support 
> | tee /after
> RUN diff /before /after | tee /diff
> RUN mvn dependency:sources -Dclassifier=test-sources 
> -DincludeArtifactIds=workflow-support
> RUN ls -lR ~/.m2/repository/org/jenkins-ci/plugins/workflow/workflow-support 
> | tee /workaround
> RUN diff /after /workaround | tee /diff-workaround
> {code}
> Now {{docker build /tmp/bug}} and you will see the problem: sources for [this 
> dependency|https://github.com/jenkinsci/support-core-plugin/blob/086d28109a56e3464f7a46036ba35827e03d33b3/pom.xml#L171-L176]
>  are omitted. The {{dependency:sources}} downloads sources for the main 
> artifact:
> {code:none}
> > -rw-r--r-- 1 root root  91116 Jan  3 15:47 workflow-support-3.3-sources.jar
> {code}
> after printing
> {code:none}
> [INFO] The following files have been resolved:
> ...
> [INFO]org.jenkins-ci.plugins.workflow:workflow-support:jar:sources:3.3
> ...
> [INFO] The following files have NOT been resolved:
> ...
> [INFO]org.jenkins-ci.plugins.workflow:workflow-support:jar:3.3:test
> ...
> [INFO]org.jenkins-ci.plugins.workflow:workflow-support:jar:tests:3.3:test
> {code}
> but only the workaround command suffices to get sources for the test JAR:
> {code:none}
> > -rw-r--r-- 1 root root  33273 Jan  3 15:51 
> > workflow-support-3.3-test-sources.jar
> {code}
> after printing
> {code:none}
> [INFO] The following files have been resolved:
> [INFO]
> org.jenkins-ci.plugins.workflow:workflow-support:jar:test-sources:3.3
> [INFO] 
> [INFO] The following files have NOT been resolved:
> [INFO]org.jenkins-ci.plugins.workflow:workflow-support:jar:3.3:test
> [INFO]org.jenkins-ci.plugins.workflow:workflow-support:jar:tests:3.3:test
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (MDEP-667) dependency:sources skips *-test-sources.jar by default

2020-01-03 Thread Jesse Glick (Jira)


 [ 
https://issues.apache.org/jira/browse/MDEP-667?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jesse Glick updated MDEP-667:
-
Summary: dependency:sources skips *-test-sources.jar by default  (was: 
dependency:sources skips *--test-sources.jar by default)

> dependency:sources skips *-test-sources.jar by default
> --
>
> Key: MDEP-667
> URL: https://issues.apache.org/jira/browse/MDEP-667
> Project: Maven Dependency Plugin
>  Issue Type: Bug
>  Components: sources
>Affects Versions: 3.1.1
>Reporter: Jesse Glick
>Priority: Major
>
> Save the following to {{/tmp/bug/Dockerfile}}:
> {code:none}
> FROM maven:3.6.3-jdk-8
> RUN git clone -b support-core-2.65 
> https://github.com/jenkinsci/support-core-plugin /src
> WORKDIR /src
> RUN git checkout HEAD^
> RUN mvn -B validate
> RUN mvn dependency:build-classpath | tee /classpath
> RUN ls -lR ~/.m2/repository/org/jenkins-ci/plugins/workflow/workflow-support 
> | tee /before
> RUN mvn dependency:sources
> RUN ls -lR ~/.m2/repository/org/jenkins-ci/plugins/workflow/workflow-support 
> | tee /after
> RUN diff /before /after | tee /diff
> RUN mvn dependency:sources -Dclassifier=test-sources 
> -DincludeArtifactIds=workflow-support
> RUN ls -lR ~/.m2/repository/org/jenkins-ci/plugins/workflow/workflow-support 
> | tee /workaround
> RUN diff /after /workaround | tee /diff-workaround
> {code}
> Now {{docker build /tmp/bug}} and you will see the problem: sources for [this 
> dependency|https://github.com/jenkinsci/support-core-plugin/blob/086d28109a56e3464f7a46036ba35827e03d33b3/pom.xml#L171-L176]
>  are omitted. The {{dependency:sources}} downloads sources for the main 
> artifact:
> {code:none}
> > -rw-r--r-- 1 root root  91116 Jan  3 15:47 workflow-support-3.3-sources.jar
> {code}
> after printing
> {code:none}
> [INFO] The following files have been resolved:
> ...
> [INFO]org.jenkins-ci.plugins.workflow:workflow-support:jar:sources:3.3
> ...
> [INFO] The following files have NOT been resolved:
> ...
> [INFO]org.jenkins-ci.plugins.workflow:workflow-support:jar:3.3:test
> ...
> [INFO]org.jenkins-ci.plugins.workflow:workflow-support:jar:tests:3.3:test
> {code}
> but only the workaround command suffices to get sources for the test JAR:
> {code:none}
> > -rw-r--r-- 1 root root  33273 Jan  3 15:51 
> > workflow-support-3.3-test-sources.jar
> {code}
> after printing
> {code:none}
> [INFO] The following files have been resolved:
> [INFO]
> org.jenkins-ci.plugins.workflow:workflow-support:jar:test-sources:3.3
> [INFO] 
> [INFO] The following files have NOT been resolved:
> [INFO]org.jenkins-ci.plugins.workflow:workflow-support:jar:3.3:test
> [INFO]org.jenkins-ci.plugins.workflow:workflow-support:jar:tests:3.3:test
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (MDEP-667) dependency:sources skips *--test-sources.jar by default

2020-01-03 Thread Jesse Glick (Jira)
Jesse Glick created MDEP-667:


 Summary: dependency:sources skips *--test-sources.jar by default
 Key: MDEP-667
 URL: https://issues.apache.org/jira/browse/MDEP-667
 Project: Maven Dependency Plugin
  Issue Type: Bug
  Components: sources
Affects Versions: 3.1.1
Reporter: Jesse Glick


Save the following to {{/tmp/bug/Dockerfile}}:

{code:none}
FROM maven:3.6.3-jdk-8
RUN git clone -b support-core-2.65 
https://github.com/jenkinsci/support-core-plugin /src
WORKDIR /src
RUN git checkout HEAD^
RUN mvn -B validate
RUN mvn dependency:build-classpath | tee /classpath
RUN ls -lR ~/.m2/repository/org/jenkins-ci/plugins/workflow/workflow-support | 
tee /before
RUN mvn dependency:sources
RUN ls -lR ~/.m2/repository/org/jenkins-ci/plugins/workflow/workflow-support | 
tee /after
RUN diff /before /after | tee /diff
RUN mvn dependency:sources -Dclassifier=test-sources 
-DincludeArtifactIds=workflow-support
RUN ls -lR ~/.m2/repository/org/jenkins-ci/plugins/workflow/workflow-support | 
tee /workaround
RUN diff /after /workaround | tee /diff-workaround
{code}

Now {{docker build /tmp/bug}} and you will see the problem: sources for [this 
dependency|https://github.com/jenkinsci/support-core-plugin/blob/086d28109a56e3464f7a46036ba35827e03d33b3/pom.xml#L171-L176]
 are omitted. The {{dependency:sources}} downloads sources for the main 
artifact:

{code:none}
> -rw-r--r-- 1 root root  91116 Jan  3 15:47 workflow-support-3.3-sources.jar
{code}

after printing

{code:none}
[INFO] The following files have been resolved:
...
[INFO]org.jenkins-ci.plugins.workflow:workflow-support:jar:sources:3.3
...
[INFO] The following files have NOT been resolved:
...
[INFO]org.jenkins-ci.plugins.workflow:workflow-support:jar:3.3:test
...
[INFO]org.jenkins-ci.plugins.workflow:workflow-support:jar:tests:3.3:test
{code}

but only the workaround command suffices to get sources for the test JAR:

{code:none}
> -rw-r--r-- 1 root root  33273 Jan  3 15:51 
> workflow-support-3.3-test-sources.jar
{code}

after printing

{code:none}
[INFO] The following files have been resolved:
[INFO]org.jenkins-ci.plugins.workflow:workflow-support:jar:test-sources:3.3
[INFO] 
[INFO] The following files have NOT been resolved:
[INFO]org.jenkins-ci.plugins.workflow:workflow-support:jar:3.3:test
[INFO]org.jenkins-ci.plugins.workflow:workflow-support:jar:tests:3.3:test
{code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (MNG-6405) Incorrect basedir in forked executions when using flatten-maven-plugin with custom outputDirectory

2019-11-20 Thread Jesse Glick (Jira)


[ 
https://issues.apache.org/jira/browse/MNG-6405?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16978470#comment-16978470
 ] 

Jesse Glick commented on MNG-6405:
--

It seems this was released in 3.6.2?

> Incorrect basedir in forked executions when using flatten-maven-plugin with 
> custom outputDirectory
> --
>
> Key: MNG-6405
> URL: https://issues.apache.org/jira/browse/MNG-6405
> Project: Maven
>  Issue Type: Bug
>  Components: core
>Affects Versions: 3.5.3
>Reporter: Jesse Glick
>Assignee: Olivier Lamy
>Priority: Major
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> For [JENKINS-51247|https://issues.jenkins-ci.org/browse/JENKINS-51247] I am 
> trying to use a variant of the tip shown 
> [here|https://github.com/mojohaus/flatten-maven-plugin/issues/53#issuecomment-340366191]:
>  using {{flatten-maven-plugin}} with a generated POM file in the {{target}} 
> directory. This works fine in almost all cases, since the plugin calls 
> {{MavenProject.setPomFile}}, which leaves the {{basedir}} untouched.
> Unfortunately it fails for mojos which rely on the basedir that are run 
> inside a forked execution, as I found when accidentally using {{source:jar}} 
> when {{source:jar-no-fork}} was what I wanted. (Ditto when using 
> {{findbugs:check}}.) This seems to be because {{deepCopy}} still calls 
> {{setFile}}, so the basedir of a cloned project is not the same as the 
> original—it is always the parent directory of the POM file.
> Fixing this should be trivial
> {code}
> diff --git 
> a/maven-core/src/main/java/org/apache/maven/project/MavenProject.java 
> b/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
> index 80a51935e..ee7a68635 100644
> --- a/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
> +++ b/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
> @@ -1207,7 +1207,8 @@ private void deepCopy( MavenProject project )
>  // disown the parent
>  
>  // copy fields
> -setFile( project.getFile() );
> +file = project.file;
> +basedir = project.basedir;
>  
>  // don't need a deep copy, they don't get modified or added/removed 
> to/from - but make them unmodifiable to be
>  // sure!
> {code}
> but I am unsure what the best approach is to validate the fix. A unit test in 
> {{MavenProjectTest}}? An IT which calls {{flatten-maven-plugin}}, 
> {{source:jar}}, and some other mojo TBD which is sensitive to project 
> basedir? Both?



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (MNG-6551) Packaging 'jar' binding plugin upgrades

2019-01-10 Thread Jesse Glick (JIRA)


[ 
https://issues.apache.org/jira/browse/MNG-6551?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16739984#comment-16739984
 ] 

Jesse Glick commented on MNG-6551:
--

The {{maven-compiler-plugin}} update is import to pick up MCOMPILER-335, so 
that a hello-world POM will build on newer JDKs.

> Packaging 'jar' binding plugin upgrades
> ---
>
> Key: MNG-6551
> URL: https://issues.apache.org/jira/browse/MNG-6551
> Project: Maven
>  Issue Type: Sub-task
>  Components: core, Dependencies
>Affects Versions: 3.5.0, 3.6.0
>Reporter: Michael Osipov
>Assignee: Michael Osipov
>Priority: Major
> Fix For: 3.7.0-candidate
>
>
> This affects:
> ||groupId||artifactId||[previous 
> version|https://maven.apache.org/ref/3.5.0/maven-core/default-bindings.html#Plugin_bindings_for_jar_packaging]||target
>  version||
> |org.apache.maven.plugins|maven-resources-plugin|2.6|3.1.0|
> |org.apache.maven.plugins|maven-compiler-plugin|3.1|3.8.0|
> |org.apache.maven.plugins|maven-surefire-plugin|2.12.4|3.0.0-M3|
> |org.apache.maven.plugins|maven-jar-plugin|2.4|3.1.1|
> |org.apache.maven.plugins|maven-install-plugin|2.4|3.0.0-M1|
> |org.apache.maven.plugins|maven-deploy-plugin|2.7|3.0.0-M1|



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (MNG-6405) Incorrect basedir in forked executions when using flatten-maven-plugin with custom outputDirectory

2019-01-03 Thread Jesse Glick (JIRA)


[ 
https://issues.apache.org/jira/browse/MNG-6405?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16733584#comment-16733584
 ] 

Jesse Glick commented on MNG-6405:
--

Filed [PR 225|https://github.com/apache/maven/pull/225] with the patch above.

> Incorrect basedir in forked executions when using flatten-maven-plugin with 
> custom outputDirectory
> --
>
> Key: MNG-6405
> URL: https://issues.apache.org/jira/browse/MNG-6405
> Project: Maven
>  Issue Type: Bug
>  Components: core
>Affects Versions: 3.5.3
>Reporter: Jesse Glick
>Priority: Major
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> For [JENKINS-51247|https://issues.jenkins-ci.org/browse/JENKINS-51247] I am 
> trying to use a variant of the tip shown 
> [here|https://github.com/mojohaus/flatten-maven-plugin/issues/53#issuecomment-340366191]:
>  using {{flatten-maven-plugin}} with a generated POM file in the {{target}} 
> directory. This works fine in almost all cases, since the plugin calls 
> {{MavenProject.setPomFile}}, which leaves the {{basedir}} untouched.
> Unfortunately it fails for mojos which rely on the basedir that are run 
> inside a forked execution, as I found when accidentally using {{source:jar}} 
> when {{source:jar-no-fork}} was what I wanted. (Ditto when using 
> {{findbugs:check}}.) This seems to be because {{deepCopy}} still calls 
> {{setFile}}, so the basedir of a cloned project is not the same as the 
> original—it is always the parent directory of the POM file.
> Fixing this should be trivial
> {code}
> diff --git 
> a/maven-core/src/main/java/org/apache/maven/project/MavenProject.java 
> b/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
> index 80a51935e..ee7a68635 100644
> --- a/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
> +++ b/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
> @@ -1207,7 +1207,8 @@ private void deepCopy( MavenProject project )
>  // disown the parent
>  
>  // copy fields
> -setFile( project.getFile() );
> +file = project.file;
> +basedir = project.basedir;
>  
>  // don't need a deep copy, they don't get modified or added/removed 
> to/from - but make them unmodifiable to be
>  // sure!
> {code}
> but I am unsure what the best approach is to validate the fix. A unit test in 
> {{MavenProjectTest}}? An IT which calls {{flatten-maven-plugin}}, 
> {{source:jar}}, and some other mojo TBD which is sensitive to project 
> basedir? Both?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (MENFORCER-276) Allow ignoring dependency scopes in RequireUpperBoundDeps

2018-12-03 Thread Jesse Glick (JIRA)


[ 
https://issues.apache.org/jira/browse/MENFORCER-276?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16707712#comment-16707712
 ] 

Jesse Glick commented on MENFORCER-276:
---

[~matthies] yes that makes sense. Ideally I think the rule should report your 
example as a violation without any additional configuration: even an 
experienced Maven user is unlikely to think of this situation as a possible 
problem without prompting.

> Allow ignoring dependency scopes in RequireUpperBoundDeps
> -
>
> Key: MENFORCER-276
> URL: https://issues.apache.org/jira/browse/MENFORCER-276
> Project: Maven Enforcer Plugin
>  Issue Type: New Feature
>Reporter: Oleg Nenashev
>Priority: Major
>
> We have recently adopted RequireUpperBoundDeps in the Jenkins project 
> (https://github.com/jenkinsci/plugin-pom/pull/67). In order to implement it, 
> [~jgl...@netbeans.org] added a support of ignoring particular dependencies in 
> MENFORCER-273.
> Sometimes we declare dependencies between plugins for testing purposes 
> (scope=test), and in such case RequireUpperBoundDeps fails the build if there 
> is a test dependency conflicting with the main code. Although it may cause 
> instability of tests (including false positive results), it does not really 
> impact the distributable package in our case.
> I propose to add another option for filtering of dependency scopes.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (MENFORCER-276) Allow ignoring dependency scopes in RequireUpperBoundDeps

2018-12-03 Thread Jesse Glick (JIRA)


[ 
https://issues.apache.org/jira/browse/MENFORCER-276?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16707542#comment-16707542
 ] 

Jesse Glick commented on MENFORCER-276:
---

[~matthies] not sure I understand. If you run the rule as currently 
implemented, it reports violations in all scopes, and a given dependency can 
only have one version used in all of the scopes in which it appears. Is there a 
concrete example you have in mind of this “hiding”?

> Allow ignoring dependency scopes in RequireUpperBoundDeps
> -
>
> Key: MENFORCER-276
> URL: https://issues.apache.org/jira/browse/MENFORCER-276
> Project: Maven Enforcer Plugin
>  Issue Type: New Feature
>Reporter: Oleg Nenashev
>Priority: Major
>
> We have recently adopted RequireUpperBoundDeps in the Jenkins project 
> (https://github.com/jenkinsci/plugin-pom/pull/67). In order to implement it, 
> [~jgl...@netbeans.org] added a support of ignoring particular dependencies in 
> MENFORCER-273.
> Sometimes we declare dependencies between plugins for testing purposes 
> (scope=test), and in such case RequireUpperBoundDeps fails the build if there 
> is a test dependency conflicting with the main code. Although it may cause 
> instability of tests (including false positive results), it does not really 
> impact the distributable package in our case.
> I propose to add another option for filtering of dependency scopes.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (SUREFIRE-1588) Surefire manifest jar classloading broken on latest Debian/Ubuntu Java8

2018-11-30 Thread Jesse Glick (JIRA)


[ 
https://issues.apache.org/jira/browse/SUREFIRE-1588?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16704836#comment-16704836
 ] 

Jesse Glick commented on SUREFIRE-1588:
---

The problem seems to have been resolved upstream if you update the OpenJDK 
package. (For me, from {{1.8.0_181-8u181-b13-1ubuntu0.18.10.1-b13}} to 
{{1.8.0_191-8u191-b12-0ubuntu0.18.10.1-b12}}.) See 
[Debian|https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=911925#97] and 
[Ubuntu|https://bugs.launchpad.net/ubuntu/+source/openjdk-8/+bug/1800792] 
notices.

> Surefire manifest jar classloading broken on latest Debian/Ubuntu Java8
> ---
>
> Key: SUREFIRE-1588
> URL: https://issues.apache.org/jira/browse/SUREFIRE-1588
> Project: Maven Surefire
>  Issue Type: Bug
>Affects Versions: 2.22.1
>Reporter: Cservenak, Tamas
>Assignee: Tibor Digana
>Priority: Major
> Fix For: 3.0.0-M1
>
>
> See issue [1], but in short: latest Java8 on Ubuntu/Debian/Mint family of 
> Linuxes (am on Mint, Ubuntu derivative) contains this patch [3], and eforces 
> Manifest class path entries to be relative, as defined in [2].
> Hence, surefire booter and rest of Maven classpath, that uses absolute URLs 
> are simply discarded.
> Example error:
> {noformat}
> # Created at 2018-10-30T21:34:43.339
> Error: Could not find or load main class 
> org.apache.maven.surefire.booter.ForkedBooter{noformat}
> using the new property 
> {{-Djdk.net.URLClassPath.disableClassPathURLCheck=debug}} clearly shows that 
> all the entries from the surefire JAR are simply ignored.
>  
> [1] [https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=911925]
> [2] 
> https://docs.oracle.com/javase/8/docs/technotes/guides/jar/jar.html#classpath
> [3] [https://hg.openjdk.java.net/jdk/jdk/rev/27135de165ac]



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (SUREFIRE-1593) 3.0.0-M1 produces invalid code sources on Windows

2018-11-19 Thread Jesse Glick (JIRA)


[ 
https://issues.apache.org/jira/browse/SUREFIRE-1593?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16691868#comment-16691868
 ] 

Jesse Glick commented on SUREFIRE-1593:
---

[Final 
fix|https://github.com/apache/maven-surefire/commit/f5cca5bcc2c85060c21c82eea0081d016cb86909]

> 3.0.0-M1 produces invalid code sources on Windows
> -
>
> Key: SUREFIRE-1593
> URL: https://issues.apache.org/jira/browse/SUREFIRE-1593
> Project: Maven Surefire
>  Issue Type: Bug
>  Components: classloading, process forking
>Affects Versions: 3.0.0-M1
>Reporter: Jesse Glick
>Assignee: Tibor Digana
>Priority: Major
> Fix For: 3.0.0-M2
>
>
> The fix for SUREFIRE-1588 did not work correctly on Windows. (When 
> active—i.e., when the drive letters of the system temporary directory, per 
> SUREFIRE-1400, and the project basedir were the same.) It would produce 
> relative URIs containing {{%5C}} where {{/}} was intended.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (SUREFIRE-1593) 3.0.0-M1 produces invalid code sources on Windows

2018-11-08 Thread Jesse Glick (JIRA)
Jesse Glick created SUREFIRE-1593:
-

 Summary: 3.0.0-M1 produces invalid code sources on Windows
 Key: SUREFIRE-1593
 URL: https://issues.apache.org/jira/browse/SUREFIRE-1593
 Project: Maven Surefire
  Issue Type: Bug
  Components: classloading, process forking
Affects Versions: 3.0.0-M1
Reporter: Jesse Glick


The fix for SUREFIRE-1588 did not work correctly on Windows. (When active—i.e., 
when the drive letters of the system temporary directory, per SUREFIRE-1400, 
and the project basedir were the same.) It would produce relative URIs 
containing {{%5C}} where {{/}} was intended.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (MENFORCER-267) Upgrade to make Maven 3+

2018-11-08 Thread Jesse Glick (JIRA)


[ 
https://issues.apache.org/jira/browse/MENFORCER-267?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16680229#comment-16680229
 ] 

Jesse Glick commented on MENFORCER-267:
---

Doing this might fix MENFORCER-298 by the way. (I no longer personally care to 
pursue it since the Jenkins project has largely [moved away from using 
timestamped 
snapshots|https://github.com/jenkinsci/jep/blob/master/jep/305/README.adoc#timestamped-snapshot-issues].)

> Upgrade to make Maven 3+
> 
>
> Key: MENFORCER-267
> URL: https://issues.apache.org/jira/browse/MENFORCER-267
> Project: Maven Enforcer Plugin
>  Issue Type: Improvement
>Affects Versions: 3.0.0
>Reporter: Karl Heinz Marbaise
>Assignee: Karl Heinz Marbaise
>Priority: Blocker
> Fix For: 3.0.0
>
>
> *  maven-dependency-tree needs to be updated to 3.0.1



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (SUREFIRE-1588) Surefire manifest jar classloading broken on latest Debian/Ubuntu Java8

2018-11-01 Thread Jesse Glick (JIRA)


[ 
https://issues.apache.org/jira/browse/SUREFIRE-1588?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16671777#comment-16671777
 ] 

Jesse Glick commented on SUREFIRE-1588:
---

Building on the tip by [~cstamas] I was able to work around this issue without 
POM modifications by adding to the {{}} section of my 
{{~/.m2/settings.xml}}:

{code:xml}

SUREFIRE-1588

true


-Djdk.net.URLClassPath.disableClassPathURLCheck=true


{code}

(Note that this assumes that the project did not already have an important 
{{argLine}} defined.)

I would also be eager to see an emergency 2.x fix.

> Surefire manifest jar classloading broken on latest Debian/Ubuntu Java8
> ---
>
> Key: SUREFIRE-1588
> URL: https://issues.apache.org/jira/browse/SUREFIRE-1588
> Project: Maven Surefire
>  Issue Type: Bug
>Affects Versions: 2.22.1
>Reporter: Cservenak, Tamas
>Priority: Major
>
> See issue [1], but in short: latest Java8 on Ubuntu/Debian/Mint family of 
> Linuxes (am on Mint, Ubuntu derivative) contains this patch [3], and eforces 
> Manifest class path entries to be relative, as defined in [2].
> Hence, surefire booter and rest of Maven classpath, that uses absolute URLs 
> are simply discarded.
> Example error:
> {noformat}
> # Created at 2018-10-30T21:34:43.339
> Error: Could not find or load main class 
> org.apache.maven.surefire.booter.ForkedBooter{noformat}
> using the new property 
> {{-Djdk.net.URLClassPath.disableClassPathURLCheck=debug}} clearly shows that 
> all the entries from the surefire JAR are simply ignored.
>  
> [1] [https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=911925]
> [2] 
> https://docs.oracle.com/javase/8/docs/technotes/guides/jar/jar.html#classpath
> [3] [https://hg.openjdk.java.net/jdk/jdk/rev/27135de165ac]



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (MNG-6118) Add option to execute goals on a specific module while building a multimodule project

2018-08-08 Thread Jesse Glick (JIRA)


[ 
https://issues.apache.org/jira/browse/MNG-6118?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16574196#comment-16574196
 ] 

Jesse Glick commented on MNG-6118:
--

Came across this in a 
[blog|http://andresalmiray.com/multi-module-project-builds-with-maven-and-gradle/].
 The motivating use case is similar to one mentioned in MNG-5059.

> Add option to execute goals on a specific module while building a multimodule 
> project
> -
>
> Key: MNG-6118
> URL: https://issues.apache.org/jira/browse/MNG-6118
> Project: Maven
>  Issue Type: Improvement
>  Components: Command Line, Plugins and Lifecycle
>Reporter: Robert Scholte
>Priority: Major
>
> Suppose we have a multimodule which results in a war. In the end we want to 
> run this war in a container like jetty. Up until now the {{jetty:run}} is 
> executed on every module, which doesn't make sense for the other modules.
> This is just one of several examples where you want to control on which 
> module to execute a specific goal. In case of wars, the plugin could check 
> for the packaging type, but in case of jars this won't work.
> There should be a generic solution to mark goals for a specific module.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (MNG-6405) Incorrect basedir in forked executions when using flatten-maven-plugin with custom outputDirectory

2018-06-25 Thread Jesse Glick (JIRA)


[ 
https://issues.apache.org/jira/browse/MNG-6405?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16522608#comment-16522608
 ] 

Jesse Glick commented on MNG-6405:
--

No, the bug in core remains. I was just noting that _one trigger_ for it—the 
choice of mojo in the superpom—is now removed. The bug will continue to be a 
problem whenever anyone uses any mojo which requests a forked execution.

> Incorrect basedir in forked executions when using flatten-maven-plugin with 
> custom outputDirectory
> --
>
> Key: MNG-6405
> URL: https://issues.apache.org/jira/browse/MNG-6405
> Project: Maven
>  Issue Type: Bug
>  Components: core
>Affects Versions: 3.5.3
>Reporter: Jesse Glick
>Priority: Major
>
> For [JENKINS-51247|https://issues.jenkins-ci.org/browse/JENKINS-51247] I am 
> trying to use a variant of the tip shown 
> [here|https://github.com/mojohaus/flatten-maven-plugin/issues/53#issuecomment-340366191]:
>  using {{flatten-maven-plugin}} with a generated POM file in the {{target}} 
> directory. This works fine in almost all cases, since the plugin calls 
> {{MavenProject.setPomFile}}, which leaves the {{basedir}} untouched.
> Unfortunately it fails for mojos which rely on the basedir that are run 
> inside a forked execution, as I found when accidentally using {{source:jar}} 
> when {{source:jar-no-fork}} was what I wanted. (Ditto when using 
> {{findbugs:check}}.) This seems to be because {{deepCopy}} still calls 
> {{setFile}}, so the basedir of a cloned project is not the same as the 
> original—it is always the parent directory of the POM file.
> Fixing this should be trivial
> {code}
> diff --git 
> a/maven-core/src/main/java/org/apache/maven/project/MavenProject.java 
> b/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
> index 80a51935e..ee7a68635 100644
> --- a/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
> +++ b/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
> @@ -1207,7 +1207,8 @@ private void deepCopy( MavenProject project )
>  // disown the parent
>  
>  // copy fields
> -setFile( project.getFile() );
> +file = project.file;
> +basedir = project.basedir;
>  
>  // don't need a deep copy, they don't get modified or added/removed 
> to/from - but make them unmodifiable to be
>  // sure!
> {code}
> but I am unsure what the best approach is to validate the fix. A unit test in 
> {{MavenProjectTest}}? An IT which calls {{flatten-maven-plugin}}, 
> {{source:jar}}, and some other mojo TBD which is sensitive to project 
> basedir? Both?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (MNG-6405) Incorrect basedir in forked executions when using flatten-maven-plugin with custom outputDirectory

2018-06-25 Thread Jesse Glick (JIRA)


[ 
https://issues.apache.org/jira/browse/MNG-6405?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16522321#comment-16522321
 ] 

Jesse Glick commented on MNG-6405:
--

The superpom has evidently been fixed in Maven 3.5.4, so at least now any 
problems would come from use of forked executions in your _own_ POM(s).

> Incorrect basedir in forked executions when using flatten-maven-plugin with 
> custom outputDirectory
> --
>
> Key: MNG-6405
> URL: https://issues.apache.org/jira/browse/MNG-6405
> Project: Maven
>  Issue Type: Bug
>  Components: core
>Affects Versions: 3.5.3
>Reporter: Jesse Glick
>Priority: Major
>
> For [JENKINS-51247|https://issues.jenkins-ci.org/browse/JENKINS-51247] I am 
> trying to use a variant of the tip shown 
> [here|https://github.com/mojohaus/flatten-maven-plugin/issues/53#issuecomment-340366191]:
>  using {{flatten-maven-plugin}} with a generated POM file in the {{target}} 
> directory. This works fine in almost all cases, since the plugin calls 
> {{MavenProject.setPomFile}}, which leaves the {{basedir}} untouched.
> Unfortunately it fails for mojos which rely on the basedir that are run 
> inside a forked execution, as I found when accidentally using {{source:jar}} 
> when {{source:jar-no-fork}} was what I wanted. (Ditto when using 
> {{findbugs:check}}.) This seems to be because {{deepCopy}} still calls 
> {{setFile}}, so the basedir of a cloned project is not the same as the 
> original—it is always the parent directory of the POM file.
> Fixing this should be trivial
> {code}
> diff --git 
> a/maven-core/src/main/java/org/apache/maven/project/MavenProject.java 
> b/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
> index 80a51935e..ee7a68635 100644
> --- a/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
> +++ b/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
> @@ -1207,7 +1207,8 @@ private void deepCopy( MavenProject project )
>  // disown the parent
>  
>  // copy fields
> -setFile( project.getFile() );
> +file = project.file;
> +basedir = project.basedir;
>  
>  // don't need a deep copy, they don't get modified or added/removed 
> to/from - but make them unmodifiable to be
>  // sure!
> {code}
> but I am unsure what the best approach is to validate the fix. A unit test in 
> {{MavenProjectTest}}? An IT which calls {{flatten-maven-plugin}}, 
> {{source:jar}}, and some other mojo TBD which is sensitive to project 
> basedir? Both?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (MNG-6405) Incorrect basedir in forked executions when using flatten-maven-plugin with custom outputDirectory

2018-05-14 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MNG-6405?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16474611#comment-16474611
 ] 

Jesse Glick commented on MNG-6405:
--

If you are using both {{flatten-maven-plugin}} and {{maven-release-plugin}}, 
_and_ any plugins which rely on the basedir (such as 
{{frontend-maven-plugin}}), you may need to override the (poor?) choice in the 
superpom:

{code:xml}

fix-superpom-source-fork


performRelease
true





maven-source-plugin


attach-sources
DO-NOT-ACTUALLY-RUN


attach-sources-no-fork

jar-no-fork







{code}

YMMV.

> Incorrect basedir in forked executions when using flatten-maven-plugin with 
> custom outputDirectory
> --
>
> Key: MNG-6405
> URL: https://issues.apache.org/jira/browse/MNG-6405
> Project: Maven
>  Issue Type: Bug
>  Components: core
>Affects Versions: 3.5.3
>Reporter: Jesse Glick
>Priority: Major
>
> For [JENKINS-51247|https://issues.jenkins-ci.org/browse/JENKINS-51247] I am 
> trying to use a variant of the tip shown 
> [here|https://github.com/mojohaus/flatten-maven-plugin/issues/53#issuecomment-340366191]:
>  using {{flatten-maven-plugin}} with a generated POM file in the {{target}} 
> directory. This works fine in almost all cases, since the plugin calls 
> {{MavenProject.setPomFile}}, which leaves the {{basedir}} untouched.
> Unfortunately it fails for mojos which rely on the basedir that are run 
> inside a forked execution, as I found when accidentally using {{source:jar}} 
> when {{source:jar-no-fork}} was what I wanted. (Ditto when using 
> {{findbugs:check}}.) This seems to be because {{deepCopy}} still calls 
> {{setFile}}, so the basedir of a cloned project is not the same as the 
> original—it is always the parent directory of the POM file.
> Fixing this should be trivial
> {code}
> diff --git 
> a/maven-core/src/main/java/org/apache/maven/project/MavenProject.java 
> b/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
> index 80a51935e..ee7a68635 100644
> --- a/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
> +++ b/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
> @@ -1207,7 +1207,8 @@ private void deepCopy( MavenProject project )
>  // disown the parent
>  
>  // copy fields
> -setFile( project.getFile() );
> +file = project.file;
> +basedir = project.basedir;
>  
>  // don't need a deep copy, they don't get modified or added/removed 
> to/from - but make them unmodifiable to be
>  // sure!
> {code}
> but I am unsure what the best approach is to validate the fix. A unit test in 
> {{MavenProjectTest}}? An IT which calls {{flatten-maven-plugin}}, 
> {{source:jar}}, and some other mojo TBD which is sensitive to project 
> basedir? Both?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (MNG-6405) Incorrect basedir in forked executions when using flatten-maven-plugin with custom outputDirectory

2018-05-10 Thread Jesse Glick (JIRA)
Jesse Glick created MNG-6405:


 Summary: Incorrect basedir in forked executions when using 
flatten-maven-plugin with custom outputDirectory
 Key: MNG-6405
 URL: https://issues.apache.org/jira/browse/MNG-6405
 Project: Maven
  Issue Type: Bug
  Components: core
Affects Versions: 3.5.3
Reporter: Jesse Glick


For [JENKINS-51247|https://issues.jenkins-ci.org/browse/JENKINS-51247] I am 
trying to use a variant of the tip shown 
[here|https://github.com/mojohaus/flatten-maven-plugin/issues/53#issuecomment-340366191]:
 using {{flatten-maven-plugin}} with a generated POM file in the {{target}} 
directory. This works fine in almost all cases, since the plugin calls 
{{MavenProject.setPomFile}}, which leaves the {{basedir}} untouched.

Unfortunately it fails for mojos which rely on the basedir that are run inside 
a forked execution, as I found when accidentally using {{source:jar}} when 
{{source:jar-no-fork}} was what I wanted. (Ditto when using 
{{findbugs:check}}.) This seems to be because {{deepCopy}} still calls 
{{setFile}}, so the basedir of a cloned project is not the same as the 
original—it is always the parent directory of the POM file.

Fixing this should be trivial

{code}
diff --git 
a/maven-core/src/main/java/org/apache/maven/project/MavenProject.java 
b/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
index 80a51935e..ee7a68635 100644
--- a/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
+++ b/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
@@ -1207,7 +1207,8 @@ private void deepCopy( MavenProject project )
 // disown the parent
 
 // copy fields
-setFile( project.getFile() );
+file = project.file;
+basedir = project.basedir;
 
 // don't need a deep copy, they don't get modified or added/removed 
to/from - but make them unmodifiable to be
 // sure!
{code}

but I am unsure what the best approach is to validate the fix. A unit test in 
{{MavenProjectTest}}? An IT which calls {{flatten-maven-plugin}}, 
{{source:jar}}, and some other mojo TBD which is sensitive to project basedir? 
Both?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (MNG-6066) Continuous Delivery friendly versions break with multi-module projects

2018-04-06 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MNG-6066?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16428707#comment-16428707
 ] 

Jesse Glick commented on MNG-6066:
--

Ah, I knew about the Flatten plugin and was actually already using it for 
{{deploy}}, but given the error message it seemed like Maven was _looking_ for 
the wrong parent artifact so I did not even try activating it for other phases. 
Indeed that seems to fix the problem.

> Continuous Delivery friendly versions break with multi-module projects
> --
>
> Key: MNG-6066
> URL: https://issues.apache.org/jira/browse/MNG-6066
> Project: Maven
>  Issue Type: Bug
>Affects Versions: 3.3.9
>Reporter: G. Richard Bellamy
>Assignee: Karl Heinz Marbaise
>Priority: Major
>
> When I have a multi-module maven project, and one of the sub-modules is a 
> mult-module POM itself, the use of a continuous delivery friendly version in 
> the parent   breaks the build from within either {{sub-module-1}} 
> or {{sub-module-2}}.
> Some Maven multi-module project like so:
> {noformat}
> parent
>  + sub-module 1
>  |+ child 1-1
>  ||
>  |+ child 1-2
>  |
>  + sub-module 2
>   + child 2-1
> {noformat}
> In the example build below, I've set Maven to offline mode - this happens 
> when online as well. Specifically, the problem is that Maven is looking for a 
> parent POM with the version set to {{1.${revision\}}}, which is incorrect.
> I believe the problem stems from the fact that the value stored in the 
> {{}} includes the property, which isn't correctly parsed.
> {code}
> 2016-07-16 12:49:59
> rbellamy@terraspark i ~/Development/test-cd-ci-friendly-versions master % mvn 
> -o -DskipTests compile
> [INFO] Scanning for projects...
> [INFO] 
> 
> [INFO] Reactor Build Order:
> [INFO]
> [INFO] child-1-1
> [INFO] child-1-2
> [INFO] sub-module-1
> [INFO] child-2-1
> [INFO] sub-module-2
> [INFO] test-cd-ci-friendly-versions
> [INFO]
> [INFO] 
> 
> [INFO] Building child-1-1 1.0-SNAPSHOT
> [INFO] 
> 
> [INFO]
> [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ 
> child-1-1 ---
> [WARNING] Using platform encoding (UTF-8 actually) to copy filtered 
> resources, i.e. build is platform dependent!
> [INFO] Copying 0 resource
> [INFO]
> [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ child-1-1 ---
> [INFO] Changes detected - recompiling the module!
> [WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. 
> build is platform dependent!
> [INFO] Compiling 1 source file to 
> /Users/rbellamy/Development/test-cd-ci-friendly-versions/sub-module-1/child-1-1/target/classes
> [INFO]
> [INFO] 
> 
> [INFO] Building child-1-2 1.0-SNAPSHOT
> [INFO] 
> 
> [INFO]
> [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ 
> child-1-2 ---
> [WARNING] Using platform encoding (UTF-8 actually) to copy filtered 
> resources, i.e. build is platform dependent!
> [INFO] Copying 0 resource
> [INFO]
> [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ child-1-2 ---
> [INFO] Changes detected - recompiling the module!
> [WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. 
> build is platform dependent!
> [INFO] Compiling 1 source file to 
> /Users/rbellamy/Development/test-cd-ci-friendly-versions/sub-module-1/child-1-2/target/classes
> [INFO]
> [INFO] 
> 
> [INFO] Building sub-module-1 1.0-SNAPSHOT
> [INFO] 
> 
> [INFO]
> [INFO] 
> 
> [INFO] Building child-2-1 1.0-SNAPSHOT
> [INFO] 
> 
> [INFO]
> [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ 
> child-2-1 ---
> [WARNING] Using platform encoding (UTF-8 actually) to copy filtered 
> resources, i.e. build is platform dependent!
> [INFO] Copying 0 resource
> [INFO]
> [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ child-2-1 ---
> [INFO] Changes detected - recompiling the module!
> [WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. 
> build is platform dependent!
> [INFO] Compiling 1 source file to 
> 

[jira] [Commented] (MNG-6066) Continuous Delivery friendly versions break with multi-module projects

2018-04-06 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MNG-6066?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16428597#comment-16428597
 ] 

Jesse Glick commented on MNG-6066:
--

Maybe something like MNG-5059 would be the best approach, so I could run 
something like

{code:none}
mvn -amp validate -pl submodule -Dtest=SomeTest test
{code}

which would process the parent/aggregator and dependency submodules just enough 
to identify their artifacts but do no real work, and then run the designated 
submodule through the full {{test}} phase including main and test compilation.

> Continuous Delivery friendly versions break with multi-module projects
> --
>
> Key: MNG-6066
> URL: https://issues.apache.org/jira/browse/MNG-6066
> Project: Maven
>  Issue Type: Bug
>Affects Versions: 3.3.9
>Reporter: G. Richard Bellamy
>Assignee: Karl Heinz Marbaise
>Priority: Major
>
> When I have a multi-module maven project, and one of the sub-modules is a 
> mult-module POM itself, the use of a continuous delivery friendly version in 
> the parent   breaks the build from within either {{sub-module-1}} 
> or {{sub-module-2}}.
> Some Maven multi-module project like so:
> {noformat}
> parent
>  + sub-module 1
>  |+ child 1-1
>  ||
>  |+ child 1-2
>  |
>  + sub-module 2
>   + child 2-1
> {noformat}
> In the example build below, I've set Maven to offline mode - this happens 
> when online as well. Specifically, the problem is that Maven is looking for a 
> parent POM with the version set to {{1.${revision\}}}, which is incorrect.
> I believe the problem stems from the fact that the value stored in the 
> {{}} includes the property, which isn't correctly parsed.
> {code}
> 2016-07-16 12:49:59
> rbellamy@terraspark i ~/Development/test-cd-ci-friendly-versions master % mvn 
> -o -DskipTests compile
> [INFO] Scanning for projects...
> [INFO] 
> 
> [INFO] Reactor Build Order:
> [INFO]
> [INFO] child-1-1
> [INFO] child-1-2
> [INFO] sub-module-1
> [INFO] child-2-1
> [INFO] sub-module-2
> [INFO] test-cd-ci-friendly-versions
> [INFO]
> [INFO] 
> 
> [INFO] Building child-1-1 1.0-SNAPSHOT
> [INFO] 
> 
> [INFO]
> [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ 
> child-1-1 ---
> [WARNING] Using platform encoding (UTF-8 actually) to copy filtered 
> resources, i.e. build is platform dependent!
> [INFO] Copying 0 resource
> [INFO]
> [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ child-1-1 ---
> [INFO] Changes detected - recompiling the module!
> [WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. 
> build is platform dependent!
> [INFO] Compiling 1 source file to 
> /Users/rbellamy/Development/test-cd-ci-friendly-versions/sub-module-1/child-1-1/target/classes
> [INFO]
> [INFO] 
> 
> [INFO] Building child-1-2 1.0-SNAPSHOT
> [INFO] 
> 
> [INFO]
> [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ 
> child-1-2 ---
> [WARNING] Using platform encoding (UTF-8 actually) to copy filtered 
> resources, i.e. build is platform dependent!
> [INFO] Copying 0 resource
> [INFO]
> [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ child-1-2 ---
> [INFO] Changes detected - recompiling the module!
> [WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. 
> build is platform dependent!
> [INFO] Compiling 1 source file to 
> /Users/rbellamy/Development/test-cd-ci-friendly-versions/sub-module-1/child-1-2/target/classes
> [INFO]
> [INFO] 
> 
> [INFO] Building sub-module-1 1.0-SNAPSHOT
> [INFO] 
> 
> [INFO]
> [INFO] 
> 
> [INFO] Building child-2-1 1.0-SNAPSHOT
> [INFO] 
> 
> [INFO]
> [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ 
> child-2-1 ---
> [WARNING] Using platform encoding (UTF-8 actually) to copy filtered 
> resources, i.e. build is platform dependent!
> [INFO] Copying 0 resource
> [INFO]
> [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ child-2-1 ---
> [INFO] Changes detected - recompiling the module!
> [WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. 
> 

[jira] [Commented] (MNG-6066) Continuous Delivery friendly versions break with multi-module projects

2018-04-06 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MNG-6066?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16428589#comment-16428589
 ] 

Jesse Glick commented on MNG-6066:
--

While the automake idiom does serve as a workaround, this nonetheless seems to 
be a serious regression in developer usability and local build performance for 
multimodule projects compared to traditional version schemes, in which a 
submodule could be repeatedly built independently after ensuring that its 
parent and all dependencies were installed into the local repository. Doing a 
full reactor build of potentially dozens of modules would be impractically slow 
for, say, {{mvn -am -pl submodule compile}} after making a one-line change to a 
source file in a submodule. Rerunning a test case using {{mvn -am -pl submodule 
surefire:test}} is possible only after specifying {{-DfailIfNoTests=false}} to 
prevent the build from failing in any of the prior modules lacking a test of 
that name, and anyway you would need to {{test-compile}} first if you made any 
main or test source changes.

Would Maven developers be open to a mitigation restoring the ability to run 
non-reactor submodule builds when CI versions are in use? Since the 
{{relativePath}} (default {{..}}) already tells Maven where the parent is, it 
seems that it would be possible to locate and parse the parent POM reliably.

> Continuous Delivery friendly versions break with multi-module projects
> --
>
> Key: MNG-6066
> URL: https://issues.apache.org/jira/browse/MNG-6066
> Project: Maven
>  Issue Type: Bug
>Affects Versions: 3.3.9
>Reporter: G. Richard Bellamy
>Assignee: Karl Heinz Marbaise
>Priority: Major
>
> When I have a multi-module maven project, and one of the sub-modules is a 
> mult-module POM itself, the use of a continuous delivery friendly version in 
> the parent   breaks the build from within either {{sub-module-1}} 
> or {{sub-module-2}}.
> Some Maven multi-module project like so:
> {noformat}
> parent
>  + sub-module 1
>  |+ child 1-1
>  ||
>  |+ child 1-2
>  |
>  + sub-module 2
>   + child 2-1
> {noformat}
> In the example build below, I've set Maven to offline mode - this happens 
> when online as well. Specifically, the problem is that Maven is looking for a 
> parent POM with the version set to {{1.${revision\}}}, which is incorrect.
> I believe the problem stems from the fact that the value stored in the 
> {{}} includes the property, which isn't correctly parsed.
> {code}
> 2016-07-16 12:49:59
> rbellamy@terraspark i ~/Development/test-cd-ci-friendly-versions master % mvn 
> -o -DskipTests compile
> [INFO] Scanning for projects...
> [INFO] 
> 
> [INFO] Reactor Build Order:
> [INFO]
> [INFO] child-1-1
> [INFO] child-1-2
> [INFO] sub-module-1
> [INFO] child-2-1
> [INFO] sub-module-2
> [INFO] test-cd-ci-friendly-versions
> [INFO]
> [INFO] 
> 
> [INFO] Building child-1-1 1.0-SNAPSHOT
> [INFO] 
> 
> [INFO]
> [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ 
> child-1-1 ---
> [WARNING] Using platform encoding (UTF-8 actually) to copy filtered 
> resources, i.e. build is platform dependent!
> [INFO] Copying 0 resource
> [INFO]
> [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ child-1-1 ---
> [INFO] Changes detected - recompiling the module!
> [WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. 
> build is platform dependent!
> [INFO] Compiling 1 source file to 
> /Users/rbellamy/Development/test-cd-ci-friendly-versions/sub-module-1/child-1-1/target/classes
> [INFO]
> [INFO] 
> 
> [INFO] Building child-1-2 1.0-SNAPSHOT
> [INFO] 
> 
> [INFO]
> [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ 
> child-1-2 ---
> [WARNING] Using platform encoding (UTF-8 actually) to copy filtered 
> resources, i.e. build is platform dependent!
> [INFO] Copying 0 resource
> [INFO]
> [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ child-1-2 ---
> [INFO] Changes detected - recompiling the module!
> [WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. 
> build is platform dependent!
> [INFO] Compiling 1 source file to 
> /Users/rbellamy/Development/test-cd-ci-friendly-versions/sub-module-1/child-1-2/target/classes
> [INFO]
> [INFO] 
> 
> [INFO] Building 

[jira] [Commented] (MNG-6303) .mvn/jvm.config should allow to resolve environment variables

2018-03-20 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MNG-6303?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16406102#comment-16406102
 ] 

Jesse Glick commented on MNG-6303:
--

If I understand correctly there is no current or proposed feature to allow a 
file under {{.mvn}} to _define_ environment variables, for mojos which need 
them in the Maven JVM itself (yes I know this is not great), whereas 
{{$HOME/.mavenrc}} does seem to allow this:

{code:sh}
export FOO=bar
{code}

> .mvn/jvm.config should allow to resolve environment variables
> -
>
> Key: MNG-6303
> URL: https://issues.apache.org/jira/browse/MNG-6303
> Project: Maven
>  Issue Type: Bug
>  Components: Bootstrap  Build
>Affects Versions: 3.5.0
>Reporter: Konrad Windszus
>Priority: Major
>
> With the mechanism of having project-specific maven options being specified 
> in {{.mvn/maven.config}} and {{.mvn/jvm.config}} (MNG-6267) it is often handy 
> to share those settings among multiple developers (i.e. via maintaining it 
> via the SCM). Unfortunately the mechanism does not support resolving 
> environment variables, which makes it hard to deal with user-specific 
> directories or settings. Please support resolving environment variables 
> through a special pattern like {{$ENV_NAME}}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (MENFORCER-298) bannedDependencies can break compilation against a timestamped snapshot

2018-03-05 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MENFORCER-298?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16386743#comment-16386743
 ] 

Jesse Glick commented on MENFORCER-298:
---

It is possible that my patch is also effective against MENFORCER-168 though I 
did not check it.

> bannedDependencies can break compilation against a timestamped snapshot
> ---
>
> Key: MENFORCER-298
> URL: https://issues.apache.org/jira/browse/MENFORCER-298
> Project: Maven Enforcer Plugin
>  Issue Type: Bug
>  Components: Standard Rules
>Affects Versions: 3.0.0, 3.0.0-M1
>Reporter: Jesse Glick
>Priority: Critical
>
> While working heavily with timestamped snapshots across repositories 
> (reactors) I found occasional build errors suggesting that 
> {{maven-compiler-plugin}} was picking up the wrong version of a dependency. 
> To reproduce, using say Maven 3.5.2:
> {code:none}
> git clone https://github.com/jenkinsci/jenkins
> cd jenkins
> git checkout e2c1ae15a3bc6a9e1dcde0bc139b34d2c5812214
> mvn -DskipTests -am -pl core clean install
> {code}
> Compilation will fail with some errors like
> {code:none}
> [ERROR] 
> .../jenkins/core/src/main/java/jenkins/security/ClassFilterImpl.java:[77,19] 
> error: cannot find symbol
> [ERROR]   symbol:   method setDefault(ClassFilterImpl)
> [ERROR]   location: class ClassFilter
> {code}
> What is going on here is that [the artifact 
> repository|http://repo.jenkins-ci.org/public/org/jenkins-ci/main/remoting/3.15-SNAPSHOT/]
>  contains various timestamped snapshots for this base version of 
> {{remoting}}. The {{jenkins}} commit requests the {{-3}} snapshot in its 
> {{pom.xml}}; the newest currently available is {{-10}}, which represents an 
> unrelated branch. The compiler error happens when 
> {{jenkins/core/src/main/java/}} is compiled against the {{-10}} artifact.
> Now {{MavenITmng4189UniqueVersionSnapshotTest}} in 
> {{maven-integration-testing}} verifies that the compiler classpath in such 
> cases is correct, and in fact you can patch the IT to actually run the 
> compiler and it will work as expected: Maven will copy the requested 
> timestamped snapshot artifacts to the corresponding base versions, then 
> return those from {{MavenProject.getCompileClasspathElements}}, as [this 
> blog|http://blog.sonatype.com/2009/12/maven-dependency-resolution-a-repository-perspective/]
>  says it will (without further explanation). Yet it breaks in {{jenkins}}.
> I managed to narrow this down to the fact that {{jenkins}} used the 
> {{bannedDependencies}} Enforcer rule. If it uses only, say, 
> {{}}, then there is no error. But running {{bannedDependencies}} 
> changes the behavior of compilation (even though the {{enforce}} mojo 
> passes): the {{-10}} artifacts ({{pom}} and {{jar}}) are downloaded, and the 
> base artifacts (esp. {{remoting-3.15-SNAPSHOT.jar}}) are overwritten with the 
> {{-10}} versions, not the {{-3}} versions as expected. By patching 
> {{BannedDependencies}} I found that this problem occurs iff 
> {{buildDependencyGraph}} is called. By adding
> {code}
> System.setSecurityManager( new SecurityManager()
> {
> @Override
> public void checkWrite( String file )
> {
> if ( file.contains( "remoting" ) )
> {
> System.err.println( file );
> Thread.dumpStack();
> }
> }
> @Override
> public void checkPermission( Permission perm )
> {
> }
> }
> );
> {code}
> I found this stack trace:
> {code:none}
> at java.io.FileOutputStream.(FileOutputStream.java:200)
> at java.io.FileOutputStream.(FileOutputStream.java:162)
> at 
> org.eclipse.aether.internal.impl.DefaultFileProcessor.copy(DefaultFileProcessor.java:166)
> at 
> org.eclipse.aether.internal.impl.DefaultFileProcessor.copy(DefaultFileProcessor.java:150)
> at 
> org.eclipse.aether.internal.impl.DefaultArtifactResolver.getFile(DefaultArtifactResolver.java:464)
> at 
> org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:329)
> at 
> org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:224)
> at 
> org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveDependencies(DefaultRepositorySystem.java:338)
> at 
> org.apache.maven.project.DefaultProjectDependenciesResolver.resolve(DefaultProjectDependenciesResolver.java:202)
> at 
> org.apache.maven.shared.dependency.graph.internal.Maven31DependencyGraphBuilder.resolveDependencies(Maven31DependencyGraphBuilder.java:127)
> at 
> org.apache.maven.shared.dependency.graph.internal.Maven31DependencyGraphBuilder.buildDependencyGraph(Maven31DependencyGraphBuilder.java:113)
> at 
> 

[jira] [Commented] (MENFORCER-298) bannedDependencies can break compilation against a timestamped snapshot

2018-03-05 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MENFORCER-298?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16386733#comment-16386733
 ] 

Jesse Glick commented on MENFORCER-298:
---

I suspect the _best_ fix is to use {{maven-dependency-tree 3.0}}, as tracked in 
MENFORCER-277.

> bannedDependencies can break compilation against a timestamped snapshot
> ---
>
> Key: MENFORCER-298
> URL: https://issues.apache.org/jira/browse/MENFORCER-298
> Project: Maven Enforcer Plugin
>  Issue Type: Bug
>  Components: Standard Rules
>Affects Versions: 3.0.0, 3.0.0-M1
>Reporter: Jesse Glick
>Priority: Critical
>
> While working heavily with timestamped snapshots across repositories 
> (reactors) I found occasional build errors suggesting that 
> {{maven-compiler-plugin}} was picking up the wrong version of a dependency. 
> To reproduce, using say Maven 3.5.2:
> {code:none}
> git clone https://github.com/jenkinsci/jenkins
> cd jenkins
> git checkout e2c1ae15a3bc6a9e1dcde0bc139b34d2c5812214
> mvn -DskipTests -am -pl core clean install
> {code}
> Compilation will fail with some errors like
> {code:none}
> [ERROR] 
> .../jenkins/core/src/main/java/jenkins/security/ClassFilterImpl.java:[77,19] 
> error: cannot find symbol
> [ERROR]   symbol:   method setDefault(ClassFilterImpl)
> [ERROR]   location: class ClassFilter
> {code}
> What is going on here is that [the artifact 
> repository|http://repo.jenkins-ci.org/public/org/jenkins-ci/main/remoting/3.15-SNAPSHOT/]
>  contains various timestamped snapshots for this base version of 
> {{remoting}}. The {{jenkins}} commit requests the {{-3}} snapshot in its 
> {{pom.xml}}; the newest currently available is {{-10}}, which represents an 
> unrelated branch. The compiler error happens when 
> {{jenkins/core/src/main/java/}} is compiled against the {{-10}} artifact.
> Now {{MavenITmng4189UniqueVersionSnapshotTest}} in 
> {{maven-integration-testing}} verifies that the compiler classpath in such 
> cases is correct, and in fact you can patch the IT to actually run the 
> compiler and it will work as expected: Maven will copy the requested 
> timestamped snapshot artifacts to the corresponding base versions, then 
> return those from {{MavenProject.getCompileClasspathElements}}, as [this 
> blog|http://blog.sonatype.com/2009/12/maven-dependency-resolution-a-repository-perspective/]
>  says it will (without further explanation). Yet it breaks in {{jenkins}}.
> I managed to narrow this down to the fact that {{jenkins}} used the 
> {{bannedDependencies}} Enforcer rule. If it uses only, say, 
> {{}}, then there is no error. But running {{bannedDependencies}} 
> changes the behavior of compilation (even though the {{enforce}} mojo 
> passes): the {{-10}} artifacts ({{pom}} and {{jar}}) are downloaded, and the 
> base artifacts (esp. {{remoting-3.15-SNAPSHOT.jar}}) are overwritten with the 
> {{-10}} versions, not the {{-3}} versions as expected. By patching 
> {{BannedDependencies}} I found that this problem occurs iff 
> {{buildDependencyGraph}} is called. By adding
> {code}
> System.setSecurityManager( new SecurityManager()
> {
> @Override
> public void checkWrite( String file )
> {
> if ( file.contains( "remoting" ) )
> {
> System.err.println( file );
> Thread.dumpStack();
> }
> }
> @Override
> public void checkPermission( Permission perm )
> {
> }
> }
> );
> {code}
> I found this stack trace:
> {code:none}
> at java.io.FileOutputStream.(FileOutputStream.java:200)
> at java.io.FileOutputStream.(FileOutputStream.java:162)
> at 
> org.eclipse.aether.internal.impl.DefaultFileProcessor.copy(DefaultFileProcessor.java:166)
> at 
> org.eclipse.aether.internal.impl.DefaultFileProcessor.copy(DefaultFileProcessor.java:150)
> at 
> org.eclipse.aether.internal.impl.DefaultArtifactResolver.getFile(DefaultArtifactResolver.java:464)
> at 
> org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:329)
> at 
> org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:224)
> at 
> org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveDependencies(DefaultRepositorySystem.java:338)
> at 
> org.apache.maven.project.DefaultProjectDependenciesResolver.resolve(DefaultProjectDependenciesResolver.java:202)
> at 
> org.apache.maven.shared.dependency.graph.internal.Maven31DependencyGraphBuilder.resolveDependencies(Maven31DependencyGraphBuilder.java:127)
> at 
> org.apache.maven.shared.dependency.graph.internal.Maven31DependencyGraphBuilder.buildDependencyGraph(Maven31DependencyGraphBuilder.java:113)
> at 
> 

[jira] [Commented] (MNG-5129) Maven struggles while resolving locked snapshots by two or more simultaneously used projects.

2018-03-05 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MNG-5129?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16386730#comment-16386730
 ] 

Jesse Glick commented on MNG-5129:
--

Sounds similar to MNG-4189.

> Maven struggles while resolving locked snapshots by two or more 
> simultaneously used projects.
> -
>
> Key: MNG-5129
> URL: https://issues.apache.org/jira/browse/MNG-5129
> Project: Maven
>  Issue Type: Bug
>  Components: Dependencies
>Affects Versions: 3.0.3
>Reporter: Christopher Klewes
>Priority: Blocker
> Attachments: maven-dependency-issue.zip
>
>
> This has to be explained with an easy example. Given that we have three 
> projects (A, B and C). Both projects B and C has a dependency to a locked 
> snapshot of project A. 
> {code:title=Project B requires build number #2}
> 
>   org.codehaus
>   A
>   1.0.0-20110705.132520-2
> 
> {code}
> {code:title=Project C requires build number #1}
> 
>   org.codehaus
>   A
>   1.0.0-20110705.132120-1
> 
> {code}
> We now call {{dependency:resolve}} on each projects to resolve their 
> dependencies from the repositories. As we can see in our local repository 
> both versions are fetched and downloaded from their respective repository 
> server. Unfortunately a last one wins conflict occurs. The project on which 
> {{dependency:resolve}} is called last wins the race. Maven typically copies 
> the latest fetched snapshot version (even if it's locked!) to the default 
> version. Let's have a look at the folder structure:
> {code:title=Folder listing of the artifact dependency A 
> (repository/org/codehaus/A/)}
> maven-metadata-local.xml
> maven-metadata-opensaga.xml
> maven-metadata-opensaga.xml.sha1
> A-1.0.0-20110705.132120-1.jar
> A-1.0.0-20110705.132120-1.pom
> A-1.0.0-20110705.132520-2.jar
> A-1.0.0-20110705.132520-2.pom
>  
> A-1.0.0-SNAPSHOT.jar (the last fetched snapshot version)
> A-1.0.0-SNAPSHOT.pom
> {code}
> The last version will be copied to the file {{A-1.0.0-SNAPSHOT.jar}}. Maven 
> references their dependencies to the file without the exactt 
> timestamp/buildnumber. This fact make it impossible to develop the project B 
> and C or even run them simultaneously, because only the last one wins.
> It would be mandatory to exactly reference the file with the timestamp of 
> each project!
> What do you think on this issue? I submitted the project structure so you can 
> easily reproduce this issue.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (MENFORCER-298) bannedDependencies can break compilation against a timestamped snapshot

2018-03-05 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MENFORCER-298?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16386727#comment-16386727
 ] 

Jesse Glick commented on MENFORCER-298:
---

Filed PR 32 with a simple proposed fix. If this is rejected, I guess the 
Jenkins project can deploy its own version of {{bannedDependencies}} as a 
workaround.

> bannedDependencies can break compilation against a timestamped snapshot
> ---
>
> Key: MENFORCER-298
> URL: https://issues.apache.org/jira/browse/MENFORCER-298
> Project: Maven Enforcer Plugin
>  Issue Type: Bug
>  Components: Standard Rules
>Affects Versions: 3.0.0, 3.0.0-M1
>Reporter: Jesse Glick
>Priority: Critical
>
> While working heavily with timestamped snapshots across repositories 
> (reactors) I found occasional build errors suggesting that 
> {{maven-compiler-plugin}} was picking up the wrong version of a dependency. 
> To reproduce, using say Maven 3.5.2:
> {code:none}
> git clone https://github.com/jenkinsci/jenkins
> cd jenkins
> git checkout e2c1ae15a3bc6a9e1dcde0bc139b34d2c5812214
> mvn -DskipTests -am -pl core clean install
> {code}
> Compilation will fail with some errors like
> {code:none}
> [ERROR] 
> .../jenkins/core/src/main/java/jenkins/security/ClassFilterImpl.java:[77,19] 
> error: cannot find symbol
> [ERROR]   symbol:   method setDefault(ClassFilterImpl)
> [ERROR]   location: class ClassFilter
> {code}
> What is going on here is that [the artifact 
> repository|http://repo.jenkins-ci.org/public/org/jenkins-ci/main/remoting/3.15-SNAPSHOT/]
>  contains various timestamped snapshots for this base version of 
> {{remoting}}. The {{jenkins}} commit requests the {{-3}} snapshot in its 
> {{pom.xml}}; the newest currently available is {{-10}}, which represents an 
> unrelated branch. The compiler error happens when 
> {{jenkins/core/src/main/java/}} is compiled against the {{-10}} artifact.
> Now {{MavenITmng4189UniqueVersionSnapshotTest}} in 
> {{maven-integration-testing}} verifies that the compiler classpath in such 
> cases is correct, and in fact you can patch the IT to actually run the 
> compiler and it will work as expected: Maven will copy the requested 
> timestamped snapshot artifacts to the corresponding base versions, then 
> return those from {{MavenProject.getCompileClasspathElements}}, as [this 
> blog|http://blog.sonatype.com/2009/12/maven-dependency-resolution-a-repository-perspective/]
>  says it will (without further explanation). Yet it breaks in {{jenkins}}.
> I managed to narrow this down to the fact that {{jenkins}} used the 
> {{bannedDependencies}} Enforcer rule. If it uses only, say, 
> {{}}, then there is no error. But running {{bannedDependencies}} 
> changes the behavior of compilation (even though the {{enforce}} mojo 
> passes): the {{-10}} artifacts ({{pom}} and {{jar}}) are downloaded, and the 
> base artifacts (esp. {{remoting-3.15-SNAPSHOT.jar}}) are overwritten with the 
> {{-10}} versions, not the {{-3}} versions as expected. By patching 
> {{BannedDependencies}} I found that this problem occurs iff 
> {{buildDependencyGraph}} is called. By adding
> {code}
> System.setSecurityManager( new SecurityManager()
> {
> @Override
> public void checkWrite( String file )
> {
> if ( file.contains( "remoting" ) )
> {
> System.err.println( file );
> Thread.dumpStack();
> }
> }
> @Override
> public void checkPermission( Permission perm )
> {
> }
> }
> );
> {code}
> I found this stack trace:
> {code:none}
> at java.io.FileOutputStream.(FileOutputStream.java:200)
> at java.io.FileOutputStream.(FileOutputStream.java:162)
> at 
> org.eclipse.aether.internal.impl.DefaultFileProcessor.copy(DefaultFileProcessor.java:166)
> at 
> org.eclipse.aether.internal.impl.DefaultFileProcessor.copy(DefaultFileProcessor.java:150)
> at 
> org.eclipse.aether.internal.impl.DefaultArtifactResolver.getFile(DefaultArtifactResolver.java:464)
> at 
> org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:329)
> at 
> org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:224)
> at 
> org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveDependencies(DefaultRepositorySystem.java:338)
> at 
> org.apache.maven.project.DefaultProjectDependenciesResolver.resolve(DefaultProjectDependenciesResolver.java:202)
> at 
> org.apache.maven.shared.dependency.graph.internal.Maven31DependencyGraphBuilder.resolveDependencies(Maven31DependencyGraphBuilder.java:127)
> at 
> org.apache.maven.shared.dependency.graph.internal.Maven31DependencyGraphBuilder.buildDependencyGraph(Maven31DependencyGraphBuilder.java:113)
> at 
> 

[jira] [Created] (MENFORCER-298) bannedDependencies can break compilation against a timestamped snapshot

2018-03-05 Thread Jesse Glick (JIRA)
Jesse Glick created MENFORCER-298:
-

 Summary: bannedDependencies can break compilation against a 
timestamped snapshot
 Key: MENFORCER-298
 URL: https://issues.apache.org/jira/browse/MENFORCER-298
 Project: Maven Enforcer Plugin
  Issue Type: Bug
  Components: Standard Rules
Affects Versions: 3.0.0-M1, 3.0.0
Reporter: Jesse Glick


While working heavily with timestamped snapshots across repositories (reactors) 
I found occasional build errors suggesting that {{maven-compiler-plugin}} was 
picking up the wrong version of a dependency. To reproduce, using say Maven 
3.5.2:

{code:none}
git clone https://github.com/jenkinsci/jenkins
cd jenkins
git checkout e2c1ae15a3bc6a9e1dcde0bc139b34d2c5812214
mvn -DskipTests -am -pl core clean install
{code}

Compilation will fail with some errors like

{code:none}
[ERROR] 
.../jenkins/core/src/main/java/jenkins/security/ClassFilterImpl.java:[77,19] 
error: cannot find symbol
[ERROR]   symbol:   method setDefault(ClassFilterImpl)
[ERROR]   location: class ClassFilter
{code}

What is going on here is that [the artifact 
repository|http://repo.jenkins-ci.org/public/org/jenkins-ci/main/remoting/3.15-SNAPSHOT/]
 contains various timestamped snapshots for this base version of {{remoting}}. 
The {{jenkins}} commit requests the {{-3}} snapshot in its {{pom.xml}}; the 
newest currently available is {{-10}}, which represents an unrelated branch. 
The compiler error happens when {{jenkins/core/src/main/java/}} is compiled 
against the {{-10}} artifact.

Now {{MavenITmng4189UniqueVersionSnapshotTest}} in 
{{maven-integration-testing}} verifies that the compiler classpath in such 
cases is correct, and in fact you can patch the IT to actually run the compiler 
and it will work as expected: Maven will copy the requested timestamped 
snapshot artifacts to the corresponding base versions, then return those from 
{{MavenProject.getCompileClasspathElements}}, as [this 
blog|http://blog.sonatype.com/2009/12/maven-dependency-resolution-a-repository-perspective/]
 says it will (without further explanation). Yet it breaks in {{jenkins}}.

I managed to narrow this down to the fact that {{jenkins}} used the 
{{bannedDependencies}} Enforcer rule. If it uses only, say, {{}}, 
then there is no error. But running {{bannedDependencies}} changes the behavior 
of compilation (even though the {{enforce}} mojo passes): the {{-10}} artifacts 
({{pom}} and {{jar}}) are downloaded, and the base artifacts (esp. 
{{remoting-3.15-SNAPSHOT.jar}}) are overwritten with the {{-10}} versions, not 
the {{-3}} versions as expected. By patching {{BannedDependencies}} I found 
that this problem occurs iff {{buildDependencyGraph}} is called. By adding

{code}
System.setSecurityManager( new SecurityManager()
{
@Override
public void checkWrite( String file )
{
if ( file.contains( "remoting" ) )
{
System.err.println( file );
Thread.dumpStack();
}
}
@Override
public void checkPermission( Permission perm )
{
}
}
);
{code}

I found this stack trace:

{code:none}
at java.io.FileOutputStream.(FileOutputStream.java:200)
at java.io.FileOutputStream.(FileOutputStream.java:162)
at 
org.eclipse.aether.internal.impl.DefaultFileProcessor.copy(DefaultFileProcessor.java:166)
at 
org.eclipse.aether.internal.impl.DefaultFileProcessor.copy(DefaultFileProcessor.java:150)
at 
org.eclipse.aether.internal.impl.DefaultArtifactResolver.getFile(DefaultArtifactResolver.java:464)
at 
org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:329)
at 
org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:224)
at 
org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveDependencies(DefaultRepositorySystem.java:338)
at 
org.apache.maven.project.DefaultProjectDependenciesResolver.resolve(DefaultProjectDependenciesResolver.java:202)
at 
org.apache.maven.shared.dependency.graph.internal.Maven31DependencyGraphBuilder.resolveDependencies(Maven31DependencyGraphBuilder.java:127)
at 
org.apache.maven.shared.dependency.graph.internal.Maven31DependencyGraphBuilder.buildDependencyGraph(Maven31DependencyGraphBuilder.java:113)
at 
org.apache.maven.shared.dependency.graph.internal.DefaultDependencyGraphBuilder.buildDependencyGraph(DefaultDependencyGraphBuilder.java:91)
at 
org.apache.maven.shared.dependency.graph.internal.DefaultDependencyGraphBuilder.buildDependencyGraph(DefaultDependencyGraphBuilder.java:66)
{code}

And passing {{-Daether.artifactResolver.snapshotNormalization=false}} resolves 
the issue.

CC [~stephenc] who reviewed this strange misbehavior with me.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (MENFORCER-244) Scoping and BannedDependencies

2018-03-05 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MENFORCER-244?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16386668#comment-16386668
 ] 

Jesse Glick commented on MENFORCER-244:
---

I think you [can already do 
this|https://github.com/jenkinsci/jenkins/commit/a6485510be07ef06639d7b193a9a0d119effc3be].

> Scoping and BannedDependencies
> --
>
> Key: MENFORCER-244
> URL: https://issues.apache.org/jira/browse/MENFORCER-244
> Project: Maven Enforcer Plugin
>  Issue Type: Improvement
>Reporter: Nick Cross
>Priority: Major
>
> Currently 
> https://maven.apache.org/enforcer/enforcer-rules/bannedDependencies.html has 
> an option to ignore transitive dependencies. It would be quite useful to also 
> have an option to ignore test scoped dependencies. The use-case is that, 
> while we might care that for a runtime project we don't use certain 
> dependencies, using them during testing is acceptable.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (MNG-6220) Add CLI options to control color output

2017-11-08 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MNG-6220?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16244271#comment-16244271
 ] 

Jesse Glick commented on MNG-6220:
--

I was directed to MNG-6296 which tracks the problem.

> Add CLI options to control color output
> ---
>
> Key: MNG-6220
> URL: https://issues.apache.org/jira/browse/MNG-6220
> Project: Maven
>  Issue Type: New Feature
>Reporter: Manuel Ryan
>Assignee: Robert Scholte
> Fix For: 3.5.2
>
>
> Currently, the only way to enable/disable color output is to use the 
> batch-mode or log-file options.
> If a user wants colored output but no interactivity (ie: jenkins environment 
> with the ansicolor plugin), there is no CLI option combination to support the 
> use-case.
> I propose to add an option to control output coloring directly.
> {noformat}
> --color=enabled <- color output always enabled
> --color=disabled <- color output always disabled
> --color=auto <- current behavior (default)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (MNG-6220) Add CLI options to control color output

2017-11-08 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MNG-6220?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16244119#comment-16244119
 ] 

Jesse Glick commented on MNG-6220:
--

The usual risks of relying on unit tests: you get what you pay for. :-/ 
[~rfscholte] can this be reopened? (I have no permissions to do so.)

> Add CLI options to control color output
> ---
>
> Key: MNG-6220
> URL: https://issues.apache.org/jira/browse/MNG-6220
> Project: Maven
>  Issue Type: New Feature
>Reporter: Manuel Ryan
>Assignee: Robert Scholte
> Fix For: 3.5.2
>
>
> Currently, the only way to enable/disable color output is to use the 
> batch-mode or log-file options.
> If a user wants colored output but no interactivity (ie: jenkins environment 
> with the ansicolor plugin), there is no CLI option combination to support the 
> use-case.
> I propose to add an option to control output coloring directly.
> {noformat}
> --color=enabled <- color output always enabled
> --color=disabled <- color output always disabled
> --color=auto <- current behavior (default)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (MENFORCER-276) Allow ignoring dependency scopes in RequireUpperBoundDeps

2017-11-06 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MENFORCER-276?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16240636#comment-16240636
 ] 

Jesse Glick commented on MENFORCER-276:
---

FWIW while I have not looked at this PR, I would probably be opposed to using 
it in Jenkins. I consider it a key feature of this enforcer rule that the build 
fails if your test-scoped dependencies are inconsistent. We often had cryptic 
{{NoSuchMethodError}} mayhem due to simple POM mistakes before adopting the 
rule.

> Allow ignoring dependency scopes in RequireUpperBoundDeps
> -
>
> Key: MENFORCER-276
> URL: https://issues.apache.org/jira/browse/MENFORCER-276
> Project: Maven Enforcer Plugin
>  Issue Type: New Feature
>Reporter: Oleg Nenashev
>
> We have recently adopted RequireUpperBoundDeps in the Jenkins project 
> (https://github.com/jenkinsci/plugin-pom/pull/67). In order to implement it, 
> [~jgl...@netbeans.org] added a support of ignoring particular dependencies in 
> MENFORCER-273.
> Sometimes we declare dependencies between plugins for testing purposes 
> (scope=test), and in such case RequireUpperBoundDeps fails the build if there 
> is a test dependency conflicting with the main code. Although it may cause 
> instability of tests (including false positive results), it does not really 
> impact the distributable package in our case.
> I propose to add another option for filtering of dependency scopes.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SUREFIRE-1433) rerunFailingTestsCount does not help with crashes

2017-10-23 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/SUREFIRE-1433?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16215494#comment-16215494
 ] 

Jesse Glick commented on SUREFIRE-1433:
---

Obviously the above is not a real test. I was merely demonstrating that 
Surefire is not robust against unforeseeable fatal problems in the test JVM, 
making it ill suited to long-running test suites. JUnit itself treats any 
{{Throwable}} thrown out of a test method as a “failure” which 
{{rerunFailingTestsCount}} will process; yet lower-level errors in a forked 
test VM are not recoverable.

> rerunFailingTestsCount does not help with crashes
> -
>
> Key: SUREFIRE-1433
> URL: https://issues.apache.org/jira/browse/SUREFIRE-1433
> Project: Maven Surefire
>  Issue Type: Bug
>  Components: process forking
>Affects Versions: 2.20.1
> Environment: Linux, Java 8u131, Maven 3.5.0
>Reporter: Jesse Glick
> Attachments: demo.zip
>
>
> I have a CI job running lots of very slow tests, and am using 
> {{-Dsurefire.rerunFailingTestsCount=2 -Dmaven.test.failure.ignore 
> -Dsurefire.timeout=7200 -DreuseForks=false -DforkCount=2}} to run Maven. It 
> will typically run for about three hours, collecting a lot of passing tests, 
> a few flaking tests with subsequent passes, and a few true failures. But then 
> it will abruptly halt with the infamous
> {code:none}
> Failed to execute goal 
> org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test (default-test) on 
> project ...: ExecutionException The forked VM terminated without properly 
> saying goodbye. VM crash or System.exit called?
> {code}
> The timing is unpredictable but the build seems to usually fail this way; 
> sometimes I get lucky and it runs through all the tests, taking a number of 
> hours. Diagnosing the crash is not likely to be straightforward, and frankly 
> I do not care much—I just want Surefire to try again. Yet the 
> {{rerunFailingTestsCount}} flag does not accomplish this—it only retries 
> normal failures.
> You can see this from running the attached project. While you might expect it 
> to go through 100 runs of the test, some failing politely and some crashing, 
> instead you see something like
> {code:none}
> ...
> --- maven-surefire-plugin:2.20.1:test (default-test) @ demo ---
> ---
>  T E S T S
> ---
> Running demo.CrashingTest
> failing
> failing
> failing
> crashing
> Results:
> Tests run: 0, Failures: 0, Errors: 0, Skipped: 0
> 
> BUILD FAILURE
> 
> Total time: 2.456 s
> Finished at: 2017-10-07T15:11:04-04:00
> Final Memory: 11M/222M
> 
> Failed to execute goal 
> org.apache.maven.plugins:maven-surefire-plugin:2.20.1:test (default-test) on 
> project demo: There are test failures.
> ...
> {code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Created] (SUREFIRE-1433) rerunFailingTestsCount does not help with crashes

2017-10-07 Thread Jesse Glick (JIRA)
Jesse Glick created SUREFIRE-1433:
-

 Summary: rerunFailingTestsCount does not help with crashes
 Key: SUREFIRE-1433
 URL: https://issues.apache.org/jira/browse/SUREFIRE-1433
 Project: Maven Surefire
  Issue Type: Bug
  Components: process forking
Affects Versions: 2.20.1
 Environment: Linux, Java 8u131, Maven 3.5.0
Reporter: Jesse Glick
 Attachments: demo.zip

I have a CI job running lots of very slow tests, and am using 
{{-Dsurefire.rerunFailingTestsCount=2 -Dmaven.test.failure.ignore 
-Dsurefire.timeout=7200 -DreuseForks=false -DforkCount=2}} to run Maven. It 
will typically run for about three hours, collecting a lot of passing tests, a 
few flaking tests with subsequent passes, and a few true failures. But then it 
will abruptly halt with the infamous

{code:none}
Failed to execute goal 
org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test (default-test) on 
project ...: ExecutionException The forked VM terminated without properly 
saying goodbye. VM crash or System.exit called?
{code}

The timing is unpredictable but the build seems to usually fail this way; 
sometimes I get lucky and it runs through all the tests, taking a number of 
hours. Diagnosing the crash is not likely to be straightforward, and frankly I 
do not care much—I just want Surefire to try again. Yet the 
{{rerunFailingTestsCount}} flag does not accomplish this—it only retries normal 
failures.

You can see this from running the attached project. While you might expect it 
to go through 100 runs of the test, some failing politely and some crashing, 
instead you see something like

{code:none}
...
--- maven-surefire-plugin:2.20.1:test (default-test) @ demo ---

---
 T E S T S
---
Running demo.CrashingTest
failing
failing
failing
crashing

Results:

Tests run: 0, Failures: 0, Errors: 0, Skipped: 0


BUILD FAILURE

Total time: 2.456 s
Finished at: 2017-10-07T15:11:04-04:00
Final Memory: 11M/222M

Failed to execute goal 
org.apache.maven.plugins:maven-surefire-plugin:2.20.1:test (default-test) on 
project demo: There are test failures.
...
{code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SUREFIRE-1226) Surefire trims all stack trace elements except those in the test that failed

2017-10-06 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/SUREFIRE-1226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16194916#comment-16194916
 ] 

Jesse Glick commented on SUREFIRE-1226:
---

This has nothing to do with Jenkins plugins specifically. I just happened to be 
testing a Jenkins plugin when I ran into this bug.

The suggestions for smarter trimming algorithms and for clearer display of 
where trimming has occurred are fine for future (3.x) releases, but I would 
urge you to change the default for {{trimStackTrace}} to {{false}} right away 
(a minor 2.x update).

In 2.18.1- there is a feature with broad benefits—almost everyone will have 
tons of meaningless stack trace lines before their test case—and a very limited 
downside—only people with rather exotic test runners or custom rules would need 
to see details of such wrapping calls in order to troubleshoot test failures. 
Thus having the feature be on by default was reasonable.

In 2.19+ there is a feature with slightly broader benefits—almost everyone will 
appreciate trimming lots of lines at the bottom, and many test cases could 
benefit from trimming a few more at the top—and a massive downside: a 
completely routine test failure caused by an exception in code being tested 
will result in an impossible-looking stack trace with no hint given to the 
programmer that their test code is perfectly fine and it is the test reporting 
tool which is to blame, and no easy way to find this out besides bisecting 
plugin versions and Googling for a problem with no clear keyword match. So 
having such a feature be on by default is quite inappropriate.

> Surefire trims all stack trace elements except those in the test that failed
> 
>
> Key: SUREFIRE-1226
> URL: https://issues.apache.org/jira/browse/SUREFIRE-1226
> Project: Maven Surefire
>  Issue Type: Bug
>  Components: Maven Surefire Plugin
>Affects Versions: 2.19
>Reporter: Jiri Locker
>Assignee: Tibor Digana
>Priority: Minor
> Attachments: mvn_stacktrace.tar.gz
>
>
> This looks like a re-occurrence of SUREFIRE-992 but now the stack trace is 
> even more trimmed.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (MNG-6274) snapshot timestamps of modules in multimodule build are not aligned

2017-08-23 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MNG-6274?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16138464#comment-16138464
 ] 

Jesse Glick commented on MNG-6274:
--

AFAIK this only applies to {{deploy}} (to a remote repository), not {{install}} 
(to the local repository).

> snapshot timestamps of modules in multimodule build are not aligned
> ---
>
> Key: MNG-6274
> URL: https://issues.apache.org/jira/browse/MNG-6274
> Project: Maven
>  Issue Type: Improvement
>  Components: Artifacts and Repositories, core
>Affects Versions: 3.5.0
>Reporter: James Nord
>
> If you have a multi-module build with SNAPSHOT versions and deploy it to your 
> repository all of the modules have different time-stamps.
> This is a pain when you want to refer to many of these snapshots in a 
> different project.
> Rather than being able to update a single property to reference the newly 
> deployed version you need to make as many changes as the number of the 
> dependencies your are using from this project.  This is cumbersome and error 
> prone.
> It would be much better if all the modules where deployed with the same 
> time-stamp if they where part of the same reactor (e.g. the start time of the 
> reactor build and not the start time of the module build)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (MNG-6274) snapshot timestamps of modules in multimodule build are not aligned

2017-08-23 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MNG-6274?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16138437#comment-16138437
 ] 

Jesse Glick commented on MNG-6274:
--

[Example question about this|https://stackoverflow.com/q/13589893/12916]

> snapshot timestamps of modules in multimodule build are not aligned
> ---
>
> Key: MNG-6274
> URL: https://issues.apache.org/jira/browse/MNG-6274
> Project: Maven
>  Issue Type: Improvement
>  Components: Artifacts and Repositories, core
>Affects Versions: 3.5.0
>Reporter: James Nord
>
> If you have a multi-module build with SNAPSHOT versions and either install or 
> deploy it to your local repository all of the modules have different 
> time-stamps.
> This is a pain when you want to refer to many of these snapshots in a 
> different project.
> Rather than being able to update a single property to reference the newly 
> deployed version you need to make as many changes as the number of the 
> dependencies your are using from this project.  This is cumbersome and error 
> prone.
> It would be much better if all the modules where deployed with the same 
> time-stamp if they where part of the same reactor (e.g. the start time of the 
> reactor build and not the start time of the module build)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (MNG-6220) Add CLI options to control color output

2017-06-15 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MNG-6220?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16050866#comment-16050866
 ] 

Jesse Glick commented on MNG-6220:
--

I was surprised to find that {{TERM=dumb mvn willfail}} still prints ANSI 
sequences, contrary to the expectations of Unix users.

> Add CLI options to control color output
> ---
>
> Key: MNG-6220
> URL: https://issues.apache.org/jira/browse/MNG-6220
> Project: Maven
>  Issue Type: New Feature
>Reporter: Manuel Ryan
> Fix For: 3.5.1-candidate
>
>
> Currently, the only way to enable/disable color output is to use the 
> batch-mode or log-file options.
> If a user wants colored output but no interactivity (ie: jenkins environment 
> with the ansicolor plugin), there is no CLI option combination to support the 
> use-case.
> I propose to add an option to control output coloring directly.
> {noformat}
> --color=enabled <- color output always enabled
> --color=disabled <- color output always disabled
> --color=auto <- current behavior (default)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Created] (MENFORCER-273) RequireUpperBoundDeps.excludes

2017-06-12 Thread Jesse Glick (JIRA)
Jesse Glick created MENFORCER-273:
-

 Summary: RequireUpperBoundDeps.excludes
 Key: MENFORCER-273
 URL: https://issues.apache.org/jira/browse/MENFORCER-273
 Project: Maven Enforcer Plugin
  Issue Type: New Feature
  Components: Standard Rules
Reporter: Jesse Glick


Sometimes it is desirable to run the {{requireUpperBoundDeps}} rule even though 
it is known that there will be certain failures, so that the set of failures 
can be strictly controlled. Currently there is no option allowing you to do 
that. Other dependency-related rules allow you to specify a list of excludes.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Created] (MENFORCER-272) Allow site generation to work

2017-06-12 Thread Jesse Glick (JIRA)
Jesse Glick created MENFORCER-272:
-

 Summary: Allow site generation to work
 Key: MENFORCER-272
 URL: https://issues.apache.org/jira/browse/MENFORCER-272
 Project: Maven Enforcer Plugin
  Issue Type: Task
  Components: Documentation
Reporter: Jesse Glick
Priority: Minor


I was unable to get {{mvn site:site}} to run locally, first because of a 
{{NullPointerException}}, then because of a Javadoc error. Patch proposed.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Updated] (MENFORCER-272) Allow site generation to work

2017-06-12 Thread Jesse Glick (JIRA)

 [ 
https://issues.apache.org/jira/browse/MENFORCER-272?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jesse Glick updated MENFORCER-272:
--
Flags: Patch

> Allow site generation to work
> -
>
> Key: MENFORCER-272
> URL: https://issues.apache.org/jira/browse/MENFORCER-272
> Project: Maven Enforcer Plugin
>  Issue Type: Task
>  Components: Documentation
>Reporter: Jesse Glick
>Priority: Minor
>
> I was unable to get {{mvn site:site}} to run locally, first because of a 
> {{NullPointerException}}, then because of a Javadoc error. Patch proposed.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (MNG-6223) mvn -f outputs invalid error when specifying POM directory

2017-05-24 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MNG-6223?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16023504#comment-16023504
 ] 

Jesse Glick commented on MNG-6223:
--

Was a regression of MNG-5338.

> mvn -f outputs invalid error when specifying POM directory
> --
>
> Key: MNG-6223
> URL: https://issues.apache.org/jira/browse/MNG-6223
> Project: Maven
>  Issue Type: Bug
>  Components: Command Line
>Affects Versions: 3.5.0-alpha-1, 3.5.0
> Environment: Apache Maven 3.5.0 
> (ff8f5e7444045639af65f6095c62210b5713f426; 2017-04-03T15:39:06-04:00)
> Maven home: /Users/cgould/dev/tools/apache-maven-3.5.0
> Java version: 1.8.0_131, vendor: Oracle Corporation
> Java home: 
> /Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/jre
> Default locale: en_US, platform encoding: UTF-8
> OS name: "mac os x", version: "10.11.6", arch: "x86_64", family: "mac"
>Reporter: Charles Gould
>Assignee: Hervé Boutemy
>Priority: Minor
> Fix For: 3.5.1
>
> Attachments: alternate-pom.zip
>
>
> Basic multi-module project: common, client, and server modules.
>  
> {noformat}
> $ mvn -f client package
> POM file client specified with the -f/--file command line argument does not 
> exist
> [INFO] Scanning for projects...
> [INFO]
> [INFO] 
> 
> [INFO] Building alternate-pom-client 1.0
> [INFO] 
> 
> [INFO]
> [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ 
> alternate-pom-client ---
> [INFO] Using 'UTF-8' encoding to copy filtered resources.
> [INFO] skip non existing resourceDirectory 
> /Users/cgould/dev/personal/alternate-pom/client/src/main/resources
> [INFO]
> [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ 
> alternate-pom-client ---
> [INFO] Nothing to compile - all classes are up to date
> [INFO]
> [INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ 
> alternate-pom-client ---
> [INFO] Using 'UTF-8' encoding to copy filtered resources.
> [INFO] skip non existing resourceDirectory 
> /Users/cgould/dev/personal/alternate-pom/client/src/test/resources
> [INFO]
> [INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ 
> alternate-pom-client ---
> [INFO] No sources to compile
> [INFO]
> [INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ 
> alternate-pom-client ---
> [INFO] No tests to run.
> [INFO]
> [INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ alternate-pom-client ---
> [INFO] 
> 
> [INFO] BUILD SUCCESS
> [INFO] 
> 
> [INFO] Total time: 0.764 s
> [INFO] Finished at: 2017-04-29T14:03:22-04:00
> [INFO] Final Memory: 11M/309M
> [INFO] 
> 
> {noformat}
> There is an error message, but the client module proceeds to build 
> nonetheless.
> I don't see the error message when I run:
> {noformat}
> $ mvn -f client/pom.xml package
> {noformat}
> I've verified it doesn't happen on 3.3.9, but it does happen on 3.5.0 and 
> 3.5.0-alpha-1.
> Sample project attached.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (MNG-4917) Profile not active even though it has activeByDefault set to true

2017-02-28 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MNG-4917?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15888473#comment-15888473
 ] 

Jesse Glick commented on MNG-4917:
--

So {{activeByDefault}} does not mean what you would intuitively think it 
means—that the profile is active unless disabled. Rather, it means it is active 
only if Maven cannot find some other—probably unrelated—profile to activate. 
Basically this mode is useless.

> Profile not active even though it has activeByDefault set to true
> -
>
> Key: MNG-4917
> URL: https://issues.apache.org/jira/browse/MNG-4917
> Project: Maven
>  Issue Type: Bug
>  Components: Profiles
>Affects Versions: 3.0
>Reporter: Benson Margulies
>Assignee: Benjamin Bentmann
> Attachments: pom.xml
>
>
> I've got a parent pom with a profile with 
> true.
> You can retrieve it for yourself via git clone 
> git://git.apache.org/webservices-xmlschema.git.
> The problem is the sourcecheck profile in the parent pom. 
> running mvn -Psourcecheck works as expected, but running without the -P fails 
> to activate the profile.
> the help plugin, I think, has separate problems in this area, or perhaps it's 
> not supposed to look at -P?



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (MNG-3229) Active by default profile is ignored when another is specified explicitly.

2017-02-28 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MNG-3229?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15888466#comment-15888466
 ] 

Jesse Glick commented on MNG-3229:
--

Cf. MNG-4917.

> Active by default  profile is ignored when another is specified explicitly.
> ---
>
> Key: MNG-3229
> URL: https://issues.apache.org/jira/browse/MNG-3229
> Project: Maven
>  Issue Type: Bug
>  Components: Profiles
>Affects Versions: 2.0.7
>Reporter: Oleksandr Maksymchuk
>
> When default profile is added its used only when there is no another profile 
> specified to be used on command line via -P option.
> So in the pom containig:
>   
>   default
>   
>   true
>   
>   
>   dev
>   
> default profile is used only when running command without -P dev
> mvn 
> but not used when running:
> mvn -P dev
> Expected: should be used in both variants as per doc.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (MPH-99) Evaluate has no output in quiet mode

2016-10-17 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MPH-99?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15582278#comment-15582278
 ] 

Jesse Glick commented on MPH-99:


Awkward compared to the original request—a script would be forced to create, 
cat, and then delete a temporary file, unlike the Unix convention of using 
{{stdout}} and {{stderr}}—but better than nothing.

> Evaluate has no output in quiet mode
> 
>
> Key: MPH-99
> URL: https://issues.apache.org/jira/browse/MPH-99
> Project: Maven Help Plugin
>  Issue Type: Bug
>  Components: evaluate
>Affects Versions: 2.2
>Reporter: Alexandre Garnier
>Assignee: Guillaume Boué
> Fix For: 2.2.1
>
> Attachments: output_on_quiet.patch
>
>
> When using {{help:evaluate}} in normal mode, the evaluation result is lost in 
> a lot of Maven {{[INFO\]}} :
> {code:language=bash}
> $ mvn help:evaluate -Dexpression=project.version
> [INFO] Scanning for projects...
> [INFO]
> [INFO] 
> 
> [INFO] Building myProject 1.0.0
> [INFO] 
> 
> [INFO]
> [INFO] --- maven-help-plugin:2.2:evaluate (default-cli) @ myProject ---
> [INFO] No artifact parameter specified, using 'com.test:myProject:pom:1.0.0' 
> as project.
> [INFO]
> 1.0.0
> [INFO] 
> 
> [INFO] BUILD SUCCESS
> [INFO] 
> 
> [INFO] Total time: 1.216s
> [INFO] Finished at: Fri Feb 07 10:32:22 CET 2014
> [INFO] Final Memory: 21M/224M
> [INFO] 
> 
> $ 
> {code}
> I was hoping that launching Maven in quiet mode would avoid all the logs and 
> only display the evaluation result, but there is just no output at all.
> {code:language=bash}
> $ mvn --quiet help:evaluate -Dexpression=project.version
> $ 
> {code}
> In attachment, a patch to use sysout instead of logging for evaluation output.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (MINSTALL-126) localRepositoryPath for install like for install-file

2016-08-29 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MINSTALL-126?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15446301#comment-15446301
 ] 

Jesse Glick commented on MINSTALL-126:
--

In my case there is no simple list of coördinates I could purge in that 
fashion, as I work on numerous projects from time to time, and other people do 
releases in some of them.

> localRepositoryPath for install like for install-file
> -
>
> Key: MINSTALL-126
> URL: https://issues.apache.org/jira/browse/MINSTALL-126
> Project: Maven Install Plugin
>  Issue Type: Improvement
>Reporter: Michael Vorburger
>
> I believe there are real world use cases where to have a localRepositoryPath 
> available for maven-install-plugin's install goal like it currently is for 
> the install-file goal would be useful.
> http://blog2.vorburger.ch/2016/06/maven-install-into-additional.html is a 
> Blog post I wrote with some background about why this would be useful.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (MINSTALL-126) localRepositoryPath for install like for install-file

2016-08-25 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MINSTALL-126?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15436826#comment-15436826
 ] 

Jesse Glick commented on MINSTALL-126:
--

[Use case from StackOverflow|http://stackoverflow.com/q/35451973/12916]

> localRepositoryPath for install like for install-file
> -
>
> Key: MINSTALL-126
> URL: https://issues.apache.org/jira/browse/MINSTALL-126
> Project: Maven Install Plugin
>  Issue Type: Improvement
>Reporter: Michael Vorburger
>
> I believe there are real world use cases where to have a localRepositoryPath 
> available for maven-install-plugin's install goal like it currently is for 
> the install-file goal would be useful.
> http://blog2.vorburger.ch/2016/06/maven-install-into-additional.html is a 
> Blog post I wrote with some background about why this would be useful.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (SUREFIRE-1226) Surefire trims all stack trace elements except those in the test that failed

2016-08-17 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/SUREFIRE-1226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15424904#comment-15424904
 ] 

Jesse Glick commented on SUREFIRE-1226:
---

[~tibor17] I agree with [~jloc...@redhat.com]’s expectation. Was unpleasantly 
surprised to update to 2.19.1 (so as to pick up SUREFIRE-1138) and finding test 
output like

{code:none}
java.lang.NullPointerException
at 
jenkins.plugins.git.AbstractGitSCMSourceTest.fileAt(AbstractGitSCMSourceTest.java:89)
at 
jenkins.plugins.git.AbstractGitSCMSourceTest.retrieveRevision(AbstractGitSCMSourceTest.java:76)
{code}

(nonsensical since line 89 of the test could not possibly throw this 
exception!) where before I had gotten

{code:none}
java.lang.NullPointerException
at 
jenkins.plugins.git.AbstractGitSCMSource.resolveGitTool(AbstractGitSCMSource.java:157)
at 
jenkins.plugins.git.AbstractGitSCMSource.retrieve(AbstractGitSCMSource.java:269)
at jenkins.scm.api.SCMSource.retrieve(SCMSource.java:295)
at 
jenkins.plugins.git.AbstractGitSCMSource.retrieve(AbstractGitSCMSource.java:358)
at jenkins.scm.api.SCMSource.fetch(SCMSource.java:277)
at 
jenkins.plugins.git.AbstractGitSCMSourceTest.fileAt(AbstractGitSCMSourceTest.java:89)
at 
jenkins.plugins.git.AbstractGitSCMSourceTest.retrieveRevision(AbstractGitSCMSourceTest.java:76)
{code}

which clearly indicates the problem.

If you are going to trim stack frames inside the test (which I do not advise), 
you need to leave *some* clue to users, so they do not have to spend an hour 
bisecting and searching bug trackers! For example

{code:none}
java.lang.NullPointerException
…5 stack frames elided, set trimStackTrace=false to display
at 
jenkins.plugins.git.AbstractGitSCMSourceTest.fileAt(AbstractGitSCMSourceTest.java:89)
at 
jenkins.plugins.git.AbstractGitSCMSourceTest.retrieveRevision(AbstractGitSCMSourceTest.java:76)
{code}

> Surefire trims all stack trace elements except those in the test that failed
> 
>
> Key: SUREFIRE-1226
> URL: https://issues.apache.org/jira/browse/SUREFIRE-1226
> Project: Maven Surefire
>  Issue Type: Bug
>  Components: Maven Surefire Plugin
>Affects Versions: 2.19
>Reporter: Jiri Locker
>Assignee: Tibor Digana
>Priority: Minor
> Attachments: mvn_stacktrace.tar.gz
>
>
> This looks like a re-occurrence of SUREFIRE-992 but now the stack trace is 
> even more trimmed.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (MNG-5059) --also-make-phase

2016-02-17 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MNG-5059?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15150699#comment-15150699
 ] 

Jesse Glick commented on MNG-5059:
--

Since it seems unlikely this will ever be worked on as a core feature, I wonder 
if the equivalent functionality could be provided somehow from a plugin. 
Something like

{code:none}
mvn test-compile something:also-make -Dalso.goals=test 
-Dalso.projects=testedmod -Dtest=OneTest
{code}

> --also-make-phase
> -
>
> Key: MNG-5059
> URL: https://issues.apache.org/jira/browse/MNG-5059
> Project: Maven
>  Issue Type: Improvement
>  Components: Command Line
>Affects Versions: 3.0.3
>Reporter: Jesse Glick
>Assignee: Jason van Zyl
>
> Background: 
> http://mail-archives.apache.org/mod_mbox/maven-dev/201104.mbox/%3Cincnbn$4kl$1...@dough.gmane.org%3E
> {{--also-make}} (with {{--projects}}) is useful, but suffers from the problem 
> that dependent projects are always built to the same goal/phase as the 
> selected project(s). That is fine for e.g. {{compile}} or {{install}}, but 
> not for e.g. {{test}} where you would only want to build {{compile}} (or 
> {{test-compile}}) for dependencies, not actually test them.
> Suggest a variant form of this parameter (say {{--also-make-phase}} / 
> {{-amp}}) which would accept a goal or phase to run on dependencies in place 
> of the regular arguments. For example, to run a unit test after making sure 
> all its dependencies have been (re-)compiled:
> {noformat}
> mvn -amp test-compile -pl testedmod test -Dtest=OneTest
> {noformat}
> or to run an (unpacked) web application after (re-)compiling libraries it 
> uses:
> {noformat}
> mvn -amp compile -pl webapp jetty:run
> {noformat}
> You might want to pass a goal rather than a phase, so the name could be 
> misleading, but I think that would be a rarer use case. Ditto passing 
> multiple goals/phases for the upstream projects.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (MNG-5604) make it possible to mark a maven module as deprected

2015-06-15 Thread Jesse Glick (JIRA)

[ 
https://issues.apache.org/jira/browse/MNG-5604?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14586399#comment-14586399
 ] 

Jesse Glick commented on MNG-5604:
--

Seems to duplicate older MNG-3952 if I am not mistaken.

 make it possible to mark a maven module as deprected
 

 Key: MNG-5604
 URL: https://issues.apache.org/jira/browse/MNG-5604
 Project: Maven
  Issue Type: Wish
  Components: Artifacts and Repositories
Affects Versions: 3.2.1
Reporter: Klaus Claszen
Priority: Minor
  Labels: build, pom.xml

 It would be great if it would be possible to mark a maven module as 
 'deprecated'. It would help to document that a module is outdated. The 
 information could be used during build processes to show warnings and guide 
 the user to a better alternative.
 Maybe it could be a pom enhancement linke this
 {code:xml}
 deprecated
   reasonnot maintained anymore/reason
   instead
 groupIdfoo/groupId
 artifactIdbar/artifactId
   /instead
 /deprecated
 {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] (SUREFIRE-1061) wrong test output generation, prevents parsing of generated xml file

2014-09-15 Thread Jesse Glick (JIRA)

[ 
https://jira.codehaus.org/browse/SUREFIRE-1061?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=352791#comment-352791
 ] 

Jesse Glick commented on SUREFIRE-1061:
---

IMO this is a NetBeans bug, not a Surefire bug; the output is well-formed XML.

 wrong test output generation, prevents parsing of generated xml file
 

 Key: SUREFIRE-1061
 URL: https://jira.codehaus.org/browse/SUREFIRE-1061
 Project: Maven Surefire
  Issue Type: Bug
  Components: Maven Surefire Plugin
Affects Versions: 2.16
Reporter: Milos Kleint
Priority: Blocker
 Attachments: testcase.zip


 please see attached sample project demonstrating the problem. This is a 
 regression introduced in 2.16, likely by SUREFIRE-1020. originally reported 
 at https://netbeans.org/bugzilla/show_bug.cgi?id=241649
 when the test contains the following code
 {code:java}
 @Test
 public void testMain() {
   System.out.println(blabla ]]);
 assertTrue(false);
 }
 {code}
 I get following output with these surefire versions (if below not readable, 
 it's included with the sample project):
 {noformat}
 2.16 system-out![CDATA[blabla ![CDATA[
 ]]/system-out
 2.15 system-outblabla ]]gt;
 /system-out
 2.14 system-outblabla ]]
 /system-out
 2.13 system-outblabla ]]gt;
 /system-out
 {noformat}



--
This message was sent by Atlassian JIRA
(v6.1.6#6162)


[jira] (MRELEASE-271) perform goal sometimes fails with multi-module projects

2014-06-17 Thread Jesse Glick (JIRA)

[ 
https://jira.codehaus.org/browse/MRELEASE-271?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=348274#comment-348274
 ] 

Jesse Glick commented on MRELEASE-271:
--

Maven 3.1.0 still seems to be affected. Just have a multimodule project where 
the parent POM and all modules share the same version (and depend on one 
another using {{$\{project.version}}}), using {{maven-release-plugin 2.5}}. 
Unless I specify {{preparationGoalsclean install/preparationGoals}} the 
build fails in {{release:prepare}} on the second module, since it had only run 
the {{verify}} goal on the first module and so it tried to download the release 
version of the first module from the remote repository which of course failed. 
Possibly this is because I am using {{packaginghpi/packaging}} (Jenkins 
plugins) and so it could not find the first module?s final build product in the 
reactor.

 perform goal sometimes fails with multi-module projects
 ---

 Key: MRELEASE-271
 URL: https://jira.codehaus.org/browse/MRELEASE-271
 Project: Maven Release Plugin
  Issue Type: Bug
  Components: prepare
Affects Versions: 2.0-beta-4, 2.0-beta-6
 Environment: XP
Reporter: David Hoffer
 Attachments: MavenReleaseFailure.zip, release.zip, 
 SuccessfulReleaseBuild.txt


 We have a multi-module maven project that has recently started failing in the 
 release:perform goal.  
 We have just added a couple more modules but do not know if that is the cause 
 of the failure.  It seems that the release:perform fails to compile the 
 source after the SCM tag and checkout.  The failure says that it cannot find 
 a dependent jar but it is that jar that it is supposed to be building and 
 releasing!  I updated to use the latest 2.0-beta-6 release plugin version but 
 this did not help. 
 Upon receiving feedback in the maven users group that others have seen this 
 behavior I followed their advise and added configuration 
 preparationGoalsclean install/preparationGoals/configuration to my 
 parent pom which did fix the problem.
 Why is the release goal failing now?  When do I and when do I not need these 
 changes to my pom?  I will attach pom and build logs in hopes this can be 
 fixed soon, let me know if you need additional information.
 -Dave



--
This message was sent by Atlassian JIRA
(v6.1.6#6162)


[jira] (MCOMPILER-144) Using compiler API instead of tools.jar

2014-04-02 Thread Jesse Glick (JIRA)

[ 
https://jira.codehaus.org/browse/MCOMPILER-144?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=344028#comment-344028
 ] 

Jesse Glick commented on MCOMPILER-144:
---

I guess so. It would still be great for the OpenJDK compiler to be published in 
Central somehow, and a ?compiler plugin plugin? implementation published which 
uses it. Ideally this would be coördinated somehow with the OpenJDK tools team 
so it is considered an official build, though this might get into thorny TCK 
territory.

 Using compiler API instead of tools.jar
 ---

 Key: MCOMPILER-144
 URL: https://jira.codehaus.org/browse/MCOMPILER-144
 Project: Maven Compiler Plugin
  Issue Type: New Feature
Reporter: Markus KARG
Priority: Minor

 Currently (MVN 3.0) java compilation needs tools.jar provided by the Sun JDK:
 [ERROR] Unable to locate the Javac Compiler in:
 [ERROR] C:\Program Files\Java\jre6\..\lib\tools.jar
 [ERROR] Please ensure you are using JDK 1.4 or above and
 [ERROR] not a JRE (the com.sun.tools.javac.Main class is required).
 [ERROR] In most cases you can change the location of your Java
 [ERROR] installation by setting the JAVA_HOME environment variable.
 In fact, this is bad because (a) it assumes that a full JDK is installed just 
 for this sole tool where a JRE would be sufficient, (b) tools.jar is not 
 contained in any standards documents and such possibly is not existing on 
 future or non-sun JDK.
 Since JRE 6 (i. e. for many years) the JRE (not JDK!) comes with a 
 standardized (!) API for compilation: The Java Compiler API. It would make 
 sense to use that standardized API instead of forcing the user to have Sun 
 JDK installed.



--
This message was sent by Atlassian JIRA
(v6.1.6#6162)


[jira] (SUREFIRE-1067) Nested causes conflated with wrapper exception

2014-03-04 Thread Jesse Glick (JIRA)
Jesse Glick created SUREFIRE-1067:
-

 Summary: Nested causes conflated with wrapper exception
 Key: SUREFIRE-1067
 URL: https://jira.codehaus.org/browse/SUREFIRE-1067
 Project: Maven Surefire
  Issue Type: Bug
  Components: Maven Surefire Plugin
Affects Versions: 2.13
 Environment: JDK 7u51 on Linux
Reporter: Jesse Glick
Priority: Critical


I created a simple Maven project containing just a test

{code}
package p;
import java.io.IOException;
import org.junit.Test;
public class SomeTest {
@Test public void t() throws Exception {
try {
m();
} catch (RuntimeException x) {
throw new IOException(x);
}
}
private void m() {
throw new UnsupportedOperationException();
}
}
{code}

If I run this using {{maven-surefire-plugin}} 2.12.4, I get a 
{{p.SomeTest.txt}} with the expected output:

{code:none}
---
Test set: p.SomeTest
---
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.037 sec  
FAILURE!
t(p.SomeTest)  Time elapsed: 0.009 sec   ERROR!
java.io.IOException: java.lang.UnsupportedOperationException
at p.SomeTest.t(SomeTest.java:9)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at 
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45)
at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42)
at 
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263)
at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68)
at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
at 
org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
at 
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
at 
org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at 
org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
at 
org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
at 
org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
at 
org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
at 
org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)
Caused by: java.lang.UnsupportedOperationException
at p.SomeTest.m(SomeTest.java:13)
at p.SomeTest.t(SomeTest.java:7)
... 29 more
{code}

But if I use 2.13 or higher, I get

{code:none}
---
Test set: p.SomeTest
---
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.037 sec  
FAILURE!
t(p.SomeTest)  Time elapsed: 0.009 sec   ERROR!
java.io.IOException: java.lang.UnsupportedOperationException
at p.SomeTest.m(SomeTest.java:13)
at p.SomeTest.t(SomeTest.java:7)
{code}

which is missing the potentially crucial information about what threw the 
{{IOException}} and why. (Or if the wrapper exception does not follow the 
convention of appending {{:  + cause}} to its own {{message}}, the Surefire 
output would lack any information about the detail message in the original 
exception.)



--
This message was sent by Atlassian JIRA
(v6.1.6#6162)


[jira] (MNG-4838) Permament move (error 301) not handled properly by Maven

2013-08-18 Thread Jesse Glick (JIRA)

[ 
https://jira.codehaus.org/browse/MNG-4838?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=331033#comment-331033
 ] 

Jesse Glick commented on MNG-4838:
--

Seems like Wagon 2.0 with this fix was first introduced in Maven 3.1.0, meaning 
this should now be considered fixed (and ought to have been included in the 
3.1.0 release notes); am I wrong?

 Permament move (error 301) not handled properly by Maven
 

 Key: MNG-4838
 URL: https://jira.codehaus.org/browse/MNG-4838
 Project: Maven 2  3
  Issue Type: Bug
  Components: Artifacts and Repositories
Affects Versions: 2.0.11, 2.2.1, 3.0-beta-3
Reporter: Grzegorz Slowikowski
Priority: Minor
 Fix For: 3.x / Backlog


 Artifact cannot be downloaded by http-lightweight-wagon used (as default) in 
 all Maven versions except 2.2.0, which uses http-wagon by default.
 Instead of pom and jar files html files appear in the local repo with content 
 like:
 !DOCTYPE HTML PUBLIC -//IETF//DTD HTML 2.0//EN
 htmlhead
 title301 Moved Permanently/title
 /headbody
 h1Moved Permanently/h1
 pThe document has moved a 
 href=http://download.java.net/maven/2/org/codehaus/castor/castor-xml-schema/1.2/castor-xml-schema-1.2.pom;here/a./p
 hr
 addressApache Server at maven2-repository.dev.java.net Port 443/address
 /body/html
 Only Maven 2.2.0 handles 301 properly.
 By the way, I haven't expected such Apache configuration (permament move) in 
 central Maven repo.
 As you can see this is not handled properly by almost all versions of Maven.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (SUREFIRE-1022) system-out malformed XML

2013-08-13 Thread Jesse Glick (JIRA)
Jesse Glick created SUREFIRE-1022:
-

 Summary: system-out malformed XML
 Key: SUREFIRE-1022
 URL: https://jira.codehaus.org/browse/SUREFIRE-1022
 Project: Maven Surefire
  Issue Type: Bug
Affects Versions: 2.15
Reporter: Jesse Glick
Priority: Critical


https://jenkins.ci.cloudbees.com/job/core/job/jenkins_main_trunk/ws/test/target/surefire-reports/TEST-hudson.tasks.EnvVarsInConfigTasksTest.xml
 as of build #1082 was malformed:

{code:xml}
system-out=== Starting EnvVarsInConfigTasksTest.testNativeMavenOnSlave
#1 completed
Legacy code started this job.  No cause information is available
Building remotely on 
amp#;[8mha:nB+LCP9b85aBtbiIQTGjNKU4P08vOT+vOD8nVc83PyU1x6OyILUoJzMv2y+/JJUBAhiZGBgqihhk0NSjKDWzXb3RdlLBUSYGJk8GtpzUvPSSDB8G5tKinBIGIZ+sxLJE/ZzEvHT94JKizLx0a6BxUmjGOUNodHsLgAy2EgYB/eT83ILSktQi/eKcxLJUQwA49mDyxQ==amp#;[0mslave1
 in workspace 
/scratch/jenkins/workspace/core/jenkins_main_trunk/test/target/hudson8856170059407332280test/workspace/test0
Deleting existing workspace 
/scratch/jenkins/workspace/core/jenkins_main_trunk/test/target/hudson8856170059407332280test/workspace/test0
Staging 
file:/scratch/jenkins/workspace/core/jenkins_main_trunk/test/target/classes/simple-projects.zip
ERROR: Maven Home 
/scratch/jenkins/workspace/core/jenkins_main_trunk/test/target/apache-maven-2.2.1${TOOLS_DUMMY_LOCATION}
 doesn't exist
amp#;[8mha:WB+LCP9b85aBtbiIQSmjNKU4P08vOT+vOD8nVc8DzHWtSE4tKMnMz/PLL0ldFVf2c+b/lb5MDAwVRQxSaBqcITRIIQMEMIIUFgAAckCEiWA=amp#;[0mFinished:
 FAILURE

#2 completed
/system-out
{code}

Here the original stdout contains ANSI escapes. It seems 
{{StatelessXmlReporter.escapeXml}} is inserting the {{amp#;}} for reasons 
relating to SUREFIRE-456. Whatever the intent was ({{\#27;}}?), it is clearly 
not working.

Cf.: https://issues.jenkins-ci.org/browse/JENKINS-19186

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (MNG-5497) maven-metadata.xml checked if dependency expressed snapshot range even if actual version is fixed

2013-07-22 Thread Jesse Glick (JIRA)
Jesse Glick created MNG-5497:


 Summary: maven-metadata.xml checked if dependency expressed 
snapshot range even if actual version is fixed
 Key: MNG-5497
 URL: https://jira.codehaus.org/browse/MNG-5497
 Project: Maven 2  3
  Issue Type: Bug
  Components: Artifacts and Repositories
Affects Versions: 3.1.0, 3.0.5, 2.2.1
 Environment: Ubuntu, JDK 7
Reporter: Jesse Glick
Priority: Minor


Consider

{code:xml}
project xmlns=http://maven.apache.org/POM/4.0.0;
modelVersion4.0.0/modelVersion
groupIdtest/groupId
artifactIdtest/artifactId
version1.0-SNAPSHOT/version
dependencies
!--
dependency
artifactIdjffi/artifactId
groupIdcom.github.jnr/groupId
version1.2.7/version
/dependency
dependency
artifactIdjnr-x86asm/artifactId
groupIdcom.github.jnr/groupId
version1.0.2/version
/dependency
--
dependency
groupIdcom.github.jnr/groupId
artifactIdjnr-ffi/artifactId
version1.0.4/version
/dependency
/dependencies
/project
{code}

i.e. a project with a dependency on {{jnr-ffi 1.0.4}}. Building this with 
{{--update-snapshots}} checks the remote repositories for newer versions of 
transitive dependencies:

{code:none}
...
[INFO] 
[INFO] Building test 1.0-SNAPSHOT
[INFO] 
Downloading: 
http://repo.maven.apache.org/maven2/com/github/jnr/jffi/maven-metadata.xml
Downloading: 
https://oss.sonatype.org/content/repositories/snapshots/com/github/jnr/jffi/maven-metadata.xml
Downloaded: 
http://repo.maven.apache.org/maven2/com/github/jnr/jffi/maven-metadata.xml (605 
B at 1.9 KB/sec)
Downloaded: 
https://oss.sonatype.org/content/repositories/snapshots/com/github/jnr/jffi/maven-metadata.xml
 (361 B at 0.4 KB/sec)
Downloading: 
http://repo.maven.apache.org/maven2/com/github/jnr/jnr-x86asm/maven-metadata.xml
Downloading: 
https://oss.sonatype.org/content/repositories/snapshots/com/github/jnr/jnr-x86asm/maven-metadata.xml
Downloaded: 
http://repo.maven.apache.org/maven2/com/github/jnr/jnr-x86asm/maven-metadata.xml
 (362 B at 3.9 KB/sec)
[INFO] 
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ test ---
...
{code}

which makes sense since the dependency uses version ranges for the transitive 
dependencies:

{code:xml}
...
dependency
  groupIdcom.github.jnr/groupId
  artifactIdjffi/artifactId
  version[1.2.1, 1.3.0)/version
  scopecompile/scope
/dependency
dependency
  groupIdcom.github.jnr/groupId
  artifactIdjffi/artifactId
  version[1.2.1, 1.3.0)/version
  scoperuntime/scope
  classifiernative/classifier
/dependency
...
dependency
  groupIdcom.github.jnr/groupId
  artifactIdjnr-x86asm/artifactId
  version[1.0.2,)/version
  scopecompile/scope
/dependency
...
{code}

Now suppose you want your own project to use definite versions of the 
transitive dependencies. Uncomment the lines in the original POM to do that (as 
per {{dependency:tree}}). Yet when building this, Maven _still_ checks the 
remote repositories even though the result cannot matter!

Same in Maven 2:

{code:none}
...
[INFO] artifact com.github.jnr:jffi: checking for updates from central
[INFO] artifact com.github.jnr:jnr-x86asm: checking for updates from central
...
{code}

This is annoying as even without {{-U}} a network connection is made once per 
day or so when building your project. Affects {{jenkins-core}}.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (SUREFIRE-829) junit | Support inheritance while running test cases belonging to a particular category/group

2013-06-10 Thread Jesse Glick (JIRA)

[ 
https://jira.codehaus.org/browse/SUREFIRE-829?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=326485#comment-326485
 ] 

Jesse Glick commented on SUREFIRE-829:
--

Seems wrong to me. If the authors of {{Category}} had intended it to be 
inherited, they would have marked it {{@Inherited}}. If they simply never 
thought of this use case but agree that it should work, then a new JUnit 
release should add the annotation. In neither case should Surefire be patched.

 junit | Support inheritance while running test cases belonging to a 
 particular category/group
 -

 Key: SUREFIRE-829
 URL: https://jira.codehaus.org/browse/SUREFIRE-829
 Project: Maven Surefire
  Issue Type: Bug
  Components: Junit 4.x support
Affects Versions: 2.12
Reporter: Gayathri Muralidharan
Assignee: Andreas Gudian
 Fix For: 2.15

 Attachments: SUREFIRE-829-common-junit48-20130506.patch, 
 SUREFIRE-829-common-junit48-new.patch, SUREFIRE-829-common-junit48.patch


 We have a parent class which is extended by all the unit test cases (multi 
 module maven based project)
 It would be great if surefire plugin config looks for the category in parent 
 class as well. This will avoid redundant @Category(UnitTestCategory.class) 
 annotations, as we expect all unit test cases to extend the corresponding 
 base class and the base class will alone be annotated with 
 @Category(UnitTestCategory.class)
 Please let me know if this can be achieved by any other config.
 Thanks,
 Gayathri

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (MSHADE-147) Failure to shade without explanation when signature is invalid

2013-05-21 Thread Jesse Glick (JIRA)
Jesse Glick created MSHADE-147:
--

 Summary: Failure to shade without explanation when signature is 
invalid
 Key: MSHADE-147
 URL: https://jira.codehaus.org/browse/MSHADE-147
 Project: Maven 2.x Shade Plugin
  Issue Type: Bug
Affects Versions: 2.0
 Environment: JDK 7u21, Linux, Maven 3.0.5
Reporter: Jesse Glick
Priority: Minor
 Attachments: stuff.zip

If there is a signature error in a shaded dependency, you can get a build error 
like this:

{code:none}
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal 
org.apache.maven.plugins:maven-shade-plugin:2.0:shade (shade) on project stuff: 
Error creating shaded jar: Invalid signature file digest for Manifest main 
attributes
at 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:217)
at 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at 
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
at 
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
at 
org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
at 
org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
at 
org.jvnet.hudson.maven3.launcher.Maven3Launcher.main(Maven3Launcher.java:79)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at 
org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.java:329)
at 
org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:239)
at org.jvnet.hudson.maven3.agent.Maven3Main.launch(Maven3Main.java:158)
at hudson.maven.Maven3Builder.call(Maven3Builder.java:100)
at hudson.maven.Maven3Builder.call(Maven3Builder.java:66)
at hudson.remoting.UserRequest.perform(UserRequest.java:118)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:326)
at 
hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)
Caused by: org.apache.maven.plugin.MojoExecutionException: Error creating 
shaded jar: Invalid signature file digest for Manifest main attributes
at 
org.apache.maven.plugins.shade.mojo.ShadeMojo.execute(ShadeMojo.java:551)
at 
org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
at 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
... 27 more
Caused by: java.lang.SecurityException: Invalid signature file digest for 
Manifest main attributes
at 
sun.security.util.SignatureFileVerifier.processImpl(SignatureFileVerifier.java:240)
at 
sun.security.util.SignatureFileVerifier.process(SignatureFileVerifier.java:193)
at java.util.jar.JarVerifier.processEntry(JarVerifier.java:305)
at java.util.jar.JarVerifier.update(JarVerifier.java:216)
at java.util.jar.JarFile.initializeVerifier(JarFile.java:345)
at java.util.jar.JarFile.getInputStream(JarFile.java:412)
at 
org.apache.maven.plugins.shade.DefaultShader.shade(DefaultShader.java:134)
at 
org.apache.maven.plugins.shade.mojo.ShadeMojo.execute(ShadeMojo.java:484)
... 29 more
{code}

Apparently {{DefaultShader}} is using the {{JarFile}} constructor that enables 
signature verification. That may be correct, but if so it should catch 
{{SecurityException}} and report the problem more nicely, say with the name of 
the bad dependency, and perhaps with instructions on how to configure the 
plugin to ignore this dependency or override the signature check.

Attaching my test project, though I cannot consistently reproduce the problem 
with this. (Seems to file from inside Jenkins but not outside; not yet sure 
what the difference would be.)

MSHADE-90 is a bit 

[jira] (MNG-5075) MavenProject.getParent throws undocumented ISE

2013-04-29 Thread Jesse Glick (JIRA)

[ 
https://jira.codehaus.org/browse/MNG-5075?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=324402#comment-324402
 ] 

Jesse Glick commented on MNG-5075:
--

[JENKINS-17775|https://issues.jenkins-ci.org/browse/JENKINS-17775] is another 
victim.

 MavenProject.getParent throws undocumented ISE
 --

 Key: MNG-5075
 URL: https://jira.codehaus.org/browse/MNG-5075
 Project: Maven 2  3
  Issue Type: Bug
  Components: Embedding
Affects Versions: 3.0.3
Reporter: Jesse Glick
 Fix For: 3.1.x

 Attachments: MavenProject-getParent-ISE.diff


 http://bugzilla-attachments-197994.netbeans.org/bugzilla/attachment.cgi?id=107899
  shows a stack trace encountered when calling {{MavenProject.getParent}} on a 
 project with some errors (probably POMs missing in the local repository).
 This method has no Javadoc comment, so it is hard to know exactly what it is 
 permitted/supposed to do, but {{hasParent}} implies that {{null}} is a valid 
 return value, and there is no {{throws IllegalStateException}} clause. The 
 attached patch brings the behavior in line with that signature. (I think I 
 got the {{PlexusTestCase}} infrastructure working with all the required 
 wiring but it may be possible to simplify the test case.)
 Cleaner might be to just declare {{getParent}} (and also {{hasParent}}?) to 
 throw {{ProjectBuildingException}}, though this would be a 
 source-incompatible change. (Only binary-incompatible for clients which are 
 already catching {{IllegalStateException}}!)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (MNG-5075) MavenProject.getParent throws undocumented ISE

2013-04-29 Thread Jesse Glick (JIRA)

[ 
https://jira.codehaus.org/browse/MNG-5075?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=324403#comment-324403
 ] 

Jesse Glick commented on MNG-5075:
--

Pull request: https://github.com/apache/maven/pull/8

 MavenProject.getParent throws undocumented ISE
 --

 Key: MNG-5075
 URL: https://jira.codehaus.org/browse/MNG-5075
 Project: Maven 2  3
  Issue Type: Bug
  Components: Embedding
Affects Versions: 3.0.3
Reporter: Jesse Glick
 Fix For: 3.1.x

 Attachments: MavenProject-getParent-ISE.diff


 http://bugzilla-attachments-197994.netbeans.org/bugzilla/attachment.cgi?id=107899
  shows a stack trace encountered when calling {{MavenProject.getParent}} on a 
 project with some errors (probably POMs missing in the local repository).
 This method has no Javadoc comment, so it is hard to know exactly what it is 
 permitted/supposed to do, but {{hasParent}} implies that {{null}} is a valid 
 return value, and there is no {{throws IllegalStateException}} clause. The 
 attached patch brings the behavior in line with that signature. (I think I 
 got the {{PlexusTestCase}} infrastructure working with all the required 
 wiring but it may be possible to simplify the test case.)
 Cleaner might be to just declare {{getParent}} (and also {{hasParent}}?) to 
 throw {{ProjectBuildingException}}, though this would be a 
 source-incompatible change. (Only binary-incompatible for clients which are 
 already catching {{IllegalStateException}}!)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (SUREFIRE-974) Custom junit.framework.TestSuite subtypes ignored when excludedGroups defined

2013-04-08 Thread Jesse Glick (JIRA)

[ 
https://jira.codehaus.org/browse/SUREFIRE-974?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=323380#comment-323380
 ] 

Jesse Glick commented on SUREFIRE-974:
--

I filed SUREFIRE-984 to track the reporting format.

 Custom junit.framework.TestSuite subtypes ignored when excludedGroups defined
 -

 Key: SUREFIRE-974
 URL: https://jira.codehaus.org/browse/SUREFIRE-974
 Project: Maven Surefire
  Issue Type: Bug
Affects Versions: 2.14
Reporter: Jesse Glick
Assignee: Andreas Gudian
 Attachments: SUREFIRE-974.zip


 In Jenkins sources @ 919bab8, run:
 {{mvn -f test/pom.xml -Dtest=CoreJellyTest 
 -Dtest.excluded.groups=org.jvnet.hudson.test.FailsOnCloud test}}
 You will get errors from every test case in this suite. When 
 {{test.excluded.groups}} is not defined, it passes.
 This property just sets {{excludedGroups}} for the benefit of some unrelated 
 JUnit 4 tests in the same module which use {{@Category}}. But turning it on 
 apparently changes how JUnit 3 tests are run, too. The named suite has a 
 {{public static Test suite()}} method which creates a subclass of 
 {{TestSuite}} that overrides {{void run(TestResult)}}; when 
 {{excludedGroups}} is defined, a plain {{TestSuite}} is created which fails 
 to set the proper context for test cases and fails utterly.
 Refactoring this test suite to use JUnit 4 idioms is probably not an option 
 at the moment for compatibility reasons. Why is Surefire failing to correctly 
 run JUnit 3 tests just because groups are defined?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (SUREFIRE-984) Different reporting format for 3.x custom suites when JUnit 4.7 provider enabled

2013-04-08 Thread Jesse Glick (JIRA)
Jesse Glick created SUREFIRE-984:


 Summary: Different reporting format for 3.x custom suites when 
JUnit 4.7 provider enabled
 Key: SUREFIRE-984
 URL: https://jira.codehaus.org/browse/SUREFIRE-984
 Project: Maven Surefire
  Issue Type: Bug
  Components: Junit 4.7+ (parallel) support
 Environment: JDK 7u17, Ubuntu. git://github.com/jenkinsci/jenkins.git 
@94f781c
Reporter: Jesse Glick
Priority: Minor


In Jenkins sources, prepare with e.g. {{mvn -am -pl test -DskipTests install}} 
then run

{code:none}
mvn -f test/pom.xml -Dtest=CoreJellyTest clean test
{code}

You will see these files in {{test/target/surefire-reports}}:

{code:none}
CoreJellyTest-output.txt
CoreJellyTest.txt
TEST-CoreJellyTest.xml
{code}

as expected. Now run:

{code:none}
mvn -f test/pom.xml -Dtest=CoreJellyTest -DexcludedGroups=hudson.ExtensionPoint 
clean test
{code}

(This exclusion does not change what tests are run, only which Surefire 
provider is used to run them.) You will see:

{code:none}
null-output.txt
org.jvnet.hudson.test.JellyTestSuiteBuilder$JellyCheck-output.txt
org.jvnet.hudson.test.JellyTestSuiteBuilder$JellyCheck.txt
org.jvnet.hudson.test.junit.FailedTest.txt
TEST-org.jvnet.hudson.test.JellyTestSuiteBuilder$JellyCheck.xml
TEST-org.jvnet.hudson.test.junit.FailedTest.xml
{code}

As mentioned at the end of SUREFIRE-974, normally {{TEST-*.xml}} is named 
according to the class defining the {{suite}} method, with {{classname}} 
specifying the class extending {{TestSuite}}. But with {{excludedGroups}} the 
result file is named according to the suite class ({{classname}} also 
specifying this), and there is no indication anywhere of the name of the class 
defining {{suite}}.

Tried to build 2.15-SNAPSHOT from sources to check behavior there, but failed 
with

{code:none}
Could not resolve dependencies for project 
org.apache.maven.surefire:surefire-api:jar:2.15-SNAPSHOT: Could not find 
artifact org.apache.maven.shared:maven-shared-utils:jar:0.4
{code}

maybe related to mirror config.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (SUREFIRE-984) Different reporting format for 3.x custom suites when JUnit 4.7 provider enabled

2013-04-08 Thread Jesse Glick (JIRA)

[ 
https://jira.codehaus.org/browse/SUREFIRE-984?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=323381#comment-323381
 ] 

Jesse Glick commented on SUREFIRE-984:
--

By the way, the relevant sources are:

* 
[CoreJellyTest.java|https://github.com/jenkinsci/jenkins/blob/master/test/src/test/java/CoreJellyTest.java]
* 
[JellyTestSuiteBuilder.java|https://github.com/jenkinsci/jenkins/blob/master/test/src/main/java/org/jvnet/hudson/test/JellyTestSuiteBuilder.java]
* 
[GroupedTest.java|https://github.com/jenkinsci/jenkins/blob/master/test/src/main/java/org/jvnet/hudson/test/junit/GroupedTest.java]
* 
[FailedTest.java|https://github.com/jenkinsci/jenkins/blob/master/test/src/main/java/org/jvnet/hudson/test/junit/FailedTest.java]

 Different reporting format for 3.x custom suites when JUnit 4.7 provider 
 enabled
 

 Key: SUREFIRE-984
 URL: https://jira.codehaus.org/browse/SUREFIRE-984
 Project: Maven Surefire
  Issue Type: Bug
  Components: Junit 4.7+ (parallel) support
 Environment: JDK 7u17, Ubuntu. git://github.com/jenkinsci/jenkins.git 
 @94f781c
Reporter: Jesse Glick
Priority: Minor

 In Jenkins sources, prepare with e.g. {{mvn -am -pl test -DskipTests 
 install}} then run
 {code:none}
 mvn -f test/pom.xml -Dtest=CoreJellyTest clean test
 {code}
 You will see these files in {{test/target/surefire-reports}}:
 {code:none}
 CoreJellyTest-output.txt
 CoreJellyTest.txt
 TEST-CoreJellyTest.xml
 {code}
 as expected. Now run:
 {code:none}
 mvn -f test/pom.xml -Dtest=CoreJellyTest 
 -DexcludedGroups=hudson.ExtensionPoint clean test
 {code}
 (This exclusion does not change what tests are run, only which Surefire 
 provider is used to run them.) You will see:
 {code:none}
 null-output.txt
 org.jvnet.hudson.test.JellyTestSuiteBuilder$JellyCheck-output.txt
 org.jvnet.hudson.test.JellyTestSuiteBuilder$JellyCheck.txt
 org.jvnet.hudson.test.junit.FailedTest.txt
 TEST-org.jvnet.hudson.test.JellyTestSuiteBuilder$JellyCheck.xml
 TEST-org.jvnet.hudson.test.junit.FailedTest.xml
 {code}
 As mentioned at the end of SUREFIRE-974, normally {{TEST-*.xml}} is named 
 according to the class defining the {{suite}} method, with {{classname}} 
 specifying the class extending {{TestSuite}}. But with {{excludedGroups}} the 
 result file is named according to the suite class ({{classname}} also 
 specifying this), and there is no indication anywhere of the name of the 
 class defining {{suite}}.
 Tried to build 2.15-SNAPSHOT from sources to check behavior there, but failed 
 with
 {code:none}
 Could not resolve dependencies for project 
 org.apache.maven.surefire:surefire-api:jar:2.15-SNAPSHOT: Could not find 
 artifact org.apache.maven.shared:maven-shared-utils:jar:0.4
 {code}
 maybe related to mirror config.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (SUREFIRE-984) Different reporting format for 3.x custom suites when JUnit 4.7 provider enabled

2013-04-08 Thread Jesse Glick (JIRA)

[ 
https://jira.codehaus.org/browse/SUREFIRE-984?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=323381#comment-323381
 ] 

Jesse Glick edited comment on SUREFIRE-984 at 4/8/13 9:12 AM:
--

By the way, the relevant sources are:

* 
[CoreJellyTest.java|https://github.com/jenkinsci/jenkins/blob/master/test/src/test/java/CoreJellyTest.java]
* 
[JellyTestSuiteBuilder.java|https://github.com/jenkinsci/jenkins/blob/master/test/src/main/java/org/jvnet/hudson/test/JellyTestSuiteBuilder.java]
* 
[GroupedTest.java|https://github.com/jenkinsci/jenkins/blob/master/test/src/main/java/org/jvnet/hudson/test/junit/GroupedTest.java]
* 
[FailedTest.java|https://github.com/jenkinsci/jenkins/blob/master/test/src/main/java/org/jvnet/hudson/test/junit/FailedTest.java]

and Jenkins as of the mentioned revision uses Surefire 2.14.

  was (Author: jglick):
By the way, the relevant sources are:

* 
[CoreJellyTest.java|https://github.com/jenkinsci/jenkins/blob/master/test/src/test/java/CoreJellyTest.java]
* 
[JellyTestSuiteBuilder.java|https://github.com/jenkinsci/jenkins/blob/master/test/src/main/java/org/jvnet/hudson/test/JellyTestSuiteBuilder.java]
* 
[GroupedTest.java|https://github.com/jenkinsci/jenkins/blob/master/test/src/main/java/org/jvnet/hudson/test/junit/GroupedTest.java]
* 
[FailedTest.java|https://github.com/jenkinsci/jenkins/blob/master/test/src/main/java/org/jvnet/hudson/test/junit/FailedTest.java]
  
 Different reporting format for 3.x custom suites when JUnit 4.7 provider 
 enabled
 

 Key: SUREFIRE-984
 URL: https://jira.codehaus.org/browse/SUREFIRE-984
 Project: Maven Surefire
  Issue Type: Bug
  Components: Junit 4.7+ (parallel) support
 Environment: JDK 7u17, Ubuntu. git://github.com/jenkinsci/jenkins.git 
 @94f781c
Reporter: Jesse Glick
Priority: Minor

 In Jenkins sources, prepare with e.g. {{mvn -am -pl test -DskipTests 
 install}} then run
 {code:none}
 mvn -f test/pom.xml -Dtest=CoreJellyTest clean test
 {code}
 You will see these files in {{test/target/surefire-reports}}:
 {code:none}
 CoreJellyTest-output.txt
 CoreJellyTest.txt
 TEST-CoreJellyTest.xml
 {code}
 as expected. Now run:
 {code:none}
 mvn -f test/pom.xml -Dtest=CoreJellyTest 
 -DexcludedGroups=hudson.ExtensionPoint clean test
 {code}
 (This exclusion does not change what tests are run, only which Surefire 
 provider is used to run them.) You will see:
 {code:none}
 null-output.txt
 org.jvnet.hudson.test.JellyTestSuiteBuilder$JellyCheck-output.txt
 org.jvnet.hudson.test.JellyTestSuiteBuilder$JellyCheck.txt
 org.jvnet.hudson.test.junit.FailedTest.txt
 TEST-org.jvnet.hudson.test.JellyTestSuiteBuilder$JellyCheck.xml
 TEST-org.jvnet.hudson.test.junit.FailedTest.xml
 {code}
 As mentioned at the end of SUREFIRE-974, normally {{TEST-*.xml}} is named 
 according to the class defining the {{suite}} method, with {{classname}} 
 specifying the class extending {{TestSuite}}. But with {{excludedGroups}} the 
 result file is named according to the suite class ({{classname}} also 
 specifying this), and there is no indication anywhere of the name of the 
 class defining {{suite}}.
 Tried to build 2.15-SNAPSHOT from sources to check behavior there, but failed 
 with
 {code:none}
 Could not resolve dependencies for project 
 org.apache.maven.surefire:surefire-api:jar:2.15-SNAPSHOT: Could not find 
 artifact org.apache.maven.shared:maven-shared-utils:jar:0.4
 {code}
 maybe related to mirror config.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (MNG-3092) Version ranges with non-snapshot bounds can contain snapshot versions

2013-04-02 Thread Jesse Glick (JIRA)

[ 
https://jira.codehaus.org/browse/MNG-3092?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=323037#comment-323037
 ] 

Jesse Glick commented on MNG-3092:
--

An example using Maven 3.0.5: 
https://github.com/stapler/stapler-adjunct-codemirror/commit/da995b03a1f165fef7c9d34eadb15797f58399cd
 shows the workaround for what I take to be this issue. In versions of Jenkins 
using stapler-adjunct-codemirror 1.1 prior to this change?and plugins depending 
on those versions of Jenkins?at least one build per day spends a chunk of time 
(10?20s?) looking for nonexistent SNAPSHOT versions of a transitive dependency.

(Where it gets these version numbers from, I have no idea?the Artifactory 
mirror makes no mention of such versions in {{maven-metadata.xml}}, and the 
occurrences in my local repo are all freshly created 
{{resolver-status.properties}} and {{stapler-1.176-SNAPSHOT.pom.lastUpdated}} 
files which list only ?errors? and soon get recreated if I delete them.)

Maven 2.2.1 also downloads 1.208-SNAPSHOT, which _does_ exist, but none of 
these intermediate versions.

I have also encountered builds that _failed_ trying to find one of these 
nonexistent snapshots, though I cannot now reproduce this problem.

 Version ranges with non-snapshot bounds can contain snapshot versions
 -

 Key: MNG-3092
 URL: https://jira.codehaus.org/browse/MNG-3092
 Project: Maven 2  3
  Issue Type: Bug
  Components: Dependencies
Reporter: Mark Hobson
Assignee: Jason van Zyl
 Fix For: 3.1.1

 Attachments: MNG-3092.patch, MNG-3092.patch


 Contrary to the 2.0 design docs:
 Resolution of dependency ranges should not resolve to a snapshot 
 (development version) unless it is included as an explicit boundary.
 -- from 
 http://docs.codehaus.org/display/MAVEN/Dependency+Mediation+and+Conflict+Resolution#DependencyMediationandConflictResolution-Incorporating%7B%7BSNAPSHOT%7D%7Dversionsintothespecification
 The following is equates to true:
 VersionRange.createFromVersionSpec( [1.0,1.1] ).containsVersion( new 
 DefaultArtifactVersion( 1.1-SNAPSHOT ) )
 The attached patch only allows snapshot versions to be contained in a range 
 if they are equal to one of the boundaries.  Note that this is a strict 
 equality, so [1.0,1.2-SNAPSHOT] will not contain 1.1-SNAPSHOT.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (SUREFIRE-974) Custom junit.framework.TestSuite subtypes ignored when excludedGroups defined

2013-03-28 Thread Jesse Glick (JIRA)

 [ 
https://jira.codehaus.org/browse/SUREFIRE-974?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jesse Glick closed SUREFIRE-974.


Resolution: Won't Fix

I do not see anything Surefire could do either. I did find a simple workaround, 
though: extend {{JUnit4TestAdapter}} rather than {{TestSuite}}. This even works 
properly when running single test methods.

 Custom junit.framework.TestSuite subtypes ignored when excludedGroups defined
 -

 Key: SUREFIRE-974
 URL: https://jira.codehaus.org/browse/SUREFIRE-974
 Project: Maven Surefire
  Issue Type: Bug
Affects Versions: 2.14
Reporter: Jesse Glick
Assignee: Andreas Gudian
 Fix For: 2.15

 Attachments: SUREFIRE-974.zip


 In Jenkins sources @ 919bab8, run:
 {{mvn -f test/pom.xml -Dtest=CoreJellyTest 
 -Dtest.excluded.groups=org.jvnet.hudson.test.FailsOnCloud test}}
 You will get errors from every test case in this suite. When 
 {{test.excluded.groups}} is not defined, it passes.
 This property just sets {{excludedGroups}} for the benefit of some unrelated 
 JUnit 4 tests in the same module which use {{@Category}}. But turning it on 
 apparently changes how JUnit 3 tests are run, too. The named suite has a 
 {{public static Test suite()}} method which creates a subclass of 
 {{TestSuite}} that overrides {{void run(TestResult)}}; when 
 {{excludedGroups}} is defined, a plain {{TestSuite}} is created which fails 
 to set the proper context for test cases and fails utterly.
 Refactoring this test suite to use JUnit 4 idioms is probably not an option 
 at the moment for compatibility reasons. Why is Surefire failing to correctly 
 run JUnit 3 tests just because groups are defined?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (SUREFIRE-974) Custom junit.framework.TestSuite subtypes ignored when excludedGroups defined

2013-03-28 Thread Jesse Glick (JIRA)

[ 
https://jira.codehaus.org/browse/SUREFIRE-974?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=322817#comment-322817
 ] 

Jesse Glick commented on SUREFIRE-974:
--

The {{JUnit4TestAdapter}} workaround does not work when using 
{{TestSuite.init()}} and {{.addTest(Test)}}, however. For that case 
implementing {{Filterable}} to do nothing is acceptable since typically the 
{{Test suite()}} computed a set of tests to add in a way that would not 
intrinsically support filtering to begin with; in my case the test cases do not 
correspond to methods.

I do notice some other differences in the result files between test runs using 
{{excludedGroups}} and those without. For example, normally {{TEST-*.xml}} is 
named according to the class defining the {{suite}} method, with {{classname}} 
specifying the class extending {{TestSuite}}. But with {{excludedGroups}} the 
result file is named according to the suite class ({{classname}} also 
specifying this), and there is no indication anywhere of the name of the class 
defining {{suite}}. Not sure if this is fixable on the Surefire side.

 Custom junit.framework.TestSuite subtypes ignored when excludedGroups defined
 -

 Key: SUREFIRE-974
 URL: https://jira.codehaus.org/browse/SUREFIRE-974
 Project: Maven Surefire
  Issue Type: Bug
Affects Versions: 2.14
Reporter: Jesse Glick
Assignee: Andreas Gudian
 Fix For: 2.15

 Attachments: SUREFIRE-974.zip


 In Jenkins sources @ 919bab8, run:
 {{mvn -f test/pom.xml -Dtest=CoreJellyTest 
 -Dtest.excluded.groups=org.jvnet.hudson.test.FailsOnCloud test}}
 You will get errors from every test case in this suite. When 
 {{test.excluded.groups}} is not defined, it passes.
 This property just sets {{excludedGroups}} for the benefit of some unrelated 
 JUnit 4 tests in the same module which use {{@Category}}. But turning it on 
 apparently changes how JUnit 3 tests are run, too. The named suite has a 
 {{public static Test suite()}} method which creates a subclass of 
 {{TestSuite}} that overrides {{void run(TestResult)}}; when 
 {{excludedGroups}} is defined, a plain {{TestSuite}} is created which fails 
 to set the proper context for test cases and fails utterly.
 Refactoring this test suite to use JUnit 4 idioms is probably not an option 
 at the moment for compatibility reasons. Why is Surefire failing to correctly 
 run JUnit 3 tests just because groups are defined?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (SUREFIRE-974) Custom junit.framework.TestSuite subtypes ignored when excludedGroups defined

2013-03-18 Thread Jesse Glick (JIRA)
Jesse Glick created SUREFIRE-974:


 Summary: Custom junit.framework.TestSuite subtypes ignored when 
excludedGroups defined
 Key: SUREFIRE-974
 URL: https://jira.codehaus.org/browse/SUREFIRE-974
 Project: Maven Surefire
  Issue Type: Bug
Affects Versions: 2.14
Reporter: Jesse Glick


In Jenkins sources @ 919bab8, run:

{{mvn -f test/pom.xml -Dtest=CoreJellyTest 
-Dtest.excluded.groups=org.jvnet.hudson.test.FailsOnCloud test}}

You will get errors from every test case in this suite. When 
{{test.excluded.groups}} is not defined, it passes.

This property just sets {{excludedGroups}} for the benefit of some unrelated 
JUnit 4 tests in the same module which use {{@Category}}. But turning it on 
apparently changes how JUnit 3 tests are run, too. The named suite has a 
{{public static Test suite()}} method which creates a subclass of {{TestSuite}} 
that overrides {{void run(TestResult)}}; when {{excludedGroups}} is defined, a 
plain {{TestSuite}} is created which fails to set the proper context for test 
cases and fails utterly.

Refactoring this test suite to use JUnit 4 idioms is probably not an option at 
the moment for compatibility reasons. Why is Surefire failing to correctly run 
JUnit 3 tests just because groups are defined?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (SUREFIRE-974) Custom junit.framework.TestSuite subtypes ignored when excludedGroups defined

2013-03-18 Thread Jesse Glick (JIRA)

 [ 
https://jira.codehaus.org/browse/SUREFIRE-974?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jesse Glick updated SUREFIRE-974:
-

Attachment: SUREFIRE-974.zip

Attaching a demo project. {{mvn test}} works as expected. {{mvn -Pbug test}} 
excludes {{Complex4Test.two}} as expected, but also makes {{Complex3Test}} 
fails.

 Custom junit.framework.TestSuite subtypes ignored when excludedGroups defined
 -

 Key: SUREFIRE-974
 URL: https://jira.codehaus.org/browse/SUREFIRE-974
 Project: Maven Surefire
  Issue Type: Bug
Affects Versions: 2.14
Reporter: Jesse Glick
 Attachments: SUREFIRE-974.zip


 In Jenkins sources @ 919bab8, run:
 {{mvn -f test/pom.xml -Dtest=CoreJellyTest 
 -Dtest.excluded.groups=org.jvnet.hudson.test.FailsOnCloud test}}
 You will get errors from every test case in this suite. When 
 {{test.excluded.groups}} is not defined, it passes.
 This property just sets {{excludedGroups}} for the benefit of some unrelated 
 JUnit 4 tests in the same module which use {{@Category}}. But turning it on 
 apparently changes how JUnit 3 tests are run, too. The named suite has a 
 {{public static Test suite()}} method which creates a subclass of 
 {{TestSuite}} that overrides {{void run(TestResult)}}; when 
 {{excludedGroups}} is defined, a plain {{TestSuite}} is created which fails 
 to set the proper context for test cases and fails utterly.
 Refactoring this test suite to use JUnit 4 idioms is probably not an option 
 at the moment for compatibility reasons. Why is Surefire failing to correctly 
 run JUnit 3 tests just because groups are defined?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (SUREFIRE-974) Custom junit.framework.TestSuite subtypes ignored when excludedGroups defined

2013-03-18 Thread Jesse Glick (JIRA)

[ 
https://jira.codehaus.org/browse/SUREFIRE-974?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=322102#comment-322102
 ] 

Jesse Glick commented on SUREFIRE-974:
--

If there is a bug in JUnit itself, I cannot find it:

{code}
System.err.println(surefire-junit4);
RunNotifier notifier = new RunNotifier();
notifier.addListener(new TextListener(System.err));
Request.aClass(Complex3Test.class).getRunner().run(notifier);
System.err.println(surefire-junit47);
JUnitCore core = new JUnitCore();
core.addListener(new TextListener(System.err));
System.err.println(failures:  + core.run(Request.classes(new Computer(), 
Complex3Test.class)).getFailureCount());
{code}

 Custom junit.framework.TestSuite subtypes ignored when excludedGroups defined
 -

 Key: SUREFIRE-974
 URL: https://jira.codehaus.org/browse/SUREFIRE-974
 Project: Maven Surefire
  Issue Type: Bug
Affects Versions: 2.14
Reporter: Jesse Glick
 Attachments: SUREFIRE-974.zip


 In Jenkins sources @ 919bab8, run:
 {{mvn -f test/pom.xml -Dtest=CoreJellyTest 
 -Dtest.excluded.groups=org.jvnet.hudson.test.FailsOnCloud test}}
 You will get errors from every test case in this suite. When 
 {{test.excluded.groups}} is not defined, it passes.
 This property just sets {{excludedGroups}} for the benefit of some unrelated 
 JUnit 4 tests in the same module which use {{@Category}}. But turning it on 
 apparently changes how JUnit 3 tests are run, too. The named suite has a 
 {{public static Test suite()}} method which creates a subclass of 
 {{TestSuite}} that overrides {{void run(TestResult)}}; when 
 {{excludedGroups}} is defined, a plain {{TestSuite}} is created which fails 
 to set the proper context for test cases and fails utterly.
 Refactoring this test suite to use JUnit 4 idioms is probably not an option 
 at the moment for compatibility reasons. Why is Surefire failing to correctly 
 run JUnit 3 tests just because groups are defined?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (MCOMPILER-66) Compiler swallows messages from annotation processors

2013-03-12 Thread Jesse Glick (JIRA)

[ 
https://jira.codehaus.org/browse/MCOMPILER-66?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=321854#comment-321854
 ] 

Jesse Glick commented on MCOMPILER-66:
--

Seems that with the 3.0 version of the plugin, {{Kind.NOTE}} messages are 
finally being displayed?but as Maven warnings!

 Compiler swallows messages from annotation processors
 -

 Key: MCOMPILER-66
 URL: https://jira.codehaus.org/browse/MCOMPILER-66
 Project: Maven 2.x Compiler Plugin
  Issue Type: Bug
Affects Versions: 2.0.2, 2.1
Reporter: Evan Cowden
 Attachments: AnnotationProcessorMessagerBug.zip


 When using the annotation processor API to print messages through the 
 javax.annotation.processing.Messager object, only messagesspecified by levels 
 javax.tools.Diagnostic.Kind.ERROR and 
 javax.tools.Diagnostic.Kind.MANDATORY_WARNING are displayed (and cause the 
 build to fail).  All other messages are swallowed.
 Note that while the attached JUnit test case is necessary to help expose the 
 problem, passing it will not imply that the bug is fixed.  The only way to 
 confirm the fix (that I know of) is to examine console output.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (SUREFIRE-751) Support parallel/fork mode similar to http://maven-junit-plugin.kenai.com/

2013-03-08 Thread Jesse Glick (JIRA)

[ 
https://jira.codehaus.org/browse/SUREFIRE-751?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=321675#comment-321675
 ] 

Jesse Glick commented on SUREFIRE-751:
--

@agudian: any progress on your examples page? Struggling the digest the 
implications of SUREFIRE-949.

 Support parallel/fork mode similar to http://maven-junit-plugin.kenai.com/
 --

 Key: SUREFIRE-751
 URL: https://jira.codehaus.org/browse/SUREFIRE-751
 Project: Maven Surefire
  Issue Type: New Feature
  Components: process forking
Affects Versions: 2.9
Reporter: Stephen Connolly
Assignee: Kristian Rosenvold
 Fix For: 2.13

 Attachments: SUREFIRE-751-part1.patch, SUREFIRE-751-part2.patch


 The current parallel execution spawns one thread _per_class_
 When there is a large disparity between the number of tests in different 
 classes, this can result in a longer execution time. This can often happen in 
 GUI testing, where a couple of classes will contain a lot of long running 
 (but low cpu) test cases, and the remaining classes run fast.
 See http://maven-junit-plugin.kenai.com/ for an attempt at solving this

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (SUREFIRE-968) Test summary line does not indicate what was being run when using concurrency

2013-03-08 Thread Jesse Glick (JIRA)
Jesse Glick created SUREFIRE-968:


 Summary: Test summary line does not indicate what was being run 
when using concurrency
 Key: SUREFIRE-968
 URL: https://jira.codehaus.org/browse/SUREFIRE-968
 Project: Maven Surefire
  Issue Type: Bug
  Components: Maven Surefire Plugin
Affects Versions: 2.14
 Environment: Ubuntu, JDK 7
Reporter: Jesse Glick
Priority: Minor


When running multiple test suites in parallel, Surefire prints summaries of 
ongoing test counts, but it is not at all clear which results are being 
summarized. E.g. with {{forkCount=1C}}:

{code:none}
Running CoreJellyTest
Running org.jvnet.hudson.main.AppTest
Running org.jvnet.hudson.main.UseRecipesWithJenkinsRuleTest
Running org.jvnet.hudson.test.MemoryAssertTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.339 sec
Running org.jvnet.hudson.test.MockFolderTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 15.719 sec
Running hudson.bugs.DateConversionTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.867 sec
Running hudson.bugs.LoginRedirectTest
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 21.208 sec
Running hudson.bugs.JnlpAccessWithSecuredHudsonTest
Tests run: 538, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 36.847 sec
…
{code}

It is impossible to tell which results correspond to which test, since there is 
no way to know which test will finish first. At best you can guess based on the 
number of test case methods known to be in each class.

The {{Tests run}} summary line should give the suite name.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (SUREFIRE-751) Support parallel/fork mode similar to http://maven-junit-plugin.kenai.com/

2013-03-08 Thread Jesse Glick (JIRA)

[ 
https://jira.codehaus.org/browse/SUREFIRE-751?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=321682#comment-321682
 ] 

Jesse Glick commented on SUREFIRE-751:
--

Thanks, this makes it much clearer.

 Support parallel/fork mode similar to http://maven-junit-plugin.kenai.com/
 --

 Key: SUREFIRE-751
 URL: https://jira.codehaus.org/browse/SUREFIRE-751
 Project: Maven Surefire
  Issue Type: New Feature
  Components: process forking
Affects Versions: 2.9
Reporter: Stephen Connolly
Assignee: Kristian Rosenvold
 Fix For: 2.13

 Attachments: SUREFIRE-751-part1.patch, SUREFIRE-751-part2.patch


 The current parallel execution spawns one thread _per_class_
 When there is a large disparity between the number of tests in different 
 classes, this can result in a longer execution time. This can often happen in 
 GUI testing, where a couple of classes will contain a lot of long running 
 (but low cpu) test cases, and the remaining classes run fast.
 See http://maven-junit-plugin.kenai.com/ for an attempt at solving this

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (WAGON-392) Maven 3.0.5 regression in release:perform: Host name may not be null

2013-03-04 Thread Jesse Glick (JIRA)

[ 
https://jira.codehaus.org/browse/WAGON-392?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=321363#comment-321363
 ] 

Jesse Glick commented on WAGON-392:
---

Some research e.g. in http://www.ietf.org/rfc/rfc2396.txt shows that underscore 
({{_}}) is in fact not a valid character in host names. ({{URI.getAuthority}} 
returns the host name but {{getHost}} correctly refuses to interpret it.) So 
the deployment repository is in fact invalid, and the wagon just needs to emit 
a more helpful error message. Can downgrade the priority here.

 Maven 3.0.5 regression in release:perform: Host name may not be null
 --

 Key: WAGON-392
 URL: https://jira.codehaus.org/browse/WAGON-392
 Project: Maven Wagon
  Issue Type: Bug
  Components: wagon-http
 Environment: Ubuntu 12.04 32-bit, JDK 7u15
Reporter: Jesse Glick
Priority: Blocker
 Attachments: ssl.png


 With Maven 3.0.4 deploying to our Artifactory server from {{release:perform}} 
 works fine:
 {code:none}
 [INFO] --- maven-deploy-plugin:2.7:deploy (default-deploy) @ ... ---
 Uploading: https://artifactoryonline.com/.../releases/.../8/...-8.pom
 Uploaded: https://artifactoryonline.com/.../releases/.../8/...-8.pom (16 
 KB at 11.1 KB/sec)
 {code}
 But the same command in Maven 3.0.5 fails:
 {code:none}
 [INFO] --- maven-deploy-plugin:2.7:deploy (default-deploy) @ ... ---
 Uploading: https://artifactoryonline.com/.../releases/.../8/...-8.pom
 [INFO] 
 
 [INFO] BUILD FAILURE
 [INFO] 
 
 [INFO] ...
 [INFO] 
 
 [ERROR] Failed to execute goal 
 org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on 
 project ...: Failed to deploy artifacts: Could not transfer artifact 
 ...:...:pom:8 from/to ... (https://artifactoryonline.com/.../releases): 
 Host name may not be null - [Help 1]
 {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (WAGON-392) Maven 3.0.5 regression in release:perform: Host name may not be null

2013-03-04 Thread Jesse Glick (JIRA)

[ 
https://jira.codehaus.org/browse/WAGON-392?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=321366#comment-321366
 ] 

Jesse Glick commented on WAGON-392:
---

The problem is with the host name {{ACCOUNTNAME_jfrog.artifactoryonline.com}}. 
JFrog also seems to accept {{ACCOUNTNAME-jfrog.artifactoryonline.com}} which is 
a legitimate hostname that Maven 3.0.5 can deploy to.

 Maven 3.0.5 regression in release:perform: Host name may not be null
 --

 Key: WAGON-392
 URL: https://jira.codehaus.org/browse/WAGON-392
 Project: Maven Wagon
  Issue Type: Bug
  Components: wagon-http
 Environment: Ubuntu 12.04 32-bit, JDK 7u15
Reporter: Jesse Glick
 Attachments: ssl.png


 With Maven 3.0.4 deploying to our Artifactory server from {{release:perform}} 
 works fine:
 {code:none}
 [INFO] --- maven-deploy-plugin:2.7:deploy (default-deploy) @ ... ---
 Uploading: https://artifactoryonline.com/.../releases/.../8/...-8.pom
 Uploaded: https://artifactoryonline.com/.../releases/.../8/...-8.pom (16 
 KB at 11.1 KB/sec)
 {code}
 But the same command in Maven 3.0.5 fails:
 {code:none}
 [INFO] --- maven-deploy-plugin:2.7:deploy (default-deploy) @ ... ---
 Uploading: https://artifactoryonline.com/.../releases/.../8/...-8.pom
 [INFO] 
 
 [INFO] BUILD FAILURE
 [INFO] 
 
 [INFO] ...
 [INFO] 
 
 [ERROR] Failed to execute goal 
 org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on 
 project ...: Failed to deploy artifacts: Could not transfer artifact 
 ...:...:pom:8 from/to ... (https://artifactoryonline.com/.../releases): 
 Host name may not be null - [Help 1]
 {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (MNG-5443) Maven 3.0.5 regression in release:perform: Host name may not be null

2013-03-01 Thread Jesse Glick (JIRA)

[ 
https://jira.codehaus.org/browse/MNG-5443?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=320683#comment-320683
 ] 

Jesse Glick commented on MNG-5443:
--

With {{-e}}:

{code:none}
java.lang.IllegalArgumentException: Host name may not be null
at 
org.apache.maven.wagon.providers.http.httpclient.HttpHost.init(HttpHost.java:79)
at 
org.apache.maven.wagon.providers.http.httpclient.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:501)
at 
org.apache.maven.wagon.providers.http.httpclient.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:906)
at 
org.apache.maven.wagon.providers.http.httpclient.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:805)
at 
org.apache.maven.wagon.shared.http4.AbstractHttpClientWagon.execute(AbstractHttpClientWagon.java:746)
?
{code}

Debugging made considerably more complicated by lack of deployed 
{{*-sources.jar}} for shaded artifacts, but everything looks fine at line 746 
at least. Using {{-X}} turned up nothing more of interest.

Setting {{-Dmaven.wagon.http.ssl.insecure=true}} (either on {{mvn}} command 
line, or in {{$MAVEN_OPTS}}) as per WAGON-385 did not help. I also tried 
{{.allowall}} and {{.ignore.validity.dates}} without luck.

 Maven 3.0.5 regression in release:perform: Host name may not be null
 --

 Key: MNG-5443
 URL: https://jira.codehaus.org/browse/MNG-5443
 Project: Maven 2  3
  Issue Type: Bug
  Components: Deployment
 Environment: Ubuntu 12.04 32-bit, JDK 7u15
Reporter: Jesse Glick
Priority: Blocker
 Attachments: ssl.png


 With Maven 3.0.4 deploying to our Artifactory server from {{release:perform}} 
 works fine:
 {code:none}
 [INFO] --- maven-deploy-plugin:2.7:deploy (default-deploy) @ ... ---
 Uploading: https://artifactoryonline.com/.../releases/.../8/...-8.pom
 Uploaded: https://artifactoryonline.com/.../releases/.../8/...-8.pom (16 
 KB at 11.1 KB/sec)
 {code}
 But the same command in Maven 3.0.5 fails:
 {code:none}
 [INFO] --- maven-deploy-plugin:2.7:deploy (default-deploy) @ ... ---
 Uploading: https://artifactoryonline.com/.../releases/.../8/...-8.pom
 [INFO] 
 
 [INFO] BUILD FAILURE
 [INFO] 
 
 [INFO] ...
 [INFO] 
 
 [ERROR] Failed to execute goal 
 org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on 
 project ...: Failed to deploy artifacts: Could not transfer artifact 
 ...:...:pom:8 from/to ... (https://artifactoryonline.com/.../releases): 
 Host name may not be null - [Help 1]
 {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] (MNG-5443) Maven 3.0.5 regression in release:perform: Host name may not be null

2013-03-01 Thread Jesse Glick (JIRA)

[ 
https://jira.codehaus.org/browse/MNG-5443?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=320697#comment-320697
 ] 

Jesse Glick commented on MNG-5443:
--

The actual host name, repo name, and group/artifactId are elided with ? since 
they are not publicly readable anyway.

 Maven 3.0.5 regression in release:perform: Host name may not be null
 --

 Key: MNG-5443
 URL: https://jira.codehaus.org/browse/MNG-5443
 Project: Maven 2  3
  Issue Type: Bug
  Components: Deployment
 Environment: Ubuntu 12.04 32-bit, JDK 7u15
Reporter: Jesse Glick
Priority: Blocker
 Attachments: ssl.png


 With Maven 3.0.4 deploying to our Artifactory server from {{release:perform}} 
 works fine:
 {code:none}
 [INFO] --- maven-deploy-plugin:2.7:deploy (default-deploy) @ ... ---
 Uploading: https://artifactoryonline.com/.../releases/.../8/...-8.pom
 Uploaded: https://artifactoryonline.com/.../releases/.../8/...-8.pom (16 
 KB at 11.1 KB/sec)
 {code}
 But the same command in Maven 3.0.5 fails:
 {code:none}
 [INFO] --- maven-deploy-plugin:2.7:deploy (default-deploy) @ ... ---
 Uploading: https://artifactoryonline.com/.../releases/.../8/...-8.pom
 [INFO] 
 
 [INFO] BUILD FAILURE
 [INFO] 
 
 [INFO] ...
 [INFO] 
 
 [ERROR] Failed to execute goal 
 org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on 
 project ...: Failed to deploy artifacts: Could not transfer artifact 
 ...:...:pom:8 from/to ... (https://artifactoryonline.com/.../releases): 
 Host name may not be null - [Help 1]
 {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


  1   2   3   >