Changelog

v0.16.0 (2024-04-02)

Feature

  • TextgridCrudRequest: Parse crud error message from meta html tag (0a0d32b)

v0.15.1 (2024-02-22)

Fix

  • release: Pypi api token was lost in gitlab-ci, cleanup and retry release (86ff0da)

v0.15.0 (2024-02-22)

Feature

  • Aggregator: API for (html) rendering (c85b0c2)

  • Add jupyter notebook example to count all words in published text/xml (d7c7a2a)

Documentation

  • Add note on quickstart (119b76a)

  • Add a quick start note (d96a86f)

  • Add missing licence file for notebook (8c7ed13)

v0.14.0 (2024-01-08)

Feature

  • Jupyter notebook for creating new revisions of published objects (4f5220b)

v0.13.4 (2023-12-01)

Performance

  • Reuse tcp connections for crud, search and aggregator clients (c560c6e)

v0.13.3 (2023-11-27)

Fix

  • TextgridMetadata::filename_from_metadata: Navigation results with auth denied have no title and no format (145e899)

v0.13.2 (2023-11-22)

Fix

v0.13.1 (2023-07-18)

Fix

  • Typos in jupyter notebook (69c5c14)

v0.13.0 (2023-07-18)

Feature

  • Add notebook explaining auto completion with jupyter to docs (aaa78c6)

v0.12.0 (2023-07-18)

Feature

  • Add note on databinding to docs and link metadata cheat sheet (a983aa7)

Documentation

  • jupyter-notebooks: Put imports to execute a cell to every cell. better docs on autompletion (0fda9b6)

  • Add authors and explain AUTHORS file policy (638daf5)

v0.11.0 (2023-07-18)

Fix

  • Use semantic-release 7.34.6 as 8.0 introduced changes breaking the release process (c3e8f71)

Breaking

  • constructor param ‘nonpublic’ removed from TextgridCrud and TextgridCrudRequest (e5aab40)

Documentation

v0.10.1 (2023-05-11)

Fix

  • TextgridConfig: Introduce constants for dev/test/prod texgrid hosts. use prod as default if None or ‘’ is passed to constructor (3a00c32)

Documentation

  • TextgridConfig: Document the constants for dev and test server (c4602c6)

v0.10.0 (2023-05-10)

Feature

  • crud: Create_revision flag also for TextgridCrudRequest.update_resource (80e7802)

  • crud: Implement create_revision with databinding on TextgridCrud (261ca13)

  • crud: Implement TextgridCrudRequest.create_revision for the creation of new textgrid object revisions (d8350be)

v0.9.0 (2023-01-13)

Fix

  • update-supported-python-versions: Reintroduce python 3.7 support; add python 3.11 support (28565e2)

Breaking

  • get_xpath() and get_xpath2() removed from TextgridMetadata (43b9bc6)

v0.8.0 (2023-01-11)

Feature

  • Unify tgcrud and tgsearch client constructor to use tgconfig and bool for is_public instead of url (72b0979)

Breaking

  • TextgridCrudRequest, TextgridCrud, TextgridSearchRequest and TextgridSearch constructor changed to take TextgridConfig and no URL string anymore. Public/non-public is set with a bool now (72b0979)

Documentation

  • More doc how to run the notebooks (3855e5e)

  • JupyterNotebooks: Coorect spelling, add a link (50f4e87)

v0.7.0 (2023-01-10)

Breaking

  • TextgridAuthException is to be handled from now on, not TextGridAuthException (36ab1ad)

v0.6.0 (2023-01-10)

Feature

  • Add imports and all to tgclients init.py to ease importing classes (eaf83d3)

v0.5.3 (2023-01-09)

Fix

  • TextgridAuth: Do not return None, but raise an exception if wrong SID (88ecb8f)

Documentation

  • TextgridAuth: Return type List of list_assigned_projects is not optional anymore (46ce851)

  • TextgridAuth: Correct error message thrown in case of errors listing assigned projects (ca4fa0c)

  • Pypi badge from shields.io (09d4cc5)

v0.5.2 (2023-01-04)

Fix

v0.5.1 (2023-01-04)

Fix

  • Correct licenses for data used in unit test fixtures (f1c7faf)

v0.5.0 (2023-01-04)

Feature

  • Aggregator: Provide method for teicorpus download (38cda46)

v0.4.1 (2022-12-23)

