Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

fix: Resolve entries against cwd #1091

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
rschristian wants to merge 3 commits into master
base: master
Choose a base branch
Loading
from fix/glob-entry
Open

fix: Resolve entries against cwd #1091

rschristian wants to merge 3 commits into master from fix/glob-entry

Conversation

@rschristian
Copy link
Collaborator

@rschristian rschristian commented Feb 16, 2025
edited
Loading

preactjs/preact#4677

tiny-glob resolves against opts.cwd or ., and because we don't pass cwd into tiny-glob, this can result in incorrect file paths when used with Microbundle's --cwd flag.

Edit: Meant to open this as a draft, needs tests & (削除) ideally errors thrown for missing inputs (削除ここまで) Edit2: Unfortunately we don't throw on missing inputs anywhere else so that'd be inconsistent.

Copy link

changeset-bot bot commented Feb 16, 2025
edited
Loading

⚠️ No Changeset found

Latest commit: 0485a4c

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

Copy link
Contributor

github-actions bot commented Feb 16, 2025
edited
Loading

Size Change: 0 B

Total Size: 65.9 kB

i️ View Unchanged
Filename Size
test/fixtures/alias-external/dist/alias-external.esm.mjs 85 B
test/fixtures/alias-external/dist/alias-external.js 80 B
test/fixtures/alias-external/dist/alias-external.umd.js 140 B
test/fixtures/alias/dist/alias-mapping.esm.mjs 62 B
test/fixtures/alias/dist/alias-mapping.js 62 B
test/fixtures/alias/dist/alias-mapping.umd.js 119 B
test/fixtures/async-iife-ts/dist/async-iife-ts.esm.mjs 113 B
test/fixtures/async-iife-ts/dist/async-iife-ts.js 110 B
test/fixtures/async-iife-ts/dist/async-iife-ts.umd.js 160 B
test/fixtures/async-iife-ts/dist/index.d.ts 20 B
test/fixtures/async-ts/dist/async-ts.esm.mjs 158 B
test/fixtures/async-ts/dist/async-ts.js 149 B
test/fixtures/async-ts/dist/async-ts.umd.js 246 B
test/fixtures/async-ts/dist/index.d.ts 78 B
test/fixtures/basic-babelrc/dist/basic-babelrc.esm.mjs 159 B
test/fixtures/basic-babelrc/dist/basic-babelrc.js 156 B
test/fixtures/basic-babelrc/dist/basic-babelrc.umd.js 197 B
test/fixtures/basic-compress-false/dist/basic-compress-false.esm.mjs 303 B
test/fixtures/basic-compress-false/dist/basic-compress-false.js 301 B
test/fixtures/basic-compress-false/dist/basic-compress-false.umd.js 427 B
test/fixtures/basic-css/dist/basic-css.css 107 B
test/fixtures/basic-css/dist/basic-css.esm.mjs 143 B
test/fixtures/basic-css/dist/basic-css.js 139 B
test/fixtures/basic-css/dist/basic-css.umd.js 228 B
test/fixtures/basic-dashed-external/dist/basic-dashed-external.esm.mjs 257 B
test/fixtures/basic-dashed-external/dist/basic-dashed-external.js 311 B
test/fixtures/basic-dashed-external/dist/basic-dashed-external.umd.js 401 B
test/fixtures/basic-flow/dist/basic-lib-flow.esm.mjs 105 B
test/fixtures/basic-flow/dist/basic-lib-flow.js 102 B
test/fixtures/basic-flow/dist/basic-lib-flow.umd.js 205 B
test/fixtures/basic-json/dist/basic-json.esm.mjs 128 B
test/fixtures/basic-json/dist/basic-json.js 125 B
test/fixtures/basic-json/dist/basic-json.umd.js 216 B
test/fixtures/basic-multi-source-css/dist/a.css 98 B
test/fixtures/basic-multi-source-css/dist/a.esm.mjs 134 B
test/fixtures/basic-multi-source-css/dist/a.js 130 B
test/fixtures/basic-multi-source-css/dist/a.umd.js 226 B
test/fixtures/basic-multi-source-css/dist/b.css 96 B
test/fixtures/basic-multi-source-css/dist/b.esm.mjs 135 B
test/fixtures/basic-multi-source-css/dist/b.js 131 B
test/fixtures/basic-multi-source-css/dist/b.umd.js 227 B
test/fixtures/basic-multi-source/dist/a.esm.mjs 78 B
test/fixtures/basic-multi-source/dist/a.js 73 B
test/fixtures/basic-multi-source/dist/a.umd.js 134 B
test/fixtures/basic-multi-source/dist/b.esm.mjs 78 B
test/fixtures/basic-multi-source/dist/b.js 73 B
test/fixtures/basic-multi-source/dist/b.umd.js 134 B
test/fixtures/basic-no-compress/dist/basic-no-compress.esm.mjs 301 B
test/fixtures/basic-no-compress/dist/basic-no-compress.js 299 B
test/fixtures/basic-no-compress/dist/basic-no-compress.umd.js 423 B
test/fixtures/basic-no-pkg-main/dist/basic-no-pkg-main.js 313 B
test/fixtures/basic-node-internals/dist/basic-node-internals.js 234 B
test/fixtures/basic-ts/dist/basic-lib-ts.esm.mjs 157 B
test/fixtures/basic-ts/dist/basic-lib-ts.js 153 B
test/fixtures/basic-ts/dist/basic-lib-ts.umd.js 235 B
test/fixtures/basic-ts/dist/car.d.ts 116 B
test/fixtures/basic-ts/dist/index.d.ts 86 B
test/fixtures/basic-tsx/dist/basic-lib-tsx.esm.mjs 253 B
test/fixtures/basic-tsx/dist/basic-lib-tsx.js 246 B
test/fixtures/basic-tsx/dist/basic-lib-tsx.umd.js 330 B
test/fixtures/basic-tsx/dist/index.d.ts 71 B
test/fixtures/basic-with-cwd/basic/dist/basic.esm.mjs 223 B
test/fixtures/basic-with-cwd/basic/dist/basic.js 219 B
test/fixtures/basic-with-cwd/basic/dist/basic.umd.js 299 B
test/fixtures/basic/dist/basic-lib.esm.mjs 226 B
test/fixtures/basic/dist/basic-lib.js 223 B
test/fixtures/basic/dist/basic-lib.umd.js 305 B
test/fixtures/class-decorators-ts/dist/class-decorators-ts.esm.mjs 390 B
test/fixtures/class-decorators-ts/dist/class-decorators-ts.js 387 B
test/fixtures/class-decorators-ts/dist/class-decorators-ts.umd.js 452 B
test/fixtures/class-decorators-ts/dist/index.d.ts 126 B
test/fixtures/class-properties/dist/class-properties.esm.mjs 139 B
test/fixtures/class-properties/dist/class-properties.js 134 B
test/fixtures/class-properties/dist/class-properties.umd.js 234 B
test/fixtures/css-modules--false/dist/css-modules--false.css 114 B
test/fixtures/css-modules--false/dist/css-modules--false.esm.mjs 52 B
test/fixtures/css-modules--false/dist/css-modules--false.js 49 B
test/fixtures/css-modules--false/dist/css-modules--false.umd.js 156 B
test/fixtures/css-modules--null/dist/css-modules--null.css 118 B
test/fixtures/css-modules--null/dist/css-modules--null.esm.mjs 111 B
test/fixtures/css-modules--null/dist/css-modules--null.js 110 B
test/fixtures/css-modules--null/dist/css-modules--null.umd.js 200 B
test/fixtures/css-modules--string/dist/css-modules--string.css 144 B
test/fixtures/css-modules--string/dist/css-modules--string.esm.mjs 168 B
test/fixtures/css-modules--string/dist/css-modules--string.js 166 B
test/fixtures/css-modules--string/dist/css-modules--string.umd.js 263 B
test/fixtures/css-modules--true/dist/css-modules--true.css 115 B
test/fixtures/css-modules--true/dist/css-modules--true.esm.mjs 141 B
test/fixtures/css-modules--true/dist/css-modules--true.js 139 B
test/fixtures/css-modules--true/dist/css-modules--true.umd.js 230 B
test/fixtures/custom-babelrc/dist/custom-babelrc.esm.mjs 261 B
test/fixtures/custom-babelrc/dist/custom-babelrc.js 254 B
test/fixtures/custom-babelrc/dist/custom-babelrc.umd.js 345 B
test/fixtures/custom-outputs-alt/dist/custom-outputs-alt.cjsmain.js 232 B
test/fixtures/custom-outputs-alt/dist/custom-outputs-alt.esmodule.mjs 158 B
test/fixtures/custom-outputs-alt/dist/custom-outputs-alt.jsnextmain.mjs 236 B
test/fixtures/custom-outputs-alt/dist/custom-outputs-alt.unpkg.js 315 B
test/fixtures/custom-outputs/dist/custom-outputs.exportsx.mjs 154 B
test/fixtures/custom-outputs/dist/custom-outputs.js 225 B
test/fixtures/custom-outputs/dist/custom-outputs.modulex.mjs 231 B
test/fixtures/custom-outputs/dist/custom-outputs.umdx.js 307 B
test/fixtures/custom-source-with-cwd/custom-source/dist/custom-src.esm.mjs 226 B
test/fixtures/custom-source-with-cwd/custom-source/dist/custom-src.js 222 B
test/fixtures/custom-source-with-cwd/custom-source/dist/custom-src.umd.js 304 B
test/fixtures/custom-source/dist/custom-source.esm.mjs 226 B
test/fixtures/custom-source/dist/custom-source.js 222 B
test/fixtures/custom-source/dist/custom-source.umd.js 306 B
test/fixtures/default-named/dist/default-named.esm.mjs 116 B
test/fixtures/default-named/dist/default-named.js 97 B
test/fixtures/default-named/dist/default-named.umd.js 201 B
test/fixtures/define-expression/dist/define-expression.esm.mjs 56 B
test/fixtures/define/dist/define.esm.mjs 55 B
test/fixtures/define/dist/define.js 55 B
test/fixtures/define/dist/define.umd.js 109 B
test/fixtures/esnext-ts/dist/esnext-ts.esm.mjs 1.04 kB
test/fixtures/esnext-ts/dist/esnext-ts.js 1.03 kB
test/fixtures/esnext-ts/dist/esnext-ts.umd.js 1.1 kB
test/fixtures/esnext-ts/dist/index.d.ts 68 B
test/fixtures/inline-source-map/dist/inline-source-map.esm.mjs 759 B
test/fixtures/inline-source-map/dist/inline-source-map.js 753 B
test/fixtures/inline-source-map/dist/inline-source-map.umd.js 841 B
test/fixtures/jsx/dist/jsx.esm.mjs 269 B
test/fixtures/jsx/dist/jsx.js 263 B
test/fixtures/jsx/dist/jsx.umd.js 340 B
test/fixtures/macro/dist/macro-lib.esm.mjs 88 B
test/fixtures/macro/dist/macro-lib.js 84 B
test/fixtures/macro/dist/macro-lib.umd.js 187 B
test/fixtures/mangle-json-file/dist/mangle-json-file.esm.mjs 147 B
test/fixtures/mangle-json-file/dist/mangle-json-file.js 144 B
test/fixtures/mangle-json-file/dist/mangle-json-file.umd.js 235 B
test/fixtures/minify-config-boolean/dist/minify-config-boolean.esm.mjs 160 B
test/fixtures/minify-config-boolean/dist/minify-config-boolean.js 153 B
test/fixtures/minify-config-boolean/dist/minify-config-boolean.umd.js 255 B
test/fixtures/minify-config/dist/minify-config.esm.mjs 141 B
test/fixtures/minify-config/dist/minify-config.js 137 B
test/fixtures/minify-config/dist/minify-config.umd.js 225 B
test/fixtures/minify-path-config/dist/minify-path-config.esm.mjs 149 B
test/fixtures/minify-path-config/dist/minify-path-config.js 146 B
test/fixtures/minify-path-config/dist/minify-path-config.umd.js 237 B
test/fixtures/minify-path-parent-dir-with-cwd/minify-path-parent-dir/dist/minify-path-parent-dir.esm.mjs 151 B
test/fixtures/minify-path-parent-dir-with-cwd/minify-path-parent-dir/dist/minify-path-parent-dir.js 148 B
test/fixtures/minify-path-parent-dir-with-cwd/minify-path-parent-dir/dist/minify-path-parent-dir.umd.js 241 B
test/fixtures/modern-generators/dist/modern-generators.esm.mjs 281 B
test/fixtures/modern-generators/dist/modern-generators.js 279 B
test/fixtures/modern-generators/dist/modern-generators.modern.mjs 157 B
test/fixtures/modern-generators/dist/modern-generators.umd.js 359 B
test/fixtures/modern/dist/modern-lib.modern.mjs 152 B
test/fixtures/name-custom-amd/dist/name-custom-amd.esm.mjs 229 B
test/fixtures/name-custom-amd/dist/name-custom-amd.js 225 B
test/fixtures/name-custom-amd/dist/name-custom-amd.umd.js 311 B
test/fixtures/name-custom-cli/dist/name-custom.esm.mjs 226 B
test/fixtures/name-custom-cli/dist/name-custom.js 223 B
test/fixtures/name-custom-cli/dist/name-custom.umd.js 310 B
test/fixtures/no-pkg-name/dist/no-pkg-name.esm.mjs 227 B
test/fixtures/no-pkg-name/dist/no-pkg-name.js 224 B
test/fixtures/no-pkg-name/dist/no-pkg-name.umd.js 308 B
test/fixtures/no-pkg/dist/no-pkg.esm.mjs 224 B
test/fixtures/no-pkg/dist/no-pkg.js 221 B
test/fixtures/no-pkg/dist/no-pkg.umd.js 302 B
test/fixtures/optional-chaining-ts/dist/index.d.ts 108 B
test/fixtures/optional-chaining-ts/dist/optional-chaining-ts.esm.mjs 154 B
test/fixtures/optional-chaining-ts/dist/optional-chaining-ts.js 148 B
test/fixtures/optional-chaining-ts/dist/optional-chaining-ts.umd.js 247 B
test/fixtures/parameters-rest-closure/dist/parameters-rest-closure.esm.mjs 203 B
test/fixtures/parameters-rest-closure/dist/parameters-rest-closure.js 192 B
test/fixtures/parameters-rest-closure/dist/parameters-rest-closure.umd.js 284 B
test/fixtures/pretty/dist/pretty.esm.mjs 6.58 kB
test/fixtures/pretty/dist/pretty.js 6.56 kB
test/fixtures/pretty/dist/pretty.umd.js 6.71 kB
test/fixtures/publish-config/dist/bar.js 87 B
test/fixtures/publish-config/dist/foo.d.ts 60 B
test/fixtures/pure/dist/pure.esm.mjs 108 B
test/fixtures/pure/dist/pure.js 98 B
test/fixtures/pure/dist/pure.umd.js 197 B
test/fixtures/raw/dist/raw.esm.mjs 1.41 kB
test/fixtures/raw/dist/raw.js 1.4 kB
test/fixtures/raw/dist/raw.umd.js 1.52 kB
test/fixtures/shebang/dist/shebang.esm.mjs 125 B
test/fixtures/shebang/dist/shebang.js 118 B
test/fixtures/shebang/dist/shebang.umd.js 216 B
test/fixtures/terser-annotations/dist/terser-annotations.esm.mjs 179 B
test/fixtures/terser-annotations/dist/terser-annotations.js 171 B
test/fixtures/terser-annotations/dist/terser-annotations.umd.js 257 B
test/fixtures/ts-custom-declaration/dist/index.esm.mjs 100 B
test/fixtures/ts-custom-declaration/dist/index.js 89 B
test/fixtures/ts-custom-declaration/dist/index.umd.js 205 B
test/fixtures/ts-declaration/dist/index.esm.mjs 100 B
test/fixtures/ts-declaration/dist/index.js 89 B
test/fixtures/ts-declaration/dist/index.umd.js 201 B
test/fixtures/ts-jsx/dist/index.d.ts 52 B
test/fixtures/ts-jsx/dist/ts-jsx.esm.mjs 163 B
test/fixtures/ts-jsx/dist/ts-jsx.js 158 B
test/fixtures/ts-jsx/dist/ts-jsx.umd.js 251 B
test/fixtures/ts-mixed-exports/dist/car.d.ts 116 B
test/fixtures/ts-mixed-exports/dist/index.d.ts 92 B
test/fixtures/ts-mixed-exports/dist/ts-mixed-exports.esm.mjs 168 B
test/fixtures/ts-mixed-exports/dist/ts-mixed-exports.js 160 B
test/fixtures/ts-mixed-exports/dist/ts-mixed-exports.umd.js 261 B
test/fixtures/ts-module/dist/foo.d.ts 60 B
test/fixtures/ts-module/dist/index.d.ts 63 B
test/fixtures/ts-module/dist/ts-module.esm.mjs 108 B
test/fixtures/ts-module/dist/ts-module.js 97 B
test/fixtures/ts-module/dist/ts-module.umd.js 197 B
test/fixtures/visualizer/dist/visualizer.esm.mjs 119 B
test/fixtures/visualizer/dist/visualizer.js 177 B
test/fixtures/visualizer/dist/visualizer.umd.js 259 B
test/fixtures/worker-loader/dist/worker-35b22e56.js 125 B
test/fixtures/worker-loader/dist/worker-7e1b9921.js 107 B
test/fixtures/worker-loader/dist/worker-loader.esm.mjs 181 B
test/fixtures/worker-loader/dist/worker-loader.modern.mjs 174 B

