[jira] [Commented] (MASSEMBLY-675) Maven Assembly packaging wildcard-excluded dependencies
[ https://issues.apache.org/jira/browse/MASSEMBLY-675?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16525763#comment-16525763 ] Tomer Cohen commented on MASSEMBLY-675: --- Any ETA on when this version will be released? > Maven Assembly packaging wildcard-excluded dependencies > --- > > Key: MASSEMBLY-675 > URL: https://issues.apache.org/jira/browse/MASSEMBLY-675 > Project: Maven Assembly Plugin > Issue Type: Bug >Affects Versions: 2.4 > Environment: Apache Maven 3.1.1 > Java version: 1.7.0_45, vendor: Oracle Corporation > OS name: "mac os x", version: "10.8.4", arch: "x86_64", family: "mac" >Reporter: Frank Wilson >Assignee: Guillaume Boué >Priority: Major > Fix For: 3.1.1 > > Attachments: massembly-675.zip > > > Version 2.4 ignores wildcard exclusions in POM dependencies > Example (perhaps contrived - but easy to setup): > When a pom declares a dependency such as closure-compiler and for some reason > we do not want to pull its dependencies in we could declare this in our POM, > without having to know what those dependencies are: > > > com.google.javascript > closure-compiler > v20131014 > > > * > * > > > > > This is a valid use of the exclusion feature as per [Maven > Confluence|http://docs.codehaus.org/display/MAVENUSER/wildcard+exclusion+for+artifact+dependencies], > [MNG-3832|https://jira.codehaus.org/browse/MNG-3832]. False warning about > wildcards were > [fixed|https://git-wip-us.apache.org/repos/asf?p=maven.git;a=commitdiff;h=65c135d5] > in Git about 10 days ago > Here is the assembly descriptor: > > bin > > dir > > false > > > > > We expect to only find the current project artifact and the closure-compiler > JAR in our directory assembly. However the assembly plugin ignores our POM > directive and includes the closure-compilers dependencies anyway! > Steps to reproduce are: > $ unzip massembly-675.zip > $ cd massembly-675 > $ mvn clean install > $ ls target/massembly-675-1-bin > args4j-2.0.16.jar json-20090211.jar > protobuf-java-2.4.1.jar > closure-compiler-v20131014.jar jsr305-1.3.9.jar > guava-15.0.jar massembly-675-1.jar > *Notice that the excluded jars are included in the assembly* > I would expect to only see the following JARs. > * closure-compiler-v20131014.jar > * massembly-675-1.jar -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (MNG-6435) DefaultSettingsBuilder assumes all SettingsReader/Writer impls will use XML
[ https://issues.apache.org/jira/browse/MNG-6435?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Laird Nelson updated MNG-6435: -- Description: On or around line 234, interpolation of settings assumes XML: {code} interpolator.addPostProcessor( new InterpolationPostProcessor() { @Override public Object execute( String expression, Object value ) { if ( value != null ) { // we're going to parse this back in as XML so we need to escape XML markup value = value.toString().replace( "&", "&" ).replace( "<", "<" ).replace( ">", ">" ); return value; } return null; } } ); {code} The value being interpolated here is the result of a {{SettingsWriter}}'s output. Obviously this kind of escaping doesn't make any sense if the {{SettingsWriter}} in question is not XML-based. was: On or around line 234, interpolation of settings assumes XML: {code} interpolator.addPostProcessor( new InterpolationPostProcessor() { @Override public Object execute( String expression, Object value ) { if ( value != null ) { // we're going to parse this back in as XML so we need to escape XML markup value = value.toString().replace( "&", "&" ).replace( "<", "<" ).replace( ">", ">" ); return value; } return null; } } ); {code} The expression being interpolated here is the result of a {{SettingsWriter}}'s output. Obviously this kind of escaping doesn't make any sense if the {{SettingsWriter}} in question is not XML-based. > DefaultSettingsBuilder assumes all SettingsReader/Writer impls will use XML > --- > > Key: MNG-6435 > URL: https://issues.apache.org/jira/browse/MNG-6435 > Project: Maven > Issue Type: Bug > Components: Settings >Affects Versions: 3.5.3 >Reporter: Laird Nelson >Priority: Major > > On or around line 234, interpolation of settings assumes XML: > {code} > interpolator.addPostProcessor( new InterpolationPostProcessor() > { > @Override > public Object execute( String expression, Object value ) > { > if ( value != null ) > { > // we're going to parse this back in as XML so we need to escape XML > markup > value = value.toString().replace( "&", "&" ).replace( "<", "<" > ).replace( ">", ">" ); > return value; > } > return null; > } > } ); > {code} > The value being interpolated here is the result of a {{SettingsWriter}}'s > output. Obviously this kind of escaping doesn't make any sense if the > {{SettingsWriter}} in question is not XML-based. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (MNG-6435) DefaultSettingsBuilder assumes all SettingsReader/Writer impls will use XML
Laird Nelson created MNG-6435: - Summary: DefaultSettingsBuilder assumes all SettingsReader/Writer impls will use XML Key: MNG-6435 URL: https://issues.apache.org/jira/browse/MNG-6435 Project: Maven Issue Type: Bug Components: Settings Affects Versions: 3.5.3 Reporter: Laird Nelson On or around line 234, interpolation of settings assumes XML: {code} interpolator.addPostProcessor( new InterpolationPostProcessor() { @Override public Object execute( String expression, Object value ) { if ( value != null ) { // we're going to parse this back in as XML so we need to escape XML markup value = value.toString().replace( "&", "&" ).replace( "<", "<" ).replace( ">", ">" ); return value; } return null; } } ); {code} The expression being interpolated here is the result of a {{SettingsWriter}}'s output. Obviously this kind of escaping doesn't make any sense if the {{SettingsWriter}} in question is not XML-based. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-805) Add SVN --pin-externals option to copy command (branch/tag)
[ https://issues.apache.org/jira/browse/SCM-805?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16525614#comment-16525614 ] ASF GitHub Bot commented on SCM-805: asfgit closed pull request #55: Fix for SCM-805 URL: https://github.com/apache/maven-scm/pull/55 This is a PR merged from a forked repository. As GitHub hides the original diff on merge, it is displayed below for the sake of provenance: As this is a foreign pull request (from a fork), the diff is supplied below (as it won't show otherwise due to GitHub magic): diff --git a/maven-scm-api/src/main/java/org/apache/maven/scm/ScmBranchParameters.java b/maven-scm-api/src/main/java/org/apache/maven/scm/ScmBranchParameters.java index 919f4a99c..06d374583 100644 --- a/maven-scm-api/src/main/java/org/apache/maven/scm/ScmBranchParameters.java +++ b/maven-scm-api/src/main/java/org/apache/maven/scm/ScmBranchParameters.java @@ -34,11 +34,14 @@ private boolean remoteBranching = false; +private boolean pinExternals = false; + private String scmRevision; public ScmBranchParameters() { this.remoteBranching = false; +this.pinExternals = false; } public ScmBranchParameters( String message ) @@ -76,6 +79,16 @@ public void setRemoteBranching( boolean remoteBranching ) this.remoteBranching = remoteBranching; } +public boolean isPinExternals() +{ +return pinExternals; +} + +public void setPinExternals( boolean pinExternals ) +{ +this.pinExternals = pinExternals; +} + public String toString() { return "[" + scmRevision + "] " + message; diff --git a/maven-scm-api/src/main/java/org/apache/maven/scm/ScmTagParameters.java b/maven-scm-api/src/main/java/org/apache/maven/scm/ScmTagParameters.java index 491d9409a..2db3d182c 100644 --- a/maven-scm-api/src/main/java/org/apache/maven/scm/ScmTagParameters.java +++ b/maven-scm-api/src/main/java/org/apache/maven/scm/ScmTagParameters.java @@ -34,11 +34,14 @@ private boolean remoteTagging = false; +private boolean pinExternals = false; + private String scmRevision; public ScmTagParameters() { this.remoteTagging = false; +this.pinExternals = false; } public ScmTagParameters( String message ) @@ -66,6 +69,16 @@ public void setRemoteTagging( boolean remoteTagging ) this.remoteTagging = remoteTagging; } +public boolean isPinExternals() +{ +return pinExternals; +} + +public void setPinExternals( boolean pinExternals ) +{ +this.pinExternals = pinExternals; +} + public String getScmRevision() { return scmRevision; diff --git a/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/BranchMojo.java b/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/BranchMojo.java index 2f61f5719..12aa150e5 100644 --- a/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/BranchMojo.java +++ b/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/BranchMojo.java @@ -60,6 +60,17 @@ @Parameter( property = "remoteBranching", defaultValue = "true" ) private boolean remoteBranching; +/** + * Currently only implemented with Subversion scm. Enable the "--pin-externals" + * option in svn copy commands which is new in Subversion 1.9. + * + * @since 1.10.1 + * + * @see https://subversion.apache.org/docs/release-notes/1.9.html + */ +@Parameter( property = "pinExternals", defaultValue = "false" ) +private boolean pinExternals; + /** {@inheritDoc} */ public void execute() throws MojoExecutionException @@ -76,6 +87,7 @@ public void execute() ScmBranchParameters scmBranchParameters = new ScmBranchParameters( message ); scmBranchParameters.setRemoteBranching( remoteBranching ); +scmBranchParameters.setPinExternals( pinExternals ); BranchScmResult result = provider.branch( repository, getFileSet(), finalBranch, scmBranchParameters ); diff --git a/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/TagMojo.java b/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/TagMojo.java index 49a969edf..c091eaee7 100644 --- a/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/TagMojo.java +++ b/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/TagMojo.java @@ -87,6 +87,17 @@ @Parameter( property = "remoteTagging", defaultValue = "true" ) private boolean remoteTagging; +/** + * Currently only implemented with Subversion scm. Enable the "--pin-externals" + * option in svn copy commands which is new in Subversion 1.9. + * + * @since 1.10.1 + * + * @see https://subversion.apache.org/docs/release-notes/1.9.html + */ +@Parameter( property = "pinExternals", defaultValue = "false
[jira] [Closed] (SCM-805) Add SVN --pin-externals option to copy command (branch/tag)
[ https://issues.apache.org/jira/browse/SCM-805?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Michael Osipov closed SCM-805. -- Resolution: Fixed Fixed with [c03e33c4a2afe8fcb1a002fd4bbc7fe8dd831e77|https://gitbox.apache.org/repos/asf?p=maven-scm.git;a=commit;h=c03e33c4a2afe8fcb1a002fd4bbc7fe8dd831e77]. > Add SVN --pin-externals option to copy command (branch/tag) > --- > > Key: SCM-805 > URL: https://issues.apache.org/jira/browse/SCM-805 > Project: Maven SCM > Issue Type: Improvement > Components: maven-scm-provider-svn >Affects Versions: 1.9.5 > Environment: SVN 1.9+ >Reporter: Eduardo Hernández Guerra >Assignee: Michael Osipov >Priority: Major > Labels: externals, svn, tag > Fix For: 1.10.1 > > > Starting from version 1.9, SVN client now supports the --pin-externals option > for the copy command, which is to be used when tagging. > I believe this should be implemented by default in SVN tag operations, and it > optionally could be disabled via a parameter. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[GitHub] asfgit closed pull request #55: Fix for SCM-805
asfgit closed pull request #55: Fix for SCM-805 URL: https://github.com/apache/maven-scm/pull/55 This is a PR merged from a forked repository. As GitHub hides the original diff on merge, it is displayed below for the sake of provenance: As this is a foreign pull request (from a fork), the diff is supplied below (as it won't show otherwise due to GitHub magic): diff --git a/maven-scm-api/src/main/java/org/apache/maven/scm/ScmBranchParameters.java b/maven-scm-api/src/main/java/org/apache/maven/scm/ScmBranchParameters.java index 919f4a99c..06d374583 100644 --- a/maven-scm-api/src/main/java/org/apache/maven/scm/ScmBranchParameters.java +++ b/maven-scm-api/src/main/java/org/apache/maven/scm/ScmBranchParameters.java @@ -34,11 +34,14 @@ private boolean remoteBranching = false; +private boolean pinExternals = false; + private String scmRevision; public ScmBranchParameters() { this.remoteBranching = false; +this.pinExternals = false; } public ScmBranchParameters( String message ) @@ -76,6 +79,16 @@ public void setRemoteBranching( boolean remoteBranching ) this.remoteBranching = remoteBranching; } +public boolean isPinExternals() +{ +return pinExternals; +} + +public void setPinExternals( boolean pinExternals ) +{ +this.pinExternals = pinExternals; +} + public String toString() { return "[" + scmRevision + "] " + message; diff --git a/maven-scm-api/src/main/java/org/apache/maven/scm/ScmTagParameters.java b/maven-scm-api/src/main/java/org/apache/maven/scm/ScmTagParameters.java index 491d9409a..2db3d182c 100644 --- a/maven-scm-api/src/main/java/org/apache/maven/scm/ScmTagParameters.java +++ b/maven-scm-api/src/main/java/org/apache/maven/scm/ScmTagParameters.java @@ -34,11 +34,14 @@ private boolean remoteTagging = false; +private boolean pinExternals = false; + private String scmRevision; public ScmTagParameters() { this.remoteTagging = false; +this.pinExternals = false; } public ScmTagParameters( String message ) @@ -66,6 +69,16 @@ public void setRemoteTagging( boolean remoteTagging ) this.remoteTagging = remoteTagging; } +public boolean isPinExternals() +{ +return pinExternals; +} + +public void setPinExternals( boolean pinExternals ) +{ +this.pinExternals = pinExternals; +} + public String getScmRevision() { return scmRevision; diff --git a/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/BranchMojo.java b/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/BranchMojo.java index 2f61f5719..12aa150e5 100644 --- a/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/BranchMojo.java +++ b/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/BranchMojo.java @@ -60,6 +60,17 @@ @Parameter( property = "remoteBranching", defaultValue = "true" ) private boolean remoteBranching; +/** + * Currently only implemented with Subversion scm. Enable the "--pin-externals" + * option in svn copy commands which is new in Subversion 1.9. + * + * @since 1.10.1 + * + * @see https://subversion.apache.org/docs/release-notes/1.9.html + */ +@Parameter( property = "pinExternals", defaultValue = "false" ) +private boolean pinExternals; + /** {@inheritDoc} */ public void execute() throws MojoExecutionException @@ -76,6 +87,7 @@ public void execute() ScmBranchParameters scmBranchParameters = new ScmBranchParameters( message ); scmBranchParameters.setRemoteBranching( remoteBranching ); +scmBranchParameters.setPinExternals( pinExternals ); BranchScmResult result = provider.branch( repository, getFileSet(), finalBranch, scmBranchParameters ); diff --git a/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/TagMojo.java b/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/TagMojo.java index 49a969edf..c091eaee7 100644 --- a/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/TagMojo.java +++ b/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/TagMojo.java @@ -87,6 +87,17 @@ @Parameter( property = "remoteTagging", defaultValue = "true" ) private boolean remoteTagging; +/** + * Currently only implemented with Subversion scm. Enable the "--pin-externals" + * option in svn copy commands which is new in Subversion 1.9. + * + * @since 1.10.1 + * + * @see https://subversion.apache.org/docs/release-notes/1.9.html + */ +@Parameter( property = "pinExternals", defaultValue = "false" ) +private boolean pinExternals; + /** {@inheritDoc} */ public void execute() throws MojoExecutionException @@ -133,6 +144,7 @@ public void execute() ScmTagParameters scmTagParameters = new ScmTagParameters(
[jira] [Commented] (MNG-6434) Cannot specify empty string for configuration value
[ https://issues.apache.org/jira/browse/MNG-6434?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16525513#comment-16525513 ] Chris Egerton commented on MNG-6434: It seems like the behavior for the API here doesn't really align with the expectations a user would have when configuring a Maven plugin. A default value is what should be used in the event that a parameter is _not_ specified; if the user goes out of their way to specify a value, even an empty/null one, why would they still want it overridden by the default? > Cannot specify empty string for configuration value > --- > > Key: MNG-6434 > URL: https://issues.apache.org/jira/browse/MNG-6434 > Project: Maven > Issue Type: Bug > Components: Plugin API >Affects Versions: 3.5.4 >Reporter: Chris Egerton >Priority: Major > > We have a MOJO class that involves several user-configured parameters. Some > of these parameters have default values that we'd like to use in the event > that the user doesn't specify a value for them; however, we'd also like the > user to be able to explicitly specify that the parameter should _not_ have a > value. The approach we wanted to take was to specify default values in the > parameter's annotation: > {{@Parameter(property = "foo.bar", defaultValue = "${project.scm.url}")}} > {{private String foo;}} > And then detect empty strings as the user's way of saying "I know there's a > default value for this parameter but I'm sure that I'd actually like it to be > empty anyways.": > {{}} > {{ }} > {{}} > or > {{}} > {{ }} > {{}} > > However, there's been some trouble as we haven't found a way yet to > distinguish between an intentionally-empty string and one that hasn't been > specified at all; the value for foo is always null regardless. > Is there a friendly and/or intuitive way for the user to pass an empty string > as a parameter value? -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MNG-6434) Cannot specify empty string for configuration value
[ https://issues.apache.org/jira/browse/MNG-6434?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16525499#comment-16525499 ] Chris Egerton commented on MNG-6434: Thanks for your help! However, the issue isn't that whitespace-only values can't be specified, it's that empty values can't be specified ("" vs " "). And, beneath that, it's that there's no good way at the moment for a user to override a default value for a configuration with something that says "I know this has a default value but I really don't want it included". We could just recommend a value for the configuration and remove the defaults altogether, but that would make it harder on our users and be a non-backwards-compatible change that we'd like to avoid if possible. Trying with {{xml:space="preserve"}} and values of " " and "" still resulted in the default value being used for the parameter. > Cannot specify empty string for configuration value > --- > > Key: MNG-6434 > URL: https://issues.apache.org/jira/browse/MNG-6434 > Project: Maven > Issue Type: Bug > Components: Plugin API >Affects Versions: 3.5.4 >Reporter: Chris Egerton >Priority: Major > > We have a MOJO class that involves several user-configured parameters. Some > of these parameters have default values that we'd like to use in the event > that the user doesn't specify a value for them; however, we'd also like the > user to be able to explicitly specify that the parameter should _not_ have a > value. The approach we wanted to take was to specify default values in the > parameter's annotation: > {{@Parameter(property = "foo.bar", defaultValue = "${project.scm.url}")}} > {{private String foo;}} > And then detect empty strings as the user's way of saying "I know there's a > default value for this parameter but I'm sure that I'd actually like it to be > empty anyways.": > {{}} > {{ }} > {{}} > or > {{}} > {{ }} > {{}} > > However, there's been some trouble as we haven't found a way yet to > distinguish between an intentionally-empty string and one that hasn't been > specified at all; the value for foo is always null regardless. > Is there a friendly and/or intuitive way for the user to pass an empty string > as a parameter value? -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MNG-6434) Cannot specify empty string for configuration value
[ https://issues.apache.org/jira/browse/MNG-6434?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16525485#comment-16525485 ] Karl Heinz Marbaise commented on MNG-6434: -- I would really hard reconsider my design if a user needs to define an empty value as a valid value? Apart from that have you tried to put {{xml:space="preserve"}} at your configuration elements..like this: {code:xml} {code} And check if you get the space? https://maven.apache.org/ref/3.5.4/maven-model/maven.html > Cannot specify empty string for configuration value > --- > > Key: MNG-6434 > URL: https://issues.apache.org/jira/browse/MNG-6434 > Project: Maven > Issue Type: Bug > Components: Plugin API >Affects Versions: 3.5.4 >Reporter: Chris Egerton >Priority: Major > > We have a MOJO class that involves several user-configured parameters. Some > of these parameters have default values that we'd like to use in the event > that the user doesn't specify a value for them; however, we'd also like the > user to be able to explicitly specify that the parameter should _not_ have a > value. The approach we wanted to take was to specify default values in the > parameter's annotation: > {{@Parameter(property = "foo.bar", defaultValue = "${project.scm.url}")}} > {{private String foo;}} > And then detect empty strings as the user's way of saying "I know there's a > default value for this parameter but I'm sure that I'd actually like it to be > empty anyways.": > {{}} > {{ }} > {{}} > or > {{}} > {{ }} > {{}} > > However, there's been some trouble as we haven't found a way yet to > distinguish between an intentionally-empty string and one that hasn't been > specified at all; the value for foo is always null regardless. > Is there a friendly and/or intuitive way for the user to pass an empty string > as a parameter value? -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MNG-6434) Cannot specify empty string for configuration value
[ https://issues.apache.org/jira/browse/MNG-6434?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16525379#comment-16525379 ] Chris Egerton commented on MNG-6434: A workaround we're thinking of is allowing the user to specify "none" as a value when they really want it to be null/empty, and then checking for that special case during execution. However, this only works for String parameters and not for Booleans or Integers. > Cannot specify empty string for configuration value > --- > > Key: MNG-6434 > URL: https://issues.apache.org/jira/browse/MNG-6434 > Project: Maven > Issue Type: Bug > Components: Plugin API >Affects Versions: 3.5.4 >Reporter: Chris Egerton >Priority: Major > > We have a MOJO class that involves several user-configured parameters. Some > of these parameters have default values that we'd like to use in the event > that the user doesn't specify a value for them; however, we'd also like the > user to be able to explicitly specify that the parameter should _not_ have a > value. The approach we wanted to take was to specify default values in the > parameter's annotation: > {{@Parameter(property = "foo.bar", defaultValue = "${project.scm.url}")}} > {{private String foo;}} > And then detect empty strings as the user's way of saying "I know there's a > default value for this parameter but I'm sure that I'd actually like it to be > empty anyways.": > {{}} > {{ }} > {{}} > or > {{}} > {{ }} > {{}} > > However, there's been some trouble as we haven't found a way yet to > distinguish between an intentionally-empty string and one that hasn't been > specified at all; the value for foo is always null regardless. > Is there a friendly and/or intuitive way for the user to pass an empty string > as a parameter value? -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SUREFIRE-1529) Implement test bucketing
[ https://issues.apache.org/jira/browse/SUREFIRE-1529?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16525173#comment-16525173 ] Zsombor Gegesy commented on SUREFIRE-1529: -- Restructuring the projects is not an option, unfortunately. It would need a huge refactor on the source code side - which would be hard to upstream. And even after the tests are moved to lot of smaller modules, using it, wouldn't be much simpler than the current situation, where I have a shell script, which collects all the java source files under **/src/test/java/**/*.java, and after some slicing and dicing, it creates a long maven command line, with specifying a list of tests. It wouldn't help if I had to specify module names instead of this. Using JUnit categories is neither an option, for two reasons: because some projects use TestNG, and because I don't have knowledge ahead, that how many machines do I have, so it's unclear, how many categories do I need to create. Maybe 3, maybe 10. Maybe something between them. This patch is for automating the test parallelization and distribution as seamless and scaleable, as possible. > Implement test bucketing > > > Key: SUREFIRE-1529 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1529 > Project: Maven Surefire > Issue Type: New Feature > Components: Maven Surefire Plugin >Affects Versions: 2.22.0 >Reporter: Zsombor Gegesy >Priority: Major > Attachments: SUREFIRE-1529.patch > > > There are projects, which has hundreds or thousands of test, which took hours > to complete - to paralelize this, it would be good, if tests could be > partitioned automatically into buckets - of course perfect bucketization is > not feasible, due to lack of knowledge of test run times (and it would be a > NP-complete problem even that case). > The idea is to start tests concurrently, in different machines, something > like this: > # mvn test -DnumberOfBuckets=3 -DbucketId=0 > # mvn test -DnumberOfBuckets=3 -DbucketId=1 > # mvn test -DnumberOfBuckets=3 -DbucketId=2 > And the results could be collected and aggregated later by external > processes. > The current solution is to manually collect the tests, and generate huge > command lines to do the same. > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (MVERIFIER-30) Sample IT project git link is broken
[ https://issues.apache.org/jira/browse/MVERIFIER-30?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Karl Heinz Marbaise closed MVERIFIER-30. Resolution: Fixed Assignee: Karl Heinz Marbaise Links fixed. > Sample IT project git link is broken > > > Key: MVERIFIER-30 > URL: https://issues.apache.org/jira/browse/MVERIFIER-30 > Project: Maven Verifier Plugin > Issue Type: Bug >Reporter: Jay Khimani >Assignee: Karl Heinz Marbaise >Priority: Major > > Link to the source repository is broken under section - Sample IT Project - > on the page. > [https://cwiki.apache.org/confluence/display/MAVEN/Creating+a+Maven+Integration+Test] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (MVERIFIER-30) Sample IT project git link is broken
[ https://issues.apache.org/jira/browse/MVERIFIER-30?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jay Khimani updated MVERIFIER-30: - Description: Link to the source repository is broken on the page. https://cwiki.apache.org/confluence/display/MAVEN/Creating+a+Maven+Integration+Test (was: Link to the source repository is broken on the page.) > Sample IT project git link is broken > > > Key: MVERIFIER-30 > URL: https://issues.apache.org/jira/browse/MVERIFIER-30 > Project: Maven Verifier Plugin > Issue Type: Bug >Reporter: Jay Khimani >Priority: Major > > Link to the source repository is broken on the page. > https://cwiki.apache.org/confluence/display/MAVEN/Creating+a+Maven+Integration+Test -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (MVERIFIER-30) Sample IT project git link is broken
[ https://issues.apache.org/jira/browse/MVERIFIER-30?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jay Khimani updated MVERIFIER-30: - Description: Link to the source repository is broken under section - Sample IT Project - on the page. [https://cwiki.apache.org/confluence/display/MAVEN/Creating+a+Maven+Integration+Test] (was: Link to the source repository is broken on the page. https://cwiki.apache.org/confluence/display/MAVEN/Creating+a+Maven+Integration+Test) > Sample IT project git link is broken > > > Key: MVERIFIER-30 > URL: https://issues.apache.org/jira/browse/MVERIFIER-30 > Project: Maven Verifier Plugin > Issue Type: Bug >Reporter: Jay Khimani >Priority: Major > > Link to the source repository is broken under section - Sample IT Project - > on the page. > [https://cwiki.apache.org/confluence/display/MAVEN/Creating+a+Maven+Integration+Test] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (MVERIFIER-30) Sample IT project git link is broken
[ https://issues.apache.org/jira/browse/MVERIFIER-30?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jay Khimani updated MVERIFIER-30: - Description: Link to the source repository is broken on the page. (was: Link to the source repository is broken on the page. 20rR*RFu6ek) > Sample IT project git link is broken > > > Key: MVERIFIER-30 > URL: https://issues.apache.org/jira/browse/MVERIFIER-30 > Project: Maven Verifier Plugin > Issue Type: Bug >Reporter: Jay Khimani >Priority: Major > > Link to the source repository is broken on the page. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (MVERIFIER-30) Sample IT project git link is broken
Jay Khimani created MVERIFIER-30: Summary: Sample IT project git link is broken Key: MVERIFIER-30 URL: https://issues.apache.org/jira/browse/MVERIFIER-30 Project: Maven Verifier Plugin Issue Type: Bug Reporter: Jay Khimani Link to the source repository is broken on the page. 20rR*RFu6ek -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SUREFIRE-1529) Implement test bucketing
[ https://issues.apache.org/jira/browse/SUREFIRE-1529?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16524959#comment-16524959 ] Enrico Olivelli commented on SUREFIRE-1529: --- I am not sure this is a good way to address the problem. In my experience it is better to create sub maven mudules, maybe with intermediate reactors. Alternatively you can use junit Categories and use the -Dgroups options. This will make builds always reproducible and you will have full control of what is happening > Implement test bucketing > > > Key: SUREFIRE-1529 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1529 > Project: Maven Surefire > Issue Type: New Feature > Components: Maven Surefire Plugin >Affects Versions: 2.22.0 >Reporter: Zsombor Gegesy >Priority: Major > Attachments: SUREFIRE-1529.patch > > > There are projects, which has hundreds or thousands of test, which took hours > to complete - to paralelize this, it would be good, if tests could be > partitioned automatically into buckets - of course perfect bucketization is > not feasible, due to lack of knowledge of test run times (and it would be a > NP-complete problem even that case). > The idea is to start tests concurrently, in different machines, something > like this: > # mvn test -DnumberOfBuckets=3 -DbucketId=0 > # mvn test -DnumberOfBuckets=3 -DbucketId=1 > # mvn test -DnumberOfBuckets=3 -DbucketId=2 > And the results could be collected and aggregated later by external > processes. > The current solution is to manually collect the tests, and generate huge > command lines to do the same. > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MJAVADOC-529) File is not accepted in sourcespath
[ https://issues.apache.org/jira/browse/MJAVADOC-529?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16524928#comment-16524928 ] Michal Safr commented on MJAVADOC-529: -- Well, I'm not sure about the right terminology but our parent pom.xml lists all the modules. I've got my maven-javadoc-plugin configuration in the parent pom and run it using {code:java} mvn javadoc:javadoc -pl :parent-aggregator {code} It seems that maven javadoc plugin doesn't support combining subpackages and sourcefiles {code:java} org.apache.maven.plugins maven-javadoc-plugin 3.0.1 com.packageA moduleA/src/main/java moduleB/src/main/java/com/packageB/SomeClass.java {code} The maven javadoc plugin says for the above that sourceFileIncludes is not used when subpackages is used but javadoc itself supports combining them. > File is not accepted in sourcespath > --- > > Key: MJAVADOC-529 > URL: https://issues.apache.org/jira/browse/MJAVADOC-529 > Project: Maven Javadoc Plugin > Issue Type: Bug >Affects Versions: 3.0.1 >Reporter: Michal Safr >Priority: Critical > > Hello guys > As per official Javadoc spec, sourcepath can accept both directory and a file. > [https://docs.oracle.com/javase/7/docs/technotes/tools/windows/javadoc.html#documentingboth] > {noformat} > javadoc -d C:\home\html -sourcepath C:\home\src java.awt > C:\home\src\java\applet\Applet.java > {noformat} > However sourcepath in the maven javadoc plugin accepts only directory. From > AbstractJavadocMojo: > {code:java} > sourcePaths = JavadocUtil.pruneDirs( project, sourcePaths ); > {code} > I'd need to be able to specify a combination of a package in sourcepath and a > specific java as in the example above. > Thank you, > Michal -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MJAVADOC-529) File is not accepted in sourcespath
[ https://issues.apache.org/jira/browse/MJAVADOC-529?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16524901#comment-16524901 ] Michael Osipov commented on MJAVADOC-529: - Are you certain? Parent aggregator is not a reactor project. > File is not accepted in sourcespath > --- > > Key: MJAVADOC-529 > URL: https://issues.apache.org/jira/browse/MJAVADOC-529 > Project: Maven Javadoc Plugin > Issue Type: Bug >Affects Versions: 3.0.1 >Reporter: Michal Safr >Priority: Critical > > Hello guys > As per official Javadoc spec, sourcepath can accept both directory and a file. > [https://docs.oracle.com/javase/7/docs/technotes/tools/windows/javadoc.html#documentingboth] > {noformat} > javadoc -d C:\home\html -sourcepath C:\home\src java.awt > C:\home\src\java\applet\Applet.java > {noformat} > However sourcepath in the maven javadoc plugin accepts only directory. From > AbstractJavadocMojo: > {code:java} > sourcePaths = JavadocUtil.pruneDirs( project, sourcePaths ); > {code} > I'd need to be able to specify a combination of a package in sourcepath and a > specific java as in the example above. > Thank you, > Michal -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (SUREFIRE-1530) Surefire html report does not style correctly in chrome
[ https://issues.apache.org/jira/browse/SUREFIRE-1530?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Henning Vogt updated SUREFIRE-1530: --- Description: Generating a surefire-report.html does not produce an html that can be displayed correctly with chrome. IE11 works, but e.g. chrome displays this errormessage: {code}Refused to apply inline style because it violates the following Content Security Policy directive: "style-src 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-kQThACQ+E3akfK9JEvBX7ueISL6ruT6sN9Ni6lZIRVM='), or a nonce ('nonce-...') is required to enable inline execution. surefire-report.html:1 Blocked script execution in 'http://mycompany.com:8081/jenkins/job/VR/job/vrservice/site/surefire-report.html' because the document's frame is sandboxed and the 'allow-scripts' permission is not set. Refused to apply inline style because it violates the following Content Security Policy directive: "style-src 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-a4tj1WXEmGqOxBANAF3uzawGDJwaj6X3GnmrjTUzhuc='), or a nonce ('nonce-...') is required to enable inline execution. Refused to apply inline style because it violates the following Content Security Policy directive: "style-src 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-qRVIxZQ0xPYjv3U7P4/5y8byVpOp48F0bdyO/vM0kyY='), or a nonce ('nonce-...') is required to enable inline execution. Refused to apply inline style because it violates the following Content Security Policy directive: "style-src 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-0EZqoz+oBhx7gF4nvY2bSqoGyy4zLjNF+SDQXGp/ZrY='), or a nonce ('nonce-...') is required to enable inline execution. {code} was: Generating a surefire-report.html does not produce an html that can be displayed correctly with chrome. IE11 works, but e.g. chrome displays this errormessage: {{Refused to apply inline style because it violates the following Content Security Policy directive: "style-src 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-kQThACQ+E3akfK9JEvBX7ueISL6ruT6sN9Ni6lZIRVM='), or a nonce ('nonce-...') is required to enable inline execution.}}{{surefire-report.html:1 Blocked script execution in 'http://mycompany.com:8081/jenkins/job/VR/job/vrservice/site/surefire-report.html' because the document's frame is sandboxed and the 'allow-scripts' permission is not set.}} {{6Refused to apply inline style because it violates the following Content Security Policy directive: "style-src 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-a4tj1WXEmGqOxBANAF3uzawGDJwaj6X3GnmrjTUzhuc='), or a nonce ('nonce-...') is required to enable inline execution.}}{{6Refused to apply inline style because it violates the following Content Security Policy directive: "style-src 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-qRVIxZQ0xPYjv3U7P4/5y8byVpOp48F0bdyO/vM0kyY='), or a nonce ('nonce-...') is required to enable inline execution.}}{{7Refused to apply inline style because it violates the following Content Security Policy directive: "style-src 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-0EZqoz+oBhx7gF4nvY2bSqoGyy4zLjNF+SDQXGp/ZrY='), or a nonce ('nonce-...') is required to enable inline execution.}} > Surefire html report does not style correctly in chrome > --- > > Key: SUREFIRE-1530 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1530 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Surefire Plugin >Affects Versions: 2.21.0 >Reporter: Henning Vogt >Priority: Minor > > Generating a surefire-report.html does not produce an html that can be > displayed correctly with chrome. IE11 works, but e.g. chrome displays this > errormessage: > {code}Refused to apply inline style because it violates the following Content > Security Policy directive: "style-src 'self'". Either the 'unsafe-inline' > keyword, a hash ('sha256-kQThACQ+E3akfK9JEvBX7ueISL6ruT6sN9Ni6lZIRVM='), or a > nonce ('nonce-...') is required to enable inline execution. > surefire-report.html:1 Blocked script execution in > 'http://mycompany.com:8081/jenkins/job/VR/job/vrservice/site/surefire-report.html' > because the document's frame is sandboxed and the 'allow-scripts' permission > is not set. > Refused to apply inline style because it violates the following Content > Security Policy directive: "style-src 'self'". Either the 'unsafe-inline' > keyword, a hash ('sha256-a4tj1WXEmGqOxBANAF3uzawGDJwaj6X3GnmrjTUzhuc='), or a > nonce ('nonce-...') is required to enable inline execution. > Refused to apply inline style because it violates the following Content > Security Policy directive: "style-src 'self'". Either the 'unsafe-inline' > keyword, a hash ('sha256-qRVIxZQ0xPYjv3U7P4/5y8byVpOp48F0bd
[jira] [Created] (SUREFIRE-1530) Surefire html report does not style correctly in chrome
Henning Vogt created SUREFIRE-1530: -- Summary: Surefire html report does not style correctly in chrome Key: SUREFIRE-1530 URL: https://issues.apache.org/jira/browse/SUREFIRE-1530 Project: Maven Surefire Issue Type: Bug Components: Maven Surefire Plugin Affects Versions: 2.21.0 Reporter: Henning Vogt Generating a surefire-report.html does not produce an html that can be displayed correctly with chrome. IE11 works, but e.g. chrome displays this errormessage: {{Refused to apply inline style because it violates the following Content Security Policy directive: "style-src 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-kQThACQ+E3akfK9JEvBX7ueISL6ruT6sN9Ni6lZIRVM='), or a nonce ('nonce-...') is required to enable inline execution.}}{{surefire-report.html:1 Blocked script execution in 'http://mycompany.com:8081/jenkins/job/VR/job/vrservice/site/surefire-report.html' because the document's frame is sandboxed and the 'allow-scripts' permission is not set.}} {{6Refused to apply inline style because it violates the following Content Security Policy directive: "style-src 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-a4tj1WXEmGqOxBANAF3uzawGDJwaj6X3GnmrjTUzhuc='), or a nonce ('nonce-...') is required to enable inline execution.}}{{6Refused to apply inline style because it violates the following Content Security Policy directive: "style-src 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-qRVIxZQ0xPYjv3U7P4/5y8byVpOp48F0bdyO/vM0kyY='), or a nonce ('nonce-...') is required to enable inline execution.}}{{7Refused to apply inline style because it violates the following Content Security Policy directive: "style-src 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-0EZqoz+oBhx7gF4nvY2bSqoGyy4zLjNF+SDQXGp/ZrY='), or a nonce ('nonce-...') is required to enable inline execution.}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (MCHECKSTYLE-355) Allow checkstyleRules next to configLocation
HerrDerb created MCHECKSTYLE-355: Summary: Allow checkstyleRules next to configLocation Key: MCHECKSTYLE-355 URL: https://issues.apache.org/jira/browse/MCHECKSTYLE-355 Project: Maven Checkstyle Plugin Issue Type: Improvement Reporter: HerrDerb *Summary* Allow to define a {{configLocation}} and {{checkstyleRules}} resulting in inline checkstyle rules overriding {{configLocation}} checks. This would allow a dynamic checkstyle rule configuration. *Current behaviour* Currently when running the plugin with the following configuration {code:java} google_checks.xml {code} it fails and returns {code:java} Failed to execute goal org.apache.maven.plugins:maven-checkstyle-plugin:3.0.0:check (default) on project comlab-pom: If you use inline configuration for rules, don't specify a configLocation{code} *Desired behaviour* The google check {{LineLenth}} is overriden by the inline check, defining a valid line length of 120 instead of 80. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SUREFIRE-1529) Implement test bucketing
[ https://issues.apache.org/jira/browse/SUREFIRE-1529?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16524779#comment-16524779 ] ASF GitHub Bot commented on SUREFIRE-1529: -- gzsombor opened a new pull request #187: [SUREFIRE-1529] Implement bucketing for the test execution. URL: https://github.com/apache/maven-surefire/pull/187 This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Implement test bucketing > > > Key: SUREFIRE-1529 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1529 > Project: Maven Surefire > Issue Type: New Feature > Components: Maven Surefire Plugin >Affects Versions: 2.22.0 >Reporter: Zsombor Gegesy >Priority: Major > Attachments: SUREFIRE-1529.patch > > > There are projects, which has hundreds or thousands of test, which took hours > to complete - to paralelize this, it would be good, if tests could be > partitioned automatically into buckets - of course perfect bucketization is > not feasible, due to lack of knowledge of test run times (and it would be a > NP-complete problem even that case). > The idea is to start tests concurrently, in different machines, something > like this: > # mvn test -DnumberOfBuckets=3 -DbucketId=0 > # mvn test -DnumberOfBuckets=3 -DbucketId=1 > # mvn test -DnumberOfBuckets=3 -DbucketId=2 > And the results could be collected and aggregated later by external > processes. > The current solution is to manually collect the tests, and generate huge > command lines to do the same. > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[GitHub] gzsombor opened a new pull request #187: [SUREFIRE-1529] Implement bucketing for the test execution.
gzsombor opened a new pull request #187: [SUREFIRE-1529] Implement bucketing for the test execution. URL: https://github.com/apache/maven-surefire/pull/187 This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services
[jira] [Commented] (MJAVADOC-529) File is not accepted in sourcespath
[ https://issues.apache.org/jira/browse/MJAVADOC-529?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16524679#comment-16524679 ] Michal Safr commented on MJAVADOC-529: -- I've got a multimodule project, let's assume -- module A -- module B -- module C pom.xml (parent aggregator) I need to generate javadoc which will include subpackage from module A and some (not all) classes from module B and ignore module C. Using javadoc command, I can do this: {code:java} javadoc -d target/html -sourcepath moduleA/src/main/java com.packageA moduleB/src/main/java/com/packageB/SomeClass.java {code} > File is not accepted in sourcespath > --- > > Key: MJAVADOC-529 > URL: https://issues.apache.org/jira/browse/MJAVADOC-529 > Project: Maven Javadoc Plugin > Issue Type: Bug >Affects Versions: 3.0.1 >Reporter: Michal Safr >Priority: Critical > > Hello guys > As per official Javadoc spec, sourcepath can accept both directory and a file. > [https://docs.oracle.com/javase/7/docs/technotes/tools/windows/javadoc.html#documentingboth] > {noformat} > javadoc -d C:\home\html -sourcepath C:\home\src java.awt > C:\home\src\java\applet\Applet.java > {noformat} > However sourcepath in the maven javadoc plugin accepts only directory. From > AbstractJavadocMojo: > {code:java} > sourcePaths = JavadocUtil.pruneDirs( project, sourcePaths ); > {code} > I'd need to be able to specify a combination of a package in sourcepath and a > specific java as in the example above. > Thank you, > Michal -- This message was sent by Atlassian JIRA (v7.6.3#76005)