diff options
Diffstat (limited to 'CHANGELOG')
-rw-r--r-- | CHANGELOG | 263 |
1 files changed, 263 insertions, 0 deletions
diff --git a/CHANGELOG b/CHANGELOG new file mode 100644 index 0000000..f86b1d8 --- /dev/null +++ b/CHANGELOG @@ -0,0 +1,263 @@ +2.1 +- lots of fixes to get the thing working sufficienly for cvs2git +- main features + - optionally detect and display ancestor branch information for + new detected branches + - never allow more than one revision of a file to be in a single + patchset (this may disturb the patchset numbers for historical + data :-( + - use file revisions to help sort, so that initial imports + won't be listed as patchset 1, with patchset 2 as the actual + creation of the files. + - reports log times in localtime (use TZ to override) +- many downstream patches from Debian, special thanks to Marcus + Crafter for maintaining. From the Debian changelog: + - patch from Kim Hansen to fix time calculation bug + - documentation patch from J. Bruce Fields + - directory name handling patch from David Kilzer + - others I'm not sure of, I'd happily update the credit here + +2.0rc1 +- resolve -r symbols during global symbol resolution +- using two -r arguments implicitly sets -b with branch + from second -r (if you can speak cvsps arguments, you'll + understand this) +- fix using cvsps against sourceforge where the actual + server repository path has many instances of the project + name in it and the 'strstr' was finding the wrong one. + instead use the equiv. of 'strrstr' + +2.0b10 +- fix bug where filenames with 'bad' characters (such as ' ') + were being sent unescaped to a shell +- add --no-cvs-direct and -Z 0 to disable cvs-direct and compression +- extend the 'fuzz-factor' concept by keeping a min/max date + encountered for each patchset and fuzz on this interval, + rather than fuzzing on the date of the first encountered + member only, helps for handling REALLY slow commits where a + HUGE number of individual files were modified at a slow trickle. +- it turns out that old versions of cvs have two problems + 1) they don't support 'rlog' (handled) + 2) they don't support 'version', which caused the workaround + for 1) to fail. + Now cvsps detects cvs versions too old to support version and/or + rlog. Additionally, if server is too old, cvs-direct is + simply disabled. +- parse the rc file first so that the command line will override +- add -q to shut-up the warnings + +2.0b9 +- remove Mbinary from valid-response list - can't handle it +- much more (pedantic?) clean-up/close path in cvs_direct + to fix all of the lost data and hanging problems at close +- added rlog capability to cvs_direct, switched main code + to use it. +- added version capability to cvs_direct, now cvsps is + completely independant of cvs binary for all operations! +- added --root and repository command-line arguments, + now cvsps is completely indepentant of having working + directory! + +2.0b8 +- fix the cvs_rupdate calls to use the real repository + instead of the mangled use_rep_path. This broke + cvs_direct generation of add/remove diffs +- fix the sed expression to account for the difference + between +++ and --- in the first and second lines. + This broke remove diffs for direct and external. +- attempt to fix a hang-at-flush bug in cvs-direct + compression handling + +2.0b7 +- implement compression in cvs_direct +- add command line -Z to specify compression level. + applies to cvs-direct and external cvs +- implement 'cvs_diff' in cvs-direct +- use cvs_diff instead of cvs_rdiff because it allows + us to specify all of the lovely diff options +- change system to my_system so ctrl-c will get + through. indirectly, this is necessary because + cvs has loused up the exit codes with the 'cvs diff' + command, making it impossible to determine whether + the program exited abnormally +- add parsing of ~/.cvsps/cvspsrc file at startup + where command line arguments can be listed, one + per line (parameters to arguments on the same line + as the argument). --norc prevents this + +2.0b6 +- fix bug where if -r was specified along with other + filter options, the other filter options were + applied first, and the start/end tags were + never found. +- change -f from strstr to regex +- change regex to EXTENDED regex +- add the --cvs-direct option + +2.0b5 +- add a cvs_check_cap for capability checking. +- use cvs_check_cap to check whether rlog is + supported. it's not supported in 1.11 and + before. warn if non-supported version is + detected +- add --no-rcmds to manually disable rlog and rdiff +- add a fix for some bizarre inconsistencies found + in some random repositories, such as tagged + revisions that don't exist. +- remove the adaptive crap filter and bk_log_border + logic now that Larry has cleaned up the exported + BK->CVS trees. + +2.0b4 +- add the bk_log_border parsing logic to handle the + case where 'cvs log' text was committed into the log +- add 'adaptive crap filter' logic to handle all + of the different corruptions of the cvs log file +- switch to rdiff instead of diff to not require working + files to be checked out. Note: when --diff-opts are + specified, diff must be used (not rdiff) because + rdiff doesn't support options(?!!) + +2.0b3 +- add the --diff-opts for explicitly setting the diff + options. important for setting increased context for + example. +- use 'cvs rlog' instead of 'cvs log'. important if + there are empty directory pruned with cvs update -P + for getting consistent patchset numbering +- clean up patch_set_affects_branch for handling INVALID + tags and the -r especially around a branch point +- add the bkcvs proof-of-concept hack + + +2.0b2 +- change the way INVALID tags are reported - show the exact + patchsets and revisions that conflict, and don't print + anything for 'funky' tags/revisions +- add psid to the patchset structure and pass through tree + once just to assign the numbers. this allows reporting + psid when problems are found (above) +- more code restructuring - move stats to own module +- commenting cleanups +- include the very rudimentary merge_utils.sh functions + I use to assist merging stuff +- change the way diffs are generated, handle individual + members that are before/after the -r tag restrictions +- change the semantics of the -s argument. it now only + restricts the patch sets the same as the other filtration + arguments. new argument -g turns on diff generation +- add manpage section discussing tag handling semantics + +2.0b1 +- major restructuring of source code. single cvsps.c split into + a few modules +- major rework of the data structures in order to support the most + frequently requested, and most desired feature: -r. cvsps + can now associated symbolic tags with specific patchsets, + branches are now associated with the patchset instead of + the individual revision. you can view patchsets committed + after a given symbolic tag, or between two tags. +- changed the handling of same author, same log message commits + on different branches. this now creates multiple patchsets +- changed the handling of 'file xyz initially added on branch xyz' + log messages, they now create hidden patchsets. +- these last two items have made the patchset numbering scheme + incompatible with the old scheme. patchsets are going + to change numbers. + +1.99.1 (not released) +- redid the data structures a bit to 'normalize' the references to + a file revision. this allows the program to detect the case + when a file is added on a branch, and generate the right output + for 'cvsps -s' in this case (frequent bug report) +- added the '-l' option to restrict patchsets based on log descr + content. (patch from Geoff Soutter). added man page for it. +- added the --summary-first option suggested by Andi Kleen to + have the PatchSet summary information for all patchsets at + the head of the output, when multiple patchsets are given + to the -s option. +- added the all: target to Makefile. (patch from Ben Elliston) +- use a single centralized cvsps.cache file per root/repository + this obviates the need to 'cvsps -u' in multiple checked out + trees of the same repository (patch adopted from Baruch Even) +- change the magic name TRUNK (for -b option) to HEAD to be + consistent with cvs. (patch from Henrik Nordstrom) +- when parsing 'cvs log' output, look for the exact strings + that separate the log entries and the files, instead of + just the first 8 characters. this allows a wider variety + of stuff to be in the log format (including actual patchsets). + Inspired by Andy Isaacson. +- added the -p option allowing patchset output to go into + individual files in a named directory. Based on a patch + by Henrik Nordstrom. This is a great idea. Thanks Henrik. + +1.3.3 (why isn't this 1.4 again?) +- added the 'memory reduction' patch from Baruch Even. This patch + greatly reduces the memory footprint of CVSps against a large + repository by using dynamically allocated buffers, and by using + a tree to hold "common" strings (to avoid having a thousand copies + of the string "1.1"). This patch also adds a new option '-t' which + displays some memory usage statistics at the top. + +- added the 00-strip-revision.patch from Steven Tweedie which fixes + a parsing problem when there are locked files in the repository + +- added the 'Tweedie Tweenie' patch from Steven Tweedie (01-stable-tree) + which fixes a bug where interspersed commits could cause unstable + tree behavior. This would happen especially when multiple users commit + at the same time to different parts of a large tree over a slow link. + +- added the --norc option (based on a suggestion by Soren S. Jorvang) + to handle cases where people have bad stuff in their .cvsrc which makes + cvsps fail. I could have added the '-f' unconditionally to the command + line for cvs when run under cvsps, but somehow that seemed dangerous. + +1.3.2 (small feature release) +- added the 'multi-patchset' feature to the -s option, provided in its + entirety by Daiki Ueno <ueno@unixuser.org> + +1.3.1 (bugfix release mostly) +- fix bug with updating cache (-u) having to do with matching new and old + revisions + +- fix timestamp_fuzz_factor bug where the fuzz was applied to loading + from cache by mistake. + +- add a spec file (from Jan IVEN <Jan.Iven@cern.ch>) + +- improve the parameterization of Makefile, and make things relocatable + (from many people, esp. Amitai Schlair <schmonz@schmonz.com>) + +- fix strip_path_len calculation (again - I had munged the prior fix) + Jeffrey Ebert <ebert@sonicsinc.com> + + +1.3 +- fix case where CVSROOT is initial substring of Repository when + creating strip_path variable. + + Thanks to Jean-Michel Rouet <jean-michel.rouet@philips.com> for + this fix. + +- fix case where a subdirectory has a different CVSROOT or Repository + path from the toplevel directory (happens when one project is checked + out inside another projects subdirectory). + + Thanks to Philippe M. Chiasson <gozer@cpan.org> for the fix. + + +1.2 + +- Moved cache file location to CVS/ subdirectory. This is where CVS keeps + it's meta-data, and putting the cache there keeps it out of the way of + other CVS operations. (thanks to Amitai Schlair for suggestion) + +- Added manual page. (thanks to Amitai Schlair for suggestion) + +- Fixed the '-b' option to take a special branch name 'TRUNK' which + will restrict the output to patchsets made on the main trunk. + + +1.1 Initial public release. +-------- end of changelog --------- + |