Sonatype Nexus Repository 3.97.0 – 3.97.3 Release Notes
The Sonatype Nexus Repository 3.97.x release line includes exciting new features, enhancements, and bug fixes. Learn more in the sections below!
Release Timeline
3.97.0 – October 14, 2026
3.97.1 – October 20, 2026
3.97.2 – October 23, 2026
3.97.3 - October 27, 2026
Check Known Issues Before Upgrading
Before upgrading, see the Known Issues & Upgrade Guidance section at the end of these release notes to determine whether any known issues or upgrade recommendations apply to your environment.
What’s New and Noteworthy in This Release?
Removed Certificates Impacted by eMudhra Compromise (Release 3.97.2)
Sonatype Nexus Repository 3.97.2 includes additional certificate trust protections in response to the recent eMudhra certificate authority compromise. We updated the UI and backend container images to remove trust in affected root certificates and prevent connections that rely on compromised certificate chains.
Introducing Nexus Repository Pro+
Sonatype Nexus Repository now offers Pro+, a new edition that builds on Nexus Repository Pro by adding malware protection and policy controls to help organizations govern the open-source components entering their development environments.
Pro+ evaluates components requested by developers, build systems, and AI agents against Sonatype’s open source intelligence and your organization’s policies. It identifies and blocks malicious components, including emerging threats, before they enter your environment. Teams can also apply customized security, legal, architectural, and age-based policies at component intake, helping prevent unwanted components from reaching builds and reducing the need to address risks later in the development lifecycle.
For details about Nexus Repository editions, Pro+ capabilities, and configuration, see Nexus Repository Tiers and Feature Availability.
Improved Search and Component Details in the Nexus One UI
Sonatype Nexus Repository now provides a more efficient search and component investigation experience in the Nexus One UI. Search results include accurate result counts, sorting by Last Updated, Name, or Repository, and URL-based search criteria that make searches easy to bookmark and share. Component details also provide clearer repository and component information, consistent timestamps, accurate file and repository counts, and Repository Health Check intelligence such as popularity, age, and license data. Together, these improvements make it faster to find components, understand their context, and share reproducible search results with other users.
Required Base Telemetry with Improved Administrator Guidance
Sonatype Nexus Repository now includes required base telemetry to provide consistent usage reporting. Administrators receive clear guidance for completing the required acknowledgement and verifying connectivity to the Sonatype telemetry service, along with a grace period before any repository restrictions apply.
A new Baseline Telemetry health check provides visibility into acknowledgement status, while actionable upload error messages help identify configuration, licensing, or connectivity problems. For full details, see the Nexus Repository Telemetry help documentation.
Improved Chained Proxy Reliability Across Repository Formats
Sonatype Nexus Repository now provides more reliable chained proxy support for Ansible Galaxy, Hugging Face, Terraform, and Conda repositories. These improvements help organizations that route dependency traffic through multiple Nexus Repository instances, such as tiered, restricted, or air-gapped environments, keep package and model requests flowing through the expected repository path without exposing inaccessible upstream locations or interrupting authentication.
Ansible Galaxy proxy repositories now rewrite upstream artifact URLs for downstream clients, Hugging Face repositories preserve working pagination across proxy chains, and Terraform repositories provide the authentication challenge required for downstream Nexus Repository instances to complete credential negotiation. Conda proxy repositories also support preemptive authentication, allowing credentials to be sent with the initial upstream request and reducing unnecessary authentication round trips on cache misses. Together, these changes improve dependency availability and reduce failures caused by routing, pagination, and authentication differences between repository formats.
Conda Pre-emptive Authentication
Conda proxy repositories now persist and apply the httpClient.authentication.preemptive setting. If you configured this value through the REST API in an earlier release, review the repository configuration after upgrading and confirm that the setting reflects the authentication behavior you want.
Service Account Tokens Across All Repository Formats
Sonatype Nexus Repository now supports service account tokens across all supported repository formats, making it easier to use dedicated machine identities for CI/CD pipelines, build systems, and other automated workflows. Clients can authenticate with the same sat.* credential using either HTTP Basic or Bearer authentication, depending on the authentication method supported by the repository format and its native tooling.
This expanded support helps organizations reduce their reliance on human user credentials in automation and simplifies credential management across diverse development ecosystems. A service account can be assigned an appropriate role and used consistently across repository formats, giving teams a centralized way to manage, rotate, and revoke access for automated systems. For Basic authentication, use the service account name as the username and the service account token as the password; clients that support Bearer authentication can continue sending the token in the Authorization header.
For full details, see Service Account Tokens help documentation.
Improved Remote Storage URL Validation for OCI Proxy Repositories
Sonatype Nexus Repository now validates Remote Storage URL values for OCI proxy repositories consistently with other proxy repository formats. When creating or updating an OCI proxy repository through the UI or REST API, the remote storage URL must begin with http:// or https://.
Nexus Repository also preserves the submitted URL in the stored repository configuration, providing consistent URL validation and configuration behavior across proxy repository formats.
Automatic Repository Health Check for Proxy Repositories
Sonatype Nexus Repository Health Check now operates automatically across proxy repositories, providing repository health insights without requiring administrators to use the Configure for all proxy repositories option.
This simplifies Repository Health Check configuration by automatically applying coverage across proxy repositories
Repository Firewall Support for Swift Proxy Repositories
Sonatype Repository Firewall now supports Swift proxy repositories in Sonatype Nexus Repository, extending policy evaluation and quarantine protection to Swift dependencies. When developers request Swift packages through a protected proxy repository, Repository Firewall evaluates the package against configured Proxy-stage policies and can block packages that introduce unacceptable open source risk before they enter development workflows.
Swift proxy repositories also integrate with Repository Health Check and Firewall reporting, giving teams visibility into policy violations and repository risk alongside other supported package ecosystems. This helps organizations apply more consistent software supply chain controls to Swift development while continuing to manage dependencies through Nexus Repository.
Bug Fixes
3.97.3 Bug Fixes
Issue ID | Description |
|---|---|
NEXUS-55606 | Docker image pushes now complete successfully for users whose repository access relies exclusively on Content Selector permissions. |
NEXUS-55243 | Blob uploads of 2 GB or larger to hosted OCI repositories now complete successfully without errors. |
NEXUS-55899 | The Download and Copy URL actions on the Browse page now include the configured context path when generating asset links in Sonatype Nexus Repository. |
3.97.1 Bug Fixes
Issue ID | Description |
|---|---|
NEXUS-55897 | Startup on PostgreSQL databases with non-English server locales completes successfully when upgrading to 3.97.x |
NEXUS-55699 | Proxy repository cache tokens now synchronize correctly across all nodes in an HA cluster, ensuring that components with a maximum age of -1 are served from cache without triggering repeated upstream requests after cache invalidation. |
NEXUS-55356 | PyPI proxy repositories handle high volumes of concurrent simple index requests reliably without triggering out-of-memory errors. |
NEXUS-54725 | Concurrent Docker proxy pulls of cached tag manifests complete reliably without exhausting request threads or database connections, even for repositories with large numbers of signature artifacts or multi-platform images. |
NEXUS-55727 | Policy Compliant Component Selection (PCCS) now correctly updates npm and PyPI proxy chains and groups to unhide cleared component versions and prevent stale cached filtering results. |
NEXUS-54553 | npm packument metadata now refreshes correctly after policy changes, waivers, or removals in Sonatype Lifecycle, preventing stale component version filtering. |
3.97.0 Bug Fixes
Issue ID | Description |
|---|---|
NEXUS-55658 | HEAD requests to npm group repositories return successful responses instead of HTTP 500 errors when member proxy repositories are included. |
NEXUS-55428 | PyPI proxy repositories with |
NEXUS-55223 | PyPI proxy repositories now return the correct format (HTML or JSON) to each pip client when concurrent requests for the same Simple index page arrive with different |
NEXUS-55200 | OCI proxy repository blob pulls now complete successfully when the remote registry redirects to a signed storage URL (such as Azure Blob Storage SAS URLs) containing consecutive slashes in the path, preserving the exact redirect path bytes so that upstream signature validation succeeds. |
NEXUS-55030 | Authentication rate limiting now correctly releases blocked accounts after the advertised |
NEXUS-55004 | Cleanup policies now remove eligible components from RubyGems repositories on PostgreSQL as expected, rather than silently reporting zero assets cleaned up. |
NEXUS-54977 | NuGet V3 group repositories now return complete version lists, including packages published with release qualifiers alongside their base versions. |
NEXUS-54915 | "Retain last N versions" cleanup policies now correctly preserve the newest component versions across npm, PyPI, Helm, NuGet, RubyGems, Go, Yum, Terraform, Swift, Apt, and Pub repositories when repositories contain components published before and after a version-normalization format change introduced in 3.94. |
NEXUS-54913 | Ansible Galaxy proxy repositories correctly forward collection version and pagination requests upstream, allowing |
NEXUS-54855 | User token lookup via |
NEXUS-54839 | Conda hosted repositories now automatically generate an empty |
NEXUS-54837 | HuggingFace XET presigned URL sweep task logging runs quietly in the background by default, eliminating repetitive log entries that appeared every 60 seconds and caused unnecessary noise in customer logs. |
NEXUS-54829 | Audit log entries for assets removed by cleanup tasks now include the full asset path, type, and blob store location, providing the complete details needed for selective content recovery. |
NEXUS-54817 | Go hosted repositories now correctly resolve module versions containing uppercase prerelease characters (such as |
NEXUS-54771 | OCI proxy repositories now enforce the same |
NEXUS-54764 | Anonymous Docker pulls continue to work correctly after running the Admin – Delete orphaned API keys task, with no authentication failures, rate-limit blocking, or service restart required. |
NEXUS-54760 | Ansible Galaxy proxy repositories now return |
NEXUS-54753 | OCI repository creation and updates complete successfully when subdomain routing is configured on instances that also host legacy Docker repositories. |
NEXUS-54715 | HEAD requests to npm group repositories return correct responses when the requested package is not yet cached locally. |
NEXUS-54691 | User tokens remain valid after upgrading from an OrientDB-based installation that was migrated to H2 or PostgreSQL. |
NEXUS-54638 | XML processing in WebFlux endpoints now correctly enforces configured memory limits when parsing asynchronous XML payloads. |
NEXUS-54604 | Data Repair Plan tasks against S3 blob stores now scan blob attributes concurrently, eliminating the serial bottleneck that caused reconciliation workers to sit idle and made large-scale repair plans impractical to complete. |
NEXUS-54602 | Sensitive session tokens in |
NEXUS-54601 | Large Docker and OCI layer commits to S3-backed blob stores complete successfully during concurrent or high-volume pushes. |
NEXUS-54596 | Cargo group repository |
NEXUS-54579 | The Cleanup Policy Preview repository dropdown now consistently displays all repositories matching the selected format across all supported formats — including npm, PyPI, Go, Helm, NuGet, Yum, RubyGems, Terraform, Swift, Apt, and Pub. |
NEXUS-54576 | NuGet package publishing to hosted repositories with Disable Redeploy now completes successfully when multiple packages share common embedded PDB files, and packages containing PDBs alongside DLLs are correctly stored as standard NuGet packages rather than symbol packages. |
NEXUS-54572 | NuGet symbol assets ( |
NEXUS-54571 | Ansible Galaxy collection downloads through chained proxy repositories now complete successfully, with metadata URLs rewritten to reflect the downstream proxy’s address rather than exposing upstream host information that clients cannot reach. |
NEXUS-54570 | npm proxy repositories in HA clusters now return consistent responses across all nodes when a previously unavailable package becomes accessible, eliminating the stale 404 responses that persisted on individual nodes until cache expiration. |
NEXUS-54568 | The Keep database records when blob is missing checkbox on the Verify and Repair Data Consistency task now renders as checked by default for tasks migrated from earlier versions, preventing unintended deletion of database records when saving unrelated task settings. |
NEXUS-54563 | The Repair - Execute Data Repair Plan task now successfully removes orphaned database records for assets whose blob files are missing, preventing recurring MissingBlobException errors when those assets are subsequently requested. |
NEXUS-54558 | PyPI proxy repositories configured with an empty |
NEXUS-54552 | npm package metadata browse nodes remain visible and deletable after all associated tarball assets are removed from a proxy repository. |
NEXUS-54550 | Docker proxy repositories backed by Amazon ECR accept pre-generated ECR Docker tokens (obtained via |
NEXUS-54526 | npm proxy repositories now successfully download packages from registries that redirect to Azure Blob Storage, with authentication credentials correctly scoped to each host during cross-domain redirects. |
NEXUS-54469 | Docker proxy repository responses now return a stable |
NEXUS-54468 | npm packument responses of any size are now gzip-compressed when clients request it, eliminating the previous 10 MiB ceiling above which compression was silently skipped. |
NEXUS-54465 | Email server configuration via the REST API now correctly enforces |
NEXUS-54434 | Browser refresh and direct deep links to permission-gated pages now load the intended page reliably, without redirecting to the Welcome page, even for users with large role sets. |
NEXUS-54322 | User account changes — deletions, deactivations, and role updates — now take effect across all nodes in an HA cluster within seconds, rather than remaining stale on remote nodes for up to two minutes. |
NEXUS-54233 | Browse tree updates for newly uploaded Raw components now reflect across all repositories promptly, even when instances contain tens of millions of components under high concurrent upload activity. |
NEXUS-54229 | In clustered PostgreSQL deployments, Sonatype Nexus Repository now propagates repository configuration changes across nodes immediately by default, so consecutive create-and-use requests routed to different nodes no longer fail while waiting for the polling interval. |
NEXUS-54208 | OIDC logout now terminates the user’s session at the identity provider (such as Keycloak), ensuring that subsequent SSO login attempts require re-authentication as expected. |
NEXUS-54132 | Docker proxy repositories without configured credentials now log anonymous bearer token exchange failures at the debug level instead of generating misleading warning-level log entries. |
NEXUS-54127 | Deleting a shared layer blob or a manifest-list child manifest in Docker and OCI hosted repositories now returns HTTP 409 when the asset is still referenced by one or more live manifests, preventing the deletion from proceeding until all referencing manifests are removed first. |
NEXUS-53780 | Maven group repository metadata merges correctly when Gradle clients issue HEAD requests, ensuring all member repository versions are included in subsequent GET responses. |
NEXUS-53722 | The classic UI Administration → Repositories list loads significantly faster on instances with large numbers of repositories, as size metrics are now retrieved in a single bulk query instead of one query per repository. |
NEXUS-49734 | A new REST API at |
NEXUS-46386 | The HA Helm chart now sets |
NEXUS-44892 | PyPI proxy repositories now support a configurable |
FIRE-774 | npm proxy package metadata for frequently requested packages is now served from pre-rendered cached responses, reducing latency on repeated lookups by eliminating redundant parsing of upstream package data on every request. |
FIRE-762 | Cleanup policy removal of cached Docker images now triggers deletion of the corresponding container evaluation reports in Repository Firewall, preventing orphaned report accumulation on the IQ Server. |
Known Issues & Upgrade Guidance
This section captures known issues in the 3.97.x line as well as upgrade guidance.
Open Known Issues
Impacted Version(s) | Description | Workaround (if available) |
|---|---|---|
3.96.0 – 3.97.0 | Sonatype is aware of an issue impacting Sonatype Nexus Repository deployments using PostgreSQL. High volumes of audit events can cause excessive growth of the | Reduce the audit event retention period using the Retention (days) field in the Audit capability configuration. To reduce the size of newly generated audit events, set Audit Event Persistence Disabled by Default in 3.97.1 Note that audit event persistence is disabled by default as of version 3.97.1. If you are on version 3.97.1 or beyond, you do not need to set |
Database Migrator 3.94.0 – 3.98.0 | Sonatype is aware of an issue affecting OCI repositories when migrating a Nexus Repository database between H2 and PostgreSQL. The migration may not correctly transform OCI-related database tables, causing OCI pull requests to fail with an HTTP 500 Internal Server Error across hosted, proxy, and group repositories. The issue may also result in missing or corrupted data in the migrated database. The source database remains unaffected. | No workaround currently exists. Do not use the Database Migrator on impacted versions if you use OCI repositories. |
Resolved Known Issues
Impacted Version(s) | Version in which Issue is Resolved | Description |
|---|---|---|
3.97.0 | 3.97.1 | In some PostgreSQL-backed deployments, including but not limited to those using a non-English database locale, the upgrade may not add the |