Replies: 1 comment 1 reply
-
Hi - thanks for the suggestion. From my point of view the additional libraries are not really optional, but should be there for JC to be complete. I only allow removal of third party dependencies for corner cases, like systems with limited resources. 99% of the time the full package and dependencies should be installed, so I wouldn't want to change how most users install the package. |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi @kellyjonbrazil,
we discussed optional dependencies previously in #537.
I was wondering if you'd be open to making jc's dependencies (ruamel.yaml, xmltodict, Pygments) actually optional on a packaging level? I.e. I'd imagining something like
pip/uv pip install jc
would install jc without these dependencies (or only dependencies which are necessary for jc to function at all, if there are any in the future) and something likepip install jc[full/all/standard]
would give you jc + all optional dependencies, so that all parsers and optional features would be available. This could also be extended to have more extras for individual features, if anyone would want these.There's precedence for this in i.e. fastapi, which has all not strictly necessary (but recommended) dependencies in a
[standard]
extra and even more optional dependencies in a[all]
extra. (see https://github.com/fastapi/fastapi/blob/master/pyproject.toml#L58)I see two benefits from this:
Thoughts? :)
Beta Was this translation helpful? Give feedback.
All reactions