Skip to content

Releases: lablup/backend.ai

25.3.3rc1

26 Feb 11:32
Compare
Choose a tag to compare
25.3.3rc1 Pre-release
Pre-release

Features

  • Let endpoints with PROVISIONING routes deleted without manual session removal (#3842)

Fixes

  • Fix CreateNetwork GQL mutation not working (#3843)
  • Fix EndpointAutoScalingRuleNode GQL query not working (#3845)

Full Changelog

Check out the full changelog until this release (25.3.3rc1).

Full Commit Logs

Check out the full commit logs between release (25.3.2) and (25.3.3rc1).

25.3.2

26 Feb 07:08
Compare
Choose a tag to compare

Fixes

  • Add service_ports field resolver to GQL ComputeSessionNode type (#3782)
  • Fix the GQL VirtualFolderNode resolver to accept a filter argument (#3799)
  • Fix wrong Python interpreter embedded in the installer scie builds (#3810)
  • Fix a DB migration script that fails when the system has a default domain with a name other than 'default' (#3816)
  • Use correct lock ID for schedulers and event producers (#3817)
  • Broken image rescanning on HarborRegistry_v1 due to type error of credential value. (#3821)
  • Ensure that the scie build of install.config also includes the files in the folder and the yaml file. (#3824)
  • Fix wrong alembic migration scripts (#3829)

Full Changelog

Check out the full changelog until this release (25.3.2).

Full Commit Logs

Check out the full commit logs between release (25.3.1) and (25.3.2).

25.3.1

21 Feb 10:56
Compare
Choose a tag to compare

Features

  • Add New API Logging Aligned with Pydantic (#3731)
  • Configurable global lock lifetime (#3774)
  • Let metric observers catch base exceptions in event handlers (#3779)

Fixes

  • Fix missing argument in Redis event dispatcher initializer (#3773)
  • Fix wrong Python interpreter versions included in the scie builds (#3793)

Full Changelog

Check out the full changelog until this release (25.3.1).

Full Commit Logs

Check out the full commit logs between release (25.3.0) and (25.3.1).

25.3.0

19 Feb 10:42
Compare
Choose a tag to compare

Features

  • Add project scope implementation to Image RBAC. (#3035)

  • Implement ImageNode GQL resolver based on RBAC. (#3036)

  • Implement AssociationContainerRegistriesGroups as m2m table of container_registries, and groups. (#3065)

  • Implement CRUD API for managing Harbor per-project Quota. (#3090)

  • Implement Image Rescanning using Harbor Webhook API. (#3116)

  • Create KVS Interface (#3645)

  • Add configurable setup for kernel initialization polling (#3657)

  • Add a show_kernel_list config to webserver to show/hide kernel list in the session detail panel.

    Add configs not specified in sample.toml (#3671)

  • Make security policy configurable (#3680)

  • Make CSP configurable (#3682)

  • Sort vfolder list fields in compute session GQL objects (#3751)

Improvements

  • Add the skeleton interface of vfolder CRUD handlers in storage-proxy (#3516)
  • Apply pydantic handling decorator to VFolder APIs in storage-proxy (#3565)
  • Move abc.py and storage system modules to volumes package (#3567)
  • Extract list_volumes and get_volume into pool.py (#3569)
  • Add Service Layer to Avoid Direct Volume and Vfolder Operations in Storage-Proxy Handler (#3588)
  • Change Absolute Imports to Relative Imports in Storage-Proxy (#3685)

Fixes

  • Revamp ContainerRegistryNode API. (#3424)
  • Change port numbers using ephemeral ports (#3614)
  • Handle cancel and timeout when creating kernels (#3648)
  • Correct the number of concurrent SFTP sessions queried from DB (#3654)
  • Increase Backend.AI Kernel's app startup timeout (#3679)
  • Fix ContainerRegistry per-project API misc bugs. (#3701)
  • Fix model service not removed when auto scaling rules are set (#3711)
  • Validate duplicate session names during compute session modification (#3715)
  • Revert tmux version upgrade from 3.4 to 3.5a due to compatibility issues on aarch64 architecture (#3740)
  • Fix compute session rename API handler to query DB correctly (#3746)
  • Suppress SELECT statement has a cartesian product between FROM element(s) "endpoints" and FROM element "endpoint_auto_scaling_rules" log (#3747)

Full Changelog

Check out the full changelog until this release (25.3.0).

Full Commit Logs

Check out the full commit logs between release (25.3.0rc1) and (25.3.0).

24.09.7

18 Feb 04:34
Compare
Choose a tag to compare

Features

  • Add configurable setup for kernel initialization polling (#3657)
  • Make security policy configurable (#3680)
  • Make CSP configurable (#3682)

Fixes

  • Handle cancel and timeout when creating kernels (#3648)
  • Correct the number of concurrent SFTP sessions queried from DB (#3654)

Full Changelog

Check out the full changelog until this release (24.09.7).

Full Commit Logs

Check out the full commit logs between release (24.09.6) and (24.09.7).

25.2.0

07 Feb 16:39
Compare
Choose a tag to compare

Features

  • Update tmux version from 3.4 to 3.5a (#3000)
  • Enable per-user UID/GID set for containers via user creation and update GraphQL APIs (#3352)
  • Update SDK and CLI to support per-user UID/GID configuration (#3361)
  • Add timeout configuration for Docker image push (#3412)
  • Add configurable directory permission for vfolders to support mount vfolders on customized UID/GID containers (#3510)
  • Add new Pydantic handling api decorator for Request/Response validation (#3511)
  • Add force delete API for VFolder that bypasses the trash bin (#3546)
  • Add storage-watcher API to delete VFolders with elevated permissions (#3548)

Improvements

  • Add skeleton vFolder handler Interface of manager (#3493)

Fixes

  • Add reject middleware for web security (#2937)
  • Optimize the route selection in App Proxy using random.choices() based on the native C implementation in CPython (#3199)
  • Fix GQL vfolder_mounts field resolver of compute_session type (#3461)
  • Fix empty tag image scan error in docker registry. (#3513)
  • Fixed "permission denied" error by creating the grafana-data directory with 757 permissions (#3570)
  • Fix Broken CSS by allowing unsafe-inline content security policy. (#3572)
  • Updated route pattern to allow any path ending with "login/" for POST requests to /pipeline/{path:.*login/$} (#3574)
  • Fix vfolder delete SDK function to call 'delete by id' API rather than 'delete by name' API (#3581)
  • Check intrinsic time files exist before mount (#3583)
  • Fixed to ensure unique values in the mount list of the compute session (#3593)
  • The installer changes from downloading the checksum files for each package separately to receiving a consolidated checksum file and using them separately. (#3597)
  • Remove foreign key constraint from EndpointRow.image column. (#3599)

Full Changelog

Check out the full changelog until this release (25.2.0).

Full Commit Logs

Check out the full commit logs between release (25.1.1) and (25.2.0).

24.09.6

07 Feb 14:02
Compare
Choose a tag to compare

Features

  • Update SDK to retrieve and use IDs for VFolder API operations instead of names (#3471)

Fixes

  • Add reject middleware for web security (#2937)
  • Refactor container registries' projects traversal logic of the image rescanning. (#2979)
  • Fix regression of outdated vfolder GQL resolver. (#3047)
  • Fix image without metadata label not working (#3341)
  • Enforce VFolder name length restriction through the API schema, not by the DB column constraint (#3363)
  • Fix password based SSH login not working on sessions based on certain images (#3387)
  • Fix purge API to allow deletion of owner-deleted VFolders by directly retrieving VFolders using the folder ID (#3388)
  • Fix formatting errors when logging exceptions raised from the current local process that did not pass our custom serialization step (#3410)
  • Fix scanning and loading container images with no labels at all (null in the image manifests) (#3411)
  • Fix missing CPU architecture name lookup in LocalRegistry to directly scan and load container images from the local Docker daemon in dev setups (#3420)
  • Utilization idle checker computes kernel resource usages correctly (#3442)
  • Fix a mis-implementation that has prevented using UUIDs to indicate an exact vfolder when invoking the vfolder REST API (#3451)
  • Fix GQL vfolder_mounts field resolver of compute_session type (#3461)
  • Raise exception if multiple VFolders exist in decorator (#3465)
  • Fix empty tag image scan error in docker registry. (#3513)
  • Fix Broken CSS by allowing unsafe-inline content security policy. (#3572)
  • Check intrinsic time files exist before mount (#3583)
  • Remove foreign key constraint from EndpointRow.image column. (#3599)

Documentation Updates

  • Deprecate non relay container registry GQL explicitly. (#3231)

Full Changelog

Check out the full changelog until this release (24.09.6).

Full Commit Logs

Check out the full commit logs between release (24.09.5) and (24.09.6).

25.1.1

21 Jan 10:36
Compare
Choose a tag to compare

Features

  • Implement fine-grained seccomp profile managed by Backend.AI Agent. (#3019)
  • Enable image rescanning by project. (#3237)
  • Support auto-scaling of model services by observing proxy and app-specific metrics as configured by autoscaling rules bound to each endpoint (#3277)
  • Deprecate the JWT-based X-BackendAI-SSO header to reduce complexity in authentication process for the pipeline service (#3353)
  • Add Grafana and Prometheus to Docker Compose (#3458)
  • Integrate Pyroscope with Backend.AI (#3459)
  • Update SDK to retrieve and use IDs for VFolder API operations instead of names (#3471)

Fixes

  • Refactor container registries' projects traversal logic of the image rescanning. (#2979)
  • Fix regression of outdated vfolder GQL resolver. (#3047)
  • Fix image without metadata label not working (#3341)
  • Enforce VFolder name length restriction through the API schema, not by the DB column constraint (#3363)
  • Fix password based SSH login not working on sessions based on certain images (#3387)
  • Fix purge API to allow deletion of owner-deleted VFolders by directly retrieving VFolders using the folder ID (#3388)
  • Fix certain customized images not being pushed to registry properly (#3391)
  • Fix formatting errors when logging exceptions raised from the current local process that did not pass our custom serialization step (#3410)
  • Fix scanning and loading container images with no labels at all (null in the image manifests) (#3411)
  • Fix missing CPU architecture name lookup in LocalRegistry to directly scan and load container images from the local Docker daemon in dev setups (#3420)
  • Utilization idle checker computes kernel resource usages correctly (#3442)
  • Filter vfolders by status before initiating a vfolder deletion task (#3446)
  • Fix a mis-implementation that has prevented using UUIDs to indicate an exact vfolder when invoking the vfolder REST API (#3451)
  • Fix the required state output logic in the openopi reference documentation correctly (#3460)
  • Raise exception if multiple VFolders exist in decorator (#3465)

Documentation Updates

  • Deprecate non relay container registry GQL explicitly. (#3231)

Miscellaneous

  • Upgrade pantsbuild from 2.21 to 2.23, replacing the scie plugin with the intrinsic pex's scie build support (#3377)

Full Changelog

Check out the full changelog until this release (25.1.1).

Full Commit Logs

Check out the full commit logs between release (24.12.1) and (25.1.1).

24.12.1

04 Jan 06:03
24.12.1
86a1b9e
Compare
Choose a tag to compare

Fixes

  • Fix broken session CLI commands due to invalid initialization of ComputeSession. (#3222)
  • Fix a regression that modifying a model service endpoint's replica count always sets it to 1 regardless of the user input (#3337)

Miscellaneous

  • Fix the commit message format when assigning the PR number to an anonymous news fragment (#3309)

Full Changelog

Check out the full changelog until this release (24.12.1).

Full Commit Logs

Check out the full commit logs between release (24.12.0) and (24.12.1).

24.09.5

04 Jan 06:20
24.09.5
c476127
Compare
Choose a tag to compare

Features

  • Allow specifying a full shell script string in start_command of model-definition.yaml while preserving shell variable expansions to allow access to environment variables in service definitions (#3248)
  • Add several commonly used GPU configuration environment variables defined in containers by default: GPU_TYPE, GPU_COUNT, GPU_CONFIG, GPU_MODEL_NAME and TF_GPU_MEMORY_ALLOC (#3275)

Fixes

  • Fix the TUI installer to make the install path always visible (#3029)
  • Fix broken session CLI commands due to invalid initialization of ComputeSession. (#3222)
  • Fix CLI test failures caused by yarl.URL._val type change. (#3235)
  • Prevent vfolder request-download API from accessing host filesystem. (#3241)
  • Fix 1d42c726d8a3 revision execution failing (#3254)

Miscellaneous

  • Upgrade the base CPython version from 3.12.6 to 3.12.8 (#3302)

Full Changelog

Check out the full changelog until this release (24.09.5).

Full Commit Logs

Check out the full commit logs between release (24.09.4) and (24.09.5).