Skip to content

Changelog

0.8.0 (2025-08-08)

Features

  • auth: add HTTPx authentication hooks for token refresh (489066d)
  • auth: add OIDC authentication hooks for automatic token refresh (bc4596f)
  • auth: added oidc device flow logic (1013cf5)
  • auth: added x509 cert get logic (657a97d)
  • auth: implement async and sync OIDC token refresh functions (b43b05f)
  • auth: server info is now saved for each auth config (1788c1e)
  • cli: added skaha open command to open sessions in a web browser. Made skaha info more readable (c932187)
  • cli: added auth cmds: list, switch, rm & purge (6ab0bd8)
  • cli: added entrypoing cf (cf3fce8)
  • cli: added feat to auto discover skaha servers (46eb565)
  • cli: added list, ls to skaha ps as aliases (c88eb6a)
  • cli: added support for using the CLI as canfar (5051af1)
  • client: add expiry property and enhance SSL context handling for authentication (cb6261a)
  • client: enhance SkahaClient documentation and improve authentication handling (1e6b770)
  • client: significant improvements to the base skaha client to support context managers (a197553)
  • cli: work-in-process (2e646ab)
  • config: updated auth config to provide valid & expired checks for all auth types and added tests (4dc6929)
  • discover: added functionality to discover skaha servers from registries and also added tests (5857772)
  • exceptions: added skaha exception classes (0651191)
  • garble: added fernet and rot13 ciphers to encrypt/obsfucate sensitive info (7204879)
  • helpers: added code to to split tasks for large scale processing (6ffe5cb)
  • hooks: added cli tool typer hook for multiple command aliases (6c5bc15)
  • logging: added comprehensive rich based logger for the project (a48c520)
  • models: added http models for the client (0679e8f)
  • models: all client models have been moved to skaha.models (a07c676)
  • oidc: added tests and made the oidc auth flow async (0059e12)
  • tests: add comprehensive tests for OIDC authentication and HTTPx hooks (be7fb50)
  • types: added mode, which reflects the auth type of the client (5781e4a)
  • types: updated to the auth data model (7f293c4)

Bug Fixes

  • auth, config, http: refactor imports and clean up default handling in models (6095a09)
  • auth, config, models: refactor authentication handling and improve configuration properties (aaa8c61)
  • auth: added comprehensive login support (bd11fe4)
  • auth: improve login flow and server selection logic (18b8d6d)
  • auth: x509 expired now return True when there is no cert to be found (2ab7141)
  • auth: x509 now has better exception handling (a4469b3)
  • cli: added a new aliases section to cleanup the l&f of the cli (6165575)
  • cli: added new aliases for list and create, fixed added Terminating state for Status models (a7e946d), closes #103
  • cli: config - added path (30f2617)
  • cli: create options cpus changed to cpu (05081ed)
  • client, overview: refactor base URL handling to use 'url' attribute instead of 'server' (b429820)
  • client: the skaha client on performs x509 checks when creating the clients (b6c3b80)
  • cli: fix for stats output print statement (856df95)
  • cli: numerous fixes for general look and feel, updated usage and help to be more descriptive (ea59085)
  • cli: ps,list,ls are now sorted by startTime (fdf34ed)
  • cli: updated the discover logic to be cleaner (ebff177)
  • docs: improve docstrings for clarity and consistency across authentication modules (48599d3)
  • docs: improve formatting of docstring for gather function parameters (9807194)
  • docs: remove slow tests details and clarify slow test marking criteria (18999b7)
  • docs: updated test architecture docs (4c32ef8)
  • github-actions: fix for disabling pypi release (078176a)
  • github-actions: migrated worklows to be under opencadc/canfar (0f267f5)
  • import: fix for ruff TypeChecking import error (6b5aa6f)
  • init: added CERT_PATH as module global (bb4642d)
  • lint: major improvements to standards (264b9b5)
  • log: fixed a missed f-string (bf31015)
  • logging: moved all modules to use the new logging facility (e05399f)
  • models: added Failed as a status (ef2c34e)
  • models: added desktop-app and contributed to allowed kinds (2b8514f)
  • models: CreateSpec (f4cd04f)
  • models: fixes model import errors for pydantic (fd264d4)
  • models: typo (4c7dbe6)
  • models: update server fields to allow None values and adjust default handling (84b9c5d)
  • models: updated client auth and reg models (b1c3f2b)
  • models: updated client config model for better backwards compatibility (e10f007)
  • models: x509 now does a lazy, rather than an eager check for cert path (eb16f76)
  • mypy: setting extra checks to true (0a29305)
  • oidc: streamline OIDC imports and update token expiry handling (ff0b62d)
  • overview: baseurl fix (4bcb8f4)
  • pre-commit: added jwt to mypy (f787507)
  • pre-commit: updates (fa1b1c4)
  • registry: added swedish skaha server (cfad0ef)
  • security: fixing logging of sensitive info (07ff1d0)
  • security: private init (0fada02)
  • security: removed secret info (dccb1c2)
  • skaha-client: deprecated verify field (a70c4b4)
  • style: lint (248565f)
  • tests: consolidated registry tests (80ad530)
  • tests: ensure newline at end of file in test_servers_mixed_status (b50349e)
  • tests: fix for comparing float values (f391833)
  • tests: fix for stdout (6c25d3e)
  • tests: for bad filenames (f0f4831)
  • tests: import (54ed5fc)
  • tests: refactor authentication tests to use updated model attributes and improve structure (8cfa73f)
  • tests: removed not needed tests (d5be89c)
  • tests: stdout related errors (e262eb3)
  • tests: tmp filename (1dd4477)
  • tests: update mock path mkdir lambda to accept arbitrary arguments (2939796)
  • tests: update URL validation tests to reject 'sftp' scheme (9117701)
  • tests: updates (53a0a7e)
  • utils: crypto fix for generating funny names :D (2eff101)
  • wip: lint/style/type-hinting (ced042d)
  • x509: fixes for handling unintialized expiry (76e7523)
  • x509: updated x509 auth utils to be all colocated and updated tests (9e5e7c6)

