Skip to content
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

[WIP] Begin moving towards invokable wire format #1690

Open
wants to merge 24 commits into
base: main
Choose a base branch
from

Conversation

wycats
Copy link
Contributor

@wycats wycats commented Jan 23, 2025

No description provided.

Copy link
Contributor

github-actions bot commented Jan 23, 2025

This PRmain
Dev
603K └─┬ .
169K   ├── runtime
159K   ├── syntax
111K   ├── compiler
 67K   ├── opcode-compiler
 27K   ├── manager
 19K   ├── validator
 11K   ├── program
8.9K   ├── reference
7.2K   ├── destroyable
6.3K   ├── util
4.3K   ├── node
3.4K   ├── wire-format
3.4K   ├── global-context
1.0K   ├── vm
969B   ├── encoder
844B   ├── vm-babel-plugins
606B   └── owner
582K └─┬ .
169K   ├── runtime
159K   ├── syntax
100K   ├── compiler
 58K   ├── opcode-compiler
 27K   ├── manager
 19K   ├── validator
 11K   ├── program
8.9K   ├── reference
7.2K   ├── destroyable
6.3K   ├── util
4.3K   ├── node
3.4K   ├── global-context
2.5K   ├── wire-format
1.0K   ├── vm
969B   ├── encoder
844B   ├── vm-babel-plugins
606B   └── owner
Prod
237K └─┬ .
 69K   ├── syntax
 63K   ├── runtime
 52K   ├── compiler
 21K   ├── opcode-compiler
7.9K   ├── manager
4.8K   ├── program
4.0K   ├── validator
3.6K   ├── reference
2.4K   ├── util
2.3K   ├── wire-format
2.1K   ├── node
1.5K   ├── destroyable
737B   ├── vm
594B   ├── global-context
516B   ├── encoder
469B   ├── vm-babel-plugins
155B   └── owner
230K └─┬ .
 69K   ├── syntax
 63K   ├── runtime
 48K   ├── compiler
 18K   ├── opcode-compiler
7.9K   ├── manager
4.8K   ├── program
4.0K   ├── validator
3.6K   ├── reference
2.4K   ├── util
2.1K   ├── node
1.6K   ├── wire-format
1.5K   ├── destroyable
737B   ├── vm
594B   ├── global-context
516B   ├── encoder
469B   ├── vm-babel-plugins
155B   └── owner

@wycats wycats force-pushed the feature/emit-fn-calls branch 2 times, most recently from cc230f3 to 4625e5e Compare February 6, 2025 07:26
@wycats wycats force-pushed the feature/emit-fn-calls branch from a5f57d9 to cddc4dc Compare February 12, 2025 02:52
@wycats wycats force-pushed the feature/emit-fn-calls branch from 6a5d569 to 87e01ac Compare February 20, 2025 03:18
NullVoxPopuli added a commit that referenced this pull request Feb 20, 2025
NullVoxPopuli added a commit that referenced this pull request Feb 20, 2025
NullVoxPopuli added a commit that referenced this pull request Feb 20, 2025
NullVoxPopuli added a commit that referenced this pull request Feb 20, 2025
NullVoxPopuli added a commit that referenced this pull request Feb 20, 2025
@github-actions github-actions bot mentioned this pull request Feb 20, 2025
@wycats wycats force-pushed the feature/emit-fn-calls branch from a76c67a to 3717287 Compare February 21, 2025 21:27
- Eliminate special high-level opcodes
- By modifying the statements and expressions to use the new encoder APIs,
it will be easier for us to emit the encoder calls directly from the
wire format
- Split modifier and component to resolved variants
- Clarify args wire format
- Separate kinds of component invocations
- Disentangle the types of helpers
- Streamline components
@wycats wycats force-pushed the feature/emit-fn-calls branch from 3717287 to ada19a6 Compare February 21, 2025 21:44
The only remaining test failures are syntax errors that need updated
test assertions.
@wycats wycats force-pushed the feature/emit-fn-calls branch from 0683762 to 9ba08a7 Compare February 23, 2025 08:37
@github-actions github-actions bot mentioned this pull request Mar 4, 2025
wycats added 9 commits March 4, 2025 18:24
TODO: consolidate error propagation through elements.
The only remaining failures are now outdated error message tests.
Syntax errors are now notes in the AST rather than reported during parse
time, and are reported at compile-time. To make it possible to get
syntax errors purely from `@glimmer/syntax`, this commit adds a verifier
to `@glimmer/syntax` that validates the standalone `ASTv2` and reports
errors that it finds.

To get a complete picture, you really _do_ want to wait until
compile-time, which can report keyword-specific errors, but this makes
it possible to get a sense of the syntax errors without involving the
compiler.

This is all in service of making errors reported by `@glimmer/syntax`
fully forgiving.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant