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&overridesblocks) - Your Node.js and NPM versions (run
node -vandnpm -vto 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.