Documentation

  • auth: added auth and context docs (65d3c2e)
  • bug-reports: added issue template and docs for reporting bugs (1e177ea)
  • cli: added docs (9a7f20a)
  • client: updates (3db735b)
  • contributing: add note on alternative tooling for dependency management (f7683db)
  • helpers: updated docs for distributed.chunk and distributed.stripe usage (a8c15a0)
  • helpers: updated docs to be better for advanced examples (4eb7558)
  • skaha: update (e40bad4)
  • tests: updated info about slow tests (a4401a3)
  • updates: all over, work-in-progress (8ea1cce)

0.7.0 (2025-05-28)

Features

  • session: added session.events to show deployment events on the cluster, e.g. loading container image etc (58e9bca)

Bug Fixes

  • security: improvements to assertion checks (2ea1108)
  • security: X509 certs are checked if valid before first conn. to server (08327a9)
  • session: events now returns None, when verbose=True (1b01dd6)
  • session: improved docs, better testing logic to await async sleep (e54b9af)

Documentation

  • events: added session.events docs (7540062)
  • session: docstring (7189052)

0.6.1 (2025-05-22)

Bug Fixes

  • cleanup: comments (8a1a078)
  • gha: fix for gh-pages push (27aa8f8)
  • Implement httpx error logging hooks and client integration (fee71c2)
  • pre-commit: cleanup (abb0839)
  • security: restricting ssl context to use TLSv1.2 at a minimum (09654d0)

0.6.0 (2025-05-12)

Features

  • client: added loglevel to configure the python logging levels (431f46d)
  • client: added token support to skaha client (6c7c748)
  • client: updated skaha client to use httpx instead of requests (4c10de8)
  • logs: added stdout for printing logs in terminal (0c34cad)
  • sessions: added skaha AsyncSession (2693272)
  • sessions: added support for firefly (87d16c1)

Bug Fixes

  • api: updated context, images, overview with httpx (391e857)
  • client: changed to the default and max values of parallel conns (ce552bf)
  • client: deprecated client.verify since it no longer affects any logic (9eed6e9)
  • client: fixed annotation issues for client, asyncClient (889a6a8)
  • models: models no longer search for SKAHA_REGISTRY_[USERNAME|SECRET] from environ, this will be supported in future releases with a comprehensive environment variable support accross all configurable variables (a1702c9)
  • models: updated checks for session kind (a8317f4)
  • session: fixed sync log output when verbose is True (6ac63f9)
  • session: solidified the skaha async session api, moved common query building logic to utils.build (3f11aee)

Documentation

  • asyncSession: added docs (a8be7fc)
  • client: updated class docstring (5531c6f)
  • index: typo fixes (bc637c5)
  • index: updates (a3c2e2e)
  • session: updated docs for session and async sessions (7e49fef)
  • updates: docs (c61fecd)
  • updates: site config + token support (54d6ed9)

0.5.2 (2025-03-03)

Bug Fixes

  • session: fixed kind translation for session.create, increased max replicas limit to 512 (9bfe357)

0.5.1 (2025-02-26)

