apache / apache/maven-changelog-plugin

[MCHANGELOG-80] support selecting of changes by revision-range for subversion

Open
#124 3 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Java
Stars
33
Forks
13
Avg merge
5h 14m
Merged PRs (30d)
2

Description

**[Simon Kitching](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=skitching)** opened **[MCHANGELOG-80](https://issues.apache.org/jira/browse/MCHANGELOG-80?redirect=false)** and commented

Currently, only selecting by-date is supported for Subversion. However subversion has a problem with date-selection in some cases.

In particular, when CVS projects are imported into subversion, and the original commit date info is preserved during import, then all subversion select-by-date operations are broken for the repository. This is a known issue with subversion, and not likely to be fixed in the near future. The basic issue is that subversion maps a date to a revision-number by doing a binary-search across all its revisions, and assumes that the commit-date for revision N is before the commit-date for revision N+M. This is not true when external repos (CVS or other) are imported into subversion with original commit dates preserved.

One example of a repository where this is a problem is **svn.apache.org**; all select-by-date is completely broken for the apache repo; always has been and will be until (if) a subversion release is made that has an additional "committed on" attribute for each commit, and changes made to svn to use an index on this property rather than its existing binary-search.

It would therefore be **very** nice to be able to specify a subversion revision range, eg "from r100000 to HEAD" as the input to the report.

---

**Attachments:**
- [changelog_svn_revision.patch](https://issues.apache.org/jira/secure/attachment/12714467/changelog_svn_revision.patch) (_10.47 kB_)

1 votes, 2 watchers

Contributor guide

No contributing guide indexed for this repository

Research direction

Review the attached changelog_svn_revision.patch first to understand the proposed revision-range behavior. Trace the existing Subversion date-selection path, then verify that a report can select changes from a range such as r100000 to HEAD without losing the current date-selection behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
build-system
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.