2020 Release Notes

To ensure accuracy, the API fails if there are any repository evaluations older than release 76, as new waiver information was added as part of that release. Please re-evaluate all repositories to get a successful response.

Sonatype encourages using the most current IQ Server release and not trailing behind more than six months. Release notes for the most current versions can be viewed here .


Release 103 (December 2020)

InnerSource Insight for Maven

InnerSource dependency analysis allows a user to visualize InnerSource components and their transitive dependencies in a report with links to any associated applications. Please refer to InnerSource Insight for more information.

Support for Evaluating Java 14 and 15 Applications and Components 

The application and component evaluation have been updated to support Java 14 and 15 bytecode.

IQ for SCM supports Gradle Projects

Automated pull request feedback is now available for Gradle projects in all supported Source Control Management platforms. Click here to learn more about configuring automated PRs, PR reviews, and code line comments to work with Gradle.

Release 102 (November 2020)

Manage User Token

The new User Token UI allows each user to manage their own User Token directly from IQ Server.

API to check if User Token exists

The User Token API has a new endpoint that allows checking if a User Token exists for the current user.

Release 101 (November 2020)

Lifecycle XC Removed in Nexus IQ CLI

Nexus IQ CLI no longer supports Lifecycle XC. IQ Server now has native support for all languages that were supported in Lifecycle XC.  For more information on the supported languages please refer to the Comprehensive Guide to Lifecycle Scanning.

New Structure for .NET Pecoff PackageUrl 

PackageUrl for pecoff has a new structure. The namespace is part of the qualifiers with the key "nexusnamespace", older versions will not change. More information can be found in our supported formats.

Manifest Evaluation REST API

The new Manifest Evaluation REST API provides a way to perform an application policy evaluation on supported manifest files discovered in a source control branch.

Manage Waivers for Violation

The new Waivers for Violation page allows viewing, adding and deleting waivers for a violation.

Time-based Waivers

Now Add Waiver page allows setting an expiration timeframe for the waiver.

Docker Image User Permissions Migration

The sonatype/nexus-iq-server docker image for IQ version 101 changed the base image from Red Hat UBI (Universal Base Image) to a different Red Hat UBI that includes OpenJDK 1.8. As a result, the UID of the nexus user has changed from uid=998 to uid=997, which will impact access to persistent data.  See our upgrade instructions if you are upgrading to version 101 or later in a docker image.

Release 100 (October 2020)

Advanced Development Pack

Advanced Remediation Strategies, Hygiene Ratings, Breaking Changes, and Release Integrity capabilities made Generally Available as part of the Advanced Development Pack add-on product license.

Time-based Waivers via APIs

Add Waiver API now has an option to apply an expiryTime to waivers as a means to better manage and remove waivers. When the timeframe for the expiryTime has been met, the waiver will automatically expire.

Release 99 (September 2020)

GitLab MR Reviews with Line Comments

GitLab MR reviews now provide MR line comments, noting the exact line of code that caused a policy violation. Supplemented with the summary of policy violations for a specific MR, developers have all the information at their fingertips to innovate with peace of mind. 

Release 98 (September 2020)

Improvements to Golang Application Analysis

IQ Server (through CLI) now supports evaluating policies against Go components defined in a Gopkg.lock file.

Automatic Migration to Root Organization

Installations that have not yet created and configured the Root Organization will automatically be migrated to a Root Organization with no policies defined.

If you have not yet migrated and wish to use policies from an existing organization at the Root Organization level, it is recommended to do this before upgrading. More information can be found in our documentation.

Automatic Update of Advanced Search Index

Previously, the search index had to be rebuilt manually to ensure search results reflect the latest policy configuration and application data. This release starts adding an incremental update of the search index that runs automatically when the application data is changed. Automatic indexing currently covers organizations, applications, application categories, component labels, policies, and security vulnerabilities found during policy evaluations.

Drop Requests with Unsafe Characters

IQ Server now drops inbound requests containing in the path characters known to be used for unsafe purposes (semicolons, backslash and unescaped non-ascii characters).

GitLab MR Reviews