compressed-size-action

@rschristian rschristian marked this pull request as draft February 17, 2025 07:54
@rschristian rschristian force-pushed the fix/glob-entry branch 2 times, most recently from c4ef5dc to 4167d53 Compare October 24, 2025 02:51
Comment on lines +59 to +62
// Now that dirs have been cleared, reset the fixturePath back to the parent dir
if (fixtureDir.endsWith('-with-cwd')) {
fixturePath = resolve(FIXTURES_DIR, fixtureDir);
}
Copy link
Collaborator Author

@rschristian rschristian Oct 24, 2025
edited
Loading

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was super broken & went unnoticed for a long time.

Basically we make the assumption that a test fixture foo-with-cwd is testing --cwd ./foo, and to make sure we were clearing out past runs, set the fixture path to fixtures/foo-with-cwd/foo so that rimraf would clear out all test cases the same way. However, we never set this path back!

When it came time to get the build script & execute it, the CWD was /foo-with-cwd/foo... none of these nested directories actually had a build script defined, as it was meant to come from the parent, and so all of the -with-cwd tests were just running plain microbundle. The build script we provided for our tests was entirely ignored as the test was always ran from the incorrect working dir.

Easy fix though, we just have to reset it.

@rschristian rschristian marked this pull request as ready for review October 24, 2025 03:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

No reviews

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

2 participants

AltStyle によって変換されたページ (->オリジナル) /