diff --git a/ChangeLog.md b/ChangeLog.md
index ae65978712..e3658e15cd 100644
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -14,6 +14,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Changed
- Format changelog according to 'Keep a Changelog' ([#915](https://github.com/josefpihrt/roslynator/pull/915)).
+- [CLI] Improve release build of command-line tool ([#912](https://github.com/josefpihrt/roslynator/pull/912)).
-----
diff --git a/src/CSharp.Workspaces/CSharp.Workspaces.csproj b/src/CSharp.Workspaces/CSharp.Workspaces.csproj
index 439e2d2a2e..e7dba15847 100644
--- a/src/CSharp.Workspaces/CSharp.Workspaces.csproj
+++ b/src/CSharp.Workspaces/CSharp.Workspaces.csproj
@@ -47,6 +47,15 @@ Roslynator.NameGenerator
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.Common, PublicKey=$(RoslynatorPublicKey)
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.Workspaces.Common, PublicKey=$(RoslynatorPublicKey)
+
+
+
diff --git a/src/CSharp.Workspaces/Properties/AssemblyInfo.cs b/src/CSharp.Workspaces/Properties/AssemblyInfo.cs
index 86a0c5cac2..b023145bdc 100644
--- a/src/CSharp.Workspaces/Properties/AssemblyInfo.cs
+++ b/src/CSharp.Workspaces/Properties/AssemblyInfo.cs
@@ -3,8 +3,6 @@
using System.Runtime.CompilerServices;
[assembly: InternalsVisibleTo("Roslynator, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.Common, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.Workspaces.Common, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CodeGeneration, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CSharp.Analyzers, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CSharp.Analyzers.CodeFixes, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
diff --git a/src/CSharp/CSharp.csproj b/src/CSharp/CSharp.csproj
index ed6158fc53..a2a47178d6 100644
--- a/src/CSharp/CSharp.csproj
+++ b/src/CSharp/CSharp.csproj
@@ -46,6 +46,21 @@ Roslynator.NameGenerator
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.Common, PublicKey=$(RoslynatorPublicKey)
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.Workspaces.Common, PublicKey=$(RoslynatorPublicKey)
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.CSharp.Workspaces, PublicKey=$(RoslynatorPublicKey)
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.Documentation, PublicKey=$(RoslynatorPublicKey)
+
+
+
diff --git a/src/CSharp/Properties/AssemblyInfo.cs b/src/CSharp/Properties/AssemblyInfo.cs
index 8e01c1ddba..0575769c65 100644
--- a/src/CSharp/Properties/AssemblyInfo.cs
+++ b/src/CSharp/Properties/AssemblyInfo.cs
@@ -6,14 +6,10 @@
[assembly: InternalsVisibleTo("Roslynator.Workspaces, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CodeGeneration, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.MetadataGenerator, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.Common, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.Workspaces.Common, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CSharp.Analyzers, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CSharp.Analyzers.CodeFixes, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CSharp.CodeFixes, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CSharp.Refactorings, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.CSharp.Workspaces, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.Documentation, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CSharp.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CSharp.Workspaces.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.Analyzers.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
diff --git a/src/CommandLine.DocumentationGenerator/CommandLine.DocumentationGenerator.csproj b/src/CommandLine.DocumentationGenerator/CommandLine.DocumentationGenerator.csproj
index 7a942d7d2d..906fd6b426 100644
--- a/src/CommandLine.DocumentationGenerator/CommandLine.DocumentationGenerator.csproj
+++ b/src/CommandLine.DocumentationGenerator/CommandLine.DocumentationGenerator.csproj
@@ -1,11 +1,11 @@
- net48
+ net5.0
-
- net5.0
+
+ net5.0;net6.0
diff --git a/src/Common/Common.csproj b/src/Common/Common.csproj
index f382aca63d..0065c4c791 100644
--- a/src/Common/Common.csproj
+++ b/src/Common/Common.csproj
@@ -24,6 +24,12 @@
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.Workspaces.Common, PublicKey=$(RoslynatorPublicKey)
+
+
+
diff --git a/src/Common/Properties/AssemblyInfo.cs b/src/Common/Properties/AssemblyInfo.cs
index 63ef58a6ba..59850ff874 100644
--- a/src/Common/Properties/AssemblyInfo.cs
+++ b/src/Common/Properties/AssemblyInfo.cs
@@ -2,7 +2,6 @@
using System.Runtime.CompilerServices;
-[assembly: InternalsVisibleTo("Roslynator.Workspaces.Common, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CSharp.Analyzers, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CSharp.Analyzers.CodeFixes, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CSharp.CodeFixes, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
diff --git a/src/Core/Core.csproj b/src/Core/Core.csproj
index 4fc5e87e14..7d5dcbab15 100644
--- a/src/Core/Core.csproj
+++ b/src/Core/Core.csproj
@@ -35,6 +35,33 @@
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.CSharp, PublicKey=$(RoslynatorPublicKey)
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.VisualBasic, PublicKey=$(RoslynatorPublicKey)
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.Workspaces.Core, PublicKey=$(RoslynatorPublicKey)
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.Common, PublicKey=$(RoslynatorPublicKey)
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.Workspaces.Common, PublicKey=$(RoslynatorPublicKey)
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.CSharp.Workspaces, PublicKey=$(RoslynatorPublicKey)
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.VisualBasic.Workspaces, PublicKey=$(RoslynatorPublicKey)
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.Documentation, PublicKey=$(RoslynatorPublicKey)
+
+
+
diff --git a/src/Core/Properties/AssemblyInfo.cs b/src/Core/Properties/AssemblyInfo.cs
index f00b40b0e1..35c8c6f641 100644
--- a/src/Core/Properties/AssemblyInfo.cs
+++ b/src/Core/Properties/AssemblyInfo.cs
@@ -3,20 +3,12 @@
using System.Runtime.CompilerServices;
[assembly: InternalsVisibleTo("Roslynator, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.CSharp, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.VisualBasic, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.Workspaces.Core, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CodeGeneration, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.MetadataGenerator, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.Common, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.Workspaces.Common, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CSharp.Analyzers, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CSharp.Analyzers.CodeFixes, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CSharp.CodeFixes, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CSharp.Refactorings, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.CSharp.Workspaces, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.VisualBasic.Workspaces, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.Documentation, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.Testing.Common, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.Testing.CSharp, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.Testing.VisualBasic, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
diff --git a/src/Directory.Build.props b/src/Directory.Build.props
index 711e9cf1a5..146cac061b 100644
--- a/src/Directory.Build.props
+++ b/src/Directory.Build.props
@@ -7,6 +7,7 @@
Josef Pihrt
Copyright (c) 2016-2022 Josef Pihrt
false
+ 0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8
diff --git a/src/VisualBasic.Workspaces/Properties/AssemblyInfo.cs b/src/VisualBasic.Workspaces/Properties/AssemblyInfo.cs
index 9193b9528f..7f96c7074b 100644
--- a/src/VisualBasic.Workspaces/Properties/AssemblyInfo.cs
+++ b/src/VisualBasic.Workspaces/Properties/AssemblyInfo.cs
@@ -3,8 +3,6 @@
using System.Runtime.CompilerServices;
[assembly: InternalsVisibleTo("Roslynator, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.Common, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.Workspaces.Common, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CodeGeneration, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CSharp.Analyzers, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CSharp.Analyzers.CodeFixes, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
diff --git a/src/VisualBasic.Workspaces/VisualBasic.Workspaces.csproj b/src/VisualBasic.Workspaces/VisualBasic.Workspaces.csproj
index 936bbd5690..3ed7bacf7d 100644
--- a/src/VisualBasic.Workspaces/VisualBasic.Workspaces.csproj
+++ b/src/VisualBasic.Workspaces/VisualBasic.Workspaces.csproj
@@ -28,4 +28,13 @@
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.Common, PublicKey=$(RoslynatorPublicKey)
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.Workspaces.Common, PublicKey=$(RoslynatorPublicKey)
+
+
+
diff --git a/src/VisualBasic/Properties/AssemblyInfo.cs b/src/VisualBasic/Properties/AssemblyInfo.cs
index b0f589feea..957df63d81 100644
--- a/src/VisualBasic/Properties/AssemblyInfo.cs
+++ b/src/VisualBasic/Properties/AssemblyInfo.cs
@@ -3,4 +3,3 @@
using System.Runtime.CompilerServices;
[assembly: InternalsVisibleTo("Roslynator, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.VisualBasic.Workspaces, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
diff --git a/src/VisualBasic/VisualBasic.csproj b/src/VisualBasic/VisualBasic.csproj
index 2c443d5208..b8b5f6d3b0 100644
--- a/src/VisualBasic/VisualBasic.csproj
+++ b/src/VisualBasic/VisualBasic.csproj
@@ -25,4 +25,10 @@
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.VisualBasic.Workspaces, PublicKey=$(RoslynatorPublicKey)
+
+
+
diff --git a/src/Workspaces.Core/Properties/AssemblyInfo.cs b/src/Workspaces.Core/Properties/AssemblyInfo.cs
index 403d2f624d..2d89c3572f 100644
--- a/src/Workspaces.Core/Properties/AssemblyInfo.cs
+++ b/src/Workspaces.Core/Properties/AssemblyInfo.cs
@@ -3,17 +3,12 @@
using System.Runtime.CompilerServices;
[assembly: InternalsVisibleTo("Roslynator, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.CSharp.Workspaces, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.VisualBasic.Workspaces, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.Common, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.Workspaces.Common, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CSharp.Analyzers.CodeFixes, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CSharp.Refactorings, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CSharp.CodeFixes, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.Analyzers.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CodeFixes.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.Refactorings.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
-[assembly: InternalsVisibleTo("Roslynator.Documentation, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CodeAnalysis.Analyzers.CodeFixes, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.CodeAnalysis.Analyzers.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
[assembly: InternalsVisibleTo("Roslynator.Formatting.Analyzers.CodeFixes, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d348e1a51bc190259aed17cfe132736241fef462de45a5de6c881c7f9d705073c7a2a08ba5ae493c7e878fe5f3cf7909e89045cca696422f03b284b147daf6b93c47bc53dd61ceeae60f73149d183032f029761d0d59aab49a26be4f6af71cd8194ace937642bdcb515f07530096122e97cfe6c8549a843530f71c24c7e3dab8")]
diff --git a/src/Workspaces.Core/Workspaces.Core.csproj b/src/Workspaces.Core/Workspaces.Core.csproj
index 3301c48d5c..59c4e49801 100644
--- a/src/Workspaces.Core/Workspaces.Core.csproj
+++ b/src/Workspaces.Core/Workspaces.Core.csproj
@@ -40,6 +40,24 @@
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.CSharp.Workspaces, PublicKey=$(RoslynatorPublicKey)
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.VisualBasic.Workspaces, PublicKey=$(RoslynatorPublicKey)
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.Common, PublicKey=$(RoslynatorPublicKey)
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.Workspaces.Common, PublicKey=$(RoslynatorPublicKey)
+
+
+ <_Parameter1>$(RoslynatorDllPrefix)Roslynator.Documentation, PublicKey=$(RoslynatorPublicKey)
+
+
+
diff --git a/tools/build_cli.cmd b/tools/build_cli.cmd
index 4fd67e430c..a38b814272 100644
--- a/tools/build_cli.cmd
+++ b/tools/build_cli.cmd
@@ -7,9 +7,6 @@ md "%_outDir%"
del /Q "%_outDir%\Roslynator.CommandLine.*.nupkg"
del /Q "%_outDir%\Roslynator.DotNet.Cli.*.nupkg"
-orang replace "../src" -n "AssemblyInfo.cs" e -c "patterns/assembly_names_to_be_prefixed.txt" f -r "Roslynator_Cli_"
-orang replace "../src/commandline/commandline.csproj" -c "net5.0" l -r "net5.0;net6.0"
-
orang delete "../src" -a d -n "bin,obj" l li e -i "packages,node_modules" l li e ne -t n --content-only -y su s
dotnet restore --force "..\src\CommandLine.sln"
@@ -38,8 +35,5 @@ dotnet pack "..\src\CommandLine\CommandLine.csproj" -c Release -v normal ^
copy "..\src\CommandLine\bin\Release\Roslynator.DotNet.Cli.*.nupkg" "%_outDir%"
-orang replace "../src" -n "AssemblyInfo.cs" e -c "patterns/assembly_names_to_be_prefixed.txt" f -r ""
-orang replace "../src/commandline/commandline.csproj" -c "net5.0;net6.0" l -r "net5.0"
-
echo OK
pause
diff --git a/tools/build_cli.ps1 b/tools/build_cli.ps1
new file mode 100644
index 0000000000..aacc2caf38
--- /dev/null
+++ b/tools/build_cli.ps1
@@ -0,0 +1,30 @@
+# dotnet tool install -g orang.dotnet.cli
+
+$outDir = "../out/Release"
+
+New-Item -Path $outDir -ItemType directory
+Remove-Item "$outDir/Roslynator.CommandLine.*.nupkg"
+Remove-Item "$outDir/Roslynator.DotNet.Cli.*.nupkg"
+Remove-Item -Path "../src/CommandLine/bin/Release" -Recurse
+
+orang delete "../src" -a d -n "bin,obj" l li e -i "packages,node_modules" l li e ne -t n --content-only -y su s
+dotnet clean "../src/CommandLine.sln" `
+
+dotnet publish "../src/CommandLine.sln" `
+ /p:Configuration=Release,RoslynatorCommandLine=true,Deterministic=true,TreatWarningsAsErrors=true,WarningsNotAsErrors="1591" `
+ /v:normal `
+ /m
+
+dotnet pack -c Release --no-build -v normal /p:RoslynatorCommandLine=true "../src/CommandLine/CommandLine.csproj"
+
+Copy-Item -Path "../src/CommandLine/bin/Release/Roslynator.CommandLine.*.nupkg" -Destination "$outDir"
+
+orang delete "../src" -a d -n "bin,obj" l li e -i "packages,node_modules" l li e ne -t n --content-only -y su s
+dotnet clean "../src/CommandLine.sln" `
+
+dotnet pack "../src/CommandLine/CommandLine.csproj" -c Release -v normal `
+ /p:RoslynatorDotNetCli=true,Deterministic=true,TreatWarningsAsErrors=true,WarningsNotAsErrors="1591"
+
+Copy-Item -Path "../src/CommandLine/bin/Release/Roslynator.DotNet.Cli.*.nupkg" -Destination "$outDir"
+
+Write-Host OK