Fix

  • Remove favicon until license clear (ref #52). correct typos (5a1f51f)

v0.4.0 (2022-12-23)

Feature

  • docs: Include jupyter notebooks in docs and render markdown with myst-nb (83cc85c)

Documentation

  • Add license headers to docs, add links (212fc72)

  • README.md: Move development docs to own document (a830d95)

  • Jupyter-Notebooks: Add missing license information (aae55cf)

v0.3.0 (2022-12-22)

Feature

  • TextgridSearch: Add methods for query and filter to search client (93a5038)

Documentation

  • Jupyter-Notebooks: Documentation for the aggregating editions notebook (64fafff)

  • search.py: API docs and corrections (1d71a0d)

  • Add descriptive metadata about the package (c754c07)

  • Jupyter-Notebooks: Notebook example with pagination to retrieve all editions metadata and fulltext of one project id (a83a4c6)

  • Jupyter-Notebooks: 3 different ways to get plaintext for editions content (a1a1f51)

  • Jupyter-Notebooks: Add a notebook which makes use of search api (2b547f2)

v0.2.0 (2022-12-22)

Feature

  • Publish package to pypi.org (827b505)

v0.1.4 (2022-12-21)

Fix

  • Setup tools package version from tgclients.version (81c26cc)

v0.1.3 (2022-12-21)

Fix

  • Next test, what version ends up in pypi repo? (ce1b86d)

v0.1.2 (2022-12-21)

Fix

  • Next try to get semantic release to publish the package (367f88e)

v0.1.1 (2022-12-21)

Fix

  • test: No real fix, just test if semantic release works now (4958eb7)

Documentation

  • README.md: Test if release is triggered (93fea7d)

v0.1.0 (2022-12-21)

Feature

  • TextgridMetadata: Provide method to build metadata with databinding (62d2108)

  • crud.py: Add databinding to TextGridCRUD, create TextGridCrudRequest for tgcrud access without databinding (eb712e0)

  • TextgridMetadata: Provide method to build metadata with databinding (760732c)

  • crud.py: Add databinding to TextGridCRUD, create TextGridCrudRequest for tgcrud access without databinding (4e42830)

  • Make PyICU dependency optional (91b1183)

  • search.py: Implement error handling for http status <400, add http timeout (85e365e)

  • TextgridCRUD: Implement error handling for http status != 200, add http timeout and missing function docs (215c8e7)

  • Aggregator: Overload zip function to optionally take python lists of uris (9ac2b06)

  • Aggregator: API for retrieving plain text (8a319a7)

  • TextgridConfig: Property for http timeout in config (bf580c1)

  • utils.py: Add a utils class with methods to work with aggregations (b5ad308)

  • TextGridAuth: Add methods for creating, deleting and adding roles to projects (fbea8fa)

  • Aggregator: Add initial aggregator client (8d360b4)

  • TextgridAuth: Add methods to get a specific or all project description(s) (75d70c7)

  • TextgridMetadata: Port textgrid object to filename mapping methods from link-rewriter (java) to python (e101f56)

  • search.py: Split tgsearch client into TextGridSearchRequest (low level) and TextGridSearch (with databinding) (cd56f43)

  • Add databinding for tgsearch/textgrid metadata xml schema using xsdata library (0f440c9)

  • TextgridCRUD: Log multipart upload progress in debug mode (1107588)

  • Default to public service endpoints on production system when no specific config given (206f69d)

  • Jupyter notebooks example (35437b6)

  • Basic sphinx doc example (a9d013e)

  • TextgridCRUD: Streaming multiparts (a60b5a1)

  • TextgridConfig: Automatically remove trailing slash from hostname (7b5726e)

  • TextgridConfig: Automatically remove trailing slash from hostname (5c14a1b)

  • TextgridCRUD: Implement update (41deb2c)

  • Initial library and dev-environment setup (e9537c8)

Fix

  • Aggregator: Python 3.8 has no builtin type list yet (d319576)

  • TextGridAuth: Fix a syntax error introcuced with last commit (1542a7d)

  • Python 3.8 does not yet have internal list type, import from typings (1bb4e2e)

  • Metadata: Use defusedxml for parsing xml (f56402e)

  • templates/metadata.xml.jinja2: Move SPDX header out of the template (a3c4a94)

  • Response encoding in tgcrud (2146439)

  • metadata.py: Title from textgrid-metadata transliterated with the icu rules may contain dots. fixed the id_from_filename extraction (d51fc0d)

  • metadata.py: Unknown mime types have no extension (8455c60)

Breaking

  • TextGridCRUD is now named TextGridCrud, and has databinding. Use TextGridCrudRequest, if you do not want to use the databinding (46edc5f)

  • (eb712e0)

  • TextGridCRUD is now named TextGridCrud, and has databinding. Use TextGridCrudRequest, if you do not want to use the databinding (d119c82)

  • (4e42830)

  • (91b1183)

  • parameter for zip() is named textgrid_uris instead of textgrid_uri now (9ac2b06)

  • redefined-builtin param “format” is now “mimetype”, in metadaty.py API (eb1df45)

  • (cd56f43)

Documentation

  • Doc corrections and indention (bf71ee9)

  • crud.py: Some random code has sneaked into the docstring (36947a6)

  • TextGridCrud: API docs (b9afced)

  • Doc corrections and indention (d8e6772)

  • crud.py: Some random code has sneaked into the docstring (0b86afb)

  • TextGridCrud: API docs (3d36fc2)

  • metadata.py: Add doc and reformat to please pylint (e92af03)

  • README.md: Its PyICU not pyICU (1c5618c)

  • Jupyter-Notebooks: Recommend using jupyter lab instead of jupyter notebooks (f5a7de5)

  • TextgridCRUD: Correct description of exceptions raised (f84f661)

  • Jupyter-Notebooks: Merge cells (567bbba)

  • Jupyter-Notebooks: Clean notebooks, add .gitignore and a notebook license (ea8ebf1)

  • Jupyter-Notebooks: Example notebook how to create projects and aggregations (7b953f2)

  • Utils: Specify type of list in type hints (7c63673)

  • README.md: Correct sentence (5182732)

  • README.md: Add direct URL for getting SID (9a3ac9a)

  • TextgridMetadata: Document filename_from_metadata(), filename() and id_from_filename() (09762f6)

  • notebooks: Cleanup and document jupyter notebook sample (fe8db4d)

  • Rewrite docstrings in google style, add linter for that (7620934)

  • TextgridSearch: Document params for info (b6c154b)

  • TextgridCRUD: Document read, create and delete in google docstring style (9eba998)

  • readme: Explain installation and import (6e7aeb0)

  • readme: Explain installation and import (c6cc841)