GitLab MR reviews provide a MR comment with summary of violations, affected components, and description of violations introduced in that specific MR to help developers resolve policy violations effectively and efficiently.

User Sessions Maintained on Restart

IQ Server user sessions are now kept when the server is stopped such that they can continue to be used when the server is restarted as long as they have not timed out.

Applicable Waivers REST API

The new Applicable Waivers REST API enables retrieval of all the waivers applicable to a given policy violation.

New Add Waiver page

The new Add Waiver page provides the ability to apply a waiver against a policy violation from two different workflows. You can access the Add Waiver page either directly from the Application Report or from the Violation Details page.

Release 97 (August 2020)

Repository Policy Violation Notifications

Email notifications for repository policy violations are sent now when the policy violation is detected instead of periodically.

New Security Vulnerability Category Policy Condition

Security Vulnerability Category is now available as a policy condition. See  Understanding the Parts of a Policy  for details and Policy Management.

Security Vulneratibility Override REST API

Addition of the Security Vulnerability Override API now allows security vulnerability status overrides to be retrieved alongside information about the components where they are currently taking effect.

Add Waiver REST API

New Policy Waiver REST API allows adding waivers with Application, Organization or Root Organization scope. The API has an option to apply a waiver to all components with matching policy violation.

Automated Pull Requests for GitLab

Support Automated Pull Requests for GitLab where pull requests are automatically created for policy violations with suggested remediation.

Source Control Configuration Test Button

Check the configuration of your source control setup for appropriate permissions for pull requests.

Automated Pull Requests Daily Activity View

Show recent automated pull request activity in the source control configuration screen.

Release 96 (July 2020)

New Dependency Type Policy Condition

Dependency Type is now available as a policy condition. See  Understanding the Parts of a Policy  for details and Policy Management.

Improvements to Application Analysis

IQ Server (through CLI) now supports evaluating policies against

Performance Improvements for Accessing LDAP Servers

Various performance improvements for accessing LDAP servers

Release 95 (July 2020)

Components Identified by Package Manifest

Components found in a manifest that were previously unknown by Sonatype will be shown in the CIP as identified by "Package Manifest" displaying the given coordinates in the scanned file.

.NET improvements

Nuget data matching have been enhanced with PE ( Portable Executable )/COFF ( Common Objective File Format ) data: 

  • The best fit matching is replaced with dll pecoff matching.
  • Exact matching to the .nupkg archive and  for each .dll pecoff signature.

With the enhanced data, identification of following extensions are now supported : .acm, .ax, .cpl, .dll, .drv, .efi, .exe, .mui, .ocx, .scr, .sys, .tsp

Improved Reports Page Performance

The Reporting Area in IQ Server's UI is now paged, increasing performance by decreasing load time.

Various Performance Improvements

Improved the performance in various areas (UI, REST APIs, etc).

New Option to Ignore LDAP Referrals

The configuration for LDAP connections now features an additional option to control how LDAP referrals are handled.

PR Reviews with Line Comments

PR reviews available in GitHub and BitBucket now provide PR line comments, noting the exact line that introduced a policy violation. Supplemented with the summary of policy violations for a specific PR, developers have all the information at their fingertips to innovate with peace of mind.

Improved Dashboard Filter Management

The UI for saving, loading and deleting Dashboard filters is simplified. Now the Save button is accessible directly in the sidebar footer. Saved filters can be loaded and deleted from the single dropdown menu.

Release 94 (June 2020)

C/C++ Application Analysis to Support conanfile.py Files

IQ Server (through CLI) can now be used to evaluate policies against components defined in a conanfile.py file.

Cross-stage Violation REST API

Policy violations can now be retrieved using the Cross-stage violation API to get information on a particular policy violation across the different stages of the lifecycle.

New Violation Details Page

Centralized access point for policy violation information. It can be accesed from the Dashboard to obtain detailed information on a specific policy violation for an application, including report information across different stages of the lifecycle.

Permission-aware Results from Advanced Search

The Advanced Search is still an early access feature but one of its caveats has now been resolved: Search results are now filtered to only include those records the user has "View" permission for.

Release 93 (June 2020)

Non Failing Version Recommendation in CIP

