The CVSNT History
History page moved to
a new page
History before 06/09/04 is below:
05/09/04: 2.0.53: Bug fix/cleanup. Rename should work for more people now. Log by bug.
22/08/04: 2.0.52: New ACL System. Edit/Commit by bug. Edit/Commit reasons. Make -k options properly versioned. SSPI cross domain changes. Edits branch specific. Fileattr rewrite.
12/08/04: 2.0.51d: Remove history -X (security fix). (stable).
11/08/04: 2.0.51c: Fix commit to CVSROOT on Win32 (bug introduced on 51b). (stable).
06/08/04: 2.0.51b: Security additions for Unix (Chroot/RunAsUser). (stable).
31/07/04: 2.0.51a: Post-release fixes. (stable).
22/07/04: 2.0.51: Some documentation updates. (stable).
20/07/04: 2.0.50: Fix bugs found during pre-release testing (release candidate).
18/07/04: 2.0.49: More doc updates, minor bug fixes (release candidate).
15/07/04: 2.0.48: Doc updates and cleanup (release candidate).
10/07/04: 2.0.47: Some doc updates & cleanup.
26/06/04: 2.0.46: Make Rename support optional (default disabled) & mark experimental.
18/06/04: 2.0.45: Cleanup/fixes. protocol :ext: wrapper for non-cvs clients.
13/06/04: 2.0.44: Server side cvs info. Replace prefix options with freeform repository naming.
06/06/04: 2.0.43: Rename updates. New checkout options.
13/05/04: 2.0.42: Rename, transmission of executable bit, local mode lockserver, proxy password support.
11/05/04: 2.0.41a: Hotfix release for new sourceforge servers. Stable.
21/04/04: 2.0.41: Fix compile under solaris. Stable.
18/04/04: 2.0.40: Modules2 work, plus stabilisation (will be stable if no more bugs reported on it).
15/04/04: 2.0.39: Test release for modules2.
13/04/04: 2.0.38: Bugfix release. Stable.
11/04/04: 2.0.37: Some bug fixes, tidy up unicode support a bit.
20/03/04: 2.0.36: Update OpenSSL version.
09/03/04: 2.0.35: Ability to use checkin timestamp. Flag to fake out WSAD so it works.
03/03/04: 2.0.34: Stable release. Preserve time stamps on edit -z.
02/03/04: 2.0.33: Increase zlib buffer sizes. Disconnect from lockserver before postcommit.
26/02/04: 2.0.32: Bug gixes. Simple password agent.
21/02/04: 2.0.31: More scalability fixes. Release candidate for stable release (will be stable in a few days if no problems).
19/02/04: 2.0.30: Some mergepoint corner cases. Ability to change branch on newly added files.
14/02/04: 2.0.29: Make sure LSA helper is as close to correct as possible (shouldn't crash now even under extreme stress).
12/02/04: 2.0.28: Optimise some of the common code paths. Add PREFIX variable for scripts. Lockserver port no longer public by default (keeps XP SP2 happy).
10/02/04: 2.0.27: Setuid changes (bulletproofing, cope with 'can't happen' failures).
09/02/04: 2.0.26: Use of global 'default' in ACLs. Stable release.
06/02/04: 2.0.25: Bug fixes. Strongly discourage network shares.
01/02/04: 2.0.24: Stable release.
26/01/04: 2.0.23: Small sets of bug fixes. Change DNLEN to 256.
23/01/04: 2.0.22: Fix NT4. Some bug fixes.
20/01/04: 2.0.21: Tidy up & streamline authentication. LSA Authentication DLL to do it properly.
11/01/04: 2.0.20: Better compatibility with jCVS. Improve checkout atomicity. Bug fixes.
03/01/04: 2.0.19: More stablilisation. Make local timestamp code work to client timezone not server one.
30/12/03: 2.0.18: Fixes/Stabilisation.
29/12/03: 2.0.17: Binary diff stablisation. Compressed deltas.
25/12/03: 2.0.16: First implementation of binary diff, as proof of concept only at the moment. 3-way diff for frontends to process.
20/12/03: 2.0.15: Enable lockserver by default. File level locking. Retire ntserver. Unicode fixes. Command input from file. Modify server communication path.
10/12/03: 2.0.14: Innosetup fixes. Chages to COM interface.
07/12/03: 2.0.13: DLL/COM interface to commitinfo/loginfo/etc. Basic (NTLMv1, no enctyption) SSPI for Unix. Option to compress base revisions. Negotiate kerberos in Win32 SSPI. Change to Innosetup v4.
01/12/03: 2.0.12a: Renamed openssl libraries to avoid compatibility problems with other openssl installations.
21/11/03: 2.0.12: Lots of small fixes. Improve compatibility of RCS tools.
30/09/03: 2.0.11: Import could fail in some circumstances (WSAD related I think).
22/09/03: 2.0.10: Fix script handling under Unix. Some import fixes. Propogate permissions to new directories. Fix sserver.
05/09/03: 2.0.9: Revert modules back to pre-2.0.x state. Bidirectional merging (thanks to Phil Richards for this). Some small fixes.
24/07/03: 2.0.8: Improve compatibility of Unix builds
21/07/03: 2.0.7: Modules changes.
14/07/03: 2.0.6: Change behaviour of commitinfo to use stdin. Fix path detection on control panel.
26/06/03: 2.0.5: Fix export -N, and fix a merge bug (not 100% sure it does the right thing in all cases, but it's better than before).
14/05/03: 2.0.4: Small bug fixes, no major stuff.
28/04/03: 2.0.3: Fix crash. Cosmetic fixes. 2.1.1: Sync up to 2.0.3. Checkout symbolic branch revisions.
16/04/03: 2.0.2: Bug fixes (minor stuff... the last release was pretty solid). cvsgui protocol update.
11/04/03: 2.0.1: Everyting that's come up since 2.0.0 was released.. just bug fixes.
04/04/03: 2.0.0: All bug fixes to date. Started 2.1.x tree for development.
27/03/03: 2.0.0rc3: More bug fixes. Ability to switch off reverse DNS to diagnose broken networks.
25/03/03: 2.0.0rc2: All bug fixes to date.
24/03/03: 2.0.0rc1: Changed to better numbering system.
19/03/03: Release 77: Added RCS emulation layer. Now ships with all VC7 libraries so everyone has them.
17/03/03: Release 76: Implement RereadLogAfterVerify. Use 64bit time_t if the compiler supports it. Various other fixes.
10/03/03: Release 75: Worked around openssl bug and pushed sserver into the wild...
10/03/03: Release 74/74a: Build 74 - mostly bugfix catchup. 74a - removed openssl dependent code as openssl for windows has a buffer overrun which causes random failure.
26/02/03: Release 73: All bugfixes discovered since the last release. Nothing too revolutionary
13/02/03: Release 72: More fixes. Last one for a few days at least... I need a rest!.
12/02/03: Release 71: Change to use plink for ssh. Dump files are now useful (albeit big).
10/02/03: Release 70: Mostly just bugfixing.
07/02/03: Moved release branch onto HEAD as the old devel is now out of date.
06/02/03: Release 69: Fix merging that got broke in the last release. First cut of atomic commit code (use with caution).
27/01/03: Release 68: Fix double-free bug in server code. Mergepoint processing.
16/01/03: Release 66: Lots of backports from the devel branch. Make 'watch on' behave as before (forcing read only).
03/01/03: Release 65: Improve RCS compatibility. Fix nasty bug with unusual temp directory permissions.
23/12/02: Release 64: Just a maintenence release to allow some of the ssh stuff to be tested.
17/12/02: Release 63: Catch up with the latest bugfix. Add experimental ssh support. Preserve execute bit on compatible clients.
22/11/02: Release 62: Put the release branch numbering on a better footing. Backport odd bits of code (like rlog -S) from the devel branch. Change taginfo handling.
14/10/02: Release 57j. Fixes a client bug that triggers a nasty DoS in Cvs 1.11.2. Backported gssapi-ad from devel to release. Build using VC.NET now.
23/09/02: Congratulations to our 50,000th visitor, Martin Carer.
13/09/02: Release 57i. Fixed bug whereby conflict status was being lost. Also released Development Alpha 1 (See mailing list for details).
30/08/02: Release 57h. Added cvs lockserver, which makes locking much more sane under NT. Fixed a couple of bugs in the Unix stuff that were annoying me.
12/08/02: Release 57g. Mostly bug fixes.
05/08/02: Major crash, lost everything (including the backups), but with the help of some friendly peeps (Hi Bo!) I've got most of it back. Expect half the links on the site not to work until I get everything back in order.
25/06/02: Bug system back online.
17/06/02: Build 57f. Better behaviour with cygwin ssh. Bypass redirection/pipe stuff when in local mode, in case your $EDITOR is picky.
14/06/02: Build 57e: Several minor bug fixes. Nothing earth shattering - waiting for release of development version in a couple of days.
27/05/02: Build 57d. Restructured the server code so it doesn't create redundant threads - the result should be a faster & more reliable release. The script execution now works properly as per the Unix version. Fixed an obvious bug in the cvs admin command. Made permissions code check at file granularity.
13/05/02: Hopefully the mail backlog is fixed. I'm very busy at the moment but hope to get back onto the release branch to look at any outstanding bugs in the next few days.
11/05/02: Network problems. Incoming email is out of action until Monday at least (waiting for a fix from my ISP).
17/04/02: Build 57c. Bug fixes to last release.
10/04/02: Build 57b. Minor fixes merged from the development branch, mostly.
13/03/02: Release with new zlib.
06/03/02: Release of the .3 release. There's been nothing significant reported in the last week so I think it's OK.
01/03/02: Rc2. More bugfixes than I expected! Fixed passwd, compile on solaris & migration of passwords from old installs.
25/02/02: Rc1. Should be only cosemtic stuff to do on this one. RPM version built (untested as I don't have a redhat system to test it on).
22/02/02: CVSNT backport to Unix/Linux redone, so cvsnt is not not Windows only any more!
19/02/02: Beta 9. Lots of bug fixes. Improvements to 'cvs ls'.
15/02/02: Beta 8a. Silly bug broke ntserver protocol yesterday..
14/02/02: Beta 8. Bug fixes/tidying. Added 'cvs ls' to list files in repository. Delegated impersonation to protocols where necesssary (ntserver, sspi).
04/02/02: Beta 7. Fixed pserver password storage/checking. Fixed encryption in gserver. Fixed 'cvs passwd' so it behaves as expected. Forced login to fail if user is not setup correctly. Added sspi authentication (pserver on steroids...)
28/01/02: Beta 6. As expected beta 5 was a bit borked (Local mode didn't worked) si this one came out fairly quickly. gserver authentication now works (no encryption yet). Lots of bug fixes.
23/01/02: Beta 5. Split off all the authentication into loadable modules. I haven't ported kerberos to the new standard (mainly because I don't use it so can't easily test). This beta is a bit of a risk as I've changed so much.. Beta 6 should be better, if you need stability.
28/12/01: Beta 4. Added ipv6 support. There's been no major bugs reported on the beta code for a while so it's probably safe to start testing it if you've been waiting for it to stabilise.
13/12/01: Beta 3. Fixed crashing bug on edit & some minor glitches.
29/11/01: Merged in passwd & acl stuff patch by Corey Minyard + modifications for per-branch ACLs and some other stuff. Released as 1.11.1.3 beta 1.
09/11/01: Implemented 'rlog -l' as it was missing. Even more debugging stuff.
02/11/01: Fixed cross-domain logins. Lots more debugging using 'cvsservice -test' to see if I track down some of the more unobvious problems.
31/10/01: Added equivalent DST fix for utime function (fixes edit/unedit). Removed WinCVS 1.2 DLL.
26/10/01: Fixed error in impersonation where it asked for more privileges than it required.
17/10/01: Quietly went to build 36... Nothing much changed, but I wanted to get everything in. Unless there's a major bug comes up this will be it for a little while.
14/10/01: Lost the main webserver, *and* the backup hard drive all in one day... I've had to go back a month, so the mail archives now have a big hole in them. I'm slowly getting back to normality. Bear with me.
14/10/01: Separated out the Unicode stuff to add to the Unix client. Largely untested, as I can't find a way to generate Unicode under Linux (the only editor that claims to do so - yudit - produces malformed files, which don't work). Ended up copying some files edited on Notepad under Windows... they worked.
10/10/01: Release version 1.11.1.2. Some small fixes.
04/10/01: Kerberos encryption now supported. Kerberos seems to interoperate with AD but configuration of the server can be difficult (client side is easy enough). Merged several patches contributed by Allen Hadden.
02/10/01: Rewrote the install, and included kerberos tools on install so they you can get tickets. Tested with Active directory (client worked, server didn't).
28/09/01: Next version is now in beta (I don't think the unicode stuff is going to corrupt anything) and I've added kerberos support (untested as I don't have a kerberos config to test against). Thanks to Jonah Tsai for the help with this as I probably wouldn't have had the motivation otherwise.
26/09/01: The alpha version of unicode support is there, so I bumped up the version number. Be careful testing this one. Don't use it on critical data!
25/09/01: Currently working on unicode support. This could take a little while as it's a big change... (Update) Reverted back to when I started this (last week) as unicode is a nightmare. UTF8 looks more hopeful as you wouldn't have to do anything special to the server to make it work, it's more of a client thing (convert unicode->utf8 before uploading, then convert it back again when saving)
02/08/01: Fixed inconsistent handling of '/' and '\' in commitinfo scripts. Fix to allow cvsroot in the root directory.
24/07/01: Better handling of HOME environment variables.
20/07/01: Build 21. Added compatibility for unix/mac clients.
19/07/01: Bug fixes. Fixed crash with pserver & no passwd file (Me). Automatically enables GMT mode in WinCVS 1.3+ (JMG).
17/07/01: Added control panel to control the service, and packaged everything in a self-extracting installer.
11/07/01: At last, the 1.11.1 release! I recommend people upgrade to this version as early as is practical. Update Build 10 was a brown-paper-bag release. Build 11 fixes it. Update I'm having a bad day... Build 13 is it, honest!
09/07/01: Beta 5. Needed fixing to work with non-english versions of NT.
06/07/01: Beta 4. With any luck this should be the final beta. Fixed combination of 'history' and '-z' which probably never worked before.
04/07/01: Beta 3 released. I worked out how to do setuid on NT (and then discovered that the cynwin team had beaten me to it...), so this build attempts to switch users in pserver mode as well as ntserver mode.
27/06/01: Installed bugzilla... See links above. Released 1.11.1 beta 2.
26/06/01: Beta release of sync with 1.11.1. This has taken a while, so I'm not 100% sure of it yet. If you have data you want to keep it's best to stay with 1.10.8 for now.
15/06/01: This release has the changes for WinCVS 1.3.
22/05/01: Merge in the latest version of stat() fixes by jmg. This should cover about 99% of cases now. An equivalent fix will (hopefully) be in the next version of WinCVS
21/04/01: Rebuilt the mailserver today, so the list is borked at the moment. It'll be back soon. Update: Should work now.
12/04/01: The launch of the bcvs project... designed to implement all the things that have been bugging me about cvs for the last year
04/04/01: Nobody report any major problems with the testing versions, so I've released them. GMT mode is off by default for compatibility with stock versions of WinCVS. See the readme.nt file for details.
02/04/01: OK I've uploaded a *testing* version of cvsnt and hacked WinCVS. I haven't throughougly tested them and they *might* cause more problems than they solve. The files are cvs-1.10.8NT-testing-gmt-exe.zip and wincvs-testing-gmt.zip These new versions are not subject to the DST bug (I think).
26/03/01: Lots of DST fun... This is not a bug in cvsnt, nor is it as I initially thought a bug in WinCVS (although it handles it in a different way). It's an NT4/Win2k bug (test: Create a file, write down the time it was created, change your calendar to December. Check the time on the file. Surprised? so was I...). The quick workaround is to do 'cvs status -q' from the root of your sandbox which will touch all the files again.
23/03/01: Initialise sockets before parsing BindAddress.
20/02/01: Strip trailing slashes on home directory. Not sure if this solves anything, but at least one person reported a problem.
08/02/01: Fixes to diff3 algorythm, from Jacob Burckhardt.
07/02/01: More verbose error reporting in ntserver mode.
06/02/01: Added StartPServer and StartNTServer registry entries to selectively enable/disable their respective servers.
30/01/01: Inverted sense of stat() fix. Verified that CVS/Entries now correctly contains UTC in both DST and non-DST. (update: removed it completely. It breaks other stuff.)
23/11/00: Added 'cvs commit -c' to complement 'cvs edit -c'
22/11/00: Added fix by Derek Price which finally puts to bed the DST problems. This was tracked to a bug in the stat() function on Windows.
28/09/00: Fix for mixed '\' and '/' in paths.
14/09/00: Managed to get the CVS repository back up, and merged in the bug fixes pending over the last month.
22/08/00: Sorry there's been no updates for a while... No time for the CVS project at the moment.
18/07/00: Removed 'admin -l' at last.
13/07/00: Limited 'cvs admin' to Administrators only. Added cvsnt2w95lib for a future release of WinCVS.
19/06/00: Merged in 'cvs edit -c' patch, and added a contrib_nt directory containing hacked perl scripts which work with CVSNT.
15/06/00: Another new release. Named pipe handling is done using an explicit CreateFile() rather than fopen (which should allow finer control to fix the 'difficult' cases). Added 'NamedPipeImpersonation' key to enable/disable impersonation in ntserver mode (see readme.nt).
7/06/00: New release with several bug fixes. The M$ tmpnam() function assumed write access to the C:\ directory... aargh!
31/05/00: Further development should happen in the 'cvsnt_devel' project. The main project will be fairly stable and get updated from time-to-time. cvsnt_devel is an 'open' project. If you want to help development email me with a requested username and password, and a brief summary of what you want to work on.
26/05/00: Reverted a change from a while back which caused some pipe operations to fail randomly (seems to be service pack dependent).
25/05/00: Removed named pipe impersonation. The function appears to work only intermittently, and there are probably better ways of doing this.
23/05/00: Limited use of 'cvs admin' to users in the 'CVSAdmin' group.
18/05/00: Fixed handle leak (1 handle per connection). Played around with named pipe info to see if I could get Win95 to connect to it. Failed.
10/05/00: Made hashing algorythm case insensetive. This fixes an obscure 'cvs edit' bug.
09/05/00: Removed some cruft. Server runs in binary mode always.
28/04/00: Fixed silly typo I put in yestarday (sigh!)
27/04/00: Changed lockfile definitions to include lockers' name
26/04/00: Added patch for workgroup-only boxes by John Anderson <
panic@semiosix.com>
25/04/00: Fixed silly install bug. Added mailing list
18/04/00: Cleaned up a nasty deadlock when waiting for repository locks.
17/04/00: Hacked in some multiple-repository stuff. The registry entry used for speciying repository roots has changed - check the README.
11/04/00: Fixed cvs history command.
07/04/00: Strip trailing spaces on cvsroot.
07/04/00: Fixed leaking file handle on client.
06/04/00: Reverted incorrect timezone fix. Added call to _tzset() instead.
05/04/00: New web address -
http://www.cvsnt.org. Had another crack at Win95 - got nowhere.
03/04/00: Slightly modified version of timezone fix (by Chuck Kirschman) added.
30/03/00: Put error message on ntserver client for Win95 (doesn't work, probably never will unless someone has a brainwave). Updated readme.nt
20/03/00: Created cvs95.exe, which is a command line Win95 client. Removed dependencies on winsock2 and various NT-specific authentication routines from client software (slightly cripples local mode on cvs2ntslib). Updated readme.nt.
14/03/00: Fixed to allow init over ntserver
13/03/00: Fixed extra FreeSid() in ntserver (patch by Curt Hagenlocher)
22/02/00: Updated readme.
22/02/00: Merges yesterday broke domain passwords... fixed it. Also added better control of binary commits. Fixed cvswrappers which was broken.
21/02/00: Merged in a couple of changes from Wayne Johnson (
wdtj@yahoo.com). Improved :ntserver: client behaviour and implementation of peer domain authentication.
18/02/00: Named pipe version now impersonates the client. I also make an attempt to get the file owner for locks, etc. However NT usefully always returns 'Administrator'....
15/02/00: Fixed typo in readme.nt
11/02/00: Added 'Bad repository' error when bad repository is passed to authenticate. Repository check is now 'slash-insensitive'.
10/02/00: Fixed crash in ntserver checkout in certain circumstances. Added fixes from Jonathan Gilligan. 09/02/00: Fixed silly typo (sent all output to WinCVS via stdout instead of stderr).
08/02/00: Tidied up WinCVS DLL and made it use pipes (lets see if anything breaks...) Seems a lot faster now.
04/02/00: WinCVS support seems to be stable. Needs to be tidied up but it's ready for stressing....
03/02/00: Preliminary WinCVS support. Project now generates a cvs2ntlib.dll for WinCVS (Buggy at the moment, but usable). Instantly updates WinCVS to use 1.10.8!
01/02/00: Added 'cvs status -q' for listing status of a directory.
31/01/00: Added crypt() functions at last! Now that US import restrictions have been lifted it should be OK.
31/01/00: Fixed bug in which date arguments to update caused an error.
25/01/00: Upgraded to cvs-1.10.8
20/01/00: Forced RCS checkouts to binary from the server, so $Id$ doesn't {expletive} up your source files
19/01/00: Made faster Win32 opendir/readdir functions. Forced reader thread to wait a bit when there's no data.
19/01/00: Fixed silly typo in diff3 code (oops!)
18/01/00: Forced abort when the output channel dies - stops cvs.exe's hanging around using up all the processor time...
14/01/00: Added binary output to diff3 (was corrupting merged files). Fixed build script - tarballs should be up to date now
11/01/00: Added :ntserver: mode which authenticates over named pipes. More secure, in theory (although it needs bashing before I entirely trust it)
06/01/00: Fixed 'add *' which has never worked on Windows.
05/01/00: Fixed binary adds/commits. Basically they didn't work.
05/01/00: Change to allow 'cvs status .' to work.
22/12/99: Fixed silly assertion typo.
21/12/99: Fixed problem with missing output (update -p now works). Start/stop service working properly. Repository root now comes from registry. Updated readme.
17/12/99: Fixed problem with patch updates. Included workgroup patch from Jonathan Gilligan.
13/12/99: Updated to cvs 1.10.7
10/12/99: CVSWeb functionality added Updated zips... the latest set fix some binary problems, and chopping off output when the app terminates
9/12/99: I've finally written a simple readme file.
8/12/99: Fixed crashing... I hesitate to call it 'beta' but it should be largely OK now.
7/12/99: Created cvs repository:
CVSROOT=:pserver:
cvs@betty.magenta-logic.com:/usr/local/cvs checkout cvsnt
7/12/99: Large imports stop with a 'No error' error (!).
6/12/99 :Threading/sockets works fine now.

