=== Release 0.5, December 1997

This was an informal release to Perforce, so James could see what it
was like.


=== Release 1.0, January 30, 1998

- Contains several bug fixes you really want if you intend to use this
  for real.

- Verified the results of a complete conversion of the NetApp Data ONTAP
  source base, by converting then doing file-by file comparisons of
  the results of checking trees out from both CVS and Perforce, across
  several branches.

- Added minimal user documentation in the README file.

- Added a minimal automated test script.

- Placed under the Artistic license.


=== Release 1.0.1, February 3, 1998

- Incorporate James Strickland's README edits

- make bin/* kxtext

- bin/* script now find perl via PATH (it must be perl5 or they
  will fail).

- MANIFEST doesn't try to check checksums on FreeBSD systems.

- Added $CO to the test/config template file for specifying where to
  find the RCS "co" command

- CHECKPOINT_INTERVAL defaults to "10" for running the test config,
  but "0" otherwise in the test/config template.


=== Release 1.0.2, February 9, 1998

- Incorporate README typos fixes from James Strickland

- tests/* executables find Perl via $PATH

- Remove dup entry for test/changes.good from MANIFEST

- Remove "." from $check_submits in bin/dochanges (the "." was there for
  debugging, and, in effect, disables all output error checks on submits!

=== Release 1.1, March 10, 1998

- Change conversion client name from "dochanges" to "cvs2p4"

- The CVS trunk is now created as "main" in the Perforce depot.

- Converts "$Header: //guest/rick_richardson/perforce/utils/cvs2p4/NEWS#1 $" to "$Id: //guest/rick_richardson/perforce/utils/cvs2p4/NEWS#1 $" for text files.

- Added support for "vendor" branches (RCS branch 1.1.1); becomes branch
  "import" in Perforce.

- Added SYM_SPECIAL support for selectively importing top level subdirs
  of a CVS module via symlinks.

- Optimizations for genchanges, which help *lots( with huge checkins
  of vendor-supplied branches (I.e., where there are many changes with
  large numbers of files).

- Fixed a bug in genchanges such that, for purposes of change grouping,
  all revisions were considered to have happened in the midnight hour
  (plus the actual number of minutes after the hour at which they actually
  occurred). Taken with the other grouping hueristics, this was pretty
  benign, I think, but it's fixed now.

- Fixed a bug wherein checkppoints were always trying to checkpoint the
  server at port 1666 on the host running the server.

- Also, *only* do checkpoints at NetApp, 'cause they depend p4d_admin!

- Take a checkpoint at the very end

- Now detects binary files in additional ways:
    perl -B operator
    known list of binary file extensions (hardcoded into dochanges for now)
  (This helps where binaries were checked in to CVS but nobody told CVS
  by selecting a binary keyword expansion mode).

- The diffs in the test stuff in 1.0.1 and 1.0.2 was inadvertantly disabled,
  so you could get false PASSes. Oops. Fixed.
  
=== Release 1.1.1, March 10, 1998

- Damn. The fix for multi-binary detection was not complete. It is now.
  Really. At least it had better be, I'm about to convert 25K p4 changes
  worth of our real source with this sucker...

=== Release 1.2

- Implement "dochanges -s <n>" to make the converter restartable. Yeah.
  
- Added a couple of test cases for branch tags sharing tip & trunk revs.

- Reimplement revmap to do per-revision stuff, to allow for merging.

- Fix ALLTHEWAYBACK to look for the earliest non-trunk revision actually
  selected by any branch tag - not just the earliest one where a real
  branch was found.

* This was the version used during our actual main CVS -> Perforce
  conversion on 3/20-3/21 1998.

=== Release 1.2.1

- Fix bug reported by Ed Rapoport, wherein:

    "There was a problem, however, in the case of cvs files where
    there were at least two branches with the second branch branching
    off the first, but not yet having a delta created in the cvs file
    (an "incipient" branch) The incipient branch name (br_orca_autocal
    in the example) got applied to its parent branch (br_orca_intermed
    in the example) and the parent branch name got applied to the
    child incipient branch in perforce."

=== Release 1.2.2

- Fix spurious error reports from the final diff (p4_describe vs
  p4_describe.good) when running the test cases with r98.2.  (This was
  caused by an apparent change, in which the diffs produced by the
  r97.3 "p4 describe" include Id keyword expansions, but the r98.2
  "p4 describe" does not).

=== Release 1.2.3

- Only attempt checkpointing if $CHECKPOINT_INTERVAL > 0. (So I can really
  turn it off in the config file!)

- Fix bug reported by Todd LaWall <toddl@SiTera.com>, wherein:

    a branched file, that has not been changed since the branch was
    made, is dropped from the branch, if $BRANCH_FLASH is not defined
    in the cvs2p4 config file. (bug in genmetadata).

=== Release 1.2.4

- In some circumstances, "p4 files" can return a different error message
  for "p4 files foo", when "foo" doesn't already exist in the depot.
  This change allows "dochanges" to work properly when this happens.
  (The precise circumstances in which the alternate message is returned
  are not yet well characterized).
   
=== Release 1.2.5 January 3, 2000.

- This adds adjustments for making cvs2p4 cope correctly with post-1999
  revisions in the RCS archives being converted, as supplied by David Simon
  of Goldman Sachs. (Thanks).


=== Release 1.2.6, January 18, 2000.

- The conversion scripts should now be able to cope with shell metacharacters
  (notable, ' ' and '$') in file names. This has not been thouroughly tested,
  so if you do have such files, please pay particualr scrutiny to them.


=== Release 1.2.7, April 5, 2000.

- A fix for a bug that caused genmetadata to croak when it
  encountered an RCS file with the default branch set, a la
  "rcs -b1 file,v"

=== Release 1.2.8, May 11, 2000.

- Handles cr/lf line endings in RCS archives.

=== Release 1.2.9, May 16, 2000.

- Allow "." in "id" symbols in RCS files. (Author names like "ralph.spoilsport")

=== Release 1.2.10, August 24, 2000.

- Tolerate "empty" RCS ,v files that can (reportedly) be created due to
  certain failing cvs operations. (These files will be ignored;
  previously, they would cause a fatal error in genmetadata).

=== Release 1.2.11, August 30, 2000.

- Skip (and note) ,v files with nonprintable characters in the fileame.

=== Release 1.2.12, September 11, 2000.

- Includes a bugfix, supplied by Thomas Quinot <quinot@inf.enst.fr>,
  to correctly handle the fact that RCS timestamps in repository files
  are in UTC; this was causing the timestamps to be off (by the
  difference between UTC and the Perforce server's local time) in
  converted depots, and, in some cases, cause outright
  failures. (I.e., when the UTC time had never existed in local time,
  due to daylight savings transitions.)

=== Release 1.2.13, September 12, 2000.

- Fixes a bug (resulting in bad date translations) introduced in the
  bugfix in 1.2.12. (Fix supplied by Thomas Quinot).

=== Release 1.2.14, November 20, 2000.

- Now performs metadata sort using a sort routine coded directly in perl,
  rather than by using the host system's "sort" command. (Differences
  in "sort" behavior from one host to another had been observed to
  cause irregularities).

=== Release 1.2.15, December 12, 2000.

- Now rejects filenames with illegal Perforce characters.
  (Fix supplied by Doug Quist).

--------------------------------------
$Id: //guest/rick_richardson/perforce/utils/cvs2p4/NEWS#1 $