History¶
2.0.0 (2020-11-01)¶
Removed support for EOL Python 2
Testing against Python 3.6+ and Pypy3
1.5.3 (2018-11-20)¶
Reorganised source code to /src
Added Python 3.7 support
Removed Python 3.3 support due to end-of-life
plus minor improvements and bug fixes
1.5.2 (2018-02-06)¶
Fixed association relation in RDF serialisation
Fixed compatibility with networkx 2.0+
1.5.1 (2017-07-18)¶
Replaced pydotplus with pydot (see #111)
Fixed datetime and bundle error in RDF serialisation
Tested against Python 3.6
Improved documentation
1.5.0 (2016-10-19)¶
Added: Support for PROV-O (RDF) serialization and deserialization
Added: direction option for
prov.dot.prov_to_dot()
Added:
prov.graph.graph_to_prov()
to convert a MultiDiGraph back to aProvDocument
Testing with Python 3.5
Various minor bug fixes and improvements
1.4.0 (2015-08-13)¶
Changed the type of qualified names to prov:QUALIFIED_NAME (fixed #68)
Removed XSDQName class and stopped supporting parsing xsd:QName as qualified names
Replaced pydot dependency with pydotplus
Removed support for Python 2.6
Various minor bug fixes and improvements
1.3.2 (2015-06-17)¶
Added: prov-compare script to check equivalence of two PROV files (currently supporting JSON and XML)
Fixed: deserialising Python 3’s bytes objects (issue #67)
1.3.1 (2015-02-27)¶
Fixed unicode issue with deserialising text contents
Set the correct version requirement for six
Fixed format selection in prov-convert script
1.3.0 (2015-02-03)¶
Python 3.3 and 3.4 supported
Updated prov-convert script to support XML output
Added missing test JSON and XML files in distributions
1.2.0 (2014-12-19)¶
Added:
prov.graph.prov_to_graph()
to convert aProvDocument
to a MultiDiGraphAdded: PROV-N serializer
Fixed: None values for empty formal attributes in PROV-N output (issue #60)
Fixed: PROV-N representation for xsd:dateTime (issue #58)
Fixed: Unintended merging of Identifier and QualifiedName values
Fixed: Cloning the records when creating a new document from them
Fixed: incorrect SoftwareAgent records in XML serialization
1.1.0 (2014-08-21)¶
Added: Support for PROV-XML serialization and deserialization
A
ProvRecord
instance can now be used as the value of an attributesAdded: convenient assertions methods for
ProvEntity
,ProvActivity
, andProvAgent
Added:
prov.model.ProvDocument.update()
andprov.model.ProvBundle.update()
Fixed: Handling default namespaces of bundles when flattened
1.0.1 (2014-08-18)¶
Added: Default namespace inheritance for bundles
Fixed:
prov.model.NamespaceManager.valid_qualified_name()
did not supportXSDQName
Added: Convenience
prov.read()
method with a lazy format detectionAdded: Convenience
plot()
method on theProvBundle
class (requiring matplotlib).Changed: The previous
add_record()
method renamed tonew_record()
Added:
add_record()
function which takes one argument, aProvRecord
, has been addedFixed: Document flattening (see
flattened()
)Added:
__hash__()
function added toProvRecord
(at risk: to be removed asProvRecord
is expected to be mutable)Added:
extra_attributes
added to mirror existingformal_attributes
1.0.0 (2014-07-15)¶
The underlying data model has been rewritten and is incompatible with pre-1.0 versions.
References to PROV elements (i.e. entities, activities, agents) in relation records are now QualifiedName instances.
A document or bundle can have multiple records with the same identifier.
PROV-JSON serializer and deserializer are now separated from the data model.
Many tests added, including round-trip PROV-JSON encoding/decoding.
For changes pre-1.0, see CHANGES.txt.