Skip to content

Releases: annotation/stam-python

v0.6.0

15 Mar 18:35
Compare
Choose a tag to compare
  • upgraded against stam-rust v0.11.0
  • Implemented STAM Transpose extension: a Annotation.transpose() function is now available.
  • implemented Offset.shift(), Cursor.shift() and Offset.__len__()
  • implemented higher-level API methods for testing spatial relations
    • Annotation.test_textselection()
    • Annotation.test()

v0.5.0

22 Feb 16:16
Compare
Choose a tag to compare
  • 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

24 Jan 14:11
Compare
Choose a tag to compare

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
  • 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

20 Oct 12:21
Compare
Choose a tag to compare
  • Improved API documentation

v0.3.0

19 Oct 09:15
Compare
Choose a tag to compare

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

21 Jun 13:48
Compare
Choose a tag to compare
  • Build against stam-rust v0.7.2 (previous build was incorrect in this regard)

v0.2.1

21 Jun 13:43
Compare
Choose a tag to compare
  • Updated for stam-rust v0.7.2

v0.2.0

07 Jun 11:28
Compare
Choose a tag to compare
  • find_data() returns a list now
  • added case_sensitive parameter for find_text()
  • Updated to latest stam-rust library (0.7.0)
  • Updated to latest pyo3 library

v0.1.0

19 Apr 11:37
Compare
Choose a tag to compare

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() and TextSelectionOperator
    • Implemented TextSelection.offset()
    • Implemented various _len() and _count() methods
    • Implemented methods from the Text trait: find_text_regex(), strip_text() (called trim_text() in rust, but I opted for a name closer to Python for the python binding)
    • Implemented relative_offset() and test() for TextSelection
    • Implemented string representation methods for Offset and Cursor
  • Removed the AnnotationDataBuilder class to create AnnotationData, relying on simple Python dictionaries instead now.
  • Refactoring
  • Added API reference documentation #3
  • Wrote a tutorial #4
  • Added a cool logo

v0.0.4

02 Apr 20:33
Compare
Choose a tag to compare

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