• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

sabyenc3.egg-info/H03-May-2022-5346

src/H07-Jun-2020-806482

MANIFEST.inH A D07-Jun-202023 11

PKG-INFOH A D07-Jun-20202.3 KiB5346

README.mdH A D07-Jun-20201.3 KiB3327

setup.cfgH A D07-Jun-202042 53

setup.pyH A D07-Jun-20202.1 KiB5327

README.md

1SABYenc 3 - yEnc Decoding for Python 3
2===============================
3
4Modified the original yenc module by Alessandro Duca <alessandro.duca@gmail.com>
5for use within SABnzbd.
6
7The module was extended to do header parsing and full yEnc decoding from a Python
8list of chunks, the way in which data is retrieved from usenet.
9This is particularly beneficial when SSL is enabled, which limits the size of each chunk to 16K. Parsing these chunks in python is much more costly.
10Additionally, this module releases Python's GIL during decoding, greatly increasing performance of the overall download process.
11
12---
13
14This module only works with Python 3, the source code of the Python 2 version (`sabyenc`) can be found [here](https://github.com/sabnzbd/sabyenc/tree/sabyenc-python2).
15
16Installing
17===============================
18As simple as running:
19```
20pip install sabyenc3 --upgrade
21```
22When you want to compile from sources, you can run in the `sabyenc` directory:
23```
24python setup.py install
25```
26
27Testing
28===============================
29For testing we use `pytest` (install via `pip install -r tests/requirements.txt`) and test can simply be executed by browsing to the `sabyenc` directory and running:
30```
31pytest
32```
33Note that the `sabyenc3.encode` function is currently not covered by unit tests.