Skip to content

Releases: mhagger/cvs2svn

Version 2.5.0 (originally released 26 November 2017)

12 Nov 05:57
Compare
Choose a tag to compare

Bugs fixed:

  • Handle non-ASCII, non-UTF8 filenames in .cvsignore files.
  • ExternalBlobGenerator: Don't fail if no revisions are needed for a file.
  • Fix the handling of symbol-matching regexps that include |.
  • Handle excluded paths under Attic directories, too.
  • cvs2git: fix logging in process_post_commit().
  • Prefer to break internal cycles at the largest timestamp gaps.
  • Don't try to delete a supposed "revision 1.1" if it has a predecessor.

Improvements and output changes:

  • Various small documentation fixes and improvements.
  • Make cvs2xxx runnable under PyPy.
  • Avoid some allusions to Subversion when converting to another VCS.
  • Use tempfile.mkdtemp() to choose the location for temporary files.
  • Write all progress information to stderr rather than stdout.
  • Write cvs2git and cvs2bzr output to stdout by default.
  • Improve build reproducibility by respecting $SOURCE_DATE_EPOCH.
  • cvs2git: don't add so much useless metadata to symbol commits.
  • cvs2git: allow a file to be set executable in Git via svn:executable.

Miscellaneous:

  • Use co --version rather than the deprecated co -V.

Version 2.4.0 (originally released 22 September 2012)

12 Nov 05:56
Compare
Choose a tag to compare

New features:

  • Store CVS file descriptions in a Subversion property cvs:description.
  • SVN: Optionally include empty directories from the CVS repository.
  • Much faster cvs2git conversions possible via --use-external-blob-generator.
  • Use file properties for more flexibility over keyword and EOL handling.
  • Add a ConditionalPropertySetter.
  • Allow CVS repository paths to be excluded from the conversion.
  • Normalize EOLs in CVS log messages to LF.
  • Ignore vendor branch declarations that refer to non-existent branches.

Bugs fixed:

  • Issue #31: cvs2svn does not convert empty directories.
  • Issue #127: Dead "file X added on branch Y" revisions not always dropped.
  • Fix --dry-run for cvs2git and cvs2bzr.

Improvements and output changes:

  • More aggressively omit unnecessary dead revisions.
  • Consider it a failure if cvs or co writes something to stderr.
  • Add concept of "file properties", which are only computed once per file.
  • Refuse to accept a default branch that is not a top-level branch.
  • Make check of illegal filename characters dependent on the target VCS.
  • Improve error reporting for invalid date strings in CVS.
  • Many documentation improvements.
  • Allow grafting a branch onto a parent that has itself been grafted.
  • Slightly improve choice of parent branch for vendor branches.
  • Only import "database" if used, to avoid error if no DB module installed.
  • Ignore newphrases in RCS files more robustly.
  • Fix the expansion of the $Source$ keyword for Attic files.
  • Various other minor improvements and fixes.

Miscellaneous:

  • Sort large files using Python to avoid dependency on GNU sort.