Releases: annotation/stam-python
v0.6.0
- upgraded against stam-rust v0.11.0
- Implemented STAM Transpose extension: a
Annotation.transpose()
function is now available. - implemented
Offset.shift()
,Cursor.shift()
andOffset.__len__()
- implemented higher-level API methods for testing spatial relations
Annotation.test_textselection()
Annotation.test()
v0.5.0
- Updated against stam-rust 0.10.1
- Supports datetime datatype
- Implemented
Annotation.webannotation()
for W3C Web Annotation export - Added `AnnotationStore.from_file(), allowing store merges
- Fix for
AnnotationStore.add_resource(filename=)
(was broken in earlier releases)
v0.4.0
This is a major release that revises parts of the high-level API and adds querying support (STAMQL).
- Updated against stam-rust v0.9.0.
- Major refactoring in stam-python.
- Complex search operations now make use of the query engine in stam-rust.
- Revised high-level API:
- Changed parameters for passing filters to methods like
annotations()
,data()
,textselections()
, etc.. - added AnnotationStore.query()
- removed
find_data()
;data()
suffices
- Changed parameters for passing filters to methods like
- Core model introduced two new selectors: Implemented DataKeySelector and AnnotationDataSelector #10
- Various bugfixes, performance fixes and other improvements
- Jupyter notebook tutorial updated to reflect latest version.
v0.3.1
v0.3.0
This is a major new release that introduces a new high-level API, allowing for elaborate search of annotations, data, text selections:
- Updated against stam-rust v0.8.0 (a major update)
- New API, with documentation
- New collections Annotations, Data, TextSelections, that expose various high-level API methods
- Added and documented new configuration parameters
- Added a
VERSION
property on the module level. - Jupyter notebook tutorial updated to reflect latest version
- Major refactoring for stam-rust v0.8.0
- Many bugfixes, performance fixes, and other improvements.
Important note: This release breaks backward-compatibility in a number of ways as the API has been overhauled completely! We hope to avoid similar large breakages in the future.
Note: The performance of the Python library may still be sub-optimal in some areas regarding searching, especially compared to the native Rust version.
v0.2.2
v0.2.1
v0.2.0
v0.1.0
This is the first release ready for the general public, built against stam-rust 0.6.0:
- Adapted to the (numerous) new API changes in stam-rust 0.6.0
- Added a
pyi
file (python includes) with signatures for documentation and for IDEs (autocompletion etc) #3 - Exposed a wide variety of methods that were not previously available yet
- Implemented
find_textselections()
,find_annotations()
andTextSelectionOperator
- Implemented
TextSelection.offset()
- Implemented various
_len()
and_count()
methods - Implemented methods from the
Text
trait:find_text_regex()
,strip_text()
(calledtrim_text()
in rust, but I opted for a name closer to Python for the python binding) - Implemented
relative_offset()
andtest()
forTextSelection
- Implemented string representation methods for
Offset
andCursor
- Implemented
- Removed the
AnnotationDataBuilder
class to createAnnotationData
, relying on simple Python dictionaries instead now. - Refactoring
- Added API reference documentation #3
- Wrote a tutorial #4
- Added a cool logo
v0.0.4
Like the parent library, this release is ready for experimentation, but not for production use yet. The API hasn't stabilized yet.
- Adapted to new API (stam-rust 0.5.0), adds STAM CSV support
- Renamed static shortcut methods to construct selectors; more explicit
- added methods to retrieve data associated with selectors
- added save() and set_filename() methods