Skip to content

Releases: ashleysommer/html5lib-modern

HTML5lib-modern Release v1.2

26 Sep 00:05
f1658b2
Compare
Choose a tag to compare

This is a fork of the html5lib project https://github.com/html5lib/html5lib-python
with the intention to make this new release available for users without the overhead of python2.7 support, or the dependency on the six library.

This release is a snapshot of the v1.2-dev codebase plus the addition of the "remove python 2.7" work and the "remove six" work. This version of html5lib works only on Python 3.8 and newer.

** NOTICE **: This html5lib fork exposes a new module named html5lib, that does conflict in your dependency tree with the old html5lib. That means if you have a different package in your tree that depends on the old html5lib, and a new package that depends on html5lib-modern, then the old module may overwrite the new module, or vise versa.

The other two changes in this release are:

  • Vendorizing webencodings
    • Webencodings is a very small library that hasn't been updated in 7 years
    • Like html5lib, it is also burdened with Python 2.7 compatibility and usage of six.
    • Rather than forking webencodings and maintaining that too, a slightly modified standalone build of webencodings module is included in the html5lib-modern module.
    • Without six and external webencodings, html5lib now has zero dependencies.
  • Pep-517 packaging
    • A small pyproject.toml file is included to complement the setup.py file, it enables the use of the new setuptools packaging flow, and the dist packages are now built with the PEP-517 compliant PyPA build tooling.