1.2.0 - 2026-03-10
- (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)
- (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)
- Shallow plugin discovery (#462) - (fa4eeb3)
- 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)
- (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)
- (tests) Implement factory methods (#455) - (250cc58)
- Claude Sonnet 4.6 noreply@anthropic.com - (403ba60)
- (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)
- (bucket) Add server-side prefix filtering to find() to avoid full bucket scans - (0a24176)
- Claude Sonnet 4.6 noreply@anthropic.com - (0a24176)
- 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)
- (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)
- Update bucket used for E2E tests (#454) - (894ee74)
- 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)
- (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) Resolve vulnerabilities (#430) - (e71465a)
- (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)
- (he-tme) Bump staging to 1.1.0 (#450) - (fb150e4)
- 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)
- Add compass.yml file (#441) - (0414a3c)
- 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)
- (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), (c) - (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)
- Added test as a supported deployment environment alongside production, staging, and development - (7a185d4)
- @atlassian-compass[bot] made their first contribution in #441
- @nahua-aignx made their first contribution in #440
- @melifaro made their first contribution in #422
v1.1.0 - 2026-02-10
- Revert exclude null flex_start_max_run_duration_minutes in GPUConfig (#394) - (1a6cc82)
- Exclude null flex_start_max_run_duration_minutes in GPUConfig (#391) - (420c548)
- Fix import order in test_cli_gui_run (#419) - (283d2f8)
- Unset flex_start_max_run_duration_minutes when null or zero (#403) - (3f69353)
- Use GPUConfig in E2E test (#393) - (2e89ef3)
- (deps) Bump python-multipart from 0.0.20 to 0.0.22 (#402) - (4a8bc60)
- (deps) Bump pyasn1 from 0.6.1 to 0.6.2 (#389) - (48dbe6d)
- (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)
- Fix Claude sticky comments in PR reviews (#407) - (61474b8)
- 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)
- (deps) Update dependency nicegui to v3.7.0 [security] (#418) - (783bd86)
- (deps) Update dependency pip to v26 [security] - (3e5b9a8)
- Renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> - (783bd86)
- (BE-5757) Create central MCP server with auto-disocovery of plugin tools (#401) - (90f4c00)
- Link tests for MCP SISs (#423) - (266149c)
v1.0.3 - 2026-01-09
- (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)
- Pin fastparquet<2025.12.0 (#356) - (d0c77d8)
- (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 scalene to v2 (#367) - (e8f5ff2)
- (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)
- Bump NiceGUI lower bound for CVEs (#380) - (734f30b)
- Update aiohttp (#374) - (8cdf228)
- 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)
- @mk0x9 made their first contribution
v1.0.2 - 2025-12-18
v1.0.1 - 2025-12-17
v1.0.0 - 2025-12-16
- 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
- (application) Expose run queue position (#318) - (cddbd1d)
- Prevent submitting runs when system is unhealthy (#336) - (e5000c4)
- (ci) Prevent shell injection in commit message handling + failing console width test (#341) - (1b2ec15)
- (wsi) Add multi-file pyramid + WSI selection for DICOM files (#270) - (e3d8851)
- Bring Launchpad to front after successful login (#319) - (310fc5d)
- (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
- (gui) Enable plugins to contribute nav items to right sidebar - (2d4e327)
v0.2.233 - 2025-12-10
- (core) Allow to dynamically inject external (private or public) plugins extending Python SDK dynamically - (45cdc51)
v0.2.232 - 2025-12-10
- (gui) Don't use windowed mode for launchpad if on Python 3.14 - (66688c6)
- (wsi) Reject running wsi dicom commands on Python 3.14, given transitive dependency of highdicom not yet supported on that Python version - (66688c6)
- (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
- Fix skip - (cdb67fa)
- Disable test_cli_application_run_prepare_upload_submit_fail_on_mpp given changed error message in heta - (cad6763)
- Fix broken tests (#327) - (8524a6b)
- (deps) Nicegui 3.4.0 and urllib 2.6.1 (#326) - (0ee9ecd)
- (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)
- Bump macos-13 runner to macos-15-intel (#328) - (b85ab72)
- 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
- (application) 30s page timeout for home as well - (a1245f7)
v0.2.229 - 2025-12-07
- (readme) Introduce sequence diagram - (bdac6bd)
- (gui) Enabel gui tests for macos on arm - (45a4ef7)
v0.2.228 - 2025-12-07
- (nicegui) Bump attributions - (0101310)
- (application) Bump timeout for application run and application run describe page from 3s to 30s - (56eeff5)
- (gui) Refactor to enable bump to nicegui 3.3.1 - (56eeff5)
v0.2.226 - 2025-12-06
- (cli) Print python version in epilog - (7182533)
- (core) Support for python 3.14.x (#321) - (7182533)
- (core) Support for python 3.14.x - (7182533)
- (platform) Adapt to PEP 649 given we shadow list ... - (7182533)
- (various) Given issues identified by SonarQube - (4623101)
- (gui,utils,wsi) Lazy load nicegui - (7182533)
- (platform) Use L4 provisioning mode on staging (was A100) - (cd6d34a)
- (platform) Use SPOT provisioning mode on staging (was FLEX_START) - (a6ca29a)
- (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)
- (install) Bash and ensure ssl - (4623101)
v0.2.225 - 2025-12-06
- Reduce slides per run for stress test to 50 to clear scheduler queue. - (3002543)
- (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
- Set TTL for signed URLs to deadline + 10 hours - (f6b937a)
- Set deadline for HETA tests to 24h - (3ac09c2)
- Fix flaky CLI test (#313) - (cc27a94)
v0.2.223 - 2025-12-04
- (logging) Log format to be compatible with loguru - (974fcca)
- Move FastAPI imports to function scope (#315) - (1bcce1b)
- 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)
- (platform) Remove superfluous function calls in run submit - (81752df)
- Add installation requirements to user documentation [skip:ci, skip:test:long-running, skip:test:matrix-runner, skip:test:very-long-running] - (1caa5c8)
- (platform) _get_spots_payload_for_special for 100k items - (b7a8e09)
- (platform) Pre-built item sdk metadata - (4a36778)
- (platform) Consistently use SPOT_1_GS_URL and _FILENAME so it can be changed easily for maintenance - (251b097)
- (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)
- Upgrade to Python 3.13.10 (#312) - (363e1c7)
- 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
- (platform) Pause stress tests due to overwhelming load - (2617a05)
- (platform) Stress tests, 0..99 with 10k slides - (300a647)
- @arne-aignx made their first contribution
v0.2.221 - 2025-12-02
- (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
- (install.sh) Use package correctly - (94d3197)
- (platform) Stopped stress tests - (0e6e80e)
- (deps) Update github artifact actions (#238) - (b32e20a)
- (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)
- (dep) Override fonttools given CVE-2025-66034 (GHSA-768j-98cg-p3fv), dep of matplotlib - (94e985f)
v0.2.217 - 2025-12-01
- (application,bucket,dataset) Remove use of aiopath which turns out to not be compatible with python 3.11.x as advertised - (238d47a)
- Replace tkinter.NONE with literal to support Python 3.13.9 on macOS (#296) - (28d4b32)
- (platform) Reenable flex start for hourly tests against staging - (2d4e382)
- Fix flaky GUI tests (#297) - (c9815ec)
- (gha) Use github token on labels sync / checkout, given our repo is not public - (b0202de)
- (gha) Use github token for checkout on labels sync - (1814d80)
v0.2.216 - 2025-12-01
- (platform) Fix title for stress test - (993c845)
- (platform) Fix setting - (1b72717)
- (platform) On 20 - (da3664c)
- (platform) Prep for 30min node acquisition timeout on production - (2725077)
- (platform) Use 1k on staging 0..9 min - (e674a58)
- (platform) Use spot on staging - (7dabb89)
v0.2.214 - 2025-12-01
- Remove validate_only option - (e838bd9)
- Make inspect command work with a single file as input as well - (5c651d1)
- (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
- (platform, application) Introduce flex start (#292) - (8122a49)
- (platform, application) Introduce flex start - (8122a49)
- Download single artifact - (49941e0)
- Revert CLI_REFERENCE.md to remove hardcoded timestamps [skip:ci, skip:test:long-running, skip:test:matrix-runner] - (739687a)
- Unify mapping usage and docs - (e5c164e)
- Edit profile button opens new tab (#286) - (176c128)
- Handle incomplete DICOM pyramid when getting thumbnail (#281) - (9caa6e1)
- 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)
- (platform) Test flex start on staging - (8122a49)
v0.2.212 - 2025-11-25
- (platform,application) Introduce configurable node acquisition timeout, defaulting to 30 minutes - (24d8710)
- Bump custom sdk metadata schema version - (5022dad)
- (platform) Sl.4.1 -> sl.4 - (0a3049b)
- (platform) Test-app v0.99.0, 100 items per run, every 15 min - (7a30dc1)
- (platform) Production: L4 (was A100); staging: node sl4.1 (was sl4) - (f697a63)
- (stress) Every 5 minutes (was 15) - (f347ada)
v0.2.211 - 2025-11-23
- (platform) Target L4, SPOT in hourly scheduled tests on staging - (dc9f490)
v0.2.210 - 2025-11-23
- (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)
- (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
- (application) Allow to list and describe application and runs with the output being json - (c995ebe)
- (application) Allow to cancel runs matching a filter with criteria including application id, application version and tags. includes --dry-run option - (c995ebe)
- Feat/logging-redirect - (15de455)
- (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)
- (docs) Fix Utils Module Specification - (a1ebc4a)
- (docs) Fix SPEC_WSI_SERVICE.md - (07b991a)
- (stress) Workflow - (ce39147)
v0.2.208 - 2025-11-21
- (application) Show duration in run sidebar - (ed583fd)
v0.2.207 - 2025-11-20
- (application) Auto-cancel custom pipeline tests - (987d025)
- (system) Mark test as sequential - (0b90d06)
v0.2.206 - 2025-11-20
- (application) Reduce max items in sidebar from 500 to 200 - (e8f07a9)
- (application) Proper integration tests for pipeline settings in GUI and CLI - (feaa047)
- (platform,staging) Switch to A100, ON_DEMAND, 1 (was L4, SPOT, 1) - (4b8be3d)
v0.2.205 - 2025-11-20
- (application) GUI and CLI now use L4, SPOT, max=gpu=1 as defaults - (37873c7)
v0.2.204 - 2025-11-20
- (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)
- (platform) Default config outside of tests now L4, SPOT, 1 GPU - was A100, ON-DEMAND, 1 GPU - (f2cc0bd)
v0.2.203 - 2025-11-20
- (application) Better colors for runs and items, e.g. orange for canceled by user - (182da63)
- (application) Highlight runs which exceeded deadline while not yet having terminated yet in orange - (182da63)
- (application) Bump runs shown in sidebar from 100 to 500 - (182da63)
- (application) 4h for test_cli_run_execute, and check exit - (822bc6b)
- (platform) Tag test runs with "scheduled" if being so, for easier discoverability - (182da63)
- (deps) Bump - (182da63)
v0.2.202 - 2025-11-19
- (platform) Sentry metrics on run submission - (75f7ff6)
- (platform,application) Configureable pipeline - (1e4c94f)
- Test-app bump to 0.0.6 - (e7818f2)
- (platform) Print error code and message on download - (cfecccc)
- (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)
- (ai) Start with mcp setup - (cd64a86)
- (deps) Some - (1e4c94f)
- Bump he-tme to a version that utilises a 1hr timeout (#262) - (e0e5586)
v0.2.201 - 2025-11-14
- (utils) Disable default of redirecting std logging of other modules into loguru from on to off - (71aa5d3)
v0.2.200 - 2025-11-13
- (utils) Introduce library mode inc. auto-detection - (510e7d8)
- (utils) Don't initialize sentry, logfire, ssl trust store or certifi in library mode - (510e7d8)
- (utils) Lower log level of boot message - (510e7d8)
- (utils) Introduce loguru - (510e7d8)
- (utils) Remove logfire - (510e7d8)
- (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)
- (application) Reenable part of test_cli_run_submit_and_describe_and_cancel_and_download_and_delete that finds runs by tags, notes and combinations - (88cba59)
- (utils) Add missing unit test marker - (510e7d8)
- Reactivate test_cli_run_dump_and_update_item_custom_metadata - (e11b2a6)
- (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)
- (specifications) Update specifications to improve traceability - (a3b6d39)
v0.2.199 - 2025-11-02
- (GHA) Limit workflow concurrency - (f6032f5)
v0.2.198 - 2025-11-02
- (ketryx) Integrate Ketryx compliance framework with requirements traceability - (00333a9)
- (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)
- (Docker) Use exact version of Python we test with - (148ad5e)
- (ox) Be more defensive - (a7fde72)
- Cleanup - (148ad5e)
- Fix linting issue introduced - (b88bccd)
- (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)
- (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)
- (dep) Starlette - (be0b2bd)
- (platform) Make intentionality in loop explicit given feedback from security scanner ox - (f506815)
v0.2.196 - 2025-10-26
- (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)
- (ci-cd) Yml file conflicts - (9969508)
- (tests) Resolve linter issues and update source code - (dcd2269)
- Test:long-running] - (dcd2269)
- (application) Improve dryness - (929bb92)
- (dataset) Move business logic to from CLI to service. (#204) - (27e7f9a)
- (dataset) Move business logic to from CLI to service. - (27e7f9a)
- (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)
- (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)
- (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)
- (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
- (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)
- (codegen, platform) Support me endpoint (#81) - (7d74a2b)
- (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) Show progress on splash screen (#91) - (e667252)
- (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)
- API v1.0.0-beta.6 (#141) - (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)
- (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)
- (deps) Update dependency pywin32 to v311 (#170) - (17ee850)
- (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 fastapi/typer#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)
- Fix typos in readme.md - (ef4d8f6)
- ⚡️ Use SemVer to check for application ids in launchpad (#56) - (c6c874e)
- Force .json for geojson - (c48b9dc)
- (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)
- (claude) Claude.md - (2ad9555)
- (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)
- (GUI) Significantly reduced bootup time, and page load performance - (17425dd)
- (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)
- (AI) Improve CLAUDE.md files and AI workflows - (6c0753f)
- (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)
- (AI) Claude.md files for assisted coding - (25ee505)
- (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) Allow to build:native:only (#89) - (28b1010)
- (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)
- Test on gh (#180) - (6c0753f)
- 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)
- (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)
- Change in metadata spec. for HETA application - (da5afa3)
- (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