FlexNet Code Insight 2019 R4

Release Notes

December 2019

Introduction

These Release Notes provide the following information about the FlexNet Code Insight 2019 R4 release:

About FlexNet Code Insight
New Features
Resolved Issues
Known Issues in this Release
Legal Information

About FlexNet Code Insight

FlexNet Code Insight is the next generation Open Source security and compliance management solution. It empowers organizations to take control of and manage their use of open source software (OSS) and third-party components. Code Insight helps development, legal, and security teams use automation to create a formal OSS strategy that balances business benefits and risk management.

New Features

The FlexNet Code Insight 2019 R4 provides new features in the following areas:

Project Administration
Scanning and Automated Discovery
Web UI Enhancements
REST APIs

Project Administration

This release includes the following new administrative features to help with the setup and management of Code Insight projects.

Global / Project Option to Delete Inventory with No Associated File

Previously, FlexNet Code Insight automatically deleted “empty” inventory (that is, inventory items with no associated files) during a project rescan and did the same by default during a project data import. The Web UI now offers an option that allows the user to determine whether inventory items with no associated files should be retained or deleted.

When the option is selected, empty inventory is removed during a rescan or import, thus trimming inventory items not applicable to the project due to the lack of associated files from the scanned project codebase. When the option is not selected, all inventory is retained, thus possibly saving important information, such as analysis details, associated with the empty inventory. Users can than apply this saved information as needed before manually deleting the inventory.

This option, labeled On the data import or rescan, delete inventory with no associated files, is set globally for all projects through Project Defaults on the Administration page. However, it can be edited for a given project on the Edit Project dialog (accessed through the Manage Project | Edit Project menu option on the project Summary tab). Note that users can use the createEmptyInventory parameter for importProjectData API to override this project setting for an individual import process.

Field to Track Project Status

The new Project Status option shows the current state of a project as Not Started, Analysis in Progress, Analysis Completed, or Project Complete. FlexNet Code Insight automatically sets the Not Started state at project creation (or if the initial scan fails) and sets the Analysis in Progress state when the initial project scan has successfully completed. However, users can manually update the project status at any time, applying their site’s own interpretation of the provided statuses.

This option is available on the Edit Project dialog accessed through the Manage Projects | Edit Project menu option on the project Summary tab.

Scanning and Automated Discovery

This release provides the following Code Insight scan and Automated Discovery enhancement:

Enhanced Inventory Priority Logic

Previously, FlexNet Code Insight classified inventory without a selected license as P3. This priority, which represents inventory of medium-low importance, can lead reviewers to believe that no action is required for the inventory item.

In this release, Code Insight now sets the inventory priority to P1 (high importance) if any of these circumstances exist:

The inventory item has at least one associated security vulnerability with a severity of High (for CVSS v2) or Critical (for CVSS v3.0).
The Selected License priority is P1.
No licenses are found (that is, the Selected License value is I don’t know and no evidence of other licenses is found in the files associated with the inventory item).

Otherwise, the inventory priority is based on the license priority or highest security vulnerability severity associated with the component on which the inventory is based.

As in previous releases, the reviewer can always manually change the inventory priority.

Web UI Enhancements

This release includes the following enhancements to the Web UI:

Project Data Import Web UI
Improved Scan Server Status Dialog
Project Data Export from an Inventory-Only Project
Other Web UI Enhancements

Project Data Import Web UI

Previously, users could import project data using the REST interface only. This release offers project import functionality through the Web UI. The feature is accessed through the Manage Project | Import Project Data menu option on the project Summary tab. The Import Project Data dialog enables you to select the JSON data archive to import and to specify whether the import requires MD5 checks (in addition to file-path checks) to do the following:

Associate files to target inventory during the import process
Mark a codebase files as reviewed in the target project during the import process

The setting that determines whether the import process deletes those inventory items with no associated files is set on the on the Edit Project dialog, accessed using the Manage Project | Edit Project menu option (see Global / Project Option to Delete Inventory with No Associated File). For more information about the import feature, see the “Exporting and Importing Project Data” in the FlexNet Code Insight User Guide or in the online help.

