New features of SCCS-5.03: The upcoming SCCS-6.0 will introduce a new SCCS history file format that intentionally causes historic SCCS implementations to abort (to prevent file corruption) but that can be easily converted back into a SCCS-5.x compliant history file using a conversion program. This conversion will not cause a loss of information as the new information will be encoded as special comment that is accepted by all other SCCS implementations except for currently GNU "CSSC". See the file TODO_V6 for more information. Please join the discussion mainling list for the development of enhancements on: http://lists.berlios.de/mailman/listinfo/sccs-devel sccs-devel@lists.berlios.de New features included with SCCS-5.03: The environment variable "SCCS_VERSION" has been removed in favor of a new option -V6 to admin(1). As the SCCS v6 file format is not yet fully defined and we don't like to create files by accident that are not understood by older versions, you need to create a new SCCS hhistory file with "admin -V6 ...." or you may manually edit old SCCS history files and replace "^Ah" by "^AhV6,sum=". The next release of SCCS will include a new command to convert SCCS history files from v4 to v6 and vice versa. SCCS v6 features are not permitted to be added in case the SCCS history file is in SCCS v4 form. - This version of SCCS introduces the first real step towards the SCCS v6 history file format. A new magic has been introduced in order to distinguish SCCS v4 history files from SCCS v6 history files. A SCCS v6 history file has a first line in the form "^AhV6,sum=ddddd" where ddddd is a checksum of the file starting at line 2. A SCCS v6 history file always uses 4-digit year numbers and always includes a timezone offset. This fixes the only real design problem in the SCCS history file format from February 1977. Later SCCS versions will introduce release specific additional checksums and further metadata that is needed in order to enhance SCCS to a project oriented system that supports changesets, file renames and similar. Even though more metadata has been added, the performance of this release has been enhanced by another 20% compared to SCCS-5.02. - The sccsfile man page now includes some definitions for the SCCS v6 history file format. - The "sccslog" includes a new option -x to tell it not to ignore special delta comments that contains SCCS v6 extensions that have been wrapped as SCCS v4 comments in order to survive a conversion back to SCCS v4. - README.compile now includes instructions on how to compile using a cross compiler. - conf/mkdep-msc.sh now includes a workaround for a bug in the Microsoft compiler. The MS compiler outputs filenames like: '.\\scg/xxx.h' but '.\\name' is not accepted as filename. - New autoconf tests for the *int*_t types - Several new functions have been added to libschily to relpace functionality that is missing when compiling with MSC. - The performance of the mkgmtime() function in libschily has been enhanced This affects reading SCCS delta tables - libschily::fgetline() now calls fgets() in case that getc() is not a macro. This speeds up performance. - libschily::fgetstr() now calls fgets() in case that getc() is not a macro. This speeds up performance. - The SCCS getline() library function no longer copies the line. This results in a 20% performance improvement on SCCS. - SCCS getline()/putline() now use a more efficient way to compute the checksum. - SCCS satoi() has been rewritten to be fast even with a compiler that offers a bad optimizer. - the diff(1) source now again mentions Harold Stone as author of the "best match" resync algorithm. This comment has been removed by AT&T for SVr4 - All performance improvements since we started SCCS maintenance now sum up to a typical wall clock performance that is 2-3x better than our predecessor "Sun SCCS". This version of SCCS typically needs only 28% of the CPU time of Sun SCCS. This version of SCCS is now typically 5x faster than RCS. SCCS now has been tested to compile and work on the following platforms: - SunOS-4.x - SunOS-5.x (Solaris 2.x, 7, 8, 9, 10, 11) - FreeBSD - HP-UX - Linux - Mac OS X - AIX - IRIX - VMS - Cygwin The portability now reached a state that should allow SCCS to compile and run on other platforms too. SCCS compiles and has been verified on all major platforms.