[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16487435#comment-16487435 ] Michael Osipov commented on SCM-885: This works for me on Windows and should be set by everyone on Windows: {noformat} core.autocrlf=true core.safecrlf=true core.eol=native {noformat} > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16486818#comment-16486818 ] Matthieu Brouillard commented on SCM-885: - Hi Mickael, * regarding the `.gitattributes`, if I defined both the binary and EOL for the repositories I added it is because: ** it happened that some files were recognized as text instead of binary ** some text files, extracted with CR+LF on my windows machine, were causing troubles and lead to unrecognized git repo. Forcing LF resolved the pb. * looks like the hooks were not that important ;) Go ahead otherwise. > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16484598#comment-16484598 ] Michael Osipov commented on SCM-885: So, I squashed your commits, added another commit on top. Have a look at the ticket branch. If everything is fine, I will squash again and merge. > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16483692#comment-16483692 ] ASF GitHub Bot commented on SCM-885: michael-o commented on issue #74: [SCM-885] third implementation URL: https://github.com/apache/maven-scm/pull/74#issuecomment-390918449 I am aware of that, but it still remains bloat for the test. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16483676#comment-16483676 ] ASF GitHub Bot commented on SCM-885: McFoggy commented on issue #74: [SCM-885] third implementation URL: https://github.com/apache/maven-scm/pull/74#issuecomment-390914512 I'll do a what I can do to cleanup the git internals but honestly what you call _bloat_ is just the result of a pure `git clone --bare`. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16483594#comment-16483594 ] ASF GitHub Bot commented on SCM-885: michael-o commented on issue #74: [SCM-885] third implementation URL: https://github.com/apache/maven-scm/pull/74#issuecomment-390892686 The code looks way better now, I am fine adding a new repo for a test, but I don't hink we need to commit bloat. See the other test repos, they have a minimal set of files: no hooks or stuff. They aren't necessary. Also have a look at `config` it contains a local path from your computer. Please align and I will run tests, and merge. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16483574#comment-16483574 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #74: [SCM-885] third implementation URL: https://github.com/apache/maven-scm/pull/74#discussion_r189795759 ## File path: maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/changelog/GitChangeLogCommand.java ## @@ -89,17 +97,28 @@ protected ChangeLogScmResult executeChangeLogCommand( ChangeLogScmRequest reques final String datePattern = request.getDatePattern(); return executeChangeLogCommand( request.getScmRepository().getProviderRepository(), fileSet, request.getStartDate(), request.getEndDate(), request.getScmBranch(), datePattern, startVersion, -endVersion, request.getLimit() ); +endVersion, request.getLimit(), request.getRevision() ); Review comment: Let's leave it as-is right now. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16483514#comment-16483514 ] ASF GitHub Bot commented on SCM-885: McFoggy commented on a change in pull request #74: [SCM-885] third implementation URL: https://github.com/apache/maven-scm/pull/74#discussion_r189780680 ## File path: maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/changelog/GitChangeLogCommand.java ## @@ -89,17 +97,28 @@ protected ChangeLogScmResult executeChangeLogCommand( ChangeLogScmRequest reques final String datePattern = request.getDatePattern(); return executeChangeLogCommand( request.getScmRepository().getProviderRepository(), fileSet, request.getStartDate(), request.getEndDate(), request.getScmBranch(), datePattern, startVersion, -endVersion, request.getLimit() ); +endVersion, request.getLimit(), request.getRevision() ); Review comment: which both? there are 10 parameters, 4 provided as variables, 6 as method calls on request variable. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16483511#comment-16483511 ] ASF GitHub Bot commented on SCM-885: McFoggy commented on issue #74: [SCM-885] third implementation URL: https://github.com/apache/maven-scm/pull/74#issuecomment-390867101 Hi Mickael, was of for some days and could not answer before. > Why did you rename the test repo and have added a new one? Unless I did a mistake, I did not touch the existing one. But I have provided a new one in order to have known commits with a documentation on how the repo was built. We are talking about integration tests ; I do not see a problem in providing more controlled ones. The repo is a direct result of a `git clone --bare`. I did not removed or added any files from the built bare repository. I'll amend the PR to take your other remarks into account. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16483512#comment-16483512 ] ASF GitHub Bot commented on SCM-885: McFoggy commented on issue #74: [SCM-885] third implementation URL: https://github.com/apache/maven-scm/pull/74#issuecomment-390867101 Hi Mickael, was of for some days and could not answer before. > Why did you rename the test repo and have added a new one? Unless I did a mistake, I did not touch the existing one. But I have provided a new one in order to have known commits with a documentation on how the repo was built. We are talking about integration tests ; I do not see a problem in providing more controlled ones. The repo is a direct result of a `git clone --bare`. I did not removed or added any files from the built bare repository. I'll amend the PR to take your other remarks into account. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16481141#comment-16481141 ] ASF GitHub Bot commented on SCM-885: michael-o commented on issue #74: [SCM-885] third implementation URL: https://github.com/apache/maven-scm/pull/74#issuecomment-390320081 Why did you rename the test repo and have added a new one? What was actually wrong with the given one? The are a lot of sample hooks which aren't superfluous for the test (they may have existed in the previous repo also). This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16481137#comment-16481137 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #74: [SCM-885] third implementation URL: https://github.com/apache/maven-scm/pull/74#discussion_r189381810 ## File path: maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/src/main/java/org/apache/maven/scm/provider/git/jgit/command/changelog/JGitChangeLogCommand.java ## @@ -64,6 +64,14 @@ protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repo return executeChangeLogCommand( repo, fileSet, null, null, null, datePattern, startVersion, endVersion ); } +@Override +protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repository, ScmFileSet fileSet, + ScmVersion version, String datePattern) Review comment: space please. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16481136#comment-16481136 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #74: [SCM-885] third implementation URL: https://github.com/apache/maven-scm/pull/74#discussion_r189381717 ## File path: maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/changelog/GitChangeLogCommand.java ## @@ -136,9 +155,18 @@ public static Commandline createCommandLine( GitScmProviderRepository repository null ); } +static Commandline createCommandLine( GitScmProviderRepository repository, File workingDirectory, + ScmBranch branch, Date startDate, Date endDate, + ScmVersion startVersion, ScmVersion endVersion, Integer limit) +{ +return createCommandLine( repository, workingDirectory, branch, startDate, endDate, startVersion, endVersion, +limit, null ); Review comment: indent continuation This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16481132#comment-16481132 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #74: [SCM-885] third implementation URL: https://github.com/apache/maven-scm/pull/74#discussion_r189381471 ## File path: maven-scm-api/src/main/java/org/apache/maven/scm/command/changelog/AbstractChangeLogCommand.java ## @@ -55,6 +55,14 @@ protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repo throw new ScmException( "Unsupported method for this provider." ); } +@Deprecated +protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repository, ScmFileSet fileSet, + ScmVersion version, String datePattern ) +throws ScmException Review comment: 4 spaces please. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16481133#comment-16481133 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #74: [SCM-885] third implementation URL: https://github.com/apache/maven-scm/pull/74#discussion_r189381570 ## File path: maven-scm-api/src/main/java/org/apache/maven/scm/command/changelog/AbstractChangeLogCommand.java ## @@ -76,13 +84,21 @@ public ScmResult executeCommand( ScmProviderRepository repository, ScmFileSet fi ScmBranch branch = (ScmBranch) parameters.getScmVersion( CommandParameter.BRANCH, null ); +ScmVersion version = parameters.getScmVersion( CommandParameter.SCM_VERSION, null ); + ScmVersion startVersion = parameters.getScmVersion( CommandParameter.START_SCM_VERSION, null ); ScmVersion endVersion = parameters.getScmVersion( CommandParameter.END_SCM_VERSION, null ); String datePattern = parameters.getString( CommandParameter.CHANGELOG_DATE_PATTERN, null ); -if ( startVersion != null || endVersion != null ) +boolean fromVersionToStartOfRepository = startVersion == null && endVersion == null && version != null; + +if (fromVersionToStartOfRepository) Review comment: spaces please This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16481134#comment-16481134 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #74: [SCM-885] third implementation URL: https://github.com/apache/maven-scm/pull/74#discussion_r189381637 ## File path: maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/changelog/GitChangeLogCommand.java ## @@ -69,14 +69,22 @@ protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repo return executeChangeLogCommand( repo, fileSet, startDate, endDate, branch, datePattern, null, null ); } -protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repo, ScmFileSet fileSet, - Date startDate, Date endDate, ScmBranch branch, - String datePattern, ScmVersion startVersion, - ScmVersion endVersion ) +@Override +protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repository, ScmFileSet fileSet, + ScmVersion version, String datePattern) +throws ScmException +{ +return executeChangeLogCommand( repository, fileSet, null, null, null, datePattern, null, null, null, version ); +} + +protected ChangeLogScmResult executeChangeLogCommand(ScmProviderRepository repo, ScmFileSet fileSet, Review comment: space please. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16481129#comment-16481129 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #74: [SCM-885] third implementation URL: https://github.com/apache/maven-scm/pull/74#discussion_r189381286 ## File path: maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/src/main/java/org/apache/maven/scm/provider/git/jgit/command/changelog/JGitChangeLogCommand.java ## @@ -82,12 +82,14 @@ protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repo throws ScmException { Git git = null; +boolean isARangeChangeLog = startVersion != null || endVersion != null; Review comment: Isn't this name inconsistent with the gitexe provider? This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16481130#comment-16481130 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #74: [SCM-885] third implementation URL: https://github.com/apache/maven-scm/pull/74#discussion_r189381372 ## File path: maven-scm-api/src/main/java/org/apache/maven/scm/command/changelog/ChangeLogScmRequest.java ## @@ -175,4 +175,15 @@ public void setDateRange( Date startDate, Date endDate ) setEndDate( endDate ); } +public void setRevision(ScmVersion revision) Review comment: Please add the spaces between parenthesis. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16481128#comment-16481128 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #74: [SCM-885] third implementation URL: https://github.com/apache/maven-scm/pull/74#discussion_r189380562 ## File path: maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/changelog/GitChangeLogCommand.java ## @@ -89,17 +97,28 @@ protected ChangeLogScmResult executeChangeLogCommand( ChangeLogScmRequest reques final String datePattern = request.getDatePattern(); return executeChangeLogCommand( request.getScmRepository().getProviderRepository(), fileSet, request.getStartDate(), request.getEndDate(), request.getScmBranch(), datePattern, startVersion, -endVersion, request.getLimit() ); +endVersion, request.getLimit(), request.getRevision() ); } + protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repo, ScmFileSet fileSet, Date startDate, Date endDate, ScmBranch branch, String datePattern, ScmVersion startVersion, ScmVersion endVersion, Integer limit ) +throws ScmException Review comment: throws indents with 4 spaces This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16481127#comment-16481127 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #74: [SCM-885] third implementation URL: https://github.com/apache/maven-scm/pull/74#discussion_r189380505 ## File path: maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/changelog/GitChangeLogCommand.java ## @@ -89,17 +97,28 @@ protected ChangeLogScmResult executeChangeLogCommand( ChangeLogScmRequest reques final String datePattern = request.getDatePattern(); return executeChangeLogCommand( request.getScmRepository().getProviderRepository(), fileSet, request.getStartDate(), request.getEndDate(), request.getScmBranch(), datePattern, startVersion, -endVersion, request.getLimit() ); +endVersion, request.getLimit(), request.getRevision() ); Review comment: Move both to variables for consistency. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16481125#comment-16481125 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #74: [SCM-885] third implementation URL: https://github.com/apache/maven-scm/pull/74#discussion_r189380195 ## File path: maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/changelog/GitChangeLogCommand.java ## @@ -69,14 +69,22 @@ protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repo return executeChangeLogCommand( repo, fileSet, startDate, endDate, branch, datePattern, null, null ); } +@Override +protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repository, ScmFileSet fileSet, + ScmVersion version, String datePattern ) +throws ScmException +{ +return executeChangeLogCommand( repository, fileSet, null, null, null, datePattern, null, null, null, version ); +} + protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repo, ScmFileSet fileSet, - Date startDate, Date endDate, ScmBranch branch, - String datePattern, ScmVersion startVersion, - ScmVersion endVersion ) + Date startDate, Date endDate, ScmBranch branch, + String datePattern, ScmVersion startVersion, + ScmVersion endVersion ) Review comment: Indentation looks wrong. `Date` should align on `ScmProviderRepository`. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16481124#comment-16481124 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #74: [SCM-885] third implementation URL: https://github.com/apache/maven-scm/pull/74#discussion_r189379912 ## File path: maven-scm-api/src/main/java/org/apache/maven/scm/command/changelog/AbstractChangeLogCommand.java ## @@ -76,13 +84,21 @@ public ScmResult executeCommand( ScmProviderRepository repository, ScmFileSet fi ScmBranch branch = (ScmBranch) parameters.getScmVersion( CommandParameter.BRANCH, null ); +ScmVersion version = parameters.getScmVersion( CommandParameter.SCM_VERSION, null ); + ScmVersion startVersion = parameters.getScmVersion( CommandParameter.START_SCM_VERSION, null ); ScmVersion endVersion = parameters.getScmVersion( CommandParameter.END_SCM_VERSION, null ); String datePattern = parameters.getString( CommandParameter.CHANGELOG_DATE_PATTERN, null ); -if ( startVersion != null || endVersion != null ) +boolean fromVersionToStartOfRepository = startVersion == null && endVersion == null && version != null; Review comment: The variable name is a bit confusing because we have `startVersion` and the name contains `start` too. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16480779#comment-16480779 ] ASF GitHub Bot commented on SCM-885: McFoggy opened a new pull request #74: [SCM-885] third implementation URL: https://github.com/apache/maven-scm/pull/74 as discussed in https://issues.apache.org/jira/browse/SCM-885, I have done my best to remain backward compatible while providing the new feature, tck tests & aligning both git implementations. The incompatible changes are contained in #69152d3 and correspond to corrections/alignement of the jgit implementation towards the exe one. At that time I have kept all the commits separated but I can squash on demand. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: 1.9.6 > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16480476#comment-16480476 ] Michael Osipov commented on SCM-885: Great thank you. I'd also appreciate if this will work for both gitexe and jgit provider. > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16480425#comment-16480425 ] Matthieu Brouillard commented on SCM-885: - there is not problem ; I fully undertsand you could have been confused. And finally such confusion & discussions wree good because in the end we will get a better impl because using the cases described in above table we will be backward compatible (expect for the bug fixes I will provide) and still offer the possibility to have history fom the beginning of the repository. I am working on the PR. As I really add more IT tests it takes more time to me, stay tuned... > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16480391#comment-16480391 ] Michael Osipov commented on SCM-885: Sorry for the confusion I have caused. I did not intend to. I was trying to tailor a generic API to the Git approach, even it breaks behavior because I have come to the conclusion that your initial PR isn't that wrong after all. I do agree, the table makes really sense and crystal clear. Looking forward to your new PR. > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16479030#comment-16479030 ] Matthieu Brouillard commented on SCM-885: - {quote}The usecase ..END is covered by START..END where START hast to be provided as HEAD explicitly {quote} you refused the initial PR that was assuming the same for both {{..END}} & {{START..}} because it was introducing a non compatible change. I do not understand anymore. {quote}The last usecase for is that SCM_VERSION is END_SCM_VERSION, I'd expect users to provide HEAD to avoid ambiguity. {quote} I don't understand the sentence. Given the table above there is no ambiguity anymore because if any of the {{START_SCM_VERSION}} or {{END_SCM_VERSION}} is provided then it is the syntax {{A..B}} that will be used even if any of A or B is ommited (null). {{git whatchanged VERSION}} will only be issued when and only when both {{START_SCM_VERSION}} and {{END_SCM_VERSION}} are null I'll provide another PR that implements the table. > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478896#comment-16478896 ] Michael Osipov commented on SCM-885: Looks better now, but I do think that we don't need three commands. The usecase {{..END}} is covered by {{START..END}} where {{START}} hast to be provided as {{HEAD}} explicitly. The last usecase for is that {{SCM_VERSION}} is {{END_SCM_VERSION}}, I'd expect users to provide {{HEAD}} to avoid ambiguity. > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478794#comment-16478794 ] Matthieu Brouillard commented on SCM-885: - {quote}The more I think about it {noformat} START.. START..END END {noformat}{quote} That's a bit what I initialy wanted to do with the initial PR. But then how would you differenciate {{..END}} from {{END}} by the usage for the later of {{CommandParameter.SCM_VERSION}} instead of {{CommandParameter.END_SCM_VERSION}}? Now that I have a better overview of the code, I think it could be the best solution. This will end for changelog command in git world: ||START_SCM_VERSION||END_SCM_VERSION||SCM_VERSION||git whatchanged parameters||Description|| | A | B | any, not used | A..B | commits between B and A, A being an ancestor of B otherwise empty, without A | | null | B | any, not used | ..B | commits between B and HEAD, HEAD being an ancestor of B otherwise empty, without HEAD | | A | null | any, not used | A.. | commits between HEAD and A, A being an ancestor of HEAD otherwise empty, without A | | null | null | V | V | all ancestor commits starting from V | Do you agree that it is the way to go? > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478681#comment-16478681 ] ASF GitHub Bot commented on SCM-885: michael-o commented on issue #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#issuecomment-389775821 Please also note my comment in the JIRA ticket. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478678#comment-16478678 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#discussion_r188864492 ## File path: maven-scm-api/src/main/java/org/apache/maven/scm/command/changelog/AbstractChangeLogCommand.java ## @@ -50,11 +50,20 @@ protected abstract ChangeLogScmResult executeChangeLogCommand( ScmProviderReposi protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repository, ScmFileSet fileSet, ScmVersion startVersion, ScmVersion endVersion, String datePattern ) -throws ScmException +throws ScmException { throw new ScmException( "Unsupported method for this provider." ); } +protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repository, ScmFileSet fileSet, + ScmVersion endVersion, + String datePattern, boolean startFromRoot ) +throws ScmException +{ +// by default let's just delegate to executeChangeLogCommand with both start and end versions +return executeChangeLogCommand( repository, fileSet, null, endVersion, datePattern ); Review comment: Just throw `UnsupportedOperationException`. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478673#comment-16478673 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#discussion_r188864134 ## File path: maven-scm-api/src/main/java/org/apache/maven/scm/CommandParameter.java ## @@ -50,6 +50,8 @@ public static final CommandParameter BRANCH = new CommandParameter( "branch" ); +public static final CommandParameter START_FROM_ROOT = new CommandParameter( "startFromRoot" ); Review comment: But isn't that the end, not the start? You are giving one ref from which log goes back in time, doesn't it? This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478672#comment-16478672 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#discussion_r188864134 ## File path: maven-scm-api/src/main/java/org/apache/maven/scm/CommandParameter.java ## @@ -50,6 +50,8 @@ public static final CommandParameter BRANCH = new CommandParameter( "branch" ); +public static final CommandParameter START_FROM_ROOT = new CommandParameter( "startFromRoot" ); Review comment: But isn't that the end, not the start? You are giving one ref from which log goes back in time. Doesn't it? This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478638#comment-16478638 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#discussion_r188856738 ## File path: maven-scm-api/src/main/java/org/apache/maven/scm/command/changelog/ChangeLogScmRequest.java ## @@ -130,6 +130,18 @@ public void setEndRevision( ScmVersion endRevision ) parameters.setScmVersion( CommandParameter.END_SCM_VERSION, endRevision ); } +public boolean getStartFromRoot() +throws ScmException Review comment: My bad, it is already indented with four chars. All is fine. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478627#comment-16478627 ] ASF GitHub Bot commented on SCM-885: McFoggy commented on issue #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#issuecomment-389764542 @michael-o I have taken your remarks into account and rebased to resolve the conflicts. If you want I can squash the commits. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478603#comment-16478603 ] ASF GitHub Bot commented on SCM-885: McFoggy commented on a change in pull request #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#discussion_r188849611 ## File path: maven-scm-api/src/main/java/org/apache/maven/scm/command/changelog/AbstractChangeLogCommand.java ## @@ -50,11 +50,20 @@ protected abstract ChangeLogScmResult executeChangeLogCommand( ScmProviderReposi protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repository, ScmFileSet fileSet, ScmVersion startVersion, ScmVersion endVersion, String datePattern ) -throws ScmException +throws ScmException { throw new ScmException( "Unsupported method for this provider." ); } +protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repository, ScmFileSet fileSet, + ScmVersion endVersion, + String datePattern, boolean startFromRoot ) +throws ScmException +{ +// by default let's just delegate to executeChangeLogCommand with both start and end versions +return executeChangeLogCommand( repository, fileSet, null, endVersion, datePattern ); Review comment: was to have a default non throwing exception behavior ; i'll use `throw new ScmException( "Unsupported method for this provider." );` instead This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478564#comment-16478564 ] ASF GitHub Bot commented on SCM-885: McFoggy commented on a change in pull request #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#discussion_r188845079 ## File path: maven-scm-api/src/main/java/org/apache/maven/scm/CommandParameter.java ## @@ -50,6 +50,8 @@ public static final CommandParameter BRANCH = new CommandParameter( "branch" ); +public static final CommandParameter START_FROM_ROOT = new CommandParameter( "startFromRoot" ); Review comment: also I would then change the method parameter `startFromRoot ` to `fromRepositoryStart` This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478557#comment-16478557 ] ASF GitHub Bot commented on SCM-885: McFoggy commented on a change in pull request #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#discussion_r188844431 ## File path: maven-scm-api/src/main/java/org/apache/maven/scm/command/changelog/ChangeLogScmRequest.java ## @@ -130,6 +130,18 @@ public void setEndRevision( ScmVersion endRevision ) parameters.setScmVersion( CommandParameter.END_SCM_VERSION, endRevision ); } +public boolean getStartFromRoot() +throws ScmException Review comment: sorry I do not understand this one. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478548#comment-16478548 ] ASF GitHub Bot commented on SCM-885: McFoggy commented on a change in pull request #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#discussion_r188843440 ## File path: maven-scm-api/src/main/java/org/apache/maven/scm/CommandParameter.java ## @@ -50,6 +50,8 @@ public static final CommandParameter BRANCH = new CommandParameter( "branch" ); +public static final CommandParameter START_FROM_ROOT = new CommandParameter( "startFromRoot" ); Review comment: What about a rename of this command parameter to : `FROM_REPOSITORY_START`? This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478061#comment-16478061 ] Michael Osipov commented on SCM-885: The more I think about it, the more I have the feeling that won't be able to cover all cases for Git anyway. We can reduce gitexe and jgit down to these three case where a new parameter is not necessary: {noformat} START.. START..END END {noformat} {{START}}, {{END}} those are explicitly provided. The rest is omitted. WDYT? > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478037#comment-16478037 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#discussion_r188758310 ## File path: maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/changelog/GitChangeLogCommand.java ## @@ -136,9 +160,18 @@ public static Commandline createCommandLine( GitScmProviderRepository repository null ); } +static Commandline createCommandLine( GitScmProviderRepository repository, File workingDirectory, + ScmBranch branch, Date startDate, Date endDate, + ScmVersion startVersion, ScmVersion endVersion, Integer limit ) +{ +return createCommandLine( +repository, workingDirectory, branch, startDate, endDate, startVersion, endVersion, limit, false Review comment: Please reformat This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478035#comment-16478035 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#discussion_r188758267 ## File path: maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/changelog/GitChangeLogCommand.java ## @@ -89,17 +102,28 @@ protected ChangeLogScmResult executeChangeLogCommand( ChangeLogScmRequest reques final String datePattern = request.getDatePattern(); return executeChangeLogCommand( request.getScmRepository().getProviderRepository(), fileSet, request.getStartDate(), request.getEndDate(), request.getScmBranch(), datePattern, startVersion, -endVersion, request.getLimit() ); +endVersion, request.getLimit(), request.getStartFromRoot() ); } protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repo, ScmFileSet fileSet, Date startDate, Date endDate, ScmBranch branch, String datePattern, ScmVersion startVersion, ScmVersion endVersion, Integer limit ) +throws ScmException +{ +return executeChangeLogCommand( +repo, fileSet, startDate, endDate, branch, datePattern, startVersion, endVersion, limit, false Review comment: Please reformat This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478034#comment-16478034 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#discussion_r188758228 ## File path: maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/changelog/GitChangeLogCommand.java ## @@ -89,17 +102,28 @@ protected ChangeLogScmResult executeChangeLogCommand( ChangeLogScmRequest reques final String datePattern = request.getDatePattern(); return executeChangeLogCommand( request.getScmRepository().getProviderRepository(), fileSet, request.getStartDate(), request.getEndDate(), request.getScmBranch(), datePattern, startVersion, -endVersion, request.getLimit() ); +endVersion, request.getLimit(), request.getStartFromRoot() ); } protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repo, ScmFileSet fileSet, Date startDate, Date endDate, ScmBranch branch, String datePattern, ScmVersion startVersion, ScmVersion endVersion, Integer limit ) +throws ScmException Review comment: 4 char This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478031#comment-16478031 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#discussion_r188757948 ## File path: maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/changelog/GitChangeLogCommand.java ## @@ -57,7 +57,20 @@ protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repo String datePattern ) throws ScmException { -return executeChangeLogCommand( repo, fileSet, null, null, null, datePattern, startVersion, endVersion ); +return executeChangeLogCommand( Review comment: Drop this change. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478032#comment-16478032 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#discussion_r188758147 ## File path: maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/changelog/GitChangeLogCommand.java ## @@ -57,7 +57,20 @@ protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repo String datePattern ) throws ScmException { -return executeChangeLogCommand( repo, fileSet, null, null, null, datePattern, startVersion, endVersion ); +return executeChangeLogCommand( +repo, fileSet, null, null, null, datePattern, startVersion, endVersion +); +} + +/** {@inheritDoc} */ +protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repo, ScmFileSet fileSet, + ScmVersion endVersion, String datePattern, + boolean startFromRoot ) +throws ScmException +{ +return executeChangeLogCommand( Review comment: Please reformat This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478025#comment-16478025 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#discussion_r188757598 ## File path: maven-scm-api/src/main/java/org/apache/maven/scm/command/changelog/ChangeLogScmRequest.java ## @@ -130,6 +130,18 @@ public void setEndRevision( ScmVersion endRevision ) parameters.setScmVersion( CommandParameter.END_SCM_VERSION, endRevision ); } +public boolean getStartFromRoot() Review comment: Boolean return value should be `is...`. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478029#comment-16478029 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#discussion_r188757715 ## File path: maven-scm-api/src/main/java/org/apache/maven/scm/command/changelog/ChangeLogScmRequest.java ## @@ -130,6 +130,18 @@ public void setEndRevision( ScmVersion endRevision ) parameters.setScmVersion( CommandParameter.END_SCM_VERSION, endRevision ); } +public boolean getStartFromRoot() +throws ScmException +{ +return parameters.getBoolean( CommandParameter.START_FROM_ROOT, false ); +} + +public void setStartFromRoot() +throws ScmException Review comment: 4 char indent This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478027#comment-16478027 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#discussion_r188757690 ## File path: maven-scm-api/src/main/java/org/apache/maven/scm/command/changelog/ChangeLogScmRequest.java ## @@ -130,6 +130,18 @@ public void setEndRevision( ScmVersion endRevision ) parameters.setScmVersion( CommandParameter.END_SCM_VERSION, endRevision ); } +public boolean getStartFromRoot() +throws ScmException Review comment: 4 char indent This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478024#comment-16478024 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#discussion_r188757458 ## File path: maven-scm-api/src/main/java/org/apache/maven/scm/command/changelog/AbstractChangeLogCommand.java ## @@ -50,11 +50,20 @@ protected abstract ChangeLogScmResult executeChangeLogCommand( ScmProviderReposi protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repository, ScmFileSet fileSet, ScmVersion startVersion, ScmVersion endVersion, String datePattern ) -throws ScmException +throws ScmException { throw new ScmException( "Unsupported method for this provider." ); } +protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repository, ScmFileSet fileSet, + ScmVersion endVersion, + String datePattern, boolean startFromRoot ) +throws ScmException +{ +// by default let's just delegate to executeChangeLogCommand with both start and end versions +return executeChangeLogCommand( repository, fileSet, null, endVersion, datePattern ); Review comment: What is the purpose of this entire method if `startFromRoot` is not passed? This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478012#comment-16478012 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#discussion_r188757145 ## File path: maven-scm-api/src/main/java/org/apache/maven/scm/CommandParameter.java ## @@ -50,6 +50,8 @@ public static final CommandParameter BRANCH = new CommandParameter( "branch" ); +public static final CommandParameter START_FROM_ROOT = new CommandParameter( "startFromRoot" ); Review comment: Why did you call it `root`. Looking at [gitvevisions](https://git-scm.com/docs/gitrevisions#_revision_range_summary) I fail to find a corresponding term. Does `startFromEnd` make more sense? This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478006#comment-16478006 ] ASF GitHub Bot commented on SCM-885: michael-o commented on a change in pull request #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#discussion_r188756408 ## File path: maven-scm-api/src/main/java/org/apache/maven/scm/command/changelog/AbstractChangeLogCommand.java ## @@ -50,11 +50,20 @@ protected abstract ChangeLogScmResult executeChangeLogCommand( ScmProviderReposi protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repository, ScmFileSet fileSet, ScmVersion startVersion, ScmVersion endVersion, String datePattern ) -throws ScmException +throws ScmException Review comment: Drop this change. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16478002#comment-16478002 ] ASF GitHub Bot commented on SCM-885: michael-o commented on issue #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72#issuecomment-389648916 Please revise this PR for the conflict. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16477997#comment-16477997 ] Michael Osipov commented on SCM-885: [~McFoggy], looking into your patch. The documentation says: bq. Returns the changes that have happend in the source control system in a certain period of time. This can be adding, removing, updating, ... of files This does not concretely specify how it has to be implemented. It is at the descretion of the SCM. Look at svnexe, it does use {{:HEAD}}. We could probably add {{HEAD}} for the sake of completeness. Regarding JGit, neither this is wrong or right because it is not specified. I think we need to do what makes most sense for Git. > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16474286#comment-16474286 ] Matthieu Brouillard commented on SCM-885: - [~michael-o] I have provided another PR that keeps the git exe impl backward compatible. But then it is the jgit one that I had to modify. see https://github.com/apache/maven-scm/pull/72 > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16474283#comment-16474283 ] ASF GitHub Bot commented on SCM-885: McFoggy opened a new pull request #72: [SCM-885] second implementation with new API URL: https://github.com/apache/maven-scm/pull/72 this PR is a fix for SCM-885 which keeps the git exe implementation backard compatible but thus introduces a new command parameter: START_FROM_ROOT the PR also adds several TCK tests and provides corrections of existing faulty behaviors of the jgit implementation This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16474197#comment-16474197 ] Matthieu Brouillard commented on SCM-885: - Another finding I have just made is that jgit implementation behaves as the PR does (for the exe implementation), ie without startVersion it walks to the root commits. So now where is the truth? Do we consider the exe implementation as the truth and say that the jgit one is buggy and thus provide a fix that will make the jgit impl to behave like the git one introducing by that a "regression" or do we consider the opposite exactly as the PR provides? If you look at the patch attached and run it against master, then you will see that the jgit impl passes the tck test whereas the git one does not. So the question is now where to put the regression, in git impl or in jgit impl? > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > Attachments: scm-885-different-behavior-exe-jgit-patch.diff > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16473869#comment-16473869 ] Matthieu Brouillard commented on SCM-885: - [~michael-o] I checked on HG documentation ([https://www.selenic.com/mercurial/hg.1.html#revsets)] and it behaves like I would have expected ie if you do not have a start revision then it means from the initial commit. The git defaul behavior looks strange especially when it is the start revision that is missing. > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16473622#comment-16473622 ] Matthieu Brouillard commented on SCM-885: - I'll try to propose something else, perhaps a specific ScmVersion implementation or constant. > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16473597#comment-16473597 ] Michael Osipov commented on SCM-885: Do you think you could modify the PR to satisfiy the first three cases of [this spec|https://git-scm.com/docs/gitrevisions#_revision_range_summary]? > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16473232#comment-16473232 ] Matthieu Brouillard commented on SCM-885: - With the patch it is clear that calling GitChangeLogCommand#createCommandLine() with a null startVersion will not result anymore in issuing the git log command `..EndVersion` and thus will not result anymore in being interpreted by `HEAD..EndVersion`. But still, the ones who will want to retrieve the log between HEAD and EndVersion will be able to do so by explicitly use "HEAD" as the start version. Additionaly the ones, like me, expecting to be able to query the log between the initial commit (unknown/null startVersion) of a repository and a given commit (even HEAD) can do it. Instead of changing the interpretation like the patch does perhaps that you prefer a new API to allow to query from the origin(first commit). This way the enhancement will be backward compatible (even if non intuitive IMHO). The use case for me is that we have a maven-plugin (that delegates to maven-scm API) to compute between two calls what has changed in term of commits on a project. But the first time we query the log we have no initial commit (thus starVersion null) and we want the log between the inital commit and HEAD. > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > Fix For: waiting-for-feedback > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16464228#comment-16464228 ] Michael Osipov commented on SCM-885: You probably misunderstood me. Your patch would take away the ability do do {{..END}}. > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16464059#comment-16464059 ] Matthieu Brouillard commented on SCM-885: - I have no problem with the fact that `git log` interprets `..VERSION` as `HEAD..VERSION`, my issue is that I want, using the API, to express `FIRST_COMMIT_OF_REPO..VERSION` ie provide a endVersion but no startVersion. If a user wants to express `HEAD..VERSION` he has the ability to do so by explicitly providing a startVersion of HEAD. With my change you can then express both `FIRST_COMMIT_OF_REPO..VERSION` and `HEAD..VERSION`. > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16464007#comment-16464007 ] Michael Osipov commented on SCM-885: It is not per sé wrong: bq. You can also leave off one side of the syntax to have Git assume HEAD. For example, you can get the same results as in the previous example by typing git log origin/master.. — Git substitutes HEAD if one side is missing. So this will be wrong? Does it make sense to call {{...END}} at all? > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Assignee: Michael Osipov >Priority: Major > Fix For: 1.9.6 > > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (SCM-885) GitChangeLogCommand is wrong when only endVersion is set
[ https://issues.apache.org/jira/browse/SCM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16462306#comment-16462306 ] ASF GitHub Bot commented on SCM-885: McFoggy opened a new pull request #70: [SCM-885] allow to use only endVersion in GitChangeLogCommand URL: https://github.com/apache/maven-scm/pull/70 On a GitChangeLogCommand setting only endVersion allows to retrieve commits from project start until the commit corresponding to endVersion. fixes #SCM-885 Signed-off-by: Matthieu BrouillardThis is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > GitChangeLogCommand is wrong when only endVersion is set > > > Key: SCM-885 > URL: https://issues.apache.org/jira/browse/SCM-885 > Project: Maven SCM > Issue Type: Bug > Components: maven-scm-provider-gitexe >Affects Versions: 1.9.5 >Reporter: Matthieu Brouillard >Priority: Major > > Invoking execution of a GitChangeLogCommand where only the end revision has > been set produces a wrong out. > +Actual result:+ > {{git whatchanged --date=iso ..END_REVISION_SHA1 -- PROJECT_PATH}} > +Expected result:+ only the end revison SHA1 is used without the two dots > {{git whatchanged --date=iso END_REVISION_SHA1 -- PROJECT_PATH}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)