:resolved_toolchain target moved into @rules_nodejs//nodejs. This makes it possible to access a NodeJS toolchain implementation without needing to know the name of a user controlled generated repository (e.g. for use inside a genrule defined in another ruleset).
Add new toolchain type @rules_nodejs//nodejs:compilation_toolchain_type suited to usage of NodeJS as a compiler (e.g. for snapshot generation) when the exec and target platforms need to be aligned. The exact platforms can still be different, but they should at least be compatible across OS and CPU.
PR Checklist
Please check if your PR fulfills the following requirements:
PR Type
What kind of change does this PR introduce?
What is the current behavior?
Issue Number: #3795
See issue for details.
What is the new behavior?
@rules_nodejs//nodejs:toolchain_type
into@rules_nodejs//nodejs:runtime_toolchain_type
and@rules_nodejs//nodejs:exec_runtime_toolchain_type
.@rules_nodejs//nodejs:runtime_toolchain_type
is suited towards usage in the target environment (e.g. runtime for*_binary
rule outputs).@rules_nodejs//nodejs:exec_runtime_toolchain_type
is suited towards usage within rule actions (e.g. running NodeJS directly).incompatible_split_toolchains
on;node.toolchain
module extension tag.nodejs_register_toolchains
macro.nodejs_toolchains_repo
repository rule (private API).:resolved_toolchain
target moved into@rules_nodejs//nodejs
. This makes it possible to access a NodeJS toolchain implementation without needing to know the name of a user controlled generated repository (e.g. for use inside agenrule
defined in another ruleset).@rules_nodejs//nodejs:compilation_toolchain_type
suited to usage of NodeJS as a compiler (e.g. for snapshot generation) when the exec and target platforms need to be aligned. The exact platforms can still be different, but they should at least be compatible across OS and CPU.Does this PR introduce a breaking change?
Other information
Extra TODO