Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1077 commits
Select commit Hold shift + click to select a range
e12a947
Main function for ParcelV3 and FileSystem implementation (#9758)
alshdavid Jun 3, 2024
abd6c9e
Refactor parcel config (#9766)
MonicaOlejniczak Jun 4, 2024
218217c
Rename plugin files and add debug constraint (#9765)
MonicaOlejniczak Jun 4, 2024
734a0fa
added new crates for plugins and reorganized crates (#9764)
alshdavid Jun 5, 2024
a2789a4
Add native node package manager with resolve support (#9767)
mattcompiles Jun 5, 2024
1daabf5
Sanitise user input in reporter runner (#9757)
Nikola-3 Jun 6, 2024
98a6b8e
Add plugin loading (#9772)
MonicaOlejniczak Jun 6, 2024
5b0f645
Clean-up existing cache entries on overwrite (#9774)
yamadapc Jun 6, 2024
a323b03
Native resolver plugin (#9776)
mattcompiles Jun 7, 2024
466c61e
Added start of rpc implemention for Rust <-> JS plugins (#9777)
alshdavid Jun 7, 2024
13eb201
Update resolver plugin types (#9779)
MonicaOlejniczak Jun 7, 2024
4933651
Added Ping/Pong RPC message circuit for Rust <-> Js plugin interactio…
alshdavid Jun 7, 2024
35e936a
Add path request (#9785)
MonicaOlejniczak Jun 11, 2024
78bf4a9
Add watch logging (#9786)
mattcompiles Jun 11, 2024
1fef06a
Alsh added multiple Nodejs workers and workers RPC (#9787)
alshdavid Jun 13, 2024
f556dd2
Minor transformer plugin changes (#9791)
yamadapc Jun 14, 2024
7728c2e
Replace AHash with xxhash_rust (#9792)
yamadapc Jun 14, 2024
5b72a26
Fix typo in ScopeHoisting.md (#9794)
yamadapc Jun 14, 2024
bcc68e1
Improve JS transformer documentation (#9795)
yamadapc Jun 17, 2024
2ce9b6b
Remove resolver dependency on core (#9793)
MonicaOlejniczak Jun 17, 2024
9eff0bf
Clean-up dfsFast feature-flag (#9797)
yamadapc Jun 17, 2024
2ce4efe
Hide random cache keys under feature-flag (#9804)
yamadapc Jun 18, 2024
53161b4
Improve constant module bundling error message (#9803)
marcins Jun 18, 2024
f02ddc0
Add documentation to dependency_collector.rs (#9805)
yamadapc Jun 18, 2024
07dfb42
V3: Added default thread count and build options (#9798)
alshdavid Jun 18, 2024
747c3a3
Avoid boxing RequestTracker parameters (#9806)
yamadapc Jun 18, 2024
70c6d5f
Parcel V3 - Native asset request (#9808)
mattcompiles Jun 19, 2024
a1b5bee
Rust only JS transformer plug-in (#9800)
yamadapc Jun 20, 2024
bfd336a
Fix naming on create_js_thread_safe_method (#9810)
yamadapc Jun 20, 2024
aad507e
Fix dev packager global reference (#9814)
MonicaOlejniczak Jun 21, 2024
281efd1
Add simple reporting to request tracker (#9811)
MonicaOlejniczak Jun 21, 2024
6c7ded9
V3: Added JsCallable (#9813)
alshdavid Jun 21, 2024
586e590
Refactor transformer (#9815)
yamadapc Jun 21, 2024
43bcef9
Add target request (#9809)
MonicaOlejniczak Jun 21, 2024
b272c52
Bump ws from 7.5.6 to 7.5.10 (#9807)
dependabot[bot] Jun 24, 2024
83fbcdc
Bump pug from 3.0.2 to 3.0.3 (#9753)
dependabot[bot] Jun 24, 2024
d1afc99
Clean-up some APIs and add tracing subscriber into log file (#9817)
yamadapc Jun 25, 2024
1b6b6bf
Add error data into cache bailout logs (#9819)
yamadapc Jun 25, 2024
198519e
Add unit-tests to composite reporter plugin (#9820)
yamadapc Jun 25, 2024
d1e3eee
Bump swc (#9818)
mischnic Jun 25, 2024
bd87fc4
V3: Using JsCallable for worker callbacks (#9822)
alshdavid Jun 26, 2024
b4fcf70
Request tracker multi threading (#9821)
mattcompiles Jun 26, 2024
87c6616
Add diagnostics using anyhow (#9824)
MonicaOlejniczak Jun 28, 2024
cecc439
Add resolver plugin diagnostics (#9825)
MonicaOlejniczak Jul 1, 2024
7ae35de
Fix building parcel with a debug build of itself (#9829)
yamadapc Jul 2, 2024
31cff68
Remove SWC fold from globals replacer (#9830)
yamadapc Jul 3, 2024
909a728
Use diagnostics in config (#9833)
MonicaOlejniczak Jul 8, 2024
42ffd8a
Add changes required for AssetGraphRequest (#9835)
MonicaOlejniczak Jul 9, 2024
725eba8
Revert transactional large blob entries (#9836)
yamadapc Jul 9, 2024
9100a49
Build x86 linux artifacts in debian (#9841)
yamadapc Jul 11, 2024
28a80f9
Fix import usage tracking for destructure defaulting (#9842)
mattcompiles Jul 11, 2024
d1d050a
Bump swc and browserslist-rs (#9838)
mischnic Jul 11, 2024
a8b1887
Bump fast-loops from 1.1.3 to 1.1.4 (#9839)
dependabot[bot] Jul 11, 2024
e05b94d
Update fs and package manager types in config (#9846)
MonicaOlejniczak Jul 12, 2024
372ad34
Try to build without caches on self-build (#9847)
yamadapc Jul 12, 2024
03afd6c
Use debian bullseye to support GLIBC 2.31 (#9849)
yamadapc Jul 15, 2024
83c3cf4
Add initial Rust integration (#9850)
MonicaOlejniczak Jul 17, 2024
3668e97
Add search tests (#9851)
MonicaOlejniczak Jul 17, 2024
e0793ae
Add env replacer based on VisitMut (#9852)
yamadapc Jul 17, 2024
0f4f566
Implement minimal plugin options (#9853)
MonicaOlejniczak Jul 17, 2024
32f5a15
Refactor node replacer to use VisitMut (#9855)
yamadapc Jul 18, 2024
f58a5e8
Add EntryRequest (#9856)
MonicaOlejniczak Jul 19, 2024
ae96448
Cleanup config key invalidation feature for release (#9864)
mattcompiles Jul 23, 2024
3054d8c
Add retriable dynamic imports behind a feature flag (#9860)
alshdavid Jul 23, 2024
29778a2
Fix perf regression in incremental builds (#9867)
benjervis Jul 24, 2024
445b9bc
Add create_directory to file system api (#9868)
MonicaOlejniczak Jul 24, 2024
1012336
Use request context in path request (#9870)
MonicaOlejniczak Jul 25, 2024
b5e176d
Add tests for dependency collector (#9874)
yamadapc Jul 26, 2024
67b6935
Make package.json optional in target request (#9871)
MonicaOlejniczak Jul 26, 2024
7068dd6
Fixed hanging process and tracer (#9866)
alshdavid Jul 29, 2024
7fd97e4
Add native asset graph request (#9872)
mattcompiles Jul 29, 2024
8cc5c8f
Worker thread initialization via JsTransferable (#9861)
alshdavid Jul 30, 2024
5d11f17
Integrate asset graph (#9877)
MonicaOlejniczak Jul 30, 2024
2aac813
Add name to JsCallable for debugging (#9880)
MonicaOlejniczak Jul 30, 2024
2731911
Add asset graph request tests - part 1 of X (#9876)
yamadapc Jul 31, 2024
31ec683
Add native asset graph tests (#9882)
mattcompiles Jul 31, 2024
7c2720f
Fix JsCallable error handling for fs (#9883)
MonicaOlejniczak Jul 31, 2024
abacfa4
Forward missing env and transformer inputs (#9884)
MonicaOlejniczak Aug 1, 2024
808ad6a
Create Parcel V3 javascript integration test suite (#9886)
mattcompiles Aug 1, 2024
6f80bf1
Make changes to try to prevent memory bugs in parcel resolver (#9885)
yamadapc Aug 1, 2024
dc29a25
Add test setup for v3 (#9889)
MonicaOlejniczak Aug 2, 2024
8ab5d07
Native: Update meta forwarding in JS conversion to match JSTransforme…
mattcompiles Aug 2, 2024
de50e27
Improve crash reporting integration (#9892)
yamadapc Aug 5, 2024
4ce0f6e
Fix MUSL canary builds (#9894)
yamadapc Aug 5, 2024
6a8d5e9
Remove CI build step for native builds (#9895)
yamadapc Aug 5, 2024
fcce2ab
Add node.js only parcel watcher watchman back-end (#9789)
yamadapc Aug 6, 2024
1afd7f7
Fix watchman watcher publish (#9898)
mattcompiles Aug 6, 2024
53c5059
Fix small HMR issues affecting usage at scale (#9869)
JakeLane Aug 7, 2024
21bc8d4
Ensure feature flags don't get included in fs build (#9900)
mattcompiles Aug 8, 2024
d599275
Make optimisations to resolver implementation (#9903)
yamadapc Aug 9, 2024
d6a89da
Initiate watchman watch session if not already started (#9906)
mattcompiles Aug 12, 2024
4abdb26
Disable jemalloc on canary macOS builds (#9908)
yamadapc Aug 12, 2024
d840801
Forward tsconfig transformer options (#9910)
MonicaOlejniczak Aug 13, 2024
7ee87f7
Fix completed asset graph edge ordering (#9914)
MonicaOlejniczak Aug 15, 2024
0e08d8c
Only error if versions don't match when versions are set by react-ref…
JakeLane Aug 22, 2024
7228931
Fix crash in EntryRequest with multiple globs in the source field (#9…
devongovett Aug 28, 2024
9c95c1b
Fix another case of parcelRequire being added to multi-target librari…
devongovett Aug 28, 2024
29441fd
v2 Cleanup (#9936)
devongovett Sep 14, 2024
2dccfc5
Revert split manifest runtime bundles (#9955)
devongovett Sep 28, 2024
5a429ac
Revert "Remove src to lib rewrites on package.json files (#9612)"
devongovett Sep 28, 2024
e974f9a
Exclude node bindings from unit tests
devongovett Sep 28, 2024
5ecb131
Fix canary build
devongovett Sep 28, 2024
d1f3ffe
Revert chunked cache blobs (#9965)
devongovett Sep 29, 2024
5b639af
Switch canary back to nightly
devongovett Sep 29, 2024
684b164
Bump SWC to 0.106 (#9967)
devongovett Sep 29, 2024
6f68c78
Update dependencies (#9968)
devongovett Sep 30, 2024
0bebfa6
Handle TypeScript expressions in macro evaluator
devongovett Oct 9, 2024
96d8814
Fix NUL byte crash in resolver (#9640)
devongovett Apr 14, 2024
f304cf5
Migrate to new sass API (#9966)
devongovett Nov 4, 2024
f53f450
Load svgo version from project (#9969)
devongovett Nov 4, 2024
0467893
12x faster resolver cache (#9984)
devongovett Nov 10, 2024
03515cb
Add rust docs for resolver crate (#10002)
devongovett Nov 10, 2024
f93eee7
Add readme to parcel-resolver crate
devongovett Nov 10, 2024
4c6006e
Add resolver benchmark
devongovett Nov 10, 2024
9242243
fix project root path in benchmark
devongovett Nov 10, 2024
2eb9515
Fix tag-release script
devongovett Nov 11, 2024
ba2acea
fix commander again
devongovett Nov 11, 2024
70e6374
Relax sass dependency range
devongovett Nov 12, 2024
584b9b3
upgrade dependencies
devongovett Nov 12, 2024
71acf87
Update svgr and use project svgo version
devongovett Nov 12, 2024
cfd26ec
Bump swc to latest
devongovett Nov 12, 2024
6b8c864
Bump oxipng
devongovett Nov 12, 2024
f32a844
changelog for v2.13.0 (#9859)
devongovett Nov 12, 2024
a53f8f3
v2.13.0
devongovett Nov 12, 2024
79c8d98
Improve HMR (#10017)
devongovett Nov 24, 2024
0da7b63
Update dependencies
devongovett Nov 25, 2024
a820e3b
Fix modern SASS resolution rules (#10018)
devongovett Nov 25, 2024
15c77cb
Update SWC
devongovett Nov 25, 2024
00ebdbd
Changelog for v2.13.1
devongovett Nov 25, 2024
4a297f7
v2.13.1
devongovett Nov 25, 2024
2a6bbc5
Fix non file scheme in SASS
devongovett Nov 25, 2024
bc43a4d
Fix HMR when asset is duplicated between multiple bundles
devongovett Nov 25, 2024
3158de5
Fix typo in hmr runtime
devongovett Nov 25, 2024
4d27ec8
v2.13.2
devongovett Nov 25, 2024
86ca555
Ignore invalid package.json fields (#10053)
devongovett Dec 16, 2024
d19b1f6
v2.13.3
devongovett Dec 16, 2024
ee5f98a
React Server Components (#10043)
devongovett Dec 22, 2024
3a06472
Support running node bundles in dev server (#10055)
devongovett Dec 23, 2024
8a15d0c
Merge React Refresh runtime and transformer (#10056)
devongovett Dec 23, 2024
393f497
Add RSC-based static site generator (#10057)
devongovett Dec 24, 2024
3d91d15
Mark react-static config public
devongovett Dec 31, 2024
1dd802c
docs: typo (#10065)
hai-x Jan 2, 2025
4f3bcaa
Support bundling node native modules (#10066)
devongovett Jan 2, 2025
337c31c
First-class MDX support (#10064)
devongovett Jan 5, 2025
e3a2b72
Automatically inject CSS resources into RSC stream (#10067)
devongovett Jan 7, 2025
ee909d4
Apply HMR updates via node worker thread (#10071)
devongovett Jan 11, 2025
f86f5f2
Add a CLI to create new Parcel apps (#10069)
devongovett Jan 12, 2025
1b46893
Use import maps for bundle manifest (#10073)
devongovett Jan 20, 2025
7eae895
Add RSC wrapper library to simplify server and client (#10074)
devongovett Jan 21, 2025
735a635
Fix @parcel/rsc package
devongovett Jan 21, 2025
53633df
Fix JSX runtime
devongovett Jan 21, 2025
2e67b94
Modernize React error overlay (#10082)
devongovett Feb 2, 2025
b50bc79
Fix error overlay JSX runtime
devongovett Feb 3, 2025
d6a4df3
Fix dev dep request missing 'invalidateOnCreate'
devongovett Feb 3, 2025
1e6f4b3
Bump esbuild from 0.24.0 to 0.25.0 (#10088)
dependabot[bot] Feb 20, 2025
548c70b
Support mixing static and dynamic RSCs (#10093)
devongovett Feb 24, 2025
7de4f6f
Add server actions to client rendered RSC example
devongovett Mar 1, 2025
1ed569c
Ensure importmap relative paths start with ./
devongovett Mar 2, 2025
843c0b6
pre-compile error overlay to avoid duplicate react dependencies
devongovett Mar 3, 2025
5cd9bcc
fix tests
devongovett Mar 3, 2025
e919fad
bump @swc/core
devongovett Mar 3, 2025
9d47995
don't minify error overlay
devongovett Mar 3, 2025
0347d90
disable environment variable replacing in library builds (#10102)
devongovett Mar 8, 2025
a4249c5
Add keys to static React elements
devongovett Mar 8, 2025
0529f29
Fix RSC loading unnecessary bundles (#10104)
devongovett Mar 14, 2025
ee9c3e4
Add napi-wasm as optional peer dependency in @parcel/rust (#10101)
nanokind Mar 14, 2025
d43108c
changelog for v2.14.0
devongovett Mar 18, 2025
2306f8f
v2.14.0
devongovett Mar 18, 2025
801c8eb
Fix MDX in react-static template
devongovett Mar 18, 2025
e2c2a29
fix resolving package self references (#10114)
devongovett Mar 19, 2025
86bddb4
v2.14.1
devongovett Mar 19, 2025
fbcd624
Fix MDX inline assets in static RSCs
devongovett Mar 20, 2025
432ee45
Enable resolving source field in dev dependencies
devongovett Mar 20, 2025
9dec3d8
Fix error overlay resolution in REPL
devongovett Mar 20, 2025
3a566fd
Error when building a library target in serve mode
devongovett Mar 23, 2025
aca7f9c
Fix symbol collection with multiple exports of same function
devongovett Mar 23, 2025
d805305
Fix gitignore in create-parcel
devongovett Mar 23, 2025
02e8fa8
Fix create-parcel on windows
devongovett Mar 23, 2025
5fc9ddc
v2.14.2
devongovett Mar 23, 2025
c2afb4b
Fix gitignore in vanilla template
devongovett Mar 24, 2025
104abbe
bump to react 19.1
devongovett Mar 29, 2025
6e9a485
v2.14.3
devongovett Mar 29, 2025
4246048
Support ESM externals and exports in dev packager
devongovett Mar 29, 2025
f08c0d6
Treat Deno's jsr: dependencies as external
devongovett Mar 29, 2025
82f8c22
update dependencies
devongovett Mar 29, 2025
af39c8a
Fix duplicate bundles error message empty bundle list (#10119)
maxburs Mar 29, 2025
c09fee7
v2.14.4
devongovett Mar 29, 2025
ccd4d46
Handle cloudflare: scheeme and no longer rewrite node: scheme
devongovett Mar 30, 2025
40ebdcd
Include all symbols in non-browser entries
devongovett Mar 30, 2025
3d72dd0
update swc and mdx-rs
devongovett Apr 22, 2025
c7929bf
Add Rust-based transformer/packager/optimizer for HTML and SVG (#10090)
devongovett Apr 27, 2025
34d2fb4
update to latest ubuntu (#10144)
devongovett Apr 28, 2025
d0c8ddd
use cargo-zigbuild for cross compilation (#10145)
devongovett Apr 28, 2025
914335c
setup parcel-core crate (#10143)
devongovett Apr 29, 2025
cd2ffa8
Fix svg optimization bugs
devongovett May 10, 2025
a3e4284
Fix packaging srcset attribute
devongovett May 11, 2025
84a28de
Add missing files to rust package
devongovett May 11, 2025
20d1391
bump oxvg
devongovett May 11, 2025
ef76612
Upgrade to yarn 4
devongovett May 11, 2025
396c394
Create separate rust packages for each architecture
devongovett May 11, 2025
530180a
fix ts build
devongovett May 11, 2025
1083572
fix rust package npm files
devongovett May 11, 2025
8ce8d3f
SVG to JSX fixes
devongovett May 12, 2025
f7d5ffd
Fix exporting objects with non-configurable prototypes from RSCs
devongovett May 12, 2025
1c507d0
upgrade dependencies
devongovett May 12, 2025
43c13ea
v2.15.0
devongovett May 12, 2025
99ada2e
Commit rust index.js
devongovett May 12, 2025
e6fe231
Fix serializing template contents
devongovett May 15, 2025
a12ed0c
Skip optional dependencies in ESM externals
devongovett May 16, 2025
6a9fd4c
v2.15.1
devongovett May 16, 2025
9855f55
Support inline server functions (#10162)
devongovett May 19, 2025
5b71920
fix multiple server actions
devongovett May 19, 2025
c312026
Revert "Support inline server functions (#10162)"
devongovett May 20, 2025
69c0686
do not remove <meta charset="utf-8">
devongovett May 20, 2025
7576cfa
Update oxvg
devongovett May 20, 2025
292ab22
change minimum required glibc version to 2.26 (#10164)
calvinl May 20, 2025
79843ee
Use max level compression for brotli compressor (#10128)
solonovamax May 20, 2025
6820335
Fix resolving source package exports condition from self reference
devongovett May 24, 2025
67e4fe0
Make URL dependencies in MDX files optional
devongovett May 24, 2025
638b12d
Fix memory leak in react-static packager
devongovett May 24, 2025
a993f98
Cache inline bundle packaging
devongovett May 24, 2025
afc86c2
Use stable id for package requests
devongovett May 24, 2025
2ddc801
bump minimum to node 20
devongovett May 24, 2025
b66f371
v2.15.2
devongovett May 24, 2025
a6945b6
expose code location to MacroContext (#10171)
snowystinger May 28, 2025
3405c22
Invalidate cache in ReactStaticPackager when pages are added or clien…
devongovett Jun 7, 2025
a76b47e
Fix lazy mode with React Server Components
devongovett Jun 7, 2025
d948759
fix unit tests
devongovett Jun 7, 2025
9cb4b86
Fix @parcel/rsc duplicate types
devongovett Jun 20, 2025
a90f06a
Ensure publicUrl ends with a slash in react-static packager
devongovett Jun 20, 2025
4c3226f
Fix hash reference replacement in react-static packager
devongovett Jun 20, 2025
ac07c09
v2.15.3
devongovett Jun 20, 2025
75aa631
fix flow
devongovett Jun 20, 2025
95c542f
Fix extension check
devongovett Jun 20, 2025
dadcead
v2.15.4
devongovett Jun 20, 2025
cb9de9d
Code split re-exports when using non-scope hoisting packager (#10207)
devongovett Aug 30, 2025
393d55d
Scope macro asset unique keys to the parent asset (#10215)
devongovett Sep 18, 2025
85181f7
v2.16.0
devongovett Sep 18, 2025
4b81891
Fix macro location information (#10224)
snowystinger Oct 23, 2025
cc19cca
Improve performance of RSC builds (#10233)
devongovett Nov 5, 2025
9f01c02
v2.16.1
devongovett Nov 5, 2025
546e941
Bump react-server-dom-parcel from 19.1.0 to 19.1.2 (#10244)
dependabot[bot] Dec 6, 2025
13904ab
RSC fixes (#10245)
devongovett Dec 6, 2025
7689f7d
Bump node-forge from 1.3.1 to 1.3.2 (#10242)
dependabot[bot] Dec 6, 2025
ee7026d
Preserve siblings after <svg> (#10234)
TjeuKayim Dec 6, 2025
44a1121
v2.16.2
devongovett Dec 6, 2025
b270626
Fix react-dom import
devongovett Dec 6, 2025
73f691d
v2.16.3
devongovett Dec 6, 2025
9e2f6f1
Add --no-cors option (#10268)
devongovett Feb 2, 2026
5948485
v2.16.4
devongovett Feb 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
14 changes: 4 additions & 10 deletions .cargo/config.toml
Original file line number Diff line number Diff line change
@@ -1,11 +1,5 @@
[target.arm-unknown-linux-gnueabihf]
linker = "arm-linux-gnueabihf-gcc"
[target.'cfg(target_env = "gnu")']
rustflags = ["-C", "link-args=-Wl,-z,nodelete"]

[target.armv7-unknown-linux-gnueabihf]
linker = "arm-linux-gnueabihf-gcc"

[target.aarch64-unknown-linux-gnu]
linker = "aarch64-linux-gnu-gcc"

[target.aarch64-unknown-linux-musl]
linker = "aarch64-linux-musl-gcc"
[target.wasm32-unknown-unknown]
rustflags = ["-C", "link-arg=--export-table"]
38 changes: 38 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/rust
{
"name": "Rust",
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
"image": "mcr.microsoft.com/devcontainers/rust:1-1-bullseye",
"features": {
"ghcr.io/devcontainers/features/node:1": {
"nodeGypDependencies": true,
"version": "18",
"nvmVersion": "latest"
}
}

// Use 'mounts' to make the cargo cache persistent in a Docker Volume.
// "mounts": [
// {
// "source": "devcontainer-cargo-cache-${devcontainerId}",
// "target": "/usr/local/cargo",
// "type": "volume"
// }
// ]

// Features to add to the dev container. More info: https://containers.dev/features.
// "features": {},

// Use 'forwardPorts' to make a list of ports inside the container available locally.
// "forwardPorts": [],

// Use 'postCreateCommand' to run commands after the container is created.
// "postCreateCommand": "rustc --version",

// Configure tool-specific properties.
// "customizations": {},

// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
// "remoteUser": "root"
}
3 changes: 2 additions & 1 deletion .eslintignore
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ packages/*/*/test/integration/**
packages/*/*/test/mochareporters.json
packages/core/integration-tests/test/input/**
packages/core/utils/test/input/**
packages/utils/fs-write-stream-atomic/**
packages/utils/create-react-app/templates
packages/utils/create-parcel-app/templates
packages/examples

# Generated by the build
Expand All @@ -20,6 +20,7 @@ dist
/test/dist
/test/input
*.min.js
packages/core/rust/index.js

coverage
node_modules
Expand Down
5 changes: 4 additions & 1 deletion .flowconfig
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,15 @@
.*/node_modules/@choojs/**/.*
.*/node_modules/config-chain/.*
.*/node_modules/graphviz/documentation.json
.*/node_modules/resolve/test/**/.*
<PROJECT_ROOT>/.nyc_output/.*
.*/tmp/**/.*
.*/.parcel-cache/.*
<PROJECT_ROOT>/packages/core/integration-tests/dist/**
<PROJECT_ROOT>/packages/core/integration-tests/test/input/**
<PROJECT_ROOT>/packages/core/integration-tests/test/integration/babel-strip-flow-types/**
<PROJECT_ROOT>/packages/core/integration-tests/test/integration/diagnostic-sourcemap/**
<PROJECT_ROOT>/packages/utils/node-resolver-core/test/fixture/node_modules/json-error/package.json

[untyped]
.*/node_modules/graphql/error/GraphQLError.js.flow
Expand All @@ -25,6 +27,7 @@ untyped-type-import=error
[options]
module.system.node.main_field=source
module.system.node.main_field=main
react.runtime=automatic

[strict]
nonstrict-import
Expand All @@ -36,4 +39,4 @@ untyped-import
untyped-type-import

[version]
0.153.0
0.184.0
12 changes: 12 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for more information:
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
# https://containers.dev/guide/dependabot

version: 2
updates:
- package-ecosystem: "devcontainers"
directory: "/"
schedule:
interval: weekly
21 changes: 21 additions & 0 deletions .github/workflows/canary-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# This workflow builds and releases all packages on the main branch with a canary
# dist tag. These packages contain changes that are not yet available in a publicly
# released version of Parcel.
name: canary-release

on:
schedule:
- cron: '0 0 * * *'
workflow_dispatch:

jobs:
build-and-release:
name: Build and release canary
uses: ./.github/workflows/release.yml
secrets: inherit
with:
profile: canary
release-command: |
yarn canary:release --summary-file
node scripts/tag-release.mjs --tag nightly
type: canary
195 changes: 195 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,195 @@
name: Continuous Integration

on:
merge_group:
pull_request:
push:
branches:
- v2

permissions:
contents: read

jobs:
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
cache: yarn
- uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
components: rustfmt
- run: yarn --immutable
- run: yarn lint

flow:
name: Flow
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
cache: yarn
- run: yarn --immutable
- run: yarn flow check

ts-types:
name: TypeScript types
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
cache: yarn
- run: yarn --immutable
- run: yarn build-ts

benchmarks:
name: Benchmarks
runs-on: ubuntu-latest
steps:
- name: PR Benchmarks
uses: parcel-bundler/parcel-benchmark-action@master
env:
PARCEL_BENCHMARK_APIKEY: ${{ secrets.PARCEL_BENCHMARK_APIKEY }}

unit_tests:
name: Unit tests (${{ matrix.os }}, Node ${{ matrix.node }})
strategy:
matrix:
node: [20, 22]
os: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
cache: yarn
node-version: ${{ matrix.node }}
- uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
- uses: Swatinem/rust-cache@v2
with:
shared-key: ${{ matrix.os }}
- name: Bump max inotify watches (Linux only)
if: ${{ runner.os == 'Linux' }}
run: echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p;
- run: yarn --immutable
- run: yarn build-native-release
- run: yarn test:unit
- name: Upload @parcel/rust artifacts on Linux with Node v20
if: ${{ runner.os == 'Linux' && matrix.node == 20 }}
uses: actions/upload-artifact@v4
with:
name: Rust Linux Binaries
path: |
packages/core/rust/index.d.ts
packages/core/rust/index.js
packages/core/rust/*.node

integration_tests:
name: Integration tests (${{ matrix.os }}, Node ${{ matrix.node }})
strategy:
matrix:
node: [20, 22]
os: [ubuntu-latest, macos-latest, windows-latest]
# These tend to be quite flakey, so one failed instance shouldn't stop
# others from potentially succeeding
fail-fast: false
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
cache: yarn
node-version: ${{ matrix.node }}
- uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
- uses: Swatinem/rust-cache@v2
with:
shared-key: ${{ matrix.os }}
- name: Bump max inotify watches (Linux only)
run: echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p;
if: ${{ runner.os == 'Linux' }}
- run: yarn --immutable
- run: yarn build-native-release
- run: yarn build
- run: yarn test:integration-ci

# Deployment steps taken from https://github.com/colinwilson/static-site-to-vercel/blob/master/.github/workflows/deploy-preview.yml
repl_build:
name: Build REPL
if: ${{ github.event_name == 'pull_request' }}
runs-on: ubuntu-latest
permissions:
deployments: write
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
cache: yarn
node-version: 20
- uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
targets: wasm32-unknown-unknown
- name: Install wasm-opt
run: |
curl -L -O https://github.com/WebAssembly/binaryen/releases/download/version_116/binaryen-version_116-x86_64-linux.tar.gz
tar -xf binaryen-version_116-x86_64-linux.tar.gz
echo "$PWD/binaryen-version_116/bin" >> $GITHUB_PATH
- uses: Swatinem/rust-cache@v2
with:
key: wasm
- name: Bump max inotify watches
run: echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p;
- run: yarn --immutable
- name: Build native packages
run: yarn build-native-release
- run: yarn build
- run: yarn build-native-wasm
- run: yarn workspace @parcel/repl build
# - name: Upload REPL
# uses: actions/upload-artifact@v4
# with:
# name: REPL
# path: 'packages/dev/repl/dist'
- name: Start Deployment
uses: bobheadxi/deployments@v1
id: deployment
with:
step: start
token: ${{ secrets.GITHUB_TOKEN }}
ref: ${{ github.head_ref }}
env: Preview
override: false
- name: Deploy to Vercel
uses: amondnet/vercel-action@v25
id: vercel-action
with:
vercel-token: ${{ secrets.REPL_VERCEL_TOKEN }}
vercel-org-id: ${{ secrets.REPL_VERCEL_ORG_ID }}
vercel-project-id: ${{ secrets.REPL_VERCEL_PROJECT_ID }}
github-comment: false
working-directory: packages/dev/repl
# vercel-args: '--prod'
scope: parcel
alias-domains: |
pr-{{PR_NUMBER}}.repl.parceljs.org
- name: Update Deployment Status
uses: bobheadxi/deployments@v1
if: always()
with:
step: finish
token: ${{ secrets.GITHUB_TOKEN }}
env: Preview
override: false
status: ${{ job.status }}
deployment_id: ${{ steps.deployment.outputs.deployment_id }}
env_url: ${{ steps.vercel-action.outputs.preview-url }}
17 changes: 17 additions & 0 deletions .github/workflows/dev-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# This workflow builds and releases all packages with a dev dist tag. Once published,
# the packages can be installed to streamline the testing and validation of changes, both
# locally and within CI, that have not yet been approved or merged into the main branch.
name: dev-release

on:
workflow_dispatch:

jobs:
build-and-release:
name: Build and release dev
uses: ./.github/workflows/release.yml
secrets: inherit
with:
profile: canary
release-command: yarn dev:release
type: dev
13 changes: 0 additions & 13 deletions .github/workflows/main.yml

This file was deleted.

Loading