OLD | NEW |
1 | 1 |
2 XZ Utils To-Do List | 2 XZ Utils To-Do List |
3 =================== | 3 =================== |
4 | 4 |
5 Known bugs | 5 Known bugs |
6 ---------- | 6 ---------- |
7 | 7 |
8 The test suite is too incomplete. | 8 The test suite is too incomplete. |
9 | 9 |
10 If the memory usage limit is less than about 13 MiB, xz is unable to | 10 If the memory usage limit is less than about 13 MiB, xz is unable to |
11 automatically scale down the compression settings enough even though | 11 automatically scale down the compression settings enough even though |
12 it would be possible by switching from BT2/BT3/BT4 match finder to | 12 it would be possible by switching from BT2/BT3/BT4 match finder to |
13 HC3/HC4. | 13 HC3/HC4. |
14 | 14 |
15 The code to detect number of CPU cores doesn't count hyperthreading | 15 The code to detect number of CPU cores doesn't count hyperthreading |
16 as multiple cores. In context of xz, it probably should. | 16 as multiple cores. In context of xz, it probably should. |
17 Hyperthreading is good at least with p7zip. | 17 Hyperthreading is good at least with p7zip. |
18 | 18 |
19 XZ Utils compress some files significantly worse than LZMA Utils. | 19 XZ Utils compress some files significantly worse than LZMA Utils. |
20 This is due to faster compression presets used by XZ Utils, and | 20 This is due to faster compression presets used by XZ Utils, and |
21 can be worked around by using "xz --extreme". However, the presets | 21 can often be worked around by using "xz --extreme". With some files |
22 need some tweaking and maybe this issue can be minimized without | 22 --extreme isn't enough though: it's most likely with files that |
23 making the typical case too much slower. | 23 compress extremely well, so going from compression ratio of 0.003 |
| 24 to 0.004 means big relative increase in the compressed file size. |
24 | 25 |
25 xz doesn't quote unprintable characters when it displays file names | 26 xz doesn't quote unprintable characters when it displays file names |
26 given on the command line. | 27 given on the command line. |
27 | 28 |
28 tuklib_exit() doesn't block signals => EINTR is possible. | 29 tuklib_exit() doesn't block signals => EINTR is possible. |
29 | 30 |
| 31 SIGTSTP is not handled. If xz is stopped, the estimated remaining |
| 32 time and calculated (de)compression speed won't make sense in the |
| 33 progress indicator (xz --verbose). |
| 34 |
30 | 35 |
31 Missing features | 36 Missing features |
32 ---------------- | 37 ---------------- |
33 | 38 |
34 xz doesn't support copying extended attributes, access control | 39 xz doesn't support copying extended attributes, access control |
35 lists etc. from source to target file. | 40 lists etc. from source to target file. |
36 | 41 |
37 Multithreaded compression | 42 Multithreaded compression |
38 | 43 |
39 Multithreaded decompression | 44 Multithreaded decompression |
40 | 45 |
41 Buffer-to-buffer coding could use less RAM (especially when | 46 Buffer-to-buffer coding could use less RAM (especially when |
42 decompressing LZMA1 or LZMA2). | 47 decompressing LZMA1 or LZMA2). |
43 | 48 |
44 I/O library is not implemented. It will possibly be named libzzf. | 49 I/O library is not implemented (similar to gzopen() in zlib). |
| 50 It will be a separate library that supports uncompressed, .gz, |
| 51 .bz2, .lzma, and .xz files. |
45 | 52 |
46 lzma_strerror() to convert lzma_ret to human readable form? | 53 lzma_strerror() to convert lzma_ret to human readable form? |
47 This is tricky, because the same error codes are used with | 54 This is tricky, because the same error codes are used with |
48 slightly different meanings. | 55 slightly different meanings, and this cannot be fixed anymore. |
49 | 56 |
50 | 57 |
51 Documentation | 58 Documentation |
52 ------------- | 59 ------------- |
53 | 60 |
54 Some tutorial is needed for liblzma. I have planned to write some | 61 Some tutorial is needed for liblzma. I have planned to write some |
55 extremely well commented example programs, which would work as | 62 extremely well commented example programs, which would work as |
56 a tutorial. I suppose the Doxygen tags are quite OK as a quick | 63 a tutorial. I suppose the Doxygen tags are quite OK as a quick |
57 reference once one is familiar with the liblzma API. | 64 reference once one is familiar with the liblzma API. |
58 | 65 |
59 Document the LZMA1 and LZMA2 algorithms. | 66 Document the LZMA1 and LZMA2 algorithms. |
60 | 67 |
OLD | NEW |