Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Noticed this while doing #1991
pyshacl
is currently in its own (required) poetry group.Poetry groups are only visible when installing with poetry -- ie. they are invisible to pip. the docs say:
If one builds an sdist, one will notice that
pyshacl
is not present in thePKG-INFO
, which is what pip will use to source dependencies.the
pyshacl
package is only used in one place in validators, but nonetheless it seems like that's intended to be an optional package available at runtime.This PR changes it to be an
extra
, so one installs it likepip install linkml[shacl]
(orpoetry install -E shacl
.I also added it to a
tests
extra group, so that we might gradually work towards #1784 where all formats have their own extras group, and one can install everything likepip install linkml[all]
or whatever, and we also can install for tests likepip install linkml[tests]
.with this PR, the
PKG-INFO
has these extra lines:Caveats
This means that you need to do
poetry install -E tests
when installing (rather than justpoetry install
. this is imo a good thing, because it may gradually make it possible for people who do use poetry to install from the lockfile without needing to install all testing and docs dependencies if they don't want to.