Skip to content

Releases: lablup/backend.ai

24.03.9

23 Aug 12:43
fe5bb6a
Compare
Choose a tag to compare

Features

  • Allow filter and order in endpointlist gql request. (#2723)
  • Add scaling_group.agent_count_by_status and scaling_group.agent_total_resource_slots_by_status GQL fields to query the count and the resource allocation of agents that belong to a scaling group. (#2254)
  • Allow bulk association and disassociation of scaling groups with domains, user groups, and key pairs. (#2473)
  • Add new vfolder API to update sharing status. (#2740)

Improvements

  • Enable robust DB connection handling by allowing pool-pre-ping setting. (#1991)

Fixes

  • Correct msgpack deserialization of ResourceSlot. (#2754)
  • Fix regression error of session create_from_template command. (#2761)
  • Fix GET /func/folders/{folderName} API returning string literal "null" instead of null value on user and group fields (#2584)
  • Fix list_files, get_fstab_contents, get_performance_metric and shared_vfolder_info Python SDK function not working with ValidationError exception printed (#2706)
  • Handle OS Error when deleting vfolders. (#2741)
  • Fix typo in Virtual-folder status update code. (#2742)

Full Changelog

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

Full Commit Logs

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

24.03.9rc1

23 Aug 11:56
f4ad834
Compare
Choose a tag to compare
24.03.9rc1 Pre-release
Pre-release

Features

  • Allow filter and order in endpointlist gql request. (#2723)

Fixes

  • Correct msgpack deserialization of ResourceSlot. (#2754)
  • Fix regression error of session create_from_template command. (#2761)

Full Changelog

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

Full Commit Logs

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

24.03.9b1

21 Aug 11:13
186e1d1
Compare
Choose a tag to compare
24.03.9b1 Pre-release
Pre-release

Features

  • Add scaling_group.agent_count_by_status and scaling_group.agent_total_resource_slots_by_status GQL fields to query the count and the resource allocation of agents that belong to a scaling group. (#2254)
  • Allow bulk association and disassociation of scaling groups with domains, user groups, and key pairs. (#2473)
  • Add new vfolder API to update sharing status. (#2740)

Improvements

  • Enable robust DB connection handling by allowing pool-pre-ping setting. (#1991)

Fixes

  • Fix GET /func/folders/{folderName} API returning string literal "null" instead of null value on user and group fields (#2584)
  • Fix list_files, get_fstab_contents, get_performance_metric and shared_vfolder_info Python SDK function not working with ValidationError exception printed (#2706)
  • Handle OS Error when deleting vfolders. (#2741)
  • Fix typo in Virtual-folder status update code. (#2742)

Full Changelog

Check out the full changelog until this release (24.03.9b1).

Full Commit Logs

Check out the full commit logs between release (24.03.8) and (24.03.9b1).

24.03.8

13 Aug 06:43
a8e74ad
Compare
Choose a tag to compare

Features

  • Add an enable_LLM_playground option to show/hide the LLM playground tab on the serving page. (#2677)
  • Add max_atom_plus_device_per_container config on webserver (#2686)

Fixes

  • Remove duplicate CPU quota arguments when creating containers (#2608)
  • Allow sudo-enabled container users to ovewrite /usr/bin/scp and /usr/libexec/sftp-server by unifying the intrinsic ssh binaries to use the merged dropbearmulti executable. (#2671)
  • Update webserver logout API to respond with HTTP 200 OK (#2681)
  • Scan parent directory of created qtree to avoid creating quota on non-existing directory. (#2696)

Full Changelog

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

Full Commit Logs

Check out the full commit logs between release (24.03.8rc2) and (24.03.8).

24.03.8rc2

07 Aug 16:18
2c1f5ff
Compare
Choose a tag to compare
24.03.8rc2 Pre-release
Pre-release

Fixes

  • skip resolving malformed ModelCard GQL item (#2570)
  • Robust type check when idle checker fetches utilization data. (#2601)
  • Let GET /resource/usage/period request contain data in query parameter rather than JSON body. (#2661)

Full Changelog

Check out the full changelog until this release (24.03.8rc2).

Full Commit Logs

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

24.03.8rc1

05 Aug 15:31
415d4ff
Compare
Choose a tag to compare
24.03.8rc1 Pre-release
Pre-release

Fixes

  • Rename images.image_filters GQL Query argument to images.image_types (#2555)
  • Prevent other user's customized image from being listed as a response of images GQL query (#2557)
  • Delete sessions DB records when purging project. (#2573)
  • Implement missing StrEnumType handling in populate_fixture(). (#2648)

External Dependency Updates

  • Upgrade the intrinsic kernel-runner binaries (dropbear, scp, sftp-server, su-exec and tmux) to use statically built executables based on the latest Alpine Linux and the latest source codes (#2625)

Full Changelog

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

Full Commit Logs

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

24.03.7

04 Aug 14:47
0644e96
Compare
Choose a tag to compare

Features

  • Allow Bearer as valid token type on model service authentication (#2583)
  • Add a pre-setup configuration menu to the TUI installer to allow setting the public-facing address of Backend.AI components (#2541)
  • Add row_id, type and container_registry fields to the GroupNode GQL schema. (#2409)
  • Add support for PureStorage RapidFiles Toolkit v2 (#2419)
  • Add support for fetching container logs of a specific kernel. (#2364)
  • Allow superadmins to force-update session status through destroy API. (#2275)
  • Introduce Python native WSProxy (#2372)

Improvements

  • Optimize the query latency when fetching a large number of agents with stat metrics from Redis (#2558)
  • Remove database-level foreign key constraints in vfolders.{user,group} columns to decouple the timing of vfolder deletion and user/group deletion. (#2404)

Fixes

  • Update GQLPrivilegeCheckMiddleware to align with upstream changes on graphql-core package (#2598)
  • Check null value of user mutation by Undefined sentinel value rather than None. (#2506)
  • Do null check on groups.total_resource_slots and domains.total_resource_slots value. (#2509)
  • Fix hearbeat processing failing when agent reports image with its name not compilant to Backend.AI's naming rule (#2516)
  • Corrected a typo (maanger corrected to manager) in the check_status() API response of the storage component (#2523)
  • Prevent session status from being transit to PULLING status event if image pull is not required (#2556)
  • Initialize Redis connection pool objects with specified connection opts rather than ignoring them. (#2574)
  • Fix BACKEND_MODEL_NAME environment always overwritten to model name specified at model definition (#2481)
  • Do not allow assigning preopen port which collides with image's own service port definition (#2482)
  • Fix GET requests with queryparams defined in API spec occasionally throwing 400 Bad Request error (#2483)
  • Fix incorrect check of values returned from docker stat API. (#2389)
  • Handle all possible exceptions when scheduling single node session so that the status information of pending session is not empty. (#2411)
  • Improve error handling of initialization failures in the kernel runner (#2478)
  • Add missing commit_session_to_file to OP_EXC (#2127)
  • Pass ImageRef.canonical in commit_session_to_file (#2134)
  • Omit to clean containerless kernels which are still creating its container. (#2317)
  • Run batch execution after the batch session starts. (#2327)
  • Add support for configuring sync_container_lifecycles() task. (#2338)
  • Restrict GraphQL query to user_nodes field to require superadmin privilege (#2401)
  • Utilize ExtendedJSONEncoder for error logging to handle UUID objects in extra_data (#2415)
  • Change outdated references in event module from kernels to sessions. (#2421)
  • Upgrade inquirer to remove dependency on deprecated distutils, which breaks up execution of the scie builds (#2424)
  • Allow specific status of vfolders to query to purge. (#2429)
  • Update the install-dev scripts to use pnpm instead of npm to speed up installation and resolve some peculiar version resolution issues related to esbuild. (#2436)
  • Fix a packaging issue in the backendai-webserver scie executable due to missing explicit requirement of setuptools (#2454)
  • Improve pruning of non-physical filesystems when measuring disk usage in agents (#2460)
  • Fix buggy resolver of model_card GQL Query. (#2161)
  • Keep sync_container_lifecycles() bgtask alive in a loop. (#2178)
  • Shutdown agent properly by removing a code that waits a cancelled task. (#2392)
  • Fix user creation error when any model-store does not exists. (#2160)
  • Ensure that utilization idleness is checked after a set period. (#2205)
  • Fix ZeroDivisionError in volume usage calculation by returning 0% when volume capacity is zero (#2245)
  • Fix GraphQL to support query to non-installed images (#2250)
  • Add missing push_image method implementation to Dummy Agent (#2253)
  • Corrected an issue where the resource_policy field in the user model was incorrectly mapped to domain_name. (#2314)
  • Fix mismatches between responses of /services/_runtimes and new model service creation input (#2371)
  • Skip mounting zero-byte lxcfs files when lxcfs is activated to prevent crashes in session containers (#2604)
  • Fix typo in minilang query field spec and column map. (#2605)
  • Silence falsy Redis timeout warnings when retrying blocking commands if the timeout does not exceed the expected command timeout (#2632)
  • Fix a regression of #2483 in the session-download API used by the backend.ai ssh command (#2635)

Miscellaneous

    • Add POST /folders API endpoints to replace DELETE APIs that require request body.
    • Allow DELETE requests to have body data. (#2571)
  • Handle container creation exception and start exception in separate try-except contexts. (#2316)
  • Finally stabilize the hanging tests in our CI due to docker-internal races on TCP port mappings to concurrently spawned fixture containers by introducing monotonically increasing TCP port numbers (#2379)
  • Further improve the monotonic port allocation logic for the test containers to remove maximum concurrency restrictions (#2396)

External Dependency Updates

  • Upgrade aiodocker to 0.22.1 to fix error handling when trying to extract the log of non-existing containers (#2402)
  • Upgrade the base CPython from 3.12.2 to 3.12.4 (#2449)
  • Upgrade aiodocker to v0.22.0 with minor bug fixes found by improved type annotations (#2339)

Full Changelog

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

Full Commit Logs

Check out the full commit logs between release (24.03.7rc2) and (24.03.7).

24.03.7rc2

01 Aug 02:54
a1cfb25
Compare
Choose a tag to compare
24.03.7rc2 Pre-release
Pre-release

Miscellaneous

    • Add POST /folders API endpoints to replace DELETE APIs that require request body.
    • Allow DELETE requests to have body data. (#2571)

Full Changelog

Check out the full changelog until this release (24.03.7rc2).

Full Commit Logs

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

24.03.7rc1

31 Jul 03:49
b08315a
Compare
Choose a tag to compare
24.03.7rc1 Pre-release
Pre-release

Features

  • Allow Bearer as valid token type on model service authentication (#2583)

Fixes

  • Update GQLPrivilegeCheckMiddleware to align with upstream changes on graphql-core package (#2598)

Full Changelog

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

Full Commit Logs

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

24.03.7b4

31 Jul 02:19
1ef2d36
Compare
Choose a tag to compare
24.03.7b4 Pre-release
Pre-release

Features

  • Add a pre-setup configuration menu to the TUI installer to allow setting the public-facing address of Backend.AI components (#2541)

Improvements

  • Optimize the query latency when fetching a large number of agents with stat metrics from Redis (#2558)

Fixes

  • Check null value of user mutation by Undefined sentinel value rather than None. (#2506)
  • Do null check on groups.total_resource_slots and domains.total_resource_slots value. (#2509)
  • Fix hearbeat processing failing when agent reports image with its name not compilant to Backend.AI's naming rule (#2516)
  • Corrected a typo (maanger corrected to manager) in the check_status() API response of the storage component (#2523)
  • Prevent session status from being transit to PULLING status event if image pull is not required (#2556)
  • Initialize Redis connection pool objects with specified connection opts rather than ignoring them. (#2574)

Full Changelog

Check out the full changelog until this release (24.03.7b4).

Full Commit Logs

Check out the full commit logs between release (24.03.7b3) and (24.03.7b4).