refinery
refinery copied to clipboard
Implement UnRAR (xtrar)
The goal of this issue is to Implement unpacking of RAR archives in refinery.
[!WARNING]
RAR unpacking is highly complex. The format defines its own virtual machine, similar to, but significantly more sophisticated than ZPAQ.
There are two attractive reference implementations: 7zip and unrar. A port to pure Python is the desired solution, but reliable external bindings can be taken into consideration. That said, here are some implementation I consider completely inadequate:
- https://pypi.org/project/unrar/
- https://pypi.org/project/pyUnRAR2/
- https://pypi.org/project/rarfile/
All requirements must become available through a single invocation of pip install, there may not be any requirement to make command-line tools available, or build an external library from source.