Bug Fixes

  • models: createSpec model now outputs kind with alias type (3184d5c)

0.5.0 (2024-11-22)

Features

  • context: updates to context.resources api (4d08876)

Bug Fixes

  • docker: fix for docker build due to uv path install changes (00fd5de)

Documentation

0.4.4 (2024-11-22)

Bug Fixes

  • session: fixed set env in session.create (00b67ac)

0.4.3 (2024-11-08)

Bug Fixes

  • models: create.spec model used in session.create now expects env to be None by default (c34b110)

0.4.2 (2024-10-30)

Bug Fixes

Documentation

  • index: updated the landing page (e7dbac2)

[0.4.0] (2024-10-25)

Features

  • build: added edge container build and attestation (d07e008)
  • codecov: added badge (373412d)
  • conduct: added a code of conduct for skaha community (f37046e)
  • contributions: added a guideline (271a6df)
  • dockerfile: added base dockerfile for the project (28f7e51)
  • docs: added conduct,contributing,license and security sections to docs (5cac3c0)
  • github-actions: added pypi release action and updated client payload (b0b3593)
  • license: project now uses the AGPLv3 license (706f6f8)
  • module: added support for private container registries (3b47c5c)
  • packaging: moved skaha from poetry backend to uv (3b7b89f)
  • security: added a security policy for the project (1338e7f)
  • security: ossf scorecard (719cdfc)
  • session: added new feature to delete sessions with name prefix, kind and status (056254b), closes #37
  • templates: added bug report and feature requests templates (8a8dd20)
  • client: updated client to include skaha version in prep for v1 release (e6360c0)
  • overview: added new overview module (4a6336f)
  • docs: added build (9049b92)
  • session: create session now embeds two env variables into the container, REPLICA_COUNT and REPLICA_ID (ecbf48a)
  • session: added support for multiple session management (219b74c)
  • session: skaha.sessions api deprecated (e184663)
  • release-please: implemented (2ac9728)

Bug Fixes

  • attestation: added attestation for dockerhub container image (0ff4ba2)
  • badge: update to codeql bagde url (c95b6e0)
  • ci/cd: bugfixes (b4b153c)
  • ci/cd: fix for docs build (98eea9b)
  • ci/cd: fixes for action deprecations, and uv errors (6a5af8c)
  • CI: change to pre-commit checks (6216b02)
  • ci: ci indent fix (4e02f72)
  • ci: fix to edge container build (59924bd)
  • ci: improved secret cleanup (990c5a1)
  • contribution: updated guidelines (bc5400e)
  • dockerfile: fix to stage names (f46b081)
  • docs/ci: small fixes (e92c9eb)
  • docs: updated doc/status/badge links (6efed00)
  • github-actions: added fixes for release deployments (dc1b03d)
  • github-actions: possible fix for deployment action (41e1886)
  • github-actions: release actions now checkout tag_name ref for code (ebffafe)
  • readme: codeql bagde url (197a6eb)
  • tests: debugging ci/cd and common errors (7d6b3a9)
  • tests: fixed issue with session tests (d004fde)
  • tests: fixed issues with codecov tokens (07f87d9)
  • tests: fixed session tests to be more consistent and run ~60s (19f0a6e)
  • tests: fixed threading issue caused when one of the futures timesout (ba55a38)
  • tests: fixes for session tests (b3f3e48)
  • typing: multiple type hint fixes throughout the project (a533481)
  • utils: fixed logging x2 issue (7e218df)
  • docs: updated docs to include changelog, added reference for calling gpus in session.create (e58f9be)
  • deps: updates (5644e15)
  • session: fix for spawning sessions with gpus (961f766)
  • tests: fixed session tests, which now default spawn with name-{replica-id} format (7e48031)
  • env: fixed multiple tests and added support for multiple env parameters (c0500bf)
  • client: updated session header to have the correct content-type (3146e41)
  • images: images api now always prunes (a436e21)
  • pre-commit: fixed broken pre-commit config (baedb82)
  • type-hints: fixed broken hints (9f4e9db)
  • type-hints: fixed broken type hints (c1d1356)
  • gha: fix to release action (cc7b61a)

Documentation

  • github-actions: changed the workflow name (868e114)
  • README: updated with CI status (175ffce)
  • sessions: added docs for destroy_with fucntionality (afd0a11)
  • skaha: updated all docs (04551c9)
  • docs: updates with a new ability to edit docs via PR (aa2314d)
  • readme: update (1b975b6)
  • docs: build command issue (becbc60)
  • docs: fixed build issue (98b0543)
  • docs: created documentation for the project (e0f5483)
  • API: changed where order of docs (569d34f)