Decoupled Namespace Specification
Frequently Asked Questions about the Decoupled Namespace Specification
What is the Change?
HeroDevs is re-releasing certain JavaScript NES packages using a new specification: namespace-packageName@OSSVersion-project-NESVersion
:
- namespace: The original namespace of the Open Source Software (OSS) package (e.g.,
@angular-devkit
) - packageName: The original name of the OSS package (e.g.,
core
) - OSSVersion: The version of the OSS package from which we forked (e.g.,
17.3.17
) - project: The name of the OSS repository that contains the package (e.g., angular-cli)
- NESVersion: The version of the package released by HeroDevs (e.g.,
17.3.18
)
For packages with an OSS namespace
{
"dependencies": {
"@namespace/packageName": "npm:@neverendingsupport/namespace-packageName@OSSVersion-project-NESVersion"
}
}
For packages without an OSS namespace
{
"dependencies": {
"packageName": "npm:@neverendingsupport/packageName@OSSVersion-project-NESVersion"
}
}
What Action is Required By Me?
NES packages published under the prior specification will continue to work. When feasible, upgrade to the latest-and-greatest NES packages as the namespaces are decoupled. Please refer to product-specific release notes for the most up-to-date information:
Can I See An Example?
The @angular-devkit/core
package changes from:
{
"devDependencies": {
"@angular-devkit/core": { ".": "npm:@neverendingsupport/angular-cli@17.3.17-core-17.3.18"}
}
}
To:
{
"devDependencies": {
"@angular-devkit/core": "npm:@neverendingsupport/angular-devkit-core@17.3.17-angular-cli-17.3.18"
}
}
Troubleshooting
If your NPM install fails after updating your package.json
to the latest decoupled version, please reach out to support@herodevs.com with the following information:
- The relevant sections of your
package.json
(applicabledependencies
&overrides
blocks) - Your Node.js and NPM versions (run
node -v
andnpm -v
to get these) - The last 6 characters of your NES Access Token
Why Make This Change?
The new specification creates a 1:1 mapping of NES packages to their OSS equivalent. This mapping helps integrate NES packages seamlessly into third-party scanners, such as Mend.io.
What About Trial Packages?
Trial packages are not affected by this change.