+
Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
3671 commits
Select commit Hold shift + click to select a range
8def213
Fix core build
rossberg Apr 15, 2025
6201cbd
Rename watsup to spectec (#161)
rossberg Apr 15, 2025
16f3850
Support alternate signs; elaborated away in IL
rossberg Apr 22, 2025
09781fc
Merge pull request #162 from Wasm-DSL/sign
rossberg Apr 22, 2025
6e3f5b9
Bump Sphinx version
rossberg Apr 22, 2025
ec1cc3f
Bump another Sphinx version
rossberg Apr 22, 2025
7f41dea
[spec] Bump copyright date (#1896)
micttyoid Apr 25, 2025
c52f150
Merge branch 'main' into wasm-3.0
rossberg Apr 25, 2025
3e05cbf
Merge remote-tracking branch 'exn/main' into wasm-3.0
rossberg Apr 25, 2025
2e2f98a
Merge branch 'upstream'
rossberg Apr 25, 2025
43f2f1a
Fix typo in testharness.js
Ms2ger Apr 21, 2025
dd4df63
Internalise half/zero flags into vcvtop
rossberg Apr 30, 2025
033ee4d
Merge pull request #164 from Wasm-DSL/fix.vcvtop
rossberg May 1, 2025
7f3437d
Fix EXNREF
ShinWonho May 2, 2025
4d1a10c
Testpromote
f52985 May 2, 2025
9e08b9b
[test] Add select 128 testcase (#1899)
Zzzabiyaka May 3, 2025
ea3e55e
[interpreter] Update build instructions
rossberg May 7, 2025
1e8f1da
Merge branch 'main' into wasm-3.0
rossberg May 7, 2025
ec47146
Fix typo
ShinWonho May 7, 2025
be87b42
Add missing case
ShinWonho May 7, 2025
90887f3
Make testpromote
ShinWonho May 8, 2025
5037555
Make testpromote
ShinWonho May 8, 2025
03ed421
[spec] Remove data segments from refs set
rossberg May 8, 2025
28c3c7a
[spec] Fix informal description of select's type annotation
rossberg May 9, 2025
50a465f
[interpreter] Support wrapping fancy function types in JS translation…
rossberg May 10, 2025
7aae84f
Merge branch 'main' into wasm-3.0
rossberg May 10, 2025
343e2f3
Merge branch 'upstream'
rossberg May 10, 2025
8f82aa6
[test] Add test for passive data syntax (#1905)
f52985 May 13, 2025
8d6792e
[test] Remove unintended errors in negative tests (#1904)
YerinAlexey May 13, 2025
4086224
[spec] Backport fix closing module types
rossberg May 15, 2025
abc8d16
[spec] Update 3.0 version draft
rossberg May 15, 2025
677faab
Fix layout of setproduct
rossberg May 15, 2025
6836f6d
Text expects
rossberg May 15, 2025
a7b7ac5
[spec] Describe backwards-compatibility and reserve 0xFF opcode (#1900)
rossberg May 20, 2025
c022fb1
[test] Test that 0xff is treated as an invalid opcode (#1910)
sunfishcode May 20, 2025
f8b0228
Merge branch 'upstream'
rossberg May 20, 2025
3c2c6ee
[spec/test] Relax relaxed_trunc semantics (#1906)
rossberg May 26, 2025
95fa5b3
[interpreter] opam release 2.0.2
rossberg May 27, 2025
a0a8df7
[spec] Fix typo in data segment text format (#1916)
keithw Jun 6, 2025
e3a6e6b
[test] Update async_index.js and sync_index.js (#1917)
dschuff Jun 11, 2025
bb29a9a
[spec] Handle block parameters more explicitly in execution prose
rossberg Jun 16, 2025
f662609
Fix quoting of strings
rossberg Jun 17, 2025
50139ec
Merge branch 'main' into wasm-3.0
rossberg Jun 17, 2025
dfad2cd
Workaround Bikeshed syntax clobbering
rossberg Jun 17, 2025
187f5c2
Workaround attempt 2 for Bikeshed syntax clobbering
rossberg Jun 17, 2025
ccafc61
Workaround attempt 3 for Bikeshed syntax clobbering
rossberg Jun 17, 2025
53aa814
[spec] Added a missing iteration (#1926)
4y8 Jun 18, 2025
aca0881
[spec] Fix markup (#1928)
4y8 Jun 18, 2025
d24872f
[spec] Add missing addrtype in memory type validation (#1933)
taichimaeda Jun 22, 2025
1939d97
[bikeshed] Fix Bikeshed patch-up script and add debugging aids (#1929)
rossberg Jun 23, 2025
c224086
Merge branch 'main' into wasm-3.0
rossberg Jun 23, 2025
392464a
Makefile tweak
rossberg Jun 23, 2025
c5a8695
Merge branch 'upstream'
rossberg Jun 23, 2025
00563b1
[spec] Added a missing asterisk (#1934)
4y8 Jun 23, 2025
6faed61
[test] Update bits used for malformed memory/table/global flags (#1936)
alexcrichton Jun 24, 2025
7c48a0b
[spec] Fix some Latex layout errors (#1935)
rossberg Jun 24, 2025
1041527
[spec] Conventions for "large productions" (#1937)
vursc Jun 24, 2025
e40554f
[spec] Fix typo in validation of call_ref (#1939)
4y8 Jun 24, 2025
35f8833
Sync validation rule for br_on_non_null
rossberg Jun 24, 2025
b0aa23f
[interpreter/spec] Consistent nullability for br_on_non_null (#1940)
rossberg Jun 24, 2025
3b3d7aa
[spec] Fixed typos regarding blocktypes (#1941)
4y8 Jun 25, 2025
fc2e54b
Fix assertion glitch
f52985 Jun 24, 2025
c8413b9
Extract frame(and other contexts) to var name using a helper function
f52985 Jun 24, 2025
31846d0
Handle direct state mutation
f52985 Jun 24, 2025
c42f626
Remove trivial renamings
f52985 Jun 25, 2025
39102c8
Allow enablding debug-log via command line
rossberg Jun 26, 2025
c48078c
Fix CI
rossberg Jun 27, 2025
b7554b6
[interpreter] Fix custom branch hints for try_table
rossberg Jun 28, 2025
0956e09
Make tag representation more consistent; consistent ordering
rossberg Jun 30, 2025
59f4bb7
[backend-prose] Make handling of config more robust
rossberg Jul 2, 2025
e69cee1
[test] Add syntax and scoping tests for type rec (#1944)
rossberg Jul 2, 2025
d801d29
Merge `main` into `wasm-3.0` (#1945)
alexcrichton Jul 2, 2025
fe76fa6
Merge if statements into else branch
f52985 Jun 30, 2025
edf779b
Refactor translation to if and assert statements
f52985 Jul 1, 2025
0034fa4
Remove obsolete TODO from doc
f52985 Jul 1, 2025
88bfdc4
Translate subgroups as prose
f52985 Jul 3, 2025
a977073
Hack for prose rendering regarding lsize
f52985 Jul 3, 2025
5c1dd17
Remove TODO from doc
f52985 Jul 3, 2025
ad088cd
Refactor trap
f52985 Jul 3, 2025
b67ccab
Remove return_call_ref todo
f52985 Jul 3, 2025
9796bef
Fix typo
rossberg Jul 3, 2025
d199c57
Merge branch 'main' into config-relax
rossberg Jul 3, 2025
8e44461
[backend-prose] Make handling of config more robust
rossberg Jul 3, 2025
d82f7ac
Properly handle command errors
rossberg Jul 3, 2025
f2f5d11
[spec] Move misplaced rule
rossberg Jul 4, 2025
774f32e
Overhaul interpreter AST
rossberg Jun 24, 2025
10c73e6
Overhaul interpreter type AST
rossberg Jun 24, 2025
df117cc
Rename source pos to loc
rossberg Jun 27, 2025
ffbb466
Group numeric conversion modules
rossberg Jun 27, 2025
a667285
Rename vector ops
rossberg Jun 27, 2025
94931ec
Factor out sx and half
rossberg Jun 27, 2025
876da6d
Rename Operators to Mnemonics
rossberg Jun 27, 2025
6c2cd9b
Tweak stringification
rossberg Jun 28, 2025
d499afc
Refactor syntax of type uses and imports/exports
rossberg Jun 29, 2025
e434c34
Vaidation returns module type
rossberg Jun 29, 2025
d0eee4a
Consistent ordering
rossberg Jun 29, 2025
981f45f
Remove forward guess in allocmodule function
f52985 Jul 4, 2025
123eb02
Fix remaining interpreter issues
rossberg Jul 5, 2025
b693f17
Merge branch 'main' into reorder
rossberg Jul 5, 2025
d79e5c8
Make tag representation more consistent; consistent ordering (Wasm-DS…
rossberg Jul 5, 2025
a87fffc
Merge branch 'upstream'
rossberg Jul 6, 2025
5f5cfa8
Fix merge accident
rossberg Jul 6, 2025
50c2e8e
[interpreter] Backmerge some tweaks from SpecTec fork
rossberg Jul 6, 2025
57ffe3e
Adjust test expects
rossberg Jul 6, 2025
05edd2d
Remove wrong render: 'the context s'
f52985 Jul 7, 2025
7d55fb7
[interpreter] Tweak AST
rossberg Jul 6, 2025
7da7b6b
[interpreter] Clean up packed num types
rossberg Jul 7, 2025
abd25d9
Adjust spectec interpreter
rossberg Jul 7, 2025
1eb3dee
Adjust unit test
rossberg Jul 7, 2025
c0cbdde
Tweak externtype definition
rossberg Jul 7, 2025
c216c8c
Simplify var name
f52985 Jul 8, 2025
2fdc3bf
Enable omitting the prosepp
f52985 Jul 8, 2025
514220f
Enable hint overwriting for prose
f52985 Jul 9, 2025
f42f59e
Remove redundant assertion for br
f52985 Jul 9, 2025
0046994
Make testpromote
f52985 Jul 9, 2025
de5c235
[spec] Order types consistently
rossberg Jul 9, 2025
08530fb
Make tagtype consistent
rossberg Jul 9, 2025
eb9e137
[spec] Consistent ordering for modules
rossberg Jul 10, 2025
f1722f2
Flatten composite types; several adjustments in Properties section
rossberg Jul 11, 2025
6fb6ca8
[spectec] Require explicit declaration of builtins; adjust all specs
rossberg Jul 12, 2025
97e53b4
Fix typos in docs
rossberg Jul 12, 2025
1a4e668
[spectec] Require explicit declaration of builtins
rossberg Jul 12, 2025
923adfe
Fix type index table's layout
rossberg Jul 12, 2025
4133b27
Require declaration of inverses
rossberg Jul 12, 2025
0f3d5fa
Fix some corss references in spec
rossberg Jul 12, 2025
8094396
Fix hyperlinks
rossberg Jul 12, 2025
44790f6
Eliminate false inverses
rossberg Jul 13, 2025
fc7a735
Rename Builtins module to Host to avoid confusion with builtin functions
rossberg Jul 13, 2025
90d6ded
Merge branch 'main' into inverse
rossberg Jul 13, 2025
a45eaf8
Implement idiv/rem/min/max in source
rossberg Jul 13, 2025
3302f34
Merge branch 'main' into inverse
rossberg Jul 13, 2025
3749d9a
Remove unnecessary rebinding in validation rules
f52985 Jul 10, 2025
bc29a5e
Simplify variable names
f52985 Jul 14, 2025
9be8f80
Merge pull request #174 from Wasm-DSL/inverse
rossberg Jul 14, 2025
ffe86ac
Fix rendering glitches
f52985 Jul 14, 2025
9c06493
Merge redundant branches
f52985 Jul 14, 2025
e56d644
Port text format to SpecTec, pt 1
rossberg Jul 13, 2025
3d378d9
Some internal renamings
rossberg Jul 14, 2025
7b432c6
Fix handling of parameters in dimension inference
rossberg Jul 14, 2025
33648df
Add missing relaxed_laneselect instructions to binary format
rossberg Jul 14, 2025
ca3d533
Various updates and fixes to spec doc
rossberg Jul 14, 2025
905eea6
Test updates
rossberg Jul 14, 2025
4f0daec
Avoid OCaml 5 library function
rossberg Jul 14, 2025
7bf6816
Adjust use of END
rossberg Jul 16, 2025
b25640b
[spec] Update the instruction index for memory64 (#1948)
4y8 Jul 16, 2025
d46e0b1
Remove sidecondition for same-length
f52985 Jul 15, 2025
8b8b391
Refactor postprocessing of prose
f52985 Jul 16, 2025
d3d6b18
Finetuning for handling ForallS
f52985 Jul 16, 2025
1eeae63
Refactor prose hint
f52985 Jul 18, 2025
43b1edd
Refactor rendering of ExtE
f52985 Jul 18, 2025
37bed7d
Port text format to SpecTec, pt 1
rossberg Jul 13, 2025
3d81df7
Text format values & types
rossberg Jul 13, 2025
bd0eecf
Instructions & modules
rossberg Jul 14, 2025
162fee4
Fix merge
rossberg Jul 14, 2025
ddec578
Lexical syntax
rossberg Jul 16, 2025
410d525
Make shorthand grammars work; improve test deps
rossberg Jul 18, 2025
6802be0
More hacks to treat singleton strings as characters
rossberg Jul 18, 2025
95e0b78
Remove dead binding from validation prose
f52985 Jul 18, 2025
4ce042a
Reorder stmts
f52985 Jul 21, 2025
2d4d620
Rename type names
f52985 Jul 21, 2025
3ed2014
Implement grammar range short-hand
rossberg Jul 22, 2025
d812371
Apply prose hint for state mutating functions
f52985 Jul 22, 2025
c0c52cb
Add more prose hints
f52985 Jul 22, 2025
7d6318f
Do not use Ocaml 5.1 function
f52985 Jul 22, 2025
41ca9cb
Make testpromote
f52985 Jul 22, 2025
a376c2e
Remove redundant binding for IterE
f52985 Jul 22, 2025
391e73a
Wasm 2.0 spec fixes - adjusting partial hints where needed, and fixin…
DCupello1 Jul 22, 2025
f3fd475
change inv_jsize to not use inv_isize, and made opt_ partial
DCupello1 Jul 22, 2025
404b4bc
Wasm 2.0 spec fixes - non-exhaustive pattern matching
rossberg Jul 22, 2025
b42dae9
Remove manual prose for module instantiation
rossberg Jul 23, 2025
454c446
[test] Move exception tests to their own dirs and activate bulk64 tes…
rossberg Jul 24, 2025
c840c58
[interpreter] Add wast locations to JS-converted test cases (#1919)
dschuff Jul 25, 2025
825da83
Order instructions consistently
rossberg Jul 25, 2025
7ddfe8f
[spec] Fix field renaming inconsistency (#1952)
merkw42 Jul 25, 2025
d686d88
Fix test expect
rossberg Jul 25, 2025
cfc0fc0
Implement abbrev grammar syntax; module-level abbreviations
rossberg Jul 29, 2025
056030c
Modules text format
rossberg Jul 29, 2025
4048666
Test expect
rossberg Jul 29, 2025
d1f8edb
[test] Test implicit type use vs rec type
rossberg Jul 30, 2025
0686eb6
--amend
rossberg Jul 30, 2025
9a07512
Minor tweaks
rossberg Jul 30, 2025
46cfb88
Remaining text todos
rossberg Jul 30, 2025
45a9e66
Unroll loop in allocmodule
f52985 Jul 31, 2025
a960d62
Add new auxiliary function: is_packtype
f52985 Jul 31, 2025
786191a
Remove type for rendering RelS
f52985 Aug 4, 2025
99587f6
Merge option iters and IsDefinedE
f52985 Aug 5, 2025
53e89d1
SpecTec text format: lexical, values
rossberg Aug 5, 2025
5297b1a
Port Text conventions to SpecTec
rossberg Aug 5, 2025
d8c2a19
Port text format for types ot SpecTec
rossberg Aug 5, 2025
aca2689
Expand iters into loop
f52985 Aug 6, 2025
7d78a8a
Simplify record access
f52985 Aug 6, 2025
51f3b33
Refactor
f52985 Aug 7, 2025
a30df87
Typeset context variables
f52985 Aug 7, 2025
6b2a1aa
Refactor GetCurContextE
f52985 Aug 7, 2025
7cac282
Refactor introducing frame variable
f52985 Aug 8, 2025
6bb156b
Refactor prose render
f52985 Aug 8, 2025
dfe6828
Remove dead pop && push of frame
f52985 Aug 8, 2025
96b726f
Remove unnecessary variable binding during popping a context
f52985 Aug 11, 2025
4ecd723
Rename duplicated frame variables
f52985 Aug 11, 2025
4217d9a
Make error message more explicit for inconsistent use of reduction rules
f52985 Aug 19, 2025
fffc6e1
[simd] Add additional test input for i32x4.dot_i16x8_s (#1955)
titzer Aug 28, 2025
71e467f
Remove obsolete OptV from CALL_REF / RETURN_CALL_REF
f52985 Aug 29, 2025
91aeeae
Err on duplicate secondary names
rossberg Sep 2, 2025
6797f63
Fix build
rossberg Sep 2, 2025
adfb376
Prevent assertion failure in Dim
rossberg Sep 3, 2025
698f9ac
Bar BOT-typed locals in 2.0
rossberg Sep 8, 2025
11f7c49
Fix bug in IL reduction
rossberg Sep 8, 2025
177ae45
Fix typo in
rossberg Sep 9, 2025
2dc4129
A few layout tweaks
rossberg Sep 10, 2025
9f15cf8
Upgrade to MathJax 4 and use \allowbreak
rossberg Sep 10, 2025
a3c0101
Test expect
rossberg Sep 10, 2025
87a61ac
Separate tests for memory-related proposals into directories/files (#…
dschuff Sep 10, 2025
50774b5
[js-api] Use "matches" for exnref checks for clarity (#1912)
bvisness Sep 11, 2025
a8f94ea
Merge js-string-builtins into wasm-3.0 (#1943)
eqrion Sep 11, 2025
89e549c
[js-api] Update for resizable buffer integration (#1961)
eqrion Sep 11, 2025
3ce97ad
[js-api] Editorial: fix cross-references (#1962)
Ms2ger Sep 11, 2025
05e2fc9
Fix Web API document title
dschuff Sep 13, 2025
9aa45e8
Merge branch 'main' into wasm-3.0
rossberg Sep 16, 2025
201e8f8
Merge branch 'upstream'
rossberg Sep 16, 2025
cee9794
Test expects
rossberg Sep 16, 2025
9fdd94b
Revert limits max to option
rossberg Sep 17, 2025
80b7da4
Fix doc
rossberg Sep 17, 2025
7a510ff
Fix escape
rossberg Sep 17, 2025
d7aada5
Update testharness.js from upstream.
Ms2ger Aug 21, 2025
4541949
Ported type family removal pass from MIL
DCupello1 Sep 30, 2025
74d752f
Port text format for instructions
rossberg Oct 1, 2025
8def55f
Generated projection functions for each type family instance.
DCupello1 Oct 1, 2025
cc8a6a3
Text format for modules
rossberg Oct 2, 2025
e920cee
Merge branch 'upstream'
rossberg Oct 2, 2025
5cf8e64
Fix tt again
rossberg Oct 2, 2025
f196249
Fix xrefs
rossberg Oct 2, 2025
0022a6b
Created chains that lead from the real type to the expected type. Imp…
DCupello1 Oct 3, 2025
8f073e8
Refactor: simplified exp transformation by making it only do conversi…
DCupello1 Oct 3, 2025
3454ac5
Made family constructors actually expose the binded variables as case…
DCupello1 Oct 3, 2025
d834aae
Some more cleanup. Made it so generation of conversion functions is d…
DCupello1 Oct 3, 2025
ddcf475
Fixed potential issue with families with one instance being applied o…
DCupello1 Oct 5, 2025
b502003
Added a simplification operation to the conversion chain.
DCupello1 Oct 5, 2025
b3baeb4
Fixed simplification to now work both ways. Move generation of projec…
DCupello1 Oct 5, 2025
0c213c3
Some extra fixes on iteration typing to make rocq code compile.
DCupello1 Oct 6, 2025
27adcb7
Cleanup and added description to pass.
DCupello1 Oct 7, 2025
dd677fa
Added small totalize fix to make wasm 2.0 validate.
DCupello1 Oct 7, 2025
0aa54d4
Improved naming of constructor and projection functions to use the ca…
DCupello1 Oct 7, 2025
502a325
Renaming some functions and types.
DCupello1 Oct 7, 2025
730503d
Small tweak on BinE and UnE real types.
DCupello1 Oct 8, 2025
26d354c
Modifying Pnn and Inn to be aliases of packtype and addrtype, respect…
DCupello1 Oct 8, 2025
2192553
fix test.md
DCupello1 Oct 8, 2025
3f8737f
Update check_type
f52985 Oct 13, 2025
e948b47
fix TEST.md for other tests
DCupello1 Oct 13, 2025
7b93476
Merge branch 'main' into typefamily-removal-pass
DCupello1 Oct 13, 2025
d6b06e7
Merge pull request #186 from DCupello1/typefamily-removal-pass
rossberg Oct 17, 2025
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
  •  
  •  
  •  
18 changes: 9 additions & 9 deletions .github/workflows/ci-interpreter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@ name: CI for interpreter & tests

on:
push:
branches: [ main ]
paths: [ interpreter/**, test/** ]
branches: [ main, wasm-3.0 ]
paths: [ .github/**, interpreter/**, test/** ]

pull_request:
branches: [ main ]
paths: [ interpreter/**, test/** ]
branches: [ main, wasm-3.0 ]
paths: [ .github/**, interpreter/**, test/** ]

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
Expand All @@ -17,20 +17,20 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v2
uses: actions/checkout@v4
- name: Setup OCaml
uses: ocaml/setup-ocaml@v2
uses: ocaml/setup-ocaml@v3
with:
ocaml-compiler: 4.14.x
- name: Setup OCaml tools
run: opam install --yes ocamlfind.1.9.5 js_of_ocaml.4.0.0 js_of_ocaml-ppx.4.0.0
- name: Setup Node.js
uses: actions/setup-node@v2
uses: actions/setup-node@v4
with:
node-version: 19.x
node-version: 20.x
- name: Build interpreter
run: cd interpreter && opam exec make
- name: Run tests
# TODO: reactiate node once it supports all of Wasm 3.0
# TODO: reactivate node once it supports all of Wasm 3.0
# run: cd interpreter && opam exec make JS=node ci
run: cd interpreter && opam exec make ci
136 changes: 114 additions & 22 deletions .github/workflows/ci-spec.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@ name: CI for specs

on:
push:
branches: [ main ]
paths: [ document/** ]
branches: [ main, wasm-3.0 ]
paths: [ .github/**, document/**, spectec/** ]

pull_request:
branches: [ main ]
paths: [ document/** ]
branches: [ main, wasm-3.0 ]
paths: [ .github/**, document/**, spectec/** ]

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
Expand All @@ -17,33 +17,33 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
submodules: "recursive"
- name: Setup OCaml
uses: ocaml/setup-ocaml@v2
uses: ocaml/setup-ocaml@v3
with:
ocaml-compiler: 4.14.x
- name: Setup Dune
run: opam install --yes dune menhir mdx && opam exec dune --version
run: opam install --yes dune menhir mdx zarith && opam exec dune --version
- name: Setup Node.js
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
node-version: 16
- name: Setup Bikeshed
run: pip install bikeshed && bikeshed update
- name: Setup TexLive
run: sudo apt-get update -y && sudo apt-get install -y latexmk texlive-latex-recommended texlive-latex-extra texlive-fonts-recommended
- name: Setup Sphinx
run: pip install six && pip install sphinx==5.1.0
run: pip install six && pip install sphinx==8.1.3
- name: Build SpecTec
run: cd spectec && opam exec make
- name: Build main spec
run: cd document/core && opam exec make main
- name: Run Bikeshed
run: cd document/core && opam exec make bikeshed
#- name: Run Bikeshed
# run: cd document/core && opam exec make bikeshed
- name: Upload artifact
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: core-rendered
path: document/core/_build/html
Expand All @@ -52,13 +52,13 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v2
uses: actions/checkout@v4
- name: Setup Bikeshed
run: pip install bikeshed && bikeshed update
- name: Run Bikeshed
run: bikeshed spec "document/js-api/index.bs" "document/js-api/index.html"
- name: Upload artifact
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: js-api-rendered
path: document/js-api/index.html
Expand All @@ -67,43 +67,135 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v2
uses: actions/checkout@v4
- name: Setup Bikeshed
run: pip install bikeshed && bikeshed update
- name: Run Bikeshed
run: bikeshed spec "document/web-api/index.bs" "document/web-api/index.html"
- name: Upload artifact
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: web-api-rendered
path: document/web-api/index.html

build-code-metadata-spec:
runs-on: ubuntu-latest
needs: [build-core-spec]
steps:
- name: Checkout repo
uses: actions/checkout@v4
with:
submodules: "recursive"
- name: Setup TexLive
run: sudo apt-get update -y && sudo apt-get install -y latexmk texlive-latex-recommended texlive-latex-extra texlive-fonts-recommended
- name: Setup Sphinx
run: pip install six && pip install sphinx==8.1.3
- name: Build main spec
run: cd document/metadata/code && make main
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: code-metadata-rendered
path: document/metadata/code/_build/html

build-legacy-exceptions-core-spec:
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v4
with:
submodules: "recursive"
- name: Setup TexLive
run: sudo apt-get update -y && sudo apt-get install -y latexmk texlive-latex-recommended texlive-latex-extra texlive-fonts-recommended
- name: Setup Sphinx
run: pip install six && pip install sphinx==8.1.3
- name: Build main spec
run: cd document/legacy/exceptions/core && make main
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: legacy-exceptions-core-rendered
path: document/legacy/exceptions/core/_build/html

build-legacy-exceptions-js-api-spec:
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v4
- name: Setup Bikeshed
run: pip install bikeshed && bikeshed update
- name: Run Bikeshed
run: bikeshed spec "document/legacy/exceptions/js-api/index.bs" "document/legacy/exceptions/js-api/index.html"
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: legacy-exceptions-js-api-rendered
path: document/legacy/exceptions/js-api/index.html

build-spec-versions:
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v4
- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: versions-rendered
path: document/versions/

publish-spec:
runs-on: ubuntu-latest
needs: [build-core-spec, build-js-api-spec, build-web-api-spec]
needs:
- build-core-spec
- build-js-api-spec
- build-web-api-spec
- build-code-metadata-spec
- build-legacy-exceptions-core-spec
- build-legacy-exceptions-js-api-spec
- build-spec-versions
steps:
- name: Checkout repo
uses: actions/checkout@v2
uses: actions/checkout@v4
- name: Create output directory
run: mkdir _output && cp document/index.html _output/index.html
- name: Download core spec artifact
uses: actions/download-artifact@v2
uses: actions/download-artifact@v4
with:
name: core-rendered
path: _output/core
- name: Download JS API spec artifact
uses: actions/download-artifact@v2
uses: actions/download-artifact@v4
with:
name: js-api-rendered
path: _output/js-api
- name: Download Web API spec artifact
uses: actions/download-artifact@v2
uses: actions/download-artifact@v4
with:
name: web-api-rendered
path: _output/web-api
- name: Download code metadata spec artifact
uses: actions/download-artifact@v4
with:
name: code-metadata-rendered
path: _output/metadata/code
- name: Download legacy exceptions core spec artifact
uses: actions/download-artifact@v4
with:
name: legacy-exceptions-core-rendered
path: _output/legacy/exceptions/core
- name: Download legacy exceptions JS API spec artifact
uses: actions/download-artifact@v4
with:
name: legacy-exceptions-js-api-rendered
path: _output/legacy/exceptions/js-api
- name: Download spec versions artifacts
uses: actions/download-artifact@v4
with:
name: versions-rendered
path: _output/versions
- name: Publish to GitHub Pages
if: github.ref == 'refs/heads/main'
uses: peaceiris/actions-gh-pages@v3
uses: peaceiris/actions-gh-pages@v4
with:
publish_dir: ./_output
github_token: ${{ secrets.GITHUB_TOKEN }}
12 changes: 6 additions & 6 deletions .github/workflows/ci-spectec.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@ name: CI for spectec
on:
push:
branches: [ main ]
paths: [ spectec/** ]
paths: [ spectec/**, document/** ]

pull_request:
branches: [ main ]
paths: [ spectec/** ]
paths: [ spectec/**, document/** ]

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
Expand All @@ -17,16 +17,16 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v2
uses: actions/checkout@v4
- name: Setup OCaml
uses: ocaml/setup-ocaml@v2
uses: ocaml/setup-ocaml@v3
with:
ocaml-compiler: 4.14.x
- name: Setup Dune
run: opam install --yes dune menhir mdx
run: opam install --yes dune menhir mdx zarith
- name: Setup Latex
run: sudo apt-get update -y && sudo apt-get install -y latexmk texlive-latex-recommended texlive-latex-extra texlive-fonts-recommended
- name: Setup Sphinx
run: pip install six && pip install sphinx==5.1.0
run: pip install six && pip install sphinx==8.1.3
- name: Build and test
run: cd spectec && opam exec make ci
18 changes: 0 additions & 18 deletions .github/workflows/mirror-to-master.yml

This file was deleted.

78 changes: 78 additions & 0 deletions .github/workflows/w3c-publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
name: Validate/Publish to W3C TR space

on:
push:
# Disable on fork
# branches: [ main ]
branches: [ main-only-on-spec-repo ]
paths: [ .github/**, document/** ]
pull_request:
paths: [ .github/**, document/** ]

# Allows you to run this workflow manually from the Actions tab, gh CLI tool,
# or REST API. THe w3c-status options correspond to the valid options for
# Bikeshed's --md-status flag, and refer to the W3C rec-track document
# stages described in https://www.w3.org/policies/process/#maturity-stages
# (Editor's Draft, Working Draft, Candidiate Recommendation Draft, and
# Candidate Recommendation Snapshot).
workflow_dispatch:
inputs:
dry-run:
required: true
type: boolean
description: If set, Echidna will validate but not publish.
w3c-status:
required: true
type: choice
description: W3C Document Status
options:
- ED
- WD
- CRD
- CR

env:
YARN_ENABLE_IMMUTABLE_INSTALLS: false
W3C_STATUS: ${{ github.event_name == 'workflow_dispatch' && inputs.w3c-status || 'CRD' }}

jobs:
publish-to-w3c-TR:
strategy:
fail-fast: false
matrix:
spec: [core, js-api, web-api]
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v4
with:
submodules: "recursive"
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 16
- name: Setup Bikeshed
run: pip install bikeshed && bikeshed update
- name: Setup TexLive
if: ${{ matrix.spec == 'core' }}
run: sudo apt-get update -y && sudo apt-get install -y latexmk texlive-latex-recommended texlive-latex-extra texlive-fonts-recommended
- name: Setup Sphinx
if: ${{ matrix.spec == 'core' }}
run: pip install six && pip install sphinx==8.0.0
- name: Publish ${{ matrix.spec }} spec to its https://www.w3.org/TR/ URL
if: env.W3C_ECHIDNA_TOKEN_CORE
run: cd document && make -e -C ${{ matrix.spec }} WD-echidna-CI
env:
W3C_ECHIDNA_TOKEN_CORE: ${{ secrets.W3C_ECHIDNA_TOKEN_CORE }}
W3C_ECHIDNA_TOKEN_JSAPI: ${{ secrets.W3C_ECHIDNA_TOKEN_JSAPI }}
W3C_ECHIDNA_TOKEN_WEBAPI: ${{ secrets.W3C_ECHIDNA_TOKEN_WEBAPI }}
# Publish the draft on manual dispatches without dry-run set, or on pushes to the main branch.
ECHIDNA_DRYRUN: |-
${{ !((github.event_name == 'workflow_dispatch' && !inputs.dry-run) ||
(github.event_name == 'push' && github.repository == 'WebAssembly/spec' && github.ref == 'refs/heads/main')) }}
- name: Validate ${{ matrix.spec }} spec with Echidna
if: env.W3C_USERNAME
run: cd document && make -e -C ${{ matrix.spec }} WD-echidna
env:
W3C_USERNAME: ${{ secrets.W3C_USERNAME }}
W3C_PASSWORD: ${{ secrets.W3C_PASSWORD }}
Loading
点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载