Skip to content

Releases: RDFLib/pySHACL

2022-06-30 - v0.19.1 - Its Docker Time

30 Jun 04:00
Compare
Choose a tag to compare

Note, while this is a normal 0.x release, it also acts as the v1.0 release candidate.

That means, if no glaring bugs or issues are found in this release after two weeks, this version will be re-released as
PySHACL v1.0.

Fixed

  • CLI Output Table formatting crashed when report graph did not contain a resultMessage
  • Executing advanced-mode triples rules can sometimes skip the graph clone step, and incorrectly emits new triples directly into the input data-graph
    • Discovered when investigating #148

Changed

  • Executing advanced triples rules no longer incorrectly emits new triples directly into the input data-graph
    • This may been seen as a breaking change, if your workflow relied on this incorrect behaviour.
    • If you really the rules engine to emit new triples into your input data graph, use the inplace validator option.
  • Updated built-in schema.ttl file to newer version that doesn't have UTF-8 encoding issues

Added

2022-03-22 - v0.19.0 - Old bugs die hard

12 Mar 09:33
Compare
Choose a tag to compare

Note, while this is a normal 0.x release, it also acts as the v1.0 release candidate.

That means, if no glaring bugs or issues are found in this release after two weeks, this version will be re-released as
PySHACL v1.0.

In this release:

Fixed

  • Fixed a long-standing oversight where ShapeLoadErrors and ConstraintLoadErrors were not reported correctly when running PySHACL in CLI mode.
    • Sorry about that. Thanks lots of people for reporting this over the last year. I wish I fixed it sooner.
  • Fixed a long-standing bug where using $PATH in a sh:sparql query on a PropertyShape would not work correctly.
  • Fixed a long-standing bug, that allows PySHACL to more reliably determine if graph source is a file path, or a graph string.
  • Fixed an issue where sh:pattern could not be applied to a Literal that was not an xsd:string or URI.
  • Fixed the outdated/incorrect reported when a PropertyShape's sh:path value gets an unknown path type.

Added

  • New --allow-infos option in CLI mode and Python Module mode.
    • This is like --allow-warnings except it only allows violations with severity of sh:Info.
    • (--allow-warnings continues to allow both sh:Warning and sh:Info as it used to.)
    • Fixes #126, Thanks @ajnelson-nist
  • SPARQL-based Constraints can now substitute arbitrary bound SPARQL variables into their sh:message

Changed

  • --allow-infos and --allow-warnings can now also be enabled with --allow-info and --allow-warning respectively.
  • Removed Snyk check on CI/CD pipeline, because there is an RDFLib issue blocking Snyk on PySHACL from passing.

2022-01-25 - v0.18.1 - Support read from stdin

25 Jan 02:44
Compare
Choose a tag to compare

Added the ability to pipe in SHACL file or ONT file via stdin on Linux or MacOS
Fixed an issue where the filetype detection routine in the RDF loader would fail to reset the file back to the start.

2022-01-13 - v0.18.0 - Python 3.10 support, RDFLib v6.1.1

13 Jan 05:04
Compare
Choose a tag to compare

Added

  • Added Python 3.10 support (when using RDFLib v6.1.1 or greater)
  • Added more type hinting, to conform to the new type hinting added by RDFLib 6.1.1
  • Added Python 3.10 to test suite

Changed

  • Subtle correction in the way sh:prefixs works with sh:declare on the given named ontology.
  • Bumped some min versions of libraries, to gain compatibility with Python 3.10

Fixed

  • Fixed test for issue #76
  • Fixed #76 again (after fixed test)

2021-12-13 - v0.17.3 - Bugfixes

13 Dec 04:02
Compare
Choose a tag to compare

Fixes

  • Don't crash when a SHACL function is registered more than once (eg, if a function is both SPARQLFunction and JSFunction), fixes #108, thanks Gabe Fierro
  • Fixed typo in CLI help output, thanks Alex Nelson
  • Don't print env vars when importing JS module, thanks MPolitze
  • Fix typo preventing OWL-RL >=6.0 to be used with pySHACL, Fixes #111

Added

  • Add Snyk checks to CI/CD pipeline

2021-10-25 - v0.17.2 - CLI Table output

25 Oct 06:34
385c316
Compare
Choose a tag to compare

Fixes

  • SPARQL queries with words "values", "minus", or "service" in its comments no longer incorrectly throw an exception.

Changed

  • Switched from Travis to Drone for CI testing

Added

  • New Table output type for commandline tool. Thanks @nicholascar

2021-10-11 - v0.17.1 - Collection of bugfixes

11 Oct 06:00
Compare
Choose a tag to compare

Fixes

  • Handle transitive subclasses when evaluating sh:targetClass - @gtfierro
  • Improve detection of RDF/XML files when loading unknown content
  • Imported type stubs and resolved ALL MyPy issues! (this was a big effort)
  • Logic fixes in the dataset loader (thanks to inconsistencies exposed by MyPy)

Changed

  • Add special cases to sh:dataclass constraint, when the given shape uses rdfs:Literal or rdfs:Dataclass as the dataclass to match on

Added

  • Add datashapes.org/schema as a built-in graph
  • Added ability to pass a TextIO or TextIOWrapper object into the dataset loader

2021-09-13 - v0.17.0 - Dependency Up

13 Sep 13:10
Compare
Choose a tag to compare

Notice

This version of PySHACL requires RDFLib 6.0.0.
As a direct result of that, this version of PySHACL also requires Python v3.7.

Changed

  • Upped RDFLib min version to 6.0.0 in order to get built-in json-ld
  • Upped OWL-RL to min version 5.2.3 in order to remove json-ld dependency
  • Made min python version v3.7
  • Change black config to use python 3.7 compat code
  • Re-black and isort all source files

minor update

13 Sep 13:00
Compare
Choose a tag to compare

bump OWL-RL version to 5.2.3, and make rdflib_jsonld an optional dependency

2021-09-13 - v0.16.2 - Last RDFLib 5.0.0 release

12 Sep 22:20
Compare
Choose a tag to compare

Notice

This is the last version of PySHACL to support RDFLib 5.0.0, subsequent releases of PySHACL will depend on RDFLib v6.0.0.
As a direct result of that, this is also the last version of PySHACL to support Python v3.6.

Changed

  • Pinned JSON-ld dep to <6.0 to avoid the tombstone release (so not to force rdflib 6.0)
  • Updated minimum Black version to 21.8b0 to fix a black bug
  • Re-black and isort all source files

Fixed

  • Fixed detection of import error when loading json-ld module in RDF loader
  • Fixed Black bug with new version of black