-
-
Notifications
You must be signed in to change notification settings - Fork 472
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
refactor: enable clippy::ref_as_ptr #5577
Merged
Merged
Conversation
This file contains 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
Your org has enabled the Graphite merge queue for merging into mainAdd the label “0-merge” to the PR and Graphite will automatically add it to the merge queue when it’s ready to merge. Or use the label “hotfix” to add to the merge queue as a hot fix. You must have a Graphite account and log in to Graphite in order to use the merge queue. Sign up using this link. |
CodSpeed Performance ReportMerging #5577 will not alter performanceComparing Summary
|
Thank you! |
This was referenced Sep 9, 2024
Boshen
pushed a commit
that referenced
this pull request
Sep 9, 2024
Follow-on after #5577. These type annotations are not required. Probably they were suggested by clippy.
Boshen
pushed a commit
that referenced
this pull request
Sep 9, 2024
Revert the changes to `oxc_traverse` made in #5577. Those changes may well have been good, but... The soundness of `Traverse` is a finely balanced thing, and the pointer gymnastics are subtle, so I think it's best to be extremely conservative about changes. I last ran Miri on it with the original formulation (`as *mut _` etc) and it passed. Currently it's not possible to usefully run Miri on the transformer because it contains known unsound code (#3483). So until we're able to check soundness with Miri, I think it's best to avoid changes, as it'd be easy to trigger UB unintentionally.
Boshen
pushed a commit
that referenced
this pull request
Sep 9, 2024
Follow-on after #5577. `!std::ptr::eq(x, y)` is more idiomatic than `std::ptr::from_ref(x) != std::ptr::from_ref(y)`.
Boshen
added a commit
that referenced
this pull request
Sep 11, 2024
## [0.28.0] - 2024-09-11 - afc4548 ast: [**BREAKING**] Educe byte size of `TaggedTemplateExpression::quasi` by `Boxing` it (#5679) (Boshen) - 7415e85 ast: [**BREAKING**] Reduce byte size of `TSImportType::attributes` by `Box`ing it (#5678) (Boshen) - ee4fb42 ast: [**BREAKING**] Reduce size of `WithClause` by `Box`ing it (#5677) (Boshen) - 1fa3e56 semantic: [**BREAKING**] Rename `SymbolTable::iter` to `symbol_ids` (#5621) (overlookmotel) - 96a1552 semantic: [**BREAKING**] Remove `SymbolTable::iter_rev` (#5620) (overlookmotel) - 4a8aec1 span: [**BREAKING**] Change `SourceType::js` to `SourceType::cjs` and `SourceType::mjs` (#5606) (Boshen) - 603817b oxc: [**BREAKING**] Add `SourceType::Unambiguous`; parse `.js` as unambiguous (#5557) (Boshen) - b060525 semantic: [**BREAKING**] Remove `source_type` argument from `SemanticBuilder::new` (#5553) (Boshen) ### Features - 2da5ad1 ast: Add `JSXElementName::get_identifier` method (#5556) (overlookmotel) - 2016bae coverage: Add regular expression idempotency test (#5676) (Boshen) - 68c3cf5 minifier: Fold `void 1` -> `void 0` (#5670) (Boshen) - c6bbf94 minifier: Constant fold unary expression (#5669) (Boshen) - 86256ea minifier: Constant fold `typeof` (#5666) (Boshen) - e698418 napi/transform: Align output `SourceMap` with Rollup's `ExistingRawSourceMap` (#5657) (Boshen) - aba9194 napi/transform: Export react refresh options (#5533) (underfin) - 642295c semantic: Add `SymbolTable::delete_resolved_reference` method (#5558) (overlookmotel) - b3cbd56 span: `format_compact_str!` macro (#5610) (overlookmotel) - 95a6d99 transformer: Enable the react refresh plugin in enable_all (#5630) (Dunqing) - 7b543df transformer/react: Handle `refresh_sig` and `refresh_reg` options correctly (#5638) (Dunqing) - 17226dd traverse: Add methods for deleting references (#5559) (overlookmotel) ### Bug Fixes - d62defb codegen: Do not print trailing commas for `ArrayExpression` (#5551) (Boshen) - 1bc08e2 coverage: Parse babel unambiguously (#5579) (Boshen) - 28b934c coverage: Apply `always_strict` to test262 and typescript per the specifcation (#5555) (Boshen) - b9bf544 isolated-declarations: False positive for setter method in `interface` (#5681) (Dunqing) - 6e8409a isolated-declarations: Bindings referenced in `TSModuleDeclaration` are removed incorrectly (#5680) (Dunqing) - b8f8dd6 minifier/replace_global_defines: Do not replace shadowed identifiers (#5691) (Boshen) - 304ce25 regular_expression: Keep LegacyOctalEscape raw digits for `to_string` (#5692) (leaysgur) - 0511d55 regular_expression: Report more MayContainStrings error in (nested)class (#5661) (leaysgur) - 41582ea regular_expression: Improve RegExp `to_string()` results (#5635) (leaysgur) - 28aad28 regular_expression: Handle `-` in `/[\-]/u` as escaped character (#5631) (leaysgur) - f9e3a41 semantic: Bind `SymbolId` to function name in `if (foo) function id() {}` (#5673) (Boshen) - f49e6eb span: Treat `.js` as `module` file (reverts the previous breaking change) (#5612) (Boshen) - 919d17f transform_conformance: Only print semantic mismatch errors when output is correct (#5589) (Boshen) - 505d064 transformer: JSX transform delete references for `JSXClosingElement`s (#5560) (overlookmotel) - 9b7ecc7 transformer: RegExp transform only set span on final expression (#5508) (overlookmotel) - d1ece19 transformer: RegExp transform handle `Term::Quantifier` (#5501) (overlookmotel) - a1afd48 transformer/react: Incorrect scope_id for var hoisted in fast refresh plugin (#5695) (Dunqing) - f2f5e5a transformer/react: Missing scope_id for function in fast refresh plugin (#5693) (Dunqing) - a891c31 transformer/react: Refresh plugin has incorrect reference flags (#5656) (Dunqing) - 3e8b96f transformer/react: The refresh plugin cannot handle member expressions with React hooks (#5655) (Dunqing) - 0739b5f transformer/react: Don't transform declaration of function overloads (#5642) (Dunqing) - 3bf6aaf transformer/react: Support `emit_full_signatures` option in refresh plugin (#5629) (Dunqing) - 36d864a transformer/react: Don't transform if the variable does not have a value reference (#5528) (Dunqing) ### Performance - e8013d2 traverse: Faster string operations generating UIDs (#5626) (overlookmotel) - 4996874 traverse: `generate_uid` cache available binding names (#5611) (overlookmotel) ### Documentation - fefbbc1 sourcemap: Add trailing newline to README (#5539) (overlookmotel) - 9282647 transformer: Comment on RegExp transform for potential improvement (#5514) (overlookmotel) - 1c051ae traverse: Correct code comment 2 (#5607) (overlookmotel) - 2e24a15 traverse: Correct code comment (#5604) (overlookmotel) ### Refactor - 14ee086 ast: Inline `AstKind::as_*` methods (#5547) (overlookmotel) - 2de6ea0 index, traverse: Remove unnecessary type annotations (#5650) (overlookmotel) - 0ac420d linter: Use meaningful names for diagnostic parameters (#5564) (Don Isaac) - 2da42ef regular_expression: Improve AST docs with refactoring may_contain_strings (#5665) (leaysgur) - dec1395 regular_expression: Align diagnostics (#5543) (leaysgur) - 731ffaa semantic: Compare nodes by pointer equality (#5686) (overlookmotel) - 067f9b5 semantic: Introduce `IsGlobalReference` trait (#5672) (Boshen) - d22a9b7 semantic: `SymbolTable::is_empty` use `is_empty` (#5622) (overlookmotel) - 3d190a5 span: Move `CompactStr` into separate file (#5609) (overlookmotel) - 5532628 span: Put types and impl in the same mod file (Boshen) - ce71982 transformer: Shorten code in JSX transform (#5554) (overlookmotel) - 758a10c transformer: RegExp transform reuse var (#5527) (overlookmotel) - fad0a05 transformer: RegExp transform unbox early (#5504) (overlookmotel) - 19cdcc5 traverse: Revert changes to `walk.rs` (#5652) (overlookmotel)- 26d9235 Enable clippy::ref_as_ptr (#5577) (夕舞八弦) ### Styling - e52d006 traverse: Fix formatting of traverse codegen (#5651) (overlookmotel) - 97e99bd traverse: Remove excess line break (#5603) (overlookmotel)- 694f032 Add trailing line breaks to `package.json` files (#5542) (overlookmotel) ### Testing - 2e367c9 traverse: Enable tests for `oxc_traverse` crate (#5625) (overlookmotel)- dc92489 Add trailing line breaks to conformance fixtures (#5541) (overlookmotel) --------- Co-authored-by: Boshen <1430279+Boshen@users.noreply.github.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Boshen
added a commit
that referenced
this pull request
Sep 12, 2024
## [0.9.4] - 2024-09-12 ### Features - 9ca2593 linter: Eslint/sort-keys (#4845) (Na'aman Hirschfeld) - 023c160 linter: Impl `Serialize` for `OxlintConfig` (#5594) (DonIsaac) - 24d6a47 linter: Implement `eslint/no-invalid-regexp` (#5443) (Boshen) ### Bug Fixes - af6d240 linter: Panic in consistent-function-scoping (#5613) (DonIsaac) - 54e2e76 linter: `react/no_set_state` + `react/no_string_refs` rules find correct parent (#5615) (overlookmotel) - 3b87ac4 linter: Fix no_unused_vars panic when encountering unicode (#5582) (Boshen) ### Performance - bfe9186 linter: Use `cow_replace` instead of `replace` (#5643) (dalaoshu) - e3ae5db linter: Use cow_to_ascii_lowercase/uppercase (#5637) (heygsc) - a0370bf linter: Use cow_utils in no_script_url (#5633) (heygsc) - 37e922c linter: `eslint/no_shadow_restricted_names` use `run_on_symbol` (#5618) (overlookmotel) - 0b7fccf linter: `react/no_set_state` + `react/no_string_refs` rules reduce iteration over ancestors (#5616) (overlookmotel) - 2c3f3fe linter: Make `jsx_key` slightly faster (#5585) (Boshen) - cd81d12 linter: Add `should_run` to check path only once to nextjs/no_typos (#5584) (Boshen) - d18c896 rust: Use `cow_utils` instead (#5664) (dalaoshu) ### Documentation - 64f9575 linter: Add plugin usage to example with configuration (Boshen) - 8c9179d linter: Fix typos (#5591) (Brian Donovan) ### Refactor - 9e9435f linter: Add `LintFilter` (#5685) (DonIsaac) - 4f70fe5 linter: Start internal/external split of LintPluginOptions (#5660) (DonIsaac) - 5ae9b48 linter: Start internal/external split of `OxlintOptions` (#5659) (DonIsaac) - c8bc6f0 linter: Use `std::ptr::eq` (#5649) (overlookmotel) - a37c064 linter: Use `ContentHash` for `no_duplicate_case`; remove `calculate_hash` (#5648) (Boshen) - 0b3c1d7 linter: Start internal/external split of `OxlintConfig` (#5595) (DonIsaac) - 89bdf55 linter: Inline `Rule` trait default methods (#5619) (overlookmotel) - afea8d5 linter: Rename `Rule` trait method params (#5617) (overlookmotel) - 4e748b5 linter: Replace ast "compare by hash" to "compare by content" (#5602) (dalaoshu) - bac03e3 linter: Make fields of `LintServiceOptions` private (#5593) (DonIsaac) - 2661d8b linter: Jest prefer_strict_equal (#5588) (IWANABETHATGUY) - 20d0068 oxlint: Move cli-related exports to `cli` module (#5139) (DonIsaac) - 067f9b5 semantic: Introduce `IsGlobalReference` trait (#5672) (Boshen)- 26d9235 Enable clippy::ref_as_ptr (#5577) (夕舞八弦) ### Testing - 8e79f8d linter: Add class method test cases for `oxc/no-async-await` (#5550) (DonIsaac) - 3835189 linter: Add test case for no_unused_vars in 3b87ac4 (Boshen) - 5f27551 linter: Add a passing case to no_undef (#5580) (Boshen) --------- Co-authored-by: Boshen <1430279+Boshen@users.noreply.github.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
This was referenced Sep 12, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
#5567
clippy::borrow_as_ptr
is also enabled inoxc_traverse/src/generated/walk.rs
.