feat: publish both CJS and ESM files
This way, users can pick whichever one works for their needs
This commit is contained in:
parent
10e6ecf162
commit
a4b20c1c56
10 changed files with 225 additions and 55 deletions
19
.github/workflows/build.yml
vendored
19
.github/workflows/build.yml
vendored
|
|
@ -186,7 +186,14 @@ jobs:
|
|||
- name: Build wasm library
|
||||
# No reason to build on the same Github runner hosts many times
|
||||
if: ${{ !matrix.no-run && !matrix.use-cross }}
|
||||
run: $BUILD_CMD run -p xtask -- build-wasm
|
||||
shell: bash
|
||||
run: |
|
||||
cd lib/binding_web
|
||||
npm ci
|
||||
CJS=true npm run build
|
||||
CJS=true npm run build:debug
|
||||
npm run build
|
||||
npm run build:debug
|
||||
|
||||
- name: Build target
|
||||
run: $BUILD_CMD build --release --target=${{ matrix.target }} --features=${{ matrix.features }}
|
||||
|
|
@ -236,6 +243,16 @@ jobs:
|
|||
name: tree-sitter.wasm
|
||||
path: |
|
||||
lib/binding_web/tree-sitter.js
|
||||
lib/binding_web/tree-sitter.js.map
|
||||
lib/binding_web/tree-sitter.cjs
|
||||
lib/binding_web/tree-sitter.cjs.map
|
||||
lib/binding_web/tree-sitter.wasm
|
||||
lib/binding_web/tree-sitter.wasm.map
|
||||
lib/binding_web/debug/tree-sitter.cjs
|
||||
lib/binding_web/debug/tree-sitter.cjs.map
|
||||
lib/binding_web/debug/tree-sitter.js
|
||||
lib/binding_web/debug/tree-sitter.js.map
|
||||
lib/binding_web/debug/tree-sitter.wasm
|
||||
lib/binding_web/debug/tree-sitter.wasm.map
|
||||
if-no-files-found: error
|
||||
retention-days: 7
|
||||
|
|
|
|||
37
.github/workflows/release.yml
vendored
37
.github/workflows/release.yml
vendored
|
|
@ -35,6 +35,23 @@ jobs:
|
|||
run: |
|
||||
mkdir -p target
|
||||
mv artifacts/tree-sitter.wasm/* target/
|
||||
|
||||
# Rename files
|
||||
mv target/tree-sitter.js target/web-tree-sitter.js
|
||||
mv target/tree-sitter.js.map target/web-tree-sitter.js.map
|
||||
mv target/tree-sitter.cjs target/web-tree-sitter.cjs
|
||||
mv target/tree-sitter.cjs.map target/web-tree-sitter.cjs.map
|
||||
mv target/tree-sitter.wasm target/web-tree-sitter.wasm
|
||||
mv target/tree-sitter.wasm.map target/web-tree-sitter.wasm.map
|
||||
|
||||
mv target/debug/tree-sitter.js target/web-tree-sitter-debug.js
|
||||
mv target/debug/tree-sitter.js.map target/web-tree-sitter-debug.js.map
|
||||
mv target/debug/tree-sitter.cjs target/web-tree-sitter-debug.cjs
|
||||
mv target/debug/tree-sitter.cjs.map target/web-tree-sitter-debug.cjs.map
|
||||
mv target/debug/tree-sitter.wasm target/web-tree-sitter-debug.wasm
|
||||
mv target/debug/tree-sitter.wasm.map target/web-tree-sitter-debug.wasm.map
|
||||
rm -rf target/debug
|
||||
|
||||
rm -r artifacts/tree-sitter.wasm
|
||||
for platform in $(cd artifacts; ls | sed 's/^tree-sitter\.//'); do
|
||||
exe=$(ls artifacts/tree-sitter.$platform/tree-sitter*)
|
||||
|
|
@ -47,8 +64,18 @@ jobs:
|
|||
run: |-
|
||||
gh release create ${{ github.ref_name }} \
|
||||
target/tree-sitter-*.gz \
|
||||
target/tree-sitter.wasm \
|
||||
target/tree-sitter.js
|
||||
target/web-tree-sitter.js \
|
||||
target/web-tree-sitter.js.map \
|
||||
target/web-tree-sitter.cjs \
|
||||
target/web-tree-sitter.cjs.map \
|
||||
target/web-tree-sitter.wasm \
|
||||
target/web-tree-sitter.wasm.map \
|
||||
target/web-tree-sitter-debug.js \
|
||||
target/web-tree-sitter-debug.js.map \
|
||||
target/web-tree-sitter-debug.cjs \
|
||||
target/web-tree-sitter-debug.cjs.map \
|
||||
target/web-tree-sitter-debug.wasm \
|
||||
target/web-tree-sitter-debug.wasm.map
|
||||
env:
|
||||
GH_TOKEN: ${{ github.token }}
|
||||
|
||||
|
|
@ -91,7 +118,11 @@ jobs:
|
|||
|
||||
- name: Build wasm
|
||||
if: matrix.directory == 'lib/binding_web'
|
||||
run: cargo xtask build-wasm
|
||||
run: |
|
||||
npm run build
|
||||
npm run build:debug
|
||||
CJS=true npm run build
|
||||
CJS=true npm run build:debug
|
||||
|
||||
- name: Publish to npmjs.com
|
||||
working-directory: ${{ matrix.directory }}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue