2022.1.0

Release Date: 02/17/2022

  • IMPORTANT

    • This stack will not work with configuration from previous versions, requiring the following:

      • .env file for the Base Stack now needs AUTH_ROOT_OF_TRUST_LONG_TERM_PUB and AUTH_ROOT_OF_TRUST_LONG_TERM_PRI keypair specified in addition to other keys. This keypair is now used to signed long-lived authentication and refresh tokens. If you are upgrading, make sure that you do not destroy already existing keys, or you will lose your authentication service’s database

      • If using SSL, update your Search and Tagging endpoint routes from /omni/search2 to /omni/search3, and from /omni/tagging2 to /omni/tagging3. You can reuse your existing Ingress Router configuration in other respects

  • LFT service now supports scaling to multiple instances. Use --scale nucleus-lft=<no> argument to docker-compose up. We recommend one LFT per 10 concurrent up/downloads

  • More user friendly handling of unset but required settings’ variables

  • generate_sample_insecure_secrets.sh: added new secrets’ generation, added a safety block to prevent accidental keys’ deletion

  • Sample NGINX ingress router config: replaced 301s with 302s, updated endpoints due to services’ upgrades

  • Components updates:

    • Core 113.6

    • Navigator 2.4.4

    • Discovery Service 1.4.2

    • Authentication Service 1.4.0

    • Search Service 3.0.0

    • Thumbnail Service 1.4.4

    • Tagging Service 3.0.1

    • SSO Gateway 1.2.3

View the detailed release notes

Core

113.6

  • API server

    • [OM-43083] Do not send CheckpointsChanged event in subscribe_list to clients which don’t support subscribe_list:1 and higher capability

113.5

  • Helm

    • Added common labels

    • Added long_version annotation

113.4

  • Helm

    • Added proxy-buffering annotations

    • Added prometheus pod discovery annotations

    • Added testsuite image and stress test

    • Fixed ingress class handling

  • Docker

    • Added nucleus-testsuite image config for stress testing

113.3

  • Helm

    • Fix publish scripts

113.2

  • [OM-xxxxx] declare “stop” capability (version 0) when registering in the Discovery service

  • [OM-xxxxx] fix “auth” setting group name collision in omni.server.app config .json files, one group is renamed to “auth_service_client”

  • Docker

    • lft-lb: tweaked nginx parameters to support large uploads more optimally

113.1

  • [empty release] to trigger CI correctly

113.0

  • API server

    • [OM-xxxxx] optimized omni.objects update & KeyValueDB transaction setup

    • [OM-38586] Expose request queue and latency metrics

    • [OM-xxxxx] Simplifying list implementation, stopping support for wildcards anywhere but the end of the path

    • [OM-40482] Implemented get_acl_resolved API call

    • [OM-38765] only rename event should come to clients supporting it

    • [OM-33101] Send CheckpointsChanged event when checkpoint is created

    • [OM-xxxxx] Fix meta record with unflushed content repair routine

    • [OM-41769] added missing list subscription event on object update

  • LFT server

    • [OM-xxxxx] support /path2/ endpoint for downloading a file in a branch or a checkpoint of a file

  • API client

    • [FDN-142] [OM-30451] [backported from 114.0] Send stop command when the AsyncIterator in call_many commands is closed.

Discovery Service

1.4.2

  • Helm

    • Fix Ingress class name

    • Added proxy-buffering annotations

    • Added common labels

    • Updated helm-tools

  • Allow specifying max HTTP-line size for WebSocket connections via WS_MAX_HTTP_LINE environment variable

1.4.1

  • Fix helm-tools scripts

1.4.0

  • Updated idl.py package version to idl.py@0.7 (support extra_headers and process_request arguments for WebSocketServer)

  • Updated discovery libraries to use parallel connections for speeding up the routing

  • Use Host header to redirect WebSocket connections when sharing is enabled

  • Allow sending empty capabilities to get any interface version

  • JS: added Symbol(InterfaceCapabilities) field to client to get service capabilities

Authentication Service

1.4.0

  • [OM-28229] Support API tokens

  • Helm

    • Fix Ingress class name

    • Added proxy-buffering annotations

  • Updated idl.py to support configuring WS_MAX_HTTP_LINE

  • Fixed an error occurred when clients sent refresh tokens signed with the private key that is no longer valid

1.3.2

  • [OM-42945] Optimize deleting expired refresh tokens

  • [OM-42533] Nucleus Cloud instance does not auto create the user folder as expected, better sanitize user name

