-
Notifications
You must be signed in to change notification settings - Fork 10
/
Changelog
216 lines (187 loc) · 12.3 KB
/
Changelog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
2024-xx-xx - v3.1.1.dev0:
* WARNING: This is a development snapshot, not a stable release.
2024-05-20 - v3.1.0:
* Drop support for Python 3.5.
* Python 3.6 is now the minimum supported version.
* Add support for Python 3.12 (Thanks to Louis Sautier).
* Add support for Python 3.13.
* Correctly close files in various situations.
2022-10-30 - v3.0.0:
* Tested platforms: Linux and FreeBSD. If there is interest in supporting more platforms (e.g. OSX and Windows), please get in contact with the project.
* Support for Python 3 (Thanks to Steven Xu for major contributions).
* Python 3.5 is now the minimum supported version.
* Dropped fchksum support, as it does not support Python 3.
2019-03-27 - v2.0.0:
* Now fully unicode aware. Work is done internally in unicode, only translating to encoded form on input/output.
* Added --encoding option.
* Specifying --encoding=raw will allow working with broken filenames. (But really, you should just fix them, if possible.)
* Torrent files now default to UTF-8 filename encoding, and specify the encoding field in the metainfo.
* The encoding of text checksum files that start with a Unicode BOM is auto detected.
* Python 2.3 is now the minimum supported version.
* Decode the torrent comment field too.
* Changed handling of -f: Now all options are checked before testing/creating the file. (Benjamin Hohl)
* Torrent file handling no longer requires BitTorrent client to be installed.
* Support for GNU coreutils sha224sum, sha256sum, sha384sum and sha512sum formats.
* New project home: https://github.com/cfv-project/cfv
2009-06-07 - v1.18.3:
* Fix python2.6 md5 and sha module deprecation warnings.
2008-06-22 - v1.18.2:
* Print help output to stdout under non-error conditions. (Requested by Simon Howard)
* Work around mmap file descriptor leak in Python 2.4.2.
* Support different module layout of BitTorrent 5.x.
* Fix "struct integer overflow masking is deprecated" warning. (Reported by jjacobs2)
* Add --private_torrent flag. (Requested by Anders Henke)
* Work around bug in Python (only manifests with 64-bit Python version >= 2.5) which causes checksums of files > 4GB to be incorrectly calculated (when using mmap, eg, when the progress meter is disabled or not shown.)
2005-02-04 - v1.18.1:
* Fix TypeError when using progress meter and checksumming stdin.
* Fix progress meter spew when checksumming special files(devices, named pipes, etc.)
* Sort list of checksum types in --help output.
* Make -t help (or -t with unknown type) print list of types, with descriptions.
2005-01-11 - v1.18:
* Added special hack for multi-file .torrents to automatically strip the first path component off if it doesn't exist. (Allows testing .torrent files within their dirs without having to manually do --strip=1)
* Added .torrent creation support.
* Fix testing torrents which contain large number of files giving "too many open files" errors.
* Fix failure of -n in renaming bad files when testing a torrent file on windows due to windows not allowing renaming a file that is open.
* Fix TypeError when using --progress=yes and not running under a tty and COLUMNS env var is set. (Reported by Steven Mueller)
* Work around mmap error on large files. (Reported by Sapheriel)
* Added sha1sum file support (-t sha1).
2004-07-10 - v1.17:
* Handle .torrent files that have the creation date encoded as a string.
* Handle .torrent files that specify the filename encoding.
* Fix exceptions when trying to print unicode filenames containing non-ascii characters.
* Add -s option to search for misnamed files.
* Make .torrent support try BitTornado module if BitTorrent isn't found.
* Fix --strippaths=0 handling of multiple leading slashes and of dos-style drive letters with forward slashes.
* Improve handling of " and , in filenames in CSV files. (CSV parsing still won't be 100% correct, but doing any better would basically require adding a dependency on some external csv module..)
* Replace automagic buggy-quoting workaround with --unquote option, fixes --strippath handling of quoted filenames and avoids potential insanity with -n, -s, and quoted filenames.
2003-11-20 - v1.16:
* Optimize progress meter display when checking lots of small files.
* Add .torrent file support (requires BitTorrent.)
2003-08-23 - v1.15:
* Add -l/-L options to toggle symlink following.
* When following symlinks, don't die on cycles.
* Ignore redundant FileDesc packets in PAR2 files.
* Check that PAR2 files have FileDesc packets for every file listed in the Main packet.
* Cache file checksums in memory in case they are verified by multiple checksum files.
* -u now works correctly with deep checksum files.
* -u option will now show dir/* if no files in a dir were verified. (--list=unverified still lists each unverified file.)
* -uu can be used to force showing all unverified files.
* Fix handling of the [files...] arguments in recursive test mode.
* Add .p[0-9][0-9] (par1 recovery files) to the list of checksum file extensions to test automatically.
* Fix FutureWarning "%X of negative int ..." on Python 2.3.
* Add progress meter for file checksumming. (Can be toggled with the progress option.)
* Only the new version 1.7 of fchksum module is supported.
* Fix fixpaths option on windows.
2003-05-23 - v1.14:
* Support md5sum files with comments in them.
* Support PAR2 files.
* Specifying -t in testmode without -f will cause cfv to only test files it finds if they are of the given type.
* Doesn't try to test csv files with more than 4 fields as csv4 files.
* Updated my email address. The old one should still forward for about a year, but you should switch to using the new one when contacting me.
* Support _cfvrc as an alternate name for .cfvrc.
* Add win32src zip and win32 installer exe (using NSIS and py2exe).
2002-12-18 - v1.13:
* Fix exception in test mode when specifying -t and -f with a non-existent file.
* Add support for sfvmd5 files generated by some windows software. (Just a SFV formatted file using md5 checksums rather than crc32.)
* Handle quoted paths and filenames in csv4 files.
* Add filename_type .cfvrc option to allow user overriding of what type of checksum file to create when -t isn't specified and -f is.
* Only print the md5sum "tested in textmode" warning once, and print a count at the end.
2002-09-23 - v1.12:
* Fix make install when target directories don't already exist. (Reported by Svend S. Sorensen)
* Fix cfv -u -t blah -f foo.blah from reporting foo.blah as unverified.
* Make create mode also display separate stats per checksum file.
* Make create mode be verbose in verbose mode.
* Fix exception on error creating/writing a checksum file. (Eg, in a readonly dir, or a full drive.)
* Accept files with weird line endings (eg \r\r\n).
* Add support for (JPEG Sheriff format) .crc files. (The dimensions column is only added if The Python Imaging Library is available.)
* Fix printing incorrect paths for subsequent files in recursive mode after encountering a directory that could not be accessed.
2002-04-08 - v1.11:
* Due to architectural changes, unicode requirements(for .par support), etc, cfv now requires python 1.6 or higher.
* Add test-only support for PAR files. (python 1.6 or 2.2 recommended for better performance.)
* Print first SFV comment line in testing from blah.sfv line. (usually shows creating sfv program/creation time.)
* Add --strippaths option. (Like patch's -p/--strip option.)
* Revamp --showpaths option parsing, and add relative mode. (Note, auto-relative is now the default, to get the old behaviour specify "showpaths auto-absolute" in your .cfvrc)
* Added cmdlineglob config option.
* Added -Q command line arg to show only status lines.
* Alternate method of setting verbose .cfvrc option (using command line verbosity option letter.)
2001-12-06 - v1.10:
* Fix file.close() exception on -C in empty dir.
* Add mmap support for faster checksumming when not using fchksum module.
* Add CFV_NOFCHKSUM and CFV_NOMMAP env vars. (Mostly for testing/debugging.)
* Handle files made by buggy programs that add quotes to filenames.
* Print stats about number of case differences and quoted filenames.
* In recursive mode, an unaccessible dir no longer causes an exception. (Reported by Harley Gorrell)
* Fix excessive memory usage on deep recursive create mode in tree with lots of files. (Reported by Harley Gorrell)
* Display separate stats per checksum file, and (if needed) a total at the end.
* In create mode, an already existing checksum file now causes a cferror, rather than an immediate exit.
2001-09-03 - v1.9:
* Support bsd style md5 files (-t bsdmd5).
* Make test.py not attempt to verify against md5sum if it is not available (ie, on bsd). (reported by Hannu Liljemark)
* No longer attempt to set user/group in make install.
* Add raw listing output options. (--list/--list0)
2001-05-17 - v1.8:
* Fixed ignore case for deep (-rr) checksum files.
* Added gzipped checksum file support.
* Added change to directory first option (-p).
* Makefile uses PYTHON var instead of hardcoded "python".
* Added configurable renaming of bad files.
* Extended --version output.
2001-02-27 - v1.7.2:
* Fixed makefile not finding pkgdir if installing to /usr/local and no site-packages in /usr/local is in python's sys.path.
* Added -q option.
* Make exit status a bitwise or of the various possible error types.
* Added cferror counter/exit status for unrecognized checksum files.
* Catch errors opening checksum files and set cferror counter instead of exiting with unhandled exception.
* Add error message for reading unrecognized lines in a checksum file, and set cferror counter.
* Use Longs for per file sizes too, should be no large file issues anymore. (if you are using fchksum you should upgrade to 1.3 too.)
* Time format uses .3 instead of .2 precision.
2001-02-22 - v1.7.1:
* Fixed reading md5sum files that had dos eol on non-dos systems.
* Loosened .sfv file recognition all the way.
* Added --help alias for -h.
* Added --version.
2000-11-19 - v1.7:
* Made ignore case option always search for correct filename if using show unverified files mode. Fixes problem with incorrectly showing some files as unverified on FAT drives.
* Caches dir entries for much faster ignore case operation.
* Accepts - to represent stdin for data source and/or stdout for destination of checksums.
* Added -VV option.
* Errors printed to stderr instead of stdout.
* Uses class instances instead of imp module for checksum types.
* If using fchksum module, you now need at least version 1.2 (due to stdin ability).
2000-11-08 - v1.6:
* Added ignore case option.
* Added fix paths option.
* Added handler for csv files with the dir separate from the file name (-t csv4).
* Makes any absolute paths found in checksum files into relative paths.
* Added show paths option.
2000-10-17 - v1.5.2:
* Added test suite.
* Fixed 'x not in list' error when using -u and checksum file was not among the files to be tested. (First bug found with test suite ;)
* Exits with non-zero status if any errors occurred.
2000-10-12 - v1.5.1:
* Fixed install wrapper stuff to compile _after_ it has been installed into the target dir.
2000-10-12 - v1.5:
* Fixed "illegal argument type" error when creating csv format files.
* Added note to manpage about -rr and path separators.
* Added show unverified files option.
* Fixed md5 file testing when specifying files to test as command line args.
2000-10-05 - v1.4:
* Added make install-wrapper option for faster startup times.
* Uses long int value for total bytes read, to avoid overflow if you are checking a lot of files. (>=2GB, on 32bit archs)
* Fixed divide by zero error on systems with lower resolution timers (ie, python-win32)
* Ignore blank lines in .cfvrc
* Loosened .sfv file recognition some more.
* Handle error on creating/writing checksum file better.
* Add handler for .csv files with no crc field (-t csv2).
2000-08-16 - v1.3:
* .sfv file recognition loosened a bit (nvCRC32 says generated using instead of by)
* uses fchksum module if available. (1.1x-2.0x faster)
2000-08-11 - v1.2:
* recursive mode (-r and -rr)
* only creates checksum file when there is actually something to put in it
* if user doesn't specify files on command line, don't print errors about trying to add any directories and such
2000-07-10 - v1.1:
* md5sum support (-t md5)
* config file support
* missing file only check (-m)
2000-06-22 - v1.0: first release