SmartAssembly 7.0 release notes
Published 14 March 2019
7.0.9 - September 23rd, 2019
SA-2145:Log files created by SmartAssembly no longer overwrite information stored in the previous sessions.
SA-2197:Error message shown during a failed import of an error report was improved.
SA-2210:Strings encoding should now be more difficult to deobfuscate.
SA-2077:Nullable serializable types are no longer obfuscated by SmartAssembly.
SA-2149, SA-2211:Issue with the "SVersion probably not initialized" exception is fixed.
SA-2170:Self-diagnostic mode for the .NET Framework applications is now working correctly.
SA-2193, SA-2200:Issues with embedding non-primary references for .NET Core applications are fixed.
SA-2195:Database SDK project no longer shows an error about missing references.
SA-2207:Assemblies created from command line with an
inputparameter no longer sent email notification with a default content. The application name provided during configuration is now included correctly.
7.0.8 - August 7th, 2019
SA-2199:Product activation during a manual installation is now working correctly.
7.0.7 - July 29th, 2019
SA-2154, SA-2171:Reference to .NET Framework's 4.0 mscorlib is no longer added when building .NET Framework 2.0 applications with Personal edition of SmartAssembly.
SA-2157, SA-2172, SA-2175:Under certain conditions, SmartAssembly no longer adds a reference to mscorlib when building .NET Core or .NET Standard assemblies.
SA-2179, SA-2188:Enabling Categorize reports option on View Error Reports screen no longer shows an error when connected to SQLite database.
7.0.6 - June 28th, 2019
SA-2144:Issue with activating SmartAssembly for non-admin user is fixed.
7.0.5 - June 3rd, 2019
SA-2146:Building .NET Standard assemblies now works correctly on machines without .NET Framework 4.7.1 or newer installed.
SA-2163:Building no longer fails for assemblies with both XAML and BAML files (with the same name) embedded in resources.
7.0.4 - May 21st, 2019
SA-2158:PFX key password can now be provided using command line. See Using the command line mode for details.
SA-2160:“Improve performance” option for error reporting can now be set using command line. See Using the command line mode for details.
SA-2169:.NET Framework 2.0 is no longer required to use SmartAssembly MSBuild Tasks.
- It’s now possible to merge and embed Microsoft assemblies from
SA-2161:Dependencies are now correctly searched in
<SearchPath>directories set in the global SmartAsssembly.settings file.
- Error no longer appears when the main assembly file doesn’t exist — instead, SmartAssembly will ask for the new location.
- Other minor fixes were made to the dependency resolution process.
- .NET Framework 4.6.1 or later is now required to run SmartAssembly. This doesn’t change the requirements for running the software modified by SmartAssembly. See Requirements for details.
7.0.3 - April 16th, 2019
SA-2141:Feature usage and error reporting is now supported on Unix systems.
SA-2140:Check for updates notification bar was added.
SA-1910:Windows 10 is now correctly detected by feature usage and error reporting.
SA-2136:Unnecessary dependencies are no longer added when building .NET Standard libraries.
SA-2138:Using "References Dynamic Proxy" no longer causes rare build errors.
SA-2139:Creating new projects with command-line now works correctly.
7.0.2 - April 3rd, 2019
SA-2137:Portable PDB can be generated for processed assemblies.
SA-2135:SmartAssembly works properly with MSBuild again.
- Information about expired SmartAssembly is now properly shown for user's applications.
7.0.1 - March 28th, 2019
SA-2124:For assemblies excluded from Dependency Merging/Embedding a tooltip with an exclusion reason is shown.
- SmartAssembly now properly searches for dependencies of .NET Core applications on 64-bit systems with only 32-bit .NET Core SDK installed.
7.0.0 - March 14th, 2019
Make sure to read Upgrading from SmartAssembly 6 to SmartAssembly 7 to learn about some of the changes that might affect your configuration.
- .NET Core and .NET Standard support.
- You can now use either SQLite or SQL Server database for feature usage and error reporting.
- To learn how to migrate, see Migrating between SQLite and SQL Server (SA-2113, SA-2091).
SA-889:It's now possible to set additional dependency search paths per project. Learn more at How SmartAssembly searches for dependencies.
- If the map file was unavailable at the time of downloading an error report, the report can be reloaded manually with a new “Reload” button in the report dialog.
- MSIL Disassembler Protection can now be used for .NET Core and .NET Standard assemblies.
- Tamper Protection can now be used for .NET Core and .NET Standard 2.0+ assemblies.
- New command-line argument /additionalProbingPath was added, making it possible to pass additional directories where SmartAssembly should look for dependencies.
SmartAssembly.Attributes_NetStandard.dllwas added, making it possible to easily use SmartAssembly attributes in .NET Core and .NET Standard assemblies.
- SmartAssembly MSBuild tasks were updated, making it possible to use SmartAssembly processing for .NET Core and .NET Standard projects.
- In sections “Dependencies Merging” and “Dependencies Embedding” SmartAssembly now shows collapsible list of dependencies that cannot be merged and embedded, as well as separate collapsible list of additional assemblies (such as NuGet packages) that can be merged.
SA-1184:Fixed an error caused by merging .NET 4.5 Portable Class Libraries.
SA-1323:Fixed the build error when the assembly contained calls to base type methods defined in another assemblies.
SA-2118:Fixed an error related to assemblyBytes being null during assembly analysis.
SA-2119, SA-2112, SA-2115: Assemblies referencing mscorlib 2.0.3600.0 and mscorlib 188.8.131.52 can now be processed with SA.
- Warnings about missing framework were improved and no longer prevent from building.
- It’s now possible to process assemblies using C# 7’s “ref return” feature.
- It’s now possible to download Error Reports when using SmartAssembly Personal.
- Outdated documentation links were updated in the UI.
SA-1989:Assembly recognition was improved, which allows NuGet packages with Microsoft’s Public Key to be merged or embedded (such as System.Collections.Immutable).
- The way SmartAssembly searches for dependencies was improved.
- SmartAssembly attributes (available as
SmartAssembly.Attributes.dll) now have summaries, describing what each attribute can be used for.
- Clicking “Open Assembly Folder” after building will now highlight the resulting assembly in the explorer window.
- Selecting dependencies on “Dependencies Merging” and “Dependencies Embedding” is now significantly faster.
- Building .NET Core apps may not be possible on 64-bit systems with only 32-bit .NET Core SDK installed, or no SDK installed at all.
- .NET Core 1.0 and .NET Core 1.1 is not fully supported.
- F# applications are not fully supported.
- Generating Portable PDB is not possible.
- It’s not possible to merge assemblies netstandard depends on.