TODO

Thu, 05 Jun 2008 10:00:38 -0400

author
Brett Smith <brett@brettcsmith.org>
date
Thu, 05 Jun 2008 10:00:38 -0400
branch
trunk
changeset 61
23eb5e0a6665
parent 52
cf191f957fd0
child 65
0aea49161478
permissions
-rw-r--r--

update TODO

61
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
1 -*- text -*-
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
2
45
37d555407334 [svn] At work I was getting an unhelpful "No such file or directory" error when I
brett
parents: 40
diff changeset
3 To do:
61
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
4
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
5 * When there's partial success in extracting an archive, go ahead and use
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
6 the partial version. To do this, when extracting, save the stderr of
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
7 everything that gets run, along with its status code. Let the top-level
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
8 loop decide what to do with that information. It should do this by
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
9 looking in the extraction directory/file and seeing if there's anything
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
10 actually there. If there is, it should go ahead and keep it, and report
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
11 errors as warnings (including stderr). Otherwise, it should treat it as
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
12 an unsuccessful extraction.
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
13
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
14 * The text for when directory names don't match confused Paul. Consider
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
15 alternatives. He thinks it would be cool if the actual/expected
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
16 directory names aligned in the output; might need to do your own wrapping
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
17 for this.
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
18
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
19 * When we list how many archives are in the file, show a count, along with
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
20 the number of regular files in the archive too. "foo.tar contains 5
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
21 other archives, out of 81 files total."
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
22
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
23 * When we extract a compressed file, check to see if it itself is an
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
24 archive. Follow all the usual rules for recursive extraction when we do
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
25 this.
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
26
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
27 * It seems like when you extract an archive that only has one file, with
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
28 -f, you still get prompted about what to do with it. -f should always
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
29 assume that everything gets extracted in the current directory. Track
23eb5e0a6665 update TODO
Brett Smith <brett@brettcsmith.org>
parents: 52
diff changeset
30 this bug down.
45
37d555407334 [svn] At work I was getting an unhelpful "No such file or directory" error when I
brett
parents: 40
diff changeset
31
3
5172456c3588 [svn] Ideas off the top of my head.
brett
parents:
diff changeset
32 Things which I have a use case/anti-use case for:
22
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 18
diff changeset
33 * Support pisi packages (http://paketler.pardus.org.tr/pardus-2007/)
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 18
diff changeset
34 * Steal ideas from <http://martin.ankerl.com/files/e>.
40
ee6a869f8da1 [svn] Be a little nicer about explaining that we can't extract to the current
brett
parents: 35
diff changeset
35 * More consistently raise and handle exceptions.
3
5172456c3588 [svn] Ideas off the top of my head.
brett
parents:
diff changeset
36
5172456c3588 [svn] Ideas off the top of my head.
brett
parents:
diff changeset
37 Things that are generally good:
6
77043f4e6a9f [svn] The big thing here is recursive extraction. Find archive files in the
brett
parents: 5
diff changeset
38 * Better tests.
5
36f352abd093 [svn] Deal with a bunch of low-hanging fruit:
brett
parents: 4
diff changeset
39 * Better error messages.
3
5172456c3588 [svn] Ideas off the top of my head.
brett
parents:
diff changeset
40
5172456c3588 [svn] Ideas off the top of my head.
brett
parents:
diff changeset
41 Things I think might be good but can't prove:
8
97388f5ff770 [svn] Make ExtractorApplication suck less. Now the strategies for handling
brett
parents: 7
diff changeset
42 * Consider having options about whether or not to make sane directories,
97388f5ff770 [svn] Make ExtractorApplication suck less. Now the strategies for handling
brett
parents: 7
diff changeset
43 have tarbomb protection, etc.
3
5172456c3588 [svn] Ideas off the top of my head.
brett
parents:
diff changeset
44 * Use zipfile instead of the zip commands.
5172456c3588 [svn] Ideas off the top of my head.
brett
parents:
diff changeset
45 * Processing from stdin.
18
1600807a32bd [svn] Add basic documentation, and make this version 3.0.
brett
parents: 13
diff changeset
46 * shar support.

mercurial