What's Changed
- refactor(rome_js_formatter): avoid snapshot when formatting skipped token trivia by @MichaReiser in #2683
- feat(rome_analyze): add a codegen command for the analyzer by @leops in #2646
- feat(rome_rowan): add the root node as an associated type on the language trait by @leops in #2689
- feat(rome_analyze): add a fix argument to
rome check
command CLI and LSP by @leops in #2615 - feat(rome_analyze): implement the validTypeof rule by @leops in #2649
- feat(rome_analyze): noCompareNegZero by @IWANABETHATGUY in #2644
- feat(rome_analyze): noNegationElse by @IWANABETHATGUY in #2655
- feat(rome_rowan): add a
declare_union
macro for one-off union AstNodes by @leops in #2691 - fix(xtask): enforce a stable ordering for the generated imports of lint rules by @leops in #2695
- fix(rome_analyze): handle find_diff_range in case tokens were only removed by @leops in #2694
- feat(rome_analyze): implement the useSingleCaseStatement rule by @leops in #2648
- feat(rome_js_formatter): Binary like object literal member expression by @denbezrukov in #2688
- fix(rome_analyze): prevent the range end search of find_diff_range from crossing the start of the range by @leops in #2697
- feat(rome_rowan): implement
DoubleEndedIterator
for node lists by @ematipico in #2672 - feat(rome_analyze): improve the diagnostics builder in the analyzer by @leops in #2692
- feat(rome_analyze): noDebugger by @IWANABETHATGUY in #2643
- feat(rome_analyze): noUnusedTemplateLiteral by @IWANABETHATGUY in #2653
- feat(rome_analyze): noSparseArray by @IWANABETHATGUY in #2650
- feature(rome_js_parser): JSX support in .js files by @NicholasLYang in #2674
- test(rome_js_formatter): update prettier tests by @denbezrukov in #2704
- feat(rome_analyze): noImplicitBoolean by @IWANABETHATGUY in #2702
- fix(rome_formatter):
dbg_write
API compatibility withwrite
by @MichaReiser in #2708 - refactor(rome_analyze): move the JS-specific code to rome_js_analyze by @leops in #2700
- feature(rome_js_semantic): matching declarations and scopes by @xunilrj in #2690
- chore: fix typo in
CHANGELOG.md
by @mehulkar in #2710 - feature(rome_js_formatter): Inline comment formatting by @MichaReiser in #2701
- fix(rome_js_semantic): remove dbg from semantic tests by @xunilrj in #2719
- refactor(rome_js_analyze): use
js_string_literal
helper function by @IWANABETHATGUY in #2715 - feature(rome_analyzer): Rule context by @xunilrj in #2714
- refactor(rome_js_formatter): Introduce
format_parenthesize
by @MichaReiser in #2718 - feat(rome_js_analyze): useSelfClosingElements by @IWANABETHATGUY in #2707
- feat(rome_js_analyze):noMultipleSpacesInRegularExpressionLiterals by @IWANABETHATGUY in #2717
- feat(xtask): automatically generate documentation pages for lint rules by @leops in #2703
- feat(rome_js_formatter): call arguments by @ematipico in #2711
- feat(rome_js_formatter): JsAnyAssignmentLike node union for JsPropertyObjectMember and JsAssignmentExpression by @denbezrukov in #2698
- refactor(rome_formatter):
GroupElementsBuffer
by @MichaReiser in #2724 - fix(rome_js_sematic): typo by @IWANABETHATGUY in #2736
- feat(rome_js_formatter): assignment expressions with layout by @ematipico in #2728
- fix(rome_js_formatter): Fix suppression command handling for
if-else
clause by @MichaReiser in #2738 - test(rome_js_formatter): support report prettier metric as a json file by @IWANABETHATGUY in #2626
- fix(rome_formatter): Group ID in fits function by @MichaReiser in #2739
- feature(rome_js_formatter): Class formatting (including heritage) by @MichaReiser in #2742
- feature(rome_js_semantic): extraction of reference (read) events by @xunilrj in #2725
- feat(rome_js_analyze): noEmptyPattern by @IWANABETHATGUY in #2731
- feat(rome_js_analyze): noAsyncPromiseExecutor by @IWANABETHATGUY in #2733
- feat(rome_analyze): useBlockStatements by @IWANABETHATGUY in #2658
- feat(rome_js_analyze): noUnsafeNegation by @IWANABETHATGUY in #2723
- refactor(rome_js_formatter): Support
FormatRule
s with options by @MichaReiser in #2757 - feature(rome_js_semantic): Hoisting by @xunilrj in #2761
- feat(rome_js_formatter): object pattern formatting by @ematipico in #2729
- fix(rome_js_formatter): don't add trailing operator on rest arguments by @ematipico in #2760
- feature(formatter): JSX Element by @NicholasLYang in #2542
- feat(rome_js_formatter): variable declarator formatting by @denbezrukov in #2762
- refactor(rome_js_formatter): Delete
FormatMemberName
by @MichaReiser in #2767 - refactor(rome_formatter): Unify comment/token spacing for leading/tra… by @MichaReiser in #2766
- feature(rome_js_formatter): Static Member Expression formatting by @MichaReiser in #2727
- chore: Move Prettier compat metrics to the top by @IWANABETHATGUY in #2765
- refactor(rome_js_formatter): Remove unnecessary groups from
format_separated
by @MichaReiser in #2770 - fix(rome_js_formatter): custom formatting for test calls by @ematipico in #2769
- feature(rome_js_formatter): TS Interface formatting by @MichaReiser in #2773
- fix(rome_js_formatter): Match test function names on trimmed text by @ematipico in #2777
- feature(rome_js_formatter): Inspect memoized content by @MichaReiser in #2772
- refactor(formatter): Use slice to store content by @MichaReiser in #2775
- refactor(rome_js_formatter): Remove
Copy
fromJsFormatContext
by @MichaReiser in #2779 - feat(rome_js_analyze): useShorthandType by @IWANABETHATGUY in #2745
- feat(rome_rowan): expose the kind of AstNode as a constant by @leops in #2774
- feat(rome_js_formatter): type alias as assignment like by @ematipico in #2787
- feature(rome_js_semantic): semantic model built from semantic events by @xunilrj in #2776
- feat(xtask_lintdoc): add more markdown syntax support by @IWANABETHATGUY in #2764
- feat(rome_js_analyze): useSimplifiedLogicExpression by @IWANABETHATGUY in #2759
- fix(rome_js_parser):🐛 issue_2790 by @IWANABETHATGUY in #2791
- feature(rome_js_semantic): more docs for semantic events by @xunilrj in #2789
- feat(rome_formatter): will_break utility by @ematipico in #2771
- refactor(rome_analyze): add the visitor and queryable trait by @leops in #2778
- fix(rome_js_formatter): better formatting of type args and unions by @ematipico in #2792
- fix(rome_js_formatter): indentation before arrow fn is JSX by @ematipico in #2793
- feat(vscode): enable formatting for JSX and TSX files by @ematipico in #2795
- docs(website): fix order of sections for lint rules by @ematipico in #2798
- feat(rome_js_formatter): class property members as assignment like by @ematipico in #2797
- feat(rome_control_flow): add the control flow crate by @leops in #2781
- fix(rome_js_formatter): breaking logic for member chains by @ematipico in #2800
- chore: fix broken rust documentation by @ematipico in #2805
- feat(rome_js_analyze): noUnnecessaryContinue by @IWANABETHATGUY in #2796
- feat(rome_js_formatter): add format element label by @denbezrukov in #2783
- chore: upgrade toolchain to latest stable version 1.62.0 by @IWANABETHATGUY in #2802
- feat(rome_js_formatter): remove unnecessary escapes by @ematipico in #2804
- fix(rome_js_analyze): make useBlockStatement fixed code a little nicer. by @IWANABETHATGUY in #2808
- ci: add documentation check on CI by @ematipico in #2806
- feat(rome_js_analyze): implement control flow analysis by @leops in #2763
- fix(rome_js_formatter): regression of call arguments by @ematipico in #2812
- release: 0.7.0 by @ematipico in #2801
New Contributors
Full Changelog: cli/v0.6.1-next...lsp/v0.10.0