Options

SmartAssembly 7.0 has been released

Russell DRussell D Posts: 1,324 Diamond 5
edited October 17, 2019 1:16PM in SmartAssembly

This is a major version of SmartAssembly.

Make sure to read Upgrading from SmartAssembly 6 to SmartAssembly 7 to learn about some of the changes that might affect your configuration.

Please ensure you have a valid support and upgrades contract before applying this update.

Major features

  • .NET Core and .NET Standard support.
  • You can now use either SQLite or SQL Server database for feature and error reporting.

Features

  • 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.dll was 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.

Fixes

  • SA-2119, SA-2112, SA-2115: Assemblies referencing mscorlib 2.0.3600.0 and mscorlib 2.0.5.0 can now be processed with SA.
  • 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-1184: Fixed an error caused by merging .NET 4.5 Portable Class Libraries.
  • 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.

Improvements

  • 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.
  • 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).

Known issues

  • 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.

Have you visited our Help Centre?
Tagged:
Sign In or Register to comment.