Release Notes¶
v1.4.0 - 2026-05-13¶
⛰️ Features¶
(application) Add CLI version document {list,describe,download} commands [PYSDK-122] - (ed8d80c)
(launchpad) Conditional Betterstack status page per environment [PYSDK-107] (#599) - (1b838cc)
(platform) Support external token providers and simplify caching - (9007e37)
(platform) Expose state/reason/metadata filters in Run.results() - (fd34a7a)
(platform) Add Documents.read_content() for /content endpoint [PYSDK-122] - (a17d3f5)
(platform) Add Documents resource for application version release documents [PYSDK-122] - (2c79b43)
(platform) Replace deprecated download_url with /file endpoint [PYSDK-109] (#598) - (500012b)
🐛 Bug Fixes¶
(application) Silence pyright unused-variable warnings in document download - (f3785e8)
(ci) Add –frozen to uv run commands in CI workflows - (88612d4)
(ci) Fix slack release announcement json payload - (5b081f7)
(ci) Bump Dockerfile uv pin to 0.11.7 to match pyproject.toml >=0.11.6 PYSDK-98 (#583) - (9f63222)
(deps) Bump uv lower bound to >=0.11.6 for GHSA-pjjw-68hj-v9mw - (4af3e90)
(deps) Bump pip lower bound to >=26.1 for CVE-2026-3219 [PYSDK-115] (#606) - (487193f)
(deps) Update dependency fastparquet to v2026 (#500) - (8f5d85a)
(deps) Update dependency idc-index-data to v23.10.1 (#506) - (9ce367c)
(docker) Add –no-build to uv sync –no-install-project stages - (11cbe47)
(docs) Correct skip:test:long_running label name in CLAUDE.md (#577) - (709e166)
(test) Enable E2E pytest mark - (d8eb626)
(test) Pin application version in E2E test - (88f6ce4)
Test after model update - (18817d3)
Add page_size validation to paginate() to prevent infinite loop [PYSDK-108] (#597) - (8dd4930)
Use correct board URL for classic Jira project in compass.yml PYSDK-86 (#574) - (e6e846d)
Use UUID for Process Level single_select in compass.yml PYSDK-85 (#573) - (836956a)
Correct invalid compass.yml link types and custom field type PYSDK-83 (#571) - (188e632)
🚜 Refactor¶
📚 Documentation¶
(claude) Add SDLC Configuration block to CLAUDE.md - (2d2aad3)
(specs) Fix Ketryx itemId cross-references — use hyphens not underscores [PYSDK-121] - (9492c95)
Remove redundant SWR/SPEC for Betterstack feature [PYSDK-127] - (32c592c)
Revert supply-chain vulnerability documentation from #580 - (59506a2)
🧪 Testing¶
(application) Cover document CLI error paths and JSON output [PYSDK-122] - (ad40a7b)
⚙️ Miscellaneous Tasks¶
(ci) Disable split_commits in git-cliff config - (ef28b07)
(ci) Exclude .claude/worktrees from pyright + gitignore [PYSDK-103] (#591) - (206adde)
(codegen) Regenerate aignx.codegen client from openapi v1.5.0 [PYSDK-122] - (90ec7a4)
(deps) Lock file maintenance - (970a676)
(deps) Upgrade myst-parser to v5, sphinx <10, swagger-plugin-for-sphinx to v7 (#596) - (d3bdf6f)
(deps) Update actions/create-github-app-token action to v3.1.1 (#595) - (d1bdc18)
(deps) Update pandas requirement from <3,>=2.3.3 to >=2.3.3,<4 (#396) - (292ca4c)
(deps) Remove pygments lower bound (intentional gap to test daily audit-vulnerabilities routine) [PYSDK-104] (#592) - (daf15a0)
(deps) Sweep Renovate/Dependabot bumps into pyproject.toml lower bounds PYSDK-93 (#580) - (765cd70)
(dev) Update scalene profile target for v2 API [PYSDK-91] (#579) - (10cd232)
(docs) Sync supply-chain record with pyproject after #531/#553 [PYSDK-114] (#605) - (3ee8ac2)
(renovate) Run long_running tests on bumps of runtime-critical packages PYSDK-111 (#601) - (866ac7b)
Enable build in uv sync in Dockerfile - (48eda3d)
Address comments - (668526c)
Address review comments - (c9d8a15)
Bump SPEC dates and fix lint/test fallout from documents codegen [PYSDK-122] - (c72c3dd)
TODO - add commit content - (e8394b2)
Revert uv.lock to release/v1.3.0 to avoid merge conflict with main - (d66c597)
Add Playwright MCP server config to .mcp.json [PYSDK-117] (#608) - (c15534f)
Fix PR review re-triggered by claude:review verdict labels PYSDK-116 (#607) - (93f83aa)
Add #python-sdk-announcements to compass.yml PYSDK-113 (#602) - (c472080)
Add docs build as parallel CI job [PYSDK-110] (#600) - (3c9fe08)
Enable aignostics/claude-plugins qms plugin project-wide [PYSDK-96] (#582) - (32025d3)
Remove broken codecov VS Code extension from recommendations (#578) - (e02bab9)
Fix link types and add missing Ketryx link in compass.yml [PYSDK-88] (#576) - (2db76b2)
Add #python-sdk-notifications Slack channel to compass.yml PYSDK-87 (#575) - (47bbc4b)
Add service dependencies and process level to compass.yml [PYSDK-84] (#572) - (af2a321)
Trigger Compass compass.yml re-sync - (e941b27)
Update compass.yml — Jira board, status page, tier, lifecycle and metadata [PYSDK-82] (#570) - (1fd4536)
🛡️ Security¶
(ci) Add sop:, type:, security:, scope:, auto-merge labels [PYSDK-94] (#581) - (234e358)
(deps) Update dependency urllib3 to v2.7.0 [security] (#637) - (b4bcf89)
(deps) Update dependency jupyterlab to v4.5.7 [security] (#616) - (f5ab258)
(deps) Bump nicegui to v3.11.0 [security] + adapt to 3.10/3.11 GUI lifecycle changes (#531) - (6682f84)
(deps) Bump pygments lower bound to >=2.20.0 for CVE-2026-4539 [PYSDK-106] (#594) - (43e91b2)
v1.3.0 - 2026-05-04¶
⛰️ Features¶
(application) Add OTHER as valid tissue value in GUI metadata grid (#522) - (15a6063)
(platform) Add organization parameter to OAuth authorization redirect (#550) - (321d4de)
(platform) Add organization parameter to OAuth authorization redirect - (321d4de)
(platform) Add ‘for_organization’ to list all runs of an org (#510) - (3f06055)
(utils, platform) Add DEGRADED state to Health model - (21e95ba)
Oliver Meyer 42039965+olivermeyer@users.noreply.github.com - (321d4de)
Claude Sonnet 4.6 noreply@anthropic.com - (15a6063)
🐛 Bug Fixes¶
(application) Sort query results by submitted_at before limit - (a2480ed)
(ci) Fix publish-release workflow - (a97ccb9)
(ci) Pin HETA version in E2E test - (d124c17)
(ci) Include v prefix in release_version output for Ketryx - (6d7720f)
(ci) Replace \d with [0-9] in semver validation grep pattern - (62aa11f)
(ci) Prevent PYTHONHOME from leaking into nox sub-sessions on Windows - (adb1fa0)
(deps) Update dependency packaging to v26 - (6f1df69)
(deps) Update minor and patch dependencies - (d1f565e)
(system) Replace uptime with psutil - (346a9f6)
Claude Sonnet 4.6 noreply@anthropic.com - (6d7720f)
Claude Opus 4.6 noreply@anthropic.com - (adb1fa0)
Update requests dependency to 2.33.0 for CVE-2026-25645 compliance (#511) - (8ad550d)
Add CVE-2026-4539 to the list of ignored vulnerabilities in noxfile (#508) - (1e2e0a5)
Prevent microsecond drift when offsets are equal in e2e test (#504) - (e59a5db)
Prevent microsecond drift when offsets are equal in e2e test - (e59a5db)
System health exits with 0 when degraded - (d24c285)
🚜 Refactor¶
(tests) Extract submitted_run context manager - (8cf4c1d)
📚 Documentation¶
(spec) Document organization parameter in platform service specification - (321d4de)
(specs) Document scheduling support in SPEC-APPLICATION-SERVICE - (299f66b)
(specs) Update specs for for_organization list flag - (ad8b55c)
Claude Sonnet 4.6 (1M context) noreply@anthropic.com - (299f66b)
Claude Sonnet 4.6 noreply@anthropic.com - (ad8b55c)
Link risks to SHRs - (69740ad)
Remove dates from specs - (027657b)
Remove README alpha note and run make docs - (deef45a)
⚡ Performance¶
(application) Replace like_regex with == for tag filtering (#516) - (aacb20a)
(application) Replace like_regex with == for tag filtering in application_runs - (aacb20a)
Claude Opus 4.6 (1M context) noreply@anthropic.com - (aacb20a)
🧪 Testing¶
Increase deadline for flaky tests - (fa90a99)
Run heavy test on ubuntu-latest only - (01e1ec2)
Split health CLI format tests from live platform monitoring - (1360d9a)
Claude Sonnet 4.6 noreply@anthropic.com - (1360d9a)
Increase timeout for test_cli_run_submit_succeeds_when_system_degraded_and_no_force - (f2fb6d1)
Limit list operation in CLI test - (e4dfc98)
⚙️ Miscellaneous Tasks¶
(OP-2780) Pin GitHub Actions to commit SHA - (48015bc)
(deps) Upgrade pip to 26.1 - (a86898b)
(deps) Bump nbconvert from 7.17.0 to 7.17.1 (#553) - (b75aaf2)
(deps) Bump python-dotenv from 1.2.1 to 1.2.2 (#554) - (0b5a4c4)
(deps) Bump python-multipart from 0.0.22 to 0.0.26 (#543) - (eeffb59)
(deps) Bump cryptography from 46.0.6 to 46.0.7 - (2aa57c7)
(deps) Update github actions - (a9aa0f9)
(deps) Bump pygments from 2.19.2 to 2.20.0 - (b54f245)
(deps) Bump cryptography from 46.0.5 to 46.0.6 - (7950c3f)
(deps) Update anthropics/claude-code-action action to v1.0.77 (#503) - (dc400d1)
(deps) Bump ujson from 5.11.0 to 5.12.0 - (c2fb241)
(deps) Bump orjson from 3.11.5 to 3.11.6 - (3f583ca)
(deps) Bump pyjwt from 2.10.1 to 2.12.0 - (3638ebc)
(deps) Bump tornado from 6.5.2 to 6.5.5 - (f72a15b)
Auto-enable very_long_running tests on release branch pushes - (b0eefcc)
Claude Sonnet 4.6 noreply@anthropic.com - (b0eefcc)
Run CI/CD for PRs targeting release/v* branches - (2eb340f)
Pass release version to ketryx on release/v* branches - (50ffbc4)
Add concurrency to release workflows - (a2fd65f)
Update release strategy - (c06bf1d)
Nbconvert - (b75aaf2)
Dependabot[bot] support@github.com - (b75aaf2)
Dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> - (b75aaf2)
Python-dotenv - (0b5a4c4)
Authlib - (5fd0054)
Python-multipart - (eeffb59)
Moritz Krügener kruegener@users.noreply.github.com - (e1b914f)
Cryptography - (2aa57c7)
Pygments - (b54f245)
Bump Python to 3.14.3 - (442c2a8)
Update .python-version to 3.14.2 - (aacb20a)
Use SAMIA run artifact file endpoint to download artifacts (#507) - (d552c89)
Update renovate schedule - (ba74ebe)
Renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> - (dc400d1)
Pydicom - (cec28b1)
Use scheduling payload when creating runs - (8f4445b)
Bump FastMCP to v3.x and make the necessary changes to support it (#425) - (2509265)
Oliver Meyer 42039965+olivermeyer@users.noreply.github.com - (2509265)
Run SonarCloud analysis immediately on PRs - (d2b4f88)
Update test suite name when reporting failures - (e409213)
Ujson - (647f75b)
Run all tests even on failure in previous steps (#481) - (485f86f)
Pyasn1 - (fe0ca62)
Orjson - (889dab7)
Pyjwt - (aac87a3)
Tornado - (2413fa6)
🛡️ Security¶
(deps) Update dependency lxml to v6.1.0 [security] (#556) - (12ec0c7)
(deps) Update dependency uv to v0.11.6 [security] - (32daf66)
(deps) Update dependency pytest to v9.0.3 [security] - (269f072)
(deps) Update dependency pillow to v12.2.0 [security] - (a510df1)
(deps) Update dependency marimo to v0.23.0 [security] - (1b1b4b6)
(deps) Update dependency aiohttp to v3.13.4 [security] - (61d3472)
(deps) Update dependency fastmcp to v3.2.0 [security] - (a9bccae)
(deps) Update dependency nicegui to v3.9.0 [security] - (65d553f)
(security) Prevent script and commit-message injections (#512) - (24737e0)
Renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> - (12ec0c7)
Claude Sonnet 4.6 noreply@anthropic.com - (24737e0)
Merge pull request #498 from aignostics/renovate/pypi-nicegui-vulnerability - (65d553f)
Build¶
@olivermeyer made their first contribution in #561
@renovate[bot] made their first contribution in #486
@dependabot[bot] made their first contribution in #553
@santi698 made their first contribution in #550
@aig-hannes made their first contribution in #549
@omid-aignostics made their first contribution in #522
@akunft made their first contribution in #510
@zonorti made their first contribution in #515
@arne-aignx made their first contribution
@nahua-aignx made their first contribution in #514
@marmarciniak95 made their first contribution in #511
@neelay-aign made their first contribution in #425
1.2.0 - 2026-03-10¶
⛰️ Features¶
(application) Add option to summarize run describe. (#414) - (a1d8cf1)
(application) Add option to summarize run status. - (a1d8cf1)
(dataset) Add tenacity retry to IDCClient HTTP requests - (7a3a593)
(platform) Add item filtering for fetching run results. (#442) - (14e20b5)
(platform) Add item filtering for fetching run results. - (14e20b5)
(utils) Split MCP and plugin requirements, add plugin integration tests - (a8cf513)
Claude Sonnet 4.6 noreply@anthropic.com - (a8cf513)
🐛 Bug Fixes¶
(application) Change default gpu type to a100 (#446) - (1e0b848)
(application) Make A100 default GPU type - (1e0b848)
(application) Include items in run describe –format=json (#437) - (4079702)
(ci) Ensure coverage and JUnit XML always generated even when tests fail - (a31716e)
(cli) Fix CLI test with wrong CSV - (14e20b5)
(docs) Fix broken API reference page on ReadTheDocs - (945fb12)
(docs) Use JSON as widdershins input and apply correct post-processing - (0037124)
(gha) Convert markdown to Slack markdown so urls are properly unfurled (#438) - (36c6b0c)
(platform) Switch health check endpoint from /api/v1/health to /health - (4d2963b)
(platform) Isolate health check HTTP pool from API client to prevent response cross-contamination - (873e8d0)
(qupath) Remove trailing equal sign from logs - (fe82486)
(system) Prevent yaml.dump from wrapping long strings in OpenAPI output - (596a693)
(test) Fix expected results after version bump (#466) - (7dfaf52)
(test) Fix expected results after version bump - (d931bb2)
(tests) Use pip instead of uv for dummy plugin teardown uninstall - (1504e1d)
(tests) Only suppress uninstall errors when package is already absent - (aea6f5c)
(tests) Fall back to pip when uv is unavailable in plugin fixture - (f0f5472)
(tests) Update TC-UTILS-MCP-01 traceability tag from SWR-UTILS-1-1 to SWR-UTILS-2-4 - (91c808b)
(tests) Make dummy plugin uninstall best-effort in fixture teardown - (b3d57bb)
(tests) Use uv for dummy plugin install to avoid network access - (2d9cc35)
(tests) Address Copilot review feedback on plugin tests - (74a5339)
(tests) Amend tests to use L4 - (1e0b848)
(tests) Use test constants for GPU type, use L4 for prod testing - (1e0b848)
(traceability) Link SWR-UTILS-2-1 to TC-UTILS-MCP-01 test case - (a65a73d)
Ci, skip:test:long-running, skip:test:matrix-runner, skip:test:very-long-running] - (6a1ab60)
Claude Sonnet 4.6 noreply@anthropic.com - (6a1ab60)
Test:long-running] - (1504e1d)
Test:long-running, skip:test:matrix-runner] - (aea6f5c)
If the package is already absent, the goal is achieved. - (b3d57bb)
Use the dedicated Service._http_pool (same as public health check) with a - (873e8d0)
Claude Opus 4.6 (1M context) noreply@anthropic.com - (873e8d0)
Retry on 404 in run details to handle read replica lag (#440) - (e686e70)
Remove redundant uv venv step in ReadTheDocs build config - (80d657c)
Remove redundant uv venv step in ReadTheDocs build config [skip:ci, skip:test:long-running, skip:test:matrix-runner, skip:test:very-long-running] - (c2ce9e8)
🚜 Refactor¶
(bucket) Extract helpers from find() to reduce cognitive complexity - (3b14d7c)
(requirements) Restructure UTILS requirements hierarchy - (403ba60)
(tests) Centralise dummy plugin install fixture in utils conftest - (83a52b5)
(tests) Extract save/restore fixture into qupath conftest - (45d6f99)
Claude Sonnet 4.6 noreply@anthropic.com - (403ba60)
📚 Documentation¶
(docs) Use JSON as widdershins input and apply correct post-processing - (0037124)
(requirements) Align SWR-UTILS-2-3 and FR-13 with implemented behavior - (01e6b01)
(requirements) Simplify SWR-UTILS-2-4 wording to match SWR pattern - (5848730)
(requirements) Add MCP servers to SHR-UTILS-2 plugin contribution list - (01e16f7)
(specs) Update SPEC-PLATFORM-SERVICE post v1.1.0 - (629185b)
(specs) Align FR-10 in SPEC-UTILS-SERVICE with SWR-UTILS-2-4 - (44d08c5)
(tests) Remove function names from Gherkin scenario steps - (f764695)
(tests) Align TC-UTILS-PLUGIN-03 feature title with SWR-UTILS-2-3 rename - (ec4c878)
Add ‘test’ to supported deployment environments (#422) - (629185b)
Ci, skip:test:long-running, skip:test:matrix-runner, skip:test:very-long-running - (629185b)
Claude Sonnet 4.6 noreply@anthropic.com - (629185b)
Test:long-running, skip:test:matrix-runner] - (f764695)
Ci, skip:test:long-running, skip:test:matrix-runner, skip:test:very-long-running] - (44d08c5)
Restore accidentally removed MCP server section[skip:ci, skip:test:long-running, skip:test:matrix-runner, skip:test:very-long-running] - (63e1259)
⚡ Performance¶
(bucket) Add server-side prefix filtering to find() to avoid full bucket scans - (0a24176)
Claude Sonnet 4.6 noreply@anthropic.com - (0a24176)
🎨 Styling¶
Fix ruff formatting in mcp_test.py - (5008493)
Claude Sonnet 4.6 noreply@anthropic.com - (5008493)
Reformat test signature to single line per ruff - (0ed3d00)
🧪 Testing¶
(platform) Isolate health check HTTP pool from API client to prevent response cross-contamination - (873e8d0)
(qupath) Parametrize install/uninstall test for independent retries - (8eb9c03)
Mock BucketService.find_static in GUI test (#465) - (2c6193b)
Claude Sonnet 4.6 noreply@anthropic.com - (8eb9c03)
Increase retries for QuPath install test - (6b4e468)
Increase timeout and add post-cancel retry in cancel-by-filter E2E test - (cbccb76)
Isolate metadata update E2E tests with dedicated runs and retry-on-read - (677584c)
⚙️ Miscellaneous Tasks¶
(deps) Upgrade lxml-html-clean to 0.4.4 and authlib to 1.6.9 - (bb06bc4)
(deps) Bump authlib from 1.6.6 to 1.6.7 - (8ff112d)
(deps) Bump lxml-html-clean from 0.4.3 to 0.4.4 - (488b33a)
(deps) Bump nbconvert from 7.16.6 to 7.17.0 (#424) - (aaa92b9)
(deps) Bump cryptography from 46.0.3 to 46.0.5 (#426) - (e56ed1f)
Bump app version in tests to 1.1.0 in prod (#464) - (19b0882)
Claude Sonnet 4.6 noreply@anthropic.com - (bb06bc4)
Fix YAML escape in pre-commit hook exclusion regex - (d5a0281)
Fix regex in name-tests-test pre-commit hook exclusion - (67ddbf8)
Exclude tests/resources/ from name-tests-test pre-commit hook - (e422566)
Atlassian-compass[bot] <89495476+atlassian-compass[bot]@users.noreply.github.com> - (0414a3c)
Authlib - (8ff112d)
Dependabot[bot] support@github.com - (8ff112d)
Lxml-html-clean - (488b33a)
Fix missing end-of-file newline in API_REFERENCE_v1.md - (3e46bd3)
Ci, skip:test:long-running, skip:test:matrix-runner, skip:test:very-long-running] - (3e46bd3)
Fix missing end-of-file newlines - (60d7dcb)
Remove MCP from the interface options section of the README (#452) - (73ede20)
Run lint on push - (12c3891)
Add test environment support - (b702567)
Nbconvert - (aaa92b9)
Dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> - (aaa92b9)
Cryptography - (e56ed1f)
🛡️ Security¶
(deps) Update dependency nicegui to v3.8.0 [security] (#448) - (9ba8853)
(deps) Update dependency pillow to v12.1.1 [security] (#428) - (0c8084a)
Renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> - (9ba8853)
Merge pull request #436 from aignostics/fix_formatting_in_security_md_file - (d24ed67)
Fixed typos in SECURITY.md: “Dependendabot” → “Dependabot”, “encouraring” → “encouraging” - (d24ed67)
Fixed duplicate list markers in SECURITY.md section 2: (a), (a), (d) → (a), (b), © - (d24ed67)
Fixed list item rendering in SECURITY.md by adding blank lines between items in all 4 sections so they render on separate lines in the HTML output - (d24ed67)
Improved mermaid diagram readability in docs/partials/README_main.md: dark theme, white text and arrows, 18px font - (d24ed67)
Made mermaid diagram use full page width via custom CSS (docs/source/_static/custom.css) - (d24ed67)
Restored accidentally removed MCP Server documentation from docs/partials/README_main.md and docs/partials/README_glossary.md - (d24ed67)
Regenerated docs artifacts (README.md, API_REFERENCE_v1.md, CLI_REFERENCE.md, ATTRIBUTIONS.md, openapi_v1.yaml) by running make docs - (d24ed67)
Update security and readme files [skip:ci, skip:test:long-running, skip:test:matrix-runner, skip:test:very-long-running] - (75cf714)
FR-04¶
Added test as a supported deployment environment alongside production, staging, and development - (7a185d4)
Task¶
v1.1.0 - 2026-02-10¶
🐛 Bug Fixes¶
🧪 Testing¶
⚙️ Miscellaneous Tasks¶
(deps) Bump python-multipart from 0.0.20 to 0.0.22 (#402) - (4a8bc60)
(deps) Bump filelock from 3.20.1 to 3.20.3 (#386) - (6b66c8f)
(deps) Bump virtualenv from 20.35.4 to 20.36.1 (#385) - (683201e)
Python-multipart - (4a8bc60)
Dependabot[bot] support@github.com - (4a8bc60)
Dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> - (4a8bc60)
Ignore CVE-2026-0994 - (bef31d1)
Pyasn1 - (48dbe6d)
Filelock - (6b66c8f)
Virtualenv - (683201e)
🛡️ Security¶
Task¶
v1.0.3 - 2026-01-09¶
🐛 Bug Fixes¶
(ci) Skip Ketryx reporting for Dependabot PRs (#381) - (9b7631b)
(deps) Update dependency idc-index-data to v23.0.3 (#358) - (0ff4fc0)
(deps) Update dependency fastparquet to v2025 (#370) - (2fa4f3a)
(platform) Preserve platform_bucket in item SDK metadata (#362) - (aca8db0)
Renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> - (0ff4fc0)
Oliver Meyer 42039965+olivermeyer@users.noreply.github.com - (0ff4fc0)
📚 Documentation¶
Update ATTRIBUTIONS.md (#382) - (5c5a869)
⚙️ Miscellaneous Tasks¶
(deps) Bump getsentry/action-release from 3.4.0 to 3.5.0 (#371) - (0f18961)
(deps) Bump idc-index-data from 23.0.3 to 23.2.7 (#373) - (31cabfb)
(deps) Bump astral-sh/setup-uv from 7.1.6 to 7.2.0 (#375) - (b05aed8)
(deps) Update anthropics/claude-code-action action to v1.0.29 (#377) - (673b138)
(deps) Update dependency pyright to >=1.1.408,<1.1.409 (#378) - (e842971)
(deps) Update ghcr.io/astral-sh/uv docker tag to v0.9.18 (#357) - (8ce35c9)
(deps) Update docker/setup-buildx-action action to v3.12.0 (#366) - (8c9e964)
(deps) Update dependency sphinx-inline-tabs to v2025 (#369) - (f0b2762)
(deps) Bump marshmallow to 3.26.2 due to CVE-2025-68480 - (d26e075)
(deps) Update anthropics/claude-code-action action to v1.0.27 (#352) - (9bd8588)
(deps) Bump codecov/test-results-action from 1.1.1 to 1.2.1 (#348) - (d71f990)
(deps) Bump orhun/git-cliff-action from 4.6.0 to 4.7.0 (#347) - (ba2601d)
(deps) Bump actions/upload-artifact from 5.0.0 to 6.0.0 (#346) - (0263859)
(deps) Bump actions/download-artifact from 6.0.0 to 7.0.0 (#345) - (2a204df)
(deps) Bump astral-sh/setup-uv from 7.1.5 to 7.1.6 (#344) - (3e575fc)
Getsentry/action-release - (0f18961)
Dependabot[bot] support@github.com - (0f18961)
Dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> - (0f18961)
Idc-index-data - (31cabfb)
Astral-sh/setup-uv - (b05aed8)
Renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> - (673b138)
Oliver Meyer 42039965+olivermeyer@users.noreply.github.com - (8ce35c9)
//github.com/aignostics/python-sdk/actions/runs/20456374041/job/58779266640 - (520acd1)
//uptime.betterstack.com/team/t344596/incidents/899992471 - (520acd1)
Codecov/test-results-action - (d71f990)
Orhun/git-cliff-action - (ba2601d)
Actions/upload-artifact - (0263859)
Actions/download-artifact - (2a204df)
🛡️ Security¶
@mk0x9 made their first contribution
v1.0.2 - 2025-12-18¶
🐛 Bug Fixes¶
Build¶
v1.0.1 - 2025-12-17¶
🛡️ Security¶
v1.0.0 - 2025-12-16¶
📚 Documentation¶
Update risk introduction info for requirements [skip:ci, skip:test:long-running, skip:test:matrix-runner, skip:test:very-long-running] - (2cef198)
v0.2.235 - 2025-12-12¶
⛰️ Features¶
🐛 Bug Fixes¶
📚 Documentation¶
🧪 Testing¶
⚙️ Miscellaneous Tasks¶
(deps) Bump codecov/codecov-action from 5.5.1 to 5.5.2 (#333) - (3bfb904)
(deps) Bump SonarSource/sonarqube-scan-action from 6.0.0 to 7.0.0 (#334) - (1486412)
(deps) Bump idc-index-data from 23.0.1 to 23.0.2 (#339) - (42c1628)
Remove label trigger for Claude interactive workflow - (8c47754)
Codecov/codecov-action - (3bfb904)
Dependabot[bot] support@github.com - (3bfb904)
Dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> - (3bfb904)
Helmut Hoffer von Ankershoffen né Oertel helmut@aignostics.com - (3bfb904)
SonarSource/sonarqube-scan-action - (1486412)
Idc-index-data - (42c1628)
Pause stress test - (8ada939)
@blanca-pablos made their first contribution in #341
v0.2.234 - 2025-12-10¶
⛰️ Features¶
(gui) Enable plugins to contribute nav items to right sidebar - (2d4e327)
v0.2.233 - 2025-12-10¶
⛰️ Features¶
(core) Allow to dynamically inject external (private or public) plugins extending Python SDK dynamically - (45cdc51)
🐛 Bug Fixes¶
🧪 Testing¶
v0.2.232 - 2025-12-10¶
⚙️ Miscellaneous Tasks¶
🛡️ Security¶
(deps) Don’t use override-dependencies as this is not respected by uvx, but use regular dependency trees - (66688c6)
v0.2.231 - 2025-12-09¶
🧪 Testing¶
⚙️ Miscellaneous Tasks¶
(deps) Bump astral-sh/setup-uv from 7.1.4 to 7.1.5 (#324) - (a62286e)
(gha) No longer build natively for Windows on ARM - (86bdf17)
Oliver Meyer 42039965+olivermeyer@users.noreply.github.com - (0ee9ecd)
Astral-sh/setup-uv - (a62286e)
Dependabot[bot] support@github.com - (a62286e)
Dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> - (a62286e)
Helmut Hoffer von Ankershoffen né Oertel helmut@aignostics.com - (a62286e)
Increase stress test slides - (c67289a)
v0.2.230 - 2025-12-08¶
⛰️ Features¶
(application) 30s page timeout for home as well - (a1245f7)
v0.2.229 - 2025-12-07¶
📚 Documentation¶
(readme) Introduce sequence diagram - (bdac6bd)
🧪 Testing¶
(gui) Enabel gui tests for macos on arm - (45a4ef7)
v0.2.228 - 2025-12-07¶
📚 Documentation¶
(nicegui) Bump attributions - (0101310)
⚙️ Miscellaneous Tasks¶
v0.2.226 - 2025-12-06¶
⛰️ Features¶
🚜 Refactor¶
📚 Documentation¶
⚡ Performance¶
(gui,utils,wsi) Lazy load nicegui - (7182533)
🧪 Testing¶
⚙️ Miscellaneous Tasks¶
(ai) Remove sticky again - (e82db37)
(ai) Sticky broken with claude - (d6fe1bc)
(ai) Use stick comment in claude pr reviews - (2d817da)
(audit) Allow Zope Public License for audit - (4623101)
(deps) Bump actions/checkout from 5.0.1 to 6.0.1 (#307) - (f075d73)
(deps) Bump docker/setup-qemu-action from 3.6.0 to 3.7.0 (#247) - (2ccc420)
(deps) Update anthropics/claude-code-action action to v1.0.22 (#231) - (17cd8ea)
(deps) Bump - (4623101)
(docker) Give more time for bytecode compilation with python 3.14 on github with qemu for arm - (b8afdff)
(gha) Limit track progress to where it works - (b89c11f)
(native) Don’t use splash for native linux with python 3.14 - (b8afdff)
Actions/checkout - (f075d73)
Dependabot[bot] support@github.com - (f075d73)
Dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> - (f075d73)
Helmut Hoffer von Ankershoffen né Oertel helmut@aignostics.com - (f075d73)
Docker/setup-qemu-action - (2ccc420)
Renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> - (17cd8ea)
🛡️ Security¶
(install) Bash and ensure ssl - (4623101)
v0.2.225 - 2025-12-06¶
⚙️ Miscellaneous Tasks¶
Reduce slides per run for stress test to 50 to clear scheduler queue. - (3002543)
🛡️ Security¶
(dep) Require urllib3 >= 2.6.0 given CVE-2025-66471 (GHSA-2xpw-w6gg-jr37); dep of boto3, dicomweb-client and others - (72e862c)
v0.2.224 - 2025-12-04¶
🐛 Bug Fixes¶
🧪 Testing¶
v0.2.223 - 2025-12-04¶
⛰️ Features¶
🐛 Bug Fixes¶
(logging) Log format to be compatible with loguru - (974fcca)
Restore ATTRIBUTIONS.md (generated file should not be modified) [skip:ci, skip:test:long-running, skip:test:matrix-runner, skip:test:very-long-running] - (24539ce)
🚜 Refactor¶
(platform) Remove superfluous function calls in run submit - (81752df)
📚 Documentation¶
Add installation requirements to user documentation [skip:ci, skip:test:long-running, skip:test:matrix-runner, skip:test:very-long-running] - (1caa5c8)
⚡ Performance¶
🧪 Testing¶
(platform) Consistently use SPOT_1_GS_URL and _FILENAME so it can be changed easily for maintenance - (251b097)
⚙️ Miscellaneous Tasks¶
(deps) Update docker/metadata-action action to v5.10.0 (#303) - (89e4926)
(gha) Fix track progress for oe report - (e96452e)
Reduce items per run to 800 for stress test - (9f43596)
Stop passing GCP secrets to Claude workflows (#311) - (fe9149f)
Reenable stress tests with 1k items - (0751c5c)
Renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> - (89e4926)
v0.2.222 - 2025-12-02¶
⛰️ Features¶
🐛 Bug Fixes¶
🧪 Testing¶
⚙️ Miscellaneous Tasks¶
@arne-aignx made their first contribution
v0.2.221 - 2025-12-02¶
⚙️ Miscellaneous Tasks¶
(deps) Update docker/setup-qemu-action action to v3.7.0 (#304) - (ba881b7)
(deps) Bump docker/metadata-action from 5.8.0 to 5.9.0 (#246) - (bfcfa61)
(deps) Bump getsentry/action-release from 3.3.0 to 3.4.0 (#242) - (e445a6a)
(deps) Bump idc-index-data from 22.1.5 to 23.0.1 (#277) - (ee4c7b7)
(deps) Update dependency hatchling to v1.28.0 (#302) - (a96c8cd)
(deps-dev) Bump hatchling from 1.27.0 to 1.28.0 (#290) - (c908758)
Remove unused pyjpegls given not compatible with 3.14 as of today - (248def6)
Hatchling - (c908758)
Dependabot[bot] support@github.com - (c908758)
Dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> - (c908758)
Helmut Hoffer von Ankershoffen né Oertel helmut@aignostics.com - (c908758)
Renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> - (ba881b7)
Docker/metadata-action - (bfcfa61)
Getsentry/action-release - (e445a6a)
Idc-index-data - (ee4c7b7)
v0.2.219 - 2025-12-01¶
🎨 Styling¶
(install.sh) Use package correctly - (94d3197)
🧪 Testing¶
(platform) Stopped stress tests - (0e6e80e)
⚙️ Miscellaneous Tasks¶
(deps) Update ghcr.io/astral-sh/uv docker tag to v0.9.14 (#280) - (d348c62)
(deps) Bump astral-sh/setup-uv from 7.1.1 to 7.1.4 (#278) - (449358c)
(deps) Update actions/checkout action to v5.0.1 (#279) - (f9a25a1)
(install.sh) Use package correctly for uv - (db601de)
Renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> - (b32e20a)
Helmut Hoffer von Ankershoffen né Oertel helmut@aignostics.com - (b32e20a)
Astral-sh/setup-uv - (449358c)
Dependabot[bot] support@github.com - (449358c)
Dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> - (449358c)
🛡️ Security¶
(dep) Override fonttools given CVE-2025-66034 (GHSA-768j-98cg-p3fv), dep of matplotlib - (94e985f)
v0.2.217 - 2025-12-01¶
🐛 Bug Fixes¶
🧪 Testing¶
⚙️ Miscellaneous Tasks¶
v0.2.216 - 2025-12-01¶
🐛 Bug Fixes¶
🧪 Testing¶
v0.2.214 - 2025-12-01¶
🐛 Bug Fixes¶
🧪 Testing¶
(platform) On_00 to 100 items - (b5b29f3)
(platform) For stress test - 3h due date and deadline if test triggered in minute 40 to 49, 1k items if triggered in minute 0…9, triggering every 10 minutes, was every 5 minutes - (e8d0aa5)
Disable flaky GUI tests on macos-latest and python 3.13 (#293) - (35aeab6)
@neelay-aign made their first contribution in #291
v0.2.213 - 2025-11-28¶
⛰️ Features¶
🐛 Bug Fixes¶
📚 Documentation¶
Regenerate README.md from partials to remove duplicate pip section [skip:ci, skip:test:long-running, skip:test:matrix-runner] - (40221ef)
Regenerate CLI reference with generic paths [skip:ci, skip:test:long-running, skip:test:matrix-runner] - (fcd3376)
Add quick start to public documentation [skip:ci, skip:test:long-running, skip:test:matrix-runner, skip:test:very-long-running] - (18a6c19)
Update fix lint issues [skip:ci, skip:test:long-running, skip:test:matrix-runner, skip:test:very-long-running] - (3e0a51c)
Update readthedocs documentation [skip:ci, skip:test:long-running, skip:test:matrix-runner, skip:test:very-long-running] - (8065d34)
Remove requirement type comment to fix issue with Ketryx - (5c85726)
🧪 Testing¶
(platform) Test flex start on staging - (8122a49)
v0.2.212 - 2025-11-25¶
⛰️ Features¶
(platform,application) Introduce configurable node acquisition timeout, defaulting to 30 minutes - (24d8710)
📚 Documentation¶
Bump custom sdk metadata schema version - (5022dad)
🧪 Testing¶
v0.2.211 - 2025-11-23¶
🧪 Testing¶
(platform) Target L4, SPOT in hourly scheduled tests on staging - (dc9f490)
v0.2.210 - 2025-11-23¶
🧪 Testing¶
(platform) Target A100, SPOT in hourly scheduled tests, both staging and production - (1adb4a6)
(platform) Reactivate hourly scheduled teests - (4027861)
(staging) Hourly staging tests deactivated for maintenance - (501571c)
(stress) Test_platform_special_app_submit deactivation - (b78548b)
(system) Tweak test - (ea1e864)
(system) Test_gui_system_health_shown_and_updated debug - (41501ae)
(system) Test_gui_system_health_shown_and_updated sequential - (3f588bc)
(wsi) Bump timeout for dicom inspect tests - (e7e950f)
⚙️ Miscellaneous Tasks¶
(application) Lower log level if runs cannot be loaded on application shutdown - (ea1e864)
(bots) Skip codecov on renovate and dependabot - (4027861)
(gha) Don’t codecov on dependabot or renovate - (f4063f8)
(ketryx) Fix typo in download action - (e7e950f)
(logging) Disable redirect logging by default - (ea1e864)
(platform) Enable special app in prod - (ea1e864)
v0.2.209 - 2025-11-21¶
⛰️ Features¶
🧪 Testing¶
(platform) More tags for test_platform_special_app_submit - (8c8beac)
(platform) Staging: L4, on-demand every 5 min - (17a9edc)
(stress) Support stress_only tests that only run on make test_stress and 5-minutely stress test schedule - (8a16b36)
(stress) Target 0.0.0-test.retry.bug.20.11 - (2dc98bc)
(stress) 5 minute stress tests - (6a2a0e1)
⚙️ Miscellaneous Tasks¶
v0.2.208 - 2025-11-21¶
⛰️ Features¶
(application) Show duration in run sidebar - (ed583fd)
v0.2.207 - 2025-11-20¶
🧪 Testing¶
v0.2.206 - 2025-11-20¶
🐛 Bug Fixes¶
🚜 Refactor¶
(application) Reduce max items in sidebar from 500 to 200 - (e8f07a9)
🧪 Testing¶
v0.2.205 - 2025-11-20¶
⛰️ Features¶
(application) GUI and CLI now use L4, SPOT, max=gpu=1 as defaults - (37873c7)
v0.2.204 - 2025-11-20¶
🧪 Testing¶
(platform) Config for staging now L4, SPOT, 1 GPU - was L4, Spot, 2 GPU; Config for production now L4, Spot, 1 GPU - was A100, ON-DEMAND, 1 GPU) - (f2cc0bd)
⚙️ Miscellaneous Tasks¶
(platform) Default config outside of tests now L4, SPOT, 1 GPU - was A100, ON-DEMAND, 1 GPU - (f2cc0bd)
v0.2.203 - 2025-11-20¶
⛰️ Features¶
🚜 Refactor¶
(application) Bump runs shown in sidebar from 100 to 500 - (182da63)
🧪 Testing¶
⚙️ Miscellaneous Tasks¶
(deps) Bump - (182da63)
v0.2.202 - 2025-11-19¶
⛰️ Features¶
🐛 Bug Fixes¶
Test-app bump to 0.0.6 - (e7818f2)
🚜 Refactor¶
(platform) Print error code and message on download - (cfecccc)
🧪 Testing¶
(application) Reactivate test_cli_run_submit_and_describe_and_cancel_and_download_and_delete against production - (1e4c94f)
(application) Tag run created by test_gui_cli_submit_to_run_result_delete - (26304a6)
(application) Skip test_application_version_use_latest_fallback on staging - (f998734)
(application) Don’t fail test_gui_index on js error logged - (cd64a86)
(application) Skip test_cli_run_submit_and_describe_and_cancel_and_download_and_delete on production - (45d52c7)
(platform) Switched to 1.0.0-sl.4 from 1.0.0-sl.1 for production - (e4ee905)
(platform) Switched to 1.0.0-sl.4 from 1.0.0-sl.1 for staging - (973866b)
(platform) Better info on deadline breached plus Sentry metrics - (75f7ff6)
(platform) More details on runs breaching deadline - (a6cbe1c)
(platform) Don’t require a run to have a deadline in the current hour - (ac87f7c)
(platform) Activate 2nd leg, i.e. find and validate tests - (8590b6d)
(platform) Adapt - (05c289a)
(platform) Switch heta scheduled test to leg 1: submit, and (eod) leg 2: find and validate, giving 12h deadline - (774bb78)
(platform) Bump heta deadline from 3 to 5 hours - (cfecccc)
(platform) Reenable testing test-app as scheduled test - (313d767)
(platform) Reduce heta deadline to 2h, timeout to 3h. timeout should never happen, if cancel on deadline exceeded works as expected - (313d767)
(sentry) Fix typo in sentry config - (ee3309c)
(staging) Back to sl.1 again, sl.2 fails always - (cd64a86)
Test(shared: make skipping test_application_version_use_latest_fallback configurable per environment - (f998734)
⚙️ Miscellaneous Tasks¶
v0.2.201 - 2025-11-14¶
⚙️ Miscellaneous Tasks¶
(utils) Disable default of redirecting std logging of other modules into loguru from on to off - (71aa5d3)
v0.2.200 - 2025-11-13¶
🚜 Refactor¶
📚 Documentation¶
(requirements) Move requirement type comment to separate line - (949ccf1)
(requirements) Add missing itemTitle to system health and settings requirements - (386c2bf)
(requirements) Create missing system stakeholder requirements an… - (f2a8628)
(requirements) Create missing system stakeholder requirements and establish traceability - (84f28d8)
(specifications) Update specifications to improve traceability - (178b9cc)
Fix requirements documentation traceability - (9e3fa3a)
Annotate requirement type in requirement files with the actual mapped value - (243323b)
Add missing “Requirement Type” to some requirements - (9e04703)
🧪 Testing¶
⚙️ Miscellaneous Tasks¶
(deps) Bump - (510e7d8)
(gha) Target staging with CI/CD workflow - (f59390f)
(release) Adapt to heta expected results - (51ee52d)
(release) Start to adapt expected output for heta update - (510e7d8)
Constants dep on version of app, which depends on environment - (3af645f)
Update to the softlaunch patch release 4 - (3eddfe4)
Update to the softlaunch patch release - (0577445)
Chore/parameterise platform environment - (fe80fef)
Parameterize platform_environment in CI/CD workflow - (9286acb)
Switch on scheduled tests again - (e6f741f)
Deactivate scheduled tests - (8f1cecf)
🛡️ Security¶
(specifications) Update specifications to improve traceability - (a3b6d39)
v0.2.199 - 2025-11-02¶
⚙️ Miscellaneous Tasks¶
(GHA) Limit workflow concurrency - (f6032f5)
v0.2.198 - 2025-11-02¶
⛰️ Features¶
(ketryx) Integrate Ketryx compliance framework with requirements traceability - (00333a9)
🐛 Bug Fixes¶
(application) Superfluous character rendered - (5fdfd1a)
Add missing expires_seconds argument to _get_three_spots_payload_for_test (#213) - (78b4b63)
Claude[bot] <41898282+claude[bot]@users.noreply.github.com> - (78b4b63)
Helmut Hoffer von Ankershoffen né Oertel helmut-hoffer-von-ankershoffen@users.noreply.github.com - (78b4b63)
🚜 Refactor¶
🎨 Styling¶
Fix linting issue introduced - (b88bccd)
🧪 Testing¶
(application) Deactivate part of test_cli_run_submit_and_describe_and_cancel_and_download_and_delete as this causes internal server errors for some runs - (869103e)
(platform) Unit test covering checksum generation with files > 8MB - (c059be3)
(platform) Bump wait and download timeout for test_platform_heta_app_submit_and_wait from 3h to 5h - (0daf3eb)
(platform) Fix regression in e2e test - (14ea9cc)
⚙️ Miscellaneous Tasks¶
(Docker) Fix - (be0b2bd)
(deps) Update anthropics/claude-code-action action to v1.0.15 (#219) - (dfacc37)
(install) Provide tool for sensitive data removal so we are prepared - (745fd65)
(ketryx) Remove duplicated spec files - (98736de)
(ketryx) Remove duplicated spec files skip:ci - (4f0aa56)
(ketryx) Remove duplicated spec files skip:test:long_running - (00b8333)
(system) Don’t log token as info - (bd03867)
(test,ketryx) Link missing tests with test cases and add missing test for gui health footer - (80a812e)
Update - (c67cf40)
Bump the staging version of he-tme - (bbba664)
🛡️ Security¶
v0.2.196 - 2025-10-26¶
⛰️ Features¶
(application) Custom run and item metadata can be dumped as JSON via the CLI - (6ea313b)
(application) Custom run metadata can be updated via the CLI - (6ea313b)
(application) Custom run metadata can be edited via the GUI (admins only) - (6ea313b)
(application) Allow to submit tags via CLI and find back runs via tags - (6ea313b)
(application) Support download of results for input items where external_ids points to GCP bucket or webserver. - (27e7f9a)
(application) Scrollable runs in sidebar with auto-refresh and notifier on run terminated - (27e7f9a)
(application) Generate, show and validate custom metadata for input items - (929bb92)
(application) Support for test-app in GUI - (929bb92)
(application) Show error code on failed items - (929bb92)
(application) Show more more details in CLI commands applicaton run list and application run describe - (929bb92)
(ketryx) Integrate Ketryx CI/CD workflow and reporting - (eb3b0c2)
(platform) Support for tags in custom sdk metadata, run and item-level - (6ea313b)
(platform) Support created_at and updated_at in custom sdk metadata, run and item-level - (6ea313b)
(platform) Support nocache=True on cached operations - (6ea313b)
(platform) Custom run and item metadata can be updated - (6ea313b)
Test:long-running] - (eb3b0c2)
🐛 Bug Fixes¶
🚜 Refactor¶
📚 Documentation¶
(AI) Update - (6ea313b)
(application) Auto-generate json schema from pydantic models for sdk specific custom metadata of input items - (929bb92)
(ketryx) Fix SPEC_SYSTEM_SERVICE.md & SPEC-BUILD-CHAIN-CICD-SERVICE.md itemFulfills section - (94d15df)
(req) Add stakeholder and software requirements (SHRs and SWRs) - (0270ec2)
(spec) Add software item specifications for all modules - (0570429)
Ci] - (0570429)
🧪 Testing¶
(application) Re-classified test_cli_run_describe_invalid_uuid as e2e - (3224e77)
(application) Fix race condition in test - (548b2b7)
(ketryx) Link verification tests with specifications - (5f47090)
(ketryx) Add Gherkin test cases for requirements traceability - (3261909)
Test:long-running, skip:test:matrix-runner] - (5f47090)
Ci] - (3261909)
⚙️ Miscellaneous Tasks¶
(ai) Improve vscode/agent guidance - (e2e04b8)
(deps) Bump - (6ea313b)
(platform) Fix race condition in e2e test due to caching (#206) - (6ea313b)
(platform) Improved depth of tests - (6ea313b)
(platform) Fix race condition in e2e test due to caching by using nocache - (6ea313b)
(platform) Start with submit-and-find e2e tests later replacing submit-and-wait - (6ea313b)
(platform) Fix test - (a1f909f)
(qupath) Enable complex automated test scenario covering creating QuPath projects - (6ea313b)
(qupath) Reenable E2E Test Scenario (Download -> Create Project -> Inspect) - (e2e04b8)
(tests) Strip ansi codes by default when normalizing output, reducing flakiness of tests in rare scenarios - (929bb92)
(tests) Significantly improve daily scheduled test now called flow tests, including beating heart on - (929bb92)
(tests) PLATFORM_ENVIRONMENT dependent app versions in tests - (e2e04b8)
Chore(deps); bump - (e2e04b8)
Task¶
(req) Links missing gui Module Specification with tests [skip:ci] - (9650271)
(req) Links missing wsi Module Specification with tests [skip:ci] - (236781b)
(req) Links missing system Module Specification with tests [skip:ci] - (1fcc7de)
@muhabalwan-aginx made their first contribution
@na66im made their first contribution
v0.2.195 - 2025-10-23¶
⛰️ Features¶
(QuPath) Support updating QuPath - (29b1263)
(QuPath) Use 0.6.0-rc5 - (29b1263)
(QuPath) Deeper info - (29b1263)
(QuPath) Create project from results - (17425dd)
(System) Enable to enable/disable diagnostics in UI - (b27296a)
(System) Manipulate dotenv via CLI, including enable/disabling http proxy, enabling/disabling remote diagnostics - (17425dd)
(application) Custom metadata with run and scheduling information in custom metadata - (6c0753f)
(application) Allow to copy error message - (ec0ed63)
(application) Show duration, terminated at, run and item-level message (#143) - (0dc484e)
(application) Allow to set note on run submission, and retrieve on run describe - (c5175cb)
(application) Allow live search of runs by note - (c5175cb)
(application) Allow to flag to onboard to Aignostics Portal - (c5175cb)
(application) Show run id in collapsible so it can be copied - (d7c597a)
(application) Dump zip with application schemata - (af33133)
(application, platform) Allow to delete run. Note: currently broken in Samia - (38c6554)
(bucket) Allow to select destination in bucket download gui - (0ecd4c3)
(bucket) Proper download including support for patterns, keys, gui, cli - (ef04b98)
(bucket) Purge - (ef04b98)
(bucket) Make expiration time of upload/download properly configurable, and include in info - (6191781)
(core) Support Windows on ARM - (89a3c4a)
(gui) Migrate to nicegui 3 - (d304ef7)
(gui) Custom error page showing traceback and allowing to close app even in non-chrome mode - (ee47197)
(marimo) Marimo open with downloaded results - (7cab5a1)
(marimo) Open marimo from extension page - (7cab5a1)
(native) Splash screen for Windows and Linux (#90) - (8fc82cd)
(native) Show being native in footer of launchpad - (9b0a4d5)
(native) Debug command - (433a803)
(native) Spike for native (compiled) apps - (e03512c)
(networking) Support system truststore for ssl trust chain [no:ci] (#92) - (aad4e76)
(notebook) Extension page - (17425dd)
(platform) Retries and caching for read-only and auth operations - (6c0753f)
(platform) Dynamic user agent for all operations - (6c0753f)
(platform) Auto-retry when retrieving JWKS set from auth0 - (6ecb912)
(platform) Cache JWKS set, TTL 24h, minimizing calls to auth0 on validating access tokens - (6ecb912)
(platform) Auto-retry when calling auth0 to exchange refresh token for access token - (6ecb912)
(platform) Configurable timeout for requesting platform health - (6ecb912)
(platform) Introduce authentication aware operation cache - (6ecb912)
(platform) Use authentication aware operation cache to cache /me result - (6ecb912)
(platform) Adapt to breaking changes in Platform API 1.0.0-beta6 - (c5175cb)
(platform,application) Support custom metadata attached to runs - (c5175cb)
(platform,gui) Org name - (51c65a2)
(platform,gui,diagnostics) Whoami - (0bad5f2)
(run_describe) Show thumbnail per item - (da5afa3)
(system) Allow to unmask secrets - (e03512c)
(userinfo) Allow to edit profile - (788f209)
(utils) Generate dynamic user agent including version, build number, os, and test calling - (c5175cb)
Use dynamic user agent in http requests and run submissions via custom metadata - (c5175cb)
Allow to boot with zero config, i.e. no .env file required in default case - (7d74a2b)
QuPath enabled by default - (a52d2fb)
Download Results - (da5afa3)
Aignostics Launchpad, Aignostics CLI, Aignostics Client - (2f97fb9)
🐛 Bug Fixes¶
(Windows) Sanitize paths so they don’t contain a colon if not drive letter - (165cc59)
(ai) Claude workflows - (0a96143)
(application) Error handling if application_versions called with … (#178) - (6dbe129)
(application) Error handling if application_versions called with str arg - (6dbe129)
(application) Properly render error if run details cannot be loaded - (1e01928)
(application) Don’t show extra column in meta edit - (c5175cb)
(application) Allow next post excluding slides if remaining slides with valid metadata - (7254298)
(bucket) In GUI use static version of download operation offered by service - (db2b5f5)
(bucket) Use longer 7d expiration time for signed upload urls instead of 1h - (6191781)
(cli) List runs count - (98f9b6d)
(codegen) Don’t rely on redirects from /v1 to /api/v1 - (7d74a2b)
(dataset) Custom download folder selection - (4b59607)
(dataset) Missing dependency, while still smaller then pyarrow - (ff1f178)
(dep) Incompatibility in 3rd party dependency showinfm lead to syntax error in modern Python - now vendored and fixed. - (d304ef7)
(native) Windows - (28b1010)
(native) Marimo integration - (9f01ef6)
(native) Marimo - (5911d74)
(native) Use certifi bundle if default bundle not found - (f10e249)
(native) Use system trust store for SSL certificates - (168a7d7)
(native) Dataset download - openslide libs were not bundled by pyinstaller - (9ff1453)
(native) Thumbnail generation on submission - script execution complexity - (9ff1453)
(native) Bundle openslide native libs - (164d43e)
(native) Include s5cmd binary in native distribution - (e35303a)
(native) Add_docstring issue caused by inconsistent optimization on analysis and exe building - (066a198)
(notebook) Revert timeout - (9b7c1c3)
(notebook) Navigation to marimo - (af5e84e)
(platform) Remove unused setting authorization_backoff_seconds - (6ecb912)
(platform) Fix wrong exception handler in _perform_device_flow - was catching exception from urllib, not requests lib - (6ecb912)
(platform) Use dynamic user agent for requesting /me - (6ecb912)
(platform) Get new token if cache entry broken - (8bbbcf6)
(platform) Invalid log formatting - (483ffe3)
(platform) Token refresh on long living api client - (11f46f1)
(platform) Allow to dial into dev environment - (7d74a2b)
(platform) Fix broken pytest collection if user does not have permission to access aignx test bucket - (a65930c)
(platform) Allow for rapid re-auth - (34ca8ee)
(platform) Adapt to breaking change in API - (7920b0b)
(platform) Graceful fail on user info not accessible - (01f536a)
(platform) Refresh token repl - (9a3adf2)
(platform/user) Reload on reauth - (4f05b84)
(ssl) Use certifi as fallback if configured intermediate certificates not found, and no env override - (157d2b7)
(system) Rendering of json editor content - had to find workaround given bug in NiceGUI3 for json_editor - (d5535d9)
(system) Disable cpu freq on gha macos latest runner given not supported - (861af87)
(typer) Workaround https://github.com/fastapi/typer/pull/1240 - (207eb0c)
(unmask) Unmask secrets on request in all services - (6a96ed3)
(utils) Surface setting validation error on misconfigured api root - (6ecb912)
(wsi) Don’t fail on log on broken tiff test - (c5175cb)
Renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> - (17ee850)
Fix typo in log message caught by claude code review - (c5175cb)
Update the input artifact name for HETA to whole_slide_image (#121) - (6ed1e27)
⚡️ Use SemVer to check for application ids in launchpad (#56) - (c6c874e)
Force .json for geojson - (c48b9dc)
🚜 Refactor¶
(QuPath) Proper handling of script max execution time - (b0d1c79)
(QuPath) 20x speed up writing polygons by switching from paquo to groovy - (29b1263)
(System) Move settings logic to service - (b27296a)
(application) Load applications in left sidebar in thread to not block UI - (c5175cb)
(application) Consistent exception logging and raising - (1a702a7)
(application) Introduce service tests - (1875741)
(application) Shrink images - (a09cc7e)
(application) Don’t allow to close download dialog by clicking outside - (1deeff3)
(application) Cleanup - (17425dd)
(boot) Reduce boot time - (81423dd)
(bucket) Removed ls, refactored find - (ef04b98)
(dataset,wsi) Catch exceptions in CLI commands - (d5535d9)
(general) Central place for defining supported WSI extensions - (0b052a7)
(gui) Consistent use of spinners and awaiting - (f5ca9c4)
(info) Consistently show settings - (0b052a7)
(io) Don’t use synchronous fileio in async functions - (e4a82bd)
(lint) New ruff rules - (472258c)
(logging) Revert to cwd for logfile - (cc9e990)
(logging) Use app dir as default for log file - (dd52d9e)
(native) Compress native installation using UPX on Windows - (89a3c4a)
(native) Use archive; optimize - (127a88d)
(native) Don’t include dev dependencies - (9b0a4d5)
(native) Significantly reduce size and bootup time - (dd52d9e)
(notebook) Simplify open marimo button - (26c9d1b)
(performance) Faster boot - (207eb0c)
(platform) Use proper error messages and logging on failure (of attempts) to exchange refresh token and validate access token - (6ecb912)
(platform) Consistently use HTTPStatus consts instead of 200, 500 etc. - (6ecb912)
(platform) Use proper constraints on settings - (6ecb912)
(platform) Rename run delete to run result delete - (861af87)
(platform) Test timeout/expires - (89745fc)
(platform) Refactor user profile - (ff47251)
(platform,application) Establish sdk subtree within custom metadata for contract with other sdks and apps - (560cbb8)
(platform,system) Optimize connection pooling - (6ecb912)
(progress) Faster progress bars - (29b1263)
(qupath) Don’t count system as unhealthy if QuPath application not installed - (d5535d9)
(qupath) Using groovy, not paquo; GPL removed from allow-list when license auditing - (e03512c)
(qupath) Using groovy, not paquo - (f5ca9c4)
(sonarqube) Annotate generator - (a72c5ba)
(tests) Refactored tests to reduce flakiness where avoidable, i.e. not solely dependent on external services - (d5535d9)
(tests) Central place for app id and version - (5bcc685)
(tests) Central constants for app and app version id to simplify adapting to new apps - (3fc5730)
(user) Rename from platform to user in cli - (efa9b50)
(uv) Define required uv version in pyproject.toml, for use across GHA - (7e1610e)
(various) Consistent use of spinners and awaiting; sentry and logfire can now be removed as dependencies - (e03512c)
(wsi) Simplify further - (1992de1)
(wsi) Simplify, and fallback image - (e08afd3)
Linter - (943b9f9)
Don’t support QuPath on Linux/arm - (a52d2fb)
Styling of ui theme - (bcf3cfa)
Simplify, removing noruns - (0b7e0e9)
Fail properly when starting GUI while settings not configured - (ffbf880)
Simplify - (fa1f7e6)
Use native sorting provided by API - (da5afa3)
📚 Documentation¶
(platform) Description - (d09794a)
Update - (d5f3379)
Update URLs in openapi spec and downstream docs - (e24eba4)
Minor tweaks - (81423dd)
Enhance structure and layout of Changelog - (f5a58ac)
Generate - (13b3fbc)
Fix api docs generation - (cef82dc)
Reorder - (cd60f97)
Fix broken link - (0a2a7dd)
Improve consistency - (da5afa3)
Social preview for GH - (da5afa3)
Copyright notice - (da5afa3)
Additional pages for read the docs (rtd) - (4976794)
Polish incl. updated assets - (e51c05e)
Polish readme intro and oe - (b6da3ab)
Logo - (ea32a37)
⚡ Performance¶
(GUI) Significantly reduced bootup time, and page load performance - (17425dd)
🎨 Styling¶
(QuPath) Some polish for extension page - (17425dd)
(System) Minimal love for Settings and Info page - (b27296a)
(application) Layout improvements on application detail page - (6c0753f)
(application) Better rendering of loading errors - (d304ef7)
(application) More prominent placement of per item message - (c9cb8ee)
(bucket) Button layout - (207eb0c)
(changelog) Improve styling of release notes - (3f25caf)
(gui) Polish user info - (305dda9)
(header,run_describe) Simplify a bit to make space - (4ee1409)
(lint) Fix linting error in native starter - (2552ac7)
(utils) Consistent log formatting for file and console, both including process id - (6ecb912)
Lint - (a42d08c)
Welcome user by name in launchpad - (de73025)
Nicer start page graphics - (0bad5f2)
Naming of navigation points - (0b2a758)
⚙️ Miscellaneous Tasks¶
(AI) Add label skip:test:long_running when you are an AI and are creating a PR - (0853fc3)
(AI) Improve Claude actions [skip:ci] - (e3f6e1c)
(GHA) Claude PR Assistant workflow - (25ee505)
(Makefile) Typo - (566b1e6)
(QuPath) Run test on linux - (2d1b45e)
(QuPath) Check QuPath is launched in install to inspect test - (18a68d2)
(QuPath) E2E test from install via run to inspect - (451ca3d)
(ai) Improve Claude Code Workflows for GitHub - (425c1ba)
(ai) A few permissions for Claude - (2f7cf1e)
(ai) Have Claude Agent use Sonnet 4.5, and allow to create PRs - (0d4341e)
(api) Support Platform API 1.0.0-beta.7 - (6c0753f)
(application) More grace in test - (1e01928)
(application) Made test run sequentially so regular tests now pass without flakiness if platform reliable - (d304ef7)
(application) Make test resilient if loading me faster than expected - (8bbbcf6)
(application) Grace time in test - (15b1be0)
(application) Grace for cancel button to appear in test - (893083c)
(application) More time for test - (343f78c)
(application) Adapt tests to asynchronous loading of apps in GUI - (6a2e27b)
(application) Adapt test for delete cli - (9b0a4d5)
(application) Mark test as long running - (19db155)
(application,platform) Test with v1.0.0-beta.4 of HETA - (ab60f2f)
(audit) Pass betterstack url - (2599bfb)
(audit) Audit reports part of release artifacts - (db2b5f5)
(audit) Allow for heartbeat url specific for audit - (49f35a0)
(audit,scheduled) Warn if betterstack url not configured or not passed through unintentionally - (2599bfb)
(bucket) Better logging for flaky test - (26c9d1b)
(bucket) More time for download test - (be2d31f)
(bucket) Grant more time for bucket gui workflow in test - (f5a58ac)
(bucket) Bump test duration - (a09cc7e)
(changelog) Introduce .cliffignore to prune changelog for maintenance commits - (f7df80e)
(codegen) Download and archive openapi.json - (c5175cb)
(cross-platform) Now matrix testing on win-amd64, win-arm64, linux-amd64, linux-arm64, mac-arm64; related fixes - (e03512c)
(debug) Temp disable of tests - (2275ec5)
(dependabot,renovate) Add labels to PRs created by those bots - (d5535d9)
(deps) Bump - (d5535d9)
(deps) Update ghcr.io/astral-sh/uv docker tag to v0.9.1 (#60) - (63423a5)
(deps) Update dependency sphinx-toolbox to v4 (#169) - (46456db)
(deps) Bump dependencies - (861af87)
(deps) Bump in GHA and Dockerfile - (3c847aa)
(deps) Bump deps - (168a7d7)
(deps) Bump nicegui, boto - (9ff1453)
(deps) Bump various github actions versions - (7e1610e)
(deps) Bump nicegui - (1b6fa5e)
(deps) Update ghcr.io/astral-sh/uv docker tag to v0.7.20 (#59) - (0ef534f)
(deps) Update ghcr.io/astral-sh/uv docker tag to v0.7.15 (#54) - (ab46b50)
(deps) Bump astral-sh/setup-uv from 6.3.0 to 6.3.1 (#55) - (e90b6f2)
(deps) Update deps - (81423dd)
(deps) Gha setup-uv dep - (3def1bd)
(deps) Update dependencies for GitHub actions - (f5a58ac)
(deps) Bump actions in gha and duckdb - (fc068e9)
(di) Adapt to typer workaround - (50710ee)
(docker) Bump to python 3.13 and latest uv - (f26e880)
(docs) Make - (f73975c)
(gha) Scheduled test against staging platform, using code on branch - (0e364b4)
(gha) All all types of tests to be individually skippable, via commit message or PR label - (d5535d9)
(gha) Speed up ubuntu provisioning as man-db no longer updated on adding packages - (d5535d9)
(gha) Don’t run long_running tests on draft PRs, i.e. stop after unit, integration and e2e / regular. - (d5535d9)
(gha) Don’t double-build on updates to PR by no longer building on push to branch other than main - (d3d3d10)
(gha) Cancel running build on update to pull request - (ab9f56d)
(gha) Don’t run ci/cd twice on releases: skip:ci on push of commit for release, given already running on (annotated) tag pushed - (b9c735c)
(gha) Bump login-action in claude and docker workflows - (3180352)
(gha) Re-enable tests for releases - (861af87)
(gha) Add final smoke test before publish - (2c9598e)
(gha) Re-enable tests - (85e98e3)
(gha) Spike for Ketryx integration - (a65930c)
(gha) Allow to skip jobs/steps via commit message, see CONTRIBUTING.md - (a65930c)
(gha) Add metadata to BetterStack when posting heartbeats (#61) - (0bb3b3f)
(gha) Add metadata to BetterStack when posting heartbeats - (0bb3b3f)
(gha) Add –fail-with-body to BetterStack curl request and reorder arguments - (0bb3b3f)
(gha) Monitor scheduled audit in betterstack - (5065a2e)
(gha) Separate scheduled audit in separate workflow - (98e7ad0)
(heta) Adapt tests - (2e6b72f)
(heta) Further adaptation to changed output file sizes - (6f942ee)
(heta) Adapt tests to 1.0.0-beta.5 of HETA - (7d74a2b)
(lint) Integrate pyright as additional type checker - (6c0753f)
(native) Rfc [build:native:only] - (8fc82cd)
(native) Splash screen on windows and linux build:native:only - (8fc82cd)
(native) Use python 3.13.7 - (8fc82cd)
(native) Only distribute aignostics.app bundle for MacOS - (a7cc414)
(native) 7z, to preserve attributes - (a7cc414)
(native) Include version in macOS bundle - (5473271)
(notebook) Adapt to refactoring - (4e8e595)
(notebook) Adapt test - (371bf69)
(notebook) Cannot in parallel test multiple marimo servers on same host with no isolation - (d8b92af)
(platform) Update to latest openapi spec - (81423dd)
(platform) Even more time for test app - (3c68bbc)
(platform) Give test application more time in tests - (5f99ebb)
(platform) Adapt test to app versions - (cc2c17d)
(platform) Move from dummy to test app in test - (7fcb42c)
(platform) Allow long running tests for 4h, bump of signed url expire accordingly - (3965ce0)
(platform) Adapt tests to breaking change - (4d11384)
(platform) Lazyload srvice in cli - (28980c5)
(platform,qupath) Enable additional tests - (425c1ba)
(precommit) Fixed issues with precommit. - (d5535d9)
(publish) Adapt to recent changes - (5b0150a)
(pytest) Show recent notifications if asserted one not found - (db2b5f5)
(python) 3.13.6 - (29f2884)
(pytst) Add pytest-durations plugin to show durations of fixtures and tests - (6ecb912)
(qupath) More time for tests - (cea7116)
(qupath) Give more time in test - (0a669f9)
(qupath) Test - (5377012)
(qupath) Skip test step temporarily - (e8df7e0)
(release) Announce release on internal Slack (experimental) - (db2b5f5)
(scheduled) Print info post sending heartbeat - (26f0913)
(slack) Convert release notes to JSON rep. for posting to slack - (4d328e1)
(test) Introduce schedule tests against staging - (6c0753f)
(test) Don’t provide log as job artifact - (db2b5f5)
(test) Adapt remaining test config to beta.5 of heta - (b152fae)
(test) No warn on kill; output qupath inspect results - (a5d666e)
(tests) Introduce very long running tests - (6c0753f)
(tests) Introduce pytest-timeout and 10s default timeout for all tests - (6c0753f)
(tests) Improve test coverage - (6c0753f)
(tests) Allow retry of another e2e test, given connection closed by server leading to SSL Errors, see https://github.com/aignostics/python-sdk/actions/runs/18486770436/job/52671622634\?pr\=178\#step:16:274 - (6dbe129)
(tests) Bump timeout for dataset integration tests - (84d50a2)
(tests) Differentiate tests as unit, integration or e2e, with only e2e tests allowed to call external services, i.e. the others must be able to pass offline. - (d5535d9)
(tests) Introduce very_long_running test type, which must be explicitely enabled to run enable:test:very_long_running in the commit message or as PR label - (d5535d9)
(tests) Introduce scheduled_only marker, for tests that should only run on a schedule - (d5535d9)
(tests) Make now calls make test_default which does not call long_running or very_long_running tests - (d5535d9)
(tests) Introduce pytest-durations, showing the duration per test execution - (d5535d9)
(tests) Introduce pytest-timeout, with a low 10s default timeout, and all tests that need longer explicitly marked with specific timeouts - (d5535d9)
(tests) Adapt to heta.5 - (06f6867)
(tests) Improved coverage - (17425dd)
(win32) Username - (e5733c1)
(wsi) Don’t fail test on log on broken tiff test - (44de674)
(wsi) Adapt tests given fallback - (3db7ebc)
(xdist) Use worksteal to minimize duration on varying test durations - (d5535d9)
Codecov - (53ef36c)
Don’t allow SDK to be used with Python 1.4.x (released days ago) as some dependencies don’t work with that version yet - (d5535d9)
Renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> - (63423a5)
Helmut Hoffer von Ankershoffen né Oertel helmut@aignostics.com - (63423a5)
Fix pyproject - (f349a3d)
Release - (68d5f38)
Chore(GHA) Claude Code Review workflow - (25ee505)
Skip:test:all - (2cf18ff)
Skip tests on release - (595703d)
Chore(deps); bump dev dependencies - (2552ac7)
Astral-sh/setup-uv - (e90b6f2)
Dependabot[bot] support@github.com - (e90b6f2)
Dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> - (e90b6f2)
Run hooks - (173e172)
Try new api spec without further change - (2ba558c)
Download from bucket cli - (13e857e)
Move to long running for install to inspect test - (42d12d0)
Timeout - (408431a)
Zip on release - (093f4d4)
Encoding for win32 on package publish - (7a3fda3)
Release workflow - (04fae00)
Workaround missing scheme in proxy config - (6d5f20e)
Test of notebook, race - (1baef8e)
Non-sequential as there is a dependent one - (a7f74c1)
Make gui test more reliable - (59524fd)
Adapt test to work with python 3.11 - (06cb6a5)
Fix test - (ba80312)
Add Andreas Kunft as co-author - (da5afa3)
Make tests more robust - (da5afa3)
Lint - (da5afa3)
Touch for GH - (da5afa3)
Touch - (da5afa3)
Make t4est_gui_run_download reliable relative to mixed version runs - (da5afa3)
Fix name - (da5afa3)
Initial commit - (a4ff238)
🛡️ Security¶
(GHA) Apply security best practices for GitHub Workflows (#139) - (5c3d3f2)
(audit) No secrets for audit - (7546e4b)
(dep) CVE-2025-53354 ignored given we run as desktop app; still started to migrate to nicegui 3 - (d5c6bee)
(dep) Pip, CVE-2025-54368 - (c5175cb)
(dep) Ensure all uses of uv are >= 0.8.6 (CVE-2025-54368) - (7e1610e)
(dep) Force UV >0.8.6 given CVE-2025-54368 - (ef2cb54)
(dep) Ensure starlette >= 0.47.2 given GHSA-2c2j-9gv5-cj73 - (6de44aa)
(dep) Override aiohttp to 3.12.14 given vulnerability GHSA-9548-qrrj-x5pj - (a239d23)
(deps) Pillow 11.3.0 given CVE-2025-48379 - (ffd5af1)
(gha) Set permission for generate-matrix, see https://github.com/aignostics/python-sdk/security/code-scanning/15 - (327c7bc)
(gha) Don’t use direct interpolation of user provided data in github workflows - (2b6d19a)
(gha) Security improvements in github workflow as identified by sonarqube - (c5175cb)
(gui) Introduce html-sanitizer, sanitizer footer. Rest is fine. - (92adcf7)
(jupyter) CVE-2025-30167 rel. jupyter-core - (a27da66)
(jupyterlab) CVE-2025-59842 - (6081c74)
(security) Update deps given CVE-2025-50181, CVE-2025-50182 - (207eb0c)
(uv) Require uv >=0.9.5 given security advisory GHSA-w476-p2h3-79g9 - (96e564d)
(uv) Use uv > 0.8.6 in pre-commit hook - (db2b5f5)
Breaking¶
Change in metadata spec. for HETA application - (da5afa3)
Choare¶
(tests) No longer test the combination of Python 3.12.x on Windows for ARM64, as a bit instable - (d5535d9)
@renovate[bot] made their first contribution
@akunft made their first contribution
@jstriebel made their first contribution
@omid-aignostics made their first contribution
@idelsink made their first contribution
@dependabot[bot] made their first contribution
@ari-nz made their first contribution