JetBrains.Refasmer.CliTool 1.0.33

The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org. Prefix Reserved
dotnet tool install --global JetBrains.Refasmer.CliTool --version 1.0.33
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest # if you are setting up this repo
dotnet tool install --local JetBrains.Refasmer.CliTool --version 1.0.33
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=JetBrains.Refasmer.CliTool&version=1.0.33
nuke :add-package JetBrains.Refasmer.CliTool --version 1.0.33

Refasmer

Simple tool to make reference assembly. Strips method bodies, private class fields etc. Also can generate xml files like FrameworkList.xml. Can be used as library (Refasmer.dll).

Installation

You could download refasmer from GitHub: https://github.com/JetBrains/Refasmer/releases or install as .NET Tool: dotnet tool install -g JetBrains.Refasmer.CliTool

NuGet packages

Package Version
JetBrains.Refasmer Nuget
JetBrains.Refasmer.CliTool Nuget

Usage:

refasmer [options] <dll> [<dll> ...]
Options:
  -v                         increase verbosity
  -q, --quiet                be quiet
  -h, -?, --help             show help
  -c, --continue             continue on errors
  -O, --outputdir=VALUE      set output directory
  -o, --output=VALUE         set output file, for single file only
  -r, --refasm               make reference assembly, default action
  -w, --overwrite            overwrite source files
  -p, --public               drop non-public types even with InternalsVisibleTo
  -i, --internals            import public and internal types
      --all                  ignore visibility and import all
  -m, --mock                 make mock assembly instead of reference assembly
  -n, --noattr               omit reference assembly attribute
  -l, --list                 make file list xml
  -a, --attr=VALUE           add FileList tag attribute

(note the executable is called RefasmerExe.exe if built locally; refasmer is a name of an executable installed by dotnet tool install)

Mock assembly throws System.NotImplementedException in each imported method. Reference assembly contains only type definition and method signatures with no method bodies.

Examples:

refasmer -v -O ref -c a.dll b.dll c.dll

will handle all passed DLL files continuing on errors. Output dlls will be placed to ./ref directory

refasmer -l -a Redist="Microsoft-Windows-CLRCoreComp.3.5" -a Name=".NET Framework 3.5" -a RuntimeVersion="3.5" -a ShortName="Full" a.dll b.dll c.dll > FrameworkList.xml

will generate FrameworkList for all passed DLL files with root tag

<FileList Redist="Microsoft-Windows-CLRCoreComp.3.5" Name=".NET Framework 3.5" RuntimeVersion="3.5" ShortName="Full">
Product Compatible and additional computed target framework versions.
.NET net5.0 is compatible.  net5.0-windows was computed.  net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp3.1 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last updated
1.0.33 3,536 5/15/2023
1.0.32 1,265 2/2/2023
1.0.31 314 1/30/2023
1.0.30 3,020 5/26/2022
1.0.27 1,170 1/19/2022
1.0.26 392 1/19/2022
1.0.25 406 1/19/2022
1.0.24 672 12/9/2021
1.0.18 842 8/13/2021
1.0.12 1,108 9/24/2020