RunicTranslations.Build 0.1.0-preview.8.1

Suggested Alternatives

Runic.Translations.Build

Additional Details

This legacy preview package has been replaced by Runic.Translations.Build. Migrate to the matching Runic SDK release. See https://github.com/Runic-Artifex/runic-sdk/blob/main/docs/guides/application/adr/0017-v0.2-product-identity-and-package-topology.md

This is a prerelease version of RunicTranslations.Build.
The owner has unlisted this package. This could mean that the package is deprecated, has security vulnerabilities or shouldn't be used anymore.
dotnet add package RunicTranslations.Build --version 0.1.0-preview.8.1
                    
NuGet\Install-Package RunicTranslations.Build -Version 0.1.0-preview.8.1
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="RunicTranslations.Build" Version="0.1.0-preview.8.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="RunicTranslations.Build" Version="0.1.0-preview.8.1" />
                    
Directory.Packages.props
<PackageReference Include="RunicTranslations.Build" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add RunicTranslations.Build --version 0.1.0-preview.8.1
                    
#r "nuget: RunicTranslations.Build, 0.1.0-preview.8.1"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package RunicTranslations.Build@0.1.0-preview.8.1
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=RunicTranslations.Build&version=0.1.0-preview.8.1&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=RunicTranslations.Build&version=0.1.0-preview.8.1&prerelease
                    
Install as a Cake Tool

RunicTranslations.Build

This package supplies dependency-free MSBuild integration for Runic Translations. It contains no MSBuild task assembly and takes no Microsoft.Build package dependency. Instead, its targets map explicitly declared catalog and document items to Roslyn AdditionalFiles and invoke the separately installed runic-translations tool for non-C# artifacts.

<ItemGroup>
  <TranslationCatalog Include="Resources/Text/app.textcatalog.json" />
  <TranslationDocument Include="Resources/Text/*.texts.json" />
</ItemGroup>

<PropertyGroup>
  <TranslationsEmitTypeScript>true</TranslationsEmitTypeScript>
  <TranslationsEmitEsm>true</TranslationsEmitEsm>
</PropertyGroup>

AdditionalFiles receive RunicTranslationKind metadata with the value Catalog or Document. Artifact generation is opt-in: set one or more of TranslationsEmitJson, TranslationsEmitTypeScript, TranslationsEmitTemplateManifest, TranslationsEmitEsm, or experimental TranslationsEmitCpp to select exact output groups. JSON/template/TypeScript-contract selections use {catalog}.asset-manifest-v1.json; nested ESM output uses its own web-module-manifest-v1.json. TranslationsGenerateOnBuild=true with no individual emit property selects JSON, TypeScript, template, and ESM. C++ remains explicit. This package never adds generated C# files to compilation; C# generation belongs to the generator surface.

Generated files default to $(IntermediateOutputPath)translations and are exposed as @(TranslationsGeneratedFile). An override through TranslationsOutputPath or the compatibility alias TranslationsWebOutputPath must still resolve beneath IntermediateOutputPath; an unsafe path fails with RTR0020. dotnet clean removes only files recorded in the validated owned-output inventory plus private build bookkeeping. Unrelated files survive, and the output directory is removed only when empty.

The default launcher is dotnet tool run runic-translations, which deliberately requires a locally installed, version-pinned tool manifest entry. Install the runic-translations tool at the same version as this package before enabling generation. Set TranslationsToolCommand only for a different pinned launcher or a package test, and use TranslationsToolAdditionalArguments for additional CLI options. Add the launcher or its version manifest to @(TranslationsToolInput) when it does not use the project-local .config/dotnet-tools.json; changes then invalidate incremental generation.

The current build target accepts exactly one catalog and one or more documents, matching the frozen CLI surface. It writes a private UTF-8 response file under the owned intermediate directory, so large document sets do not expand the shell command line. Inputs, generation settings, the response file, an output inventory, and a private stamp file are declared to MSBuild so an unchanged build skips generation while changed or missing declared files regenerate.

The CLI first writes the complete selected set into a contained private staging directory. Successful per-file moves replace current names, then prior inventoried names that are no longer selected are removed. This prevents flag changes from leaving stale TypeScript, JSON, or template artifacts while preserving unrelated consumer files. Byte-level verification, including extra-file detection, remains available through runic-translations verify.

There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

This package has 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.

Version Downloads Last Updated