SnapDevelop Release Bulletin
Last Updated: January 2024
This document provides important information about SnapDevelop releases.
Version 2022 R3 Build 3289
System Requirements
Please view here.
Known Issues
You may encounter the following known issues in this release.
Database connections
- When connecting to MySQL, the VerifyCA and VerifyFull SSL modes are unsupported yet.
- With SQL Server connection, it is unsupported to query these data types: geography, geometry, and hierarchyid.
Debugging
The Watch window does not support the calculation of expressions and functions.
During the debugging process, if you hover over a field of an object, you will not see any values.
During the debugging process, if you hover over a field of a basic data type (for example, string) to view its value, the popup also lists the private fields of the basic data type, but the values of the private fields are all shown as “
”. The right-mouse menu in the Autos window fails to work.
Workaround: Perform the operations in the Locals window.
If the debugger is writing output to the console window while the console window is in the selected status, the debugging process will be hung.
Workaround: Click Enter in the console window to dismiss the selected status of the window.
It is unsupported to debug a project deployed in a Windows Docker container.
Find and Replace
When performing Find and Replace in the whole solution, clicking Find Next only goes to the matching items in the current document.
At the end of a Replace All operation, you may be prompted with this dialog "The file has unsaved changes inside this editor and has been changed externally".
Workaround: Directly click the Yes or No button in the dialog. There is no difference in the result.
When you perform Find in Files and Replace in Files, the Replace will replace the text in non-text files (for example, in an image), thus causing file corruption of the files after the operation.
Scaffolding
Scaffolding services and controllers from more than 1000 models may fail with an unexpected error "The operation is not valid for the state of the transaction".
Workaround: Try to scaffold services and controllers from <1000 models each time.
Source Control
Performing the Revert operation in the SVN source control may cause duplicate items in Dependencies, and the duplicate items will disappear after you load the solution.
The Drop button in the Git source control > Stash Details window panel does not work.
Workaround: Use the Drop function in the right-mouse menu of Git Changes > Stash.
Solution management
After adding files or folder(s) in a solution, the items in the solution may not be ordered properly.
Workaround: Reload the solution, and the items will be ordered well again.
Web API Tester
The Web API Tester may fail to respond if the size of response data exceeds 3MB. The larger the response, the greater the failure probability.
The Web API Tester may fail to start the project when it is run for the first time in a new environment.
Workaround: Manually run the project before running the Web API Tester.
It is unsupported to mock a datetime parameter, otherwise the parameters in the request will fail to be parsed.
Workaround: Manually enter a value (in ISO 8601 format) for the datetime parameter.
If no value is specified for the optional parameter in the API being tested, the parameter name will be added as the parameter value in the URL, and then the URL will fail to work.
Workaround: Manually modify the parameter value in the URL.
Kubernetes deployment
The windows in the Kubernetes Explorer are not adaptive, so the content may not display well on small screens.
The port specified for the deployment cannot be saved successfully.
Workaround: Manually edit the port in the Kubernetes Explorer after the deployment.
Third-Party Components and Deployment
SnapDevelop applications have some dependencies on third-party components that are installed with SnapDevelop. For the complete list of the free download components (including open-source components), view the 2022 R3 version of Free Download Terms document on the Appeon website.
Version 2022 Build 1878
System Requirements
Please view here.
Known Issues
You may encounter the following known issues in this release.
Database connections
- When connecting to MySQL, the VerifyCA and VerifyFull SSL modes are unsupported yet.
- With SQL Server connection, it is unsupported to query these data types: geography, geometry, and hierarchyid.
Debugging
During the debugging process, if you hover over a field of a basic data type (for example, string) to view its value, the popup also lists the private fields of the basic data type, but the values of the private fields are all shown as “
”. The right-mouse menu in the Autos window fails to work.
Workaround: Perform the operations in the Locals window.
If the debugger is writing output to the console window while the console window is in the selected status, the debugging process will be hung.
Workaround: Click Enter in the console window to dismiss the selected status of the window.
It is unsupported to debug a project deployed in a Windows Docker container.
Find and Replace
When performing Find and Replace in the whole solution, clicking Find Next only goes to the matching items in the current document.
At the end of a Replace All operation, you may be prompted with this dialog "The file has unsaved changes inside this editor and has been changed externally".
Workaround: Directly click the Yes or No button in the dialog. There is no difference in the result.
When you perform Find in Files and Replace in Files, the Replace will replace the text in non-text files (for example, in an image), thus causing file corruption of the files after the operation.
Scaffolding
Scaffolding services and controllers from more than 1000 models may fail with an unexpected error "The operation is not valid for the state of the transaction".
Workaround: Try to scaffold services and controllers from <1000 models each time.
Source Control
Performing the Revert operation in the SVN source control may cause duplicate items in Dependencies, and the duplicate items will disappear after you load the solution.
The Drop button in the Git source control > Stash Details window panel does not work.
Workaround: Use the Drop function in the right-mouse menu of Git Changes > Stash.
Solution management
Sometimes a debug.log file is added into the solution folder. If it happens, the solution will fail to build.
Workaround: Close the solution, delete the debug.log file, and try again.
After adding files or folder(s) in a solution, the items in the solution may not be ordered properly.
Workaround: Reload the solution, and the items will be ordered well again.
Web API Tester
The Web API Tester may fail to respond if the size of response data exceeds 3MB. The larger the response, the greater the failure probability.
The Web API Tester may fail to start the project when it is run for the first time in a new environment.
Workaround: Manually run the project before running the Web API Tester.
It is unsupported to mock a datetime parameter, otherwise the parameters in the request will fail to be parsed.
Workaround: Manually enter a value (in ISO 8601 format) for the datetime parameter.
If no value is specified for the optional parameter in the API being tested, the parameter name will be added as the parameter value in the URL, and then the URL will fail to work.
Workaround: Manually modify the parameter value in the URL.
Kubernetes deployment
The windows in the Kubernetes Explorer are not adaptive, so the content may not display well on small screens.
The port specified for the deployment cannot be saved successfully.
Workaround: Manually edit the port in the Kubernetes Explorer after the deployment.
Third-Party Components and Deployment
SnapDevelop applications have some dependencies on third-party components that are installed with SnapDevelop. For the complete list of the free download components (including open-source components), view the 2022 version of Free Download Terms document on the Appeon website.
Version 2021 Build 1288 (GA)
System Requirements
Please view here.
Known Issues
SnapDevelop IDE 2021 has the following known issues.
Debugging
- Data type conversion errors might occur if you dynamically modify decimal data in debug.
- Data cannot be calculated when viewing data of complex data structure.
- Debugger will throw an “Expression not supported" error if you attempt to expand a list while viewing the popup details of a variable/object.
- If you add an array item to watch but the specified index is out of range, the debugger watch pane will return an incorrect value.
- It is unsupported to use C#8.0 array-slicing syntax in a watch expression.
- Viewing IEnumerator and complex expressions is not supported yet.
- When viewing data at the data prompt or Quick Watch, data display might be incomplete due to performance issues.
- Operations related to static field calculations are not supported. For example, displaying value for a static variable or method.
- If you click the Step Into button across projects or files, the Step Into and Continue buttons might turn gray, and you have to click the edit interface to restore them.
- During the debug process, the console window might not pop up automatically.
- When debugging a Web API project, the program might stop at a line without breakpoint when resending the request.
- The program might not stop at a breakpoint due to the PDB file error.
- When the current source code path is different from the path of the source code that generated the exe file in the previous build, the program might not stop at a breakpoint during Attach to Process.
- The breakpoint line might not be colored correctly when you insert or delete code above or under the breakpoint line.
- When the worker thread enters the waiting state (suspended by calling await method), the current execution flow returns to the calling thread; when the worker thread resumes its running state (await completes), the current execution flow returns to the worker thread, but the execution flow of the main thread will be lost, and it will run directly until the next breakpoint is triggered.
Docker Support
- Windows Container is not fully supported.
- The Code Auto Completion feature needs to be improved so that it will not add the parameter after commands when typing in the Dockerfile.
- Build Image will fail if the solution contains a file over 2 GB.
- Errors will occur when adding a Dockerfile, if the user name contains special characters (such as the Spanish character ì).
- When adding reference to the project in the other solution, exceptions will occur when adding a Dockerfile to the project.
Editor
- Outlining keyboard shortcuts do not work when migrating PowerScript to C#.
- Keyboard shortcuts do not work in a floating .cs file.
- Breakpoints or the highlight color for the breakpoint point lines might disappear while you are typing in the editor.
- Cannot drag and drop a file from outside of the IDE to the editor.
Solution
- Running a project from the SnapDevelop IDE may fail, if the environment variable ASPNETCORE_ENVIRONMENT is set to Production.
- Running a project from the SnapDevelop IDE may fail, if the project startup variable has the same name as the system environment variable.
- If you select multiple items by Shift-Click first, and then scroll up and down in the Solution Explorer, some of the items might get deselected.
- Full text search is not supported in the Solution Explorer.
- A solution with an inaccessible NuGet package source keeps restoring after being opened.
- The Build checkbox in Configuration Properties is temporarily disabled as it has no effect at this moment.
- During the loading process of a solution, the Dependencies node under the project cannot be expanded.
- Regardless of whether the "Reload modified files unless there are unsaved changes" option is checked or not, after modifying the content of a file in the Editor from the outside, the IDE automatically closes the tab and does not prompt to reload.
- Only two layers of a NuGet package can be expanded.
Unit Testing
- The Test Explorer cannot show the last test result if you close the solution and open it again.
- Syntax errors might be ignored for some unit test attributes.
- The test cannot be run when a Type parameter is passed in.
- In the XUnit project, if you modify the parameter of the InlineData attribute and then run the test case (by selecting Run Selected Tests) in Test Explorer, the execution result does not refresh on the UI.
SQL Query
- Cannot generate SQL statements with New Query when the network connection is lost.
- Binary data such as image and timestamp cannot be displayed properly.
- Cannot display null in the query result.
Source Control
- No instructions are provided in the case of file conflicts.
- The status bar in the lower-right corner cannot show the SVN path of the current branch.
- The Solution Explorer shows temporary files in the case of file conflicts on update.
- If you switch to a different SVN branch, SnapDevelop still displays the old branch name.
- Project folder cannot get lock.
- It is unsupported to prompt or resolve conflicts when there are conflicts under Git source control.
Others
- Color rendering errors might occur in the password textbox when creating a new DB connection in a Windows 7 x64 environment.
- Find All does not search JSON files.
- File is still occupied after the debug is complete during the joint debugging with PowerBuilder.
- Project build order does not work yet. SnapDevelop always concurrently compiles files from the same project.
- The Find All References command will incorrectly find references in the projects that are not loaded in the current solution.
- Right clicking the SnapDevelop icon in the task bar, the list of recent projects won't refresh if the list already contains 10 projects.
- If there are data types in the data table that are not supported by runtime, you can still Convert to C# Model to export models, but runtime will run into errors, and the error message is not clear.
- When you select multiple projects in a solution to remove their NuGet packages, it removes the NuGet packages only from the first project you selected.
- In DB Server Explorer, ASE/HANA failed to get the correct key, therefore the key icon cannot display.
Bug Fixes
SnapDevelop IDE 2021 has the following bug fixes:
- (Bug ID: 6603) Failed to update DataWindow/DataStore with a large number of data set, because the .NET Core SDK version installed with in the SnapDevelop installer has a bug. Using a newer version of .NET Core SDK will resolve the issue.
- (Bug ID: 6671) When converting a database to C# models in DB Server Explorer, the StringLength(2)] attribute is not generated in C# properties.
- (From Community) When setting up a database connection to the local instance of SQL Server, the following error occurs: "A network-related or instance-specific error occurred while establishing a connection to SQL server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: TCP Provider, error: 0 - The wait operation timed out.)"
- (Bug ID: 6512) When model starts with letter "i", the scaffolded controller drops the leading i.
- (Bug ID: 6304) When a DataWindow based on stored procedure is converted to the C# model, the output type parameter of the procedure in the package is not obtained and the data retrieval failed.
- (Bug ID: 6306) When converting a database to C# models in DB Server Explorer, the fields using user defined type ("domain") , will be missing.
- (Bug ID: 6307) When converting a database to C# models in DB Server Explorer, the nullable fields are exported to non-nullable C# properties.
- (From Community) The wrong database connection string is saved to the profile when publishing the Web API using the Web Deploy method.
Upgrade Notes for Version 2019 R3 Users
DataWindow Converter has been improved so that models can be converted with accurate column data types, therefore all models must be converted again using DataWindow Converter after the DWNet packages are upgraded from 3.0 to 3.1.
DwMetaExtensions.GetSqlBuilder(this IDwMeta dwMeta)
is obsolete. Use DwMetaExtensions.GetSqlBuilder(this IDwMeta dwMeta, DataContext context)
to replace it.
IQueryWhereBuilder<TModel> RemoveWhere()
is obsolete. Use ISqlModelMapper GetQueryBuilder<TModel>(true)
to replace it.
Third-Party Components and Deployment
SnapDevelop applications have some dependencies on third-party components that are installed with SnapDevelop.
List of Free Download Components (Including Open Source Components)
For the complete list of the free download components (including open-source components), view the Free Download Terms document on the Appeon website.