tools-python icon indicating copy to clipboard operation
tools-python copied to clipboard

Minimize installation size of tools-python

Open meretp opened this issue 2 years ago • 1 comments

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.

meretp avatar Jan 31 '23 09:01 meretp

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"

zvr avatar Feb 01 '23 10:02 zvr