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 needsAUTH_ROOT_OF_TRUST_LONG_TERM_PUB
andAUTH_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 databaseIf 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 todocker-compose up
. We recommend one LFT per 10 concurrent up/downloadsMore 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’ deletionSample 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
versionUpdated omniverse.discovery.client.py package to the
omniverse.discovery.client.py@1.4.0+main.db8505e4
versionUpdated omniverse_connection_py package to the
omniverse_connection_py@11.14+dev.58eda583
versionFixed 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