Skip to content

Releases: opencitations/time-agnostic-library

6.0.0

13 Feb 16:39

Choose a tag to compare

6.0.0 (2026-02-13)

  • build!: migrate from Poetry to uv and drop Python 3.9 (866c7e6)
  • refactor!: replace python-dateutil with datetime.fromisoformat (7f2bf30)

Bug Fixes

  • correct version materialization and cross-version query results (5434750)
  • handle language-tagged literals and safe triple removal (ed38d74)
  • prune stale SPARQL clients from dead executor threads (1de40de)
  • remove SPARQL client pooling that caused flaky CI failures (b829dc4)
  • replace copy.deepcopy with _copy_dataset to prevent rdflib index corruption (eccafba)

Features

  • add BEAR benchmark suite with QLever backend (49975fb)
  • add include_all_timestamps option to VersionQuery (4d703a1)
  • benchmark: add CLI arguments, resume support, and subprocess isolation for VQ queries (743bac2)
  • benchmark: add multi-granularity support and comparison plots (9d55845)
  • benchmark: add OSTRICH comparison and ingestion timing (67844cc)
  • benchmark: enable OSTRICH multi-snapshot ingestion strategies (0e9942e)
  • extract OCDM converter into reusable library module (9c8cee8)
  • switch VersionQuery results to SPARQL JSON bindings format (514c93d)

Performance Improvements

  • batch SPARQL queries and set-based reconstruction for VM/VQ/DM (8bd7bf1)
  • converter: optimize N-Triples parsing and I/O pipeline (df713ba)
  • normalize typed literals for O(1) graph removal in update queries (0ff6557)
  • reduce overhead from redundant copies, pyparsing, and sequential I/O (4e9ff8f)
  • remove dead code and use server-side entity discovery in DeltaQuery (094f942)
  • remove redundant DISTINCT from update query entity discovery (c38c5f4)
  • replace pyparsing-based SPARQL UPDATE parser with regex (572ba47)
  • replace rdflib Dataset with N3 string sets for internal state (3e698ac)
  • replace ThreadPoolExecutor with ProcessPoolExecutor on Linux (6271087)
  • simplify provenance query and remove DISTINCT from all internal queries (beb91a7)
  • stream cross-version VersionQuery to avoid O(N) dataset copies (15c0bb2)
  • use set-based pattern matching for single-version VersionQuery (ced44ca)
  • use tuple instead of frozenset and skip single-timestamp alignment (6d2117b)

BREAKING CHANGES

  • date/time values must now be in ISO 8601 format.
    Non-ISO formats (e.g., "May 21, 2021") are no longer accepted.
  • get_state_at_time returns empty entity_snapshots
    dict when include_prov_metadata is False.
  • Python 3.9 is no longer supported. Minimum required
    version is now Python 3.10.

5.0.7

12 Nov 16:06

Choose a tag to compare

5.0.7 (2025-11-12)

Bug Fixes

  • use explicit triple addition for CONSTRUCT queries on Dataset [release] (ff20047)

5.0.6

01 Nov 19:49

Choose a tag to compare

5.0.6 (2025-11-01)

Bug Fixes

  • ci: install Poetry and dev dependencies for documentation build (884e332)
  • migrate from deprecated ConjunctiveGraph to Dataset and add edge case tests for agnostic_entity, agnostic_query, and sparql modules (49ecfac)
  • remove redundant and outdated edge case tests (7c79179)

5.0.5

31 Aug 11:30

Choose a tag to compare

5.0.5 (2025-08-31)

Bug Fixes

  • sparql: [release] preserve original literal representation without explicit datatype (b6915a8)

5.0.4

26 Jul 09:40

Choose a tag to compare

5.0.4 (2025-07-26)

Bug Fixes

  • agnostic_entity: [release] add prov:specializationOf triples for targeted entity removal (7c562f1)

5.0.3

07 Jul 14:57

Choose a tag to compare

5.0.3 (2025-07-07)

Bug Fixes

  • agnostic_entity: improve literal matching logic in query processing (9f26506)

5.0.2

30 May 16:11

Choose a tag to compare

5.0.2 (2025-05-30)

Performance Improvements

  • upgrade RDFLib to v7.1.4 and remove query locks (d25fa38)

5.0.1

29 May 20:02

Choose a tag to compare

5.0.1 (2025-05-29)

Bug Fixes

  • agnostic_entity: isolate recursive collection methods (b51686d)

5.0.0

29 May 14:29

Choose a tag to compare

5.0.0 (2025-05-29)

Features

  • Add script to find representative entities for benchmarking (c457cee)
  • agnostic_entity: remove cache and enhance entity relationships (b9258b7)
  • Enhance entity selection script with local file analysis and improved SPARQL querying (bd5d871)

BREAKING CHANGES

  • agnostic_entity: - Added new parameters to AgnosticEntity:
    • include_related_objects: Enables inclusion of related objects
    • include_merged_entities: Controls inclusion of merged entities
    • include_reverse_relations: Manages reverse relationship inclusion
  • Removed all caching functionality as it was deemed obsolete and non-functional
  • Increased test coverage for new features
  • Removed untested and deprecated features

This change requires updates to all code that instantiates or interacts with AgnosticEntity objects.

[release]

4.7.1

17 Apr 19:40

Choose a tag to compare

4.7.1 (2025-04-17)

Bug Fixes

  • updated the metadata structure to initialize wasDerivedFrom as an empty list and populate it with derived entity URIs. (f5ac68f)