All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
v0.12.3 - 2023-12-06
- Explicit support for Python 3.12.
- Bump
pyo3
tov0.19.2
. - Make
DisconnectedChannelError
inherit fromRuntimeError
instead ofChildProcessError
.
v0.12.2 - 2022-12-06
- Explicit support for Python 3.11.
- Pre-built wheels for MacOS
aarch64
platforms.
- Bump
pyo3
tov0.17.3
. - Bump
fastobo
tov0.15.1
. - Bump
fastobo-graphs
tov0.4.8
.
v0.12.1 - 2022-07-08
- Stop releasing the GIL when loading an ontology from a file to fix Windows compilation.
v0.12.0 - 2022-07-08
- Improve handling of exceptions in Rust code.
- Bump
pyo3
dependency tov0.16
. - Intern constant strings returned by
raw_tag
methods of clause objects.
- Compilation of
fastobo
extension with newersetuptools-rust
versions (#300).
- Support for Python 3.6.
v0.11.1 - 2022-01-23
- Extraction of date argument when creating a
CreationDateClause
. - Skip displaying empty xrefs in
fastobo.typedef.DefClause.__repr__
.
v0.11.0 - 2022-01-23
fastobo.exceptions
module with dedicated exception types to report specific errors.fastobo.dump_owl
to convert and write an OBO document to an OWL ontology (usingfastobo-owl
andhorned-owl
) in Functional-style syntax (usinghorned-functional
).
- Bumped
fastobo
tov0.14.0
. - Bumped
fastobo-graphs
tov0.4.4
. DateClause
may now store adatetime.date
instead of adatetime.datetime
if the source document contains a date without time specifier.- PyPI source distribution now contains vendored Rust sources, allowing compilation without network access.
setup.py
script not auto-installing the Rust compiler in latestsetuptools_rust
versions.
v0.10.2-post1 - 2021-09-19
- Aarch64 wheels built from GitHub Actions and deployed to PyPI (#245).
v0.10.2 - 2021-08-02
- Bumped
pyo3
dependency tov0.14.1
.
fastobo.iter
erroneously wrappingSyntaxError
raised in the header into aTypeError
.
v0.10.1 - 2021-03-30
- Bumped
fastobo
dependency tov0.13.1
.
- Curly braces not being properly escaped when writing unquoted strings.
v0.10.0 - 2021-02-19
__hash__
implementation tofastobo.id.BaseIdent
subclasses.__init__
method to classes missing one infastobo.header
.
- Bumped
pyo3
dependency tov0.13.2
. - Bumped
fastobo
dependency tov0.13.0
.
- Broken
__repr__
implementation for some types.
unsafe
blocks in derive macros implementation ofIntoPyObject
for OBO clauses.- Support for Python 3.5.
fastobo.id.IdentPrefix
andfastobo.id.IdentLocal
classes.
v0.9.3 - 2020-12-04
setup.py
crashing when compiling from source on a platform with stable Rust as the default toolchain (#182, thanks to @alexhenrie).
v0.9.2 - 2020-09-04
- Bumped
fastobo
tov0.11.2
.
v0.9.1 - 2020-08-15
- Wheel compilation for older OSX versions.
- Automatic download on UNIX platforms for platforms without
rustc
installing from source distribution.
v0.9.0 - 2020-07-29
- Bumped
fastobo
tov0.10.0
to support comment lines. - Bumped
pyo3
tov0.11.1
.
fastobo.id.parse
will chain the eventualSyntaxError
to theValueError
raised if the identifier is invalid.- Python threads are now released during intensive operations running only on the Rust side.
v0.8.2 - 2020-06-16
OboDoc
not implementing list methods (.append
, etc.).
v0.8.1 - 2020-06-14
- Bumped
fastobo
tov0.9.0
. - Bumped
fastobo-graphs
tov0.3.0
.
fastobo.id.is_valid
function to check whether or not a string is a valid OBO identifier.
v0.8.0 - 2020-06-12
- Bumped
fastobo
tov0.8.4
. - Bumped
pyo3
tov0.10.1
. - Removed occurences of unsafe code for Python type management.
- Reduced number of GIL acquisition where possible.
- Changed implementation of file wrappers to use
PyAny
where applicable.
- Configuratble support for multithreading in
fastobo.iter
,fastobo.load
andfastobo.loads
using thethreads
keyword argument.
v0.7.2 - 2020-02-12
- Bumped
fastobo
tov0.8.3
to fixDisplay
implementation offastobo::ast::IsoDateTime
.
v0.7.1 - 2020-02-11
- Bumped
fastobo
tov0.8.2
to fixDisplay
implementation ofHeaderClause::Unreserved
variant. - Bumped
built
build-dependency tov0.4.0
.
v0.7.0 - 2020-01-24
- Bumped
fastobo
tov0.8.1
to use multi-threaded parser implementation. - Added
ordered
keyword argument to top-levelfastobo
function to disable requirement to parse the document in order-preserving mode.
v0.6.2 - 2020-01-18
- Compilation of Python 3.8, PyPy 3.5 and PyPy 3.6 wheels for OSX.
- Bumped
fastobo
tov0.7.5
, which should finally support Windows style line-endings.
v0.6.1 - 2019-11-19
- Compilation of Python 3.8 wheels for Linux and Windows (#67).
BaseTypedefClause
not being declared infastobo.typdef
submodule.fastobo.id
module performing unneeded string allocation.
v0.6.0 - 2019-10-08
__init__
to all classes offastobo.typedef
.
- Renamed
term
field offastobo.typedef.Relationship
totarget
.
v0.5.4 - 2019-10-08
__init__
implementation forfastobo.doc.OboDoc
.__init__
implementation forfastobo.term.ConsiderClause
.__init__
implementation forfastobo.term.IsObsoleteClause
.- Add constructor signatures to classes in
fastobo.term
andfastobo.header
.
- Bumped
pyo3
dependency tov0.8.1
.
- Automatic generation of
pyproject.toml
insdist
.
v0.5.3 - 2019-10-06
__init__
anddate
getter toCreationDateClause
in bothfastobo.term
andfastobo.typedef
with proper timezone support.
v0.5.2 - 2019-09-28
- Getters for
ReplacedByClause
infastobo.typedef
.
PyFileGILRead
(used infastobo.iter
) should now be thread safe.
v0.5.1 - 2019-09-19
- Getters for
ExpandExpressionToClause
andExpandAssertionToClause
infastobo.typedef
.
- Missing
NamespaceIdRuleClause
class is now a member offastobo.header
.
v0.5.0 - 2019-09-18
fastobo.iter
function to iterate over the entity frames of an OBO document.From<std::io::Error>
impl forError
.
OboDoc
cannot be subclassed anymore.
v0.4.2 - 2019-09-16
- Getters for
IsClassLevelClause
andIsMetadataTag
infastobo.typedef
. - Getters for
RelationshipClause
infastobo.term
.
- Inconsistent naming for
PropertyValueClause
betweenfastobo.header
and other submodules.
- Bug with
fastobo.header.ImportClause.reference
returning the whole clause serialization instead.
v0.4.1 - 2019-09-15
- Precompiled wheels for CPython 3.5, 3.6 and 3.7 on Windows x86-64.
v0.4.0 - 2019-09-14
__init__
implementation forfastobo.term.DefClause
__init__
implementation forfastobo.syn.Synonym
- Precompiled wheels for PyPy3 on OSX and Linux.
XrefList.__repr__
implementation entering infinite recursion.- Derive macros generating weird error messages for some
TypeError
s. - Enabled
extension-module
feature ofpyo3
to allow static linking to Python interpreter. - Inconsistent error-chaining in Python causing issues with
try/except
blocks.
v0.3.3 - 2019-09-10
- Use stable PyO3 release (
v0.8.0
). - Add back
__build__
attribute to check build variables.
v0.3.2 - 2019-08-29
- Added BOSC 2019 poster reference to
README.md
. - Added
__richcmp__
implementation tofastobo.id.PrefixedIdent
.
- Bumped Rust dependencies to latest PyO3 version.
v0.3.1 - 2019-08-08
PyFile.write
callingwrite
with two arguments causing duck typing check to fail all the time indump_graph
.
v0.3.0 - 2019-08-08
load_graph
anddump_graph
functions to read and write OBO JSON files.
- Updated to
fastobo
v0.7.1.
v0.2.2 - 2019-07-24
- Updated to
fastobo
v0.6.1. - Updated to
url
v2.0.0.
v0.2.1 - 2019-07-23
- Updated to
fastobo
v0.6.0.
- Parser now accepts ISO 8601 dates with fractional second.
v0.2.0 - 2019-07-22
- Updated to
fastobo
v0.5.0.
- Support for OBO graph deserialization using
fastobo-graphs
. - Limited support for instance frames in
fastobo.instance
module. - Methods
OboDoc.compact_ids
andOboDoc.decompact_ids
to create semantically equivalent OBO document with compacted/decompacted identifiers.
v0.1.1 - 2019-06-28
- PyPI release not being uploaded because of older development release.
v0.1.0 - 2019-06-28
Initial release.