You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Sebastian Annies (JIRA)" <ji...@codehaus.org> on 2007/08/21 14:37:47 UTC
[jira] Created: (CONTINUUM-1402) Syncing with Perforce on
Linux/Unix/Bash fails
Syncing with Perforce on Linux/Unix/Bash fails
----------------------------------------------
Key: CONTINUUM-1402
URL: http://jira.codehaus.org/browse/CONTINUUM-1402
Project: Continuum
Issue Type: Bug
Components: Integration - Maven 2, SCM
Affects Versions: 1.1-beta-2
Environment: Bash
Reporter: Sebastian Annies
Priority: Critical
When a client is created it is named:
E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
that is ok, but now comes the sync command and uses following commandline
{{monospaced}}
/bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
{{monospaced}}
The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
The Problem starts in 'PerforceCheckOutCommand':
{{monospaced}}
public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
ScmVersion version, String specname )
{
Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
{color:red}
command.createArgument().setValue( "-c" + specname );
{color}
command.createArgument().setValue( "sync" );
// Use a simple heuristic to determine if we should use the Force flag
// on sync. Forcing sync is a HUGE performance hit but is required in
// rare instances where source is somehow deleted. If the target
// directory is completely empty, assume a force is required. If
// not empty, we assume a previous checkout was already done and a normal
// sync will suffice.
// SCM-110
String[] files = workingDirectory.list();
if ( files == null || files.length == 0 )
{
// We need to force so checkout to an empty directory will work.
command.createArgument().setValue( "-f" );
}
// Not sure what to do here. I'm unclear whether we should be
// sync'ing each file individually to the label or just sync the
// entire contents of the workingDir. I'm going to assume the
// latter until the exact semantics are clearer.
if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
{
command.createArgument().setValue( "@" + version.getName() );
}
return command;
{{monospaced}}
The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Commented: (CONTINUUM-1402) Syncing with Perforce on
Linux/Unix/Bash fails
Posted by "Sudharma Rao (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_115881 ]
Sudharma Rao commented on CONTINUUM-1402:
-----------------------------------------
Work around: Create a duplicate client using the auto-generated client as a template
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Commented: (CONTINUUM-1402) Syncing with Perforce on
Linux/Unix/Bash fails
Posted by "Sebastian Annies (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_105305 ]
Sebastian Annies commented on CONTINUUM-1402:
---------------------------------------------
MORE READABLE HERE:
When a client is created it is named:
E.g. {{sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6}}
that is ok, but now comes the sync command and uses following commandline
{{/bin/bash c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"}}
The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
The Problem starts in 'PerforceCheckOutCommand':
{{
public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
ScmVersion version, String specname )
{
Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
{color.red}
command.createArgument().setValue( "-c" + specname );{color}
command.createArgument().setValue( "sync" );
// Use a simple heuristic to determine if we should use the Force flag
// on sync. Forcing sync is a HUGE performance hit but is required in
// rare instances where source is somehow deleted. If the target
// directory is completely empty, assume a force is required. If
// not empty, we assume a previous checkout was already done and a normal
// sync will suffice.
// SCM-110
String[] files = workingDirectory.list();
if ( files == null || files.length == 0 )
{
// We need to force so checkout to an empty directory will work. command.createArgument().setValue( "-f" ); }
// Not sure what to do here. I'm unclear whether we should be
// sync'ing each file individually to the label or just sync the
// entire contents of the workingDir. I'm going to assume the
// latter until the exact semantics are clearer.
if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
{ command.createArgument().setValue( "@" + version.getName() ); }
}
}}
The {{specname }} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
The next thing I will do is to file an issue at plexus-utils and link the issues.
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Commented: (CONTINUUM-1402) Syncing with Perforce on
Linux/Unix/Bash fails
Posted by "Matthias Wurm (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_106308 ]
Matthias Wurm commented on CONTINUUM-1402:
------------------------------------------
I guess there is a problem with backslashes in the command:
After setting loglevel to debug I've seen that maven-scm wants to do the following:
2007-09-03 19:55:35,908 [pool-1-thread-1] DEBUG ScmManager:default - Executing: /bin/bash -c "p4 -d /data/local/continuum-1.1-beta-2/apps/continuum/webapp/WEB-INF/working-directory/3 -p perforce.e.secunet.de:1666 -chostname-MavenSCM-\data\local\continuum-1.1-beta-2\apps\continuum\webapp\WEB-INF\working-directory\3 sync -f"
Executing the command manually on my console removes the backslashes, hence the command fails
Client 'hostname-MavenSCM-datalocalcontinuum-1.1-beta-2appscontinuumwebappWEB-INFworking-directory2' unknown - use 'client' command to create it.
Setting the clientspec inside single quotes like this works on the console:
/bin/bash -c "p4 -d /data/local/continuum-1.1-beta-2/apps/continuum/webapp/WEB-INF/working-directory/3 -p perforce.e.secunet.de:1666 -c'hostname-MavenSCM-\data\local\continuum-1.1-beta-2\apps\continuum\webapp\WEB-INF\working-directory\3' sync -f"
Maybe changing the maven-scm-provider to add single quotes around the clientspec name might fix this issue.
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Commented: (CONTINUUM-1402) Syncing with Perforce on
Linux/Unix/Bash fails
Posted by "Jason Pringle (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_106023 ]
Jason Pringle commented on CONTINUUM-1402:
------------------------------------------
This may be related to CONTINUUM-1351.
I see the same error, but do see that the clients exist (check with p4 clients). If I copy/paste the command into a terminal (and escape it) it seems to work. Also, I haven't seen any changes in the perforceSCM provider in quite some time, so suspect something within Continuum is causing the issue (probably something that changed between alpha-2 and beta-1).
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Issue Comment Edited: (CONTINUUM-1402) Syncing with Perforce
on Linux/Unix/Bash fails
Posted by "Matthias Wurm (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_106308 ]
Matthias Wurm edited comment on CONTINUUM-1402 at 9/3/07 1:05 PM:
------------------------------------------------------------------
I guess there is a problem with backslashes in the command:
After setting loglevel to debug I've seen that maven-scm wants to do the following:
{noformat} 2007-09-03 19:55:35,908 [pool-1-thread-1] DEBUG ScmManager:default - Executing: /bin/bash -c "p4 -d /data/local/continuum-1.1-beta-2/apps/continuum/webapp/WEB-INF/working-directory/3 -p perforce.e.secunet.de:1666 -chostname-MavenSCM-\data\local\continuum-1.1-beta-2\apps\continuum\webapp\WEB-INF\working-directory\3 sync -f"{noformat}
Executing the command manually on my console removes the backslashes, hence the command fails
{noformat}Client 'hostname-MavenSCM-datalocalcontinuum-1.1-beta-2appscontinuumwebappWEB-INFworking-directory2' unknown - use 'client' command to create it.{noformat}
Setting the clientspec inside single quotes like this works on the console:
{noformat}/bin/bash -c "p4 -d /data/local/continuum-1.1-beta-2/apps/continuum/webapp/WEB-INF/working-directory/3 -p perforce.e.secunet.de:1666 -c'hostname-MavenSCM-\data\local\continuum-1.1-beta-2\apps\continuum\webapp\WEB-INF\working-directory\3' sync -f"{noformat}
Maybe changing the maven-scm-provider to add single quotes around the clientspec name might fix this issue.
was:
I guess there is a problem with backslashes in the command:
After setting loglevel to debug I've seen that maven-scm wants to do the following:
2007-09-03 19:55:35,908 [pool-1-thread-1] DEBUG ScmManager:default - Executing: /bin/bash --c "p4 -d /data/local/continuum-1.1-beta-2/apps/continuum/webapp/WEB-INF/working-directory/3 -p perforce.e.secunet.de:1666 -chostname-MavenSCM-\data\local\continuum-1.1-beta-2\apps\continuum\webapp\WEB-INF\working-directory\3 sync -f"
Executing the command manually on my console removes the backslashes, hence the command fails
Client 'hostname-MavenSCM-datalocalcontinuum-1.1-beta-2appscontinuumwebappWEB-INFworking-directory2' unknown - use 'client' command to create it.
Setting the clientspec inside single quotes like this works on the console:
/bin/bash -c "p4 -d /data/local/continuum-1.1-beta-2/apps/continuum/webapp/WEB-INF/working-directory/3 -p perforce.e.secunet.de:1666 -c'hostname-MavenSCM-\data\local\continuum-1.1-beta-2\apps\continuum\webapp\WEB-INF\working-directory\3' sync -f"
Maybe changing the maven-scm-provider to add single quotes around the clientspec name might fix this issue.
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Issue Comment Edited: (CONTINUUM-1402) Syncing with Perforce
on Linux/Unix/Bash fails
Posted by "Matthias Wurm (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_106308 ]
Matthias Wurm edited comment on CONTINUUM-1402 at 10/15/07 9:22 AM:
--------------------------------------------------------------------
I guess there is a problem with backslashes in the command:
After setting loglevel to debug I've seen that maven-scm wants to do the following:
{{2007-09-03 19:55:35,908 [pool-1-thread-1] DEBUG ScmManager:default - Executing: /bin/bash -c "p4 -d /data/local/continuum-1.1-beta-2/apps/continuum/webapp/WEB-INF/working-directory/3 -p p4server:1666 -chostname-MavenSCM-\data\local\continuum-1.1-beta-2\apps\continuum\webapp\WEB-INF\working-directory\3 sync -f"}}
Executing the command manually on my console removes the backslashes, hence the command fails
{noformat}Client 'hostname-MavenSCM-datalocalcontinuum-1.1-beta-2appscontinuumwebappWEB-INFworking-directory2' unknown - use 'client' command to create it.{noformat}
Setting the clientspec inside single quotes like this works on the console:
{noformat}/bin/bash -c "p4 -d /data/local/continuum-1.1-beta-2/apps/continuum/webapp/WEB-INF/working-directory/3 -p perforce.e.secunet.de:1666 -c'hostname-MavenSCM-\data\local\continuum-1.1-beta-2\apps\continuum\webapp\WEB-INF\working-directory\3' sync -f"{noformat}
Maybe changing the maven-scm-provider to add single quotes around the clientspec name might fix this issue.
was:
I guess there is a problem with backslashes in the command:
After setting loglevel to debug I've seen that maven-scm wants to do the following:
{noformat} 2007-09-03 19:55:35,908 [pool-1-thread-1] DEBUG ScmManager:default - Executing: /bin/bash -c "p4 -d /data/local/continuum-1.1-beta-2/apps/continuum/webapp/WEB-INF/working-directory/3 -p p4server:1666 -chostname-MavenSCM-\data\local\continuum-1.1-beta-2\apps\continuum\webapp\WEB-INF\working-directory\3 sync -f"{noformat}
Executing the command manually on my console removes the backslashes, hence the command fails
{noformat}Client 'hostname-MavenSCM-datalocalcontinuum-1.1-beta-2appscontinuumwebappWEB-INFworking-directory2' unknown - use 'client' command to create it.{noformat}
Setting the clientspec inside single quotes like this works on the console:
{noformat}/bin/bash -c "p4 -d /data/local/continuum-1.1-beta-2/apps/continuum/webapp/WEB-INF/working-directory/3 -p perforce.e.secunet.de:1666 -c'hostname-MavenSCM-\data\local\continuum-1.1-beta-2\apps\continuum\webapp\WEB-INF\working-directory\3' sync -f"{noformat}
Maybe changing the maven-scm-provider to add single quotes around the clientspec name might fix this issue.
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Issue Comment Edited: (CONTINUUM-1402) Syncing with Perforce
on Linux/Unix/Bash fails
Posted by "Sebastian Annies (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_105305 ]
Sebastian Annies edited comment on CONTINUUM-1402 at 8/21/07 7:41 AM:
----------------------------------------------------------------------
MORE READABLE HERE:
When a client is created it is named:
E.g. {{sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6}}
that is ok, but now comes the sync command and uses following commandline
{{/bin/bash c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"}}
The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
The Problem starts in 'PerforceCheckOutCommand':
{quote}public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
ScmVersion version, String specname )
{
Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
{color:red}command.createArgument().setValue( "-c" + specname );{color}
command.createArgument().setValue( "sync" );
// Use a simple heuristic to determine if we should use the Force flag
// on sync. Forcing sync is a HUGE performance hit but is required in
// rare instances where source is somehow deleted. If the target
// directory is completely empty, assume a force is required. If
// not empty, we assume a previous checkout was already done and a normal
// sync will suffice.
// SCM-110
String[] files = workingDirectory.list();
if ( files == null || files.length == 0 )
{
// We need to force so checkout to an empty directory will work. command.createArgument().setValue( "-f" ); }
// Not sure what to do here. I'm unclear whether we should be
// sync'ing each file individually to the label or just sync the
// entire contents of the workingDir. I'm going to assume the
// latter until the exact semantics are clearer.
if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
{ command.createArgument().setValue( "@" + version.getName() ); }
}
{quote}
The {{specname}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
The next thing I will do is to file an issue at plexus-utils and link the issues.
was:
MORE READABLE HERE:
When a client is created it is named:
E.g. {{sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6}}
that is ok, but now comes the sync command and uses following commandline
{{/bin/bash c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"}}
The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
The Problem starts in 'PerforceCheckOutCommand':
{{public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
ScmVersion version, String specname )
{
Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
{color:red}command.createArgument().setValue( "-c" + specname );{color}
command.createArgument().setValue( "sync" );
// Use a simple heuristic to determine if we should use the Force flag
// on sync. Forcing sync is a HUGE performance hit but is required in
// rare instances where source is somehow deleted. If the target
// directory is completely empty, assume a force is required. If
// not empty, we assume a previous checkout was already done and a normal
// sync will suffice.
// SCM-110
String[] files = workingDirectory.list();
if ( files == null || files.length == 0 )
{
// We need to force so checkout to an empty directory will work. command.createArgument().setValue( "-f" ); }
// Not sure what to do here. I'm unclear whether we should be
// sync'ing each file individually to the label or just sync the
// entire contents of the workingDir. I'm going to assume the
// latter until the exact semantics are clearer.
if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
{ command.createArgument().setValue( "@" + version.getName() ); }
}
}}
The {{specname}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
The next thing I will do is to file an issue at plexus-utils and link the issues.
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Commented: (CONTINUUM-1402) Syncing with Perforce on
Linux/Unix/Bash fails
Posted by "Sebastian Annies (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_109968 ]
Sebastian Annies commented on CONTINUUM-1402:
---------------------------------------------
this would require a fix in the Maven Perforce SCM Provider ...
Can you file an issue there and link it here?
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Issue Comment Edited: (CONTINUUM-1402) Syncing with Perforce
on Linux/Unix/Bash fails
Posted by "Matthias Wurm (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_106308 ]
Matthias Wurm edited comment on CONTINUUM-1402 at 9/3/07 1:06 PM:
------------------------------------------------------------------
I guess there is a problem with backslashes in the command:
After setting loglevel to debug I've seen that maven-scm wants to do the following:
{noformat} 2007-09-03 19:55:35,908 [pool-1-thread-1] DEBUG ScmManager:default - Executing: /bin/bash -c "p4 -d /data/local/continuum-1.1-beta-2/apps/continuum/webapp/WEB-INF/working-directory/3 -p p4server:1666 -chostname-MavenSCM-\data\local\continuum-1.1-beta-2\apps\continuum\webapp\WEB-INF\working-directory\3 sync -f"{noformat}
Executing the command manually on my console removes the backslashes, hence the command fails
{noformat}Client 'hostname-MavenSCM-datalocalcontinuum-1.1-beta-2appscontinuumwebappWEB-INFworking-directory2' unknown - use 'client' command to create it.{noformat}
Setting the clientspec inside single quotes like this works on the console:
{noformat}/bin/bash -c "p4 -d /data/local/continuum-1.1-beta-2/apps/continuum/webapp/WEB-INF/working-directory/3 -p perforce.e.secunet.de:1666 -c'hostname-MavenSCM-\data\local\continuum-1.1-beta-2\apps\continuum\webapp\WEB-INF\working-directory\3' sync -f"{noformat}
Maybe changing the maven-scm-provider to add single quotes around the clientspec name might fix this issue.
was:
I guess there is a problem with backslashes in the command:
After setting loglevel to debug I've seen that maven-scm wants to do the following:
{noformat} 2007-09-03 19:55:35,908 [pool-1-thread-1] DEBUG ScmManager:default - Executing: /bin/bash -c "p4 -d /data/local/continuum-1.1-beta-2/apps/continuum/webapp/WEB-INF/working-directory/3 -p perforce.e.secunet.de:1666 -chostname-MavenSCM-\data\local\continuum-1.1-beta-2\apps\continuum\webapp\WEB-INF\working-directory\3 sync -f"{noformat}
Executing the command manually on my console removes the backslashes, hence the command fails
{noformat}Client 'hostname-MavenSCM-datalocalcontinuum-1.1-beta-2appscontinuumwebappWEB-INFworking-directory2' unknown - use 'client' command to create it.{noformat}
Setting the clientspec inside single quotes like this works on the console:
{noformat}/bin/bash -c "p4 -d /data/local/continuum-1.1-beta-2/apps/continuum/webapp/WEB-INF/working-directory/3 -p perforce.e.secunet.de:1666 -c'hostname-MavenSCM-\data\local\continuum-1.1-beta-2\apps\continuum\webapp\WEB-INF\working-directory\3' sync -f"{noformat}
Maybe changing the maven-scm-provider to add single quotes around the clientspec name might fix this issue.
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Commented: (CONTINUUM-1402) Syncing with Perforce on
Linux/Unix/Bash fails
Posted by "Sebastian Annies (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_106601 ]
Sebastian Annies commented on CONTINUUM-1402:
---------------------------------------------
Can someone concerned please have a look into PLXUTILS-44 and comment my comment? I just don't know how to fix that correctly! Any hints?
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Commented: (CONTINUUM-1402) Syncing with Perforce on
Linux/Unix/Bash fails
Posted by "Emmanuel Venisse (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_106076 ]
Emmanuel Venisse commented on CONTINUUM-1402:
---------------------------------------------
What would be the command to use that will be correct? Can you provide a patch for PLXUTILS-44 ?
INFO: In actual Continuum version, plexus-utils use /bin/bash , the new plexus-utils code use /bin/sh
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Issue Comment Edited: (CONTINUUM-1402) Syncing with Perforce
on Linux/Unix/Bash fails
Posted by "Sebastian Annies (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_105305 ]
Sebastian Annies edited comment on CONTINUUM-1402 at 8/21/07 7:40 AM:
----------------------------------------------------------------------
MORE READABLE HERE:
When a client is created it is named:
E.g. {{sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6}}
that is ok, but now comes the sync command and uses following commandline
{{/bin/bash c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"}}
The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
The Problem starts in 'PerforceCheckOutCommand':
{{public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
ScmVersion version, String specname )
{
Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
{color:red}command.createArgument().setValue( "-c" + specname );{color}
command.createArgument().setValue( "sync" );
// Use a simple heuristic to determine if we should use the Force flag
// on sync. Forcing sync is a HUGE performance hit but is required in
// rare instances where source is somehow deleted. If the target
// directory is completely empty, assume a force is required. If
// not empty, we assume a previous checkout was already done and a normal
// sync will suffice.
// SCM-110
String[] files = workingDirectory.list();
if ( files == null || files.length == 0 )
{
// We need to force so checkout to an empty directory will work. command.createArgument().setValue( "-f" ); }
// Not sure what to do here. I'm unclear whether we should be
// sync'ing each file individually to the label or just sync the
// entire contents of the workingDir. I'm going to assume the
// latter until the exact semantics are clearer.
if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
{ command.createArgument().setValue( "@" + version.getName() ); }
}
}}
The {{specname}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
The next thing I will do is to file an issue at plexus-utils and link the issues.
was:
MORE READABLE HERE:
When a client is created it is named:
E.g. {{sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6}}
that is ok, but now comes the sync command and uses following commandline
{{/bin/bash c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"}}
The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
The Problem starts in 'PerforceCheckOutCommand':
{{public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
ScmVersion version, String specname )
{
Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
{color.red}
command.createArgument().setValue( "-c" + specname );{color}
command.createArgument().setValue( "sync" );
// Use a simple heuristic to determine if we should use the Force flag
// on sync. Forcing sync is a HUGE performance hit but is required in
// rare instances where source is somehow deleted. If the target
// directory is completely empty, assume a force is required. If
// not empty, we assume a previous checkout was already done and a normal
// sync will suffice.
// SCM-110
String[] files = workingDirectory.list();
if ( files == null || files.length == 0 )
{
// We need to force so checkout to an empty directory will work. command.createArgument().setValue( "-f" ); }
// Not sure what to do here. I'm unclear whether we should be
// sync'ing each file individually to the label or just sync the
// entire contents of the workingDir. I'm going to assume the
// latter until the exact semantics are clearer.
if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
{ command.createArgument().setValue( "@" + version.getName() ); }
}
}}
The {{specname}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
The next thing I will do is to file an issue at plexus-utils and link the issues.
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Issue Comment Edited: (CONTINUUM-1402) Syncing with Perforce
on Linux/Unix/Bash fails
Posted by "Sebastian Annies (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_105305 ]
Sebastian Annies edited comment on CONTINUUM-1402 at 8/21/07 10:16 AM:
-----------------------------------------------------------------------
MORE READABLE HERE:
When a client is created it is named:
E.g. {{sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6}}
that is ok, but now comes the sync command and uses following commandline
{{/bin/bash c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"}}
The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
The Problem starts in 'PerforceCheckOutCommand':
{quote}public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
ScmVersion version, String specname )
{
Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
{color:red}command.createArgument().setValue( "-c" + specname );{color}
command.createArgument().setValue( "sync" );
// Use a simple heuristic to determine if we should use the Force flag
// on sync. Forcing sync is a HUGE performance hit but is required in
// rare instances where source is somehow deleted. If the target
// directory is completely empty, assume a force is required. If
// not empty, we assume a previous checkout was already done and a normal
// sync will suffice.
// SCM-110
String[] files = workingDirectory.list();
if ( files == null || files.length == 0 )
\{
// We need to force so checkout to an empty directory will work.
command.createArgument().setValue( "-f" );
\}
// Not sure what to do here. I'm unclear whether we should be
// sync'ing each file individually to the label or just sync the
// entire contents of the workingDir. I'm going to assume the
// latter until the exact semantics are clearer.
if ( version != null && StringUtils.isNotEmpty( version.getName() ) ) \{
command.createArgument().setValue( "@" + version.getName() );
\}
}
{quote}
The {{specname}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
The next thing I will do is to file an issue at plexus-utils and link the issues.
was:
MORE READABLE HERE:
When a client is created it is named:
E.g. {{sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6}}
that is ok, but now comes the sync command and uses following commandline
{{/bin/bash c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"}}
The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
The Problem starts in 'PerforceCheckOutCommand':
{quote}public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
ScmVersion version, String specname )
{
Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
{color:red}command.createArgument().setValue( "-c" + specname );{color}
command.createArgument().setValue( "sync" );
// Use a simple heuristic to determine if we should use the Force flag
// on sync. Forcing sync is a HUGE performance hit but is required in
// rare instances where source is somehow deleted. If the target
// directory is completely empty, assume a force is required. If
// not empty, we assume a previous checkout was already done and a normal
// sync will suffice.
// SCM-110
String[] files = workingDirectory.list();
if ( files == null || files.length == 0 )
{
// We need to force so checkout to an empty directory will work. command.createArgument().setValue( "-f" ); }
// Not sure what to do here. I'm unclear whether we should be
// sync'ing each file individually to the label or just sync the
// entire contents of the workingDir. I'm going to assume the
// latter until the exact semantics are clearer.
if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
\{ command.createArgument().setValue( "@" + version.getName() ); \}
}
{quote}
The {{specname}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
The next thing I will do is to file an issue at plexus-utils and link the issues.
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Issue Comment Edited: (CONTINUUM-1402) Syncing with Perforce
on Linux/Unix/Bash fails
Posted by "Matthias Wurm (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_106308 ]
Matthias Wurm edited comment on CONTINUUM-1402 at 9/3/07 1:02 PM:
------------------------------------------------------------------
I guess there is a problem with backslashes in the command:
After setting loglevel to debug I've seen that maven-scm wants to do the following:
2007-09-03 19:55:35,908 [pool-1-thread-1] DEBUG ScmManager:default - Executing: /bin/bash --c "p4 -d /data/local/continuum-1.1-beta-2/apps/continuum/webapp/WEB-INF/working-directory/3 -p perforce.e.secunet.de:1666 -chostname-MavenSCM-\data\local\continuum-1.1-beta-2\apps\continuum\webapp\WEB-INF\working-directory\3 sync -f"
Executing the command manually on my console removes the backslashes, hence the command fails
Client 'hostname-MavenSCM-datalocalcontinuum-1.1-beta-2appscontinuumwebappWEB-INFworking-directory2' unknown - use 'client' command to create it.
Setting the clientspec inside single quotes like this works on the console:
/bin/bash -c "p4 -d /data/local/continuum-1.1-beta-2/apps/continuum/webapp/WEB-INF/working-directory/3 -p perforce.e.secunet.de:1666 -c'hostname-MavenSCM-\data\local\continuum-1.1-beta-2\apps\continuum\webapp\WEB-INF\working-directory\3' sync -f"
Maybe changing the maven-scm-provider to add single quotes around the clientspec name might fix this issue.
was:
I guess there is a problem with backslashes in the command:
After setting loglevel to debug I've seen that maven-scm wants to do the following:
2007-09-03 19:55:35,908 [pool-1-thread-1] DEBUG ScmManager:default - Executing: /bin/bash -c "p4 -d /data/local/continuum-1.1-beta-2/apps/continuum/webapp/WEB-INF/working-directory/3 -p perforce.e.secunet.de:1666 -chostname-MavenSCM-\data\local\continuum-1.1-beta-2\apps\continuum\webapp\WEB-INF\working-directory\3 sync -f"
Executing the command manually on my console removes the backslashes, hence the command fails
Client 'hostname-MavenSCM-datalocalcontinuum-1.1-beta-2appscontinuumwebappWEB-INFworking-directory2' unknown - use 'client' command to create it.
Setting the clientspec inside single quotes like this works on the console:
/bin/bash -c "p4 -d /data/local/continuum-1.1-beta-2/apps/continuum/webapp/WEB-INF/working-directory/3 -p perforce.e.secunet.de:1666 -c'hostname-MavenSCM-\data\local\continuum-1.1-beta-2\apps\continuum\webapp\WEB-INF\working-directory\3' sync -f"
Maybe changing the maven-scm-provider to add single quotes around the clientspec name might fix this issue.
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Commented: (CONTINUUM-1402) Syncing with Perforce on
Linux/Unix/Bash fails
Posted by "Matthias Wurm (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_109974 ]
Matthias Wurm commented on CONTINUUM-1402:
------------------------------------------
I'll have a look at the maven-scm-provider-perforce hopefully until tomorrow and file the issue...
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Commented: (CONTINUUM-1402) Syncing with Perforce on
Linux/Unix/Bash fails
Posted by "Sebastian Annies (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_106309 ]
Sebastian Annies commented on CONTINUUM-1402:
---------------------------------------------
I will provide a plexus-utils fix in the next days (perhaps I can even get this done today)
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Issue Comment Edited: (CONTINUUM-1402) Syncing with Perforce
on Linux/Unix/Bash fails
Posted by "Sebastian Annies (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_105305 ]
Sebastian Annies edited comment on CONTINUUM-1402 at 8/21/07 10:15 AM:
-----------------------------------------------------------------------
MORE READABLE HERE:
When a client is created it is named:
E.g. {{sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6}}
that is ok, but now comes the sync command and uses following commandline
{{/bin/bash c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"}}
The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
The Problem starts in 'PerforceCheckOutCommand':
{quote}public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
ScmVersion version, String specname )
{
Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
{color:red}command.createArgument().setValue( "-c" + specname );{color}
command.createArgument().setValue( "sync" );
// Use a simple heuristic to determine if we should use the Force flag
// on sync. Forcing sync is a HUGE performance hit but is required in
// rare instances where source is somehow deleted. If the target
// directory is completely empty, assume a force is required. If
// not empty, we assume a previous checkout was already done and a normal
// sync will suffice.
// SCM-110
String[] files = workingDirectory.list();
if ( files == null || files.length == 0 )
{
// We need to force so checkout to an empty directory will work. command.createArgument().setValue( "-f" ); }
// Not sure what to do here. I'm unclear whether we should be
// sync'ing each file individually to the label or just sync the
// entire contents of the workingDir. I'm going to assume the
// latter until the exact semantics are clearer.
if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
\{ command.createArgument().setValue( "@" + version.getName() ); \}
}
{quote}
The {{specname}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
The next thing I will do is to file an issue at plexus-utils and link the issues.
was:
MORE READABLE HERE:
When a client is created it is named:
E.g. {{sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6}}
that is ok, but now comes the sync command and uses following commandline
{{/bin/bash c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"}}
The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
The Problem starts in 'PerforceCheckOutCommand':
{quote}public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
ScmVersion version, String specname )
{
Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
{color:red}command.createArgument().setValue( "-c" + specname );{color}
command.createArgument().setValue( "sync" );
// Use a simple heuristic to determine if we should use the Force flag
// on sync. Forcing sync is a HUGE performance hit but is required in
// rare instances where source is somehow deleted. If the target
// directory is completely empty, assume a force is required. If
// not empty, we assume a previous checkout was already done and a normal
// sync will suffice.
// SCM-110
String[] files = workingDirectory.list();
if ( files == null || files.length == 0 )
{
// We need to force so checkout to an empty directory will work. command.createArgument().setValue( "-f" ); }
// Not sure what to do here. I'm unclear whether we should be
// sync'ing each file individually to the label or just sync the
// entire contents of the workingDir. I'm going to assume the
// latter until the exact semantics are clearer.
if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
{ command.createArgument().setValue( "@" + version.getName() ); }
}
{quote}
The {{specname}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
The next thing I will do is to file an issue at plexus-utils and link the issues.
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Commented: (CONTINUUM-1402) Syncing with Perforce on
Linux/Unix/Bash fails
Posted by "Sebastian Annies (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_115890 ]
Sebastian Annies commented on CONTINUUM-1402:
---------------------------------------------
No Workaround for me: I got 45 modules.
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Issue Comment Edited: (CONTINUUM-1402) Syncing with Perforce
on Linux/Unix/Bash fails
Posted by "Matthias Wurm (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_109966 ]
Matthias Wurm edited comment on CONTINUUM-1402 at 10/15/07 9:22 AM:
--------------------------------------------------------------------
Single quotes in the p4 command is indeed a problem under windows. I just tried that out under XP:
{{p4 -c 'myclientspec' sync -n}}
Result:
{{Client ''myclientspec'' unknown - use 'client' command to create it.}}
The quick fix would be to avoid characters that are used as escape characters in identifiers and replace the path separators with a different symbol (like an underscore) to generate the client spec name.
What about backwards compatibility here?
was:
Single quotes in the p4 command is indeed a problem under windows. I just tried that out under XP:
{{monospaced}}
p4 -c 'myclientspec' sync -n
{{monospaced}}
Result:
Client ''myclientspec'' unknown - use 'client' command to create it.
The quick fix would be to avoid characters that are used as escape characters in identifiers and replace the path separators with a different symbol (like an underscore) to generate the client spec name.
What about backwards compatibility here?
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Commented: (CONTINUUM-1402) Syncing with Perforce on
Linux/Unix/Bash fails
Posted by "Matthias Wurm (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_109966 ]
Matthias Wurm commented on CONTINUUM-1402:
------------------------------------------
Single quotes in the p4 command is indeed a problem under windows. I just tried that out under XP:
p4 -c 'myclientspec' sync -n
Result:
Client ''myclientspec'' unknown - use 'client' command to create it.
The quick fix would be to avoid characters that are used as escape characters in identifiers and replace the path separators with a different symbol (like an underscore) to generate the client spec name.
What about backwards compatibility here?
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Issue Comment Edited: (CONTINUUM-1402) Syncing with Perforce
on Linux/Unix/Bash fails
Posted by "Sebastian Annies (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_106601 ]
Sebastian Annies edited comment on CONTINUUM-1402 at 9/5/07 4:40 PM:
---------------------------------------------------------------------
Can someone concerned please have a look into PLXUTILS-44 and comment my comment? I just don't know how to fix that correctly! Any hints?
Concerning single quotes:
If the maven-scm provider adds the single quotes - what about windows then?
was:
Can someone concerned please have a look into PLXUTILS-44 and comment my comment? I just don't know how to fix that correctly! Any hints?
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Issue Comment Edited: (CONTINUUM-1402) Syncing with Perforce
on Linux/Unix/Bash fails
Posted by "Sebastian Annies (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_105305 ]
Sebastian Annies edited comment on CONTINUUM-1402 at 8/21/07 7:39 AM:
----------------------------------------------------------------------
MORE READABLE HERE:
When a client is created it is named:
E.g. {{sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6}}
that is ok, but now comes the sync command and uses following commandline
{{/bin/bash c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"}}
The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
The Problem starts in 'PerforceCheckOutCommand':
{{public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
ScmVersion version, String specname )
{
Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
{color.red}
command.createArgument().setValue( "-c" + specname );{color}
command.createArgument().setValue( "sync" );
// Use a simple heuristic to determine if we should use the Force flag
// on sync. Forcing sync is a HUGE performance hit but is required in
// rare instances where source is somehow deleted. If the target
// directory is completely empty, assume a force is required. If
// not empty, we assume a previous checkout was already done and a normal
// sync will suffice.
// SCM-110
String[] files = workingDirectory.list();
if ( files == null || files.length == 0 )
{
// We need to force so checkout to an empty directory will work. command.createArgument().setValue( "-f" ); }
// Not sure what to do here. I'm unclear whether we should be
// sync'ing each file individually to the label or just sync the
// entire contents of the workingDir. I'm going to assume the
// latter until the exact semantics are clearer.
if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
{ command.createArgument().setValue( "@" + version.getName() ); }
}
}}
The {{specname}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
The next thing I will do is to file an issue at plexus-utils and link the issues.
was:
MORE READABLE HERE:
When a client is created it is named:
E.g. {{sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6}}
that is ok, but now comes the sync command and uses following commandline
{{/bin/bash c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"}}
The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
The Problem starts in 'PerforceCheckOutCommand':
{{
public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
ScmVersion version, String specname )
{
Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
{color.red}
command.createArgument().setValue( "-c" + specname );{color}
command.createArgument().setValue( "sync" );
// Use a simple heuristic to determine if we should use the Force flag
// on sync. Forcing sync is a HUGE performance hit but is required in
// rare instances where source is somehow deleted. If the target
// directory is completely empty, assume a force is required. If
// not empty, we assume a previous checkout was already done and a normal
// sync will suffice.
// SCM-110
String[] files = workingDirectory.list();
if ( files == null || files.length == 0 )
{
// We need to force so checkout to an empty directory will work. command.createArgument().setValue( "-f" ); }
// Not sure what to do here. I'm unclear whether we should be
// sync'ing each file individually to the label or just sync the
// entire contents of the workingDir. I'm going to assume the
// latter until the exact semantics are clearer.
if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
{ command.createArgument().setValue( "@" + version.getName() ); }
}
}}
The {{specname }} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
The next thing I will do is to file an issue at plexus-utils and link the issues.
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Issue Comment Edited: (CONTINUUM-1402) Syncing with Perforce
on Linux/Unix/Bash fails
Posted by "Matthias Wurm (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/CONTINUUM-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_109966 ]
Matthias Wurm edited comment on CONTINUUM-1402 at 10/15/07 9:22 AM:
--------------------------------------------------------------------
Single quotes in the p4 command is indeed a problem under windows. I just tried that out under XP:
{{monospaced}}
p4 -c 'myclientspec' sync -n
{{monospaced}}
Result:
Client ''myclientspec'' unknown - use 'client' command to create it.
The quick fix would be to avoid characters that are used as escape characters in identifiers and replace the path separators with a different symbol (like an underscore) to generate the client spec name.
What about backwards compatibility here?
was:
Single quotes in the p4 command is indeed a problem under windows. I just tried that out under XP:
p4 -c 'myclientspec' sync -n
Result:
Client ''myclientspec'' unknown - use 'client' command to create it.
The quick fix would be to avoid characters that are used as escape characters in identifiers and replace the path separators with a different symbol (like an underscore) to generate the client spec name.
What about backwards compatibility here?
> Syncing with Perforce on Linux/Unix/Bash fails
> ----------------------------------------------
>
> Key: CONTINUUM-1402
> URL: http://jira.codehaus.org/browse/CONTINUUM-1402
> Project: Continuum
> Issue Type: Bug
> Components: Integration - Maven 2, SCM
> Affects Versions: 1.1-beta-2
> Environment: Bash
> Reporter: Sebastian Annies
> Priority: Critical
>
> When a client is created it is named:
> E.g.{{monospaced}} sannies-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\6{{monospaced}}
> that is ok, but now comes the sync command and uses following commandline
> {{monospaced}}
> /bin/bash -c "p4 -d /opt/continuum-1.1-beta-3-SNAPSHOT/apps/continuum/webapp/WEB-INF/working-directory/1 -cbackground-sojus-MavenSCM-\opt\continuum-1.1-beta-3-SNAPSHOT\apps\continuum\webapp\WEB-INF\working-directory\1 sync"
> {{monospaced}}
> The Bash now removes the backslashes in the client name! The result is that the client is not existent and perforce returns with an error.
> I think continuum does everything allright but we need the ticket here to be reminded to switch to a new plexus-utils or maven-scm if it is fixed there.
> The Problem starts in 'PerforceCheckOutCommand':
> {{monospaced}}
> public static Commandline createCommandLine( PerforceScmProviderRepository repo, File workingDirectory,
> ScmVersion version, String specname )
> {
> Commandline command = PerforceScmProvider.createP4Command( repo, workingDirectory );
> {color:red}
> command.createArgument().setValue( "-c" + specname );
> {color}
> command.createArgument().setValue( "sync" );
> // Use a simple heuristic to determine if we should use the Force flag
> // on sync. Forcing sync is a HUGE performance hit but is required in
> // rare instances where source is somehow deleted. If the target
> // directory is completely empty, assume a force is required. If
> // not empty, we assume a previous checkout was already done and a normal
> // sync will suffice.
> // SCM-110
> String[] files = workingDirectory.list();
> if ( files == null || files.length == 0 )
> {
> // We need to force so checkout to an empty directory will work.
> command.createArgument().setValue( "-f" );
> }
> // Not sure what to do here. I'm unclear whether we should be
> // sync'ing each file individually to the label or just sync the
> // entire contents of the workingDir. I'm going to assume the
> // latter until the exact semantics are clearer.
> if ( version != null && StringUtils.isNotEmpty( version.getName() ) )
> {
> command.createArgument().setValue( "@" + version.getName() );
> }
> return command;
> {{monospaced}}
> The {{monospaced}}specname {{monospaced}} contains the backslashes and is these are neither escaped nor quoted! Hmm ... Is that a job that the CommandLine should handle? I think so!
> The next thing I will do is to file an issue at plexus-utils and link the issues.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira