Subject: CVS commit: pkgsrc/devel/cvs
To: None <pkgsrc-changes@NetBSD.org>
From: Thomas Klausner <wiz@netbsd.org>
List: pkgsrc-changes
Date: 12/12/2003 22:05:56
Module Name:	pkgsrc
Committed By:	wiz
Date:		Fri Dec 12 22:05:56 UTC 2003

Modified Files:
	pkgsrc/devel/cvs: Makefile distinfo
	pkgsrc/devel/cvs/patches: patch-aa patch-ab patch-ac patch-ae patch-af
	    patch-ah patch-al patch-am patch-an patch-ao patch-ap patch-aq
	    patch-ar patch-at patch-au patch-av patch-az

Log Message:
Update to 1.11.10:

Changes since 1.11.9:
*********************

SERVER SECURITY ISSUES

* Malformed module requests could cause the CVS server to attempt to create
  directories and possibly files at the root of the filesystem holding the CVS
  repository.  Filesystem permissions usually prevent the creation of these
  misplaced directories, but nevertheless, the CVS server now rejects the
  malformed requests.

GENERAL USER ISSUES

* Case insensitive clients using a case sensitive server can now use a
  `cvs rm -f file; cvs add FILE' command sequence to add a file with the same
  name in a new case.

* CVSROOTs which contain a symlink to a real repository should work.

* The configure script now tests whether it is building CVS on a case
  insensitive file system.  If it is, CVS assumes that all file systems on this
  platform will be case insensitive.  This is useful for getting the case
  insensitivity flag set correctly when compiling on Mac OS X and under Cygwin
  on Windows.  Autodetection can be overridden using the
  --disable-case-sensitivity and --enable-case-sensitivity arguments to
  configure.

* A behavior change in `cvs up -jrev1 -jrev2' for modified files with a base
  revision of rev2 (ie, checked-out version matches rev2 and file has been
  modified).  The operation is no longer ignored and instead is passed to
  diff3.  This will potentially re-apply the diffs between the two revisions to
  a modified local file.  Status messages like from a standard merge have also
  been added when the file would not or does not change due to this merge
  request ("[file] already contains the changes between [revisions]...").

* A bug which could stop `cvs admin -mTAG:message' from recursing has been
  fixed.

* Misc documentation cleanup and fixes.

* Some of the contrib scripts, some of the documentation, and sanity.sh were
  modified to use and recommend more portable commands rather than using and
  recommending commands which were not compatible with the POSIX 1003.1-2001
  specification.

DEVELOPER ISSUES

* A new set of tests to test issues specific to case insensitive clients and
  servers has also been added.

* Support has been added to the test suite to support testing over a :ext: link
  to another machine, subject to some stringent requirements.  This support can
  be used, for instance, to test the operation of a case insensitive client
  against a case sensitive server.  Please see the comments in TEST and the
  src/sanity.sh test script itself for more.

* We've standardized on Automake 1.7.9 to get a bug fix.  See the note below
  on the Autoconf upgrade for more details.

* We've standardized on Autoconf version 2.58 to avoid a bug and get at a few
  new macros.  Again, this should only really affect developers, though it is
  possible that CVS will now compile on a few new platforms.  Please see the
  section of the INSTALL file about using the autotools if you are compiling
  CVS yourself.

Changes from 1.11.8 to 1.11.9:

* CVS now knows how to report, as well as record, `P' record types.

* When running the `cvs history' command, clients will now send the
  long-accepted `-e' option, for all records, rather than explicitly requesting
  `P' record types, a request which servers prior to 1.11.7 will reject with a
  fatal error message.

* A problem with locating files requested by case insensitive clients which was
  accidentally introduced in 1.11.6 as part of a fix for a data loss problem
  involving `cvs add's from case insensitive clients has been fixed.  The
  relevant error message was `cvs [<command> aborted]: filE,v is ambiguous;
  could mean FILE,v or file,v'.

* Attempts to use the global `-l' option, removed from both client and server
  as of version 1.11.6, will now elicit a warning rather than a fatal error
  from the server.

Changes from 1.11.7 to 1.11.8:

* A problem in the CVS getpass library that could cause passwords to echo on
  some systems has been fixed.

Changes from 1.11.6 to 1.11.7:

* A segfault that could occur in very rare cases where the stat of a file
  failed during a diff has been fixed.

* Any user with write privleges to the CVSROOT/checkoutlist file could pass
arbitrary format strings directly through to a printf function.  This was
probably bad and has been fixed.  White space at the beginning of error strings
in checkoutlist is now ignored properly.

* In client/server mode, most messages from CVS now contain the actual
command name rather than the generic "server".

* A long-standing bug that prevented most client/server updates from being
logged in the history file has been fixed.

* Updates done via a patch ("P" status) are now logged in the history file
by default and the corresponding "P" history record type is now documented.
If you're setting the LogHistory option in your CVSROOT/config file, you may
want to add "P" to the list of record types.

* CVS now will always compile and its own getpass() function (originally from
GNULIB) in favor of any system one that may exist.  This avoids some problems
with long passwords on some systems and updates us to POSIX.2 compliance, since
getpass() was removed from the POSIX.2 specification.

* A bug that allowed a write lock to be created in a directory despite
there being existing read locks when using LockDir in CVSROOT/config has
been fixed.

* A bug with short patches (`rdiff -s') which caused rdiff to sometimes report
differences that did not exist has been fixed.

* Some minor corrections were made to the diff code to keep diff & rdiff from
printing diff headers with empty change texts when two files have different
revision numbers but the same content.

* The global '-l' option, which suppressed history logging, has been removed
from both client and server.


To generate a diff of this commit:
cvs rdiff -r1.68 -r1.69 pkgsrc/devel/cvs/Makefile
cvs rdiff -r1.14 -r1.15 pkgsrc/devel/cvs/distinfo
cvs rdiff -r1.7 -r1.8 pkgsrc/devel/cvs/patches/patch-aa \
    pkgsrc/devel/cvs/patches/patch-af pkgsrc/devel/cvs/patches/patch-am \
    pkgsrc/devel/cvs/patches/patch-at
cvs rdiff -r1.8 -r1.9 pkgsrc/devel/cvs/patches/patch-ab \
    pkgsrc/devel/cvs/patches/patch-av
cvs rdiff -r1.6 -r1.7 pkgsrc/devel/cvs/patches/patch-ac
cvs rdiff -r1.5 -r1.6 pkgsrc/devel/cvs/patches/patch-ae \
    pkgsrc/devel/cvs/patches/patch-ah pkgsrc/devel/cvs/patches/patch-al \
    pkgsrc/devel/cvs/patches/patch-ap pkgsrc/devel/cvs/patches/patch-au
cvs rdiff -r1.4 -r1.5 pkgsrc/devel/cvs/patches/patch-an \
    pkgsrc/devel/cvs/patches/patch-ao pkgsrc/devel/cvs/patches/patch-aq \
    pkgsrc/devel/cvs/patches/patch-az
cvs rdiff -r1.9 -r1.10 pkgsrc/devel/cvs/patches/patch-ar

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.