CS-Script 4.0.2
CS-Script engine Class Library for .NET 5
Showing the top 20 packages that depend on CS-Script.
Packages | Downloads |
---|---|
PommaLabs.Armando
A long description of the package. This shows up in the right pane of the Add Package Dialog as well as in the Package Manager Console when listing packages using the Get-Package command.
|
30 |
Minor usability improvements of CSScriptLib:
- Unloading script assembly.
_After .NET Framework ignoring the problem for ~14 years .NET Core fillally allows this feature to be implemented._
- Excluding assemblies from being auto referenced (assembly filtering).
- Implemented script caching that was available in the CS-Script edition for .NET Franework.
---
## Deployment
_**Ubuntu (terminal)**_
```
repo=https://github.com/oleg-shilo/cs-script/releases/download/v4.0.2.0/; file=cs-script_4.0-2.deb; rm $file; wget $repo$file; sudo dpkg -i $file
```
_**Windows (choco)**_
_Pending approval_
```
choco install cs-script --version=4.0.2.0
```
It is highly recommended that you uninstall CS-Script.Core:
```
sudo choco uninstall cs-script.core
```
_**Manual**_
Just unpack the corresponding 7z file and start using the script engine executable `cscs`.
If you prefer you can build a shim exe `css` for an easy launch of the script engine process:
```
cscs -self-exe
```
The same shim/symbolic link is created if you are installing the CS-Script as a package.
---
## Changes
### CLI
_No changes_
### CSScriptLib
- Added support for filtering referenced assemblies:
```C#
dynamic script = CSScript
.Evaluator
.SetRefAssemblyFilter(asms =>
asms.Where(a => !a.FullName.StartsWith("Microsoft."))
.LoadCode(scriptCode);
```
- Added extension method for unloading script assembly after the execution
```C#
ICalc calc = evaluator
.With(eval => eval.IsAssemblyUnloadingEnabledled = true)
.LoadMethod<ICalc>("int Sum(int a, int b) => a+b;");
var result = calc.Sum(7, 3);
calc.GetType()
.Assembly
.Unload();
```
- Added script caching. If caching is enabled (disabled by default) the script is to be recompiled only if it is changes since the last execution. It applies to both execution if script file and script code.
```C#
dynamic script = CSScript.Evaluator
.With(eval => eval.IsCachingEnabled = true)
.LoadMethod(@"object print(string message)
{
Console.WriteLine(message);
}");
script.print("Hello...");
```
.NET Standard 2.0
- Microsoft.CodeAnalysis.CSharp.Scripting (>= 3.6.0)
- Microsoft.CodeAnalysis.Scripting.Common (>= 3.6.0)
- Microsoft.Extensions.DependencyModel (>= 3.1.6)
- System.Runtime.Loader (>= 4.3.0)
Version | Downloads | Last updated |
---|---|---|
4.9.7 | 5 | 06/10/2025 |
4.9.6 | 6 | 05/01/2025 |
4.9.5 | 10 | 04/24/2025 |
4.8.27 | 13 | 01/21/2025 |
4.8.26 | 11 | 01/26/2025 |
4.8.21 | 14 | 11/19/2024 |
4.8.19 | 13 | 10/31/2024 |
4.8.18-HotFix | 21 | 07/22/2024 |
4.8.17 | 19 | 07/13/2024 |
4.8.16 | 15 | 05/22/2024 |
4.8.16-pre | 16 | 05/15/2024 |
4.8.14 | 27 | 02/13/2024 |
4.8.13 | 19 | 02/13/2024 |
4.8.12 | 35 | 02/13/2024 |
4.8.10 | 41 | 02/13/2024 |
4.8.9 | 20 | 02/13/2024 |
4.8.8 | 21 | 02/13/2024 |
4.8.7 | 21 | 02/13/2024 |
4.8.4-pre | 35 | 02/13/2024 |
4.8.3 | 25 | 02/13/2024 |
4.8.1 | 41 | 02/13/2024 |
4.8.0 | 38 | 02/13/2024 |
4.6.5 | 19 | 02/13/2024 |
4.6.2 | 18 | 02/13/2024 |
4.5.0 | 18 | 02/13/2024 |
4.4.6 | 26 | 02/13/2024 |
4.4.5 | 22 | 02/13/2024 |
4.4.4-pre | 18 | 02/13/2024 |
4.4.2 | 35 | 02/13/2024 |
4.4.1 | 39 | 02/13/2024 |
4.4.0 | 19 | 02/13/2024 |
4.3.0 | 18 | 02/13/2024 |
4.2.0 | 35 | 02/13/2024 |
4.1.3-pre | 17 | 02/13/2024 |
4.1.2-pre | 38 | 02/13/2024 |
4.1.1-pre | 40 | 02/13/2024 |
4.1.0 | 26 | 02/13/2024 |
4.0.2 | 34 | 02/13/2024 |
4.0.1 | 30 | 02/13/2024 |
4.0.0 | 17 | 02/13/2024 |
3.30.5.1 | 20 | 02/13/2024 |
3.30.5-pre | 35 | 02/13/2024 |
3.30.4 | 14 | 02/13/2024 |
3.30.3 | 27 | 02/13/2024 |
3.30.2-HotFix | 36 | 02/13/2024 |
3.30.1-HotFix | 40 | 02/13/2024 |
3.30.0 | 18 | 02/13/2024 |
3.29.0 | 37 | 02/13/2024 |
3.28.7 | 36 | 02/13/2024 |
3.28.4 | 19 | 02/13/2024 |
3.28.2 | 36 | 02/13/2024 |
3.28.0.1 | 30 | 02/13/2024 |
3.28.0 | 20 | 02/13/2024 |
3.27.2 | 37 | 02/13/2024 |
3.27.0 | 34 | 02/13/2024 |
3.26.2 | 26 | 02/13/2024 |
3.25.1.1 | 33 | 02/13/2024 |
3.25.1 | 34 | 02/13/2024 |
3.24.2 | 24 | 02/13/2024 |
3.24.0 | 44 | 02/13/2024 |
3.22.0 | 20 | 02/13/2024 |
3.21.1 | 19 | 02/13/2024 |
3.19.0 | 21 | 02/13/2024 |
3.18.1 | 32 | 02/13/2024 |
3.16.0 | 39 | 02/13/2024 |
3.14.0 | 37 | 02/13/2024 |
3.13.2 | 38 | 02/13/2024 |
3.13.1 | 36 | 02/13/2024 |
3.12.3 | 39 | 02/13/2024 |
3.12.2.1 | 35 | 02/13/2024 |
3.12.1 | 38 | 02/13/2024 |
3.12.0.1 | 32 | 02/13/2024 |
3.12.0 | 19 | 02/13/2024 |
3.11.0.1 | 39 | 02/13/2024 |
3.11.0 | 40 | 02/13/2024 |
3.10.0 | 31 | 02/13/2024 |
3.9.19 | 35 | 02/13/2024 |
3.9.17 | 20 | 02/13/2024 |
3.9.10 | 18 | 02/13/2024 |
3.9.8.1 | 18 | 02/13/2024 |
3.9.8 | 37 | 02/13/2024 |
3.9.7 | 36 | 02/13/2024 |
3.9.5 | 20 | 02/13/2024 |
3.9.4.1 | 38 | 02/13/2024 |
3.9.2 | 35 | 02/13/2024 |
3.8.10 | 19 | 02/10/2020 |
3.8.8 | 44 | 04/09/2021 |
3.8.7 | 29 | 02/13/2024 |
3.8.6 | 38 | 02/13/2024 |
3.8.5 | 19 | 02/13/2024 |
3.8.3 | 32 | 02/13/2024 |
3.8.2 | 35 | 02/13/2024 |
3.7.2 | 37 | 03/16/2024 |
3.7.0 | 41 | 02/13/2024 |
3.6.7 | 21 | 02/13/2024 |
3.6.2 | 39 | 02/13/2024 |
3.5.9 | 19 | 02/13/2024 |
3.5.8 | 35 | 02/13/2024 |
3.5.7 | 35 | 02/13/2024 |
3.5.6 | 19 | 02/13/2024 |
3.5.5 | 43 | 02/13/2024 |
3.5.4 | 21 | 02/13/2024 |
3.5.3 | 19 | 02/13/2024 |
3.5.0.2 | 35 | 02/13/2024 |
3.5.0.1 | 19 | 02/13/2024 |
3.5.0 | 42 | 02/13/2024 |
3.2.5.1 | 18 | 02/13/2024 |
3.2.5 | 28 | 02/13/2024 |