Refresh EbookLib for the 1.0 release
There is a bunch of things we need to do.
Project related:
- Clean up all the PR requests. Accept the relevant ones and cancel others.
- Clean up all the Issues. Close the very old ones, the ones which have answers and etc. Leave the relevant ones which might require some action.
- Introduce verification GitHub workflows when people create PR (black/ruff/isort/black/flake8)
Library related:
- Reformat entire code using black/ruff and validate it later on each PR (when most of PR are closed)
- Write different kind of tests for the existing code so we can be sure that we don't fail in further refactoring of the existing code
- Remove support for Python 2.x. This means removing six dependency and focusing on Python 3.x
- Introduce typing support (and mypy after that)
Documentation related:
- Describe what is the philosophy behind this library to help people better understands what is library capable of doing and what is not
- Write how to create Covers
- Write how to prepare PR (beware to document things, beware of breaking current functionality or APi and etc)
- Write more useful examples how to use the library
Hi, does this project currently have a test suite?
If not, would contributing a test suite using Pytest be accepted in a PR?
From a quick glance it looks like not.
Do we have some automated remediation misses for bad metadata?
<package version="2.0" unique-identifier="PrimaryID" mlns="http://www.idpf.org/2007/opf">
For the above, I don't know why this namespace is wrong, it could be a typo. But this will completely prevent ebooklib from parsing further.
I would be willing to contribute type annotations
Hey @aerkalov are you open to accepting more maintainers? I just put up my first PR into the repo but I'd be up for helping to review and merge MRs, and add some tests and workflows steps to ensure stability
It would be nice to have better support on fixed layout epub.
- add prepagination and spread in manifest meta
- be able to add viewport in each xhtml
cc @aerkalov Are you still following this? I see there are contributors willing to contribute to this, do you have any ideas?
@jgarte
If not, would contributing a test suite using Pytest be accepted in a PR?
It would be! There was something but never commited to the repository. Working on a pytest based one now, will commit at some point. But yes, in general it is required for the next step of modernizing code and ditching six and Python 2.
@cary-rowen
cc @aerkalov Are you still following this? I see there are contributors willing to contribute to this, do you have any ideas?
Yeah. With a bit of delay I cleaned up things in my life and now ready to polish and finish some things. Will clean up existing things, finish some minor releases, set up some new steps with tickets and organise for people who could help. Looking at all the questions I would say documentation needs a lot of improving, more complex sample files, tests and etc.