changelog
- Sun, 20 Jul 2008 20:25:54 -0400
- by Brett Smith <brettcsmith@brettcsmith.org> [Sun, 20 Jul 2008 20:25:54 -0400] rev 77
- Clean the target directory if an extraction attempt failed.
- Tue, 15 Jul 2008 22:18:03 -0400
- by Brett Smith <brettcsmith@brettcsmith.org> [Tue, 15 Jul 2008 22:18:03 -0400] rev 76
- Give extraction stderr more context, and suppress normal cpio stderr junk.
cpio will write a useless "N blocks" message to stderr without --quiet, so
use that.
When we show extraction's stderr to the user, first write a line explaining
what it is, and also don't forget to strip the trailing newline, since
.warning() writes its own.
- Sun, 13 Jul 2008 18:11:08 -0400
- by Brett Smith <brettcsmith@brettcsmith.org> [Sun, 13 Jul 2008 18:11:08 -0400] rev 75
- Update for 6.1, plus some tweaks here and there.
- Sun, 13 Jul 2008 18:01:04 -0400
- by Brett Smith <brettcsmith@brettcsmith.org> [Sun, 13 Jul 2008 18:01:04 -0400] rev 74
- Updates for 6.1 release.
- Sun, 13 Jul 2008 17:54:47 -0400
- by Brett Smith <brettcsmith@brettcsmith.org> [Sun, 13 Jul 2008 17:54:47 -0400] rev 73
- Don't assume .exe files are Cabinet archives just by extension.
.exe files are as likely as not to be archives, so I'd rather not bug the
user for recursive extraction every time they're in an archive. So we'll
detect these sorts of archives by their magic only, which prevents them
from triggering recursive extraction attempts.
- Sun, 13 Jul 2008 17:47:57 -0400
- by Brett Smith <brettcsmith@brettcsmith.org> [Sun, 13 Jul 2008 17:47:57 -0400] rev 72
- Add support for InstallShield archives.
- Thu, 10 Jul 2008 20:55:09 -0400
- by Brett Smith <brett@brettcsmith.org> [Thu, 10 Jul 2008 20:55:09 -0400] rev 71
- Recurse better when the contents were just one file.
- Thu, 10 Jul 2008 20:09:12 -0400
- by Brett Smith <brett@brettcsmith.org> [Thu, 10 Jul 2008 20:09:12 -0400] rev 70
- Tweak wording of recursion question, and TODO.
- Thu, 10 Jul 2008 19:51:53 -0400
- by Brett Smith <brett@brettcsmith.org> [Thu, 10 Jul 2008 19:51:53 -0400] rev 69
- Count files in the archive and report that in the recursion prompt.
I like this because, for example, if you see that all or most of the files
in the archive are recursive, you can go ahead and decide to recurse right
away.
This invoved making the grep tests a little smarter about handling white
space.
- Thu, 10 Jul 2008 19:31:23 -0400
- by Brett Smith <brett@brettcsmith.org> [Thu, 10 Jul 2008 19:31:23 -0400] rev 68
- more TODO updates
- Thu, 10 Jul 2008 18:48:09 -0400
- by Brett Smith <brett@brettcsmith.org> [Thu, 10 Jul 2008 18:48:09 -0400] rev 67
- Update TODO: remove complete tasks, add new items.
- Thu, 10 Jul 2008 18:44:06 -0400
- by Brett Smith <brett@brettcsmith.org> [Thu, 10 Jul 2008 18:44:06 -0400] rev 66
- Don't prompt for one entry handling with -f.
-f makes the answer to the "what do you want to do with this one file"
question clear, so the user shouldn't be asked for the answer.
- Thu, 05 Jun 2008 22:54:10 -0400
- by Brett Smith <brett@brettcsmith.org> [Thu, 05 Jun 2008 22:54:10 -0400] rev 65
- Make the wording on the One Entry question a little clearer.
Unfortunately I now realize that things don't really work when your archive
just contains one *file*, so I'll have to address that later.
- Thu, 05 Jun 2008 22:00:39 -0400
- by Brett Smith <brett@brettcsmith.org> [Thu, 05 Jun 2008 22:00:39 -0400] rev 64
- Add notes about the hg repo.
- Thu, 05 Jun 2008 21:44:38 -0400
- by Brett Smith <brett@brettcsmith.org> [Thu, 05 Jun 2008 21:44:38 -0400] rev 63
- add web site to hg repo
- Thu, 05 Jun 2008 21:24:44 -0400
- by Brett Smith <brett@brettcsmith.org> [Thu, 05 Jun 2008 21:24:44 -0400] rev 62
- Deal with partially extracted tarballs.
If you can only extract part of a tarball -- for example, because it
includes nodes and you're not root -- tar will extract what it can but give
an error code. So now dtrx will only fail if some subprogram threw an
error code *and* nothing actually got extracted. Otherwise, we'll show
whatever errors came up, but we'll still assume the extraction was as
successful as it's going to be.
- Thu, 05 Jun 2008 10:00:38 -0400
- by Brett Smith <brett@brettcsmith.org> [Thu, 05 Jun 2008 10:00:38 -0400] rev 61
- update TODO
- Wed, 30 Apr 2008 21:33:30 -0400
- by Brett Smith <brett@brettcsmith.org> [Wed, 30 Apr 2008 21:33:30 -0400] rev 60
- Add missing test tarballs
- Wed, 06 Feb 2008 19:38:26 -0500
- by brett [Wed, 06 Feb 2008 19:38:26 -0500] rev 59
- [svn] Find self-extracting archives by their file magic only, not extension/mimetype.
The problem with using extensions/mimetypes for this is that it net way too
many false positives. Files ending in .com, .bat, etc. would cause the
user to be prompted for recursive extraction. This makes that problem go
away, and it means that error messages when the user tries to extract a
non-archive .exe will probably be more useful, too.
- Sun, 20 Jan 2008 15:32:02 -0500
- by brett [Sun, 20 Jan 2008 15:32:02 -0500] rev 58
- [svn] Steel FilenameChecker against race conditions.
Since FilenameChecker was just using os.path.exists() to see whether or not
a filename was free, it had a time of check vs. time of use vulnerability.
Matthew was prodding me about the inconsistency with DirectoryChecker, so
that inspired me to fix this. This also entailed some refactoring. Thanks
Matthew.
- Sun, 20 Jan 2008 13:42:48 -0500
- by brett [Sun, 20 Jan 2008 13:42:48 -0500] rev 57
- [svn] Add note about needing syck.
- Sun, 20 Jan 2008 13:39:04 -0500
- by brett [Sun, 20 Jan 2008 13:39:04 -0500] rev 56
- [svn] Add NEWS, and other documentation updates.
- Sun, 20 Jan 2008 12:15:55 -0500
- by brett [Sun, 20 Jan 2008 12:15:55 -0500] rev 55
- [svn] Stupid Python 2.3 doesn't support [].sort(reverse=True).
- Sun, 20 Jan 2008 12:05:14 -0500
- by brett [Sun, 20 Jan 2008 12:05:14 -0500] rev 54
- [svn] Update copyright dates in the license headers.
- Sun, 20 Jan 2008 12:00:35 -0500
- by brett [Sun, 20 Jan 2008 12:00:35 -0500] rev 53
- [svn] Add interactive option to list recursive archives when found.
I'm not really wild about how this is built but since it's a one-off I'm
not sure what a better infrastructure would look like yet.
Also add a test for a -fv combo while I was in there.
- Sun, 20 Jan 2008 11:10:48 -0500
- by brett [Sun, 20 Jan 2008 11:10:48 -0500] rev 52
- [svn] Make just one -v print a list of filenames, a la tar.
- Sun, 20 Jan 2008 09:47:33 -0500
- by brett [Sun, 20 Jan 2008 09:47:33 -0500] rev 51
- [svn] Don't try to rmtree when overwriting just a file.
- Sun, 20 Jan 2008 09:22:13 -0500
- by brett [Sun, 20 Jan 2008 09:22:13 -0500] rev 50
- [svn] Run the cleanup script after the test even if there's no more comparing to do.
- Sun, 20 Jan 2008 04:02:19 -0500
- by brett [Sun, 20 Jan 2008 04:02:19 -0500] rev 49
- [svn] Add a traceback when we catch a signal.
- Sun, 20 Jan 2008 03:53:02 -0500
- by brett [Sun, 20 Jan 2008 03:53:02 -0500] rev 48
- [svn] Handle SIGINT and SIGKILL.
This prevents us from spewing a traceback. We also make one last-ditch
effort to clean up any temporary stuff so it doesn't hog the user's disk.
Also made some aesthetic changes: replace the last instance of run-command
with shutil.rmtree, so the whole function's gone now. Also call it set
instead of Set.
- Sun, 20 Jan 2008 01:59:42 -0500
- by brett [Sun, 20 Jan 2008 01:59:42 -0500] rev 47
- [svn] Fix various bugs in the recursive extraction.
First, 5.0 introduced a regression where it wouldn't find archives hidden
in subdirectories. So fix that.
Then recursive extraction would get confused if the archive was a ONE_ENTRY
and we decided to wrap it or just extract it here. Fix that too: the
extractor keeps track of where it thinks it's extracting to, and then the
handler will change that if necessary.
There are unit tests for all this.
I twiddled some other small thing while I was at it but now I forget what.
- Thu, 17 Jan 2008 22:44:46 -0500
- by brett [Thu, 17 Jan 2008 22:44:46 -0500] rev 46
- [svn] Make dtrx -v print *something*.
paulv wants it to act like tar -v. I'm not yet convinced this is a good
idea because it makes less sense with dtrx moving things around on you. It
could do an ls for you, of course, but... why? But it definitely is weird
to have it be silent.