Project Data Export from an Inventory-Only Project

Project data export from an inventory-only project is now available in the Web UI. This functionality is accessed from the Manage Project | Export Project menu option on the project Summary tab.

Improved Scan Server Status Dialog

The Scan Server Status window has been enhanced to identify the scan server, show the project currently being scanned by the server, list the other project scans (if any) currently waiting in queue order, and provide an email link for the owner of each project listed.

This window is accessed by clicking the Show Details link in the Scan Progress field on the Summary tab. The link is available while your project scan is currently waiting in a queue.

Other Web UI Enhancements

The following enhancements are also available in this release:

A one-click copy function that copies the contents of the As Found License Text field to the Notices Text field for an inventory item. Users have the option either to replace all existing Notices text with the copied content or to append the copied content to the existing Notices text.
New information icons for the Component and License fields on the Custom Detection Rule interface.

REST APIs

The following tables describe the new or updated FlexNet Code Insight REST APIs

New APIs

The following new REST APIs were added in this release:

Resource

API Name

Description

Inventory

inventories/{inventoryId}

(GET method) Retrieves the details of a specific inventory item.

inventories/{inventoryId}/status

(PUT method) Updates the status of an inventory item: APPROVED, REJECTED, or DRAFT.

Project

projects

(GET method) Retrieves a list of all projects, showing the ID, name, owner, and status of each project.

projects/{projectId}/status

(PUT method) Updates the status of a specific project.

Updated APIs

The following REST APIs were updated in this release.

Resource

API Name

Description

Inventory

inventories

(POST method) New properties to specify remediation notes, usage guidance notes, and the workflow URL when creating inventory: usageGuidance, remediationNotes, and workflowURL.

inventories/{inventoryId}

(PUT method) New properties to specify remediation notes, usage guidance notes, and the workflow URL when updating inventory: usageGuidance, remediationNotes, and workflowURL.

Project

projects

(POST method) New property to delete empty inventory items (that is, inventory with no files associations) during a project rescan or import: deleteEmptyInventory.

Project Importer

importer/importProjectData

(POST method) New parameter to delete empty inventory items (that is, inventory with no files associations) during a project rescan or import: deleteEmptyInventory.

User

users/search

(GET method) Search for a specific user by ID or login ID.

Resolved Issues

The following issues are resolved in this release.

Resolved Issues

Issue

Description

SCA-2290

Refresh required to update filtered search results in Web UI.

SCA-2587
SCA-3296

Duplicate inventory for some CocoaPods and Bower projects.

SCA-7896

Remote File search shows wrong file count for empty result set.

SCA-11736

Eclipse plugin working only with Java projects.

SCA-16952

Search strings with underscores showing no results.

SCA-17523

Invalid search strings for projects still showing results.

SCA-17766

“Search By Keywords” string with underscores not working for custom components.

SCA-17809

LDAP not supported by the Code Insight Perforce connector.

SCA-17835

Incorrect automatic finding for “popper” component.

SCA-17958

Incorrect automatic finding for “Windows VCRedistributable” component.

SCA-17968

As-Found License Text field is not being populated in certain cases.

SCA-18064

Change Owner button not available for administrators.

SCA-18256 SCA-19395

Automatic inventory-approval policy not applied when unsaved inventory is published in Analysis Workbench.

SCA-18286
SCA-20007

Audit and Project reports failing due to “junk” characters in content.

SCA-18846

The “pygresql” component associate with the wrong license.

SCA-18879

Increase in memory usage and time when scanning large codebases if MySQL is configured as the Code Insight database.

SCA-19331

Inventory priority set to P3 for inventory created using Create Inventory REST API.

SCA-19361

Not possible to upload .gz archives.

SCA-20038

Logs not adequately identifying inventory being processed when a report generation fails.

SCA-20243

Scan failing during creation of CVE indexes.

SCA-20142

Electronic update failing at remapping stage.

SCA-21034
SCA-21053

Export of inventory-only project data failing when exportProjectData REST API is used.

Known Issues in this Release

The following are current known issues in FlexNet Code Insight. The issues are organized as follows:

