-
Notifications
You must be signed in to change notification settings - Fork 6.8k
Description
Continue discussion here from #14181.
For Bazel support downstream, the version of the @angular/bazel npm package
in package.json and tools/npm/package.json must match the version of the
@angular http_archive in WORKSPACE. I think @angular/bazel
should be pinned to a specific version in both package.json files.
When updating the version of the angular http_archive, all the versions need to match up.
For example:
http_archive(
name = "angular",
url = "https://github.com/angular/angular/archive/7.0.4.zip",
strip_prefix = "angular-7.0.4",
)
in WORKSPACE must match the version in in package.json and tools/npm/package.json:
"@angular/bazel": "7.0.4",
Ideally, this would also match up with the material releases so that material 7.0.4 depends on angular http_archive 7.0.4 and pulls in a @angular/bazel 7.0.4.
The exact version match requirement for @angular/bazel will be relaxed to a range in the future and with Ivy this will no longer be an issue since the downstream Bazel build will use the material bundles.
But for now all the versions need to match up.
Downstream with a Bazel build you'd see:
http_archive(
name = "angular",
url = "https://github.com/angular/angular/archive/7.0.4.zip",
strip_prefix = "angular-7.0.4",
)
http_archive(
name = "angular_material",
url = "https://github.com/angular/material2/archive/7.0.4.zip",
strip_prefix = "material2-7.0.4",
)
in the user's WORKSPACE and
"@angular/bazel": "7.0.4",
in the user's npm deps and everything should work with the versions matched up.