refactor: remove unnecessary unsafe slice modification#201
Conversation
|
There was a problem hiding this comment.
Pull request overview
This PR updates the JS/TS Gazelle rule generation so that package targets (npm_package / js_library when used as the package target kind) always include package.json in their emitted srcs, and refreshes/extends test fixtures to cover the behavior.
Changes:
- Update
addPackageRulegeneration to always includepackage.jsonin the emitted package rulesrcs. - Update golden
BUILD.outfixtures to reflectpackage.jsonbeing included in package targets. - Add new/expanded test fixtures (including a pnpm workspace scenario) to exercise JSON/module import behavior.
Reviewed changes
Copilot reviewed 75 out of 81 changed files in this pull request and generated 8 comments.
Show a summary per file
| File | Description |
|---|---|
| language/js/generate.go | Adjusts package rule generation to always emit package.json in package target srcs. |
| language/js/tests/simple_json_import/shared_json_a.ts | Adds shared JSON import test source. |
| language/js/tests/simple_json_import/shared_json_b.ts | Adds shared JSON import test source. |
| language/js/tests/simple_json_import/BUILD.in | Adds gazelle directives for new shared JSON files. |
| language/js/tests/simple_json_import/BUILD.out | Golden update adding new ts_project targets for shared JSON files. |
| language/js/tests/pnpm_workspace/lib/a/BUILD.out | Golden update: npm_package srcs now include package.json. |
| language/js/tests/pnpm_workspace/lib/b/BUILD.out | Golden update: npm_package srcs now include package.json. |
| language/js/tests/pnpm_workspace/lib/c/BUILD.out | Golden update: js_library srcs now include package.json. |
| language/js/tests/pnpm_workspace_rerooted/lib/a/BUILD.out | Golden update: npm_package srcs now include package.json. |
| language/js/tests/pnpm_workspace_rerooted/lib/b/BUILD.out | Golden update: npm_package srcs now include package.json. |
| language/js/tests/pnpm_workspace_rerooted/lib/c/BUILD.out | Golden update: npm_package srcs now include package.json. |
| language/js/tests/pnpm_workspace_rerooted_subdir/lib/a/BUILD.out | Golden update: npm_package srcs now include package.json. |
| language/js/tests/pnpm_workspace_rerooted_subdir/lib/b/BUILD.out | Golden update: npm_package srcs now include package.json. |
| language/js/tests/pnpm_workspace_rerooted_subdir/lib/c/BUILD.out | Golden update: npm_package srcs now include package.json. |
| language/js/tests/npm_package_target_enabled/lib/a/BUILD.out | Golden update: npm_package srcs now include package.json. |
| language/js/tests/npm_package_target_enabled/lib/b/BUILD.out | Golden update: js_library srcs now include package.json. |
| language/js/tests/npm_package_target_enabled/lib/c/BUILD.out | Golden update: npm_package srcs now include package.json. |
| language/js/tests/npm_package_target_name/lib/b/BUILD.out | Golden update: js_library srcs now include package.json. |
| language/js/tests/npm_package_target_name/lib/c/BUILD.out | Golden update: npm_package srcs now include package.json. |
| language/js/tests/npm_package_target_referenced/lib/b/BUILD.out | Golden update: js_library srcs now include package.json. |
| language/js/tests/npm_package_target_referenced/lib/c/BUILD.out | Golden update: npm_package srcs now include package.json. |
| language/js/tests/npm_package_lib_target_name/lib/b/BUILD.out | Golden update: npm_package srcs now include package.json. |
| language/js/tests/npm_package_lib_target_name/lib/c/BUILD.out | Golden update: npm_package srcs now include package.json. |
| language/js/tests/incremental_lazy/libs/to-update/BUILD.out | Golden update: npm_package srcs now include package.json. |
| language/js/tests/incremental_lazy_lockdir/libs/to-update/BUILD.out | Golden update: npm_package srcs now include package.json. |
| language/js/tests/pnpm_workspace_groups_json_imports/WORKSPACE | New test workspace fixture for pnpm workspace groups scenario. |
| language/js/tests/pnpm_workspace_groups_json_imports/MODULE.bazel | New test fixture file for Bzlmod presence. |
| language/js/tests/pnpm_workspace_groups_json_imports/tsconfig.json | New test tsconfig enabling resolveJsonModule. |
| language/js/tests/pnpm_workspace_groups_json_imports/pnpm-workspace.yaml | New pnpm workspace definition for test fixture. |
| language/js/tests/pnpm_workspace_groups_json_imports/pnpm-lock.yaml | New pnpm lockfile for test fixture. |
| language/js/tests/pnpm_workspace_groups_json_imports/package.json | New root package.json for test fixture. |
| language/js/tests/pnpm_workspace_groups_json_imports/BUILD.in | New gazelle directives for test fixture. |
| language/js/tests/pnpm_workspace_groups_json_imports/BUILD.out | New generated root npm_package + ts_config golden output. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/a/package.json | New fixture package.json for lib a. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/a/data.json | New fixture JSON data for lib a. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/a/config.ts | New fixture re-exporting JSON for lib a. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/a/index.ts | New fixture TS source for lib a. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/a/index.spec.ts | New fixture test TS source for lib a. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/a/BUILD.out | New generated BUILD golden for lib a. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/a/BUILD.in | New/empty BUILD.in fixture for lib a. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/b/package.json | New fixture package.json for lib b. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/b/index.ts | New fixture TS source for lib b. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/b/data.json | New fixture JSON data for lib b. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/b/config.ts | New fixture TS source requiring JSON/package.json. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/b/index.spec.ts | New fixture test TS source for lib b. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/b/BUILD.out | New generated BUILD golden for lib b. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/b/BUILD.in | New/empty BUILD.in fixture for lib b. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/c/package.json | New fixture package.json for lib c. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/c/index.ts | New fixture TS source requiring package.json. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/c/data.json | New fixture JSON data for lib c. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/c/config.ts | New fixture TS source requiring package.json. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/c/index.spec.ts | New fixture test TS source for lib c. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/c/BUILD.out | New generated BUILD golden for lib c. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib/c/BUILD.in | New gazelle directive for js package kind in lib c. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/BUILD.out | New generated ts_config for outdir group. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/BUILD.in | New/empty BUILD.in fixture for outdir group. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/tsconfig.json | New fixture tsconfig for outDir scenario. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/d/package.json | New fixture package.json for lib-outdir d. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/d/data.json | New fixture JSON data for lib-outdir d. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/d/config.ts | New fixture re-exporting JSON for lib-outdir d. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/d/index.ts | New fixture TS source for lib-outdir d. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/d/index.spec.ts | New fixture test TS source for lib-outdir d. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/d/BUILD.out | New generated BUILD golden for lib-outdir d. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/d/BUILD.in | New/empty BUILD.in fixture for lib-outdir d. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/e/package.json | New fixture package.json for lib-outdir e. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/e/index.ts | New fixture TS source for lib-outdir e. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/e/data.json | New fixture JSON data for lib-outdir e. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/e/config.ts | New fixture TS source requiring JSON/package.json. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/e/index.spec.ts | New fixture test TS source for lib-outdir e. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/e/BUILD.out | New generated BUILD golden for lib-outdir e. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/e/BUILD.in | New/empty BUILD.in fixture for lib-outdir e. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/f/package.json | New fixture package.json for lib-outdir f. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/f/index.ts | New fixture TS source requiring package.json. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/f/data.json | New fixture JSON data for lib-outdir f. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/f/config.ts | New fixture TS source requiring package.json. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/f/index.spec.ts | New fixture test TS source for lib-outdir f. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/f/BUILD.out | New generated BUILD golden for lib-outdir f. |
| language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/f/BUILD.in | New gazelle directive for js package kind in lib-outdir f. |
Files not reviewed (1)
- language/js/tests/pnpm_workspace_groups_json_imports/pnpm-lock.yaml: Language not supported
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
language/js/tests/pnpm_workspace_groups_json_imports/lib/a/index.spec.ts
Outdated
Show resolved
Hide resolved
language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/d/index.ts
Outdated
Show resolved
Hide resolved
language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/d/index.spec.ts
Outdated
Show resolved
Hide resolved
language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/tsconfig.json
Outdated
Show resolved
Hide resolved
language/js/tests/pnpm_workspace_groups_json_imports/lib/a/index.ts
Outdated
Show resolved
Hide resolved
language/js/tests/pnpm_workspace_groups_json_imports/lib/c/index.ts
Outdated
Show resolved
Hide resolved
language/js/tests/pnpm_workspace_groups_json_imports/lib-outdir/f/index.ts
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 159 out of 169 changed files in this pull request and generated no new comments.
Files not reviewed (1)
- language/js/tests/pnpm_workspace_groups_json_imports/pnpm-lock.yaml: Language not supported
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 154 out of 164 changed files in this pull request and generated 1 comment.
Files not reviewed (1)
- language/js/tests/pnpm_workspace_groups_json_imports/pnpm-lock.yaml: Language not supported
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.



Changes are visible to end-users: no
Test plan