diff --git a/CHANGELOG.md b/CHANGELOG.md index cdbb49df511..cde026ee8cc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,94 +2,48 @@ ## [Unreleased] -### Analyzer ### CLI -### Configuration -### Editors -### Formatter -### JavaScript APIs -### Linter -### Parser -### VSCode - -## 13.0.0 - -### Analyzer #### BREAKING CHANGES -- The organize imports feature now groups import statements by "distance". - Modules "farther" from the user are put on the top, and modules "closer" to the user are placed on the bottom. - Check the [documentation](https://docs.rome.tools/analyzer/) for more information about it. -- The organize imports tool is enabled by default. If you don't want to use it, you need to disable it explicitly: - ```json - { - "organizeImports": { - "enabled": false - } - } - ``` - +- The CLI now exists with an error then there's an error inside the configuration. -### CLI - -#### BREAKING CHANGES + Previously, rome would raise warnings and continue the execution, by applying its defaults. -- The CLI now exists with an error when there's an error inside the configuration. - - Previously, rome would raise warnings and continue the execution by applying its defaults. - - This could have been better for users because this could have created false positives in linting or formatted - code with a configuration that wasn't the user's. + This wasn't ideal for users, because this could have created false positives in linting, or formatted + code with a configuration that wasn't the of the user. - The command `rome check` now shows formatter diagnostics when checking the code. - The diagnostics presence will result in an error code when the command finishes. + The presence of the diagnostics will result in an error code when the command finishes. - This aligns with semantic and behaviour meant for the command `rome check`. + This is in line with semantic and behaviour meant for the command `rome check`. #### Other changes - Fix [#4670](https://github.com/rome/tools/issues/4670), don't crash at empty default export. - Fix [#4556](https://github.com/rome/tools/issues/4556), which correctly handles new lines in the - `.gitignore` file across OS. +`.gitignore` file across OS. - Add a new option to ignore unknown files `--files-ignore-unknown`: - ```shell - rome format --files-ignore-unknown ./src - ``` + ```shell + rome format ./src --files-ignore-unknown + ``` - Doing so, Rome won't emit diagnostics for files that doesn't know how to handle. + Doing so, Rome won't emit diagnostics for files that doesn't know how to handle. - Add a new option `--no-errors-on-unmatched`: - ```shell - rome format --no-errors-on-unmatched ./src - ``` + ```shell + rome format ./src --no-errors-on-unmatched + ``` - Rome doesn't exit with an error code if no files were processed in the given paths. + Rome won't exit with an error code in case no files were processed in the given paths. - Fixed the diagnostics emitted when running the `rome format` command; -- Rome no longer warns when discovering (possibly infinite) symbolic links between directories. +- Rome doesn't warn anymore when discovering (possibly infinite) symbolic links between directories. This fixes [#4193](https://github.com/rome/tools/issues/4193) which resulted in incorrect warnings when a single file or directory was pointed at by multiple symbolic links. Symbolic links to other symbolic links do still trigger warnings if they are too deeply nested. -- Introduced a new command called `rome lint`, which will only run lint rules against the code base. -- Rome recognises known files as "JSON files with comments allowed": - - `typescript.json`; - - `tsconfig.json`; - - `jsconfig.json`; - - `tslint.json`; - - `babel.config.json`; - - `.babelrc.json`; - - `.ember-cli`; - - `typedoc.json`; - - `.eslintrc.json`; - - `.eslintrc`; - - `.jsfmtrc`; - - `.jshintrc`; - - `.swcrc`; - - `.hintrc`; - - `.babelrc`; ### Configuration @@ -97,29 +51,29 @@ - Add a new option to ignore unknown files: - ```json - { - "files": { - "ignoreUnknown": true - } - } - ``` - Doing so, Rome won't emit diagnostics for file that it doesn't know how to handle. + ```json + { + "files": { + "ignoreUnknown": true + } + } + ``` + Doing so, Rome won't emit diagnostics for file that it doesn't know how to handle. - Add a new `"javascript"` option to support the unsafe/experimental - parameter decorators: - - ```json - { - "javascript": { - "parser": { - "unsafeParameterDecoratorsEnabled": true - } - } - } - ``` +parameter decorators: + + ```json + { + "javascript": { + "parser": { + "unsafeParameterDecoratorsEnabled": true + } + } + } + ``` - Add a new `"extends"` option, useful to split the configuration file in - multiple files: +multiple files: ```json { @@ -131,10 +85,10 @@ resolve dependencies yet. - The commands `rome check` and `rome lint` now show the remaining diagnostics even when - `--apply-safe` or `--apply-unsafe` are passed. + `--apply-safe` or `--apply-unsafe` are passed. - Fix the commands `rome check` and `rome lint`, they won't exit with an error code - if no error diagnostics are emitted. +if no error diagnostics are emitted. - Add a new option `--error-on-warnings`, which instructs Rome to exit with an error code when warnings are emitted. @@ -158,17 +112,17 @@ #### Other changes -- The Rome LSP can now show diagnostics belonging to JSON lint rules. -- Fix [#4564](https://github.com/rome/tools/issues/4564); files too large don't emit errors. -- The Rome LSP sends client messages when files are ignored or too big. +- The Rome LSP is now able to show diagnostics that belong to JSON lint rules. +- Fix [#4564](https://github.com/rome/tools/issues/4564), now files too large don't emit errors. +- The Rome LSP now sends client messages when files are ignored or too big. ### Formatter -- Add a new option called `--jsx-quote-style` to the formatter. This option lets you choose between single and double quotes for JSX attributes. [#4486](https://github.com/rome/tools/issues/4486) +- Add a new option called `--jsx-quote-style` to the formatter. This option allows you to choose between single and double quotes for JSX attributes. [#4486](https://github.com/rome/tools/issues/4486) -- Add an option called `--arrow-parentheses` to the formatter. This option allows you to set the parentheses style for arrow functions. [#4666](https://github.com/rome/tools/issues/4666) +- Add a new option called `--arrow-parentheses` to the formatter. This option allows you to set the parentheses style for arrow functions. [#4666](https://github.com/rome/tools/issues/4666) -- The JSON formatter can now format `.json` files with comments. +- The JSON formatter is now able to format `.json` files that have comments. ### Linter @@ -187,8 +141,6 @@ #### New rules -- Add [`noExcessiveComplexity`](https://docs.rome.tools/lint/rules/noExcessiveComplexity/) -- Add [`useImportRestrictions`](https://docs.rome.tools/lint/rules/useImportRestrictions/) - Add [`noFallthroughSwitchClause`](https://docs.rome.tools/lint/rules/noFallthroughSwitchClause/) - Add [`noGlobalIsFinite`](https://docs.rome.tools/lint/rules/noglobalisfinite/) @@ -210,19 +162,19 @@ - Add [`noDuplicateJsonKeys`](https://docs.rome.tools/lint/rules/noDuplicateJsonKeys/) - This rule disallow duplicate keys in a JSON object. + This rule disallow duplicate keys in a JSON object. - Add [`noVoid`](https://docs.rome.tools/lint/rules/novoid/) - This rules disallow the use of `void`. + This rules disallow the use of `void`. - Add [`noNonoctalDecimalEscape`](https://docs.rome.tools/lint/rules/nononoctaldecimalescape/) - This rule disallows `\8` and `\9` escape sequences in string literals. + This rule disallows `\8` and `\9` escape sequences in string literals. - Add [`noUselessEmptyExport`](https://docs.rome.tools/lint/rules/noUselessEmptyExport/) - This rule disallows useless `export {}`. + This rule disallows useless `export {}`. - Add [`useIsArray`](https://docs.rome.tools/lint/rules/useIsArray/) @@ -264,9 +216,9 @@ The following rules are now recommended: - Fix a crash in the [`NoParameterAssign`](https://docs.rome.tools/lint/rules/noparameterassign/) rule that occurred when there was a bogus binding. [#4323](https://github.com/rome/tools/issues/4323) - Fix [`useExhaustiveDependencies`](https://docs.rome.tools/lint/rules/useexhaustivedependencies/) rule in the following cases [#4330](https://github.com/rome/tools/issues/4330) - - when the first argument of hooks is a named function - - inside an export default function - - for React.use* hooks + - when the first argument of hooks is a named function + - inside an export default function + - for React.use* hooks - Fix [`noInvalidConstructorSuper`](https://docs.rome.tools/lint/rules/noinvalidconstructorsuper/) rule that erroneously reported generic parents [#4624](https://github.com/rome/tools/issues/4624). @@ -342,8 +294,8 @@ The following rules are now recommended: - Relax [`useLiteralEnumMembers`](https://docs.rome.tools/lint/rules/useLiteralEnumMembers/) - Enum members that refer to previous enum members are now allowed. - This allows a common pattern in enum flags like in the following example: + Enum members that refers to previous enum members are now allowed. + This allows common pattern in enum flags like in the following example: ```ts enum FileAccess { @@ -397,20 +349,20 @@ The following rules are now recommended: ```json { - "linter": { - "rules": { - "nursery": { - "useExhaustiveDependencies": { - "level": "error", - "options": { - "hooks": [ - ["useMyEffect", 0, 1] - ] - } - } - } - } - } + "linter": { + "rules": { + "nursery": { + "useExhaustiveDependencies": { + "level": "error", + "options": { + "hooks": [ + ["useMyEffect", 0, 1] + ] + } + } + } + } + } } ``` @@ -418,30 +370,30 @@ The following rules are now recommended: ```json { - "linter": { - "rules": { - "nursery": { - "useExhaustiveDependencies": { - "level": "error", - "options": { - "hooks": [ - { - "name": "useMyEffect", - "closureIndex": 0, - "dependenciesIndex": 1 - } - ] - } - } - } - } - } + "linter": { + "rules": { + "nursery": { + "useExhaustiveDependencies": { + "level": "error", + "options": { + "hooks": [ + { + "name": "useMyEffect", + "closureIndex": 0, + "dependenciesIndex": 1 + } + ] + } + } + } + } + } } ``` - [noRedundantUseStrict](https://docs.rome.tools/lint/rules/noredundantusestrict/) check only `'use strict'` directive to resolve false positive diagnostics. - React introduced new directives, "use client" and "use server". + React introduce new directives, "use client" and "use server". The rule raises false positive errors about these directives. - Fix false positive diagnostics ([#4483](https://github.com/rome/tools/issues/4483)) that [`NoUnreachableSuper`](https://docs.rome.tools/lint/rules/nounreachablesuper/) caused to nested if statement. @@ -469,27 +421,27 @@ The following rules are now recommended: - Add support for decorators in class method parameters, example: - ```js - class AppController { - get(@Param() id) {} - // ^^^^^^^^ new supported syntax - } - ``` + ```js + class AppController { + get(@Param() id) {} + // ^^^^^^^^ new supported syntax + } + ``` - This syntax is only supported via configuration, because it's a non-standard - syntax. - - ```json - { - "//": "rome.json file", - "javascript": { - "parser": { - "unsafeParameterDecoratorsEnabled": true - } - } - } - ``` -- Add support for parsing comments inside JSON files: + This syntax is only supported via configuration, because it's a non-standard + syntax. + + ```json + { + "//": "rome.json file", + "javascript": { + "parser": { + "unsafeParameterDecoratorsEnabled": true + } + } + } + ``` +- Add for parsing comments inside JSON files: ```json { @@ -500,11 +452,9 @@ The following rules are now recommended: } } ``` -- Add support for the new `using` syntax +### VSCode - ```js - const using = resource.lock(); - ``` +### JavaScript APIs ## 12.1.3 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 66c80706ac1..e942472f385 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -244,15 +244,14 @@ Here's a sample of the headings: ```markdown ## [Unreleased] -### Analyzer ### CLI ### Configuration ### Editors ### Formatter -### JavaScript APIs ### Linter ### Parser ### VSCode +### JavaScript APIs ``` When you edit a blank section: diff --git a/Cargo.lock b/Cargo.lock index 9b24762ffc9..1e910542dc3 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -152,18 +152,18 @@ checksum = "630be753d4e58660abd17930c71b647fe46c27ea6b63cc59e1e3851406972e42" [[package]] name = "bpaf" -version = "0.9.4" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c359c5e742f51d3238e83af24b289903591fbce38990eb9fcc903c7f8d5d95f9" +checksum = "affa4185035a12636b90d7064d64fff3cca6ff5a2f65c3325a7eef0da2f272bb" dependencies = [ "bpaf_derive", ] [[package]] name = "bpaf_derive" -version = "0.5.3" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "136d1184f80d42a8fa311570a1458e54e2e9f5537fbd19b4d2fba04110e30307" +checksum = "ac88f5e10b620a207805c5a6f538a7777dc55e5469bbc0eec27e2bf75d5ee0f6" dependencies = [ "proc-macro2", "quote", @@ -1648,7 +1648,7 @@ dependencies = [ [[package]] name = "rome_analyze" -version = "0.2.0" +version = "0.0.0" dependencies = [ "bitflags 2.3.3", "rome_console", @@ -1733,14 +1733,14 @@ dependencies = [ [[package]] name = "rome_control_flow" -version = "0.2.0" +version = "0.0.0" dependencies = [ "rome_rowan", ] [[package]] name = "rome_css_factory" -version = "0.2.0" +version = "0.0.0" dependencies = [ "rome_css_syntax", "rome_rowan", @@ -1748,7 +1748,7 @@ dependencies = [ [[package]] name = "rome_css_parser" -version = "0.1.0" +version = "0.0.1" dependencies = [ "insta", "quickcheck", @@ -1766,14 +1766,14 @@ dependencies = [ [[package]] name = "rome_css_syntax" -version = "0.2.0" +version = "0.0.1" dependencies = [ "rome_rowan", ] [[package]] name = "rome_deserialize" -version = "0.2.0" +version = "0.0.0" dependencies = [ "indexmap", "rome_console", @@ -1789,7 +1789,7 @@ dependencies = [ [[package]] name = "rome_diagnostics" -version = "0.2.0" +version = "0.0.1" dependencies = [ "backtrace", "bitflags 2.3.3", @@ -1810,7 +1810,7 @@ dependencies = [ [[package]] name = "rome_diagnostics_categories" -version = "0.2.0" +version = "0.0.1" dependencies = [ "quote", "schemars", @@ -1833,7 +1833,7 @@ version = "0.0.0" [[package]] name = "rome_formatter" -version = "0.1.0" +version = "0.0.1" dependencies = [ "cfg-if", "countme", @@ -1854,7 +1854,7 @@ dependencies = [ [[package]] name = "rome_formatter_test" -version = "0.2.0" +version = "0.1.0" dependencies = [ "insta", "rome_console", @@ -1872,7 +1872,7 @@ dependencies = [ [[package]] name = "rome_fs" -version = "0.2.0" +version = "0.0.0" dependencies = [ "crossbeam", "indexmap", @@ -1887,7 +1887,7 @@ dependencies = [ [[package]] name = "rome_js_analyze" -version = "0.2.0" +version = "0.0.0" dependencies = [ "bpaf", "countme", @@ -1921,7 +1921,7 @@ dependencies = [ [[package]] name = "rome_js_factory" -version = "0.2.0" +version = "0.0.2" dependencies = [ "rome_js_syntax", "rome_rowan", @@ -1929,7 +1929,7 @@ dependencies = [ [[package]] name = "rome_js_formatter" -version = "0.1.0" +version = "0.0.2" dependencies = [ "cfg-if", "countme", @@ -1960,7 +1960,7 @@ dependencies = [ [[package]] name = "rome_js_parser" -version = "0.1.0" +version = "0.0.2" dependencies = [ "bitflags 2.3.3", "cfg-if", @@ -1987,7 +1987,7 @@ dependencies = [ [[package]] name = "rome_js_semantic" -version = "0.2.0" +version = "0.1.0" dependencies = [ "rome_console", "rome_diagnostics", @@ -2001,7 +2001,7 @@ dependencies = [ [[package]] name = "rome_js_syntax" -version = "0.2.0" +version = "0.0.2" dependencies = [ "rome_console", "rome_diagnostics", @@ -2013,7 +2013,7 @@ dependencies = [ [[package]] name = "rome_js_transform" -version = "0.2.0" +version = "0.1.0" dependencies = [ "insta", "lazy_static", @@ -2035,7 +2035,7 @@ version = "0.0.1" [[package]] name = "rome_json_analyze" -version = "0.2.0" +version = "0.0.0" dependencies = [ "insta", "lazy_static", @@ -2053,7 +2053,7 @@ dependencies = [ [[package]] name = "rome_json_factory" -version = "0.2.0" +version = "0.0.1" dependencies = [ "rome_json_syntax", "rome_rowan", @@ -2061,7 +2061,7 @@ dependencies = [ [[package]] name = "rome_json_formatter" -version = "0.1.0" +version = "0.0.1" dependencies = [ "countme", "insta", @@ -2082,7 +2082,7 @@ dependencies = [ [[package]] name = "rome_json_parser" -version = "0.1.0" +version = "0.0.1" dependencies = [ "insta", "quickcheck", @@ -2100,7 +2100,7 @@ dependencies = [ [[package]] name = "rome_json_syntax" -version = "0.2.0" +version = "0.0.1" dependencies = [ "rome_rowan", ] @@ -2141,7 +2141,7 @@ dependencies = [ [[package]] name = "rome_migrate" -version = "0.2.0" +version = "0.1.0" dependencies = [ "lazy_static", "rome_analyze", @@ -2153,7 +2153,7 @@ dependencies = [ [[package]] name = "rome_parser" -version = "0.2.0" +version = "0.0.1" dependencies = [ "drop_bomb", "rome_console", @@ -2163,7 +2163,7 @@ dependencies = [ [[package]] name = "rome_rowan" -version = "0.2.0" +version = "0.0.1" dependencies = [ "countme", "hashbrown", @@ -2217,7 +2217,7 @@ dependencies = [ [[package]] name = "rome_suppression" -version = "0.2.0" +version = "0.0.1" dependencies = [ "rome_console", "rome_diagnostics", @@ -2267,7 +2267,7 @@ dependencies = [ [[package]] name = "rome_wasm" -version = "0.2.0" +version = "0.0.0" dependencies = [ "console_error_panic_hook", "js-sys", @@ -2626,7 +2626,7 @@ dependencies = [ [[package]] name = "tests_macros" -version = "0.2.0" +version = "0.0.0" dependencies = [ "case", "globwalk", @@ -3373,7 +3373,6 @@ dependencies = [ "rome_js_analyze", "rome_js_factory", "rome_js_formatter", - "rome_js_parser", "rome_js_syntax", "rome_json_analyze", "rome_json_formatter", diff --git a/Cargo.toml b/Cargo.toml index 589827a8571..5e86ca561d9 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -34,33 +34,33 @@ rome_control_flow = { path = "./crates/rome_control_flow" } rome_css_factory = { path = "./crates/rome_css_factory" } rome_css_parser = { path = "./crates/rome_css_parser" } rome_css_syntax = { path = "./crates/rome_css_syntax" } -rome_deserialize = { version = "0.2.0", path = "./crates/rome_deserialize" } -rome_diagnostics = { version = "0.2.0", path = "./crates/rome_diagnostics" } -rome_diagnostics_categories = { version = "0.2.0", path = "./crates/rome_diagnostics_categories" } +rome_deserialize = { version = "0.0.0", path = "./crates/rome_deserialize" } +rome_diagnostics = { version = "0.0.1", path = "./crates/rome_diagnostics" } +rome_diagnostics_categories = { version = "0.0.1", path = "./crates/rome_diagnostics_categories" } rome_diagnostics_macros = { version = "0.0.1", path = "./crates/rome_diagnostics_macros" } rome_flags = { path = "./crates/rome_flags" } -rome_formatter = { version = "0.1.0", path = "./crates/rome_formatter" } +rome_formatter = { version = "0.0.1", path = "./crates/rome_formatter" } rome_formatter_test = { path = "./crates/rome_formatter_test" } rome_fs = { path = "./crates/rome_fs" } rome_js_analyze = { path = "./crates/rome_js_analyze" } -rome_js_factory = { version = "0.2.0", path = "./crates/rome_js_factory" } +rome_js_factory = { version = "0.0.2", path = "./crates/rome_js_factory" } rome_js_formatter = { path = "./crates/rome_js_formatter" } rome_js_parser = { path = "./crates/rome_js_parser" } rome_js_semantic = { path = "./crates/rome_js_semantic" } -rome_js_syntax = { version = "0.2.0", path = "./crates/rome_js_syntax" } +rome_js_syntax = { version = "0.0.2", path = "./crates/rome_js_syntax" } rome_js_unicode_table = { version = "0.0.1", path = "./crates/rome_js_unicode_table" } rome_json_analyze = { path = "./crates/rome_json_analyze" } -rome_json_factory = { version = "0.2.0", path = "./crates/rome_json_factory" } +rome_json_factory = { version = "0.0.1", path = "./crates/rome_json_factory" } rome_json_formatter = { path = "./crates/rome_json_formatter" } rome_json_parser = { path = "./crates/rome_json_parser" } -rome_json_syntax = { version = "0.2.0", path = "./crates/rome_json_syntax" } +rome_json_syntax = { version = "0.0.1", path = "./crates/rome_json_syntax" } rome_lsp = { path = "./crates/rome_lsp" } rome_markup = { version = "0.0.1", path = "./crates/rome_markup" } rome_migrate = { path = "./crates/rome_migrate" } -rome_parser = { version = "0.2.0", path = "./crates/rome_parser" } -rome_rowan = { version = "0.2.0", path = "./crates/rome_rowan" } +rome_parser = { version = "0.0.1", path = "./crates/rome_parser" } +rome_rowan = { version = "0.0.1", path = "./crates/rome_rowan" } rome_service = { path = "./crates/rome_service" } -rome_suppression = { version = "0.2.0", path = "./crates/rome_suppression" } +rome_suppression = { version = "0.0.1", path = "./crates/rome_suppression" } rome_test_utils = { path = "./crates/rome_test_utils" } rome_text_edit = { version = "0.0.1", path = "./crates/rome_text_edit" } rome_text_size = { version = "0.0.1", path = "./crates/rome_text_size" } @@ -68,7 +68,7 @@ tests_macros = { path = "./crates/tests_macros" } # Crates needed in the workspace bitflags = "2.3.1" -bpaf = { version = "0.9.3", features = ["derive"] } +bpaf = { version = "0.9.2", features = ["derive"] } countme = "3.0.1" dashmap = "5.4.0" indexmap = "1.9.3" diff --git a/crates/rome_analyze/Cargo.toml b/crates/rome_analyze/Cargo.toml index 918552578fc..30ac3466b44 100644 --- a/crates/rome_analyze/Cargo.toml +++ b/crates/rome_analyze/Cargo.toml @@ -4,7 +4,7 @@ edition.workspace = true license.workspace = true name = "rome_analyze" repository.workspace = true -version = "0.2.0" +version = "0.0.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/crates/rome_cli/src/cli_options.rs b/crates/rome_cli/src/cli_options.rs index 02d1f9a4fc5..f4a5a10f753 100644 --- a/crates/rome_cli/src/cli_options.rs +++ b/crates/rome_cli/src/cli_options.rs @@ -42,7 +42,7 @@ pub struct CliOptions { pub error_on_warnings: bool, /// Reports information using the JSON format - #[bpaf(long("json"), switch, hide_usage, hide)] + #[bpaf(long("json"), switch, hide_usage)] pub json: bool, } diff --git a/crates/rome_cli/src/commands/mod.rs b/crates/rome_cli/src/commands/mod.rs index ca26f1f158c..a0883c2fff4 100644 --- a/crates/rome_cli/src/commands/mod.rs +++ b/crates/rome_cli/src/commands/mod.rs @@ -155,7 +155,7 @@ pub enum RomeCommand { Init, /// Acts as a server for the Language Server Protocol over stdin/stdout #[bpaf(command("lsp-proxy"))] - LspProxy(#[bpaf(external(cli_options), hide_usage)] CliOptions), + LspProxy(#[bpaf(external(cli_options))] CliOptions), /// It updates the configuration when there are breaking changes #[bpaf(command)] Migrate( diff --git a/crates/rome_cli/tests/snapshots/main_commands_check/check_help.snap b/crates/rome_cli/tests/snapshots/main_commands_check/check_help.snap index c1b90e9fbab..d940f2f87a4 100644 --- a/crates/rome_cli/tests/snapshots/main_commands_check/check_help.snap +++ b/crates/rome_cli/tests/snapshots/main_commands_check/check_help.snap @@ -26,8 +26,8 @@ The configuration that is contained inside the file `rome.json` --indent-style= The indent style. --indent-size=NUMBER The size of the indentation, 2 by default --line-width=NUMBER What's the max width of a line. Defaults to 80. - --quote-style= The type of quotes used in JavaScript code. Defaults to double. - --jsx-quote-style= The type of quotes used in JSX. Defaults to double. + --quote-style= The style for quotes. Defaults to double. + --jsx-quote-style= The style for JSX quotes. Defaults to double. --quote-properties= When properties in objects are quoted. Defaults to asNeeded. --trailing-comma= Print trailing commas wherever possible in multi-line comma-separated syntactic structures. Defaults to "all". @@ -50,6 +50,7 @@ Global options applied to all commands --no-errors-on-unmatched Silence errors that would be emitted in case no files were processed during the execution of the command. --error-on-warnings Tell Rome to exit with an error code if some diagnostics emit warnings. + --json Reports information using the JSON format Available positional items: PATH Single file, single path or list of paths diff --git a/crates/rome_cli/tests/snapshots/main_commands_ci/ci_help.snap b/crates/rome_cli/tests/snapshots/main_commands_ci/ci_help.snap index 3178eb80546..1059bc2f7d6 100644 --- a/crates/rome_cli/tests/snapshots/main_commands_ci/ci_help.snap +++ b/crates/rome_cli/tests/snapshots/main_commands_ci/ci_help.snap @@ -27,8 +27,8 @@ The configuration that is contained inside the file `rome.json` --indent-style= The indent style. --indent-size=NUMBER The size of the indentation, 2 by default --line-width=NUMBER What's the max width of a line. Defaults to 80. - --quote-style= The type of quotes used in JavaScript code. Defaults to double. - --jsx-quote-style= The type of quotes used in JSX. Defaults to double. + --quote-style= The style for quotes. Defaults to double. + --jsx-quote-style= The style for JSX quotes. Defaults to double. --quote-properties= When properties in objects are quoted. Defaults to asNeeded. --trailing-comma= Print trailing commas wherever possible in multi-line comma-separated syntactic structures. Defaults to "all". @@ -51,6 +51,7 @@ Global options applied to all commands --no-errors-on-unmatched Silence errors that would be emitted in case no files were processed during the execution of the command. --error-on-warnings Tell Rome to exit with an error code if some diagnostics emit warnings. + --json Reports information using the JSON format Available positional items: PATH Single file, single path or list of paths diff --git a/crates/rome_cli/tests/snapshots/main_commands_format/format_help.snap b/crates/rome_cli/tests/snapshots/main_commands_format/format_help.snap index e5a68db4f73..c3596856de3 100644 --- a/crates/rome_cli/tests/snapshots/main_commands_format/format_help.snap +++ b/crates/rome_cli/tests/snapshots/main_commands_format/format_help.snap @@ -9,22 +9,11 @@ Run the formatter on a set of files. Usage: format [--write] [PATH]... -Generic options applied to all files +Options applied to the formatter --indent-style= The indent style. --indent-size=NUMBER The size of the indentation, 2 by default --line-width=NUMBER What's the max width of a line. Defaults to 80. -Formatting options specific to the JavaScript files - --quote-style= The type of quotes used in JavaScript code. Defaults to double. - --jsx-quote-style= The type of quotes used in JSX. Defaults to double. - --quote-properties= When properties in objects are quoted. Defaults to asNeeded. - --trailing-comma= Print trailing commas wherever possible in multi-line comma-separated - syntactic structures. Defaults to "all". - --semicolons= Whether the formatter prints semicolons for all statements or - only in for statements where it is necessary because of ASI. - --arrow-parentheses= Whether to add non-necessary parentheses to arrow functions. - Defaults to "always". - Set of properties to integrate Rome with a VCS software. --vcs-client-kind= The kind of client. --vcs-enabled= Whether Rome should integrate itself with the VCS client @@ -56,11 +45,21 @@ Global options applied to all commands --no-errors-on-unmatched Silence errors that would be emitted in case no files were processed during the execution of the command. --error-on-warnings Tell Rome to exit with an error code if some diagnostics emit warnings. + --json Reports information using the JSON format Available positional items: PATH Single file, single path or list of paths. Available options: + --quote-style= The style for quotes. Defaults to double. + --jsx-quote-style= The style for JSX quotes. Defaults to double. + --quote-properties= When properties in objects are quoted. Defaults to asNeeded. + --trailing-comma= Print trailing commas wherever possible in multi-line comma-separated + syntactic structures. Defaults to "all". + --semicolons= Whether the formatter prints semicolons for all statements or + only in for statements where it is necessary because of ASI. + --arrow-parentheses= Whether to add non-necessary parentheses to arrow functions. + Defaults to "always". --stdin-file-path=PATH A file name with its extension to pass when reading from standard in, e.g. echo 'let a;' | rome format --stdin-file-path=file.js". --write Writes formatted files to file system. diff --git a/crates/rome_cli/tests/snapshots/main_commands_lint/check_help.snap b/crates/rome_cli/tests/snapshots/main_commands_lint/check_help.snap index 6020c4821aa..131a7a4bd93 100644 --- a/crates/rome_cli/tests/snapshots/main_commands_lint/check_help.snap +++ b/crates/rome_cli/tests/snapshots/main_commands_lint/check_help.snap @@ -26,8 +26,8 @@ The configuration that is contained inside the file `rome.json` --indent-style= The indent style. --indent-size=NUMBER The size of the indentation, 2 by default --line-width=NUMBER What's the max width of a line. Defaults to 80. - --quote-style= The type of quotes used in JavaScript code. Defaults to double. - --jsx-quote-style= The type of quotes used in JSX. Defaults to double. + --quote-style= The style for quotes. Defaults to double. + --jsx-quote-style= The style for JSX quotes. Defaults to double. --quote-properties= When properties in objects are quoted. Defaults to asNeeded. --trailing-comma= Print trailing commas wherever possible in multi-line comma-separated syntactic structures. Defaults to "all". @@ -50,6 +50,7 @@ Global options applied to all commands --no-errors-on-unmatched Silence errors that would be emitted in case no files were processed during the execution of the command. --error-on-warnings Tell Rome to exit with an error code if some diagnostics emit warnings. + --json Reports information using the JSON format Available positional items: PATH Single file, single path or list of paths diff --git a/crates/rome_cli/tests/snapshots/main_commands_lsp_proxy/lsp_proxy_help.snap b/crates/rome_cli/tests/snapshots/main_commands_lsp_proxy/lsp_proxy_help.snap index 2d3212cbdbd..77bd08ebb9b 100644 --- a/crates/rome_cli/tests/snapshots/main_commands_lsp_proxy/lsp_proxy_help.snap +++ b/crates/rome_cli/tests/snapshots/main_commands_lsp_proxy/lsp_proxy_help.snap @@ -7,7 +7,8 @@ expression: content ```block Acts as a server for the Language Server Protocol over stdin/stdout -Usage: lsp-proxy +Usage: lsp-proxy [--colors=] [--use-server] [--verbose] [--config-path=PATH] [--max-diagnostics +=NUMBER] [--skip-errors] [--no-errors-on-unmatched] [--error-on-warnings] Global options applied to all commands --colors= Set the formatting mode for markup: "off" prints everything as plain text, @@ -23,6 +24,7 @@ Global options applied to all commands --no-errors-on-unmatched Silence errors that would be emitted in case no files were processed during the execution of the command. --error-on-warnings Tell Rome to exit with an error code if some diagnostics emit warnings. + --json Reports information using the JSON format Available options: -h, --help Prints help information diff --git a/crates/rome_cli/tests/snapshots/main_commands_migrate/migrate_help.snap b/crates/rome_cli/tests/snapshots/main_commands_migrate/migrate_help.snap index bfd0a995e45..edfc6ea8445 100644 --- a/crates/rome_cli/tests/snapshots/main_commands_migrate/migrate_help.snap +++ b/crates/rome_cli/tests/snapshots/main_commands_migrate/migrate_help.snap @@ -23,6 +23,7 @@ Global options applied to all commands --no-errors-on-unmatched Silence errors that would be emitted in case no files were processed during the execution of the command. --error-on-warnings Tell Rome to exit with an error code if some diagnostics emit warnings. + --json Reports information using the JSON format Available options: --write Writes the new configuration file to disk diff --git a/crates/rome_console/Cargo.toml b/crates/rome_console/Cargo.toml index 55d58a87e84..7ae46b7d5ff 100644 --- a/crates/rome_console/Cargo.toml +++ b/crates/rome_console/Cargo.toml @@ -1,7 +1,7 @@ [package] authors.workspace = true description = "Expose utilities to print HTML-syntax messages" -documentation = "https://docs.rs/rome_console" +documentation = "https://rustdocs.rome.tools/rome_console/index.html" edition.workspace = true license.workspace = true name = "rome_console" diff --git a/crates/rome_control_flow/Cargo.toml b/crates/rome_control_flow/Cargo.toml index ff78f60ff34..8ae4e347f04 100644 --- a/crates/rome_control_flow/Cargo.toml +++ b/crates/rome_control_flow/Cargo.toml @@ -4,7 +4,7 @@ edition.workspace = true license.workspace = true name = "rome_control_flow" repository.workspace = true -version = "0.2.0" +version = "0.0.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/crates/rome_css_factory/Cargo.toml b/crates/rome_css_factory/Cargo.toml index 8b9b245a585..bdee7dcf662 100644 --- a/crates/rome_css_factory/Cargo.toml +++ b/crates/rome_css_factory/Cargo.toml @@ -4,7 +4,7 @@ edition.workspace = true license.workspace = true name = "rome_css_factory" repository.workspace = true -version = "0.2.0" +version = "0.0.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/crates/rome_css_parser/Cargo.toml b/crates/rome_css_parser/Cargo.toml index b1a35d9a94a..3fb56d1d740 100644 --- a/crates/rome_css_parser/Cargo.toml +++ b/crates/rome_css_parser/Cargo.toml @@ -2,13 +2,13 @@ authors.workspace = true categories = ["parser-implementations", "development-tools"] description = "An extremely fast CSS parser" -documentation = "https://docs.rs/rome_css_parser" +documentation = "https://rustdocs.rome.tools/rome_css_parser/index.html" edition.workspace = true homepage.workspace = true license.workspace = true name = "rome_css_parser" repository.workspace = true -version = "0.1.0" +version = "0.0.1" [dependencies] rome_console = { workspace = true } diff --git a/crates/rome_css_parser/README.md b/crates/rome_css_parser/README.md index e250913070d..26047a3b77e 100644 --- a/crates/rome_css_parser/README.md +++ b/crates/rome_css_parser/README.md @@ -32,5 +32,5 @@ # `rome_css_parser` -Rome's CSS parser implementation. Follow the [documentation](https://docs.rs/rome_css_parser/latest). +Rome's CSS parser implementation. Follow the [documentation](https://rustdocs.rome.tools/rome_css_parser/index.html). diff --git a/crates/rome_css_syntax/Cargo.toml b/crates/rome_css_syntax/Cargo.toml index 699e9d3ea9c..770a2a9e4b7 100644 --- a/crates/rome_css_syntax/Cargo.toml +++ b/crates/rome_css_syntax/Cargo.toml @@ -1,12 +1,12 @@ [package] authors.workspace = true description = "SyntaxKind and common rowan definitions for rome_css_parser" -documentation = "https://docs.rs/rome_css_parser" +documentation = "https://rustdocs.rome.tools/rome_css_parser/index.html" edition.workspace = true license.workspace = true name = "rome_css_syntax" repository.workspace = true -version = "0.2.0" +version = "0.0.1" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/crates/rome_deserialize/Cargo.toml b/crates/rome_deserialize/Cargo.toml index c7ec0de6bf6..49e3cc21237 100644 --- a/crates/rome_deserialize/Cargo.toml +++ b/crates/rome_deserialize/Cargo.toml @@ -4,7 +4,7 @@ edition.workspace = true license.workspace = true name = "rome_deserialize" repository.workspace = true -version = "0.2.0" +version = "0.0.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/crates/rome_diagnostics/Cargo.toml b/crates/rome_diagnostics/Cargo.toml index a21ed43a8f1..0d2cc037c94 100644 --- a/crates/rome_diagnostics/Cargo.toml +++ b/crates/rome_diagnostics/Cargo.toml @@ -2,11 +2,11 @@ authors.workspace = true categories = ["development-tools"] description = "Pretty error reporting library" -documentation = "https://docs.rs/rome_diagnostics" +documentation = "https://rustdocs.rome.tools/rome_diagnostics/index.html" edition.workspace = true license.workspace = true name = "rome_diagnostics" -version = "0.2.0" +version = "0.0.1" [[example]] name = "cli" diff --git a/crates/rome_diagnostics_categories/Cargo.toml b/crates/rome_diagnostics_categories/Cargo.toml index fce943c29ee..28b27e119b1 100644 --- a/crates/rome_diagnostics_categories/Cargo.toml +++ b/crates/rome_diagnostics_categories/Cargo.toml @@ -1,12 +1,12 @@ [package] authors.workspace = true description = "Diagnostic categories for rome_diagnostics. It exposes a macro that emits compile-time errors for extranous categories." -documentation = "https://docs.rs/rome_diagnostics" +documentation = "https://rustdocs.rome.tools/rome_diagnostics/index.html" edition.workspace = true license.workspace = true name = "rome_diagnostics_categories" repository.workspace = true -version = "0.2.0" +version = "0.0.1" [dependencies] schemars = { workspace = true, optional = true } diff --git a/crates/rome_diagnostics_macros/Cargo.toml b/crates/rome_diagnostics_macros/Cargo.toml index 24b7f5cf9df..bc17493737a 100644 --- a/crates/rome_diagnostics_macros/Cargo.toml +++ b/crates/rome_diagnostics_macros/Cargo.toml @@ -1,7 +1,7 @@ [package] authors.workspace = true description = "A Macro to make a struct type a Rome diagnostic." -documentation = "https://docs.rs/rome_diagnostics" +documentation = "https://rustdocs.rome.tools/rome_diagnostics/index.html" edition.workspace = true license.workspace = true name = "rome_diagnostics_macros" diff --git a/crates/rome_formatter/Cargo.toml b/crates/rome_formatter/Cargo.toml index 20aea23070a..589a7c81020 100644 --- a/crates/rome_formatter/Cargo.toml +++ b/crates/rome_formatter/Cargo.toml @@ -1,12 +1,12 @@ [package] authors.workspace = true description = "Rome's formatter shared infrastructure" -documentation = "https://docs.rs/rome_formatter" +documentation = "https://rustdocs.rome.tools/rome_formatter/index.html" edition.workspace = true license.workspace = true name = "rome_formatter" repository.workspace = true -version = "0.1.0" +version = "0.0.1" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/crates/rome_formatter/README.md b/crates/rome_formatter/README.md index c392da854b2..05822d752a7 100644 --- a/crates/rome_formatter/README.md +++ b/crates/rome_formatter/README.md @@ -32,4 +32,4 @@ # `rome_formatter` -Rome's formatter implementation. Follow the [documentation](https://docs.rs/rome_formatter/). +Rome's formatter implementation. Follow the [documentation](https://rustdocs.rome.tools/rome_formatter/index.html). diff --git a/crates/rome_formatter_test/Cargo.toml b/crates/rome_formatter_test/Cargo.toml index bb664faea3e..9333fb98ad2 100644 --- a/crates/rome_formatter_test/Cargo.toml +++ b/crates/rome_formatter_test/Cargo.toml @@ -4,7 +4,7 @@ edition.workspace = true license.workspace = true name = "rome_formatter_test" repository.workspace = true -version = "0.2.0" +version = "0.1.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/crates/rome_fs/Cargo.toml b/crates/rome_fs/Cargo.toml index 0226b164bf7..0b65ad08a6b 100644 --- a/crates/rome_fs/Cargo.toml +++ b/crates/rome_fs/Cargo.toml @@ -4,7 +4,7 @@ edition.workspace = true license.workspace = true name = "rome_fs" repository.workspace = true -version = "0.2.0" +version = "0.0.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/crates/rome_js_analyze/Cargo.toml b/crates/rome_js_analyze/Cargo.toml index 74a760df0a3..1b0f661bcaf 100644 --- a/crates/rome_js_analyze/Cargo.toml +++ b/crates/rome_js_analyze/Cargo.toml @@ -4,7 +4,7 @@ edition.workspace = true license.workspace = true name = "rome_js_analyze" repository.workspace = true -version = "0.2.0" +version = "0.0.0" [dependencies] bpaf.workspace = true diff --git a/crates/rome_js_analyze/src/analyzers/complexity/no_useless_type_constraint.rs b/crates/rome_js_analyze/src/analyzers/complexity/no_useless_type_constraint.rs index 3b655d0745f..98fb83586e2 100644 --- a/crates/rome_js_analyze/src/analyzers/complexity/no_useless_type_constraint.rs +++ b/crates/rome_js_analyze/src/analyzers/complexity/no_useless_type_constraint.rs @@ -73,7 +73,7 @@ declare_rule! { /// type Bar = {}; ///``` pub(crate) NoUselessTypeConstraint { - version: "13.0.0", + version: "next", name: "noUselessTypeConstraint", recommended: true, } diff --git a/crates/rome_js_analyze/src/analyzers/nursery/no_control_characters_in_regex.rs b/crates/rome_js_analyze/src/analyzers/nursery/no_control_characters_in_regex.rs index e1f5cc4cef1..3f27f201791 100644 --- a/crates/rome_js_analyze/src/analyzers/nursery/no_control_characters_in_regex.rs +++ b/crates/rome_js_analyze/src/analyzers/nursery/no_control_characters_in_regex.rs @@ -61,7 +61,7 @@ declare_rule! { /// ``` /// pub(crate) NoControlCharactersInRegex { - version: "13.0.0", + version: "next", name: "noControlCharactersInRegex", recommended: true, } diff --git a/crates/rome_js_analyze/src/analyzers/nursery/no_excessive_complexity.rs b/crates/rome_js_analyze/src/analyzers/nursery/no_excessive_complexity.rs index c235af7cb9d..ad07dea9556 100644 --- a/crates/rome_js_analyze/src/analyzers/nursery/no_excessive_complexity.rs +++ b/crates/rome_js_analyze/src/analyzers/nursery/no_excessive_complexity.rs @@ -74,7 +74,7 @@ declare_rule! { /// The allowed values range from 1 through 254. The default is 10. /// pub(crate) NoExcessiveComplexity { - version: "13.0.0", + version: "next", name: "noExcessiveComplexity", recommended: false, } diff --git a/crates/rome_js_analyze/src/analyzers/nursery/no_fallthrough_switch_clause.rs b/crates/rome_js_analyze/src/analyzers/nursery/no_fallthrough_switch_clause.rs index 6ee17701ec6..a6057299027 100644 --- a/crates/rome_js_analyze/src/analyzers/nursery/no_fallthrough_switch_clause.rs +++ b/crates/rome_js_analyze/src/analyzers/nursery/no_fallthrough_switch_clause.rs @@ -40,7 +40,7 @@ declare_rule! { /// ``` /// pub(crate) NoFallthroughSwitchClause { - version: "13.0.0", + version: "next", name: "noFallthroughSwitchClause", recommended: false, } diff --git a/crates/rome_js_analyze/src/analyzers/nursery/no_nonoctal_decimal_escape.rs b/crates/rome_js_analyze/src/analyzers/nursery/no_nonoctal_decimal_escape.rs index 5d9978975ea..456eba49db3 100644 --- a/crates/rome_js_analyze/src/analyzers/nursery/no_nonoctal_decimal_escape.rs +++ b/crates/rome_js_analyze/src/analyzers/nursery/no_nonoctal_decimal_escape.rs @@ -52,7 +52,7 @@ declare_rule! { /// ``` /// pub(crate) NoNonoctalDecimalEscape { - version: "13.0.0", + version: "next", name: "noNonoctalDecimalEscape", recommended: true, } diff --git a/crates/rome_js_analyze/src/analyzers/nursery/no_static_only_class.rs b/crates/rome_js_analyze/src/analyzers/nursery/no_static_only_class.rs index 0e64e272f42..7cd87cb1cef 100644 --- a/crates/rome_js_analyze/src/analyzers/nursery/no_static_only_class.rs +++ b/crates/rome_js_analyze/src/analyzers/nursery/no_static_only_class.rs @@ -91,7 +91,7 @@ declare_rule! { /// } /// ``` pub(crate) NoStaticOnlyClass { - version: "13.0.0", + version: "next", name: "noStaticOnlyClass", recommended: true, } diff --git a/crates/rome_js_analyze/src/analyzers/nursery/no_useless_empty_export.rs b/crates/rome_js_analyze/src/analyzers/nursery/no_useless_empty_export.rs index 686d0865c2e..eeb3789a088 100644 --- a/crates/rome_js_analyze/src/analyzers/nursery/no_useless_empty_export.rs +++ b/crates/rome_js_analyze/src/analyzers/nursery/no_useless_empty_export.rs @@ -42,7 +42,7 @@ declare_rule! { /// ``` /// pub(crate) NoUselessEmptyExport { - version: "13.0.0", + version: "next", name: "noUselessEmptyExport", recommended: true, } diff --git a/crates/rome_js_analyze/src/analyzers/nursery/no_void.rs b/crates/rome_js_analyze/src/analyzers/nursery/no_void.rs index 8457bfae4d1..aee3ec2fd6a 100644 --- a/crates/rome_js_analyze/src/analyzers/nursery/no_void.rs +++ b/crates/rome_js_analyze/src/analyzers/nursery/no_void.rs @@ -20,7 +20,7 @@ declare_rule! { /// ``` /// pub(crate) NoVoid { - version: "13.0.0", + version: "next", name: "noVoid", recommended: false, } diff --git a/crates/rome_js_analyze/src/analyzers/nursery/use_arrow_function.rs b/crates/rome_js_analyze/src/analyzers/nursery/use_arrow_function.rs index cad8105446a..7a58b1faed8 100644 --- a/crates/rome_js_analyze/src/analyzers/nursery/use_arrow_function.rs +++ b/crates/rome_js_analyze/src/analyzers/nursery/use_arrow_function.rs @@ -67,7 +67,7 @@ declare_rule! { /// } /// ``` pub(crate) UseArrowFunction { - version: "13.0.0", + version: "next", name: "useArrowFunction", recommended: true, } diff --git a/crates/rome_js_analyze/src/analyzers/nursery/use_import_restrictions.rs b/crates/rome_js_analyze/src/analyzers/nursery/use_import_restrictions.rs index 78829de558c..8c00d78edd4 100644 --- a/crates/rome_js_analyze/src/analyzers/nursery/use_import_restrictions.rs +++ b/crates/rome_js_analyze/src/analyzers/nursery/use_import_restrictions.rs @@ -71,7 +71,7 @@ declare_rule! { /// ``` /// pub(crate) UseImportRestrictions { - version: "13.0.0", + version: "next", name: "useImportRestrictions", recommended: false, } diff --git a/crates/rome_js_analyze/src/assists/correctness/organize_imports.rs b/crates/rome_js_analyze/src/assists/correctness/organize_imports.rs index a13be6ce3e7..afad2378d09 100644 --- a/crates/rome_js_analyze/src/assists/correctness/organize_imports.rs +++ b/crates/rome_js_analyze/src/assists/correctness/organize_imports.rs @@ -666,7 +666,7 @@ impl PartialEq for ImportKey { /// are listed before imports closer to the source file. #[derive(Eq, Ord, PartialEq, PartialOrd)] enum ImportCategory { - /// Anything with an explicit `node:` prefix, or one of the recognized + /// Anythign with an explicit `node:` prefix, or one of the recognized /// Node built-ins, such `"fs"`, `"child_process"`, etc.. NodeBuiltin, /// NPM dependencies with an explicit `npm:` prefix, such as supported by diff --git a/crates/rome_js_analyze/src/semantic_analyzers/nursery/no_global_is_finite.rs b/crates/rome_js_analyze/src/semantic_analyzers/nursery/no_global_is_finite.rs index c68b223446f..95f6614c866 100644 --- a/crates/rome_js_analyze/src/semantic_analyzers/nursery/no_global_is_finite.rs +++ b/crates/rome_js_analyze/src/semantic_analyzers/nursery/no_global_is_finite.rs @@ -28,7 +28,7 @@ declare_rule! { /// Number.isFinite(false); // false /// ``` pub(crate) NoGlobalIsFinite { - version: "13.0.0", + version: "next", name: "noGlobalIsFinite", recommended: true, } diff --git a/crates/rome_js_analyze/src/semantic_analyzers/nursery/no_global_is_nan.rs b/crates/rome_js_analyze/src/semantic_analyzers/nursery/no_global_is_nan.rs index c4bd2b11737..e409eb75888 100644 --- a/crates/rome_js_analyze/src/semantic_analyzers/nursery/no_global_is_nan.rs +++ b/crates/rome_js_analyze/src/semantic_analyzers/nursery/no_global_is_nan.rs @@ -29,7 +29,7 @@ declare_rule! { /// ``` /// pub(crate) NoGlobalIsNan { - version: "13.0.0", + version: "next", name: "noGlobalIsNan", recommended: true, } diff --git a/crates/rome_js_analyze/src/semantic_analyzers/nursery/no_unsafe_declaration_merging.rs b/crates/rome_js_analyze/src/semantic_analyzers/nursery/no_unsafe_declaration_merging.rs index a9436731c3b..08a90c99f59 100644 --- a/crates/rome_js_analyze/src/semantic_analyzers/nursery/no_unsafe_declaration_merging.rs +++ b/crates/rome_js_analyze/src/semantic_analyzers/nursery/no_unsafe_declaration_merging.rs @@ -46,7 +46,7 @@ declare_rule! { /// enum Baz {} /// ``` pub(crate) NoUnsafeDeclarationMerging { - version: "13.0.0", + version: "next", name: "noUnsafeDeclarationMerging", recommended: true, } diff --git a/crates/rome_js_analyze/src/semantic_analyzers/nursery/use_is_array.rs b/crates/rome_js_analyze/src/semantic_analyzers/nursery/use_is_array.rs index 1de105c6970..b6e03f58502 100644 --- a/crates/rome_js_analyze/src/semantic_analyzers/nursery/use_is_array.rs +++ b/crates/rome_js_analyze/src/semantic_analyzers/nursery/use_is_array.rs @@ -37,7 +37,7 @@ declare_rule! { /// ``` /// pub(crate) UseIsArray { - version: "13.0.0", + version: "next", name: "useIsArray", recommended: true, } diff --git a/crates/rome_js_analyze/src/semantic_analyzers/nursery/use_naming_convention.rs b/crates/rome_js_analyze/src/semantic_analyzers/nursery/use_naming_convention.rs index f4cda0328d6..3a4e89cf4b5 100644 --- a/crates/rome_js_analyze/src/semantic_analyzers/nursery/use_naming_convention.rs +++ b/crates/rome_js_analyze/src/semantic_analyzers/nursery/use_naming_convention.rs @@ -268,7 +268,7 @@ declare_rule! { /// [`PascalCase`]: https://en.wikipedia.org/wiki/Camel_case /// [`CONSTANT_CASE`]: https://en.wikipedia.org/wiki/Snake_case pub(crate) UseNamingConvention { - version: "13.0.0", + version: "next", name: "useNamingConvention", recommended: false, } diff --git a/crates/rome_js_factory/Cargo.toml b/crates/rome_js_factory/Cargo.toml index ac534a99d7f..d0bb609e390 100644 --- a/crates/rome_js_factory/Cargo.toml +++ b/crates/rome_js_factory/Cargo.toml @@ -1,12 +1,12 @@ [package] authors.workspace = true description = "Utilities to create JavaScript AST for rome_js_parser" -documentation = "https://docs.rs/rome_js_factory" +documentation = "https://rustdocs.rome.tools/rome_js_factory/index.html" edition.workspace = true license.workspace = true name = "rome_js_factory" repository.workspace = true -version = "0.2.0" +version = "0.0.2" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/crates/rome_js_factory/README.md b/crates/rome_js_factory/README.md index 05005fc0b13..43cf690160f 100644 --- a/crates/rome_js_factory/README.md +++ b/crates/rome_js_factory/README.md @@ -32,5 +32,5 @@ # `rome_js_factory` -Rome's JavaScript parser implementation. Follow the [documentation](https://docs.rs/rome_js_parser/latest). +Rome's JavaScript parser implementation. Follow the [documentation](https://rustdocs.rome.tools/rome_js_parser/index.html). diff --git a/crates/rome_js_formatter/Cargo.toml b/crates/rome_js_formatter/Cargo.toml index 911340f322c..daa2f040b2a 100644 --- a/crates/rome_js_formatter/Cargo.toml +++ b/crates/rome_js_formatter/Cargo.toml @@ -2,12 +2,12 @@ authors.workspace = true categories = ["development-tools"] description = "Rome's JavaScript formatter" -documentation = "https://docs.rs/rome_js_formatter" +documentation = "https://rustdocs.rome.tools/rome_js_formatter/index.html" edition.workspace = true license.workspace = true name = "rome_js_formatter" repository.workspace = true -version = "0.1.0" +version = "0.0.2" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/crates/rome_js_formatter/README.md b/crates/rome_js_formatter/README.md index 71aaabcea1a..86bd22a8ed3 100644 --- a/crates/rome_js_formatter/README.md +++ b/crates/rome_js_formatter/README.md @@ -32,4 +32,4 @@ # `rome_js_formatter` -Rome's JavaScript formatter implementation. Follow the [documentation](https://docs.rs/rome_js_formatter/latest). +Rome's JavaScript formatter implementation. Follow the [documentation](https://rustdocs.rome.tools/rome_js_formatter/index.html). diff --git a/crates/rome_js_parser/Cargo.toml b/crates/rome_js_parser/Cargo.toml index b3f55136ba4..6fccb7dc515 100644 --- a/crates/rome_js_parser/Cargo.toml +++ b/crates/rome_js_parser/Cargo.toml @@ -2,13 +2,13 @@ authors.workspace = true categories = ["parser-implementations", "development-tools"] description = "An extremely fast ECMAScript parser for Rome, forked from the RSlint project" -documentation = "https://docs.rs/rome_js_parser" +documentation = "https://rustdocs.rome.tools/rome_js_parser/index.html" edition.workspace = true homepage.workspace = true license.workspace = true name = "rome_js_parser" repository.workspace = true -version = "0.1.0" +version = "0.0.2" [dependencies] bitflags = { workspace = true } diff --git a/crates/rome_js_parser/README.md b/crates/rome_js_parser/README.md index b5a4e39c4ba..817ee91420b 100644 --- a/crates/rome_js_parser/README.md +++ b/crates/rome_js_parser/README.md @@ -32,5 +32,5 @@ # `rome_js_parser` -Rome's JavaScript parser implementation. Follow the [documentation](https://docs.rs/rome_js_parser/). +Rome's JavaScript parser implementation. Follow the [documentation](https://rustdocs.rome.tools/rome_js_parser/index.html). diff --git a/crates/rome_js_semantic/Cargo.toml b/crates/rome_js_semantic/Cargo.toml index e639b923049..09b08cfbe83 100644 --- a/crates/rome_js_semantic/Cargo.toml +++ b/crates/rome_js_semantic/Cargo.toml @@ -1,12 +1,12 @@ [package] authors.workspace = true description = "Semantic model for the JavaScript language" -documentation = "https://docs.rs/rome_js_semantic" +documentation = "https://rustdocs.rome.tools/rome_js_semantic/index.html" edition.workspace = true license.workspace = true name = "rome_js_semantic" repository.workspace = true -version = "0.2.0" +version = "0.1.0" [dependencies] rome_js_syntax = { workspace = true } diff --git a/crates/rome_js_semantic/README.md b/crates/rome_js_semantic/README.md index 4c77a104787..33b6c3cc12a 100644 --- a/crates/rome_js_semantic/README.md +++ b/crates/rome_js_semantic/README.md @@ -32,5 +32,5 @@ # `rome_js_semantic` -Rome's semantic model for JavaScript. Follow the [documentation](https://docs.rs/rome_js_semantic/). +Rome's semantic model for JavaScript. Follow the [documentation](https://rustdocs.rome.tools/rome_js_semantic/index.html). diff --git a/crates/rome_js_syntax/Cargo.toml b/crates/rome_js_syntax/Cargo.toml index fb38c618370..33d8d5a5add 100644 --- a/crates/rome_js_syntax/Cargo.toml +++ b/crates/rome_js_syntax/Cargo.toml @@ -1,17 +1,17 @@ [package] authors.workspace = true description = "SyntaxKind and common rowan definitions for rome_js_parser" -documentation = "https://docs.rs/rome_js_syntax" +documentation = "https://rustdocs.rome.tools/rome_js_syntax/index.html" edition.workspace = true license.workspace = true name = "rome_js_syntax" repository.workspace = true -version = "0.2.0" +version = "0.0.2" [dependencies] rome_console = { version = "0.0.1", path = "../rome_console" } -rome_diagnostics = { version = "0.2.0", path = "../rome_diagnostics" } -rome_rowan = { version = "0.2.0", path = "../rome_rowan" } +rome_diagnostics = { version = "0.0.1", path = "../rome_diagnostics" } +rome_rowan = { version = "0.0.1", path = "../rome_rowan" } schemars = { version = "0.8.10", optional = true } serde = { version = "1.0.136", features = ["derive"], optional = true } diff --git a/crates/rome_js_syntax/README.md b/crates/rome_js_syntax/README.md index a96d5345b7b..d09804ef9ac 100644 --- a/crates/rome_js_syntax/README.md +++ b/crates/rome_js_syntax/README.md @@ -32,5 +32,5 @@ # `rome_js_syntax` -Rome's JavaScript parser implementation. Follow the [documentation](https://docs.rs/rome_js_parser/). +Rome's JavaScript parser implementation. Follow the [documentation](https://rustdocs.rome.tools/rome_js_parser/index.html). diff --git a/crates/rome_js_transform/Cargo.toml b/crates/rome_js_transform/Cargo.toml index 68928f1f316..2efa2cc0512 100644 --- a/crates/rome_js_transform/Cargo.toml +++ b/crates/rome_js_transform/Cargo.toml @@ -4,7 +4,7 @@ edition.workspace = true license.workspace = true name = "rome_js_transform" repository.workspace = true -version = "0.2.0" +version = "0.1.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/crates/rome_js_unicode_table/Cargo.toml b/crates/rome_js_unicode_table/Cargo.toml index fdb3e97cb87..81bf637e9a6 100644 --- a/crates/rome_js_unicode_table/Cargo.toml +++ b/crates/rome_js_unicode_table/Cargo.toml @@ -1,7 +1,7 @@ [package] authors = ["Rome Tools and Contributors"] description = "Unicode table for JavaScript IDs" -documentation = "https://docs.rs/rome_js_parser" +documentation = "https://rustdocs.rome.tools/rome_js_parser/index.html" edition.workspace = true license.workspace = true name = "rome_js_unicode_table" diff --git a/crates/rome_json_analyze/Cargo.toml b/crates/rome_json_analyze/Cargo.toml index b853f905849..a4f98b13a65 100644 --- a/crates/rome_json_analyze/Cargo.toml +++ b/crates/rome_json_analyze/Cargo.toml @@ -4,7 +4,7 @@ edition.workspace = true license.workspace = true name = "rome_json_analyze" repository.workspace = true -version = "0.2.0" +version = "0.0.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/crates/rome_json_analyze/src/analyzers/nursery/no_duplicate_json_keys.rs b/crates/rome_json_analyze/src/analyzers/nursery/no_duplicate_json_keys.rs index 2c2f40cab86..0953dcee895 100644 --- a/crates/rome_json_analyze/src/analyzers/nursery/no_duplicate_json_keys.rs +++ b/crates/rome_json_analyze/src/analyzers/nursery/no_duplicate_json_keys.rs @@ -27,7 +27,7 @@ declare_rule! { /// } /// ``` pub(crate) NoDuplicateJsonKeys { - version: "13.0.0", + version: "next", name: "noDuplicateJsonKeys", recommended: true, } diff --git a/crates/rome_json_factory/Cargo.toml b/crates/rome_json_factory/Cargo.toml index 487dc512e29..b6992c5bf8d 100644 --- a/crates/rome_json_factory/Cargo.toml +++ b/crates/rome_json_factory/Cargo.toml @@ -1,12 +1,12 @@ [package] authors.workspace = true description = "Utilities to create JSON AST for rome_json_parser" -documentation = "https://docs.rs/rome_json_parser" +documentation = "https://rustdocs.rome.tools/rome_json_parser/index.html" edition.workspace = true license.workspace = true name = "rome_json_factory" repository.workspace = true -version = "0.2.0" +version = "0.0.1" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/crates/rome_json_formatter/Cargo.toml b/crates/rome_json_formatter/Cargo.toml index 19d0964566e..e990ab5a670 100644 --- a/crates/rome_json_formatter/Cargo.toml +++ b/crates/rome_json_formatter/Cargo.toml @@ -2,13 +2,13 @@ authors.workspace = true categories = ["development-tools"] description = "Rome's JSON formatter" -documentation = "https://docs.rs/rome_js_formatter" +documentation = "https://rustdocs.rome.tools/rome_js_formatter/index.html" edition.workspace = true homepage.workspace = true license.workspace = true name = "rome_json_formatter" repository.workspace = true -version = "0.1.0" +version = "0.0.1" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/crates/rome_json_formatter/README.md b/crates/rome_json_formatter/README.md index 85393e5c61f..004595ef82e 100644 --- a/crates/rome_json_formatter/README.md +++ b/crates/rome_json_formatter/README.md @@ -32,5 +32,5 @@ # `rome_json_formatter` -Rome's JSON formatter implementation. Follow the [documentation](https://docs.rs/rome_json_formatter/). +Rome's JSON formatter implementation. Follow the [documentation](https://rustdocs.rome.tools/rome_json_formatter/index.html). diff --git a/crates/rome_json_parser/Cargo.toml b/crates/rome_json_parser/Cargo.toml index 09587f289a8..0472cf24d74 100644 --- a/crates/rome_json_parser/Cargo.toml +++ b/crates/rome_json_parser/Cargo.toml @@ -2,13 +2,13 @@ authors.workspace = true categories = ["parser-implementations", "development-tools"] description = "An extremely fast JSON parser" -documentation = "https://docs.rs/rome_json_parser" +documentation = "https://rustdocs.rome.tools/rome_json_parser/index.html" edition.workspace = true homepage.workspace = true license.workspace = true name = "rome_json_parser" repository.workspace = true -version = "0.1.0" +version = "0.0.1" [dependencies] rome_console = { workspace = true } diff --git a/crates/rome_json_parser/README.md b/crates/rome_json_parser/README.md index 5ae500af338..9b660600abb 100644 --- a/crates/rome_json_parser/README.md +++ b/crates/rome_json_parser/README.md @@ -32,5 +32,5 @@ # `rome_json_parser` -Rome's JSON parser implementation. Follow the [documentation](https://docs.rs/rome_json_parser/). +Rome's JSON parser implementation. Follow the [documentation](https://rustdocs.rome.tools/rome_json_parser/index.html). diff --git a/crates/rome_json_syntax/Cargo.toml b/crates/rome_json_syntax/Cargo.toml index cfeb3ca8bb7..87c0246b4c4 100644 --- a/crates/rome_json_syntax/Cargo.toml +++ b/crates/rome_json_syntax/Cargo.toml @@ -1,12 +1,12 @@ [package] authors.workspace = true description = "SyntaxKind and common rowan definitions for rome_json_parser" -documentation = "https://docs.rs/rome_json_parser" +documentation = "https://rustdocs.rome.tools/rome_json_parser/index.html" edition.workspace = true license.workspace = true name = "rome_json_syntax" repository.workspace = true -version = "0.2.0" +version = "0.0.1" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/crates/rome_markup/Cargo.toml b/crates/rome_markup/Cargo.toml index fccdfdbaacd..2ff3013872f 100644 --- a/crates/rome_markup/Cargo.toml +++ b/crates/rome_markup/Cargo.toml @@ -1,7 +1,7 @@ [package] authors.workspace = true description = "Macro to write text using a HTML-like syntax" -documentation = "https://docs.rs/rome_markup" +documentation = "https://rustdocs.rome.tools/rome_markup/index.html" edition.workspace = true license.workspace = true name = "rome_markup" diff --git a/crates/rome_migrate/Cargo.toml b/crates/rome_migrate/Cargo.toml index ea751df1695..d61ba17f43e 100644 --- a/crates/rome_migrate/Cargo.toml +++ b/crates/rome_migrate/Cargo.toml @@ -1,7 +1,7 @@ [package] edition = "2021" name = "rome_migrate" -version = "0.2.0" +version = "0.1.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/crates/rome_parser/Cargo.toml b/crates/rome_parser/Cargo.toml index 76052c9a3e3..85c4569724a 100644 --- a/crates/rome_parser/Cargo.toml +++ b/crates/rome_parser/Cargo.toml @@ -1,12 +1,12 @@ [package] authors.workspace = true description = "Shared infrastructure for Rome's parser" -documentation = "https://docs.rs/rome_parser" +documentation = "https://rustdocs.rome.tools/rome_parser/index.html" edition.workspace = true license.workspace = true name = "rome_parser" repository.workspace = true -version = "0.2.0" +version = "0.0.1" [dependencies] diff --git a/crates/rome_rowan/Cargo.toml b/crates/rome_rowan/Cargo.toml index a17cfe08da7..819ae0f46a0 100644 --- a/crates/rome_rowan/Cargo.toml +++ b/crates/rome_rowan/Cargo.toml @@ -1,12 +1,12 @@ [package] authors = ["Aleksey Kladov "] description = "Library for generic lossless syntax trees" -documentation = "https://docs.rs/rome_rowan" +documentation = "https://rustdocs.rome.tools/rome_rowan/index.html" edition.workspace = true license = "MIT OR Apache-2.0" name = "rome_rowan" repository.workspace = true -version = "0.2.0" +version = "0.0.1" [dependencies] countme = { workspace = true } diff --git a/crates/rome_service/src/configuration/formatter.rs b/crates/rome_service/src/configuration/formatter.rs index 12965a465c0..a1b9b9f935e 100644 --- a/crates/rome_service/src/configuration/formatter.rs +++ b/crates/rome_service/src/configuration/formatter.rs @@ -7,7 +7,7 @@ use rome_formatter::{IndentStyle, LineWidth}; use serde::{Deserialize, Serialize}; use std::str::FromStr; -/// Generic options applied to all files +/// Options applied to the formatter #[derive(Deserialize, Serialize, Debug, Eq, PartialEq, Clone, Bpaf)] #[cfg_attr(feature = "schema", derive(schemars::JsonSchema))] #[serde(rename_all = "camelCase", default, deny_unknown_fields)] diff --git a/crates/rome_service/src/configuration/javascript.rs b/crates/rome_service/src/configuration/javascript.rs index a812a162e6a..e2cecd8df46 100644 --- a/crates/rome_service/src/configuration/javascript.rs +++ b/crates/rome_service/src/configuration/javascript.rs @@ -6,17 +6,14 @@ use rome_js_formatter::context::{ }; use serde::{Deserialize, Serialize}; -/// A set of options applied to the JavaScript files #[derive(Default, Debug, Deserialize, Serialize, Eq, PartialEq, Clone, Bpaf)] #[cfg_attr(feature = "schema", derive(schemars::JsonSchema))] #[serde(default, deny_unknown_fields)] pub struct JavascriptConfiguration { - /// Formatting options #[serde(skip_serializing_if = "Option::is_none")] #[bpaf(external(javascript_formatter), optional)] pub formatter: Option, - /// Parsing options #[serde(skip_serializing_if = "Option::is_none")] #[bpaf(external(javascript_parser), optional)] pub parser: Option, @@ -67,16 +64,15 @@ impl JavascriptConfiguration { } } -/// Formatting options specific to the JavaScript files #[derive(Default, Debug, Deserialize, Serialize, Eq, PartialEq, Clone, Bpaf)] #[cfg_attr(feature = "schema", derive(schemars::JsonSchema))] #[serde(rename_all = "camelCase", default, deny_unknown_fields)] pub struct JavascriptFormatter { - /// The type of quotes used in JavaScript code. Defaults to double. + /// The style for quotes. Defaults to double. #[bpaf(long("quote-style"), argument("double|single"), optional)] #[serde(skip_serializing_if = "Option::is_none")] pub quote_style: Option, - /// The type of quotes used in JSX. Defaults to double. + /// The style for JSX quotes. Defaults to double. #[bpaf(long("jsx-quote-style"), argument("double|single"), optional)] #[serde(skip_serializing_if = "Option::is_none")] pub jsx_quote_style: Option, @@ -137,7 +133,6 @@ impl MergeWith for JavascriptFormatter { #[serde(default, deny_unknown_fields)] pub struct JavascriptOrganizeImports {} -/// Options that changes how the JavaScript parser behaves #[derive(Default, Debug, Deserialize, Serialize, Eq, PartialEq, Clone, Bpaf)] #[cfg_attr(feature = "schema", derive(schemars::JsonSchema))] #[serde(rename_all = "camelCase", default, deny_unknown_fields)] diff --git a/crates/rome_service/src/configuration/json.rs b/crates/rome_service/src/configuration/json.rs index 5a5f54ffe1b..0c9f7c3e6e3 100644 --- a/crates/rome_service/src/configuration/json.rs +++ b/crates/rome_service/src/configuration/json.rs @@ -2,12 +2,10 @@ use crate::configuration::merge::MergeWith; use bpaf::Bpaf; use serde::{Deserialize, Serialize}; -/// Options applied to JSON files #[derive(Default, Debug, Deserialize, Serialize, Eq, PartialEq, Clone, Bpaf)] #[cfg_attr(feature = "schema", derive(schemars::JsonSchema))] #[serde(default, deny_unknown_fields)] pub struct JsonConfiguration { - /// Parsing options #[serde(skip_serializing_if = "Option::is_none")] #[bpaf(external(json_parser), optional)] pub parser: Option, @@ -31,7 +29,6 @@ impl MergeWith for JsonConfiguration { #[serde(default, deny_unknown_fields)] pub struct JavascriptOrganizeImports {} -/// Options that changes how the JSON parser behaves #[derive(Default, Debug, Deserialize, Serialize, Eq, PartialEq, Clone, Bpaf)] #[cfg_attr(feature = "schema", derive(schemars::JsonSchema))] #[serde(rename_all = "camelCase", default, deny_unknown_fields)] diff --git a/crates/rome_service/src/file_handlers/mod.rs b/crates/rome_service/src/file_handlers/mod.rs index 8244e88801d..80d2866fde9 100644 --- a/crates/rome_service/src/file_handlers/mod.rs +++ b/crates/rome_service/src/file_handlers/mod.rs @@ -45,10 +45,8 @@ pub enum Language { impl Language { /// Files that can be bypassed, because correctly handled by the JSON parser - pub(crate) const ALLOWED_FILES: &'static [&'static str; 15] = &[ + pub(crate) const ALLOWED_FILES: &'static [&'static str; 13] = &[ "typescript.json", - "tsconfig.json", - "jsconfig.json", "tslint.json", "babel.config.json", ".babelrc.json", diff --git a/crates/rome_suppression/Cargo.toml b/crates/rome_suppression/Cargo.toml index 8ff70345e20..a5489b85f44 100644 --- a/crates/rome_suppression/Cargo.toml +++ b/crates/rome_suppression/Cargo.toml @@ -5,7 +5,7 @@ edition = { workspace = true } license = { workspace = true } name = "rome_suppression" repository = { workspace = true } -version = "0.2.0" +version = "0.0.1" [dependencies] diff --git a/crates/rome_text_edit/Cargo.toml b/crates/rome_text_edit/Cargo.toml index 1e23791b5d4..f0ab1996790 100644 --- a/crates/rome_text_edit/Cargo.toml +++ b/crates/rome_text_edit/Cargo.toml @@ -1,7 +1,7 @@ [package] authors.workspace = true description = "Simple text editing crate ported from rust-analyzer" -documentation = "https://docs.rs/rome_text_edit" +documentation = "https://rustdocs.rome.tools/rome_text_edit/index.html" edition.workspace = true license = "MIT OR Apache-2.0" name = "rome_text_edit" diff --git a/crates/rome_text_size/Cargo.toml b/crates/rome_text_size/Cargo.toml index a43251b64a9..179d1f5f8e9 100644 --- a/crates/rome_text_size/Cargo.toml +++ b/crates/rome_text_size/Cargo.toml @@ -5,7 +5,7 @@ version = "0.0.1" authors = ["Aleksey Kladov ", "Christopher Durham (CAD97) "] description = "Fork of the crate text_size" -documentation = "https://docs.rs/rome_text_size" +documentation = "https://rustdocs.rome.tools/rome_text_size/index.html" license = "MIT OR Apache-2.0" repository.workspace = true diff --git a/crates/rome_wasm/Cargo.toml b/crates/rome_wasm/Cargo.toml index 7d3e66e5777..7b14c33f752 100644 --- a/crates/rome_wasm/Cargo.toml +++ b/crates/rome_wasm/Cargo.toml @@ -5,7 +5,7 @@ edition = "2021" license = "MIT" name = "rome_wasm" repository = "https://github.com/rome/tools" -version = "0.2.0" +version = "0.0.0" [lib] diff --git a/crates/tests_macros/Cargo.toml b/crates/tests_macros/Cargo.toml index 36bbcddbfa3..5d9b62dc924 100644 --- a/crates/tests_macros/Cargo.toml +++ b/crates/tests_macros/Cargo.toml @@ -3,7 +3,7 @@ description = "" edition.workspace = true license.workspace = true name = "tests_macros" -version = "0.2.0" +version = "0.0.0" [lib] proc-macro = true diff --git a/editors/vscode/configuration_schema.json b/editors/vscode/configuration_schema.json index e59b4a8b83b..2838d5f0ac2 100644 --- a/editors/vscode/configuration_schema.json +++ b/editors/vscode/configuration_schema.json @@ -605,7 +605,7 @@ "additionalProperties": false }, "FormatterConfiguration": { - "description": "Generic options applied to all files", + "description": "Options applied to the formatter", "type": "object", "properties": { "enabled": { "default": true, "type": ["boolean", "null"] }, @@ -675,11 +675,9 @@ "additionalProperties": false }, "JavascriptConfiguration": { - "description": "A set of options applied to the JavaScript files", "type": "object", "properties": { "formatter": { - "description": "Formatting options", "anyOf": [ { "$ref": "#/definitions/JavascriptFormatter" }, { "type": "null" } @@ -696,7 +694,6 @@ ] }, "parser": { - "description": "Parsing options", "anyOf": [ { "$ref": "#/definitions/JavascriptParser" }, { "type": "null" } @@ -706,7 +703,6 @@ "additionalProperties": false }, "JavascriptFormatter": { - "description": "Formatting options specific to the JavaScript files", "type": "object", "properties": { "arrowParentheses": { @@ -717,7 +713,7 @@ ] }, "jsxQuoteStyle": { - "description": "The type of quotes used in JSX. Defaults to double.", + "description": "The style for JSX quotes. Defaults to double.", "anyOf": [{ "$ref": "#/definitions/QuoteStyle" }, { "type": "null" }] }, "quoteProperties": { @@ -728,7 +724,7 @@ ] }, "quoteStyle": { - "description": "The type of quotes used in JavaScript code. Defaults to double.", + "description": "The style for quotes. Defaults to double.", "anyOf": [{ "$ref": "#/definitions/QuoteStyle" }, { "type": "null" }] }, "semicolons": { @@ -750,7 +746,6 @@ "additionalProperties": false }, "JavascriptParser": { - "description": "Options that changes how the JavaScript parser behaves", "type": "object", "properties": { "unsafeParameterDecoratorsEnabled": { @@ -761,18 +756,15 @@ "additionalProperties": false }, "JsonConfiguration": { - "description": "Options applied to JSON files", "type": "object", "properties": { "parser": { - "description": "Parsing options", "anyOf": [{ "$ref": "#/definitions/JsonParser" }, { "type": "null" }] } }, "additionalProperties": false }, "JsonParser": { - "description": "Options that changes how the JSON parser behaves", "type": "object", "properties": { "allowComments": { diff --git a/justfile b/justfile index 5bc914c8b9b..f37c2d35286 100644 --- a/justfile +++ b/justfile @@ -10,12 +10,12 @@ alias l := lint # Installs the tools needed to develop with Rome install-tools: cargo install cargo-binstall - cargo binstall cargo-insta cargo-nextest taplo-cli wasm-pack wasm-tools cargo-workspaces + cargo binstall cargo-insta cargo-nextest taplo-cli wasm-pack wasm-tools # Upgrades the tools needed to develop with Rome upgrade-tools: cargo install cargo-binstall --force - cargo binstall cargo-insta cargo-nextest taplo-cli wasm-pack wasm-tools cargo-workspaces --force + cargo binstall cargo-insta cargo-nextest taplo-cli wasm-pack wasm-tools --force # Generate all files across crates and tools. You rarely want to use it locally. codegen: diff --git a/npm/backend-jsonrpc/src/workspace.ts b/npm/backend-jsonrpc/src/workspace.ts index b7151409409..6d5c367b7e1 100644 --- a/npm/backend-jsonrpc/src/workspace.ts +++ b/npm/backend-jsonrpc/src/workspace.ts @@ -79,7 +79,7 @@ export interface FilesConfiguration { maxSize?: number; } /** - * Generic options applied to all files + * Options applied to the formatter */ export interface FormatterConfiguration { enabled?: boolean; @@ -104,13 +104,7 @@ export interface FormatterConfiguration { */ lineWidth?: LineWidth; } -/** - * A set of options applied to the JavaScript files - */ export interface JavascriptConfiguration { - /** - * Formatting options - */ formatter?: JavascriptFormatter; /** * A list of global bindings that should be ignored by the analyzers @@ -119,18 +113,9 @@ If defined here, they should not emit diagnostics. */ globals?: StringSet; organize_imports?: JavascriptOrganizeImports; - /** - * Parsing options - */ parser?: JavascriptParser; } -/** - * Options applied to JSON files - */ export interface JsonConfiguration { - /** - * Parsing options - */ parser?: JsonParser; } export interface LinterConfiguration { @@ -187,16 +172,13 @@ export type PlainIndentStyle = "tab" | "space"; The allowed range of values is 1..=320 */ export type LineWidth = number; -/** - * Formatting options specific to the JavaScript files - */ export interface JavascriptFormatter { /** * Whether to add non-necessary parentheses to arrow functions. Defaults to "always". */ arrowParentheses?: ArrowParentheses; /** - * The type of quotes used in JSX. Defaults to double. + * The style for JSX quotes. Defaults to double. */ jsxQuoteStyle?: QuoteStyle; /** @@ -204,7 +186,7 @@ export interface JavascriptFormatter { */ quoteProperties?: QuoteProperties; /** - * The type of quotes used in JavaScript code. Defaults to double. + * The style for quotes. Defaults to double. */ quoteStyle?: QuoteStyle; /** @@ -217,9 +199,6 @@ export interface JavascriptFormatter { trailingComma?: TrailingComma; } export interface JavascriptOrganizeImports {} -/** - * Options that changes how the JavaScript parser behaves - */ export interface JavascriptParser { /** * It enables the experimental and unsafe parsing of parameter decorators @@ -228,9 +207,6 @@ These decorators belong to an old proposal, and they are subject to change. */ unsafeParameterDecoratorsEnabled?: boolean; } -/** - * Options that changes how the JSON parser behaves - */ export interface JsonParser { /** * Allow parsing comments in `.json` files diff --git a/npm/rome/configuration_schema.json b/npm/rome/configuration_schema.json index e59b4a8b83b..2838d5f0ac2 100644 --- a/npm/rome/configuration_schema.json +++ b/npm/rome/configuration_schema.json @@ -605,7 +605,7 @@ "additionalProperties": false }, "FormatterConfiguration": { - "description": "Generic options applied to all files", + "description": "Options applied to the formatter", "type": "object", "properties": { "enabled": { "default": true, "type": ["boolean", "null"] }, @@ -675,11 +675,9 @@ "additionalProperties": false }, "JavascriptConfiguration": { - "description": "A set of options applied to the JavaScript files", "type": "object", "properties": { "formatter": { - "description": "Formatting options", "anyOf": [ { "$ref": "#/definitions/JavascriptFormatter" }, { "type": "null" } @@ -696,7 +694,6 @@ ] }, "parser": { - "description": "Parsing options", "anyOf": [ { "$ref": "#/definitions/JavascriptParser" }, { "type": "null" } @@ -706,7 +703,6 @@ "additionalProperties": false }, "JavascriptFormatter": { - "description": "Formatting options specific to the JavaScript files", "type": "object", "properties": { "arrowParentheses": { @@ -717,7 +713,7 @@ ] }, "jsxQuoteStyle": { - "description": "The type of quotes used in JSX. Defaults to double.", + "description": "The style for JSX quotes. Defaults to double.", "anyOf": [{ "$ref": "#/definitions/QuoteStyle" }, { "type": "null" }] }, "quoteProperties": { @@ -728,7 +724,7 @@ ] }, "quoteStyle": { - "description": "The type of quotes used in JavaScript code. Defaults to double.", + "description": "The style for quotes. Defaults to double.", "anyOf": [{ "$ref": "#/definitions/QuoteStyle" }, { "type": "null" }] }, "semicolons": { @@ -750,7 +746,6 @@ "additionalProperties": false }, "JavascriptParser": { - "description": "Options that changes how the JavaScript parser behaves", "type": "object", "properties": { "unsafeParameterDecoratorsEnabled": { @@ -761,18 +756,15 @@ "additionalProperties": false }, "JsonConfiguration": { - "description": "Options applied to JSON files", "type": "object", "properties": { "parser": { - "description": "Parsing options", "anyOf": [{ "$ref": "#/definitions/JsonParser" }, { "type": "null" }] } }, "additionalProperties": false }, "JsonParser": { - "description": "Options that changes how the JSON parser behaves", "type": "object", "properties": { "allowComments": { diff --git a/npm/rome/package.json b/npm/rome/package.json index 6e252e4d795..beca0466a3c 100644 --- a/npm/rome/package.json +++ b/npm/rome/package.json @@ -1,6 +1,6 @@ { "name": "rome", - "version": "13.0.0", + "version": "12.1.3", "bin": "bin/rome", "scripts": { "postinstall": "node scripts/postinstall.js" diff --git a/website/astro.config.ts b/website/astro.config.ts index 349af11bb90..9b6747c4d87 100644 --- a/website/astro.config.ts +++ b/website/astro.config.ts @@ -2,8 +2,8 @@ import fs from "node:fs/promises"; import path from "node:path"; import mdx from "@astrojs/mdx"; import react from "@astrojs/react"; -import compress from "@otterlord/astro-compress"; import type { AstroIntegration } from "astro"; +import compress from "astro-compress"; import { defineConfig } from "astro/config"; import { globby } from "globby"; import rehypeAutolinkHeadings from "rehype-autolink-headings"; diff --git a/website/package.json b/website/package.json index 7347c863623..c8547312941 100644 --- a/website/package.json +++ b/website/package.json @@ -37,6 +37,7 @@ "@uiw/react-codemirror": "^4.20.2", "@vitejs/plugin-react": "^2.1.0", "astro": "^2.3.4", + "astro-compress": "^1.1.35", "autoprefixer": "^10.4.12", "codemirror-lang-rome-ast": "0.0.6", "fast-diff": "^1.2.0", @@ -46,7 +47,7 @@ "mdast-util-to-hast": "^12.3.0", "mermaid": "^9.4.3", "postcss": "^8.4.23", - "prettier": "^2.8.8", + "prettier": "^3.0.0", "react": "^17.0.2", "react-dom": "^17.0.2", "rehype-autolink-headings": "^6.1.1", @@ -61,9 +62,6 @@ "vite-plugin-svgr": "^2.2.2" }, "engines": { - "pnpm": "^8.0.0" - }, - "dependencies": { - "@otterlord/astro-compress": "^1.1.48" + "pnpm": "^8.0.0" } } diff --git a/website/pnpm-lock.yaml b/website/pnpm-lock.yaml index 6c5fa48ebdb..af42f251224 100644 --- a/website/pnpm-lock.yaml +++ b/website/pnpm-lock.yaml @@ -1,9 +1,8 @@ lockfileVersion: '6.0' -dependencies: - '@otterlord/astro-compress': - specifier: ^1.1.48 - version: 1.1.48 +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false devDependencies: '@algolia/client-search': @@ -72,6 +71,9 @@ devDependencies: astro: specifier: ^2.3.4 version: 2.5.5(@types/node@18.16.14)(sass@1.62.1) + astro-compress: + specifier: ^1.1.35 + version: 1.1.35 autoprefixer: specifier: ^10.4.12 version: 10.4.13(postcss@8.4.23) @@ -100,8 +102,8 @@ devDependencies: specifier: ^8.4.23 version: 8.4.23 prettier: - specifier: ^2.8.8 - version: 2.8.8 + specifier: ^3.0.0 + version: 3.0.0 react: specifier: ^17.0.2 version: 17.0.2 @@ -1101,30 +1103,35 @@ packages: '@jridgewell/set-array': 1.1.2 '@jridgewell/sourcemap-codec': 1.4.14 '@jridgewell/trace-mapping': 0.3.17 + dev: true /@jridgewell/resolve-uri@3.1.0: resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} engines: {node: '>=6.0.0'} + dev: true /@jridgewell/set-array@1.1.2: resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} engines: {node: '>=6.0.0'} + dev: true - /@jridgewell/source-map@0.3.5: - resolution: {integrity: sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==} + /@jridgewell/source-map@0.3.2: + resolution: {integrity: sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==} dependencies: '@jridgewell/gen-mapping': 0.3.2 '@jridgewell/trace-mapping': 0.3.17 - dev: false + dev: true /@jridgewell/sourcemap-codec@1.4.14: resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} + dev: true /@jridgewell/trace-mapping@0.3.17: resolution: {integrity: sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==} dependencies: '@jridgewell/resolve-uri': 3.1.0 '@jridgewell/sourcemap-codec': 1.4.14 + dev: true /@jsdevtools/rehype-toc@3.0.2: resolution: {integrity: sha512-n5JEf16Wr4mdkRMZ8wMP/wN9/sHmTjRPbouXjJH371mZ2LEGDl72t8tEsMRNFerQN/QJtivOxqK1frdGa4QK5Q==} @@ -1209,10 +1216,12 @@ packages: dependencies: '@nodelib/fs.stat': 2.0.5 run-parallel: 1.2.0 + dev: true /@nodelib/fs.stat@2.0.5: resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} engines: {node: '>= 8'} + dev: true /@nodelib/fs.walk@1.2.8: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} @@ -1220,20 +1229,7 @@ packages: dependencies: '@nodelib/fs.scandir': 2.1.5 fastq: 1.13.0 - - /@otterlord/astro-compress@1.1.48: - resolution: {integrity: sha512-1AUSUMk0WMSMOg/qSmJ7K/0xUsl4hYrAlmcpxzunVFen2r6QmvQDE+51nrPJljzYcXPil+aFrzGe+jfWVChz6A==} - dependencies: - '@types/csso': 5.0.0 - '@types/html-minifier-terser': 7.0.0 - csso: 5.0.5 - deepmerge-ts: 5.1.0 - fast-glob: 3.2.12 - html-minifier-terser: 7.2.0 - sharp: 0.32.4 - svgo: 3.0.2 - terser: 5.19.2 - dev: false + dev: true /@pkgr/utils@2.3.1: resolution: {integrity: sha512-wfzX8kc1PMyUILA+1Z/EqoE4UCXGy0iRGMhPwdfae1+f0OXlLqCk+By+aMzgJBzR9AzS4CDizioG6Ss1gvAFJw==} @@ -1438,7 +1434,7 @@ packages: /@trysound/sax@0.2.0: resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==} engines: {node: '>=10.13.0'} - dev: false + dev: true /@types/acorn@4.0.6: resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} @@ -1477,13 +1473,13 @@ packages: /@types/css-tree@2.3.1: resolution: {integrity: sha512-3m636Jz4d9d+lHVMp6FNLsUWQrfOx1xpm1SBxPbQYSNNgXMe+XswcsDeo1ldyULiuzYyWKk1kmvkLTgNq+215Q==} - dev: false + dev: true /@types/csso@5.0.0: resolution: {integrity: sha512-EMrCTGpXRUsbFfZBzn2jcW6Sqg8kxWXkJcpvAGYSEzFqAJ2THDJSwiMeS2fPUw+0p6RQNT/n8F/skEc9hUBc0g==} dependencies: '@types/css-tree': 2.3.1 - dev: false + dev: true /@types/debug@4.1.7: resolution: {integrity: sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==} @@ -1517,7 +1513,7 @@ packages: /@types/html-minifier-terser@7.0.0: resolution: {integrity: sha512-hw3bhStrg5e3FQT8qZKCJTrzt/UbEaunU1xRWJ+aNOTmeBMvE3S4Ml2HiiNnZgL8izu0LFVkHUoPFXL1s5QNpQ==} - dev: false + dev: true /@types/json5@0.0.30: resolution: {integrity: sha512-sqm9g7mHlPY/43fcSNrCYfOeX9zkTTK+euO5E6+CVijSMm5tTjkVdwdqRkY3ljjIAf8679vps5jKUoJBCLsMDA==} @@ -1589,6 +1585,12 @@ packages: resolution: {integrity: sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==} dev: true + /@types/sharp@0.31.1: + resolution: {integrity: sha512-5nWwamN9ZFHXaYEincMSuza8nNfOof8nmO+mcI+Agx1uMUk4/pQnNIcix+9rLPXzKrm1pS34+6WRDbDV0Jn7ag==} + dependencies: + '@types/node': 18.16.14 + dev: true + /@types/unist@2.0.6: resolution: {integrity: sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==} dev: true @@ -1695,6 +1697,7 @@ packages: resolution: {integrity: sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==} engines: {node: '>=0.4.0'} hasBin: true + dev: true /algoliasearch@4.14.2: resolution: {integrity: sha512-ngbEQonGEmf8dyEh5f+uOIihv4176dgbuOZspiuhmTTBRBuzWu3KCGHre6uHj5YyuC7pNvQGzB6ZNJyZi0z+Sg==} @@ -1781,6 +1784,20 @@ packages: hasBin: true dev: true + /astro-compress@1.1.35: + resolution: {integrity: sha512-K6BK+iMbejXeUS1eAjoQhRh4geEutFrGkgCkeTAthf1XeRzPrWvtNPA7RjJBXWR8aNJtjryxyW02z3pE+4RNow==} + dependencies: + '@types/csso': 5.0.0 + '@types/html-minifier-terser': 7.0.0 + '@types/sharp': 0.31.1 + csso: 5.0.5 + files-pipe: 0.0.1 + html-minifier-terser: 7.1.0 + sharp: 0.31.3 + svgo: 3.0.2 + terser: 5.16.5 + dev: true + /astro@2.5.5(@types/node@18.16.14)(sass@1.62.1): resolution: {integrity: sha512-VRwnlfRtPALeOxfE4e7To5Vlu9pGwlTRWN1zkn1QTizwfg0rLirFTm6t2MCG/fUhlu/p3QO9tz8SpAIyDq53/Q==} engines: {node: '>=16.12.0', npm: '>=6.14.0'} @@ -1873,16 +1890,13 @@ packages: postcss-value-parser: 4.2.0 dev: true - /b4a@1.6.4: - resolution: {integrity: sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==} - dev: false - /bail@2.0.2: resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} dev: true /base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} + dev: true /binary-extensions@2.2.0: resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} @@ -1895,7 +1909,7 @@ packages: buffer: 5.7.1 inherits: 2.0.4 readable-stream: 3.6.0 - dev: false + dev: true /bl@5.1.0: resolution: {integrity: sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ==} @@ -1907,7 +1921,7 @@ packages: /boolbase@1.0.0: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} - dev: false + dev: true /boxen@6.2.1: resolution: {integrity: sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==} @@ -1928,6 +1942,7 @@ packages: engines: {node: '>=8'} dependencies: fill-range: 7.0.1 + dev: true /browserslist@4.21.4: resolution: {integrity: sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==} @@ -1942,14 +1957,14 @@ packages: /buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} - dev: false + dev: true /buffer@5.7.1: resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} dependencies: base64-js: 1.5.1 ieee754: 1.2.1 - dev: false + dev: true /buffer@6.0.3: resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} @@ -1975,7 +1990,7 @@ packages: dependencies: pascal-case: 3.1.2 tslib: 2.4.1 - dev: false + dev: true /camelcase@6.3.0: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} @@ -2045,18 +2060,18 @@ packages: /chownr@1.1.4: resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} - dev: false + dev: true /ci-info@3.5.0: resolution: {integrity: sha512-yH4RezKOGlOhxkmhbeNuC4eYZKAUsEaGtBuBzDDP1eFUKiccDWzBABxBfOx31IDwDIXMTxWuwAxUGModvkbuVw==} dev: true - /clean-css@5.3.2: - resolution: {integrity: sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==} + /clean-css@5.2.0: + resolution: {integrity: sha512-2639sWGa43EMmG7fn8mdVuBSs6HuWaSor+ZPoFWzenBc6oN+td8YhTfghWXZ25G1NiiSvz8bOFBS7PdSbTiqEA==} engines: {node: '>= 10.0'} dependencies: source-map: 0.6.1 - dev: false + dev: true /cli-boxes@3.0.0: resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==} @@ -2117,6 +2132,7 @@ packages: engines: {node: '>=7.0.0'} dependencies: color-name: 1.1.4 + dev: true /color-name@1.1.3: resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} @@ -2124,13 +2140,14 @@ packages: /color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + dev: true /color-string@1.9.1: resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} dependencies: color-name: 1.1.4 simple-swizzle: 0.2.2 - dev: false + dev: true /color@4.2.3: resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} @@ -2138,24 +2155,25 @@ packages: dependencies: color-convert: 2.0.1 color-string: 1.9.1 - dev: false + dev: true /comma-separated-tokens@2.0.2: resolution: {integrity: sha512-G5yTt3KQN4Yn7Yk4ed73hlZ1evrFKXeUW3086p3PRFNp7m2vIjI6Pg+Kgb+oyzhd9F2qdcoj67+y3SdxL5XWsg==} dev: true - /commander@10.0.1: - resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==} - engines: {node: '>=14'} - dev: false - /commander@2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} - dev: false + dev: true /commander@7.2.0: resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} engines: {node: '>= 10'} + dev: true + + /commander@9.4.1: + resolution: {integrity: sha512-5EEkTNyHNGFPD2H+c/dXXfQZYa/scCKasxWcXJaWnNJ99pnQN9Vnmqow+p+PlFPE63Q6mThaZws1T+HxfpgtPw==} + engines: {node: ^12.20.0 || >=14} + dev: true /common-ancestor-path@1.0.1: resolution: {integrity: sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==} @@ -2214,7 +2232,7 @@ packages: domhandler: 5.0.3 domutils: 3.0.1 nth-check: 2.0.1 - dev: false + dev: true /css-tree@2.2.1: resolution: {integrity: sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==} @@ -2222,19 +2240,19 @@ packages: dependencies: mdn-data: 2.0.28 source-map-js: 1.0.2 - dev: false + dev: true /css-what@6.1.0: resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} engines: {node: '>= 6'} - dev: false + dev: true /csso@5.0.5: resolution: {integrity: sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==} engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'} dependencies: css-tree: 2.2.1 - dev: false + dev: true /csstype@3.1.1: resolution: {integrity: sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==} @@ -2584,23 +2602,18 @@ packages: engines: {node: '>=10'} dependencies: mimic-response: 3.1.0 - dev: false + dev: true /deep-extend@0.6.0: resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} engines: {node: '>=4.0.0'} - dev: false + dev: true /deepmerge-ts@4.3.0: resolution: {integrity: sha512-if3ZYdkD2dClhnXR5reKtG98cwyaRT1NeugQoAPTTfsOpV9kqyeiBF9Qa5RHjemb3KzD5ulqygv6ED3t5j9eJw==} engines: {node: '>=12.4.0'} dev: true - /deepmerge-ts@5.1.0: - resolution: {integrity: sha512-eS8dRJOckyo9maw9Tu5O5RUi/4inFLrnoLkBe3cPfDMx3WZioXtmOew4TXQaxq7Rhl4xjDtR7c6x8nNTxOvbFw==} - engines: {node: '>=16.0.0'} - dev: false - /defaults@1.0.4: resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} dependencies: @@ -2623,10 +2636,10 @@ packages: engines: {node: '>=6'} dev: true - /detect-libc@2.0.2: - resolution: {integrity: sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==} + /detect-libc@2.0.1: + resolution: {integrity: sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==} engines: {node: '>=8'} - dev: false + dev: true /devalue@4.3.0: resolution: {integrity: sha512-n94yQo4LI3w7erwf84mhRUkUJfhLoCZiLyoOZ/QFsDbcWNZePrLwbQpvZBUG2TNxwV3VjCKPxkiiQA6pe3TrTA==} @@ -2654,18 +2667,18 @@ packages: domelementtype: 2.3.0 domhandler: 5.0.3 entities: 4.4.0 - dev: false + dev: true /domelementtype@2.3.0: resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} - dev: false + dev: true /domhandler@5.0.3: resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==} engines: {node: '>= 4'} dependencies: domelementtype: 2.3.0 - dev: false + dev: true /dompurify@2.4.3: resolution: {integrity: sha512-q6QaLcakcRjebxjg8/+NP+h0rPfatOgOzc46Fst9VAA3jF2ApfKBNKMzdP4DYTqtUMXSCd5pRS/8Po/OmoCHZQ==} @@ -2677,14 +2690,14 @@ packages: dom-serializer: 2.0.0 domelementtype: 2.3.0 domhandler: 5.0.3 - dev: false + dev: true /dot-case@3.0.4: resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==} dependencies: no-case: 3.0.4 tslib: 2.4.1 - dev: false + dev: true /dset@3.1.2: resolution: {integrity: sha512-g/M9sqy3oHe477Ar4voQxWtaPIFw1jTdKZuomOjhCcBx9nHUNn0pu6NopuFFrTh/TRZIKEj+76vLWFu9BNKk+Q==} @@ -2722,11 +2735,12 @@ packages: resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} dependencies: once: 1.4.0 - dev: false + dev: true /entities@4.4.0: resolution: {integrity: sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==} engines: {node: '>=0.12'} + dev: true /error-ex@1.3.2: resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} @@ -3067,7 +3081,7 @@ packages: /expand-template@2.0.3: resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} engines: {node: '>=6'} - dev: false + dev: true /extend-shallow@2.0.1: resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==} @@ -3084,10 +3098,6 @@ packages: resolution: {integrity: sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==} dev: true - /fast-fifo@1.3.0: - resolution: {integrity: sha512-IgfweLvEpwyA4WgiQe9Nx6VV2QkML2NkvZnk1oKnIzXgXdWxuhF7zw4DvLTPZJn6PIUneiAXPF24QmoEqHTjyw==} - dev: false - /fast-glob@3.2.11: resolution: {integrity: sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==} engines: {node: '>=8.6.0'} @@ -3108,6 +3118,7 @@ packages: glob-parent: 5.1.2 merge2: 1.4.1 micromatch: 4.0.5 + dev: true /fast-xml-parser@4.0.11: resolution: {integrity: sha512-4aUg3aNRR/WjQAcpceODG1C3x3lFANXRo8+1biqfieHmg9pyMt7qB4lQV/Ta6sJCTbA5vfD8fnA8S54JATiFUA==} @@ -3120,6 +3131,7 @@ packages: resolution: {integrity: sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==} dependencies: reusify: 1.0.4 + dev: true /fault@2.0.1: resolution: {integrity: sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==} @@ -3127,11 +3139,19 @@ packages: format: 0.2.2 dev: true + /files-pipe@0.0.1: + resolution: {integrity: sha512-+U75QMGwmNi6S3cLJPCXtCWCUP3QTKCf6zwtW+7A+OS06PDbiX6MOPI3KE6XZZKLl0UYdiB3rimyFeqZDUdh1g==} + dependencies: + deepmerge-ts: 4.3.0 + fast-glob: 3.2.12 + dev: true + /fill-range@7.0.1: resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} engines: {node: '>=8'} dependencies: to-regex-range: 5.0.1 + dev: true /find-up@4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} @@ -3167,7 +3187,7 @@ packages: /fs-constants@1.0.0: resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} - dev: false + dev: true /fsevents@2.3.2: resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} @@ -3193,7 +3213,7 @@ packages: /github-from-package@0.0.0: resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} - dev: false + dev: true /github-slugger@1.5.0: resolution: {integrity: sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==} @@ -3208,6 +3228,7 @@ packages: engines: {node: '>= 6'} dependencies: is-glob: 4.0.3 + dev: true /globals@11.12.0: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} @@ -3411,19 +3432,19 @@ packages: resolution: {integrity: sha512-RuMffC89BOWQoY0WKGpIhn5gX3iI54O6nRA0yC124NYVtzjmFWBIiFd8M0x+ZdX0P9R4lADg1mgP8C7PxGOWuQ==} dev: true - /html-minifier-terser@7.2.0: - resolution: {integrity: sha512-tXgn3QfqPIpGl9o+K5tpcj3/MN4SfLtsx2GWwBC3SSd0tXQGyF3gsSqad8loJgKZGM3ZxbYDd5yhiBIdWpmvLA==} + /html-minifier-terser@7.1.0: + resolution: {integrity: sha512-BvPO2S7Ip0Q5qt+Y8j/27Vclj6uHC6av0TMoDn7/bJPhMWHI2UtR2e/zEgJn3/qYAmxumrGp9q4UHurL6mtW9Q==} engines: {node: ^14.13.1 || >=16.0.0} hasBin: true dependencies: camel-case: 4.1.2 - clean-css: 5.3.2 - commander: 10.0.1 + clean-css: 5.2.0 + commander: 9.4.1 entities: 4.4.0 param-case: 3.0.4 relateurl: 0.2.7 - terser: 5.19.2 - dev: false + terser: 5.16.5 + dev: true /html-void-elements@2.0.1: resolution: {integrity: sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==} @@ -3443,6 +3464,7 @@ packages: /ieee754@1.2.1: resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} + dev: true /ignore@5.2.0: resolution: {integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==} @@ -3467,10 +3489,11 @@ packages: /inherits@2.0.4: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + dev: true /ini@1.3.8: resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} - dev: false + dev: true /inline-style-parser@0.1.1: resolution: {integrity: sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==} @@ -3498,7 +3521,7 @@ packages: /is-arrayish@0.3.2: resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} - dev: false + dev: true /is-binary-path@2.1.0: resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} @@ -3542,6 +3565,7 @@ packages: /is-extglob@2.1.1: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} + dev: true /is-fullwidth-code-point@3.0.0: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} @@ -3553,6 +3577,7 @@ packages: engines: {node: '>=0.10.0'} dependencies: is-extglob: 2.1.1 + dev: true /is-hexadecimal@2.0.1: resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==} @@ -3566,6 +3591,7 @@ packages: /is-number@7.0.0: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} engines: {node: '>=0.12.0'} + dev: true /is-plain-obj@4.1.0: resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} @@ -3740,13 +3766,14 @@ packages: resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} dependencies: tslib: 2.4.1 - dev: false + dev: true /lru-cache@6.0.0: resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} engines: {node: '>=10'} dependencies: yallist: 4.0.0 + dev: true /magic-string@0.26.7: resolution: {integrity: sha512-hX9XH3ziStPoPhJxLq1syWuZMxbDvGNbVchfrdCtanC7D13888bMFow61x8axrx+GfHLtVeAx2kxL7tTGRl+Ow==} @@ -3961,7 +3988,7 @@ packages: /mdn-data@2.0.28: resolution: {integrity: sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==} - dev: false + dev: true /merge-stream@2.0.0: resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} @@ -3970,6 +3997,7 @@ packages: /merge2@1.4.1: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} + dev: true /mermaid@9.4.3: resolution: {integrity: sha512-TLkQEtqhRSuEHSE34lh5bCa94KATCyluAXmFnNI2PRZwOpXFeqiJWwZl+d2CcemE1RS6QbbueSSq9QIg8Uxcyw==} @@ -4346,6 +4374,7 @@ packages: dependencies: braces: 3.0.2 picomatch: 2.3.1 + dev: true /mime@3.0.0: resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==} @@ -4366,15 +4395,15 @@ packages: /mimic-response@3.1.0: resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} engines: {node: '>=10'} - dev: false + dev: true /minimist@1.2.6: resolution: {integrity: sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==} - dev: false + dev: true /mkdirp-classic@0.5.3: resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} - dev: false + dev: true /mri@1.2.0: resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} @@ -4393,7 +4422,7 @@ packages: /napi-build-utils@1.0.2: resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==} - dev: false + dev: true /nlcst-to-string@3.1.0: resolution: {integrity: sha512-Y8HQWKw/zrHTCnu2zcFBN1dV6vN0NUG7s5fkEj380G8tF3R+vA2KG+tDl2QoHVQCTHGHVXwoni2RQkDSFQb1PA==} @@ -4406,18 +4435,18 @@ packages: dependencies: lower-case: 2.0.2 tslib: 2.4.1 - dev: false + dev: true /node-abi@3.28.0: resolution: {integrity: sha512-fRlDb4I0eLcQeUvGq7IY3xHrSb0c9ummdvDSYWfT9+LKP+3jCKw/tKoqaM7r1BAoiAC6GtwyjaGnOz6B3OtF+A==} engines: {node: '>=10'} dependencies: - semver: 7.5.4 - dev: false + semver: 7.3.8 + dev: true - /node-addon-api@6.1.0: - resolution: {integrity: sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==} - dev: false + /node-addon-api@5.0.0: + resolution: {integrity: sha512-CvkDw2OEnme7ybCykJpVcKH+uAOLV2qLqiyla128dN9TkEWfrYmxG6C2boDe5KcNQqZF3orkqzGgOMvZ/JNekA==} + dev: true /node-releases@2.0.6: resolution: {integrity: sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==} @@ -4448,7 +4477,7 @@ packages: resolution: {integrity: sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==} dependencies: boolbase: 1.0.0 - dev: false + dev: true /object-assign@4.1.1: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} @@ -4459,7 +4488,7 @@ packages: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} dependencies: wrappy: 1.0.2 - dev: false + dev: true /onetime@5.1.2: resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} @@ -4544,7 +4573,7 @@ packages: dependencies: dot-case: 3.0.4 tslib: 2.4.1 - dev: false + dev: true /parent-module@1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} @@ -4593,7 +4622,7 @@ packages: dependencies: no-case: 3.0.4 tslib: 2.4.1 - dev: false + dev: true /path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} @@ -4632,10 +4661,12 @@ packages: /picocolors@1.0.0: resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} + dev: true /picomatch@2.3.1: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} + dev: true /pify@4.0.1: resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} @@ -4671,7 +4702,7 @@ packages: engines: {node: '>=10'} hasBin: true dependencies: - detect-libc: 2.0.2 + detect-libc: 2.0.1 expand-template: 2.0.3 github-from-package: 0.0.0 minimist: 1.2.6 @@ -4683,7 +4714,7 @@ packages: simple-get: 4.0.1 tar-fs: 2.1.1 tunnel-agent: 0.6.0 - dev: false + dev: true /preferred-pm@3.0.3: resolution: {integrity: sha512-+wZgbxNES/KlJs9q40F/1sfOd/j7f1O9JaHcW5Dsn3aUUOZg3L2bjpVUcKV2jvtElYfoTuQiNeMfQJ4kwUAhCQ==} @@ -4711,6 +4742,12 @@ packages: hasBin: true dev: true + /prettier@3.0.0: + resolution: {integrity: sha512-zBf5eHpwHOGPC47h0zrPyNn+eAEIdEzfywMoYn2XPi0P44Zp0tSq64rq0xAREh4auw2cJZHo9QUob+NqCQky4g==} + engines: {node: '>=14'} + hasBin: true + dev: true + /prismjs@1.29.0: resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} engines: {node: '>=6'} @@ -4733,14 +4770,11 @@ packages: dependencies: end-of-stream: 1.4.4 once: 1.4.0 - dev: false + dev: true /queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} - - /queue-tick@1.0.1: - resolution: {integrity: sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==} - dev: false + dev: true /rc@1.2.8: resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} @@ -4750,7 +4784,7 @@ packages: ini: 1.3.8 minimist: 1.2.6 strip-json-comments: 2.0.1 - dev: false + dev: true /react-dom@17.0.2(react@17.0.2): resolution: {integrity: sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==} @@ -4783,6 +4817,7 @@ packages: inherits: 2.0.4 string_decoder: 1.3.0 util-deprecate: 1.0.2 + dev: true /readdirp@3.6.0: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} @@ -4863,7 +4898,7 @@ packages: /relateurl@0.2.7: resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==} engines: {node: '>= 0.10'} - dev: false + dev: true /remark-frontmatter@4.0.1: resolution: {integrity: sha512-38fJrB0KnmD3E33a5jZC/5+gGAC2WKNiPw1/fdXJvijBlhA7RCsvJklrYJakS0HedninvaCYW8lQGf9C918GfA==} @@ -4990,6 +5025,7 @@ packages: /reusify@1.0.4: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + dev: true /robust-predicates@3.0.1: resolution: {integrity: sha512-ndEIpszUHiG4HtDsQLeIuMvRsDnn8c8rYStabochtUeCvfuvNptb5TUbVD68LRAILPX7p9nqQGh4xJgn3EHS/g==} @@ -5029,6 +5065,7 @@ packages: resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} dependencies: queue-microtask: 1.2.3 + dev: true /rw@1.3.3: resolution: {integrity: sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==} @@ -5047,6 +5084,7 @@ packages: /safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + dev: true /safer-buffer@2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} @@ -5096,32 +5134,24 @@ packages: lru-cache: 6.0.0 dev: true - /semver@7.5.4: - resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} - engines: {node: '>=10'} - hasBin: true - dependencies: - lru-cache: 6.0.0 - dev: false - /server-destroy@1.0.1: resolution: {integrity: sha512-rb+9B5YBIEzYcD6x2VKidaa+cqYBJQKnU4oe4E3ANwRRN56yk/ua1YCJT1n21NTS8w6CcOclAKNP3PhdCXKYtQ==} dev: true - /sharp@0.32.4: - resolution: {integrity: sha512-exUnZewqVZC6UXqXuQ8fyJJv0M968feBi04jb9GcUHrWtkRoAKnbJt8IfwT4NJs7FskArbJ14JAFGVuooszoGg==} + /sharp@0.31.3: + resolution: {integrity: sha512-XcR4+FCLBFKw1bdB+GEhnUNXNXvnt0tDo4WsBsraKymuo/IAuPuCBVAL2wIkUw2r/dwFW5Q5+g66Kwl2dgDFVg==} engines: {node: '>=14.15.0'} requiresBuild: true dependencies: color: 4.2.3 - detect-libc: 2.0.2 - node-addon-api: 6.1.0 + detect-libc: 2.0.1 + node-addon-api: 5.0.0 prebuild-install: 7.1.1 - semver: 7.5.4 + semver: 7.3.8 simple-get: 4.0.1 - tar-fs: 3.0.4 + tar-fs: 2.1.1 tunnel-agent: 0.6.0 - dev: false + dev: true /shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} @@ -5150,7 +5180,7 @@ packages: /simple-concat@1.0.1: resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} - dev: false + dev: true /simple-get@4.0.1: resolution: {integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==} @@ -5158,13 +5188,13 @@ packages: decompress-response: 6.0.0 once: 1.4.0 simple-concat: 1.0.1 - dev: false + dev: true /simple-swizzle@0.2.2: resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} dependencies: is-arrayish: 0.3.2 - dev: false + dev: true /sisteransi@1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} @@ -5178,18 +5208,19 @@ packages: /source-map-js@1.0.2: resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} engines: {node: '>=0.10.0'} + dev: true /source-map-support@0.5.21: resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} dependencies: buffer-from: 1.1.2 source-map: 0.6.1 - dev: false + dev: true /source-map@0.6.1: resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} engines: {node: '>=0.10.0'} - dev: false + dev: true /source-map@0.7.4: resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} @@ -5213,13 +5244,6 @@ packages: engines: {node: '>=10.0.0'} dev: true - /streamx@2.15.1: - resolution: {integrity: sha512-fQMzy2O/Q47rgwErk/eGeLu/roaFWV0jVsogDmrszM9uIw8L5OA+t+V93MgYlufNptfjmYR1tOMWhei/Eh7TQA==} - dependencies: - fast-fifo: 1.3.0 - queue-tick: 1.0.1 - dev: false - /string-width@4.2.3: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} engines: {node: '>=8'} @@ -5242,6 +5266,7 @@ packages: resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} dependencies: safe-buffer: 5.2.1 + dev: true /stringify-entities@4.0.3: resolution: {integrity: sha512-BP9nNHMhhfcMbiuQKCqMjhDP5yBCAxsPu4pHFFzJ6Alo9dZgY4VLDPutXqIjpRiMoKdp7Av85Gr73Q5uH9k7+g==} @@ -5287,7 +5312,7 @@ packages: /strip-json-comments@2.0.1: resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} engines: {node: '>=0.10.0'} - dev: false + dev: true /strnum@1.0.5: resolution: {integrity: sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==} @@ -5353,7 +5378,7 @@ packages: css-tree: 2.2.1 csso: 5.0.5 picocolors: 1.0.0 - dev: false + dev: true /synckit@0.8.4: resolution: {integrity: sha512-Dn2ZkzMdSX827QbowGbU/4yjWuvNaCoScLLoMo/yKbu+P4GBR6cRGKZH27k6a9bRzdqcyd1DE96pQtQ6uNkmyw==} @@ -5370,15 +5395,7 @@ packages: mkdirp-classic: 0.5.3 pump: 3.0.0 tar-stream: 2.2.0 - dev: false - - /tar-fs@3.0.4: - resolution: {integrity: sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==} - dependencies: - mkdirp-classic: 0.5.3 - pump: 3.0.0 - tar-stream: 3.1.6 - dev: false + dev: true /tar-stream@2.2.0: resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} @@ -5389,26 +5406,18 @@ packages: fs-constants: 1.0.0 inherits: 2.0.4 readable-stream: 3.6.0 - dev: false - - /tar-stream@3.1.6: - resolution: {integrity: sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==} - dependencies: - b4a: 1.6.4 - fast-fifo: 1.3.0 - streamx: 2.15.1 - dev: false + dev: true - /terser@5.19.2: - resolution: {integrity: sha512-qC5+dmecKJA4cpYxRa5aVkKehYsQKc+AHeKl0Oe62aYjBL8ZA33tTljktDHJSaxxMnbI5ZYw+o/S2DxxLu8OfA==} + /terser@5.16.5: + resolution: {integrity: sha512-qcwfg4+RZa3YvlFh0qjifnzBHjKGNbtDo9yivMqMFDy9Q6FSaQWSB/j1xKhsoUFJIqDOM3TsN6D5xbrMrFcHbg==} engines: {node: '>=10'} hasBin: true dependencies: - '@jridgewell/source-map': 0.3.5 - acorn: 8.8.2 + '@jridgewell/source-map': 0.3.2 + acorn: 8.8.1 commander: 2.20.3 source-map-support: 0.5.21 - dev: false + dev: true /tiny-glob@0.2.9: resolution: {integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==} @@ -5427,6 +5436,7 @@ packages: engines: {node: '>=8.0'} dependencies: is-number: 7.0.0 + dev: true /trim-lines@3.0.1: resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} @@ -5454,12 +5464,13 @@ packages: /tslib@2.4.1: resolution: {integrity: sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==} + dev: true /tunnel-agent@0.6.0: resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} dependencies: safe-buffer: 5.2.1 - dev: false + dev: true /type-fest@0.13.1: resolution: {integrity: sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==} @@ -5589,6 +5600,7 @@ packages: /util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + dev: true /uuid@9.0.0: resolution: {integrity: sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==} @@ -5849,10 +5861,11 @@ packages: /wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - dev: false + dev: true /yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} + dev: true /yaml@1.10.2: resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} @@ -5881,7 +5894,3 @@ packages: /zwitch@2.0.4: resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} dev: true - -settings: - autoInstallPeers: true - excludeLinksFromLockfile: false diff --git a/website/src/pages/analyzer/index.mdx b/website/src/pages/analyzer/index.mdx index 9cd55cbfd54..ce5422594af 100644 --- a/website/src/pages/analyzer/index.mdx +++ b/website/src/pages/analyzer/index.mdx @@ -10,7 +10,7 @@ description: What the Rome analyzer provides Rome's analyzer provides a series of features that users can leverage. -## Imports Sorting +### Imports Sorting Rome allows to sort import statement using [natural ordering](https://en.wikipedia.org/wiki/Natural_sort_order). @@ -24,55 +24,17 @@ This feature is opt-in via configuration: } ``` -### How imports are sorted +You can apply the sorting in two way: via LSP or CLI -Import statements are sorted by "distance". Modules that are "farther" from the user are put on the top, modules "closer" to the user are put on the bottom: +### Imports sorting via CLI -1. built-in Node.js modules that are explicitly imported using the `node:` protocol; -2. modules imported via `npm:` protocol. This is a valid syntax when writing code run by Deno, for example; -3. modules imported via URL; -4. modules imported from libraries; -5. modules imported via relative imports; -6. modules that couldn't be identified by the previous criteria; - -For example, given the following code: - -```js -import uncle from "../uncle"; -import sibling from "./sibling"; -import express from "npm:epxress"; -import imageUrl from "url:./image.png"; -import assert from "node:assert"; -import aunt from "../aunt"; -import { VERSION } from "https://deno.land/std/version.ts"; -import { mock, test } from "node:test"; -``` - -They will be sorted like this: - -```js - import assert from "node:assert"; - import { mock, test } from "node:test"; - import express from "npm:epxress"; - import { VERSION } from "https://deno.land/std/version.ts"; - import aunt from "../aunt"; - import uncle from "../uncle"; - import sibling from "./sibling"; - import imageUrl from "url:./image.png"; -``` - - -You can apply the sorting in two ways: via [CLI](#import-sorting-via-cli) or [VSCode extension](#import-sorting-via-vscode-extension) - -### Import sorting via CLI - -Due to the nature of the language, the sorting of imports is categorised as **unsafe**, and you can apply it using the `--apply-unsafe` option: +Due the nature of the language, the sorting of imports is categorised as **unsafe**, and you can apply it using the `--apply-unsafe` option: ```shell rome check --apply-unsafe ./path/to/src ``` -### Import sorting via VSCode extension +### Imports sorting via VSCode extension The Rome VS Code extension has experimental support for imports sorting through the "Organize Imports" code action. By default this action can be run using the +Alt+O keyboard shortcut, or is accessible through the _Command Palette_ (Ctrl/++P) by selecting _Organize Imports_. diff --git a/website/src/pages/cli.md b/website/src/pages/cli.md new file mode 100644 index 00000000000..32690a62963 --- /dev/null +++ b/website/src/pages/cli.md @@ -0,0 +1,550 @@ +--- +title: CLI +emoji: ⌨️ +category: reference +description: Available commands and arguments in the Rome CLI. +--- + + + +# Command summary + + * [`rome`↴](#rome) + * [`rome version`↴](#rome-version) + * [`rome rage`↴](#rome-rage) + * [`rome start`↴](#rome-start) + * [`rome stop`↴](#rome-stop) + * [`rome check`↴](#rome-check) + * [`rome lint`↴](#rome-lint) + * [`rome format`↴](#rome-format) + * [`rome ci`↴](#rome-ci) + * [`rome init`↴](#rome-init) + * [`rome lsp-proxy`↴](#rome-lsp-proxy) + * [`rome migrate`↴](#rome-migrate) + +# rome + +Rome official CLI. Use it to check the health of your project or run it to check single files. + +**Usage**: **`rome`** _`COMMAND ...`_ + +**Available options:** +- **`-h`**, **`--help`** — + Prints help information +- **`-V`**, **`--version`** — + Prints version information + + + +**Available commands:** +- **`version`** — + Shows the Rome version information and quit +- **`rage`** — + Prints information for debugging +- **`start`** — + Start the Rome daemon server process +- **`stop`** — + Stop the Rome daemon server process +- **`check`** — + Run various checks on a set of files. +- **`lint`** — + Run various checks on a set of files. +- **`format`** — + Run the formatter on a set of files. +- **`ci`** — + Command to use in CI environments. Run various checks of a set of files. +- **`init`** — + Bootstraps a new rome project. Creates a configuration file with some defaults. +- **`lsp-proxy`** — + Acts as a server for the Language Server Protocol over stdin/stdout +- **`migrate`** — + It updates the configuration when there are breaking changes + + +# rome version + +Shows the Rome version information and quit + +**Usage**: **`rome`** **`version`** + +**Global options applied to all commands** +- **` --colors`**=_``_ — + Set the formatting mode for markup: "off" prints everything as plain text, "force" forces the formatting of markup using ANSI even if the console output is determined to be incompatible +- **` --use-server`** — + Connect to a running instance of the Rome daemon server. +- **` --verbose`** — + Print additional verbose advices on diagnostics +- **` --config-path`**=_`PATH`_ — + Set the filesystem path to the directory of the rome.json configuration file +- **` --max-diagnostics`**=_`NUMBER`_ — + Cap the amount of diagnostics displayed (default: 20) +- **` --skip-errors`** — + Skip over files containing syntax errors instead of emitting an error diagnostic. +- **` --no-errors-on-unmatched`** — + Silence errors that would be emitted in case no files were processed during the execution of the command. +- **` --json`** — + Reports information using the JSON format + + + +**Available options:** +- **`-h`**, **`--help`** — + Prints help information + + +# rome rage + +Prints information for debugging + +**Usage**: **`rome`** **`rage`** + +**Global options applied to all commands** +- **` --colors`**=_``_ — + Set the formatting mode for markup: "off" prints everything as plain text, "force" forces the formatting of markup using ANSI even if the console output is determined to be incompatible +- **` --use-server`** — + Connect to a running instance of the Rome daemon server. +- **` --verbose`** — + Print additional verbose advices on diagnostics +- **` --config-path`**=_`PATH`_ — + Set the filesystem path to the directory of the rome.json configuration file +- **` --max-diagnostics`**=_`NUMBER`_ — + Cap the amount of diagnostics displayed (default: 20) +- **` --skip-errors`** — + Skip over files containing syntax errors instead of emitting an error diagnostic. +- **` --no-errors-on-unmatched`** — + Silence errors that would be emitted in case no files were processed during the execution of the command. +- **` --json`** — + Reports information using the JSON format + + + +**Available options:** +- **`-h`**, **`--help`** — + Prints help information + + +# rome start + +Start the Rome daemon server process + +**Usage**: **`rome`** **`start`** + +**Available options:** +- **`-h`**, **`--help`** — + Prints help information + + +# rome stop + +Stop the Rome daemon server process + +**Usage**: **`rome`** **`stop`** + +**Available options:** +- **`-h`**, **`--help`** — + Prints help information + + +# rome check + +Run various checks on a set of files. + +**Usage**: **`rome`** **`check`** \[**`--apply`**\] \[**`--apply-unsafe`**\] \[_`PATH`_\]... + +**The configuration that is contained inside the file `rome.json`** +- **` --vcs-client-kind`**=_``_ — + The kind of client. +- **` --vcs-enabled`**=_``_ — + Whether Rome should integrate itself with the VCS client +- **` --vcs-use-ignore-file`**=_``_ — + Whether Rome should use the VCS ignore file. When [true], Rome will ignore the files specified in the ignore file. +- **` --vcs-root`**=_`PATH`_ — + The folder where Rome should check for VCS files. By default, Rome will use the same folder where `rome.json` was found. + + If Rome can't find the configuration, it will attempt to use the current working directory. If no current working directory can't be found, Rome won't use the VCS integration, and a diagnostic will be emitted +- **` --files-max-size`**=_`NUMBER`_ — + The maximum allowed size for source code files in bytes. Files above this limit will be ignored for performance reason. Defaults to 1 MiB +- **` --files-ignore-unknown`**=_``_ — + Tells Rome to not emit diagnostics when handling files that doesn't know +- **` --indent-style`**=_``_ — + The indent style. + + ```shell rome format --indent-style=tab ``` +- **` --indent-size`**=_`NUMBER`_ — + The size of the indentation, 2 by default +- **` --line-width`**=_`NUMBER`_ — + What's the max width of a line. Defaults to 80. +- **` --quote-style`**=_``_ — + The style for quotes. Defaults to double. +- **` --jsx-quote-style`**=_``_ — + The style for JSX quotes. Defaults to double. +- **` --quote-properties`**=_``_ — + When properties in objects are quoted. Defaults to asNeeded. +- **` --trailing-comma`**=_``_ — + Print trailing commas wherever possible in multi-line comma-separated syntactic structures. Defaults to "all". +- **` --semicolons`**=_``_ — + Whether the formatter prints semicolons for all statements or only in for statements where it is necessary because of ASI. + + + +**Global options applied to all commands** +- **` --colors`**=_``_ — + Set the formatting mode for markup: "off" prints everything as plain text, "force" forces the formatting of markup using ANSI even if the console output is determined to be incompatible +- **` --use-server`** — + Connect to a running instance of the Rome daemon server. +- **` --verbose`** — + Print additional verbose advices on diagnostics +- **` --config-path`**=_`PATH`_ — + Set the filesystem path to the directory of the rome.json configuration file +- **` --max-diagnostics`**=_`NUMBER`_ — + Cap the amount of diagnostics displayed (default: 20) +- **` --skip-errors`** — + Skip over files containing syntax errors instead of emitting an error diagnostic. +- **` --no-errors-on-unmatched`** — + Silence errors that would be emitted in case no files were processed during the execution of the command. +- **` --json`** — + Reports information using the JSON format + + + +**Available positional items:** +- _`PATH`_ — + Single file, single path or list of paths + + + +**Available options:** +- **` --apply`** — + Apply safe fixes, formatting +- **` --apply-unsafe`** — + Apply safe fixes and unsafe fixes, formatting and import sorting +- **` --formatter-enabled`**=_``_ — + Allow to enable or disable the formatter check. +- **` --linter-enabled`**=_``_ — + Allow to enable or disable the linter check. +- **` --organize-imports-enabled`**=_``_ — + Allow to enable or disable the organize imports. +- **` --stdin-file-path`**=_`PATH`_ — + A file name with its extension to pass when reading from standard in, e.g. echo 'let a;' | rome check --stdin-file-path=file.js" +- **`-h`**, **`--help`** — + Prints help information + + +# rome lint + +Run various checks on a set of files. + +**Usage**: **`rome`** **`lint`** \[**`--apply`**\] \[**`--apply-unsafe`**\] \[_`PATH`_\]... + +**The configuration that is contained inside the file `rome.json`** +- **` --vcs-client-kind`**=_``_ — + The kind of client. +- **` --vcs-enabled`**=_``_ — + Whether Rome should integrate itself with the VCS client +- **` --vcs-use-ignore-file`**=_``_ — + Whether Rome should use the VCS ignore file. When [true], Rome will ignore the files specified in the ignore file. +- **` --vcs-root`**=_`PATH`_ — + The folder where Rome should check for VCS files. By default, Rome will use the same folder where `rome.json` was found. + + If Rome can't find the configuration, it will attempt to use the current working directory. If no current working directory can't be found, Rome won't use the VCS integration, and a diagnostic will be emitted +- **` --files-max-size`**=_`NUMBER`_ — + The maximum allowed size for source code files in bytes. Files above this limit will be ignored for performance reason. Defaults to 1 MiB +- **` --files-ignore-unknown`**=_``_ — + Tells Rome to not emit diagnostics when handling files that doesn't know +- **` --indent-style`**=_``_ — + The indent style. + + ```shell rome format --indent-style=tab ``` +- **` --indent-size`**=_`NUMBER`_ — + The size of the indentation, 2 by default +- **` --line-width`**=_`NUMBER`_ — + What's the max width of a line. Defaults to 80. +- **` --quote-style`**=_``_ — + The style for quotes. Defaults to double. +- **` --jsx-quote-style`**=_``_ — + The style for JSX quotes. Defaults to double. +- **` --quote-properties`**=_``_ — + When properties in objects are quoted. Defaults to asNeeded. +- **` --trailing-comma`**=_``_ — + Print trailing commas wherever possible in multi-line comma-separated syntactic structures. Defaults to "all". +- **` --semicolons`**=_``_ — + Whether the formatter prints semicolons for all statements or only in for statements where it is necessary because of ASI. + + + +**Global options applied to all commands** +- **` --colors`**=_``_ — + Set the formatting mode for markup: "off" prints everything as plain text, "force" forces the formatting of markup using ANSI even if the console output is determined to be incompatible +- **` --use-server`** — + Connect to a running instance of the Rome daemon server. +- **` --verbose`** — + Print additional verbose advices on diagnostics +- **` --config-path`**=_`PATH`_ — + Set the filesystem path to the directory of the rome.json configuration file +- **` --max-diagnostics`**=_`NUMBER`_ — + Cap the amount of diagnostics displayed (default: 20) +- **` --skip-errors`** — + Skip over files containing syntax errors instead of emitting an error diagnostic. +- **` --no-errors-on-unmatched`** — + Silence errors that would be emitted in case no files were processed during the execution of the command. +- **` --json`** — + Reports information using the JSON format + + + +**Available positional items:** +- _`PATH`_ — + Single file, single path or list of paths + + + +**Available options:** +- **` --apply`** — + Apply safe fixes, formatting +- **` --apply-unsafe`** — + Apply safe fixes and unsafe fixes, formatting and import sorting +- **` --stdin-file-path`**=_`PATH`_ — + A file name with its extension to pass when reading from standard in, e.g. echo 'let a;' | rome lint --stdin-file-path=file.js" +- **`-h`**, **`--help`** — + Prints help information + + +# rome format + +Run the formatter on a set of files. + +**Usage**: **`rome`** **`format`** \[**`--write`**\] \[_`PATH`_\]... + +**Options applied to the formatter** +- **` --indent-style`**=_``_ — + The indent style. + + ```shell rome format --indent-style=tab ``` +- **` --indent-size`**=_`NUMBER`_ — + The size of the indentation, 2 by default +- **` --line-width`**=_`NUMBER`_ — + What's the max width of a line. Defaults to 80. + + + +**Set of properties to integrate Rome with a VCS software.** +- **` --vcs-client-kind`**=_``_ — + The kind of client. +- **` --vcs-enabled`**=_``_ — + Whether Rome should integrate itself with the VCS client +- **` --vcs-use-ignore-file`**=_``_ — + Whether Rome should use the VCS ignore file. When [true], Rome will ignore the files specified in the ignore file. +- **` --vcs-root`**=_`PATH`_ — + The folder where Rome should check for VCS files. By default, Rome will use the same folder where `rome.json` was found. + + If Rome can't find the configuration, it will attempt to use the current working directory. If no current working directory can't be found, Rome won't use the VCS integration, and a diagnostic will be emitted + + + +**The configuration of the filesystem** +- **` --files-max-size`**=_`NUMBER`_ — + The maximum allowed size for source code files in bytes. Files above this limit will be ignored for performance reason. Defaults to 1 MiB +- **` --files-ignore-unknown`**=_``_ — + Tells Rome to not emit diagnostics when handling files that doesn't know + + + +**Global options applied to all commands** +- **` --colors`**=_``_ — + Set the formatting mode for markup: "off" prints everything as plain text, "force" forces the formatting of markup using ANSI even if the console output is determined to be incompatible +- **` --use-server`** — + Connect to a running instance of the Rome daemon server. +- **` --verbose`** — + Print additional verbose advices on diagnostics +- **` --config-path`**=_`PATH`_ — + Set the filesystem path to the directory of the rome.json configuration file +- **` --max-diagnostics`**=_`NUMBER`_ — + Cap the amount of diagnostics displayed (default: 20) +- **` --skip-errors`** — + Skip over files containing syntax errors instead of emitting an error diagnostic. +- **` --no-errors-on-unmatched`** — + Silence errors that would be emitted in case no files were processed during the execution of the command. +- **` --json`** — + Reports information using the JSON format + + + +**Available positional items:** +- _`PATH`_ — + Single file, single path or list of paths. + + + +**Available options:** +- **` --quote-style`**=_``_ — + The style for quotes. Defaults to double. +- **` --jsx-quote-style`**=_``_ — + The style for JSX quotes. Defaults to double. +- **` --quote-properties`**=_``_ — + When properties in objects are quoted. Defaults to asNeeded. +- **` --trailing-comma`**=_``_ — + Print trailing commas wherever possible in multi-line comma-separated syntactic structures. Defaults to "all". +- **` --semicolons`**=_``_ — + Whether the formatter prints semicolons for all statements or only in for statements where it is necessary because of ASI. +- **` --stdin-file-path`**=_`PATH`_ — + A file name with its extension to pass when reading from standard in, e.g. echo 'let a;' | rome format --stdin-file-path=file.js". +- **` --write`** — + Writes formatted files to file system. +- **`-h`**, **`--help`** — + Prints help information + + +# rome ci + +Command to use in CI environments. Run various checks of a set of files. + +**Usage**: **`rome`** **`ci`** \[**`--formatter-enabled`**=_``_\] \[**`--linter-enabled`**=_``_\] \[**`--organize-imports-enabled`**=_``_\] \[_`PATH`_\]... + +**The configuration that is contained inside the file `rome.json`** +- **` --vcs-client-kind`**=_``_ — + The kind of client. +- **` --vcs-enabled`**=_``_ — + Whether Rome should integrate itself with the VCS client +- **` --vcs-use-ignore-file`**=_``_ — + Whether Rome should use the VCS ignore file. When [true], Rome will ignore the files specified in the ignore file. +- **` --vcs-root`**=_`PATH`_ — + The folder where Rome should check for VCS files. By default, Rome will use the same folder where `rome.json` was found. + + If Rome can't find the configuration, it will attempt to use the current working directory. If no current working directory can't be found, Rome won't use the VCS integration, and a diagnostic will be emitted +- **` --files-max-size`**=_`NUMBER`_ — + The maximum allowed size for source code files in bytes. Files above this limit will be ignored for performance reason. Defaults to 1 MiB +- **` --files-ignore-unknown`**=_``_ — + Tells Rome to not emit diagnostics when handling files that doesn't know +- **` --indent-style`**=_``_ — + The indent style. + + ```shell rome format --indent-style=tab ``` +- **` --indent-size`**=_`NUMBER`_ — + The size of the indentation, 2 by default +- **` --line-width`**=_`NUMBER`_ — + What's the max width of a line. Defaults to 80. +- **` --quote-style`**=_``_ — + The style for quotes. Defaults to double. +- **` --jsx-quote-style`**=_``_ — + The style for JSX quotes. Defaults to double. +- **` --quote-properties`**=_``_ — + When properties in objects are quoted. Defaults to asNeeded. +- **` --trailing-comma`**=_``_ — + Print trailing commas wherever possible in multi-line comma-separated syntactic structures. Defaults to "all". +- **` --semicolons`**=_``_ — + Whether the formatter prints semicolons for all statements or only in for statements where it is necessary because of ASI. + + + +**Global options applied to all commands** +- **` --colors`**=_``_ — + Set the formatting mode for markup: "off" prints everything as plain text, "force" forces the formatting of markup using ANSI even if the console output is determined to be incompatible +- **` --use-server`** — + Connect to a running instance of the Rome daemon server. +- **` --verbose`** — + Print additional verbose advices on diagnostics +- **` --config-path`**=_`PATH`_ — + Set the filesystem path to the directory of the rome.json configuration file +- **` --max-diagnostics`**=_`NUMBER`_ — + Cap the amount of diagnostics displayed (default: 20) +- **` --skip-errors`** — + Skip over files containing syntax errors instead of emitting an error diagnostic. +- **` --no-errors-on-unmatched`** — + Silence errors that would be emitted in case no files were processed during the execution of the command. +- **` --json`** — + Reports information using the JSON format + + + +**Available positional items:** +- _`PATH`_ — + Single file, single path or list of paths + + + +**Available options:** +- **` --formatter-enabled`**=_``_ — + Allow to enable or disable the formatter check. +- **` --linter-enabled`**=_``_ — + Allow to enable or disable the linter check. +- **` --organize-imports-enabled`**=_``_ — + Allow to enable or disable the organize imports. +- **`-h`**, **`--help`** — + Prints help information + + +# rome init + +Bootstraps a new rome project. Creates a configuration file with some defaults. + +**Usage**: **`rome`** **`init`** + +**Available options:** +- **`-h`**, **`--help`** — + Prints help information + + +# rome lsp-proxy + +Acts as a server for the Language Server Protocol over stdin/stdout + +**Usage**: **`rome`** **`lsp-proxy`** \[**`--colors`**=_``_\] \[**`--use-server`**\] \[**`--verbose`**\] \[**`--config-path`**=_`PATH`_\] \[**`--max-diagnostics`**=_`NUMBER`_\] \[**`--skip-errors`**\] \[**`--no-errors-on-unmatched`**\] + +**Global options applied to all commands** +- **` --colors`**=_``_ — + Set the formatting mode for markup: "off" prints everything as plain text, "force" forces the formatting of markup using ANSI even if the console output is determined to be incompatible +- **` --use-server`** — + Connect to a running instance of the Rome daemon server. +- **` --verbose`** — + Print additional verbose advices on diagnostics +- **` --config-path`**=_`PATH`_ — + Set the filesystem path to the directory of the rome.json configuration file +- **` --max-diagnostics`**=_`NUMBER`_ — + Cap the amount of diagnostics displayed (default: 20) +- **` --skip-errors`** — + Skip over files containing syntax errors instead of emitting an error diagnostic. +- **` --no-errors-on-unmatched`** — + Silence errors that would be emitted in case no files were processed during the execution of the command. +- **` --json`** — + Reports information using the JSON format + + + +**Available options:** +- **`-h`**, **`--help`** — + Prints help information + + +# rome migrate + +It updates the configuration when there are breaking changes + +**Usage**: **`rome`** **`migrate`** \[**`--write`**\] + +**Global options applied to all commands** +- **` --colors`**=_``_ — + Set the formatting mode for markup: "off" prints everything as plain text, "force" forces the formatting of markup using ANSI even if the console output is determined to be incompatible +- **` --use-server`** — + Connect to a running instance of the Rome daemon server. +- **` --verbose`** — + Print additional verbose advices on diagnostics +- **` --config-path`**=_`PATH`_ — + Set the filesystem path to the directory of the rome.json configuration file +- **` --max-diagnostics`**=_`NUMBER`_ — + Cap the amount of diagnostics displayed (default: 20) +- **` --skip-errors`** — + Skip over files containing syntax errors instead of emitting an error diagnostic. +- **` --no-errors-on-unmatched`** — + Silence errors that would be emitted in case no files were processed during the execution of the command. +- **` --json`** — + Reports information using the JSON format + + + +**Available options:** +- **` --write`** — + Writes the new configuration file to disk +- **`-h`**, **`--help`** — + Prints help information + + diff --git a/website/src/pages/cli.mdx b/website/src/pages/cli.mdx index c708a65ec9a..774983fa993 100644 --- a/website/src/pages/cli.mdx +++ b/website/src/pages/cli.mdx @@ -5,587 +5,115 @@ category: reference description: Available commands and arguments in the Rome CLI. --- -[//]: # (Start-codegen) - - - -# Command summary - - * [`rome`↴](#rome) - * [`rome version`↴](#rome-version) - * [`rome rage`↴](#rome-rage) - * [`rome start`↴](#rome-start) - * [`rome stop`↴](#rome-stop) - * [`rome check`↴](#rome-check) - * [`rome lint`↴](#rome-lint) - * [`rome format`↴](#rome-format) - * [`rome ci`↴](#rome-ci) - * [`rome init`↴](#rome-init) - * [`rome lsp-proxy`↴](#rome-lsp-proxy) - * [`rome migrate`↴](#rome-migrate) - -## rome - -Rome official CLI. Use it to check the health of your project or run it to check single files. - -**Usage**: **`rome`** _`COMMAND ...`_ - -**Available options:** -- **`-h`**, **`--help`** — - Prints help information -- **`-V`**, **`--version`** — - Prints version information +# CLI +## Commands +### `rome init` -**Available commands:** -- **`version`** — - Shows the Rome version information and quit -- **`rage`** — - Prints information for debugging -- **`start`** — - Start the Rome daemon server process -- **`stop`** — - Stop the Rome daemon server process -- **`check`** — - Run various checks on a set of files. -- **`lint`** — - Run various checks on a set of files. -- **`format`** — - Run the formatter on a set of files. -- **`ci`** — - Command to use in CI environments. Run various checks of a set of files. -- **`init`** — - Bootstraps a new rome project. Creates a configuration file with some defaults. -- **`lsp-proxy`** — - Acts as a server for the Language Server Protocol over stdin/stdout -- **`migrate`** — - It updates the configuration when there are breaking changes - - -## rome version +Help you to set up Rome for a new project by guiding you through the creation of a new `rome.json` [configuration](/configuration) file. -Shows the Rome version information and quit +The command fails if the project already has a `rome.json` configuration file. -**Usage**: **`rome`** **`version`** +### `rome version` -**Global options applied to all commands** -- **` --colors`**=_``_ — - Set the formatting mode for markup: "off" prints everything as plain text, "force" forces the formatting of markup using ANSI even if the console output is determined to be incompatible -- **` --use-server`** — - Connect to a running instance of the Rome daemon server. -- **` --verbose`** — - Print additional verbose advices on diagnostics -- **` --config-path`**=_`PATH`_ — - Set the filesystem path to the directory of the rome.json configuration file -- **` --max-diagnostics`**=_`NUMBER`_ — - Cap the amount of diagnostics displayed. - - [default: 20] -- **` --skip-errors`** — - Skip over files containing syntax errors instead of emitting an error diagnostic. -- **` --no-errors-on-unmatched`** — - Silence errors that would be emitted in case no files were processed during the execution of the command. -- **` --error-on-warnings`** — - Tell Rome to exit with an error code if some diagnostics emit warnings. - - - -**Available options:** -- **`-h`**, **`--help`** — - Prints help information - - -## rome rage - -Prints information for debugging - -**Usage**: **`rome`** **`rage`** - -**Global options applied to all commands** -- **` --colors`**=_``_ — - Set the formatting mode for markup: "off" prints everything as plain text, "force" forces the formatting of markup using ANSI even if the console output is determined to be incompatible -- **` --use-server`** — - Connect to a running instance of the Rome daemon server. -- **` --verbose`** — - Print additional verbose advices on diagnostics -- **` --config-path`**=_`PATH`_ — - Set the filesystem path to the directory of the rome.json configuration file -- **` --max-diagnostics`**=_`NUMBER`_ — - Cap the amount of diagnostics displayed. - - [default: 20] -- **` --skip-errors`** — - Skip over files containing syntax errors instead of emitting an error diagnostic. -- **` --no-errors-on-unmatched`** — - Silence errors that would be emitted in case no files were processed during the execution of the command. -- **` --error-on-warnings`** — - Tell Rome to exit with an error code if some diagnostics emit warnings. - - - -**Available options:** -- **`-h`**, **`--help`** — - Prints help information - - -## rome start - -Start the Rome daemon server process - -**Usage**: **`rome`** **`start`** - -**Available options:** -- **`-h`**, **`--help`** — - Prints help information - - -## rome stop - -Stop the Rome daemon server process - -**Usage**: **`rome`** **`stop`** - -**Available options:** -- **`-h`**, **`--help`** — - Prints help information - - -## rome check - -Run various checks on a set of files. - -**Usage**: **`rome`** **`check`** \[**`--apply`**\] \[**`--apply-unsafe`**\] \[_`PATH`_\]... - -**The configuration that is contained inside the file `rome.json`** -- **` --vcs-client-kind`**=_``_ — - The kind of client. -- **` --vcs-enabled`**=_``_ — - Whether Rome should integrate itself with the VCS client -- **` --vcs-use-ignore-file`**=_``_ — - Whether Rome should use the VCS ignore file. When [true], Rome will ignore the files specified in the ignore file. -- **` --vcs-root`**=_`PATH`_ — - The folder where Rome should check for VCS files. By default, Rome will use the same folder where `rome.json` was found. - - If Rome can't find the configuration, it will attempt to use the current working directory. If no current working directory can't be found, Rome won't use the VCS integration, and a diagnostic will be emitted -- **` --files-max-size`**=_`NUMBER`_ — - The maximum allowed size for source code files in bytes. Files above this limit will be ignored for performance reason. Defaults to 1 MiB -- **` --files-ignore-unknown`**=_``_ — - Tells Rome to not emit diagnostics when handling files that doesn't know -- **` --indent-style`**=_``_ — - The indent style. -- **` --indent-size`**=_`NUMBER`_ — - The size of the indentation, 2 by default -- **` --line-width`**=_`NUMBER`_ — - What's the max width of a line. Defaults to 80. -- **` --quote-style`**=_``_ — - The type of quotes used in JavaScript code. Defaults to double. -- **` --jsx-quote-style`**=_``_ — - The type of quotes used in JSX. Defaults to double. -- **` --quote-properties`**=_``_ — - When properties in objects are quoted. Defaults to asNeeded. -- **` --trailing-comma`**=_``_ — - Print trailing commas wherever possible in multi-line comma-separated syntactic structures. Defaults to "all". -- **` --semicolons`**=_``_ — - Whether the formatter prints semicolons for all statements or only in for statements where it is necessary because of ASI. -- **` --arrow-parentheses`**=_``_ — - Whether to add non-necessary parentheses to arrow functions. Defaults to "always". - - - -**Global options applied to all commands** -- **` --colors`**=_``_ — - Set the formatting mode for markup: "off" prints everything as plain text, "force" forces the formatting of markup using ANSI even if the console output is determined to be incompatible -- **` --use-server`** — - Connect to a running instance of the Rome daemon server. -- **` --verbose`** — - Print additional verbose advices on diagnostics -- **` --config-path`**=_`PATH`_ — - Set the filesystem path to the directory of the rome.json configuration file -- **` --max-diagnostics`**=_`NUMBER`_ — - Cap the amount of diagnostics displayed. - - [default: 20] -- **` --skip-errors`** — - Skip over files containing syntax errors instead of emitting an error diagnostic. -- **` --no-errors-on-unmatched`** — - Silence errors that would be emitted in case no files were processed during the execution of the command. -- **` --error-on-warnings`** — - Tell Rome to exit with an error code if some diagnostics emit warnings. - - - -**Available positional items:** -- _`PATH`_ — - Single file, single path or list of paths - - - -**Available options:** -- **` --apply`** — - Apply safe fixes, formatting -- **` --apply-unsafe`** — - Apply safe fixes and unsafe fixes, formatting and import sorting -- **` --formatter-enabled`**=_``_ — - Allow to enable or disable the formatter check. -- **` --linter-enabled`**=_``_ — - Allow to enable or disable the linter check. -- **` --organize-imports-enabled`**=_``_ — - Allow to enable or disable the organize imports. -- **` --stdin-file-path`**=_`PATH`_ — - A file name with its extension to pass when reading from standard in, e.g. echo 'let a;' | rome check --stdin-file-path=file.js" -- **`-h`**, **`--help`** — - Prints help information - - -## rome lint - -Run various checks on a set of files. - -**Usage**: **`rome`** **`lint`** \[**`--apply`**\] \[**`--apply-unsafe`**\] \[_`PATH`_\]... - -**The configuration that is contained inside the file `rome.json`** -- **` --vcs-client-kind`**=_``_ — - The kind of client. -- **` --vcs-enabled`**=_``_ — - Whether Rome should integrate itself with the VCS client -- **` --vcs-use-ignore-file`**=_``_ — - Whether Rome should use the VCS ignore file. When [true], Rome will ignore the files specified in the ignore file. -- **` --vcs-root`**=_`PATH`_ — - The folder where Rome should check for VCS files. By default, Rome will use the same folder where `rome.json` was found. - - If Rome can't find the configuration, it will attempt to use the current working directory. If no current working directory can't be found, Rome won't use the VCS integration, and a diagnostic will be emitted -- **` --files-max-size`**=_`NUMBER`_ — - The maximum allowed size for source code files in bytes. Files above this limit will be ignored for performance reason. Defaults to 1 MiB -- **` --files-ignore-unknown`**=_``_ — - Tells Rome to not emit diagnostics when handling files that doesn't know -- **` --indent-style`**=_``_ — - The indent style. -- **` --indent-size`**=_`NUMBER`_ — - The size of the indentation, 2 by default -- **` --line-width`**=_`NUMBER`_ — - What's the max width of a line. Defaults to 80. -- **` --quote-style`**=_``_ — - The type of quotes used in JavaScript code. Defaults to double. -- **` --jsx-quote-style`**=_``_ — - The type of quotes used in JSX. Defaults to double. -- **` --quote-properties`**=_``_ — - When properties in objects are quoted. Defaults to asNeeded. -- **` --trailing-comma`**=_``_ — - Print trailing commas wherever possible in multi-line comma-separated syntactic structures. Defaults to "all". -- **` --semicolons`**=_``_ — - Whether the formatter prints semicolons for all statements or only in for statements where it is necessary because of ASI. -- **` --arrow-parentheses`**=_``_ — - Whether to add non-necessary parentheses to arrow functions. Defaults to "always". - - - -**Global options applied to all commands** -- **` --colors`**=_``_ — - Set the formatting mode for markup: "off" prints everything as plain text, "force" forces the formatting of markup using ANSI even if the console output is determined to be incompatible -- **` --use-server`** — - Connect to a running instance of the Rome daemon server. -- **` --verbose`** — - Print additional verbose advices on diagnostics -- **` --config-path`**=_`PATH`_ — - Set the filesystem path to the directory of the rome.json configuration file -- **` --max-diagnostics`**=_`NUMBER`_ — - Cap the amount of diagnostics displayed. - - [default: 20] -- **` --skip-errors`** — - Skip over files containing syntax errors instead of emitting an error diagnostic. -- **` --no-errors-on-unmatched`** — - Silence errors that would be emitted in case no files were processed during the execution of the command. -- **` --error-on-warnings`** — - Tell Rome to exit with an error code if some diagnostics emit warnings. - - - -**Available positional items:** -- _`PATH`_ — - Single file, single path or list of paths - - - -**Available options:** -- **` --apply`** — - Apply safe fixes, formatting -- **` --apply-unsafe`** — - Apply safe fixes and unsafe fixes, formatting and import sorting -- **` --stdin-file-path`**=_`PATH`_ — - A file name with its extension to pass when reading from standard in, e.g. echo 'let a;' | rome lint --stdin-file-path=file.js" -- **`-h`**, **`--help`** — - Prints help information - - -## rome format +Print the version of the CLI and whether there's a server (daemon) connected + +### `rome rage` + +Print information for debugging purpose + +### `rome lsp-proxy` + +It starts a server for the LSP protocol, which communicates over `stdin` and `stdout`. + +This command is useful to interact with the Rome server when developing editors/IDEs. + +### `rome format` Run the formatter on a set of files. -**Usage**: **`rome`** **`format`** \[**`--write`**\] \[_`PATH`_\]... +### `rome check` + +Run the linter on a set of files and reports errors and warnings to the console. + +### `rome ci` + +Run the linter and verifies the formatting of a set of files. It reports errors to the console. If any errors are found the process exits with a code of `1`. + +This command is intended to be used in CI workflows. + +### `rome start` + +Start the Rome [daemon](/internals/architecture#daemon) server -**Generic options applied to all files** -- **` --indent-style`**=_``_ — - The indent style. -- **` --indent-size`**=_`NUMBER`_ — - The size of the indentation, 2 by default -- **` --line-width`**=_`NUMBER`_ — - What's the max width of a line. Defaults to 80. +### `rome stop` +Stop the Rome [daemon](/internals/architecture#deamon) server +### `rome migrate` -**Formatting options specific to the JavaScript files** -- **` --quote-style`**=_``_ — - The type of quotes used in JavaScript code. Defaults to double. -- **` --jsx-quote-style`**=_``_ — - The type of quotes used in JSX. Defaults to double. -- **` --quote-properties`**=_``_ — - When properties in objects are quoted. Defaults to asNeeded. -- **` --trailing-comma`**=_``_ — - Print trailing commas wherever possible in multi-line comma-separated syntactic structures. Defaults to "all". -- **` --semicolons`**=_``_ — - Whether the formatter prints semicolons for all statements or only in for statements where it is necessary because of ASI. -- **` --arrow-parentheses`**=_``_ — - Whether to add non-necessary parentheses to arrow functions. Defaults to "always". - - - -**Set of properties to integrate Rome with a VCS software.** -- **` --vcs-client-kind`**=_``_ — - The kind of client. -- **` --vcs-enabled`**=_``_ — - Whether Rome should integrate itself with the VCS client -- **` --vcs-use-ignore-file`**=_``_ — - Whether Rome should use the VCS ignore file. When [true], Rome will ignore the files specified in the ignore file. -- **` --vcs-root`**=_`PATH`_ — - The folder where Rome should check for VCS files. By default, Rome will use the same folder where `rome.json` was found. - - If Rome can't find the configuration, it will attempt to use the current working directory. If no current working directory can't be found, Rome won't use the VCS integration, and a diagnostic will be emitted - - - -**The configuration of the filesystem** -- **` --files-max-size`**=_`NUMBER`_ — - The maximum allowed size for source code files in bytes. Files above this limit will be ignored for performance reason. Defaults to 1 MiB -- **` --files-ignore-unknown`**=_``_ — - Tells Rome to not emit diagnostics when handling files that doesn't know - - - -**Global options applied to all commands** -- **` --colors`**=_``_ — - Set the formatting mode for markup: "off" prints everything as plain text, "force" forces the formatting of markup using ANSI even if the console output is determined to be incompatible -- **` --use-server`** — - Connect to a running instance of the Rome daemon server. -- **` --verbose`** — - Print additional verbose advices on diagnostics -- **` --config-path`**=_`PATH`_ — - Set the filesystem path to the directory of the rome.json configuration file -- **` --max-diagnostics`**=_`NUMBER`_ — - Cap the amount of diagnostics displayed. - - [default: 20] -- **` --skip-errors`** — - Skip over files containing syntax errors instead of emitting an error diagnostic. -- **` --no-errors-on-unmatched`** — - Silence errors that would be emitted in case no files were processed during the execution of the command. -- **` --error-on-warnings`** — - Tell Rome to exit with an error code if some diagnostics emit warnings. - - - -**Available positional items:** -- _`PATH`_ — - Single file, single path or list of paths. - - - -**Available options:** -- **` --stdin-file-path`**=_`PATH`_ — - A file name with its extension to pass when reading from standard in, e.g. echo 'let a;' | rome format --stdin-file-path=file.js". -- **` --write`** — - Writes formatted files to file system. -- **`-h`**, **`--help`** — - Prints help information - - -## rome ci - -Command to use in CI environments. Run various checks of a set of files. - -**Usage**: **`rome`** **`ci`** \[**`--formatter-enabled`**=_``_\] \[**`--linter-enabled`**=_``_\] \[**`--organize-imports-enabled`**=_``_\] \[_`PATH`_\]... - -**The configuration that is contained inside the file `rome.json`** -- **` --vcs-client-kind`**=_``_ — - The kind of client. -- **` --vcs-enabled`**=_``_ — - Whether Rome should integrate itself with the VCS client -- **` --vcs-use-ignore-file`**=_``_ — - Whether Rome should use the VCS ignore file. When [true], Rome will ignore the files specified in the ignore file. -- **` --vcs-root`**=_`PATH`_ — - The folder where Rome should check for VCS files. By default, Rome will use the same folder where `rome.json` was found. - - If Rome can't find the configuration, it will attempt to use the current working directory. If no current working directory can't be found, Rome won't use the VCS integration, and a diagnostic will be emitted -- **` --files-max-size`**=_`NUMBER`_ — - The maximum allowed size for source code files in bytes. Files above this limit will be ignored for performance reason. Defaults to 1 MiB -- **` --files-ignore-unknown`**=_``_ — - Tells Rome to not emit diagnostics when handling files that doesn't know -- **` --indent-style`**=_``_ — - The indent style. -- **` --indent-size`**=_`NUMBER`_ — - The size of the indentation, 2 by default -- **` --line-width`**=_`NUMBER`_ — - What's the max width of a line. Defaults to 80. -- **` --quote-style`**=_``_ — - The type of quotes used in JavaScript code. Defaults to double. -- **` --jsx-quote-style`**=_``_ — - The type of quotes used in JSX. Defaults to double. -- **` --quote-properties`**=_``_ — - When properties in objects are quoted. Defaults to asNeeded. -- **` --trailing-comma`**=_``_ — - Print trailing commas wherever possible in multi-line comma-separated syntactic structures. Defaults to "all". -- **` --semicolons`**=_``_ — - Whether the formatter prints semicolons for all statements or only in for statements where it is necessary because of ASI. -- **` --arrow-parentheses`**=_``_ — - Whether to add non-necessary parentheses to arrow functions. Defaults to "always". - - - -**Global options applied to all commands** -- **` --colors`**=_``_ — - Set the formatting mode for markup: "off" prints everything as plain text, "force" forces the formatting of markup using ANSI even if the console output is determined to be incompatible -- **` --use-server`** — - Connect to a running instance of the Rome daemon server. -- **` --verbose`** — - Print additional verbose advices on diagnostics -- **` --config-path`**=_`PATH`_ — - Set the filesystem path to the directory of the rome.json configuration file -- **` --max-diagnostics`**=_`NUMBER`_ — - Cap the amount of diagnostics displayed. - - [default: 20] -- **` --skip-errors`** — - Skip over files containing syntax errors instead of emitting an error diagnostic. -- **` --no-errors-on-unmatched`** — - Silence errors that would be emitted in case no files were processed during the execution of the command. -- **` --error-on-warnings`** — - Tell Rome to exit with an error code if some diagnostics emit warnings. - - - -**Available positional items:** -- _`PATH`_ — - Single file, single path or list of paths - - - -**Available options:** -- **` --formatter-enabled`**=_``_ — - Allow to enable or disable the formatter check. -- **` --linter-enabled`**=_``_ — - Allow to enable or disable the linter check. -- **` --organize-imports-enabled`**=_``_ — - Allow to enable or disable the organize imports. -- **`-h`**, **`--help`** — - Prints help information - +Automatically updates the configuration file to use the latest version, in case there were breaking changes among versions. -## rome init +## Global Options -Bootstraps a new rome project. Creates a configuration file with some defaults. +### `--colors` -**Usage**: **`rome`** **`init`** +Set the formatting mode for markup: `off` prints everything as plain text, +`force` forces the formatting of markup using ANSI even if the console output +is determined to be incompatible -**Available options:** -- **`-h`**, **`--help`** — - Prints help information +> Default: `force` +### `--use-server` -## rome lsp-proxy - -Acts as a server for the Language Server Protocol over stdin/stdout +Connect to a running instance of the Rome daemon server -**Usage**: **`rome`** **`lsp-proxy`** +##### `--files-max-size` -**Global options applied to all commands** -- **` --colors`**=_``_ — - Set the formatting mode for markup: "off" prints everything as plain text, "force" forces the formatting of markup using ANSI even if the console output is determined to be incompatible -- **` --use-server`** — - Connect to a running instance of the Rome daemon server. -- **` --verbose`** — - Print additional verbose advices on diagnostics -- **` --config-path`**=_`PATH`_ — - Set the filesystem path to the directory of the rome.json configuration file -- **` --max-diagnostics`**=_`NUMBER`_ — - Cap the amount of diagnostics displayed. - - [default: 20] -- **` --skip-errors`** — - Skip over files containing syntax errors instead of emitting an error diagnostic. -- **` --no-errors-on-unmatched`** — - Silence errors that would be emitted in case no files were processed during the execution of the command. -- **` --error-on-warnings`** — - Tell Rome to exit with an error code if some diagnostics emit warnings. +The maximum allowed size for source code files in bytes. +> Default: 1024*1024 bytes (1 MB) +### `--config-path` -**Available options:** -- **`-h`**, **`--help`** — - Prints help information +Tell Rome in which path to find the configuration file `rome.json`. +> **Warning**: when passing `--config-path`, the auto discovery of the `rome.json` file is disabled. -## rome migrate +If Rome doesn't find a `rome.json`, it will abort the operation and exit with and error code. -It updates the configuration when there are breaking changes +### `--vcs-enabled` -**Usage**: **`rome`** **`migrate`** \[**`--write`**\] +Whether Rome should integrate itself with the VCS client. -**Global options applied to all commands** -- **` --colors`**=_``_ — - Set the formatting mode for markup: "off" prints everything as plain text, "force" forces the formatting of markup using ANSI even if the console output is determined to be incompatible -- **` --use-server`** — - Connect to a running instance of the Rome daemon server. -- **` --verbose`** — - Print additional verbose advices on diagnostics -- **` --config-path`**=_`PATH`_ — - Set the filesystem path to the directory of the rome.json configuration file -- **` --max-diagnostics`**=_`NUMBER`_ — - Cap the amount of diagnostics displayed. - - [default: 20] -- **` --skip-errors`** — - Skip over files containing syntax errors instead of emitting an error diagnostic. -- **` --no-errors-on-unmatched`** — - Silence errors that would be emitted in case no files were processed during the execution of the command. -- **` --error-on-warnings`** — - Tell Rome to exit with an error code if some diagnostics emit warnings. +### `--vcs-client-kind` +The kind of VCS client rome should support. +Options available: +- `git` -**Available options:** -- **` --write`** — - Writes the new configuration file to disk -- **`-h`**, **`--help`** — - Prints help information +### `--vcs-use-ignore-file` +Whether Rome should use the VCS ignore file. When [true], Rome will ignore the files specified in the ignore file. +### `--vcs-root` -[//]: # (End-codegen) +## Global Options +The folder where Rome should check for VCS files. By default, Rome will use the same +folder where `rome.json` was found. -## Environment Variables +Use these flags to get information about the Rome CLI. +If Rome can't fine the configuration, it will attempt to use the current working directory. +If no current working directory can't be found, Rome won't use the VCS integration. -### `ROME_BINARY` -Overrides the Rome binary being used. This allows you, for example, to use a system wide Rome binary. +### `--version` -If you don't define this variable, Rome will automatically detect the correct binary for your platform. +Print the Rome version and exits. -``` -# Nix derivation example; the binary path comes from "${pkgs.rome}/bin/rome" -ROME_BINARY=/nix/store/68fyfw1hidsqkal1839whi3nzgvqv4pa-rome-12.1.0/bin/rome npx rome format . -``` +### `--help` -## Useful information +Print the help message and exits. -- When encountering symbolic links, the CLI will expand them until three levels deep. Deeper levels will result into an error diagnostic. diff --git a/website/src/pages/configuration.mdx b/website/src/pages/configuration.mdx index 45beeea9d75..91ae6454624 100644 --- a/website/src/pages/configuration.mdx +++ b/website/src/pages/configuration.mdx @@ -91,56 +91,6 @@ If you have problems with resolving the physical file, you can use the one publi } ``` -## `extends` - -A list of paths to other JSON files that will extend the current configuration file. - - - -```json -{ - "$schema": "https://docs.rome.tools/schemas/12.1.0/schema.json", - "extends": ["./formatter.json", "./linter.json"] -} -``` - - -```json -{ - "$schema": "https://docs.rome.tools/schemas/12.1.0/schema.json", - "formatter": { - "indentSize": 2 - }, - "javascript": { - "formatter": { - "semicolons": "asNeeded" - } - } -} -``` - - -```json -{ - "$schema": "https://docs.rome.tools/schemas/12.1.0/schema.json", - "linter": { - "rules": { - "complexity": { - "noUselessConstructor": "off" - } - } - } -} -``` - -The files defined in this array: -- must exist in the file system; -- are resolved from the path where the `rome.json` file is defined; -- must be relative paths. Paths to libraries are not resolved; -- must be reachable by Rome, e.g. symbolic links might not be resolved by Rome; -- will be processed in order: from the first one to the last one; -- can override the same properties, but ultimately only the last one will be used by Rome; - ## `files` ### `files.maxSize` @@ -163,20 +113,6 @@ match these patterns. "ignore": ["scripts/*.js"] } } -``` - - ### `files.allowUnknown` - -Rome won't emit diagnostics if it encounters files that can't handle. - - - -```json -{ - "files": { - "allowUnknown": true - } -} ``` ## `vcs` @@ -393,12 +329,10 @@ How many characters can be written on a single line. ## `organizeImports` -### `organizeImports.enabled` +### `organizeImports.enabled` (experimental) Enables Rome's sort imports. -> Default: `true` - ### `organizeImports.ignore` @@ -421,35 +355,19 @@ match these patterns. These options apply only to JavaScript (and TypeScript) files. -### `javascript.parser.unsafeParameterDecoratorsEnabled` - -Allows to support the unsafe/experimental parameter decorators. - - - -```json -{ - "javascript": { - "parser": { - "unsafeParameterDecoratorsEnabled": true - } - } -} -``` - -> Default: `false` - ### `javascript.formatter.quoteStyle` The type of quote used when representing string literals. It can be `single` or `double`. > Default: `double` -### `javascript.formatter.jsxQuoteStyle` +[//]: # (### `javascript.formatter.jsxQuoteStyle`) -The type of quote used when representing jsx string literals. It can be `single` or `double`. +[//]: # () +[//]: # (The type of quote used when representing jsx string literals. It can be `single` or `double`.) -> Default: `double` +[//]: # () +[//]: # (> Default: `double`) ### `javascript.formatter.quoteProperties` @@ -474,14 +392,6 @@ It configures where the formatter prints semicolons: > Default: `always` -### `javascript.formatter.arrowParentheses` - -Whether to add non-necessary parentheses to arrow functions: -- `always`, the parentheses are always added; -- `asNeeded`, the parentheses are added only when they are needed; - -> Default: `always` - Example: @@ -508,23 +418,3 @@ A list of global names that Rome should ignore (analyzer, linter, etc.) } } ``` - -## `json` - -Options applied to the JSON files. - -### `json.parser.allowComments` - -Enables the parsing of comments in JSON files. - - - -```json -{ - "json": { - "parser": { - "allowComments": true - } - } -} -``` diff --git a/website/src/pages/formatter/index.mdx b/website/src/pages/formatter/index.mdx index c742a3a74a7..c28694e3956 100644 --- a/website/src/pages/formatter/index.mdx +++ b/website/src/pages/formatter/index.mdx @@ -24,20 +24,57 @@ Other formatting options are available for specific languages as well. See the ## Use the formatter with the CLI -By default, the formatter **checks** the code and emit diagnostics if there are changes in formatting: - - - -If you want to **apply** the new formatting, pass the `--write` option: - - - -Use the `--help` flag to know what are the available options: +You can start by running the CLI with the `--help` flag: -Or check the [CLI reference section](/cli#rome-format). - +Which will show you the options available at the moment: + +```plaintext +Run the formatter on a set of files. + +Usage: [--write] ... + +Available positional items: + Single file, single path or list of paths + +Available options: + --indent-style The indent style. + --indent-size The size of the indentation, 2 by default + --line-width What's the max width of a line. Defaults to 80. + --quote-style The style for quotes. Defaults to double. + --quote-properties When properties in objects are quoted. Defaults to + asNeeded. + --trailing-comma Print trailing commas wherever possible in multi-line + comma-separated syntactic structures. Defaults to "all". + --semicolons Whether the formatter prints semicolons for all statements + or only in for statements where it is necessary because of ASI. + --vcs-client-kind The kind of client. + --vcs-enabled Whether Rome should integrate itself with the VCS client + --vcs-use-ignore-file Whether Rome should use the VCS ignore file. When [true], + Rome will ignore the files specified in the ignore file. + --vcs-root The folder where Rome should check for VCS files. By default, Rome will + use the same folder where `rome.json` was found. If Rome can't fine the + configuration, it will attempt to use the current working directory. If no + current working directory can't be found, Rome won't use the VCS integration. + --files-max-size The maximum allowed size for source code files in bytes. Files + above this limit will be ignored for performance reason. Defaults to 1 MiB + --stdin-file-path A file name with its extension to pass when reading from standard + in, e.g. echo 'let a;' | rome format --stdin-file-path=file.js" + --colors Set the formatting mode for markup: "off" prints everything as plain + text, "force" forces the formatting of markup using ANSI even if the console + output is determined to be incompatible + --use-server Connect to a running instance of the Rome daemon server. + --verbose Print additional verbose advices on diagnostics + --config-path Set the filesystem path to the directory of the rome.json configuration + file + --max-diagnostics Cap the amount of diagnostics displayed (default: 20) + --skip-errors Skip over files containing syntax errors instead of emitting an error + diagnostic. + --json Reports information using the JSON format + --write + -h, --help Prints help information +``` ## Configuration diff --git a/website/src/pages/internals/architecture.mdx b/website/src/pages/internals/architecture.mdx index ed4d0d94100..ddc25e148e0 100644 --- a/website/src/pages/internals/architecture.mdx +++ b/website/src/pages/internals/architecture.mdx @@ -1,5 +1,5 @@ --- -title: Architecture (WIP) +title: Architecture emoji: 🏛️ category: internals description: How Rome works. diff --git a/website/src/pages/internals/language_support.mdx b/website/src/pages/internals/language_support.mdx index a71069b0417..ca3ea5a129e 100644 --- a/website/src/pages/internals/language_support.mdx +++ b/website/src/pages/internals/language_support.mdx @@ -12,10 +12,9 @@ description: Languages and features supported by Rome. | [JavaScript](#javascript-support) | | | | | [TypeScript](#typescript-support) | | | | | JSX | | | | -| JSON | | | | -| JSONC | | | | +| JSON | | | ⌛️ | | HTML | 🚫 | 🚫 | 🚫 | -| CSS | ⌛️ | 🚫 | 🚫 | +| CSS | 🚫 | 🚫 | 🚫 | | Markdown | 🚫 | 🚫 | 🚫 | @@ -29,3 +28,5 @@ Rome supports only the official syntax. The team starts development of the new s ## TypeScript support Rome supports TypeScript version 5.0. + +Rome can handle programs using decorators but doesn't support formatting or linting decorators. diff --git a/website/src/pages/lint/rules/noControlCharactersInRegex.md b/website/src/pages/lint/rules/noControlCharactersInRegex.md index 84a2b12abab..69004bf0dbd 100644 --- a/website/src/pages/lint/rules/noControlCharactersInRegex.md +++ b/website/src/pages/lint/rules/noControlCharactersInRegex.md @@ -3,7 +3,7 @@ title: Lint Rule noControlCharactersInRegex parent: lint/rules/index --- -# noControlCharactersInRegex (since v13.0.0) +# noControlCharactersInRegex (since vnext) Prevents from having control characters and some escape sequences that match control characters in regular expressions. diff --git a/website/src/pages/lint/rules/noDuplicateJsonKeys.md b/website/src/pages/lint/rules/noDuplicateJsonKeys.md index 3fb046f645b..6f17d9a41e2 100644 --- a/website/src/pages/lint/rules/noDuplicateJsonKeys.md +++ b/website/src/pages/lint/rules/noDuplicateJsonKeys.md @@ -3,7 +3,7 @@ title: Lint Rule noDuplicateJsonKeys parent: lint/rules/index --- -# noDuplicateJsonKeys (since v13.0.0) +# noDuplicateJsonKeys (since vnext) Disallow two keys with the same name inside a JSON object. @@ -11,7 +11,7 @@ Disallow two keys with the same name inside a JSON object. ### Invalid -```json +``` { "title": "New title", "title": "Second title" @@ -43,7 +43,7 @@ Disallow two keys with the same name inside a JSON object. ### Valid -```json +``` { "title": "New title", "secondTitle": "Second title" diff --git a/website/src/pages/lint/rules/noExcessiveComplexity.md b/website/src/pages/lint/rules/noExcessiveComplexity.md index 783c21d04b5..e83f0774db1 100644 --- a/website/src/pages/lint/rules/noExcessiveComplexity.md +++ b/website/src/pages/lint/rules/noExcessiveComplexity.md @@ -3,7 +3,7 @@ title: Lint Rule noExcessiveComplexity parent: lint/rules/index --- -# noExcessiveComplexity (since v13.0.0) +# noExcessiveComplexity (since vnext) Disallow functions that exceed a given complexity score. @@ -56,7 +56,7 @@ function tooComplex() { Allows to specify the maximum allowed complexity. -```json +``` { "//": "...", "options": { diff --git a/website/src/pages/lint/rules/noFallthroughSwitchClause.md b/website/src/pages/lint/rules/noFallthroughSwitchClause.md index 971d12e41f5..d6eb487d39a 100644 --- a/website/src/pages/lint/rules/noFallthroughSwitchClause.md +++ b/website/src/pages/lint/rules/noFallthroughSwitchClause.md @@ -3,7 +3,7 @@ title: Lint Rule noFallthroughSwitchClause parent: lint/rules/index --- -# noFallthroughSwitchClause (since v13.0.0) +# noFallthroughSwitchClause (since vnext) Disallow fallthrough of `switch` clauses. diff --git a/website/src/pages/lint/rules/noGlobalIsFinite.md b/website/src/pages/lint/rules/noGlobalIsFinite.md index 33dcbd1cfc1..223e71d599c 100644 --- a/website/src/pages/lint/rules/noGlobalIsFinite.md +++ b/website/src/pages/lint/rules/noGlobalIsFinite.md @@ -3,7 +3,7 @@ title: Lint Rule noGlobalIsFinite parent: lint/rules/index --- -# noGlobalIsFinite (since v13.0.0) +# noGlobalIsFinite (since vnext) Use `Number.isFinite` instead of global `isFinite`. diff --git a/website/src/pages/lint/rules/noGlobalIsNan.md b/website/src/pages/lint/rules/noGlobalIsNan.md index aacbc05f0aa..ac2fd6eab35 100644 --- a/website/src/pages/lint/rules/noGlobalIsNan.md +++ b/website/src/pages/lint/rules/noGlobalIsNan.md @@ -3,7 +3,7 @@ title: Lint Rule noGlobalIsNan parent: lint/rules/index --- -# noGlobalIsNan (since v13.0.0) +# noGlobalIsNan (since vnext) Use `Number.isNaN` instead of global `isNaN`. diff --git a/website/src/pages/lint/rules/noNonoctalDecimalEscape.md b/website/src/pages/lint/rules/noNonoctalDecimalEscape.md index 0310fecda69..79c2a473a7d 100644 --- a/website/src/pages/lint/rules/noNonoctalDecimalEscape.md +++ b/website/src/pages/lint/rules/noNonoctalDecimalEscape.md @@ -3,7 +3,7 @@ title: Lint Rule noNonoctalDecimalEscape parent: lint/rules/index --- -# noNonoctalDecimalEscape (since v13.0.0) +# noNonoctalDecimalEscape (since vnext) Disallow `\8` and `\9` escape sequences in string literals. diff --git a/website/src/pages/lint/rules/noRestrictedGlobals.md b/website/src/pages/lint/rules/noRestrictedGlobals.md index 0b1955bff14..a3dd8aa6bf1 100644 --- a/website/src/pages/lint/rules/noRestrictedGlobals.md +++ b/website/src/pages/lint/rules/noRestrictedGlobals.md @@ -44,7 +44,7 @@ function f(event) { Use the options to specify additional globals that you want to restrict in your source code. -```json +``` { "//": "...", "options": { diff --git a/website/src/pages/lint/rules/noStaticOnlyClass.md b/website/src/pages/lint/rules/noStaticOnlyClass.md index f25e473bd33..26d63c2d295 100644 --- a/website/src/pages/lint/rules/noStaticOnlyClass.md +++ b/website/src/pages/lint/rules/noStaticOnlyClass.md @@ -3,7 +3,7 @@ title: Lint Rule noStaticOnlyClass parent: lint/rules/index --- -# noStaticOnlyClass (since v13.0.0) +# noStaticOnlyClass (since vnext) This rule reports when a class has no non-static members, such as for a class used exclusively as a static namespace. diff --git a/website/src/pages/lint/rules/noUnsafeDeclarationMerging.md b/website/src/pages/lint/rules/noUnsafeDeclarationMerging.md index 83b96647ea7..77ba6c766d1 100644 --- a/website/src/pages/lint/rules/noUnsafeDeclarationMerging.md +++ b/website/src/pages/lint/rules/noUnsafeDeclarationMerging.md @@ -3,7 +3,7 @@ title: Lint Rule noUnsafeDeclarationMerging parent: lint/rules/index --- -# noUnsafeDeclarationMerging (since v13.0.0) +# noUnsafeDeclarationMerging (since vnext) Disallow unsafe declaration merging between interfaces and classes. diff --git a/website/src/pages/lint/rules/noUselessEmptyExport.md b/website/src/pages/lint/rules/noUselessEmptyExport.md index 4d98d0f31a8..7a6df1b68e0 100644 --- a/website/src/pages/lint/rules/noUselessEmptyExport.md +++ b/website/src/pages/lint/rules/noUselessEmptyExport.md @@ -3,7 +3,7 @@ title: Lint Rule noUselessEmptyExport parent: lint/rules/index --- -# noUselessEmptyExport (since v13.0.0) +# noUselessEmptyExport (since vnext) Disallow empty exports that don't change anything in a module file. diff --git a/website/src/pages/lint/rules/noUselessTypeConstraint.md b/website/src/pages/lint/rules/noUselessTypeConstraint.md index c7b73e33017..3a9e76dfd3a 100644 --- a/website/src/pages/lint/rules/noUselessTypeConstraint.md +++ b/website/src/pages/lint/rules/noUselessTypeConstraint.md @@ -3,7 +3,7 @@ title: Lint Rule noUselessTypeConstraint parent: lint/rules/index --- -# noUselessTypeConstraint (since v13.0.0) +# noUselessTypeConstraint (since vnext) > This rule is recommended by Rome. diff --git a/website/src/pages/lint/rules/noVoid.md b/website/src/pages/lint/rules/noVoid.md index 0422ab55f36..dab3827466a 100644 --- a/website/src/pages/lint/rules/noVoid.md +++ b/website/src/pages/lint/rules/noVoid.md @@ -3,7 +3,7 @@ title: Lint Rule noVoid parent: lint/rules/index --- -# noVoid (since v13.0.0) +# noVoid (since vnext) Disallow the use of `void` operators, which is not a familiar operator. diff --git a/website/src/pages/lint/rules/useArrowFunction.md b/website/src/pages/lint/rules/useArrowFunction.md index c29b21c96b5..fb86ac0f077 100644 --- a/website/src/pages/lint/rules/useArrowFunction.md +++ b/website/src/pages/lint/rules/useArrowFunction.md @@ -3,7 +3,7 @@ title: Lint Rule useArrowFunction parent: lint/rules/index --- -# useArrowFunction (since v13.0.0) +# useArrowFunction (since vnext) Use arrow functions over function expressions. diff --git a/website/src/pages/lint/rules/useExhaustiveDependencies.md b/website/src/pages/lint/rules/useExhaustiveDependencies.md index 90cf79da2a1..323c8aa7f16 100644 --- a/website/src/pages/lint/rules/useExhaustiveDependencies.md +++ b/website/src/pages/lint/rules/useExhaustiveDependencies.md @@ -184,7 +184,7 @@ function component() { Allows to specify custom hooks - from libraries or internal projects - that can be considered stable. -```json +``` { "//": "...", "options": { diff --git a/website/src/pages/lint/rules/useHookAtTopLevel.md b/website/src/pages/lint/rules/useHookAtTopLevel.md index d02f8b456f8..018c3e3fd0b 100644 --- a/website/src/pages/lint/rules/useHookAtTopLevel.md +++ b/website/src/pages/lint/rules/useHookAtTopLevel.md @@ -51,7 +51,7 @@ function Component1() { Allows to specify custom hooks - from libraries or internal projects - that can be considered stable. -```json +``` { "//": "...", "options": { diff --git a/website/src/pages/lint/rules/useImportRestrictions.md b/website/src/pages/lint/rules/useImportRestrictions.md index d593e80852f..a07101c2cc7 100644 --- a/website/src/pages/lint/rules/useImportRestrictions.md +++ b/website/src/pages/lint/rules/useImportRestrictions.md @@ -3,7 +3,7 @@ title: Lint Rule useImportRestrictions parent: lint/rules/index --- -# useImportRestrictions (since v13.0.0) +# useImportRestrictions (since vnext) Disallows package private imports. diff --git a/website/src/pages/lint/rules/useIsArray.md b/website/src/pages/lint/rules/useIsArray.md index 7f3bd7c8848..6db0466eeeb 100644 --- a/website/src/pages/lint/rules/useIsArray.md +++ b/website/src/pages/lint/rules/useIsArray.md @@ -3,7 +3,7 @@ title: Lint Rule useIsArray parent: lint/rules/index --- -# useIsArray (since v13.0.0) +# useIsArray (since vnext) Use `Array.isArray()` instead of `instanceof Array`. diff --git a/website/src/pages/lint/rules/useNamingConvention.md b/website/src/pages/lint/rules/useNamingConvention.md index 1909a806e31..db3ee1d3249 100644 --- a/website/src/pages/lint/rules/useNamingConvention.md +++ b/website/src/pages/lint/rules/useNamingConvention.md @@ -3,7 +3,7 @@ title: Lint Rule useNamingConvention parent: lint/rules/index --- -# useNamingConvention (since v13.0.0) +# useNamingConvention (since vnext) Enforce naming conventions for everything across a codebase. @@ -299,7 +299,7 @@ namespace MathExtra { The rule provides two options that are detailed in the following subsections. -```json +``` { "//": "...", "options": { diff --git a/website/src/pages/schemas/13.0.0/schema.json.js b/website/src/pages/schemas/13.0.0/schema.json.js deleted file mode 100644 index 31e031143ab..00000000000 --- a/website/src/pages/schemas/13.0.0/schema.json.js +++ /dev/null @@ -1,18 +0,0 @@ -// Run `ROME_VERSION= cargo codegen-website -// to generate a new schema -import { readFileSync } from "fs"; -import { join, resolve } from "path"; - -export function get() { - const schemaPath = resolve( - join("..", "npm", "rome", "configuration_schema.json"), - ); - const schema = readFileSync(schemaPath, "utf8"); - - return new Response(schema, { - status: 200, - headers: { - "content-type": "application/json", - }, - }); -} diff --git a/xtask/codegen/Cargo.toml b/xtask/codegen/Cargo.toml index 98acbd02d16..25239599222 100644 --- a/xtask/codegen/Cargo.toml +++ b/xtask/codegen/Cargo.toml @@ -19,7 +19,6 @@ case = "1.0.0" pulldown-cmark = { version = "0.9", default-features = false, optional = true } fs_extra = "1.3.0" -rome_js_parser = { workspace = true, optional = true } rome_rowan = { path = "../../crates/rome_rowan", optional = true } rome_cli = { workspace = true, optional = true } rome_analyze = { path = "../../crates/rome_analyze", optional = true } @@ -48,7 +47,7 @@ configuration = [ "rome_json_syntax", "pulldown-cmark", ] -website = ["rome_service", "rome_cli/docgen", "rome_js_parser", "rome_js_formatter", "rome_js_syntax"] +website = ["rome_service", "rome_cli/docgen"] schema = [ "schemars", "serde_json", diff --git a/xtask/codegen/src/generate_website.rs b/xtask/codegen/src/generate_website.rs index dd42b9eaf38..80fb7f1a1b4 100644 --- a/xtask/codegen/src/generate_website.rs +++ b/xtask/codegen/src/generate_website.rs @@ -1,8 +1,4 @@ use rome_cli::rome_command; -use rome_js_formatter::context::JsFormatOptions; -use rome_js_formatter::format_node; -use rome_js_parser::{parse_module, JsParserOptions}; -use rome_js_syntax::JsFileSource; use rome_service::VERSION; use std::fs; use xtask::{project_root, Result}; @@ -15,6 +11,14 @@ description: Notes about the Rome's VSCode extension --- "#; +const CLI_FRONTMATTER: &str = r#"--- +title: CLI +emoji: ⌨️ +category: reference +description: Available commands and arguments in the Rome CLI. +--- +"#; + const SCHEMA_TEMPLATE: &str = r#"// Run `ROME_VERSION= cargo codegen-website // to generate a new schema import {readFileSync} from "fs"; @@ -42,25 +46,9 @@ pub(crate) fn generate_files() -> Result<()> { if VERSION != "0.0.0" { let parser = rome_command(); let markdown = parser.render_markdown("rome"); - let mut cli_content = fs::read_to_string(project_root().join("website/src/pages/cli.mdx"))?; - - let start = "\n[//]: # (Start-codegen)\n"; - let end = "\n[//]: # (End-codegen)"; - - debug_assert!(cli_content.contains(start)); - debug_assert!(cli_content.contains(end)); - - let start_index = cli_content - .find(start) - .expect("To contain start placeholder") - + start.len(); - let end_index = cli_content.find(end).expect("To contain end placeholder"); - - cli_content.replace_range(start_index..end_index, &markdown); - fs::write( project_root().join("website/src/pages/cli.mdx"), - format!("{cli_content}"), + format!("{CLI_FRONTMATTER}{markdown}"), )?; let schema_root_folder = project_root().join("website/src/pages/schemas"); let schema_version_folder = schema_root_folder.join(VERSION); @@ -70,13 +58,7 @@ pub(crate) fn generate_files() -> Result<()> { fs::remove_dir(schema_version_folder.clone())?; } fs::create_dir(schema_version_folder.clone())?; - let node = parse_module(&SCHEMA_TEMPLATE, JsParserOptions::default()); - let result = format_node( - JsFormatOptions::new(JsFileSource::js_module()), - &node.syntax(), - ) - .unwrap(); - fs::write(schema_js_file.clone(), result.print().unwrap().as_code())?; + fs::write(schema_js_file.clone(), SCHEMA_TEMPLATE)?; } Ok(()) diff --git a/xtask/lintdoc/src/main.rs b/xtask/lintdoc/src/main.rs index aa0397e8b93..39f9587d998 100644 --- a/xtask/lintdoc/src/main.rs +++ b/xtask/lintdoc/src/main.rs @@ -279,18 +279,15 @@ fn parse_documentation( // re-generating the language ID from the source type write!(content, "```")?; if !meta.is_empty() { - match test.block_type { - BlockType::Js(source_type) => { - match source_type.language() { - Language::JavaScript => write!(content, "js")?, - Language::TypeScript { .. } => write!(content, "ts")?, - } - match source_type.variant() { - LanguageVariant::Standard => {} - LanguageVariant::Jsx => write!(content, "x")?, - } + if let BlockType::Js(source_type) = test.block_type { + match source_type.language() { + Language::JavaScript => write!(content, "js")?, + Language::TypeScript { .. } => write!(content, "ts")?, + } + match source_type.variant() { + LanguageVariant::Standard => {} + LanguageVariant::Jsx => write!(content, "x")?, } - BlockType::Json => write!(content, "json")?, } } writeln!(content)?;