oxc/tasks
overlookmotel aef593fb50
parser(refactor): promise only one Source on a thread at a time (#2340)
Introduce invariant that only a single `lexer::Source` can exist on a thread at one time.

This is a preparatory step for #2341.

2 notes:

Restriction is only 1 x `ParserImpl` / `Lexer` / `Source` on 1 *thread* at a time, not globally. So this does not prevent parsing multiple files simultaneously on different threads.

Restriction does not apply to public type `Parser`, only `ParserImpl`. `ParserImpl`s are not created in created in `Parser::new`, but instead in `Parser::parse`, where they're created and then immediately consumed. So the end user is also free to create multiple `Parser` instances (if they want to for some reason) on the same thread.
2024-02-08 14:51:17 +08:00
..
benchmark parser(refactor): promise only one Source on a thread at a time (#2340) 2024-02-08 14:51:17 +08:00
common chore(benchmark): add radix-ui.jsx as a real world jsx example (#2304) 2024-02-05 13:42:45 +08:00
coverage feat(codegen): avoid printing comma in ArrayAssignmentTarget if the elements is empty (#2331) 2024-02-06 22:45:19 +08:00
javascript_globals chore(deps): update cargo (#2191) 2024-01-29 11:38:47 +08:00
lint_rules chore(lint_rules): deprecated eslint no-dupe-args / no-octal / no-with 2024-02-02 17:33:54 +08:00
minsize chore(deps): update cargo (#2191) 2024-01-29 11:38:47 +08:00
prettier_conformance feat(tasks/prettier): add some information for debug no spec calls (#2333) 2024-02-07 16:55:59 +08:00
rulegen feat(tasks): add eslint-plugin-n rulegen (#2272) 2024-02-02 18:50:58 +08:00
transform_conformance fix(transformer): update snapshot (#2268) 2024-02-02 17:00:44 +08:00
libs.txt refactor(benchmark): use more complicated files (#1811) 2023-12-25 17:27:02 +08:00