Additional recommended version is added to Component InfoNext version with no build failure violations.

Release 92 (May 2020)

Performance Improvements with External Databases

Improved the performance when using an external database for policy evaluations, application reports UI, application reports and other REST APIs.

Use of TLS for Static Resources Referenced by Email Notifications

The static resources like images that are needed to view email notifications are now retrieved via HTTPS instead of HTTP. Please make sure your network allows outbound connections as detailed in Configuring Outbound Traffic.

Policy Waiver REST API Enhancement

Policy Waivers can now be retrieved using the updated Policy Waivers REST API.

Release 91 (May 2020)

New REST API for Application Categories

Application Categories can now be managed using the REST API. See the Application Categories REST API for details.

Improved Policy Evaluation Performance with External Databases

Improved the performance of policy evaluations when using an external database.

Yum Application Analysis

IQ Server (through CLI) can now be used to evaluate policies against components from dependency files of  Yum

New Data Source Policy Condition

Data Source is now available as a policy condition. See  Understanding the Parts of a Policy  for details and Policy Management.

Nexus Firewall Support of New Languages/Ecosystems

Firewall is extended to support packages of following languages/ecosystems:

  • PHP (Composer)
  • Swift/Objective-C (Cocoapods)
  • Conda
  • Alpine (APK)
  • Bower
  • CRAN (R)
  • Debian (APT)
  • C/C++ (Conan)

It is recommended to upgrade to the latest Reference Policy Set (reference-policies-v4) with the Component-Unknown policy changes.

Release 90 (April 2020)

Policy Waiver REST API Enhancement

Policy Waivers can now be deleted using the updated Policy Waivers REST API.

Component Labels  REST API Enhancement

Component Labels can now be managed using the updated Component Labels REST API.

Alpine, Drupal and Debian Application Analysis

IQ Server (through CLI) can now be used to evaluate policies against components from dependency files of:

Automated Pull Requests and Build Status for Bitbucket Server and Bitbucket Cloud

Support for both Bitbucket Server and Bitbucket Cloud have been added to Automated Pull Requests and Build Status.

Improved Storage for Firewall Data

The storage for Firewall data has been refactored to be faster and to require less disk space. A small performance impact may be noticed after the upgrade (for a few hours) until the existing data is migrated.

Release 89 (April 2020)

Component Evaluation REST API Enhancement

The Component Evaluation REST API now includes data about effective component licenses.

Report-related REST API Enhancement

The Report-related REST API now includes data about effective component licenses.

R and Rust Application Analysis

IQ Server (through CLI) can now be used to evaluate policies against components from dependency files of:

New PDF Report

The Look & Feel of the  PDF Report  for the  Application Composition Report  has been updated and streamlined to align more with IQ Server's UI. This increases its focus on essential information in addition to improving PDF generation performance.

Release 88 (March 2020)

Recommended Remediation for Transitive Maven Dependencies

Now the Component Info tab in the Component Information Panel adds a Recommended Remediation section for transitive dependencies. It provides links to all direct dependencies that brought in the selected component. Available for maven components only.

Advanced Search (Early Access)

This release includes an Early Access version of Advanced Search. This new search feature provides a flexible way to locate items among your applications. For instance, Advanced Search can help find all applications that are affected by a given security vulnerability.

Component Details REST API Enhancement

The Component Details REST API now includes data about effective component licenses.

Swift/Objective-C and Conda Application Analysis

IQ Server (through CLI) can now be used to evaluate policies against components from dependency files of:

GitHub PR Reviews

GitHub PR reviews provide a PR comment to provide a summary of violations, affected components, and description of violations introduced in a specific PR to help developers resolve policy violations effectively and efficiently.

Release 87 (March 2020)

User Tokens REST API Enhancements

User Tokens REST API exposes endpoints to System Administrators for querying tokens by creation date and supports deletion. 

Fix for a critical issue with the Application Report in IQ 86

This release fixes a regression that prevented IQ Server 86 to load some reports.

Release 86 (March 2020)

Known Issue with the Application Report

There is an issue with IQ Server 86 failing to load some reports.
Customers should avoid upgrading to release 86 and instead upgrade to release 87 or newer.

