1*43c1707eStholoChanges since 1.11.1: 2*43c1707eStholo 3*43c1707eStholo* Read only access was broken - now fixed. 4*43c1707eStholo 5*43c1707eStholoChanges since 1.11: 6*43c1707eStholo 7*43c1707eStholo* There was a bug in the diff code which caused conflicts to be flagged which shouldn't 8*43c1707eStholohave been. This has been fixed. 9*43c1707eStholo 10*43c1707eStholo* New "cvs rlog" and "cvs rannotate" commands have been added to get log 11*43c1707eStholomessages and annotations without having to have a checked-out copy. 12*43c1707eStholo 13*43c1707eStholo* The VMS client now accepts wildcards if you're running VMS 7.x. 14*43c1707eStholo 15*43c1707eStholo* ZLIB has been updated to version 1.1.3, the most current version. This 16*43c1707eStholoincludes mostly some optimizations and minor bug fixes. 17*43c1707eStholo 18*43c1707eStholo* The ~/.cvspass file has a slightly modified format. CVSROOTs are now 19*43c1707eStholostored in a new canonical form - hostnames are now case insensitive and port 20*43c1707eStholonumbers are always stored in the new format. Until a new login for a 21*43c1707eStholoparticular CVSROOT is performed with the new version of CVS, new and old 22*43c1707eStholoversions of CVS should interoperate invisibly. After that point, an extra login 23*43c1707eStholousing the old version of CVS may be necessary to continue to allow the new and 24*43c1707eStholoold versions of CVS to interoperate using the same ~/.cvspass file and CVSROOT. 25*43c1707eStholoThe exception to this rule occurs when the CVSROOTs used with the different 26*43c1707eStholoversions use case insensitively different hostnames, for example, "empress", 27*43c1707eStholoand "empress.2-wit.com". 28*43c1707eStholo 29*43c1707eStholo* A password and a port number may now be specified in CVSROOT for pserver 30*43c1707eStholoconnections. The new format is: 31*43c1707eStholo 32*43c1707eStholo :pserver:[[user][:password]@]host[:[port]]/path 33*43c1707eStholo 34*43c1707eStholoNote that passwords specified in a checkout command will be saved in the clear 35*43c1707eStholoin the CVS/Root file in each created directory, so this is not recommended, 36*43c1707eStholoexcept perhaps when accessing anonymous repositories or the like. 37*43c1707eStholo 38*43c1707eStholo* The distribution has been converted to use Automake. This shouldn't affect 39*43c1707eStholomost users except to ease some portability concerns, but if you are building 40*43c1707eStholofrom the repository and encounter problems with the makefiles, you might try 41*43c1707eStholorunning ./noautoconf.sh after a fresh update -AC. 42*43c1707eStholo 43c71bc7e2StholoChanges since 1.10: 44c71bc7e2Stholo 45e77048c1Stholo* The new "cvs version" command gives a short version message. If 46e77048c1Stholothe repository is remote, both the client and server versions are 47e77048c1Stholoreported. 48e77048c1Stholo 49e77048c1Stholo* "cvs admin -t" now works correctly in client/server mode. 50e77048c1Stholo 51e77048c1Stholo* The "cvs history" command output format has changed -- the date 52e77048c1Stholonow includes the year and is given is ISO 8601 format (yyyy-mm-dd). 53e77048c1StholoAlso, the new LogHistory option in CVSROOT/config can be used to 54e77048c1Stholocontrol what information gets recorded in the log file and code has 55e77048c1Stholobeen added to record file removals. 56e77048c1Stholo 57e77048c1Stholo* The buggy PreservePermissions code has been disabled. 58e77048c1Stholo 59e77048c1Stholo* Anonymous read-only access can now be done without requiring a 60e77048c1Stholopassword. On the server side, simply give that user (presumably 61e77048c1Stholo`anonymous') an empty password in the CVSROOT/passwd file, and then 62e77048c1Stholoany received password will authenticate successfully. 63e77048c1Stholo 64c71bc7e2Stholo* There is a new access method :fork: which is similar to :local: 65c71bc7e2Stholoexcept that it is implemented via the CVS remote protocol, and thus 66c71bc7e2Stholohas a somewhat different set of quirks and bugs. 67c71bc7e2Stholo 68c71bc7e2Stholo* The -d command line option no longer updates the CVS/Root file. For 69c71bc7e2Stholoone thing, the CVS 1.9/1.10 behavior never had updated CVS/Root in 70c71bc7e2Stholosubdirectories, and for another, it didn't seem that popular in 71c71bc7e2Sthologeneral. So this change restores the CVS 1.8 behavior (which is also 72c71bc7e2Stholothe CVS 1.9/1.10 behavior if the environment variable 73c71bc7e2StholoCVS_IGNORE_REMOTE_ROOT is set; with this change, 74c71bc7e2StholoCVS_IGNORE_REMOTE_ROOT no longer has any effect). 75c71bc7e2Stholo 76c71bc7e2Stholo* It is now possible for a single CVS command to recurse into several 77c71bc7e2StholoCVS roots. This includes roots which are located on several servers, 78c71bc7e2Stholoor which are both remote and local. CVS will make connections to as 79c71bc7e2Stholomany servers as necessary. 80c71bc7e2Stholo 81c71bc7e2Stholo* It is now possible to put the CVS lock files in a directory 82c71bc7e2Stholoset by the new LockDir option in CVSROOT/config. The default 83c71bc7e2Stholocontinues to be to put the lock files in the repository itself. 84c71bc7e2Stholo 85c71bc7e2StholoChanges from 1.9 to 1.10: 86461cc63eStholo 87b2346922Stholo* There is a new feature, enabled by TopLevelAdmin in CVSROOT/config, 88b2346922Stholowhich tells CVS to modify the behavior of the "checkout" command. The 89b2346922Stholocommand now creates a CVS directory at the top level of the new 90b2346922Stholoworking directory, in addition to CVS directories created within 91b2346922Stholochecked-out directories. See the Cederqvist for details. 92b2346922Stholo 93b6f6614eStholo* There is an optional set of features, enabled by PreservePermissions 94b6f6614eStholoin CVSROOT/config, which allow CVS to store unix-specific file 95b6f6614eStholoinformation such as permissions, file ownership, and links. See the 96b6f6614eStholoCederqvist for details. 97b6f6614eStholo 982286d8edStholo* One can now authenticate and encrypt using the GSSAPI network 99b6f6614eStholosecurity interface. For details see the Cederqvist's description of 100b6f6614eStholospecifying :gserver: in CVSROOT, and the -a global option. 1012286d8edStholo 1022286d8edStholo* All access to RCS files is now implemented internally rather than by 1032286d8edStholocalling RCS programs. The main user-visible consequence of this is 1042286d8edStholothat there is no need to worry about making sure that CVS finds the 1052286d8edStholocorrect version of RCS. The -b global option and the RCSBIN setting 1062286d8edStholoin CVSROOT/config are still accepted but don't do anything. The 1072286d8edStholo$RCSBIN internal variable in administrative files is no longer 1082286d8edStholoaccepted. 1092286d8edStholo 1102286d8edStholo* There is a new syntax, "cvs admin -orev1::rev2", which collapses the 1112286d8edStholorevisions between rev1 and rev2 without deleting rev1 or rev2 1122286d8edStholothemselves. 1132286d8edStholo 1142286d8edStholo* There is a new administrative file CVSROOT/config which allows one 1152286d8edStholoto specify miscellaneous aspects of CVS configuration. Currently 1162286d8edStholosupported here: 1172286d8edStholo 1182286d8edStholo - SystemAuth, allows you to prevent pserver from checking for system 1192286d8edStholo usernames/passwords. 1202286d8edStholo 1212286d8edStholoFor more information see the "config" section of cvs.texinfo. 1222286d8edStholo 1232770ece5Stholo* When setting up the pserver server, one now must specify the 1242770ece5Stholoallowable CVSROOT directories in inetd.conf. See the Password 1252770ece5Stholoauthentication server section of cvs.texinfo for details. Note that 1262770ece5Stholothis implies that everyone who is running a pserver server must edit 1272770ece5Stholoinetd.conf when upgrading their CVS. 1282770ece5Stholo 1292770ece5Stholo* The client no longer needs an external patch program (assuming both 1302770ece5Stholothe client and the server have been updated to the new version). 1312770ece5Stholo 132780d15dfStholo* "cvs admin [options]" will now recurse. In previous versions of 133780d15dfStholoCVS, it was an error and one needed to specify "cvs admin [options] ." 134780d15dfStholoto recurse. This change brings admin in line with the other CVS 135780d15dfStholocommands. 136780d15dfStholo 137780d15dfStholo* New "logout" command to remove the password for a remote cvs 138780d15dfStholorepository from the cvspass file. 139780d15dfStholo 140461cc63eStholo* Read-only repository access is implemented for the 141461cc63eStholopassword-authenticated server (other access methods are just governed 142461cc63eStholoby Unix file permissions, since they require login access to the 143461cc63eStholorepository machine anyway). See the "Repository" section of 1442286d8edStholocvs.texinfo for details, including a discussion of security issues. 1452286d8edStholoNote that the requirement that read-only users be able to create locks 1462286d8edStholoand write the history file still applies. 147461cc63eStholo 148461cc63eStholo* There is a new administrative file verifymsg which is like editinfo 149461cc63eStholobut merely validates the message, rather than also getting it from the 150461cc63eStholouser. It therefore works with client/server CVS or if one uses the -m 151461cc63eStholoor -F options to commit. See the verifymsg section of cvs.texinfo for 152461cc63eStholodetails. 153461cc63eStholo 154461cc63eStholo* The %s format formerly accepted in loginfo has been extended to 155461cc63eStholoformats such as %{sVv}, so that loginfo scripts have access to the 156461cc63eStholoversion numbers being changed. See the Loginfo section of cvs.texinfo 157461cc63eStholofor details. 158461cc63eStholo 159461cc63eStholo* The postscript documentation (doc/cvs.ps) shipped with CVS is now 160461cc63eStholoformatted for US letter size instead of A4. This is not because we 161461cc63eStholoconsider this size "better" than A4, but because we believe that the 162461cc63eStholoUS letter version will print better on A4 paper than the other way 163461cc63eStholoaround. 164461cc63eStholo 165461cc63eStholo* The "cvs export" command is now logged in the history file and there 166461cc63eStholois a "cvs history -x E" command to select history file entries 167461cc63eStholoproduced by export. 168461cc63eStholo 169461cc63eStholo* CVS no longer uses the CVS_PASSWORD environment variable. Storing 170461cc63eStholopasswords in cleartext in an environment variable is a security risk, 171461cc63eStholoespecially since (on BSD variants) any user on the system can display 172461cc63eStholoany process's environment using 'ps'. Users should use the 'cvs 173461cc63eStholologin' command instead. 174461cc63eStholo 175461cc63eStholo 176461cc63eStholoChanges from 1.8 to 1.9: 17750bf276cStholo 17850bf276cStholo* Windows NT client should now work on Windows 95 as well. 17950bf276cStholo 18050bf276cStholo* New option "--help-synonyms" prints a list of all recognized command 18150bf276cStholosynonyms. 18250bf276cStholo 18350bf276cStholo* The "log" command is now implemented internally rather than via the 18450bf276cStholoRCS "rlog" program. The main user-visible consequence is that 18550bf276cStholosymbolic branch names now work (for example "cvs log -rbranch1"). 18650bf276cStholoAlso, the date formats accepted by -d have changed. They previously 18750bf276cStholohad been a bewildering variety of poorly-documented date formats. Now 18850bf276cStholothey are the same as the date formats accepted by the -D options to 18950bf276cStholothe other CVS commands, which is also a (different) bewildering 19050bf276cStholovariety of poorly-documented date formats, but at least we are 19150bf276cStholoconsistently bewildering :-). 19250bf276cStholo 19350bf276cStholo* Encryption is now supported over a Kerberos client/server 19450bf276cStholoconnection. The new "-x" global option requests it. You must 19550bf276cStholoconfigure with the --enable-encryption option in order to enable 19650bf276cStholoencryption. 19750bf276cStholo 19850bf276cStholo* The format of the CVS commit message has changed slightly when 19950bf276cStholocommitting changes on a branch. The tag on which the commit is 20050bf276cStholoocurring is now reported correctly in all cases. 20150bf276cStholo 20250bf276cStholo* New flag -k in wrappers allows you to specify the keyword expansion 20350bf276cStholomode for added files based on their name. For example, you can 20450bf276cStholospecify that files whose name matches *.exe are binary by default. 20550bf276cStholoSee the Wrappers section of cvs.texinfo for more details. 20650bf276cStholo 20750bf276cStholo* Remote CVS with the "-z" option now uses the zlib library (included 20850bf276cStholowith CVS) to compress all communication between the client and the 20950bf276cStholoserver, rather than invoking gzip on each file separately. This means 21050bf276cStholothat compression is better and there is no need for an external gzip 21150bf276cStholoprogram (except to interoperate with older version of CVS). 21250bf276cStholo 21350bf276cStholo* The "cvs rlog" command is deprecated and running it will print a 21450bf276cStholowarning; use the synonymous "cvs log" command instead. It is 21550bf276cStholoconfusing for rlog to mean the same as log because some other CVS 21650bf276cStholocommands are in pairs consisting of a plain command which operates on 21750bf276cStholoa working directory and an "r" command which does not (diff/rdiff; 21850bf276cStholotag/rtag). 21950bf276cStholo 22050bf276cStholo* "cvs diff" has a bunch of new options, mostly long options. Most of 22150bf276cStholothese work only if rcsdiff and diff support them, and are named the 22250bf276cStholosame as the corresponding options to diff. 22350bf276cStholo 22450bf276cStholo* The -q and -Q command options to "cvs diff" were removed (use the 22550bf276cSthologlobal options instead). This brings "cvs diff" into line with the 22650bf276cStholorest of the CVS commands. 22750bf276cStholo 22850bf276cStholo* The "annotate" command can now be used to annotate a revision other 22950bf276cStholothan the head revision on the trunk (see the -r, -D, and -f options in 23050bf276cStholothe annotate node of cvs.texinfo for details). 23150bf276cStholo 23250bf276cStholo* The "tag" command has a new option "-c" which checks that all files 23350bf276cStholo are not locally modified before tagging. 23450bf276cStholo 23550bf276cStholo* The -d command line option now overrides the cvsroot setting stored 23650bf276cStholoin the CVS/Root file in each working directory, and specifying -d will 23750bf276cStholocause CVS/Root to be updated. 23850bf276cStholo 23950bf276cStholo* Local (non-client/server) CVS now runs on Windows NT. See 24050bf276cStholowindows-NT/README for details. 24150bf276cStholo 24250bf276cStholo* The CVSROOT variable specification has changed to support more 24350bf276cStholoaccess methods. In addition to "pserver," "server" (internal rsh 24450bf276cStholoclient), "ext" (external rsh client), "kserver" (kerberos), and 24550bf276cStholo"local" (local filesystem access) can now be specified. For more 24650bf276cStholodetails on each method, see cvs.texinfo (there is an index entry for 24750bf276cStholo:local: and each of the other access methods). 24850bf276cStholo 24950bf276cStholo* The "login" command no longer prompts the user for username and 25050bf276cStholohostname, since one will have to provide that information via the `-d' 25150bf276cStholoflag or by setting CVSROOT. 25250bf276cStholo 25350bf276cStholoChanges from 1.7 to 1.8: 25413571821Stholo 255c2c61682Stholo* New "cvs annotate" command to display the last modification for each 256c2c61682Sthololine of a file, with the revision number, user checking in the 257c2c61682Stholomodification, and date of the modification. For more information see 258c2c61682Stholothe `annotate' node in cvs.texinfo. 259c2c61682Stholo 260c2c61682Stholo* The cvsinit shell script has been replaced by a cvs init command. 261c2c61682StholoThe cvs init command creates some example administrative files which 262c2c61682Stholoare similar to the files found in the examples directory (and copied 263c2c61682Stholoby cvsinit) in previous releases. 264c2c61682Stholo 265c2c61682Stholo* Added the patterns *.olb *.exe _$* *$ to default ignore list. 266c2c61682Stholo 267c26070a5Stholo* There is now a $USER internal variable for *info files. 268c26070a5Stholo 269c26070a5Stholo* There is no longer a separate `mkmodules' program; the functionality 270c26070a5Stholois now built into `cvs'. If upgrading an old repository, it is OK to 271c26070a5Sthololeave in the lines in the modules file which run mkmodules (the 272c26070a5Stholomkmodules actions will get done twice, but that is harmless); you will 273c26070a5Stholoprobably want to remove them once you are no longer using the old CVS. 274c26070a5Stholo 275c26070a5Stholo* One can now specify user variables in *info files via the 276c26070a5Stholo${=varname} syntax; there is a -s global option to set them. See the 277c26070a5StholoVariables node in cvs.texinfo for details. 27813571821Stholo 27913571821StholoChanges from 1.6 to 1.7: 28013571821Stholo 28113571821Stholo* The default ignore list has changed slightly: *.obj has been added 28213571821Stholoand CVS* has been changed to CVS CVS.adm. 28313571821Stholo 28413571821Stholo* CVS now supports password authentication when accessing remote 28513571821Stholorepositories; this is useful for sites that can't use rsh (because of 28613571821Stholoa firewall, for example), and also don't have kerberos. See node 28713571821Stholo"Password authenticated" (in "Remote repositories", in 28813571821Stholodoc/cvs.texinfo) for more details. Note: This feature requires both 28913571821Stholothe client and server to be upgraded. 29013571821Stholo 29113571821Stholo* Using the -kb option to specify binary files now works--most cases 29213571821Stholodid not work before. See the "Binary files" section of 29313571821Stholodoc/cvs.texinfo for details. 29413571821Stholo 29513571821Stholo* New developer communication features. See the "Watches" section of 29613571821Stholodoc/cvs.texinfo for details. 29713571821Stholo 29813571821Stholo* RCS keyword "Name" supported for "cvs update -r <tag>" and "cvs 29913571821Stholocheckout -r <tag>". 30013571821Stholo 30113571821Stholo* If there is a group whose name matches a compiled in value which 30213571821Stholodefaults to "cvsadmin", only members of that group can use "cvs 30313571821Stholoadmin". This replaces the CVS_NOADMIN option. 30413571821Stholo 30513571821Stholo* CVS now sets the modes of files in the repository based on the 30613571821StholoCVSUMASK environment variable or a compiled in value defaulting to 30713571821Stholo002. This way other developers will be able to access the files in 30813571821Stholothe repository regardless of the umask of the developer creating them. 30913571821Stholo 31013571821Stholo* The command names in .cvsrc now match the official name of the 31113571821Stholocommand, not the one (possibly an alias) by which it was invoked. If 31213571821Stholoyou had previously relied on "cvs di" and "cvs diff" using different 31313571821Stholooptions, instead use a shell function or alias (for example "alias 31413571821Stholocvsdi='cvs diff -u'"). You also can specify global CVS options (like 31513571821Stholo"-z") using the command name "cvs". 31613571821Stholo 3171e72d8d2SderaadtChanges from 1.5 to 1.6: 3181e72d8d2Sderaadt 3191e72d8d2Sderaadt* Del updated the man page to include all of the new features 3201e72d8d2Sderaadtof CVS 1.6. 3211e72d8d2Sderaadt 3221e72d8d2Sderaadt* "cvs tag" now supports a "-r | -D" option for tagging an already 3231e72d8d2Sderaadttagged revision / specific revision of a file. 3241e72d8d2Sderaadt 3251e72d8d2Sderaadt* There is a "taginfo" file in CVSROOT that supports filtering and 3261e72d8d2Sderaadtrecording of tag operations. 3271e72d8d2Sderaadt 3281e72d8d2Sderaadt* Long options support added, including --help and --version options. 3291e72d8d2Sderaadt 3301e72d8d2Sderaadt* "cvs release" no longer cares whether or not the directory being 3311e72d8d2Sderaadtreleased has an entry in the `modules' file. 3321e72d8d2Sderaadt 3331e72d8d2Sderaadt* The modules file now takes a -e option which is used instead of -o 3341e72d8d2Sderaadtfor "cvs export". If your modules file has a -o option which you want 3351e72d8d2Sderaadtto be used for "cvs export", change it to specify -e as well as -o. 3361e72d8d2Sderaadt 3371e72d8d2Sderaadt* "cvs export" now takes a -k option to set RCS keyword expansion. 3381e72d8d2SderaadtThis way you can export binary files. If you want the old behavior, 3391e72d8d2Sderaadtyou need to specify -kv. 3401e72d8d2Sderaadt 3411e72d8d2Sderaadt* "cvs update", "cvs rdiff", "cvs checkout", "cvs import", "cvs 3421e72d8d2Sderaadtrelease", "cvs rtag", and "cvs tag" used to take -q and -Q options 3431e72d8d2Sderaadtafter the command name (e.g. "cvs update -q"). This was confusing 3441e72d8d2Sderaadtbecause other commands, such as "cvs ci", did not. So the options 3451e72d8d2Sderaadtafter the command name have been removed and you must now specify, for 3461e72d8d2Sderaadtexample, "cvs -q update", which has been supported since CVS 1.3. 3471e72d8d2Sderaadt 3481e72d8d2Sderaadt* New "wrappers" feature. This allows you to set a hook which 3491e72d8d2Sderaadttransforms files on their way in and out of cvs (apparently on the 3501e72d8d2SderaadtNeXT there is some particular usefulness in tarring things up in the 3511e72d8d2Sderaadtrepository). It also allows you to declare files as merge-by-copy 3521e72d8d2Sderaadtwhich means that instead of trying to merge the file, CVS will merely 3531e72d8d2Sderaadtcopy the new version. There is a CVSROOT/cvswrappers file and an 3541e72d8d2Sderaadtoptionsl ~/.cvswrappers file to support this feature. 3551e72d8d2Sderaadt 3561e72d8d2Sderaadt* You can set CVSROOT to user@host:dir, not just host:dir, if your 3571e72d8d2Sderaadtusername on the server host is different than on the client host. 3581e72d8d2Sderaadt 3591e72d8d2Sderaadt* VISUAL is accepted as well as EDITOR. 3601e72d8d2Sderaadt 3611e72d8d2Sderaadt* $CVSROOT is expanded in *info files. 3621e72d8d2Sderaadt 3631e72d8d2SderaadtChanges from 1.4A2 to 1.5: 3641e72d8d2Sderaadt 3651e72d8d2Sderaadt* Remote implementation. This is very helpful when collaborating on a 3661e72d8d2Sderaadtproject with someone across a wide-area network. This release can 3671e72d8d2Sderaadtalso be used locally, like other CVS versions, if you have no need for 3681e72d8d2Sderaadtremote access. 3691e72d8d2Sderaadt 3701e72d8d2SderaadtHere are some of the features of the remote implementation: 3711e72d8d2Sderaadt- It uses reliable transport protocols (TCP/IP) for remote repository 3721e72d8d2Sderaadt access, not NFS. NFS is unusable over long distances (and sometimes 3731e72d8d2Sderaadt over short distances) 3741e72d8d2Sderaadt- It transfers only those files that have changed in the repository or 3751e72d8d2Sderaadt the working directory. To save transmission time, it will transfer 3761e72d8d2Sderaadt patches when appropriate, and can compress data for transmission. 3771e72d8d2Sderaadt- The server never holds CVS locks while waiting for a reply from the client; 3781e72d8d2Sderaadt this makes the system robust when used over flaky networks. 3791e72d8d2Sderaadt 3801e72d8d2SderaadtThe remote features are documented in doc/cvsclient.texi in the CVS 3811e72d8d2Sderaadtdistribution, but the main doc file, cvs.texinfo, has not yet been 3821e72d8d2Sderaadtupdated to include the remote features. 3831e72d8d2Sderaadt 3841e72d8d2Sderaadt* Death support. See src/README-rm-add for more information on this. 3851e72d8d2Sderaadt 3861e72d8d2Sderaadt* Many speedups, especially from jtc@cygnus.com. 3871e72d8d2Sderaadt 3881e72d8d2Sderaadt* CVS 1.2 compatibility code has been removed as a speedup. If you 3891e72d8d2Sderaadthave working directories checked out by CVS 1.2, CVS 1.3 or 1.4A2 will 3901e72d8d2Sderaadttry to convert them, but CVS 1.5 and later will not (if the working 3911e72d8d2Sderaadtdirectory is up to date and contains no extraneous files, you can just 3921e72d8d2Sderaadtremove it, and then check out a new working directory). Likewise if 3931e72d8d2Sderaadtyour repository contains a CVSROOT.adm directory instead of a CVSROOT 3941e72d8d2Sderaadtdirectory, you need to rename it. 3951e72d8d2Sderaadt 3961e72d8d2SderaadtFri Oct 21 20:58:54 1994 Brian Berliner <berliner@sun.com> 3971e72d8d2Sderaadt 3981e72d8d2Sderaadt * Changes between CVS 1.3 and CVS 1.4 Alpha-2 3991e72d8d2Sderaadt 4001e72d8d2Sderaadt * A new program, "cvsbug", is provided to let you send bug reports 4011e72d8d2Sderaadt directly to the CVS maintainers. Please use it instead of sending 4021e72d8d2Sderaadt mail to the info-cvs mailing list. If your build fails, you may 4031e72d8d2Sderaadt have to invoke "cvsbug" directly from the "src" directory as 4041e72d8d2Sderaadt "src/cvsbug.sh". 4051e72d8d2Sderaadt 4061e72d8d2Sderaadt * A new User's Guide and Tutorial, written by Per Cederqvist 4071e72d8d2Sderaadt <ceder@signum.se> of Signum Support. See the "doc" directory. A 4081e72d8d2Sderaadt PostScript version is included as "doc/cvs.ps". 4091e72d8d2Sderaadt 4101e72d8d2Sderaadt * The Frequesntly Asked Questions file, FAQ, has been added to the 4111e72d8d2Sderaadt release. Unfortunately, its contents are likely out-of-date. 4121e72d8d2Sderaadt 4131e72d8d2Sderaadt * The "cvsinit" shell script is now installed in the $prefix/bin 4141e72d8d2Sderaadt directory like the other programs. You can now create new 4151e72d8d2Sderaadt CVS repositories with great ease. 4161e72d8d2Sderaadt 4171e72d8d2Sderaadt * Index: lines are now printed on output from 'diff' and 'rdiff', 4181e72d8d2Sderaadt in order to facilitate application of patches to multiple subdirs. 4191e72d8d2Sderaadt 4201e72d8d2Sderaadt * Support for a ~/.cvsrc file, which allows you to specify options 4211e72d8d2Sderaadt that are always supposed to be given to a specific command. This 4221e72d8d2Sderaadt feature shows the non-orthogonality of the option set, since while 4231e72d8d2Sderaadt there may be an option to turn something on, the option to turn 4241e72d8d2Sderaadt that same thing off may not exist. 4251e72d8d2Sderaadt 4261e72d8d2Sderaadt * You can now list subdirectories that you wish to ignore in a 4271e72d8d2Sderaadt modules listing, such as: 4281e72d8d2Sderaadt 4291e72d8d2Sderaadt gcc -a gnu/gcc, !gnu/gcc/testsuites 4301e72d8d2Sderaadt 4311e72d8d2Sderaadt which will check out everything underneath gnu/gcc, except 4321e72d8d2Sderaadt everything underneath gnu/gcc/testsuites. 4331e72d8d2Sderaadt 4341e72d8d2Sderaadt * It is now much harder to accidentally overwrite an existing tag 4351e72d8d2Sderaadt name, since attempting to move a tag name will result in a error, 4361e72d8d2Sderaadt unless the -F (force) flag is given to the tag subcommands. 4371e72d8d2Sderaadt 4381e72d8d2Sderaadt * Better error checking on matching of the repository used to 4391e72d8d2Sderaadt check code out from against the repository the current cvs 4401e72d8d2Sderaadt commnands would use. (Thanks to Mark Baushke <mdb@cisco.com>) 4411e72d8d2Sderaadt 4421e72d8d2Sderaadt * Better support for sites with multiple CVSROOT repositories has 4431e72d8d2Sderaadt been contributed. The file "CVS/Root" in your working directory 4441e72d8d2Sderaadt is created to hold the full path to the CVS repository and a 4451e72d8d2Sderaadt simple check is made against your current CVSROOT setting. 4461e72d8d2Sderaadt 4471e72d8d2Sderaadt * You can now specify an RCS keyword substitution value when you 4481e72d8d2Sderaadt import files into the repository. 4491e72d8d2Sderaadt 4501e72d8d2Sderaadt * Uses a much newer version of Autoconf, and conforms to the GNU 4511e72d8d2Sderaadt coding standards much more closely. No, it still doesn't have 4521e72d8d2Sderaadt long option names. 4531e72d8d2Sderaadt 4541e72d8d2Sderaadt * Code cleanup. Many passes through gcc -Wall helped to identify 4551e72d8d2Sderaadt a number of questionable constructs. Most arbitrary length limits 4561e72d8d2Sderaadt were removed. 4571e72d8d2Sderaadt 4581e72d8d2Sderaadt * Profiling to determine bottlenecks helped to identify the best 4591e72d8d2Sderaadt places to spend time speeding up the code, which was then done. A 4601e72d8d2Sderaadt number of performance enhancements in filename matching have sped 4611e72d8d2Sderaadt up checkouts. 4621e72d8d2Sderaadt 4631e72d8d2Sderaadt * Many more contributions have been added to the "contrib" 4641e72d8d2Sderaadt directory. See the README file in that directory for more 4651e72d8d2Sderaadt information. 4661e72d8d2Sderaadt 4671e72d8d2Sderaadt * "cvs commit" will try harder to not change the file's 4681e72d8d2Sderaadt modification time after the commit. If the file does not change 4691e72d8d2Sderaadt as a result of the commit operation, CVS will preserve the 4701e72d8d2Sderaadt original modification time, thus speeding up future make-type 4711e72d8d2Sderaadt builds. 4721e72d8d2Sderaadt 4731e72d8d2Sderaadt * "cvs commit" now includes any removed files in the (optional) 4741e72d8d2Sderaadt pre-commit checking program that may be invoked. Previously, only 4751e72d8d2Sderaadt added and modified files were included. 4761e72d8d2Sderaadt 4771e72d8d2Sderaadt * It is now possible to commit a file directly onto the trunk at a 4781e72d8d2Sderaadt specific revision level by doing "cvs commit -r3.0 file.c", where 4791e72d8d2Sderaadt "3.0" specifies the revision you wish to create. The file must be 4801e72d8d2Sderaadt up-to-date with the current head of the trunk for this to succeed. 4811e72d8d2Sderaadt 4821e72d8d2Sderaadt * "cvs commit" will now function with a pre-commit program that 4831e72d8d2Sderaadt has arguments specified in the "commitinfo" file. 4841e72d8d2Sderaadt 4851e72d8d2Sderaadt * The "mkmodules" program will now look within the 4861e72d8d2Sderaadt $CVSROOT/CVSROOT/checkoutlist" file for any additional files that 4871e72d8d2Sderaadt should be automatically checked out within CVSROOT; mkmodules also 4881e72d8d2Sderaadt tries harder to preserve any execute bits the files may have 4891e72d8d2Sderaadt originally had. 4901e72d8d2Sderaadt 4911e72d8d2Sderaadt * "cvs diff" is much more accurate about its exit status now. It 4921e72d8d2Sderaadt now returns the maximum exit status of any invoked diff. 4931e72d8d2Sderaadt 4941e72d8d2Sderaadt * The "-I !" option is now supported for the import and update 4951e72d8d2Sderaadt commands correctly. It will properly clear the ignore list now. 4961e72d8d2Sderaadt 4971e72d8d2Sderaadt * Some problems with "cvs import" handling of .cvsignore have been 4981e72d8d2Sderaadt fixed; as well, some rampant recursion problems with import have 4991e72d8d2Sderaadt also been fixed. 5001e72d8d2Sderaadt 5011e72d8d2Sderaadt * "cvs rdiff" (aka "cvs patch") now tries to set the modify time 5021e72d8d2Sderaadt of any temporary files it uses to match those specified for the 5031e72d8d2Sderaadt particular revision. This allows a more accurate patch image to 5041e72d8d2Sderaadt be created. 5051e72d8d2Sderaadt 5061e72d8d2Sderaadt * "cvs status" has improved revision descriptions. "Working 5071e72d8d2Sderaadt revision" is used for the revision of the working file that you 5081e72d8d2Sderaadt edit directly; "Repository revision" is the revision of the file 5091e72d8d2Sderaadt with the $CVSROOT source repository. Also, the output is clearer 5101e72d8d2Sderaadt with regard to sticky and branch revisions. 5111e72d8d2Sderaadt 5121e72d8d2Sderaadt * CVS no longer dumps core when given a mixture of directories and 5131e72d8d2Sderaadt files in sub-directories (as in "cvs ci file1 dir1/file2"). 5141e72d8d2Sderaadt Instead, arguments are now clumped into their respective directory 5151e72d8d2Sderaadt and operated on in chunks, together. 5161e72d8d2Sderaadt 5171e72d8d2Sderaadt * If the CVSEDITOR environment variable is set, that editor is 5181e72d8d2Sderaadt used for log messages instead of the EDITOR environment variable. 5191e72d8d2Sderaadt This makes it easy to substitute intelligent programs to make more 5201e72d8d2Sderaadt elaborate log messages. Contributed by Mark D Baushke 5211e72d8d2Sderaadt (mdb@cisco.com). 5221e72d8d2Sderaadt 5231e72d8d2Sderaadt * Command argument changes: 5241e72d8d2Sderaadt cvs: The "-f" option has been added to ignore 5251e72d8d2Sderaadt the ~/.cvsrc file. 5261e72d8d2Sderaadt commit: Renamed the "-f logfile" option to the 5271e72d8d2Sderaadt "-F logfile" option. Added the "-f" 5281e72d8d2Sderaadt option to force a commit of the specified 5291e72d8d2Sderaadt files (this disables recursion). 5301e72d8d2Sderaadt history: Added "-t timezone" option to force any 5311e72d8d2Sderaadt date-specific output into the specified 5321e72d8d2Sderaadt timezone. 5331e72d8d2Sderaadt import: Added "-d" option to use the file's 5341e72d8d2Sderaadt modification time as the time of the 5351e72d8d2Sderaadt import. Added "-k sub" option to set the 5361e72d8d2Sderaadt default RCS keyword substitution mode for 5371e72d8d2Sderaadt newly-created files. 5381e72d8d2Sderaadt remove: Added "-f" option to force the file's 5391e72d8d2Sderaadt automatic removal if it still exists in 5401e72d8d2Sderaadt the working directory (use with caution). 5411e72d8d2Sderaadt rtag: Added "-F" option to move the tag if it 5421e72d8d2Sderaadt already exists -- new default is to NOT 5431e72d8d2Sderaadt move tags automatically. 5441e72d8d2Sderaadt tag: Added "-F" option to move the tag if it 5451e72d8d2Sderaadt already exists -- new default is to NOT 5461e72d8d2Sderaadt move tags automatically. 5471e72d8d2Sderaadt 5481e72d8d2SderaadtTue Apr 7 15:55:25 1992 Brian Berliner (berliner at sun.com) 5491e72d8d2Sderaadt 5501e72d8d2Sderaadt * Changes between CVS 1.3 Beta-3 and official CVS 1.3! 5511e72d8d2Sderaadt 5521e72d8d2Sderaadt * A new shell script is provided, "./cvsinit", which can be run at 5531e72d8d2Sderaadt install time to help setup your $CVSROOT area. This can greatly 5541e72d8d2Sderaadt ease your entry into CVS usage. 5551e72d8d2Sderaadt 5561e72d8d2Sderaadt * The INSTALL file has been updated to include the machines on 5571e72d8d2Sderaadt which CVS has compiled successfully. I think CVS 1.3 is finally 5581e72d8d2Sderaadt portable. Thanks to all the Beta testers! 5591e72d8d2Sderaadt 5601e72d8d2Sderaadt * Support for the "editinfo" file was contributed. This file 5611e72d8d2Sderaadt (located in $CVSROOT/CVSROOT) can be used to specify a special 5621e72d8d2Sderaadt "editor" to run on a per-directory basis within the repository, 5631e72d8d2Sderaadt instead of the usual user's editor. As such, it can verify that 5641e72d8d2Sderaadt the log message entered by the user is of the appropriate form 5651e72d8d2Sderaadt (contains a bugid and test validation, for example). 5661e72d8d2Sderaadt 5671e72d8d2Sderaadt * The manual pages cvs(1) and cvs(5) have been updated. 5681e72d8d2Sderaadt 5691e72d8d2Sderaadt * The "mkmodules" command now informs you when your modules file 5701e72d8d2Sderaadt has duplicate entries. 5711e72d8d2Sderaadt 5721e72d8d2Sderaadt * The "add" command now preserves any per-directory sticky tag when 5731e72d8d2Sderaadt you add a new directory to your checked-out sources. 5741e72d8d2Sderaadt 5751e72d8d2Sderaadt * The "admin" command is now a fully recursive interface to the 5761e72d8d2Sderaadt "rcs" program which operates on your checked-out sources. It no 5771e72d8d2Sderaadt longer requires you to specify the full path to the RCS file. 5781e72d8d2Sderaadt 5791e72d8d2Sderaadt * The per-file sticky tags can now be effectively removed with 5801e72d8d2Sderaadt "cvs update -A file", even if you had checked out the whole 5811e72d8d2Sderaadt directory with a per-directory sticky tag. This allows a great 5821e72d8d2Sderaadt deal of flexibility in managing the revisions that your checked-out 5831e72d8d2Sderaadt sources are based upon (both per-directory and per-file sticky 5841e72d8d2Sderaadt tags). 5851e72d8d2Sderaadt 5861e72d8d2Sderaadt * The "cvs -n commit" command now works, to show which files are 5871e72d8d2Sderaadt out-of-date and will cause the real commit to fail, or which files 5881e72d8d2Sderaadt will fail any pre-commit checks. Also, the "cvs -n import ..." 5891e72d8d2Sderaadt command will now show you what it would've done without actually 5901e72d8d2Sderaadt doing it. 5911e72d8d2Sderaadt 5921e72d8d2Sderaadt * Doing "cvs commit modules" to checkin the modules file will no 5931e72d8d2Sderaadt properly run the "mkmodules" program (assuming you have setup your 5941e72d8d2Sderaadt $CVSROOT/CVSROOT/modules file to do so). 5951e72d8d2Sderaadt 5961e72d8d2Sderaadt * The -t option in the modules file (which specifies a program to 5971e72d8d2Sderaadt run when you do a "cvs rtag" operation on a module) now gets the 5981e72d8d2Sderaadt symbolic tag as the second argument when invoked. 5991e72d8d2Sderaadt 6001e72d8d2Sderaadt * When the source repository is locked by another user, that user's 6011e72d8d2Sderaadt login name will be displayed as the holder of the lock. 6021e72d8d2Sderaadt 6031e72d8d2Sderaadt * Doing "cvs checkout module/file.c" now works even if 6041e72d8d2Sderaadt module/file.c is in the Attic (has been removed from main-line 6051e72d8d2Sderaadt development). 6061e72d8d2Sderaadt 6071e72d8d2Sderaadt * Doing "cvs commit */Makefile" now works as one would expect. 6081e72d8d2Sderaadt Rather than trying to commit everything recursively, it will now 6091e72d8d2Sderaadt commit just the files specified. 6101e72d8d2Sderaadt 6111e72d8d2Sderaadt * The "cvs remove" command is now fully recursive. To schedule a 6121e72d8d2Sderaadt file for removal, all you have to do is "rm file" and "cvs rm". 6131e72d8d2Sderaadt With no arguments, "cvs rm" will schedule all files that have been 6141e72d8d2Sderaadt physically removed for removal from the source repository at the 6151e72d8d2Sderaadt next "cvs commit". 6161e72d8d2Sderaadt 6171e72d8d2Sderaadt * The "cvs tag" command now prints "T file" for each file that was 6181e72d8d2Sderaadt tagged by this invocation and "D file" for each file that had the 6191e72d8d2Sderaadt tag removed (as with "cvs tag -d"). 6201e72d8d2Sderaadt 6211e72d8d2Sderaadt * The -a option has been added to "cvs rtag" to force it to clean 6221e72d8d2Sderaadt up any old, matching tags for files that have been removed (in the 6231e72d8d2Sderaadt Attic) that may not have been touched by this tag operation. This 6241e72d8d2Sderaadt can help keep a consistent view with your tag, even if you re-use 6251e72d8d2Sderaadt it frequently. 6261e72d8d2Sderaadt 6271e72d8d2SderaadtSat Feb 29 16:02:05 1992 Brian Berliner (berliner at sun.com) 6281e72d8d2Sderaadt 6291e72d8d2Sderaadt * Changes between CVS 1.3 Beta-2 and CVS 1.3 Beta-3 6301e72d8d2Sderaadt 6311e72d8d2Sderaadt * Many portability fixes, thanks to all the Beta testers! With any 6321e72d8d2Sderaadt luck, this Beta release will compile correctly on most anything. 6331e72d8d2Sderaadt Hey, what are we without our dreams. 6341e72d8d2Sderaadt 6351e72d8d2Sderaadt * CVS finally has support for doing isolated development on a 6361e72d8d2Sderaadt branch off the current (or previous!) revisions. This is also 6371e72d8d2Sderaadt extremely nice for generating patches for previously released 6381e72d8d2Sderaadt software while development is progressing on the next release. 6391e72d8d2Sderaadt Here's an example of creating a branch to fix a patch with the 2.0 6401e72d8d2Sderaadt version of the "foo" module, even though we are already well into 6411e72d8d2Sderaadt the 3.0 release. Do: 6421e72d8d2Sderaadt 6431e72d8d2Sderaadt % cvs rtag -b -rFOO_2_0 FOO_2_0_Patch foo 6441e72d8d2Sderaadt % cvs checkout -rFOO_2_0_Patch foo 6451e72d8d2Sderaadt % cd foo 6461e72d8d2Sderaadt [[ hack away ]] 6471e72d8d2Sderaadt % cvs commit 6481e72d8d2Sderaadt 6491e72d8d2Sderaadt A physical branch will be created in the RCS file only when you 6501e72d8d2Sderaadt actually commit the change. As such, forking development at some 6511e72d8d2Sderaadt random point in time is extremely light-weight -- requiring just a 6521e72d8d2Sderaadt symbolic tag in each file until a commit is done. To fork 6531e72d8d2Sderaadt development at the currently checked out sources, do: 6541e72d8d2Sderaadt 6551e72d8d2Sderaadt % cvs tag -b Personal_Hack 6561e72d8d2Sderaadt % cvs update -rPersonal_Hack 6571e72d8d2Sderaadt [[ hack away ]] 6581e72d8d2Sderaadt % cvs commit 6591e72d8d2Sderaadt 6601e72d8d2Sderaadt Now, if you decide you want the changes made in the Personal_Hack 6611e72d8d2Sderaadt branch to be merged in with other changes made in the main-line 6621e72d8d2Sderaadt development, you could do: 6631e72d8d2Sderaadt 6641e72d8d2Sderaadt % cvs commit # to make Personal_Hack complete 6651e72d8d2Sderaadt % cvs update -A # to update sources to main-line 6661e72d8d2Sderaadt % cvs update -jPersonal_Hack # to merge Personal_Hack 6671e72d8d2Sderaadt 6681e72d8d2Sderaadt to update your checked-out sources, or: 6691e72d8d2Sderaadt 6701e72d8d2Sderaadt % cvs checkout -jPersonal_Hack module 6711e72d8d2Sderaadt 6721e72d8d2Sderaadt to checkout a fresh copy. 6731e72d8d2Sderaadt 6741e72d8d2Sderaadt To support this notion of forked development, CVS reserves 6751e72d8d2Sderaadt all even-numbered branches for its own use. In addition, CVS 6761e72d8d2Sderaadt reserves the ".0" and ".1" branches. So, if you intend to do your 6771e72d8d2Sderaadt own branches by hand with RCS, you should use odd-numbered branches 6781e72d8d2Sderaadt starting with ".3", as in "1.1.3", "1.1.5", 1.2.9", .... 6791e72d8d2Sderaadt 6801e72d8d2Sderaadt * The "cvs commit" command now supports a fully functional -r 6811e72d8d2Sderaadt option, allowing you to commit your changes to a specific numeric 6821e72d8d2Sderaadt revision or symbolic tag with full consistency checks. Numeric 6831e72d8d2Sderaadt tags are useful for bringing your sources all up to some revision 6841e72d8d2Sderaadt level: 6851e72d8d2Sderaadt 6861e72d8d2Sderaadt % cvs commit -r2.0 6871e72d8d2Sderaadt 6881e72d8d2Sderaadt For symbolic tags, you can only commit to a tag that references a 6891e72d8d2Sderaadt branch in the RCS file. One created by "cvs rtag -b" or from 6901e72d8d2Sderaadt "cvs tag -b" is appropriate (see below). 6911e72d8d2Sderaadt 6921e72d8d2Sderaadt * Roland Pesch <pesch@cygnus.com> and K. Richard Pixley 6931e72d8d2Sderaadt <rich@cygnus.com> were kind enough to contribute two new manual 6941e72d8d2Sderaadt pages for CVS: cvs(1) and cvs(5). Most of the new CVS 1.3 features 6951e72d8d2Sderaadt are now documented, with the exception of the new branch support 6961e72d8d2Sderaadt added to commit/rtag/tag/checkout/update. 6971e72d8d2Sderaadt 6981e72d8d2Sderaadt * The -j options of checkout/update have been added. The "cvs join" 6991e72d8d2Sderaadt command has been removed. 7001e72d8d2Sderaadt 7011e72d8d2Sderaadt With one -j option, CVS will merge the changes made between the 7021e72d8d2Sderaadt resulting revision and the revision that it is based on (e.g., if 7031e72d8d2Sderaadt the tag refers to a branch, CVS will merge all changes made in 7041e72d8d2Sderaadt that branch into your working file). 7051e72d8d2Sderaadt 7061e72d8d2Sderaadt With two -j options, CVS will merge in the changes between the two 7071e72d8d2Sderaadt respective revisions. This can be used to "remove" a certain delta 7081e72d8d2Sderaadt from your working file. E.g., If the file foo.c is based on 7091e72d8d2Sderaadt revision 1.6 and I want to remove the changes made between 1.3 and 7101e72d8d2Sderaadt 1.5, I might do: 7111e72d8d2Sderaadt 7121e72d8d2Sderaadt % cvs update -j1.5 -j1.3 foo.c # note the order... 7131e72d8d2Sderaadt 7141e72d8d2Sderaadt In addition, each -j option can contain on optional date 7151e72d8d2Sderaadt specification which, when used with branches, can limit the chosen 7161e72d8d2Sderaadt revision to one within a specific date. An optional date is 7171e72d8d2Sderaadt specified by adding a colon (:) to the tag, as in: 7181e72d8d2Sderaadt 7191e72d8d2Sderaadt -jSymbolic_Tag:Date_Specifier 7201e72d8d2Sderaadt 7211e72d8d2Sderaadt An example might be what "cvs import" tells you to do when you have 7221e72d8d2Sderaadt just imported sources that have conflicts with local changes: 7231e72d8d2Sderaadt 7241e72d8d2Sderaadt % cvs checkout -jTAG:yesterday -jTAG module 7251e72d8d2Sderaadt 7261e72d8d2Sderaadt which tells CVS to merge in the changes made to the branch 7271e72d8d2Sderaadt specified by TAG in the last 24 hours. If this is not what is 7281e72d8d2Sderaadt intended, substitute "yesterday" for whatever format of date that 7291e72d8d2Sderaadt is appropriate, like: 7301e72d8d2Sderaadt 7311e72d8d2Sderaadt % cvs checkout -jTAG:'1 week ago' -jTAG module 7321e72d8d2Sderaadt 7331e72d8d2Sderaadt * "cvs diff" now supports the special tags "BASE" and "HEAD". So, 7341e72d8d2Sderaadt the command: 7351e72d8d2Sderaadt 7361e72d8d2Sderaadt % cvs diff -u -rBASE -rHEAD 7371e72d8d2Sderaadt 7381e72d8d2Sderaadt will effectively show the changes made by others (in unidiff 7391e72d8d2Sderaadt format) that will be merged into your working sources with your 7401e72d8d2Sderaadt next "cvs update" command. "-rBASE" resolves to the revision that 7411e72d8d2Sderaadt your working file is based on. "-rHEAD" resolves to the current 7421e72d8d2Sderaadt head of the branch or trunk that you are working on. 7431e72d8d2Sderaadt 7441e72d8d2Sderaadt * The -P option of "cvs checkout" now means to Prune empty 7451e72d8d2Sderaadt directories, as with "update". The default is to not remove empty 7461e72d8d2Sderaadt directories. However, if you do "checkout" with any -r options, -P 7471e72d8d2Sderaadt will be implied. I.e., checking out with a tag will cause empty 7481e72d8d2Sderaadt directories to be pruned automatically. 7491e72d8d2Sderaadt 7501e72d8d2Sderaadt * The new file INSTALL describes how to install CVS, including 7511e72d8d2Sderaadt detailed descriptions of interfaces to "configure". 7521e72d8d2Sderaadt 7531e72d8d2Sderaadt * The example loginfo file in examples/loginfo has been updated to 7541e72d8d2Sderaadt use the perl script included in contrib/log.pl. The nice thing 7551e72d8d2Sderaadt about this log program is that it records the revision numbers of 7561e72d8d2Sderaadt your change in the log message. 7571e72d8d2Sderaadt 7581e72d8d2Sderaadt Example files for commitinfo and rcsinfo are now included in the 7591e72d8d2Sderaadt examples directory. 7601e72d8d2Sderaadt 7611e72d8d2Sderaadt * All "#if defined(__STDC__) && __STDC__ == 1" lines have been 7621e72d8d2Sderaadt changed to be "#if __STDC__" to fix some problems with the former. 7631e72d8d2Sderaadt 7641e72d8d2Sderaadt * The lib/regex.[ch] files have been updated to the 1.3 release of 7651e72d8d2Sderaadt the GNU regex package. 7661e72d8d2Sderaadt 7671e72d8d2Sderaadt * The ndbm emulation routines included with CVS 1.3 Beta-2 in the 7681e72d8d2Sderaadt src/ndbm.[ch] files has been moved into the src/myndbm.[ch] files 7691e72d8d2Sderaadt to avoid any conflict with the system <ndbm.h> header file. If 7701e72d8d2Sderaadt you had a previous CVS 1.3 Beta release, you will want to "cvs 7711e72d8d2Sderaadt remove ndbm.[ch]" form your copy of CVS as well. 7721e72d8d2Sderaadt 7731e72d8d2Sderaadt * "cvs add" and "cvs remove" are a bit more verbose, telling you 7741e72d8d2Sderaadt what to do to add/remove your file permanently. 7751e72d8d2Sderaadt 7761e72d8d2Sderaadt * We no longer mess with /dev/tty in "commit" and "add". 7771e72d8d2Sderaadt 7781e72d8d2Sderaadt * More things are quiet with the -Q option set. 7791e72d8d2Sderaadt 7801e72d8d2Sderaadt * New src/config.h option: If CVS_BADROOT is set, CVS will not 7811e72d8d2Sderaadt allow people really logged in as "root" to commit changes. 7821e72d8d2Sderaadt 7831e72d8d2Sderaadt * "cvs diff" exits with a status of 0 if there were no diffs, 1 if 7841e72d8d2Sderaadt there were diffs, and 2 if there were errors. 7851e72d8d2Sderaadt 7861e72d8d2Sderaadt * "cvs -n diff" is now supported so that you can still run diffs 7871e72d8d2Sderaadt even while in the middle of committing files. 7881e72d8d2Sderaadt 7891e72d8d2Sderaadt * Handling of the CVS/Entries file is now much more robust. 7901e72d8d2Sderaadt 7911e72d8d2Sderaadt * The default file ignore list now includes "*.so". 7921e72d8d2Sderaadt 7931e72d8d2Sderaadt * "cvs import" did not expand '@' in the log message correctly. It 7941e72d8d2Sderaadt does now. Also, import now uses the ignore file facility 7951e72d8d2Sderaadt correctly. 7961e72d8d2Sderaadt 7971e72d8d2Sderaadt Import will now tell you whether there were conflicts that need to 7981e72d8d2Sderaadt be resolved, and how to resolve them. 7991e72d8d2Sderaadt 8001e72d8d2Sderaadt * "cvs log" has been changed so that you can "log" things that are 8011e72d8d2Sderaadt not a part of the current release (in the Attic). 8021e72d8d2Sderaadt 8031e72d8d2Sderaadt * If you don't change the editor message on commit, CVS now prompts 8041e72d8d2Sderaadt you with the choice: 8051e72d8d2Sderaadt 8061e72d8d2Sderaadt !)reuse this message unchanged for remaining dirs 8071e72d8d2Sderaadt 8081e72d8d2Sderaadt which allows you to tell CVS that you have no intention of changing 8091e72d8d2Sderaadt the log message for the remainder of the commit. 8101e72d8d2Sderaadt 8111e72d8d2Sderaadt * It is no longer necessary to have CVSROOT set if you are using 8121e72d8d2Sderaadt the -H option to get Usage information on the commands. 8131e72d8d2Sderaadt 8141e72d8d2Sderaadt * Command argument changes: 8151e72d8d2Sderaadt checkout: -P handling changed as described above. 8161e72d8d2Sderaadt New -j option (up to 2 can be specified) 8171e72d8d2Sderaadt for doing rcsmerge kind of things on 8181e72d8d2Sderaadt checkout. 8191e72d8d2Sderaadt commit: -r option now supports committing to a 8201e72d8d2Sderaadt numeric or symbolic tags, with some 8211e72d8d2Sderaadt restrictions. Full consistency checks will 8221e72d8d2Sderaadt be done. 8231e72d8d2Sderaadt Added "-f logfile" option, which tells 8241e72d8d2Sderaadt commit to glean the log message from the 8251e72d8d2Sderaadt specified file, rather than invoking the 8261e72d8d2Sderaadt editor. 8271e72d8d2Sderaadt rtag: Added -b option to create a branch tag, 8281e72d8d2Sderaadt useful for creating a patch for a previous 8291e72d8d2Sderaadt release, or for forking development. 8301e72d8d2Sderaadt tag: Added -b option to create a branch tag, 8311e72d8d2Sderaadt useful for creating a patch for a previous 8321e72d8d2Sderaadt release, or for forking development. 8331e72d8d2Sderaadt update: New -j option (up to 2 can be specified) 8341e72d8d2Sderaadt for doing rcsmerge kind of things on 8351e72d8d2Sderaadt update. 8361e72d8d2Sderaadt 8371e72d8d2SderaadtThu Jan 9 10:51:35 MST 1992 Jeff Polk (polk at BSDI.COM) 8381e72d8d2Sderaadt 8391e72d8d2Sderaadt * Changes between CVS 1.3 Beta-1 and CVS 1.3 Beta-2 8401e72d8d2Sderaadt 8411e72d8d2Sderaadt * Thanks to K. Richard Pixley at Cygnus we now have function 8421e72d8d2Sderaadt prototypes in all the files 8431e72d8d2Sderaadt 8441e72d8d2Sderaadt * Some small changes to configure for portability. There have 8451e72d8d2Sderaadt been other portability problems submitted that have not been fixed 8461e72d8d2Sderaadt (Brian will be working on those). Additionally all __STDC__ 8471e72d8d2Sderaadt tests have been modified to check __STDC__ against the constant 1 8481e72d8d2Sderaadt (this is what the Second edition of K&R says must be true). 8491e72d8d2Sderaadt 8501e72d8d2Sderaadt * Lots of additional error checking for forked processes (run_exec) 8511e72d8d2Sderaadt (thanks again to K. Richard Pixley) 8521e72d8d2Sderaadt 8531e72d8d2Sderaadt * Lots of miscellaneous bug fixes - including but certainly not 8541e72d8d2Sderaadt limited to: 8551e72d8d2Sderaadt various commit core dumps 8561e72d8d2Sderaadt various update core dumps 8571e72d8d2Sderaadt bogus results from status with numeric sticky tags 8581e72d8d2Sderaadt commitprog used freed memory 8591e72d8d2Sderaadt Entries file corruption caused by No_Difference 8601e72d8d2Sderaadt commit to revision broken (now works if branch exists) 8611e72d8d2Sderaadt ignore file processing broken for * and ! 8621e72d8d2Sderaadt ignore processing didn't handle memory reasonably 8631e72d8d2Sderaadt miscellaneous bugs in the recursion processor 8641e72d8d2Sderaadt file descriptor leak in ParseInfo 8651e72d8d2Sderaadt CVSROOT.adm->CVSROOT rename bug 8661e72d8d2Sderaadt lots of lint fixes 8671e72d8d2Sderaadt 8681e72d8d2Sderaadt * Reformatted all the code in src (with GNU indent) and then 8691e72d8d2Sderaadt went back and fixed prototypes, etc since indent gets confused. The 8701e72d8d2Sderaadt rationale is that it is better to do it sooner than later and now 8711e72d8d2Sderaadt everything is consistent and will hopefully stay that way. 8721e72d8d2Sderaadt The basic options to indent were: "-bad -bbb -bap -cdb -d0 -bl -bli0 8731e72d8d2Sderaadt -nce -pcs -cs -cli4 -di1 -nbc -psl -lp -i4 -ip4 -c41" and then 8741e72d8d2Sderaadt miscellaneous formatting fixes were applied. Note also that the 8751e72d8d2Sderaadt "-nfc1" or "-nfca" may be appropriate in files where comments have 8761e72d8d2Sderaadt been carefully formatted (e.g, modules.c). 8771e72d8d2Sderaadt 8781e72d8d2SderaadtSat Dec 14 20:35:22 1991 Brian Berliner (berliner at sun.com) 8791e72d8d2Sderaadt 8801e72d8d2Sderaadt * Changes between CVS 1.2 and CVS 1.3 Beta are described here. 8811e72d8d2Sderaadt 8821e72d8d2Sderaadt * Lots of portability work. CVS now uses the GNU "configure" 8831e72d8d2Sderaadt script to dynamically determine the features provided by your 8841e72d8d2Sderaadt system. It probably is not foolproof, but it is better than 8851e72d8d2Sderaadt nothing. Please let me know of any portability problems. Some 8861e72d8d2Sderaadt file names were changed to fit within 14-characters. 8871e72d8d2Sderaadt 8881e72d8d2Sderaadt * CVS has a new RCS parser that is much more flexible and 8891e72d8d2Sderaadt extensible. It should read all known RCS ",v" format files. 8901e72d8d2Sderaadt 8911e72d8d2Sderaadt * Most of the commands now are fully recursive, rather than just 8921e72d8d2Sderaadt operating on the current directory alone. This includes "commit", 8931e72d8d2Sderaadt which makes it real easy to do an "atomic" commit of all the 8941e72d8d2Sderaadt changes made to a CVS hierarchy of sources. Most of the commands 8951e72d8d2Sderaadt also correctly handle file names that are in directories other than 8961e72d8d2Sderaadt ".", including absolute path names. Commands now accept the "-R" 8971e72d8d2Sderaadt option to force recursion on (though it is always the default now) 8981e72d8d2Sderaadt and the "-l" option to force recursion off, doing just "." and not 8991e72d8d2Sderaadt any sub-directories. 9001e72d8d2Sderaadt 9011e72d8d2Sderaadt * CVS supports many of the features provided with the RCS 5.x 9021e72d8d2Sderaadt distribution - including the new "-k" keyword expansion options. I 9031e72d8d2Sderaadt recommend using RCS 5.x (5.6 is the current official RCS version) 9041e72d8d2Sderaadt and GNU diff 1.15 (or later) distributions with CVS. 9051e72d8d2Sderaadt 9061e72d8d2Sderaadt * Checking out files with symbolic tags/dates is now "sticky", in 9071e72d8d2Sderaadt that CVS remembers the tag/date used for each file (and directory) 9081e72d8d2Sderaadt and will use that tag/date automatically on the next "update" call. 9091e72d8d2Sderaadt This stickyness also holds for files checked out with the the new 9101e72d8d2Sderaadt RCS 5.x "-k" options. 9111e72d8d2Sderaadt 9121e72d8d2Sderaadt * The "cvs diff" command now recognizes all of the rcsdiff 5.x 9131e72d8d2Sderaadt options. Unidiff format is available by installing the GNU 9141e72d8d2Sderaadt diff 1.15 distribution. 9151e72d8d2Sderaadt 9161e72d8d2Sderaadt * The old "CVS.adm" directories created on checkout are now called 9171e72d8d2Sderaadt "CVS" directories, to look more like "RCS" and "SCCS". Old CVS.adm 9181e72d8d2Sderaadt directories are automagically converted to CVS directories. The 9191e72d8d2Sderaadt old "CVSROOT.adm" directory within the source repository is 9201e72d8d2Sderaadt automagically changed into a "CVSROOT" directory as well. 9211e72d8d2Sderaadt 9221e72d8d2Sderaadt * Symbolic links in the source repository are fully supported ONLY 9231e72d8d2Sderaadt if you use RCS 5.6 or later and (of course) your system supports 9241e72d8d2Sderaadt symlinks. 9251e72d8d2Sderaadt 9261e72d8d2Sderaadt * A history database has been contributed which maintains the 9271e72d8d2Sderaadt history of certain CVS operations, as well as providing a wide array 9281e72d8d2Sderaadt of querying options. 9291e72d8d2Sderaadt 9301e72d8d2Sderaadt * The "cvs" program has a "-n" option which can be used with the 9311e72d8d2Sderaadt "update" command to show what would be updated without actually 9321e72d8d2Sderaadt doing the update, like: "cvs -n update". All usage statements 9331e72d8d2Sderaadt have been cleaned up and made more verbose. 9341e72d8d2Sderaadt 9351e72d8d2Sderaadt * The module database parsing has been rewritten. The new format 9361e72d8d2Sderaadt is compatible with the old format, but with much more 9371e72d8d2Sderaadt functionality. It allows modules to be created that grab pieces or 9381e72d8d2Sderaadt whole directories from various different parts of your source 9391e72d8d2Sderaadt repository. Module-relative specifications are also correctly 9401e72d8d2Sderaadt recognized now, like "cvs checkout module/file.c". 9411e72d8d2Sderaadt 9421e72d8d2Sderaadt * A configurable template can be specified such that on a "commit", 9431e72d8d2Sderaadt certain directories can supply a template that the user must fill 9441e72d8d2Sderaadt before completing the commit operation. 9451e72d8d2Sderaadt 9461e72d8d2Sderaadt * A configurable pre-commit checking program can be specified which 9471e72d8d2Sderaadt will run to verify that a "commit" can happen. This feature can be 9481e72d8d2Sderaadt used to restrict certain users from changing certain pieces of the 9491e72d8d2Sderaadt source repository, or denying commits to the entire source 9501e72d8d2Sderaadt repository. 9511e72d8d2Sderaadt 9521e72d8d2Sderaadt * The new "cvs export" command is much like "checkout", but 9531e72d8d2Sderaadt establishes defaults suitable for exporting code to others (expands 9541e72d8d2Sderaadt out keywords, forces the use of a symbolic tag, and does not create 9551e72d8d2Sderaadt "CVS" directories within the checked out sources. 9561e72d8d2Sderaadt 9571e72d8d2Sderaadt * The new "cvs import" command replaces the deprecated "checkin" 9581e72d8d2Sderaadt shell script and is used to import sources into CVS control. It is 9591e72d8d2Sderaadt also much faster for the first-time import. Some algorithmic 9601e72d8d2Sderaadt improvements have also been made to reduce the number of 9611e72d8d2Sderaadt conflicting files on next-time imports. 9621e72d8d2Sderaadt 9631e72d8d2Sderaadt * The new "cvs admin" command is basically an interface to the 9641e72d8d2Sderaadt "rcs" program. (Not yet implemented very well). 9651e72d8d2Sderaadt 9661e72d8d2Sderaadt * Signal handling (on systems with BSD or POSIX signals) is much 9671e72d8d2Sderaadt improved. Interrupting CVS now works with a single interrupt! 9681e72d8d2Sderaadt 9691e72d8d2Sderaadt * CVS now invokes RCS commands by direct fork/exec rather than 9701e72d8d2Sderaadt calling system(3). This improves performance by removing a call to 9711e72d8d2Sderaadt the shell to parse the arguments. 9721e72d8d2Sderaadt 9731e72d8d2Sderaadt * Support for the .cvsignore file has been contributed. CVS will 9741e72d8d2Sderaadt now show "unknown" files as "? filename" as the result of an "update" 9751e72d8d2Sderaadt command. The .cvsignore file can be used to add files to the 9761e72d8d2Sderaadt current list of ignored files so that they won't show up as unknown. 9771e72d8d2Sderaadt 9781e72d8d2Sderaadt * Command argument changes: 9791e72d8d2Sderaadt cvs: Added -l to turn off history logging. 9801e72d8d2Sderaadt Added -n to show what would be done without actually 9811e72d8d2Sderaadt doing anything. 9821e72d8d2Sderaadt Added -q/-Q for quiet and really quiet settings. 9831e72d8d2Sderaadt Added -t to show debugging trace. 9841e72d8d2Sderaadt add: Added -k to allow RCS 5.x -k options to be specified. 9851e72d8d2Sderaadt admin: New command; an interface to rcs(1). 9861e72d8d2Sderaadt checkout: Added -A to reset sticky tags/date/options. 9871e72d8d2Sderaadt Added -N to not shorten module paths. 9881e72d8d2Sderaadt Added -R option to force recursion. 9891e72d8d2Sderaadt Changed -p (prune empty directories) to -P option. 9901e72d8d2Sderaadt Changed -f option; forcing tags match is now default. 9911e72d8d2Sderaadt Added -p option to checkout module to standard output. 9921e72d8d2Sderaadt Added -s option to cat the modules db with status. 9931e72d8d2Sderaadt Added -d option to checkout in the specified directory. 9941e72d8d2Sderaadt Added -k option to use RCS 5.x -k support. 9951e72d8d2Sderaadt commit: Removed -a option; use -l instead. 9961e72d8d2Sderaadt Removed -f option. 9971e72d8d2Sderaadt Added -l option to disable recursion. 9981e72d8d2Sderaadt Added -R option to force recursion. 9991e72d8d2Sderaadt If no files specified, commit is recursive. 10001e72d8d2Sderaadt diff: Now recognizes all RCS 5.x rcsdiff options. 10011e72d8d2Sderaadt Added -l option to disable recursion. 10021e72d8d2Sderaadt Added -R option to force recursion. 10031e72d8d2Sderaadt history: New command; displays info about CVS usage. 10041e72d8d2Sderaadt import: Replaces "checkin" shell script; imports sources 10051e72d8d2Sderaadt under CVS control. Ignores files on the ignore 10061e72d8d2Sderaadt list (see -I option or .cvsignore description above). 10071e72d8d2Sderaadt export: New command; like "checkout", but w/special options 10081e72d8d2Sderaadt turned on by default to facilitate exporting sources. 10091e72d8d2Sderaadt join: Added -B option to join from base of the branch; 10101e72d8d2Sderaadt join now defaults to only joining with the top two 10111e72d8d2Sderaadt revisions on the branch. 10121e72d8d2Sderaadt Added -k option for RCS 5.x -k support. 10131e72d8d2Sderaadt log: Supports all RCS 5.x options. 10141e72d8d2Sderaadt Added -l option to disable recursion. 10151e72d8d2Sderaadt Added -R option to force recursion. 10161e72d8d2Sderaadt patch: Changed -f option; forcing tags match is now default. 10171e72d8d2Sderaadt Added -c option to force context-style diffs. 10181e72d8d2Sderaadt Added -u option to support unidiff-style diffs. 10191e72d8d2Sderaadt Added -V option to support RCS specific-version 10201e72d8d2Sderaadt keyword expansion formats. 10211e72d8d2Sderaadt Added -R option to force recursion. 10221e72d8d2Sderaadt remove: No option changes. It's a bit more verbose. 10231e72d8d2Sderaadt rtag: Equivalent to the old "cvs tag" command. 10241e72d8d2Sderaadt No option changes. It's a lot faster for re-tag. 10251e72d8d2Sderaadt status: New output formats with more information. 10261e72d8d2Sderaadt Added -l option to disable recursion. 10271e72d8d2Sderaadt Added -R option to force recursion. 10281e72d8d2Sderaadt Added -v option to show symbolic tags for files. 10291e72d8d2Sderaadt tag: Functionality changed to tag checked out files 10301e72d8d2Sderaadt rather than modules; use "rtag" command to get the 10311e72d8d2Sderaadt old "cvs tag" behaviour. 10321e72d8d2Sderaadt update: Added -A to reset sticky tags/date/options. 10331e72d8d2Sderaadt Changed -p (prune empty directories) to -P option. 10341e72d8d2Sderaadt Changed -f option; forcing tags match is now default. 10351e72d8d2Sderaadt Added -p option to checkout module to standard output. 10361e72d8d2Sderaadt Added -I option to add files to the ignore list. 10371e72d8d2Sderaadt Added -R option to force recursion. 10381e72d8d2Sderaadt 10391e72d8d2Sderaadt Major Contributors: 10401e72d8d2Sderaadt 10411e72d8d2Sderaadt * Jeff Polk <polk@bsdi.com> rewrote most of the grody code of CVS 10421e72d8d2Sderaadt 1.2. He made just about everything dynamic (by using malloc), 10431e72d8d2Sderaadt added a generic hashed list manager, re-wrote the modules database 10441e72d8d2Sderaadt parsing in a compatible - but extended way, generalized directory 10451e72d8d2Sderaadt hierarchy recursion for virtually all the commands (including 10461e72d8d2Sderaadt commit!), generalized the loginfo file to be used for pre-commit 10471e72d8d2Sderaadt checks and commit templates, wrote a new and flexible RCS parser, 10481e72d8d2Sderaadt fixed an uncountable number of bugs, and helped in the design of 10491e72d8d2Sderaadt future CVS features. If there's anything gross left in CVS, it's 10501e72d8d2Sderaadt probably my fault! 10511e72d8d2Sderaadt 10521e72d8d2Sderaadt * David G. Grubbs <dgg@odi.com> contributed the CVS "history" and 10531e72d8d2Sderaadt "release" commands. As well as the ever-so-useful "-n" option of 10541e72d8d2Sderaadt CVS which tells CVS to show what it would do, without actually 10551e72d8d2Sderaadt doing it. He also contributed support for the .cvsignore file. 10561e72d8d2Sderaadt 10571e72d8d2Sderaadt * Paul Sander, HaL Computer Systems, Inc. <paul@hal.com> wrote and 10581e72d8d2Sderaadt contributed the code in lib/sighandle.c. I added support for 10591e72d8d2Sderaadt POSIX, BSD, and non-POSIX/non-BSD systems. 10601e72d8d2Sderaadt 10611e72d8d2Sderaadt * Free Software Foundation contributed the "configure" script and 10621e72d8d2Sderaadt other compatibility support in the "lib" directory, which will help 10631e72d8d2Sderaadt make CVS much more portable. 10641e72d8d2Sderaadt 10651e72d8d2Sderaadt * Many others have contributed bug reports and enhancement requests. 10661e72d8d2Sderaadt Some have even submitted actual code which I have not had time yet 10671e72d8d2Sderaadt to integrate into CVS. Maybe for the next release. 10681e72d8d2Sderaadt 10691e72d8d2Sderaadt * Thanks to you all! 10701e72d8d2Sderaadt 10711e72d8d2SderaadtWed Feb 6 10:10:58 1991 Brian Berliner (berliner at sun.com) 10721e72d8d2Sderaadt 10731e72d8d2Sderaadt * Changes from CVS 1.0 Patchlevel 1 to CVS 1.0 Patchlevel 2; also 10741e72d8d2Sderaadt known as "Changes from CVS 1.1 to CVS 1.2". 10751e72d8d2Sderaadt 10761e72d8d2Sderaadt * Major new support with this release is the ability to use the 10771e72d8d2Sderaadt recently-posted RCS 5.5 distribution with CVS 1.2. See below for 10781e72d8d2Sderaadt other assorted bug-fixes that have been thrown in. 10791e72d8d2Sderaadt 10801e72d8d2Sderaadt * ChangeLog (new): Added Emacs-style change-log file to CVS 1.2 10811e72d8d2Sderaadt release. Chronological description of changes between release. 10821e72d8d2Sderaadt 10831e72d8d2Sderaadt * README: Small fixes to installation instructions. My email 10841e72d8d2Sderaadt address is now "berliner@sun.com". 10851e72d8d2Sderaadt 10861e72d8d2Sderaadt * src/Makefile: Removed "rcstime.h". Removed "depend" rule. 10871e72d8d2Sderaadt 10881e72d8d2Sderaadt * src/partime.c: Updated to RCS 5.5 version with hooks for CVS. 10891e72d8d2Sderaadt * src/maketime.c: Updated to RCS 5.5 version with hooks for CVS. 10901e72d8d2Sderaadt * src/rcstime.h: Removed from the CVS 1.2 distribution. 10911e72d8d2Sderaadt Thanks to Paul Eggert <eggert@twinsun.com> for these changes. 10921e72d8d2Sderaadt 10931e72d8d2Sderaadt * src/checkin.csh: Support for RCS 5.5 parsing. 10941e72d8d2Sderaadt Thanks to Paul Eggert <eggert@twinsun.com> for this change. 10951e72d8d2Sderaadt 10961e72d8d2Sderaadt * src/collect_sets.c (Collect_Sets): Be quieter if "-f" option is 10971e72d8d2Sderaadt specified. When checking out files on-top-of other files that CVS 10981e72d8d2Sderaadt doesn't know about, run a diff in the hopes that they are really 10991e72d8d2Sderaadt the same file before aborting. 11001e72d8d2Sderaadt 11011e72d8d2Sderaadt * src/commit.c (branch_number): Fix for RCS 5.5 parsing. 11021e72d8d2Sderaadt Thanks to Paul Eggert <eggert@twinsun.com> for this change. 11031e72d8d2Sderaadt 11041e72d8d2Sderaadt * src/commit.c (do_editor): Bug fix - fprintf missing argument 11051e72d8d2Sderaadt which sometimes caused core dumps. 11061e72d8d2Sderaadt 11071e72d8d2Sderaadt * src/modules.c (process_module): Properly NULL-terminate 11081e72d8d2Sderaadt update_dir[] in all cases. 11091e72d8d2Sderaadt 11101e72d8d2Sderaadt * src/no_difference.c (No_Difference): The wrong RCS revision was 11111e72d8d2Sderaadt being registered in certain (strange) cases. 11121e72d8d2Sderaadt 11131e72d8d2Sderaadt * src/patch.c (get_rcsdate): New algorithm. No need to call 11141e72d8d2Sderaadt maketime() any longer. 11151e72d8d2Sderaadt Thanks to Paul Eggert <eggert@twinsun.com> for this change. 11161e72d8d2Sderaadt 11171e72d8d2Sderaadt * src/patchlevel.h: Increased patch level to "2". 11181e72d8d2Sderaadt 11191e72d8d2Sderaadt * src/subr.c (isdir, islink): Changed to compare stat mode bits 11201e72d8d2Sderaadt correctly. 11211e72d8d2Sderaadt 11221e72d8d2Sderaadt * src/tag.c (tag_file): Added support for following symbolic links 11231e72d8d2Sderaadt that are in the master source repository when tagging. Made tag 11241e72d8d2Sderaadt somewhat quieter in certain cases. 11251e72d8d2Sderaadt 11261e72d8d2Sderaadt * src/update.c (update_process_lists): Unlink the user's file if it 11271e72d8d2Sderaadt was put on the Wlist, meaning that the user's file is not modified 11281e72d8d2Sderaadt and its RCS file has been removed by someone else. 11291e72d8d2Sderaadt 11301e72d8d2Sderaadt * src/update.c (update): Support for "cvs update dir" to correctly 11311e72d8d2Sderaadt just update the argument directory "dir". 11321e72d8d2Sderaadt 11331e72d8d2Sderaadt * src/cvs.h: Fixes for RCS 5.5 parsing. 11341e72d8d2Sderaadt * src/version_number.c (Version_Number): Fixes for parsing RCS 5.5 11351e72d8d2Sderaadt and older RCS-format files. 11361e72d8d2Sderaadt Thanks to Paul Eggert <eggert@twinsun.com> for these changes. 11371e72d8d2Sderaadt 11381e72d8d2Sderaadt * src/version_number.c (Version_Number): Bug fixes for "-f" option. 11391e72d8d2Sderaadt Bug fixes for parsing with certain branch numbers. RCS 11401e72d8d2Sderaadt revision/symbol parsing is much more solid now. 11411e72d8d2Sderaadt 11421e72d8d2SderaadtWed Feb 14 10:01:33 1990 Brian Berliner (berliner at sun.com) 11431e72d8d2Sderaadt 11441e72d8d2Sderaadt * Changes from CVS 1.0 Patchlevel 0 to CVS 1.0 Patchlevel 1; also 11451e72d8d2Sderaadt known as "Changes from CVS 1.0 to CVS 1.1". 11461e72d8d2Sderaadt 11471e72d8d2Sderaadt * src/patch.c (get_rcsdate): Portability fix. Replaced call to 11481e72d8d2Sderaadt timelocal() with call to maketime(). 11491e72d8d2Sderaadt 11501e72d8d2SderaadtMon Nov 19 23:15:11 1990 Brian Berliner (berliner at prisma.com) 11511e72d8d2Sderaadt 11521e72d8d2Sderaadt * Sent CVS 1.0 release to comp.sources.unix moderator and FSF. 11531e72d8d2Sderaadt 11541e72d8d2Sderaadt * Special thanks to Dick Grune <dick@cs.vu.nl> for his work on the 11551e72d8d2Sderaadt 1986 version of CVS and making it available to the world. Dick's 11561e72d8d2Sderaadt version is available on uunet.uu.net in the 11571e72d8d2Sderaadt comp.sources.unix/volume6/cvs directory. 1158