SixLabors.Licensing
1.0.3
Prefix Reserved
dotnet add package SixLabors.Licensing --version 1.0.3
NuGet\Install-Package SixLabors.Licensing -Version 1.0.3
<PackageReference Include="SixLabors.Licensing" Version="1.0.3"> <PrivateAssets>all</PrivateAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets> </PackageReference>
<PackageVersion Include="SixLabors.Licensing" Version="1.0.3" />
<PackageReference Include="SixLabors.Licensing"> <PrivateAssets>all</PrivateAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets> </PackageReference>
paket add SixLabors.Licensing --version 1.0.3
#r "nuget: SixLabors.Licensing, 1.0.3"
#:package SixLabors.Licensing@1.0.3
#addin nuget:?package=SixLabors.Licensing&version=1.0.3
#tool nuget:?package=SixLabors.Licensing&version=1.0.3
SixLabors.Licensing
Build-time licensing validation for Six Labors libraries. Not for third-party use.
This package enables build-time license checks for projects that directly reference Six Labors libraries (e.g., ImageSharp). It does not flow transitively and is not intended or supported outside Six Labors projects.
Usage (for consumers of Six Labors libraries)
Add a license file named sixlabors.lic to your repo root, or set this property:
<PropertyGroup>
<SixLaborsLicenseFile>path/to/sixlabors.lic</SixLaborsLicenseFile>
</PropertyGroup>
To avoid storing the license on disk, set the license key directly from your environment or secret storage:
<PropertyGroup>
<SixLaborsLicenseKey>$(SIXLABORS_LICENSE_KEY)</SixLaborsLicenseKey>
</PropertyGroup>
With the project property above, set SIXLABORS_LICENSE_KEY to the complete contents of your issued license.
Use the original value without escaping. The following examples show an assembly-scoped community license.
Replace the entire example value with your issued license contents.
In PowerShell, use:
# Quotes preserve the semicolons between fields and the pipe between signatures.
$env:SIXLABORS_LICENSE_KEY = 'Id=<id>;Kind=Community;ExpiryDateUtc=<expiry>;Key=Assembly:<signature>|<signature>'
dotnet build
dotnet publish
In Bash, use:
# Quotes preserve the semicolons between fields and the pipe between signatures.
export SIXLABORS_LICENSE_KEY='Id=<id>;Kind=Community;ExpiryDateUtc=<expiry>;Key=Assembly:<signature>|<signature>'
dotnet build
dotnet publish
Passing the license through a command-line property
If you pass the license directly through -p:SixLaborsLicenseKey, escape every semicolon as %253B.
MSBuild treats semicolons as property separators even inside a quoted argument. Its command-line parser consumes
%25, and the validator restores %3B to ;. This applies to both unrestricted and assembly-scoped licenses.
The | between assembly signatures stays unchanged.
In PowerShell:
# Escape field separators only when passing the license through -p:.
dotnet build "-p:SixLaborsLicenseKey=$($env:SIXLABORS_LICENSE_KEY.Replace(';', '%253B'))"
dotnet publish "-p:SixLaborsLicenseKey=$($env:SIXLABORS_LICENSE_KEY.Replace(';', '%253B'))"
In Bash:
# Escape field separators only when passing the license through -p:.
dotnet build "-p:SixLaborsLicenseKey=${SIXLABORS_LICENSE_KEY//;/%253B}"
dotnet publish "-p:SixLaborsLicenseKey=${SIXLABORS_LICENSE_KEY//;/%253B}"
Build as normal. If the license is missing or invalid, the build fails with a clear error.
Notes
- You do not need to reference this package directly; it is carried by Six Labors libraries.
- External consumption is unsupported and may change without notice.
License
Copyright © Six Labors Licensed under the Six Labors Split License.
Learn more about Target Frameworks and .NET Standard.
-
.NETFramework 4.7.2
- No dependencies.
-
net6.0
- No dependencies.
-
net8.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.