Skip to content

Commit

Permalink
refactor: remove vendored rollup versions, user must provider their o…
Browse files Browse the repository at this point in the history
…wn rollup from their node_modules (#77)
  • Loading branch information
gregmagolan authored Mar 21, 2023
1 parent f0b79e7 commit 56d54f6
Show file tree
Hide file tree
Showing 30 changed files with 467 additions and 513 deletions.
4 changes: 3 additions & 1 deletion .bazelignore
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
e2e/
e2e/
node_modules
example/node_modules
4 changes: 4 additions & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Disabling pnpm [hoisting](https://pnpm.io/npmrc#hoist) by setting `hoist=false` is recommended on
# projects using rules_js so that pnpm outside of Bazel lays out a node_modules tree similar to what
# rules_js lays out under Bazel (without a hidden node_modules/.pnpm/node_modules)
hoist=false
3 changes: 3 additions & 0 deletions BUILD.bazel
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
load("@bazel_gazelle//:def.bzl", "gazelle", "gazelle_binary")
load("@npm//:defs.bzl", "npm_link_all_packages")

npm_link_all_packages(name = "node_modules")

gazelle_binary(
name = "gazelle_bin",
Expand Down
28 changes: 11 additions & 17 deletions WORKSPACE
Original file line number Diff line number Diff line change
Expand Up @@ -11,40 +11,34 @@ load("//rollup:dependencies.bzl", "rules_rollup_dependencies")
# Fetch dependencies which users need as well
rules_rollup_dependencies()

load("//rollup:repositories.bzl", "rollup_repositories")

rollup_repositories(name = "rollup")

load("@rollup//:npm_repositories.bzl", rollup_npm_repositories = "npm_repositories")

rollup_npm_repositories()

load("@rules_nodejs//nodejs:repositories.bzl", "nodejs_register_toolchains")

nodejs_register_toolchains(
name = "nodejs",
node_version = "16.9.0",
)

load("@aspect_bazel_lib//lib:repositories.bzl", "DEFAULT_YQ_VERSION", "aspect_bazel_lib_dependencies", "register_yq_toolchains")

aspect_bazel_lib_dependencies(override_local_config_platform = True)

register_yq_toolchains(
version = DEFAULT_YQ_VERSION,
)

load("@aspect_rules_js//npm:npm_import.bzl", "npm_translate_lock")

npm_translate_lock(
name = "npm",
pnpm_lock = "//example:pnpm-lock.yaml",
npmrc = "//:.npmrc",
pnpm_lock = "//:pnpm-lock.yaml",
verify_node_modules_ignored = "//:.bazelignore",
)

load("@npm//:repositories.bzl", "npm_repositories")

npm_repositories()

load("@aspect_bazel_lib//lib:repositories.bzl", "DEFAULT_YQ_VERSION", "aspect_bazel_lib_dependencies", "register_yq_toolchains")

aspect_bazel_lib_dependencies(override_local_config_platform = True)

register_yq_toolchains(
version = DEFAULT_YQ_VERSION,
)

# For running our own unit tests
load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace")

Expand Down
2 changes: 1 addition & 1 deletion docs/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ load("@aspect_bazel_lib//lib:docs.bzl", "stardoc_with_diff_test", "update_docs")

stardoc_with_diff_test(
name = "rollup",
bzl_library_target = "//rollup/private:rollup_bundle",
bzl_library_target = "//rollup:defs",
)

update_docs(
Expand Down
81 changes: 22 additions & 59 deletions docs/rollup.md

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions e2e/workspace/.bazelignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
node_modules
4 changes: 4 additions & 0 deletions e2e/workspace/.npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Disabling pnpm [hoisting](https://pnpm.io/npmrc#hoist) by setting `hoist=false` is recommended on
# projects using rules_js so that pnpm outside of Bazel lays out a node_modules tree similar to what
# rules_js lays out under Bazel (without a hidden node_modules/.pnpm/node_modules)
hoist=false
12 changes: 0 additions & 12 deletions e2e/workspace/BUILD

This file was deleted.

16 changes: 16 additions & 0 deletions e2e/workspace/BUILD.bazel
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
load("@aspect_rules_rollup//rollup:defs.bzl", "rollup")
load("@bazel_skylib//rules:build_test.bzl", "build_test")
load("@npm//:defs.bzl", "npm_link_all_packages")

npm_link_all_packages(name = "node_modules")

rollup(
name = "bundle",
entry_point = "main.js",
node_modules = "//:node_modules",
)

build_test(
name = "test",
targets = [":bundle"],
)
21 changes: 13 additions & 8 deletions e2e/workspace/WORKSPACE
Original file line number Diff line number Diff line change
Expand Up @@ -18,18 +18,23 @@ load("@aspect_rules_rollup//rollup:dependencies.bzl", "rules_rollup_dependencies
# already fetched all the dependencies.
rules_rollup_dependencies()

load("@aspect_rules_rollup//rollup:repositories.bzl", "rollup_repositories")

rollup_repositories(name = "rollup")

load("@rollup//:npm_repositories.bzl", rollup_npm_repositories = "npm_repositories")

rollup_npm_repositories()

# Fetch and register a node toolchain, if you haven't already
load("@rules_nodejs//nodejs:repositories.bzl", "DEFAULT_NODE_VERSION", "nodejs_register_toolchains")

nodejs_register_toolchains(
name = "node",
node_version = DEFAULT_NODE_VERSION,
)

load("@aspect_rules_js//npm:npm_import.bzl", "npm_translate_lock")

npm_translate_lock(
name = "npm",
npmrc = "//:.npmrc",
pnpm_lock = "//:pnpm-lock.yaml",
verify_node_modules_ignored = "//:.bazelignore",
)

load("@npm//:repositories.bzl", "npm_repositories")

npm_repositories()
6 changes: 6 additions & 0 deletions e2e/workspace/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"private": true,
"devDependencies": {
"rollup": "3.20.0"
}
}

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions e2e/workspace/pnpm-workspace.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
packages:
- '.'
5 changes: 3 additions & 2 deletions example/BUILD.bazel
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
load("@aspect_rules_rollup//rollup:defs.bzl", "rollup_bundle")
load("@aspect_rules_rollup//rollup:defs.bzl", "rollup")
load("@aspect_rules_js//npm:defs.bzl", "npm_link_package")
load("@npm//:defs.bzl", "npm_link_all_packages")
load("@aspect_bazel_lib//lib:write_source_files.bzl", "write_source_files")
Expand All @@ -11,10 +11,11 @@ npm_link_package(
root_package = "example",
)

rollup_bundle(
rollup(
name = "bundle",
config_file = ":rollup.config.js",
entry_point = "main.js",
node_modules = "//:node_modules",
sourcemap = "false",
deps = [
":node_modules/@rollup_example/lib",
Expand Down
150 changes: 0 additions & 150 deletions example/pnpm-lock.yaml

This file was deleted.

6 changes: 6 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"private": true,
"devDependencies": {
"rollup": "3.20.0"
}
}
Loading

0 comments on commit 56d54f6

Please sign in to comment.