TODO

Fri, 19 Oct 2007 23:03:17 -0400

author
brett
date
Fri, 19 Oct 2007 23:03:17 -0400
branch
trunk
changeset 29
5fad99c17221
parent 28
4d88f2231d33
child 31
c3a2760d1c3a
permissions
-rw-r--r--

[svn] Add support for Ruby Gems, and extracting metadata from .deb/.gem files.

We should always extract to a new, temporary directory (except maybe in the
straight decompression case), and then move that directory based on what we
actually want.  This has several advantages:

* Much easier to check whether or not the archive is a bomb (O(1) operation)
* Can find other archives more reliably
* Can set up a direct pipe from a decompressed to the unarchiver, since we're
  not interested in reading it multiple times anymore.
* All this should mean x is faster, too.

Things which I have a use case/anti-use case for:
* CAB extraction.
* Use file to detect the archive type.
* Support lzma compression (http://tukaani.org/lzma/download)
* Support pisi packages (http://paketler.pardus.org.tr/pardus-2007/)
* Steal ideas from <http://martin.ankerl.com/files/e>.
* Figure out what the deal is with strerror. (done?)
* Better error messages (file doesn't exist, isn't readable, etc.)
* Consistently raise and handle exceptions.

Things that are generally good:
* Better tests.
* Better error messages.

Things I think might be good but can't prove:
* Take URLs as arguments.
* Consider having options about whether or not to make sane directories,
  have tarbomb protection, etc.
* Use zipfile instead of the zip commands.
* Processing from stdin.
* Extracting control.tar.gz from deb files.
* shar support.

mercurial