tools-python
tools-python copied to clipboard
Minimize installation size of tools-python
The current installation of tools-python (with all dependencies) is about 9 MB. We want to try to minimize this size. Possible options are to make dependencies optional or to replace them with more lightweight alternatives.
There should be a way to specify different installation feature sets (and therefore sizes), like:
pip install spdx-tools ; # default, probably minimal
pip install spdx-tools[full] ; # everything
pip install spdx-tools[json] ; # I only care about JSON readers/writers
pip install spdx-tools[rdf,excel] ; # specify features needed
I wrote "probably minimal" on the first, because I don't know whether it has changed, but in the past you could not have "extras" producing a smaller set of features than the default. I mean you could not have pip install spdx-tools[min] install even less than pip insatall spdx-tools. Therefore the default (without any option) should install an absolute minimum -- probably without any reader/writer.
Once a feature set is installed, if something not provided is requested, an error should be raised "not implemented, install [foo] extra for this functionality"