Installation / Configuration
Scanning and Automated Discovery
Export / Import
Analysis Workbench
Inventory Management
Project Administration
Web UI
Email Notifications and Reports
REST APIs
Plugins
Archives

Installation / Configuration

SCA-15952: Installer unable to install embedded JRE on some Windows 10 instances

Running the installer on some (but not all) Windows 10 systems results in an “Installation: Successful null” message and does not completely populate the <INSTALL_ROOT>\jre directory.

Workaround: Should you encounter the above error, install the JRE manually. Download JRE 8u192 here. Configure the JAVA_HOME and JRE_HOME variables in catalina.* to point to the newly installed JRE.

SCA-1652 / SCA-5812: Deleted or disabled users are still visible in the Web UI

Users who are deleted from the LDAP server or disabled in LDAP still appear on the Users page in the Code Insight Web UI and in some picklists, such as for projects.

Workaround: None exists. However, deleted or disabled users are blocked from logging into the application and attempting to add one of these users will results in an error.

Scanning and Automated Discovery

SCA-17065: As-Found License text not migrated

As-Found License text detected during a project scan that was performed before a migration no longer displays for the project post-migration.

SCA-7820: Some NPM version patterns are not supported

When scanning an NPM project, certain versions might not be detected through automated analysis. The following are not supported: # URLs as dependencies: * version containing hyphen as 3.1.9-1 (for example, "crypto-js": "3.1.9-1") and versions of the format X.X.X (for example, "through": "X.X.X").

Workaround: None exists.

SCA-7759: Rescan does not process some Scan Profile changes

There are cases when a rescan does not reflect the current state of the codebase and project settings. For example, scanning with transitive dependencies on, followed by a rescan of top-level dependencies only, will not delete inventory generated for the transitive dependencies. Similarly, rescanning a project after changing the codebase files does not delete inventory generated by the original scan.

Workaround: Scan the materials in a new project or manually clean up the outdated inventory using bulk delete functionality in Analysis Workbench (multi-select the inventory and right-click to select delete).

SCA-3000: Scan agent plugins might generate inventory with no selected license

In this release, using the scan agent plugin, you might end up with inventory that has no license associated with it if the scan agent is not able to identify a specific license in the scanned files. In this case, the inventory item is created using Compliance Library data. You will see the inventory item with one or more possible licenses and potentially no selected license.

Workaround: Recall the inventory item to prevent it from showing up in the published inventory items list.

SCA-20008: Unable to use REST API to upload codebases to a remote Scan Server

When a Scan Server is installed on an instance separate from the one on which the Core Server is installed, users cannot use REST API to upload codebases to that Scan Server.

Workaround: If possible, use the FlexNet Code Insight Web UI to upload codebases to a remote Scan Server.

Export / Import

SCA-3123: Inventory Only import does not process custom vulnerabilities

Import does not process custom vulnerabilities and custom vulnerability mappings on import into a project of type “Inventory Only”.

Workaround: Run import into a project of type “Standard”.

SCA-3222: Import overrides inventory details

Importing the same inventory into a project that already contains inventory, can cause some details to be overwritten or blanked out. If duplicate inventory (by associated repository item ID) is encountered during the import process, inventory details are overwritten with data from the export data file.

Recommended: Perform an export of the project prior to importing into the project in case you need to return to the original project state.

Analysis Workbench

SCA-10414: Associated files not displayed when user adds more than 37K files to inventory

When more than 37K files are added to an inventory item, the associated files are not displayed on the Associated Files tab.

Workaround: Right-click the inventory item and select Show Inventory Files. The content on the File Search Results pane in Analysis Workbench is filtered to the associated files for the inventory item.

Inventory Management

SCA-11520: Policies not applied on rescan of a project

The triggering event for applying policy to project inventory is “Publish” (not scan). Policies are applied during the initial scan if the default setting Automatically publish system-created inventory items is enabled and not applied during a rescan because inventory is not re-published. This behavior is in place to avoid inadvertent overriding of inventory status due to a change in policy by another user.

Workaround: To apply policy, first recall all inventory and rescan with Automatically publish system-created inventory items enabled.

Project Administration

SCA-10791: Unable to delete large projects on SQL Server

Attempting to delete a large project (for example, a codebase containing 30K+ files) on a Code Insight instance using the SQL Server database can result in a SQL grammar exception. Smaller projects are not impacted.

Workaround: Delete the project directly from the database.

Web UI

SCA-3256: Cases of slow UI performance during scan on systems with hundreds of projects

On systems with more than 500 projects, users can experience a performance lag while a scan is running.

Workaround: Wait for the scan to complete prior to bringing up the Web UI.

SCA-20683: Project details not automatically updating after scan

Project details are not automatically updating after a scan in the Web UI.

Workaround: Refresh the screen.

Email Notifications and Reports

SCA-11263: Project Report hyperlink on tasks worksheet for inventory does not work

Clicking on an inventory link in the Project Report takes the user to the login page even if user is currently logged in. This is a bug in Excel.

Workaround: Log into the application. Go back to the Excel report output and click on the hyperlink again. This is an issue only for inactive sessions.

SCA-11193: Incorrect URL(s) in email notifications

In cases where Code Insight is running on a server that uses multiple IP addresses (for example, a server that has both a wired and wireless active network connection), the core server address cannot be accurately resolved. As a consequence, users can encounter an unexpected URL in the email notification received from Code Insight. This issue is most often seen if the Code Insight core server is configured as “localhost” instead of a full IP address.

Workaround: Ensure that only a single network interface controller is enabled on the core server running Code Insight. As an added measure, configure the core server using a numerical IP address instead of a “localhost”.

REST APIs

SCA-7950: Page and size parameters are not working with some REST APIs

Limiting the result set returned by some REST APIs is not currently supported. Using the page and size parameters with the Component Lookup and Get Project Inventory APIs (and possibly others) returns the full result set.

Workaround: None exists. However, the issue will be addressed in an upcoming release.

SCA-16508: Swagger page hangs when required API parameters are missing

Instead of producing an appropriate error message, a Swagger page can hang when you attempt to execute an API without providing required parameters.

Workaround: None exists.

Plugins

SCA-3378: Jenkins Scan Plugin – downgrade not supported

After a Jenkins plugin upgrade, a downgrade button option is available in the Web UI. Clicking on the option results in a 404 error.

Workaround: None exists.

Archives

SCA-20012: File filters in Chrome and Edge browsers not showing supported upload archive types correctly

When selecting a codebase archive to upload from File Upload dialog, the file filter on the browser you are using might list the supported archive types properly:

On the Chrome browser, the file filter list incorrectly shows “Custom Files” instead of “Supported Files” and does not allow you to filter on the individual supported archive types.
On the Edge browser, the file filter list shows unsupported archive types.

Workaround: None exists.

Legal Information

Copyright Notice

Copyright © 2019 Flexera

This publication contains proprietary and confidential information and creative works owned by Flexera and its licensors, if any. Any use, copying, publication, distribution, display, modification, or transmission of such publication in whole or in part in any form or by any means without the prior express written permission of Flexera is strictly prohibited. Except where expressly provided by Flexera in writing, possession of this publication shall not be construed to confer any license or rights under any Flexera intellectual property rights, whether by estoppel, implication, or otherwise.

All copies of the technology and related information, if allowed by Flexera, must display this notice of copyright and ownership in full.

Intellectual Property

For a list of trademarks and patents that are owned by Flexera, see https://www.flexera.com/producer/company/about/intellectual-property/. All other brand and product names mentioned in Flexera products, product documentation, and marketing materials are the trademarks and registered trademarks of their respective owners.

Restricted Rights Legend

The Software is commercial computer software. If the user or licensee of the Software is an agency, department, or other entity of the United States Government, the use, duplication, reproduction, release, modification, disclosure, or transfer of the Software, or any related documentation of any kind, including technical data and manuals, is restricted by a license agreement or by the terms of this Agreement in accordance with Federal Acquisition Regulation 12.212 for civilian purposes and Defense Federal Acquisition Regulation Supplement 227.7202 for military purposes. The Software was developed fully at private expense. All other use is prohibited.