Commit Graph

68 Commits

Author SHA1 Message Date
dgelessus
5ede8a351a Rework how non-seekable streams are handled by ResourceFile
The broken non-seeking read implementation of ResourceFile is removed,
and non-seekable streams are now handled by reading the entire stream
data first and wrapping it in a BytesIO to make it seekable.

The manual selection of seeking/non-seeking reading has been removed as
well, since it is no longer needed and was already nearly useless.
2019-08-30 23:17:18 +02:00
dgelessus
f798928270 Rewrite, update and expand project descriptions 2019-08-25 21:37:50 +02:00
dgelessus
3e28fa7fe0 Fix typos 2019-08-24 23:38:07 +02:00
dgelessus
8904f6e093 Refactor the rsrcfork.compress module into separate submodules
Each decompressor now has its own module, since they share almost no
code between each other.
2019-08-22 21:20:35 +02:00
dgelessus
4c32987cc3 Add decompression support for 'dcmp' (1)-compressed resources 2019-08-22 18:36:33 +02:00
dgelessus
acd056973e Refactor rsrcfork.compress to prepare for 'dcmp' (1) support 2019-08-22 01:12:29 +02:00
dgelessus
3d444bda10 Move decompressed data length field into common compressed header
Previously it was handled separately (but identically) by both the
system and application decompression functions.
2019-08-21 23:30:20 +02:00
dgelessus
5bc2c0cc81 Add support for "application" compressed resources 2019-08-14 21:24:03 +02:00
dgelessus
360833f940 Refactor rsrcfork.compress to prepare for new compression type support 2019-07-14 21:41:14 +02:00
dgelessus
2fb1d02064 Add initial support for compressed resources
Not all compression formats are supported yet.
2019-07-14 02:16:49 +02:00
dgelessus
ea2fcac692 Bump version to 1.2.0.dev 2019-07-14 02:02:14 +02:00
dgelessus
0d2a3f886b Bump version to 1.1.3.post1 and fix a formatting error in README.rst 2019-07-14 01:51:23 +02:00
dgelessus
43a4073432 Bump version to 1.1.3 2019-07-14 01:30:05 +02:00
dgelessus
6247013592 Add a setuptools entry point for the command-line interface 2019-07-14 01:24:28 +02:00
dgelessus
a9a3168345 Change flag enum definitions to use bit shift instead of literals
Bit shifts are easier to read and less error-prone than typing the
values out by hand.
2018-02-25 17:11:39 +01:00
dgelessus
0b8699c2f1 Do not close user-supplied streams in ResourceFork.close by default
When using ResourceFork.open, the stream is still closed when the
ResourceFile is closed, because the user has no access to the stream.
This matches the behavior of modules like zipfile and tarfile, which
close their underlying streams if they created them themselves, but not
if they were supplied by the user.
2018-02-16 22:47:36 +01:00
dgelessus
2dbf0f7047 Fix ResourceFork.open and __init__ not closing streams in some cases 2018-02-16 22:30:18 +01:00
dgelessus
cbc55fcbc2 Refactor rsrcfork.py into a package 2018-02-12 22:48:46 +01:00