All Versions
73
Latest Version
Avg Release Cycle
35 days
Latest Release
-
Changelog History
Page 2
Changelog History
Page 2
-
v0.17.0.post1
September 15, 2021 -
v0.16.2
September 13, 2021 -
v0.16.1 Changes
August 20, 2021โ Added
- ExpressionConstraintComponent is implemented!
- Use your previously defined SHACL Functions to express complex constraints
- Added DASH-tests for ExpressionConstraintComponent
- Added advanced tests for ExpressionConstraintComponent, SHACLRules, and SHACLFunctions.
- ๐ New Advanced features example, showcasing ExpressionConstraint and others features
๐ Changed
- ๐ Allow sh:message to be attached to an expression block, without breaking its functionality
- A SHACL Function within a SHACL Expression now must be a list-valued property.
- ๐จ Refactored node-expression and path-expression methods to be common and reusable code
- Re-black and isort all source files
- ExpressionConstraintComponent is implemented!
-
v0.16.0 Changes
August 19, 2021๐ Changed
sh:class
Constraint now applies transitively.- This means it will follow
rdfs:subClassOf
relationships right to the top of the hierarchy. - Be careful with this, could lead to recursion or infinite loops!
- This requires a big version number bump because it's technically a breaking change.
- Fixes #87, thanks
@gtfierro
- This means it will follow
-
v0.15.0 Changes
July 20, 2021๐ Fixed
- Compatibility with RDFLib 6.0.0
- Don't use
.term()
(PR #84) - Use Namespaces in a way that works on both RDFLib 5 and 6.
- Don't use
๐ Changed
- Do not patch rdflib with Memory2 store on RDFLib 6.0.0+
- Compatibility with RDFLib 6.0.0
-
v0.14.5 Changes
July 07, 2021โ Added
- ๐ Allow-Warnings is finally available. (Closes #64)
- Setting this option puts PySHACL into a non-standard operation mode, where Shapes marked with severity of sh:Warning or sh:Info will not cause result to be invalid.
- Despite the name, it allows both sh:Info and sh:Warning.
- Try it with
allow_warnings=True
onvalidate()
or-w
in the CLI tool.
๐ Fixed
- ๐ Fixed Abort Mode. (Fixes #75)
- This optional mode allows the validator to exit early, on the first time your data fails to validate against a Constraint.
- Name changed from
abort_on_error
toabort_on_first
- Try it out with
abort_on_first=True
onvalidate()
or--abort
in the CLI tool.
- ๐ Allow-Warnings is finally available. (Closes #64)
-
v0.14.4 Changes
May 26, 2021โ Added
- โ Added an iterate_rules option, that causes SHACL Rules to run repeatedly until reaching a steady state. (Closes #76)
- Works with SPARQLRules, TripleRules, and JSRules.
- Variables {$this}, {$path}, and {$value} will be populated in the sh:message of a SPARQL Constraint. (Closes #30)
- โ Added an iterate_rules option, that causes SHACL Rules to run repeatedly until reaching a steady state. (Closes #76)
-
v0.14.3 Changes
February 20, 2021๐ Changed
- ๐ Relaxed the Max Evaluation Depth from 28 to 30, we were seeing some real-world cases where meta-shacl was failing on large Shapes Graphs at 28 levels deep.
- sh:namespace values can now be xsd:anyURI or xsd:string or "literal string", but now cannot be .
- ๐ sh:order can now support xsd:decimal values and xsd:integer values, and can be interchanged at will.
-
v0.14.2 Changes
January 02, 2021โ Added
- Potential speedups when executing validation by lazy-loading large modules which may never be required in a normal validation run.
๐ Fixed
- ๐ Black and Flake8 issues outstanding from 0.14.1 release.
- โช Workaround a RDFLib bug trying to import
requests
when requests is not required to be installed.- This bug will still be observed if you use SPARQLConstraints, SPARQLFunction or JSFunction features, but it can be worked around by simply installing
requests
in your python environment.
- This bug will still be observed if you use SPARQLConstraints, SPARQLFunction or JSFunction features, but it can be worked around by simply installing
-
v0.14.1 Changes
December 23, 2020โ Added
- Inplace Mode, for when cloning your datagraph is undesirable
- Normally pyshacl will create an in-memory copy of your datagraph before modifying it (when using ontology mixin, or inferencing features)
- This might be unwanted if your datagraph is very large or remote and cloning it into memory is not a good option
- Enabling inplace mode will bypass this clone step, and apply modification operations directly on your data_graph (use with caution!)
- Enable with
inplace=True
kwarg onvalidate()
. - Inplace mode is not yet available via the CLI application, and perhaps doesn't even make sense to have it available there.
๐ Fixed
- Inferencing will no longer incorrectly place expanded triples into your original data_graph, unless you enable 'inplace'
- SHACL-JS loader will no longer fail if the
regex
module is not installed (it will fall back to using builtinre
) - โ SHACL-Rule DASH-tests will now pass when the SHACL-rule is applied on multigraph (Dataset or ConjunctiveGraph)
- Inplace Mode, for when cloning your datagraph is undesirable