1.3.1

  • Fix helm-tools scripts

1.3.0

  • [OM-38926] Support read-only users

  • Integrated package dependencies tracking through PACKAGE-DEPS.yaml

  • Fixed an issue where service couldn’t write its logs to a file

  • Introduced STATIC_MAX_HEADER_SIZE environment variable that allows to change the maximum header size for the static server

  • Support loading X509 certificate from IDPSSODescriptor instead of Signature for SAML metadata XML files

  • [OM-38922] Support CREDENTIAL_ACCOUNT_HARDENING env. var to restrict Credentials.register call and automatic user registration through Credentials.auth

  • [OM-35207] Disable “create account” link in the auth form in case CREDENTIAL_ACCOUNT_HARDENING is enabled

  • Support nonce argument to let clients subscribe to authentication results

  • [OM-42105]: updating auth service with newer discovery JS client and newer idl.py to implement healthchecks

1.2.0

  • Support user store to save and retrieve user data

  • Support Starfleet as an authentication source

  • Updated idl.py package version to idl.py@0.7

  • Updated omniverse.discovery.client.py package version to omniverse.discovery.client.py@1.4+main

  • Updated discovery libraries to use parallel connections for speeding up the routing

  • Fixed an issue where unicode usernames were allowed for new profiles made by system administrators

  • Fixed issues with displaying Unicode in the web UI

Search Service

3.0.0

  • [BREAKING CHANGE] All search requests now require the authentication token.

  • Helm

    • Fix Ingress class name

    • Added proxy-buffering annotations

    • Added common labels

    • Updated helm-tools

    • Changed ingress to /omni/search3

  • Updated idl.py to support configuring WS_MAX_HTTP_LINE

  • Updated tagging libraries to send the authentication token

  • Fixed an error occurred when users tried to find tags in the server root

2.2.2

  • Updated helm chart

  • Updated helm-tools submodule

2.2.1

  • Integrated package dependencies tracking through PACKAGE-DEPS.yaml

  • Support PathEvent.Copy and PathEvent.Rename for indexing

  • Updated the tagging client library to fix searching by tags

  • Fixed an issue where service couldn’t write its logs to a file

2.2.0

  • Updated idl.py package to the idl.py@0.7+master.27ce2ea9 version

  • Updated omniverse.discovery.client.py package to the omniverse.discovery.client.py@1.4.0+main.db8505e4 version

  • Updated omniverse_connection_py package to the omniverse_connection_py@11.14+dev.58eda583 version

  • Fixed an issue where some files could not be found on the server

Thumbnail Service

1.4.4

  • Helm

    • Fix Ingress class name

    • Added proxy-buffering annotations

    • Added common labels

    • Updated helm-tools

  • Removed auth registration

1.4.3

  • Updated PIL library to 8.3.1

  • Updated docker library to 5.0.2

  • Updated to IDL 0.7

  • Updated to discovery client 1.4

  • Updated to auth client 1.2

  • Switched to running code with optimizations (-O)

  • Re-enabled ping interval of websockets used in OmniClientTransport.

  • Integrated package dependencies tracking through PACKAGE-DEPS.yaml

1.4.2

  • Removed ACL copy from original image to generated thumbnail.

Tagging Service

3.0.1

  • Added required auto token field to all API functions that expose data from Nucleus.

  • Updated idl.py to support configuring WS_MAX_HTTP_LINE.

  • Removed auth registration.

2.2.1

  • Updated IDL 0.7 to latest bugfixes. Connection errors should now be forwarded.

  • Updated to latest bugfixes of discovery client 1.4.1

  • Updated to latest bugfixes of auth client 1.3.2

  • Reverted default storage location of sqlite database.

  • Auto create path to sqlite db if it does not exist.

  • Added prometheus stats:

    • result counter

    • db defrag time

  • Helm

    • Fixed Ingress class name

    • Added proxy-buffering annotations

    • Added common labels

    • Updated helm-tools

2.2.0

  • Added support for different storage backends

2.1.2

  • Updated docker library to 5.0.2

  • Updated to IDL 0.7

  • Updated to discovery client 1.4

  • Updated to auth client 1.2

  • Switched to running code with optimizations (-O)

  • Re-enabled ping interval of websockets used in OmniClientTransport.

  • Integrated package dependencies tracking through PACKAGE-DEPS.yaml