Source Insight – version 4.0.0132
Source Insight
Version 4.0.0132 - October 17, 2023
New: There is a new Project > Recent Projects menu item so you can easily re-open a recently opened project. The Recent Projects menu item also appears in the right-click context menu if you click in the frame of the program.
New: The File > Recent Files list was increased from 20 to 30 files. You can also remove a file from the Recent Files list by holding down CTRL while selecting the file on the menu.
New: Zoom In (CTRL+SHIFT+>) and Zoom Out (CTRL+SHIFT+<) commands so you can increase or decrease the font size with a keystroke.
Fix: Token macros (preprocessor macros) were not expanded and applied when evaluating expressions in #if, #ifdef, #ifndef, or #elif preprocessor statements.
Fix: FTP panel was not listing files for some versions of the Microsoft IIS FTP server.
Fix: C++: The types implied by some smart ptr types were not being resolved correctly.
Change: Updated the code signing certificate.
Version 4.0.0131 Changes
New: Toggle Comment Lines command added (menu Edit > Special Edit > Toggle Comment Lines). The default keystroke is CTRL+7. This toggles the comment state of a selected block of lines. The block is considered commented if ALL lines in the block are already commented out.
Fix: Relation Window was always showing items for extern declarations of variables, even though the "External Variable" type was disabled in the Relation window symbol type setting.
Fix: C# ref struct was not parsed correctly.
Fix: Added support for old-style C function parameter declarations where function parameters are declared below the parameter list and before the opening curly brace. This is an option that is enabled by default. You can control it in Options > Preferences > Languages > Special.
Source Insight – version 4.0.0130
Source Insight
Version 4.0.0130 - August 21, 2023
Fix: C++ Scoped enums (enum class
and enum struct
) were not handled correctly by Lookup References and Jump To Definition.
Fix: C++ using enum
statements were not recognized.
Fix: C/C++: Some forms of declaring pointers to functions where not recognized.
Fix: C/C++: When there was an extern declaration of a function inside another function, using Jump To Definition of the declared function did not work.
Fix: Import External Symbols: Importing from the INCLUDE path was truncating the path.
Fix: Using custom RegEx parsing with multiple patterns could record incorrect line positions of functions and symbols. This could cause the symbol pane on the left to show the wrong current function.
Fix: Context Window: Selecting an identifier and choosing Show in Relation Window was deactivating the Context window.
Fix: Crash could happen if re-indexing the symbol database and user cancels the re-index operation.
Fix: In some cases after re-parsing a project, the symbol database was not getting updated.
Fix: XML parser was not handling comments with embedded quotes correctly.
Fix: Popup toolbar now uses the same background color as the main toolbar.
Fix: Buffer overrun bugs fixed when typing in some panels to filter the list of symbols or files.
New: You can lock the main toolbar by selecting View > Toolbars > Lock Toolbar
Files are Read-Only
Symptom: Files you open in Source files are read-only.
In Source Insight, a file is read-only in the following cases:
- The file is part of a read-only project.
- The file is stored in a Backup folder.
- Windows reports that the file has the read-only attribute.
- The file is part of an "import" project created by selecting Project > Import External Symbols (for example, C/C++ standard header files).
- The file is part of a project that is also open in another running Source Insight instance.
Try this: select Project > Close Project. Then open the file and see if it is read-only. Note the file name is displayed with a !
mark if the file is read-only. If the file becomes read/write, then the project must be read-only.
In Source Insight, any file that is part of a read-only project is shown as read-only. A project is read-only if the project data file that ends in the .siproj
extension is read-only. For example, if your project is named ABC, then locate the file "Documents\Source Insight 4.0\Projects\ABC\ABC.siproj"
and check if it is marked read-only in Windows Explorer.
A project is also read-only if it is open in another running instance of Source Insight. Run Windows Task Manager and make sure there isn't another instance of Source Insight running.
Also, files that are stored in a Source Insight Backup folder are read-only. For example: if your project is called ABC, then the backup folder is "Documents\Source Insight 4.0\Projects\ABC\Backup"
. Source Insight treats those files as read-only.
Otherwise, if the file is read-only in Source Insight, then Windows must be reporting to Source Insight that the file has the read-only attribute for some reason. Please check if there is a problem with drive mounting, or the user access in Windows.
Source Insight – version 4.0.0128
Source Insight
Version 4.0.0128 - April 28, 2023
Fix: The Lookup References window would not appear if the input cursor was on an blank line.
Fix: Special Edit > Upper/Lower/Toggle Case could occasionally crash.
Fix: When showing visible end-of-line marks, and using the Highlight-References feature, some end-of-line marks would rarely appear incorrectly with the "highlight reference" style formatting.
Fix: C++: Was not detecting function trailing return types.
Fix: Parse cache files were being bypassed in some situations during project-opening, resulting in slower performance.
Fix: The Ditto clipboard app was not working with Source Insight.
Fix: Misc. fixes to how some panels open and close when you activate them with a keyboard command.
Change: Toolbar buttons now activate various panels and move the input focus to the panel instead of just toggling them on and off.
Change: When a file is loaded with mixed end-of-line characters, you are prompted to fix it. Now there is a check box in the prompt to enable this automatic prompt or not. You can also set this prompt option in Options > Preferences > Files : Ask to fix inconsistent line endings.
Change: The bottom status bar now shows the current file's end-of-line character format in the lower right. You can double click or right-click on it to open the Normalize End Of Line command.
New: Reset Toolbar Layout (on View > Toolbars menu) resets the main toolbar layout to the default layout.
New: File Compare window: You can right-click on the left or right file and select Copy All Differences to Left or Copy All Differences to Right to copy all text differences to either left or right, making both files the same. This leaves change marks by each change in the main file window. This is undo-able.
Source Insight – version 4.0.0126
Source Insight
Version 4.0.0126 - November 28, 2022
Fix: Crash: Regression bug introduced in 4.0.0125 could cause a crash when using the Jump To Definition or Jump To Prototype commands when only white space or a whole line was selected.
Source Insight – version 4.0.0125
Source Insight
Version 4.0.0125 - November 22, 2022
Fix: C# expression-bodied member functions were not recognized.
Fix: C/C++ Preprocessor conditional values using hex numbers were not working: eg: #if ABC < 0x100
Fix: C++ and C#: various parser fixes.
Fix: Some symbol lookups were not working.
Fix: Limit recursive symbol lookups for symbols that have direct or indirect recursive definitions.
Fix: Crash when adding a large number of Edit Condition symbols to a project.
Fix: Performance improvement when a project contains a large number of conditional values set by Edit Condition.
Fix: Better error handling for exceeding limits with large projects.
Fix: In the Context window and the File Compare window, the overview would not close if you right-click on it and select 'Hide'.
Fix: Pasting text now ensures the resulting new lines are scrolled into view.
Change: The Context window now shows the definitions of symbols selected in the File Compare window.
Change: The Relation window now shows results of symbols selected in the File Compare window.
Change: Performance improvement synchronizing projects by avoiding unnecessary project data writes.
Changes Minor changes to some toolbar buttons to work better on dark backgrounds.
Change: Source Insight Macro Language: The == and != operators now compare numbers differently. If both operands are numeric decimal or hex, then they are compared as numbers instead of as strings. The relational operators, such as <, <=, >, and >= already do this.
Deactivating the License
When you deactivate the license, it means that Source Insight can no longer be used on the computer. You are free to activate it again on the same computer, or a different computer.
Make sure you save the license serial number if you want to activate it again. Once you deactivate it, the license information is deleted from the computer.
To deactivate the currently installed license:
Run Source Insight. If it is already running, select Help > Manage License
In the License Management window, select the option to deactivate the license on this machine: Click Next and click Yes to confirm you want to deactivate it:
The following message will appear to tell you the license has been deactivated:
After you click OK, the License Manage window appears as though you have no license active, and you can either enter the license serial number again, or import a license file, or simply exit the program. The option to start a 30-day trial now will not work if you already used a trial license before.
Deactivating the License from the Command Line
You can also use the following command line to deactivate the current license instead of using the dialog boxes.
sourceinsight4.exe -reset-license
This will deactivate and delete the license on the computer. The next time Source Insight runs, it will prompt to activate the license. This option is effectively the same as selecting Help > Manage License and selecting "Deactivate license". If a network connection exists, it will inform the license server that the license has been deactivated.
Importing a License File
If you received an offline license file from us, use these instructions to import that license file into Source Insight. The offline license file lets you activate the license without a network connection.
We email the license file to you as an email attachment. Save the attached license file to your local drive or somewhere on your internal network that your computer can access.
Importing the License File
Run Source Insight. If it is already running, select Help > Manage License
In the License Management window, select the option to import a license file: Click Next and navigate to the license file you just saved, and open it.
If the license file is valid, it will be imported and your copy of Source Insight will now be activated. You should see this message:
Source Insight – version 4.0.0124
Source Insight
Version 4.0.0124 - February 21, 2022
Fix: Improved auto-completion when typing the name of a local variable or function parameter. Parameters and local variables appear first in the list.
Fix: Relation Window could cause the program to pause for several seconds if it was processing an identifer that had 1000s of matches.
Fix: Import External Symbols - Import from INCLUDE path did not support Unicode paths, and could crash if the INCLUDE environment variable was undefined.
Fix: Python: Function return annotations using the -> syntax was not parsed correctly.
Fix: Python: Relative imports were not recognized correctly.
Fix: Python: Renaming a python file now causes a re-parse of the file.
Fix: C++: was not able to jump from a member function declaration inside a class to the member function definition outside of the class if the definition was in the same file as the class declaration.
Fix: C++: was not recognizing variable declared in an 'if' statement.
Fix: C++: range-based 'for' statements: the iterator variable's auto type is now recognized.
Fix: C++: was not recognizing some declarations that used attributes such as [[deprecated]] and others.
Fix: C++: improved resolution of types when smart pointer template classes are used, such as unique_ptr<>.
Fix: C#: the 'ref' and 'readonly' keywords are now parsed correctly.
Fix: C#: foreach statements: the iterator variable's type is now recognized.
Fix: Sometimes using Jump To Definition would jump, then jump back to the original location.
Fix: Project Report could crash.
Fix: Add and Remove Project Files: You can type in a wildcard filter, such as *.h and press Enter to filter the files that are to be added. This was only working in the project's root directory. It did not respect the filter if you added a whole tree including subdirectories.
Fix: Makefile parsing: now recognizes 'export' keyword on definitions.
Fix: Style Properties: The Expanded character spacing format is not supported if you are using a monospaced font with ligature combinations. A spacing bug was fixed if you combined these options.
Change: Project Report has a new Info... button which invokes the new Project Info command. It displays statistics about the current project, including any errors that were logged.
Change: You can choose the color of visible tabs and spaces by editing the "Visible tabs and spaces" style in Options > Style Properties. You must enable that mode with View > Visible Tabs and Spaces to see them.
Change: New option in Tools > Reformat Source Code: In the Layout and Flow tab: "Keep '} else' on same line". This keeps the 'else' keyword on the same line as the preceding closing } brace. This allows formats like this:
if (c) {
....
} else {
....
}
Change: better detection of too many symbols or index entries in a project.
Change: revised some of the default visual theme colors.
Change: updated the code signing certificate on the sourceinsight4.exe file and the installer file.
Change: A new Advanced Option was added to disable the use of memory-mapped files for text files and some data files. This may be helpful for some users that run with file system extensions or encryption which is not stable with memory mapped files. To disable memory mapped files, hold down CTRL while selecting Options > Preferences. The Advanced Options will appear. Tick the options "Disable memory mapped files" and "Disable memory mapped database files". Performance is reduced a little. Background: Some users have reported an issue where Source Insight freezes and cannot be closed even with Task Manager. Using dump files kindly provided by some users, we have traced this to the system freezing inside the WinAPI CreateFileMapping. The exact reason is unknown, but the effected users were using a file system encryption product. If anyone has more information or thoughts on this subject, please contact us.
Changing the Source Insight Data Folder Location
Source Insight stores its project and configuration data files by default in the "Documents\Source Insight 4.0" folder, where "Documents" is the Windows user Documents folder. Each Windows user account has its own Documents folder.
If your Windows user Documents folder has been relocated to a remote drive, for example on OneDrive, we recommend that you move the Source Insight data folder to somewhere on your local drive.
The Source Insight project data files should be on a local drive for best performance and reliability.
To place Source Insight files in a different location, select Options > Preferences > Folders and change the Main User Data Folder to a new location that is in a local, non-network folder. When you edit the main folder item, the other folders items change automatically to be sub-folders of the main folder. In this example, we created a folder "C:\Source Insight 4 Data" and set the main folder there.
Note: If there are multiple users on the PC, you will need to specify a different folder for each user. The folder options in Source Insight are stored separately for each user.
When you use the Folder Options dialog, Source Insight will ask you if you want to move the contents of the folders too.
If You Cannot Run Source Insight
If you are having problems and cannot run Source Insight to get to the Folder options dialog, you will have to edit the Windows Registry. Run regedit.exe and navigate to HKEY_CURRENT_USER\Software\Source Dynamics\Source Insight\4.0\Paths
. You will see entries there for each folder option.
Edit each path string to point to an existing location that is in a local folder. If you edit the registry directly, the folder contents won't be moved. You will have to copy the contents manually.
If Source Insight aborted during startup due to file or directory permission issues, the registry entries listed above might not be set. You can create the registry string values manually using regedit.exe and then start Source Insight. It will use the path settings from the registry when it starts.