Support Go Slices The New Flow now keeps track of the index when scanning Go language projects, even when the flow is through Go slices.
Support for Swift Dictionaries Now many of the Swift dictionary methods are supported. For instance, if the flow enters by key ‘a', it will not exit through key ‘b'. Similarly, if the flow enters by key ‘a’ and then key ‘a’ is removed, the flow will be discontinued.
Incremental Scan Improvements
Improvements to the closure files To save scan time, the incremental scan only scans the changed files of the project and the files that are close to the changed files. The files close to the changed files are called the closure files. The following changes to the closure files have significantly improved the quality of the incremental scans:
The base classes of the closure files are added to the list of classes.
For languages that use source and header files, such as C, C++, and ObjC, closure files are expanded to include both file types.
Orphan method invocation is supported for the closure files.
Class declaration and constructor calls are supported for the closure files.
Incremental Scans Resolving Stage improvements An issue in the resolving stage of the incremental scan process reduced the accuracy of the scan results. The issue was fixed, dramatically improving the accuracy of the incremental scan results.
Similarity ID – New Option for Space Sensitivity
The Similarity ID, which is used in processing the scan results, is sensitive to differences in white space. This includes any differences in spaces or tabs in the lines of code of the first and last nodes of the results, or in their encapsulation method signature. Between the scans of the same project, any change in the indentation or the addition of spaces causes the Similarity ID to change.
To make the scan results insensitive to changes in spaces and tabs, a new value was introduced to the existing Similarity ID related configuration key.
The following options are available, depending on how the SIMILARITY_ID_VERSION (Integer) key is set:
Original Similarity ID behavior. (Integer = 0)
Similarity ID behavior ignores the leading spaces. (Integer = 1)
Similarity ID behavior ignores all white space. (Integer = 2)
The new Similarity ID behavior can be turned on in the following ways: