[Feature Request] Remove dependency on LGPL licensed ansi2html
#2713
Description
Is your feature request related to a problem? Please describe.
Dash currently depends on ansi2html
Line 13 in 7527383
ansi2html
is licensed under LGPL:
This is not a truly permissive license, such as MIT, BSD, or Apache, which can cause headaches when distributing some private code that depends on Dash (and transitively depends on ansi2html
).
LGPL makes it challenging for including Dash inside of a binary due to the restriction that users need to be able to have the ability to swap out the LGPL library for another of their choosing, something infeasible/very tricky for a binary distribution.
For example, this affects users of Pyinstaller, Nuitka, PyOxdizer, etc. that want to package their Python code and dependencies into a stand-alone binary.
Describe the solution you'd like
Dash only depends on fully permissive licensed packages (such as MIT, BSD, Apache).
Related Historical Work
For a long time chardet
was an LGPL package depended on by popular packages, such as requests
:
The community has migrated to a permissively licensed package charset_normalizer
.
One of the motivations was to ensure that the full dependency tree was permissively licensed.