New REST API for Moving an Application from one Organization to another

An application can now be moved from one organization to another using the REST API. See the Application REST API for details.

C/C++, Ruby and PHP Application Analysis

IQ Server (through CLI, Jenkins and Bamboo plugins) can now be used to evaluate policies against components from dependencies files for:

Release 85 (February 2020)

New Component Category Policy Condition

Component Category is now available as a policy condition. See Understanding the Parts of a Policy for details.

New Component Claim REST API

The new Component Claim REST API allows you to view, add, update, and delete component claims.

Extended Stale Waivers REST API

Stale Waivers REST API now returns stale evaluations along with the stale waivers.

Release 84 (February 2020)

Release 83 and Release 84 introduced migration steps in server startup where proxy server and mail server configurations are read from the existing config.yml file and transferred to the database. An issue was discovered which stops IQ Server from successfully starting when the password field for either of these configurations is an empty string. If that is the case for either of your configurations please comment out the password fields entirely instead of having an empty string. 

Using the proxy server configuration as an example, instead of having a configuration as below:

proxy:
  hostname: "proxy.server"
  port: 8081
  username: "proxy-user"
  password: ""

please configure your configuration as follows where password  is commented out:

proxy:
  hostname: "proxy.server"
  port: 8081
  username: "proxy-user"
  # password: ""

No special action is needed if a non-empty password exists. It will be stored in the database encrypted.

New Stale Waivers REST API

Stale Waivers REST API allows you to retrieve stale application and repository waivers.

To ensure accuracy, the API fails if there are any repository evaluations older than release 76, as new waiver information was added as part of that release. Please re-evaluate all repositories to get a successful response.

Email Server Configuration Verification in Email Server Configuration UI

A sample email can be sent in the Email configuration UI to verify the email server being configured by entering the desired recipient and using the  Send Test Email  button.

New HTTP Proxy Server Configuration REST API and UI

The proxy server configuration is now configurable via the new HTTP Proxy Server Configuration REST API or via the Proxy Server Configuration View found in System Preferences. Any existing proxy server configuration in config.yml will be migrated and become obsolete.

NPM support for Automated Pull Requests

Nexus IQ for SCM now supports the NPM ecosystem. See Automated Pull Requests for details.

Release 83 (January 2020)

New Email Server Configuration REST API and UI

The email server configuration for email notifications is now configurable via the new Mail REST API or via IQ Server's UI. Any existing email server configuration in config.yml will be migrated and become obsolete.

New Permissions for Waiving Policy Violations, Changing Licenses, and Changing Security Vulnerabilities

Three new permission Waive Policy ViolationsChange Licenses, and Change Security Vulnerabilities are now available for (un)waiving policy violations, changing component licenses, and changing component security vulnerabilities. Previously, the Edit IQ Elements permission was required for these operations. All roles that have the Edit IQ Elements permission are automatically updated to have these new permissions.

Binary Fingerprinting Improvements

This release includes improvements to our proprietary advanced binary fingerprinting and will increase scan file sizes up to four times.

SHA-1 Support for Third Party Scanning

The  Third-Party Scan REST API   and CLI has been extended to support the following feature.

  • Identify components based on SHA-1 value (content hash).

Legacy Application Report Link Moved

The Policy-centric Application Composition Report no longer contains a banner with a link to the legacy version of the Application Composition Report.  Instead, the legacy version may now be accessed via the Policy-centric report's Options menu.

Release 82 (January 2020)

Dependency Type Indicators and Filter

Application Composition Report now displays Dependency Type Indicators for maven components. Components can be filtered by dependency type using the new Dependency Type filter.

Note:  Dependency Type is only supported for maven components. Reports created prior to January 2, 2020 will show all non-maven components as a direct dependency type. Once the application is rescanned, the non-maven components will be shown as unknown dependency types.

New Permission for Changing Access Control

A new Edit Access Control permission was added for managing the access control for applications, organizations and repositories. Previously, the Edit IQ Elements permission was required for access control management. All roles that have the Edit IQ Elements permission are automatically updated to have the new Edit Access Control permission.