-
-
Notifications
You must be signed in to change notification settings - Fork 722
docs(rust): Add comprehensive README.md documentation for all Rust crates #12706
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
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Contributor
How to use the Graphite Merge QueueAdd either label to this PR to merge it via the merge queue:
You must have a Graphite account in order to use the merge queue. Sign up using this link. An organization admin has enabled the Graphite Merge Queue in this repository. Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue. |
Co-authored-by: Boshen <1430279+Boshen@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Add or improve README.md for all Rust crates in the
Add comprehensive README.md documentation for all Rust crates
Aug 1, 2025
crates directory. These README.md should have concise explaination on the purpose of the crate. Add architecture docs if necessary.
Copilot finished work on behalf of
Boshen
August 1, 2025 08:13
Member
|
@copilot remove code examples from these READMEs. |
Co-authored-by: Boshen <1430279+Boshen@users.noreply.github.com>
Contributor
Author
Copilot finished work on behalf of
Boshen
August 1, 2025 08:49
This was referenced Aug 3, 2025
camc314
added a commit
that referenced
this pull request
Aug 6, 2025
## [1.10.0] - 2025-08-06 ### 🚀 Features - 44ac5a1 linter: Add eslint/no-unassigned-vars rule (#11365) (yefan) - ce6eeee linter: Add `eslint/prefer-destructuring` rule (#12721) (yefan) - 9b35600 linter/jsx-a11y: Add support for mapped attributes in label association checks (#12805) (camc314) - 5475075 vscode/language_server: Add `tsConfigPath` option (#12484) (Sysix) - a754f7a linter: Support `countVoidThis` option in `max-params` rule (#12604) (yefan) ### 🐛 Bug Fixes - 2c1dab6 linter/no-unassigned-vars: False positive with variables in for loop (#12833) (camc314) - 5a24574 linter/func-style: Fix more false positives (#12828) (camc314) - 33a7320 linter/no-throw-literal: Fix unconditional recursion in `could_be_error` (#12819) (camc314) - a3aec6a linter/explicit-module-boundary-types: Debug assertion fail with top level return (#12820) (camc314) - 6efe457 linter/no-empty-function: Respect allow options for functions and arrow functions (#12814) (camc314) - 1c21c46 linter/new-cap: Fix panic with computed member expr (#12804) (camc314) - 45206dd linter: Apply fix span offset after fixing the section source text (#12758) (Sysix) - 1e97e35 linter/unicorn/prefer-structured-clone: Update Default implementation for `PreferStructuredCloneConfig` (#12791) (camc314) - d382159 linter/unicorn/prefer-object-from-entries: Update Default implementation for `PreferObjectFromEntriesConfig` (#12790) (camc314) - b07d29c linter/typescript/no-this-alias: Update Default implementation for `NoThisAliasConfig` (#12789) (camc314) - 0db34ab linter/react/jsx-filename-case: Update Default implementation for `JsxFilenameExtensionConfig` (#12788) (camc314) - ff84eff linter/jest/prefer-lowercase-title: Update Default implementation for `PreferLowercaseTitleConfig` (#12787) (camc314) - 5175c6d linter/jest/no-large-snapshots: Update Default implementation for `NoLargeSnapshotsConfig` (#12786) (camc314) - 0eaebcd linter/jest/no-deprecated-functions: Update Default implementation for `JestConfig` (#12785) (camc314) - 4265db7 linter/import/no-anonymous-default-export: Update Default implementation for `NoAnonymousDefaultExport` config (#12784) (camc314) - 6a360e3 linter/import/extensions: Update Default implementation for ExtensionsConfig (#12783) (camc314) - 42c8f29 linter: Default options for `eslint/no-else-return` (#12762) (Sysix) - 4eac511 linter: Default options for `eslint/no-unneeded-ternary` (#12761) (Sysix) - 9c01dbf linter: Default options for `eslint/new-cap` (#12760) (Sysix) - b25406f linter/explicit-function-return-types: Update default values in ExplicitFunctionReturnTypeConfig (#12718) (camc314) - ce5876d parser: Validate inner expression of type assertions in assignment targets (#12614) (camc314) - 5383331 linter/explicit-mod-boundary-types: False positive with jsx elements (#12678) (camc314) - d0e99b5 linter/explicit-mod-boundary-types: False positive with call expressions (#12677) (camc314) - 525137e linter: Add missing options to no-inner-declarations (#12661) (camc314) - fc4a327 linter: No-unused-vars false positive with class property initializers (#12660) (camc314) - 6af8631 linter/no-unused-vars: False positive with chain expression (#12609) (camc314) - 744ef52 linter: Correct `array-type` handling of `default: 'array-simple'` (#12607) (yefan) ### 🚜 Refactor - 3f37ed1 linter: Replace `lazy_static` with `std::sync::LazyLock` (#12822) (Copilot) - 69fd08d semantic: Improve unused label tracking and add debug assertions (#12812) (camc314) - 030e397 linter: Simplify parsing CLI args (#12802) (overlookmotel) - c0e224a linter: Store `ExternalRuleId` in `OxlintOverrides` not raw names (#12502) (camc314) - 61587e4 linter: Correct comment (#12792) (overlookmotel) - 5adcb98 linter: Use `u32` to keep track of last fixed source text position (#12696) (Sysix) - 77acc11 linter, transformer: Use `Scoping::symbol_is_unused` (#12666) (overlookmotel) - ecf1cff language_server: Simplify offset adjustment by using `Message.move_offset` (#12647) (Sysix) - 7695393 linter: Simplify offset adjustment by using `Message.move_offset` (#12595) (Sysix) - b36dc92 linter: Refactor large arrays to reduce binary size (#12603) (Boshen) - 3b9f1f0 linter: Update iter_outer_expressions to take AstNodes reference (#12583) (camc314) ### 📚 Documentation - e760fd4 linter: Complete linter rules documentation with missing "Why is this bad?" sections (#12757) (Copilot) - 514322c rust: Add minimal documentation to example files in crates directory (#12731) (Copilot) - 1d910d5 linter: Fix typescript/consistent-type-imports rule options to match TypeScript ESLint (#12707) (Copilot) - 45e2fe8 rust: Fix typos and grammar mistakes in Rust documentation comments (#12715) (Copilot) - 7660a88 linter: Improve linter rule documentation with "Why is this bad?" sections and enhanced examples (#12711) (Copilot) - de1de35 rust: Add comprehensive README.md documentation for all Rust crates (#12706) (Copilot) ### ⚡ Performance - 09ae2a9 linter: Eliminate unnecessary Iterator::collect() allocations (#12776) (Copilot) - 693673b linter: Reduce iterations when collecting directories for nested configs (#12329) (overlookmotel) ### 🎨 Styling - cacbd1e linter/no-empty-function: Order match arms consistently (#12815) (camc314) - c15da81 codegen, formatter, linter, minifier, transformer: Re-order imports (#12725) (Copilot) ### 🧪 Testing - 3957fcc linter/no-undef: Add test case for `TSImportType` (#12800) (camc314) - d8ccff7 oxlint: Add `Tester::test_fix` mehod (#12754) (Sysix) - c6bfb8a linter: Add rule configuration consistency test (#12744) (camc314) - 2ceb835 linter: Fix offset for partical source texts (#12594) (Sysix) Co-authored-by: camc314 <18101008+camc314@users.noreply.github.com>
taearls
pushed a commit
to taearls/oxc
that referenced
this pull request
Aug 12, 2025
## [1.10.0] - 2025-08-06 ### 🚀 Features - 44ac5a1 linter: Add eslint/no-unassigned-vars rule (oxc-project#11365) (yefan) - ce6eeee linter: Add `eslint/prefer-destructuring` rule (oxc-project#12721) (yefan) - 9b35600 linter/jsx-a11y: Add support for mapped attributes in label association checks (oxc-project#12805) (camc314) - 5475075 vscode/language_server: Add `tsConfigPath` option (oxc-project#12484) (Sysix) - a754f7a linter: Support `countVoidThis` option in `max-params` rule (oxc-project#12604) (yefan) ### 🐛 Bug Fixes - 2c1dab6 linter/no-unassigned-vars: False positive with variables in for loop (oxc-project#12833) (camc314) - 5a24574 linter/func-style: Fix more false positives (oxc-project#12828) (camc314) - 33a7320 linter/no-throw-literal: Fix unconditional recursion in `could_be_error` (oxc-project#12819) (camc314) - a3aec6a linter/explicit-module-boundary-types: Debug assertion fail with top level return (oxc-project#12820) (camc314) - 6efe457 linter/no-empty-function: Respect allow options for functions and arrow functions (oxc-project#12814) (camc314) - 1c21c46 linter/new-cap: Fix panic with computed member expr (oxc-project#12804) (camc314) - 45206dd linter: Apply fix span offset after fixing the section source text (oxc-project#12758) (Sysix) - 1e97e35 linter/unicorn/prefer-structured-clone: Update Default implementation for `PreferStructuredCloneConfig` (oxc-project#12791) (camc314) - d382159 linter/unicorn/prefer-object-from-entries: Update Default implementation for `PreferObjectFromEntriesConfig` (oxc-project#12790) (camc314) - b07d29c linter/typescript/no-this-alias: Update Default implementation for `NoThisAliasConfig` (oxc-project#12789) (camc314) - 0db34ab linter/react/jsx-filename-case: Update Default implementation for `JsxFilenameExtensionConfig` (oxc-project#12788) (camc314) - ff84eff linter/jest/prefer-lowercase-title: Update Default implementation for `PreferLowercaseTitleConfig` (oxc-project#12787) (camc314) - 5175c6d linter/jest/no-large-snapshots: Update Default implementation for `NoLargeSnapshotsConfig` (oxc-project#12786) (camc314) - 0eaebcd linter/jest/no-deprecated-functions: Update Default implementation for `JestConfig` (oxc-project#12785) (camc314) - 4265db7 linter/import/no-anonymous-default-export: Update Default implementation for `NoAnonymousDefaultExport` config (oxc-project#12784) (camc314) - 6a360e3 linter/import/extensions: Update Default implementation for ExtensionsConfig (oxc-project#12783) (camc314) - 42c8f29 linter: Default options for `eslint/no-else-return` (oxc-project#12762) (Sysix) - 4eac511 linter: Default options for `eslint/no-unneeded-ternary` (oxc-project#12761) (Sysix) - 9c01dbf linter: Default options for `eslint/new-cap` (oxc-project#12760) (Sysix) - b25406f linter/explicit-function-return-types: Update default values in ExplicitFunctionReturnTypeConfig (oxc-project#12718) (camc314) - ce5876d parser: Validate inner expression of type assertions in assignment targets (oxc-project#12614) (camc314) - 5383331 linter/explicit-mod-boundary-types: False positive with jsx elements (oxc-project#12678) (camc314) - d0e99b5 linter/explicit-mod-boundary-types: False positive with call expressions (oxc-project#12677) (camc314) - 525137e linter: Add missing options to no-inner-declarations (oxc-project#12661) (camc314) - fc4a327 linter: No-unused-vars false positive with class property initializers (oxc-project#12660) (camc314) - 6af8631 linter/no-unused-vars: False positive with chain expression (oxc-project#12609) (camc314) - 744ef52 linter: Correct `array-type` handling of `default: 'array-simple'` (oxc-project#12607) (yefan) ### 🚜 Refactor - 3f37ed1 linter: Replace `lazy_static` with `std::sync::LazyLock` (oxc-project#12822) (Copilot) - 69fd08d semantic: Improve unused label tracking and add debug assertions (oxc-project#12812) (camc314) - 030e397 linter: Simplify parsing CLI args (oxc-project#12802) (overlookmotel) - c0e224a linter: Store `ExternalRuleId` in `OxlintOverrides` not raw names (oxc-project#12502) (camc314) - 61587e4 linter: Correct comment (oxc-project#12792) (overlookmotel) - 5adcb98 linter: Use `u32` to keep track of last fixed source text position (oxc-project#12696) (Sysix) - 77acc11 linter, transformer: Use `Scoping::symbol_is_unused` (oxc-project#12666) (overlookmotel) - ecf1cff language_server: Simplify offset adjustment by using `Message.move_offset` (oxc-project#12647) (Sysix) - 7695393 linter: Simplify offset adjustment by using `Message.move_offset` (oxc-project#12595) (Sysix) - b36dc92 linter: Refactor large arrays to reduce binary size (oxc-project#12603) (Boshen) - 3b9f1f0 linter: Update iter_outer_expressions to take AstNodes reference (oxc-project#12583) (camc314) ### 📚 Documentation - e760fd4 linter: Complete linter rules documentation with missing "Why is this bad?" sections (oxc-project#12757) (Copilot) - 514322c rust: Add minimal documentation to example files in crates directory (oxc-project#12731) (Copilot) - 1d910d5 linter: Fix typescript/consistent-type-imports rule options to match TypeScript ESLint (oxc-project#12707) (Copilot) - 45e2fe8 rust: Fix typos and grammar mistakes in Rust documentation comments (oxc-project#12715) (Copilot) - 7660a88 linter: Improve linter rule documentation with "Why is this bad?" sections and enhanced examples (oxc-project#12711) (Copilot) - de1de35 rust: Add comprehensive README.md documentation for all Rust crates (oxc-project#12706) (Copilot) ### ⚡ Performance - 09ae2a9 linter: Eliminate unnecessary Iterator::collect() allocations (oxc-project#12776) (Copilot) - 693673b linter: Reduce iterations when collecting directories for nested configs (oxc-project#12329) (overlookmotel) ### 🎨 Styling - cacbd1e linter/no-empty-function: Order match arms consistently (oxc-project#12815) (camc314) - c15da81 codegen, formatter, linter, minifier, transformer: Re-order imports (oxc-project#12725) (Copilot) ### 🧪 Testing - 3957fcc linter/no-undef: Add test case for `TSImportType` (oxc-project#12800) (camc314) - d8ccff7 oxlint: Add `Tester::test_fix` mehod (oxc-project#12754) (Sysix) - c6bfb8a linter: Add rule configuration consistency test (oxc-project#12744) (camc314) - 2ceb835 linter: Fix offset for partical source texts (oxc-project#12594) (Sysix) Co-authored-by: camc314 <18101008+camc314@users.noreply.github.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
A-ast
Area - AST
A-cfg
Area - Control Flow Graph
A-codegen
Area - Code Generation
A-isolated-declarations
Isolated Declarations
A-linter
Area - Linter
A-parser
Area - Parser
A-semantic
Area - Semantic
C-docs
Category - Documentation. Related to user-facing or internal documentation
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds comprehensive README.md files for all 20 Rust crates in the
crates/directory that were missing documentation, ensuring every crate now has clear documentation about its purpose and usage.What was added
Created README.md files for the following crates:
oxc_allocator- High-performance bump allocator for AST nodesoxc_ast- Abstract Syntax Tree definitions for JavaScript/TypeScript/JSXoxc_ast_macros- Procedural macros for AST code generationoxc_ast_visit- Visitor pattern implementations for AST traversaloxc_cfg- Control Flow Graph construction and analysisoxc_codegen- Code generation from AST back to source codeoxc_data_structures- Common data structures used across oxcoxc_diagnostics- Error reporting and diagnostic utilitiesoxc_estree- ESTree compatibility layer for serializationoxc_isolated_declarations- TypeScript isolated declarations generatoroxc_linter- High-performance ESLint-compatible linteroxc_macros- Macros for declaring lint rulesoxc_mangler- Variable name mangling for minificationoxc_napi- Node.js native API bindingsoxc_parser- JavaScript/TypeScript parser with full language supportoxc_semantic- Comprehensive semantic analysis and symbol resolutionoxc_span- Source position utilities and span managementoxc_syntax- Common JavaScript/TypeScript syntax definitionsoxc_transformer_plugins- Specialized transformation pluginsoxc_traverse- Advanced AST traversal with parent contextDocumentation structure
Each README.md follows a consistent structure:
Benefits
The documentation covers the full spectrum from low-level utilities (allocator, spans) to high-level tools (parser, linter, semantic analysis) with appropriate technical depth for each audience.
💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.