[ 
https://issues.apache.org/jira/browse/SCM-679?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17964880#comment-17964880
 ] 

Olivier Lamy commented on SCM-679:
----------------------------------

This project has moved from Jira to GitHub Issues. This issue was migrated to 
[apache/maven-scm#886|https://github.com/apache/maven-scm/issues/886]. 

> enhance scm api to support limited number of returned changesets by changelog 
> command
> -------------------------------------------------------------------------------------
>
>                 Key: SCM-679
>                 URL: https://issues.apache.org/jira/browse/SCM-679
>             Project: Maven SCM (Moved to GitHub Issues)
>          Issue Type: New Feature
>          Components: maven-scm-api, maven-scm-provider-bazaar, 
> maven-scm-provider-gitexe, maven-scm-provider-mercurial (hg), 
> maven-scm-provider-svn
>    Affects Versions: 1.7, 1.8
>            Reporter: Petr Kozelka
>            Assignee: Olivier Lamy
>            Priority: Major
>             Fix For: 1.8
>
>         Attachments: scm-changelog-limit-wrapped.patch, 
> scm-changelog-limit.patch
>
>
> The current api returns changesets between specified/unspecified 
> dates/revisions.
> This leaves some important usecases unsupported; some of them are:
> - get last changeset on given repository/path
> - get last n changesets there ("first page" when browsing changes)
> The only workarround currently possible is, list all commits and filter them 
> - but this is very time consuming.
> For this reason, I propose attached enhancement which overloads the changeLog 
> method, adding the limit parameter:
> {code}
>     ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet 
> fileSet, Date startDate, Date endDate,
>                                   int numDays, ScmBranch branch, String 
> datePattern, Integer limit )
>         throws ScmException;
> {code}
> For the "last changeset" usecase, the client sets limit = 1.
> For "paged browsing", it can specify null startDate/endDate on firstPage, and 
> then work with dates for next/previous pages, still using the limit to 
> specify page size.
> Note that the limit parameter can be null (as it is "Integer", not "int") to 
> specify unlimited number of returned changesets.
> The suggested patch includes deprecations of enhanced methods, I hope this is 
> a good way to reduce the number of actively used overloaded variants of 
> "changelog" in future.



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

Reply via email to