tools
tools copied to clipboard
π LSP ignores `ignore`s
Environment information
CLI:
Version: 10.0.1
Color support: true
Platform:
CPU Architecture: x86_64
OS: windows
Environment:
ROME_LOG_DIR: unset
NO_COLOR: unset
TERM: unset
Rome Configuration:
Status: loaded
Formatter disabled: true
Linter disabled: false
Workspace:
Open Documents: 0
Discovering running Rome servers...
Running Rome Server: ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
i The client isn't connected to any server but rage discovered this running Rome server.
Server:
Version: 10.0.1
Name: rome_lsp
CPU Architecture: x86_64
OS: windows
Workspace:
Open Documents: 0
Other Active Server Workspaces:
Workspace:
Open Documents: 5
Client Name: Visual Studio Code
Client Version: 1.73.1
Rome Server Log:
! Please review the content of the log file before sharing it publicly as it may contain sensitive information:
* Path names that may reveal your name, a project name, or the name of your employer.
* Source code
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
ββ141334249ms WARN tower_lsp Got a textDocument/didSave notification, but it is not implemented
ββ141346149ms INFO rome_service::configuration Attempting to load the configuration file at path "d:\\repo\\rome.json"
βββrome_fs::fs::os::OsFile::read_to_string{}
βββ
ββ141346149ms INFO rome_lsp::session Configuration found, and it is valid!
βββrome_lsp::session::update_workspace_settings{}
β βββrome_service::workspace::server::update_settings{params=UpdateSettingsParams { configuration: Configuration { files: None, formatter: Some(FormatterConfiguration { enabled: false, format_with_errors: false, indent_style: Space, indent_size: 2, line_width: LineWidth(80), ignore: Some({"./coverage/**/*"}) }), linter: Some(LinterConfiguration { enabled: true, rules: Some(Rules { recommended: Some(false), a11y: Some(A11y { recommended: None, rules: {"noAutofocus": Plain(Off), "noPositiveTabindex": Plain(Warn), "useAltText": Plain(Warn), "useAnchorContent": Plain(Warn), "useBlankTarget": Plain(Warn), "useButtonType": Plain(Warn), "useKeyWithClickEvents": Plain(Off), "useKeyWithMouseEvents": Plain(Off), "useValidAnchor": Plain(Off)} }), complexity: Some(Complexity { recommended: None, rules: {"noExtraBooleanCast": Plain(Warn), "useSimplifiedLogicExpression": Plain(Off)} }), correctness: Some(Correctness { recommended: None, rules: {"noArguments": Plain(Warn), "noArrayIndexKey": Plain(Off), "noAsyncPromiseExecutor": Plain(Warn), "noCatchAssign": Plain(Warn), "noChildrenProp": Plain(Off), "noCommentText": Plain(Warn), "noCompareNegZero": Plain(Warn), "noDebugger": Plain(Warn), "noDelete": Plain(Warn), "noDoubleEquals": Plain(Warn), "noDupeArgs": Plain(Warn), "noEmptyPattern": Plain(Warn), "noFunctionAssign": Plain(Warn), "noImportAssign": Plain(Warn), "noLabelVar": Plain(Warn), "noMultipleSpacesInRegularExpressionLiterals": Plain(Warn), "noNewSymbol": Plain(Off), "noRenderReturnValue": Plain(Warn), "noRestrictedGlobals": Plain(Off), "noShadowRestrictedNames": Plain(Warn), "noSparseArray": Plain(Warn), "noUndeclaredVariables": Plain(Off), "noUnnecessaryContinue": Plain(Warn), "noUnreachable": Plain(Off), "noUnsafeNegation": Plain(Warn), "noUnusedVariables": Plain(Off), "noUselessFragments": Plain(Off), "noVoidElementsWithChildren": Plain(Warn), "useSingleCaseStatement": Plain(Off), "useValidTypeof": Plain(Warn), "useWhile": Plain(Warn)} }), nursery: None, security: Some(Security { recommended: None, rules: {"noDangerouslySetInnerHtml": Plain(Warn), "noDangerouslySetInnerHtmlWithChildren": Plain(Warn)} }), style: Some(Style { recommended: None, rules: {"noImplicitBoolean": Plain(Off), "noNegationElse": Plain(Off), "noShoutyConstants": Plain(Warn), "noUnusedTemplateLiteral": Plain(Warn), "useBlockStatements": Plain(Off), "useFragmentSyntax": Plain(Warn), "useOptionalChain": Plain(Warn), "useSelfClosingElements": Plain(Warn), "useShorthandArrayType": Plain(Warn), "useSingleVarDeclarator": Plain(Warn), "useTemplate": Plain(Warn)} }) }), ignore: Some({"./coverage/**/*", "./node_modules/**/*"}) }), javascript: Some(JavascriptConfiguration { formatter: Some(JavascriptFormatter { quote_style: Single, quote_properties: AsNeeded, trailing_comma: None }), globals: None }) } }}
β β βββrome_service::settings::merge_with_configuration{configuration=Configuration { files: None, formatter: Some(FormatterConfiguration { enabled: false, format_with_errors: false, indent_style: Space, indent_size: 2, line_width: LineWidth(80), ignore: Some({"./coverage/**/*"}) }), linter: Some(LinterConfiguration { enabled: true, rules: Some(Rules { recommended: Some(false), a11y: Some(A11y { recommended: None, rules: {"noAutofocus": Plain(Off), "noPositiveTabindex": Plain(Warn), "useAltText": Plain(Warn), "useAnchorContent": Plain(Warn), "useBlankTarget": Plain(Warn), "useButtonType": Plain(Warn), "useKeyWithClickEvents": Plain(Off), "useKeyWithMouseEvents": Plain(Off), "useValidAnchor": Plain(Off)} }), complexity: Some(Complexity { recommended: None, rules: {"noExtraBooleanCast": Plain(Warn), "useSimplifiedLogicExpression": Plain(Off)} }), correctness: Some(Correctness { recommended: None, rules: {"noArguments": Plain(Warn), "noArrayIndexKey": Plain(Off), "noAsyncPromiseExecutor": Plain(Warn), "noCatchAssign": Plain(Warn), "noChildrenProp": Plain(Off), "noCommentText": Plain(Warn), "noCompareNegZero": Plain(Warn), "noDebugger": Plain(Warn), "noDelete": Plain(Warn), "noDoubleEquals": Plain(Warn), "noDupeArgs": Plain(Warn), "noEmptyPattern": Plain(Warn), "noFunctionAssign": Plain(Warn), "noImportAssign": Plain(Warn), "noLabelVar": Plain(Warn), "noMultipleSpacesInRegularExpressionLiterals": Plain(Warn), "noNewSymbol": Plain(Off), "noRenderReturnValue": Plain(Warn), "noRestrictedGlobals": Plain(Off), "noShadowRestrictedNames": Plain(Warn), "noSparseArray": Plain(Warn), "noUndeclaredVariables": Plain(Off), "noUnnecessaryContinue": Plain(Warn), "noUnreachable": Plain(Off), "noUnsafeNegation": Plain(Warn), "noUnusedVariables": Plain(Off), "noUselessFragments": Plain(Off), "noVoidElementsWithChildren": Plain(Warn), "useSingleCaseStatement": Plain(Off), "useValidTypeof": Plain(Warn), "useWhile": Plain(Warn)} }), nursery: None, security: Some(Security { recommended: None, rules: {"noDangerouslySetInnerHtml": Plain(Warn), "noDangerouslySetInnerHtmlWithChildren": Plain(Warn)} }), style: Some(Style { recommended: None, rules: {"noImplicitBoolean": Plain(Off), "noNegationElse": Plain(Off), "noShoutyConstants": Plain(Warn), "noUnusedTemplateLiteral": Plain(Warn), "useBlockStatements": Plain(Off), "useFragmentSyntax": Plain(Warn), "useOptionalChain": Plain(Warn), "useSelfClosingElements": Plain(Warn), "useShorthandArrayType": Plain(Warn), "useSingleVarDeclarator": Plain(Warn), "useTemplate": Plain(Warn)} }) }), ignore: Some({"./coverage/**/*", "./node_modules/**/*"}) }), javascript: Some(JavascriptConfiguration { formatter: Some(JavascriptFormatter { quote_style: Single, quote_properties: AsNeeded, trailing_comma: None }), globals: None }) }}
β β βββ
β βββ
βββ
ββ141346568ms WARN tower_lsp Got a textDocument/didSave notification, but it is not implemented
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(8)}
βββ
ββ141347250ms WARN tower_lsp Got a textDocument/didSave notification, but it is not implemented
ββ141350661ms INFO tower_lsp::service::layers shutdown request received, shutting down
ββ141350661ms INFO tower_lsp::service::layers exit notification received, stopping
ββ141350694ms INFO rome_lsp::server Starting Rome Language Server...
ββ141350694ms INFO rome_lsp::server Attempting to load the configuration from 'rome.json' file
ββ141350694ms INFO rome_service::configuration Attempting to load the configuration file at path "d:\\repo\\rome.json"
βββrome_fs::fs::os::OsFile::read_to_string{}
βββ
ββ141350694ms INFO rome_lsp::session Configuration found, and it is valid!
βββrome_js_parser::parse::parse{file_id=FileId(0)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(1)}
βββ
βββrome_lsp::session::update_workspace_settings{}
β βββrome_service::workspace::server::update_settings{params=UpdateSettingsParams { configuration: Configuration { files: None, formatter: Some(FormatterConfiguration { enabled: false, format_with_errors: false, indent_style: Space, indent_size: 2, line_width: LineWidth(80), ignore: Some({"./coverage/**/*"}) }), linter: Some(LinterConfiguration { enabled: true, rules: Some(Rules { recommended: Some(false), a11y: Some(A11y { recommended: None, rules: {"noAutofocus": Plain(Off), "noPositiveTabindex": Plain(Warn), "useAltText": Plain(Warn), "useAnchorContent": Plain(Warn), "useBlankTarget": Plain(Warn), "useButtonType": Plain(Warn), "useKeyWithClickEvents": Plain(Off), "useKeyWithMouseEvents": Plain(Off), "useValidAnchor": Plain(Off)} }), complexity: Some(Complexity { recommended: None, rules: {"noExtraBooleanCast": Plain(Warn), "useSimplifiedLogicExpression": Plain(Off)} }), correctness: Some(Correctness { recommended: None, rules: {"noArguments": Plain(Warn), "noArrayIndexKey": Plain(Off), "noAsyncPromiseExecutor": Plain(Warn), "noCatchAssign": Plain(Warn), "noChildrenProp": Plain(Off), "noCommentText": Plain(Warn), "noCompareNegZero": Plain(Warn), "noDebugger": Plain(Warn), "noDelete": Plain(Warn), "noDoubleEquals": Plain(Warn), "noDupeArgs": Plain(Warn), "noEmptyPattern": Plain(Warn), "noFunctionAssign": Plain(Warn), "noImportAssign": Plain(Warn), "noLabelVar": Plain(Warn), "noMultipleSpacesInRegularExpressionLiterals": Plain(Warn), "noNewSymbol": Plain(Off), "noRenderReturnValue": Plain(Warn), "noRestrictedGlobals": Plain(Off), "noShadowRestrictedNames": Plain(Warn), "noSparseArray": Plain(Warn), "noUndeclaredVariables": Plain(Off), "noUnnecessaryContinue": Plain(Warn), "noUnreachable": Plain(Off), "noUnsafeNegation": Plain(Warn), "noUnusedVariables": Plain(Off), "noUselessFragments": Plain(Off), "noVoidElementsWithChildren": Plain(Warn), "useSingleCaseStatement": Plain(Off), "useValidTypeof": Plain(Warn), "useWhile": Plain(Warn)} }), nursery: None, security: Some(Security { recommended: None, rules: {"noDangerouslySetInnerHtml": Plain(Warn), "noDangerouslySetInnerHtmlWithChildren": Plain(Warn)} }), style: Some(Style { recommended: None, rules: {"noImplicitBoolean": Plain(Off), "noNegationElse": Plain(Off), "noShoutyConstants": Plain(Warn), "noUnusedTemplateLiteral": Plain(Warn), "useBlockStatements": Plain(Off), "useFragmentSyntax": Plain(Warn), "useOptionalChain": Plain(Warn), "useSelfClosingElements": Plain(Warn), "useShorthandArrayType": Plain(Warn), "useSingleVarDeclarator": Plain(Warn), "useTemplate": Plain(Warn)} }) }), ignore: Some({"./coverage/**/*", "./node_modules/**/*"}) }), javascript: Some(JavascriptConfiguration { formatter: Some(JavascriptFormatter { quote_style: Single, quote_properties: AsNeeded, trailing_comma: None }), globals: None }) } }}
β β βββrome_service::settings::merge_with_configuration{configuration=Configuration { files: None, formatter: Some(FormatterConfiguration { enabled: false, format_with_errors: false, indent_style: Space, indent_size: 2, line_width: LineWidth(80), ignore: Some({"./coverage/**/*"}) }), linter: Some(LinterConfiguration { enabled: true, rules: Some(Rules { recommended: Some(false), a11y: Some(A11y { recommended: None, rules: {"noAutofocus": Plain(Off), "noPositiveTabindex": Plain(Warn), "useAltText": Plain(Warn), "useAnchorContent": Plain(Warn), "useBlankTarget": Plain(Warn), "useButtonType": Plain(Warn), "useKeyWithClickEvents": Plain(Off), "useKeyWithMouseEvents": Plain(Off), "useValidAnchor": Plain(Off)} }), complexity: Some(Complexity { recommended: None, rules: {"noExtraBooleanCast": Plain(Warn), "useSimplifiedLogicExpression": Plain(Off)} }), correctness: Some(Correctness { recommended: None, rules: {"noArguments": Plain(Warn), "noArrayIndexKey": Plain(Off), "noAsyncPromiseExecutor": Plain(Warn), "noCatchAssign": Plain(Warn), "noChildrenProp": Plain(Off), "noCommentText": Plain(Warn), "noCompareNegZero": Plain(Warn), "noDebugger": Plain(Warn), "noDelete": Plain(Warn), "noDoubleEquals": Plain(Warn), "noDupeArgs": Plain(Warn), "noEmptyPattern": Plain(Warn), "noFunctionAssign": Plain(Warn), "noImportAssign": Plain(Warn), "noLabelVar": Plain(Warn), "noMultipleSpacesInRegularExpressionLiterals": Plain(Warn), "noNewSymbol": Plain(Off), "noRenderReturnValue": Plain(Warn), "noRestrictedGlobals": Plain(Off), "noShadowRestrictedNames": Plain(Warn), "noSparseArray": Plain(Warn), "noUndeclaredVariables": Plain(Off), "noUnnecessaryContinue": Plain(Warn), "noUnreachable": Plain(Off), "noUnsafeNegation": Plain(Warn), "noUnusedVariables": Plain(Off), "noUselessFragments": Plain(Off), "noVoidElementsWithChildren": Plain(Warn), "useSingleCaseStatement": Plain(Off), "useValidTypeof": Plain(Warn), "useWhile": Plain(Warn)} }), nursery: None, security: Some(Security { recommended: None, rules: {"noDangerouslySetInnerHtml": Plain(Warn), "noDangerouslySetInnerHtmlWithChildren": Plain(Warn)} }), style: Some(Style { recommended: None, rules: {"noImplicitBoolean": Plain(Off), "noNegationElse": Plain(Off), "noShoutyConstants": Plain(Warn), "noUnusedTemplateLiteral": Plain(Warn), "useBlockStatements": Plain(Off), "useFragmentSyntax": Plain(Warn), "useOptionalChain": Plain(Warn), "useSelfClosingElements": Plain(Warn), "useShorthandArrayType": Plain(Warn), "useSingleVarDeclarator": Plain(Warn), "useTemplate": Plain(Warn)} }) }), ignore: Some({"./coverage/**/*", "./node_modules/**/*"}) }), javascript: Some(JavascriptConfiguration { formatter: Some(JavascriptFormatter { quote_style: Single, quote_properties: AsNeeded, trailing_comma: None }), globals: None }) }}
β β βββ
β βββ
βββ
βββrome_js_parser::parse::parse{file_id=FileId(2)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(3)}
βββ
ββ141354385ms WARN tower_lsp Got a textDocument/didSave notification, but it is not implemented
βββrome_js_parser::parse::parse{file_id=FileId(3)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(3)}
βββ
ββ141355415ms WARN tower_lsp Got a textDocument/didSave notification, but it is not implemented
ββ141360965ms INFO rome_service::configuration Attempting to load the configuration file at path "d:\\repo\\rome.json"
βββrome_fs::fs::os::OsFile::read_to_string{}
βββ
ββ141360965ms INFO rome_lsp::session Configuration found, and it is valid!
βββrome_lsp::session::update_workspace_settings{}
β βββrome_service::workspace::server::update_settings{params=UpdateSettingsParams { configuration: Configuration { files: None, formatter: Some(FormatterConfiguration { enabled: false, format_with_errors: false, indent_style: Space, indent_size: 2, line_width: LineWidth(80), ignore: Some({"./coverage/**/*", "./node_modules/**/*"}) }), linter: Some(LinterConfiguration { enabled: true, rules: Some(Rules { recommended: Some(false), a11y: Some(A11y { recommended: None, rules: {"noAutofocus": Plain(Off), "noPositiveTabindex": Plain(Warn), "useAltText": Plain(Warn), "useAnchorContent": Plain(Warn), "useBlankTarget": Plain(Warn), "useButtonType": Plain(Warn), "useKeyWithClickEvents": Plain(Off), "useKeyWithMouseEvents": Plain(Off), "useValidAnchor": Plain(Off)} }), complexity: Some(Complexity { recommended: None, rules: {"noExtraBooleanCast": Plain(Warn), "useSimplifiedLogicExpression": Plain(Off)} }), correctness: Some(Correctness { recommended: None, rules: {"noArguments": Plain(Warn), "noArrayIndexKey": Plain(Off), "noAsyncPromiseExecutor": Plain(Warn), "noCatchAssign": Plain(Warn), "noChildrenProp": Plain(Off), "noCommentText": Plain(Warn), "noCompareNegZero": Plain(Warn), "noDebugger": Plain(Warn), "noDelete": Plain(Warn), "noDoubleEquals": Plain(Warn), "noDupeArgs": Plain(Warn), "noEmptyPattern": Plain(Warn), "noFunctionAssign": Plain(Warn), "noImportAssign": Plain(Warn), "noLabelVar": Plain(Warn), "noMultipleSpacesInRegularExpressionLiterals": Plain(Warn), "noNewSymbol": Plain(Off), "noRenderReturnValue": Plain(Warn), "noRestrictedGlobals": Plain(Off), "noShadowRestrictedNames": Plain(Warn), "noSparseArray": Plain(Warn), "noUndeclaredVariables": Plain(Off), "noUnnecessaryContinue": Plain(Warn), "noUnreachable": Plain(Off), "noUnsafeNegation": Plain(Warn), "noUnusedVariables": Plain(Off), "noUselessFragments": Plain(Off), "noVoidElementsWithChildren": Plain(Warn), "useSingleCaseStatement": Plain(Off), "useValidTypeof": Plain(Warn), "useWhile": Plain(Warn)} }), nursery: None, security: Some(Security { recommended: None, rules: {"noDangerouslySetInnerHtml": Plain(Warn), "noDangerouslySetInnerHtmlWithChildren": Plain(Warn)} }), style: Some(Style { recommended: None, rules: {"noImplicitBoolean": Plain(Off), "noNegationElse": Plain(Off), "noShoutyConstants": Plain(Warn), "noUnusedTemplateLiteral": Plain(Warn), "useBlockStatements": Plain(Off), "useFragmentSyntax": Plain(Warn), "useOptionalChain": Plain(Warn), "useSelfClosingElements": Plain(Warn), "useShorthandArrayType": Plain(Warn), "useSingleVarDeclarator": Plain(Warn), "useTemplate": Plain(Warn)} }) }), ignore: Some({"./coverage/**/*", "./node_modules/**/*"}) }), javascript: Some(JavascriptConfiguration { formatter: Some(JavascriptFormatter { quote_style: Single, quote_properties: AsNeeded, trailing_comma: None }), globals: None }) } }}
β β βββrome_service::settings::merge_with_configuration{configuration=Configuration { files: None, formatter: Some(FormatterConfiguration { enabled: false, format_with_errors: false, indent_style: Space, indent_size: 2, line_width: LineWidth(80), ignore: Some({"./coverage/**/*", "./node_modules/**/*"}) }), linter: Some(LinterConfiguration { enabled: true, rules: Some(Rules { recommended: Some(false), a11y: Some(A11y { recommended: None, rules: {"noAutofocus": Plain(Off), "noPositiveTabindex": Plain(Warn), "useAltText": Plain(Warn), "useAnchorContent": Plain(Warn), "useBlankTarget": Plain(Warn), "useButtonType": Plain(Warn), "useKeyWithClickEvents": Plain(Off), "useKeyWithMouseEvents": Plain(Off), "useValidAnchor": Plain(Off)} }), complexity: Some(Complexity { recommended: None, rules: {"noExtraBooleanCast": Plain(Warn), "useSimplifiedLogicExpression": Plain(Off)} }), correctness: Some(Correctness { recommended: None, rules: {"noArguments": Plain(Warn), "noArrayIndexKey": Plain(Off), "noAsyncPromiseExecutor": Plain(Warn), "noCatchAssign": Plain(Warn), "noChildrenProp": Plain(Off), "noCommentText": Plain(Warn), "noCompareNegZero": Plain(Warn), "noDebugger": Plain(Warn), "noDelete": Plain(Warn), "noDoubleEquals": Plain(Warn), "noDupeArgs": Plain(Warn), "noEmptyPattern": Plain(Warn), "noFunctionAssign": Plain(Warn), "noImportAssign": Plain(Warn), "noLabelVar": Plain(Warn), "noMultipleSpacesInRegularExpressionLiterals": Plain(Warn), "noNewSymbol": Plain(Off), "noRenderReturnValue": Plain(Warn), "noRestrictedGlobals": Plain(Off), "noShadowRestrictedNames": Plain(Warn), "noSparseArray": Plain(Warn), "noUndeclaredVariables": Plain(Off), "noUnnecessaryContinue": Plain(Warn), "noUnreachable": Plain(Off), "noUnsafeNegation": Plain(Warn), "noUnusedVariables": Plain(Off), "noUselessFragments": Plain(Off), "noVoidElementsWithChildren": Plain(Warn), "useSingleCaseStatement": Plain(Off), "useValidTypeof": Plain(Warn), "useWhile": Plain(Warn)} }), nursery: None, security: Some(Security { recommended: None, rules: {"noDangerouslySetInnerHtml": Plain(Warn), "noDangerouslySetInnerHtmlWithChildren": Plain(Warn)} }), style: Some(Style { recommended: None, rules: {"noImplicitBoolean": Plain(Off), "noNegationElse": Plain(Off), "noShoutyConstants": Plain(Warn), "noUnusedTemplateLiteral": Plain(Warn), "useBlockStatements": Plain(Off), "useFragmentSyntax": Plain(Warn), "useOptionalChain": Plain(Warn), "useSelfClosingElements": Plain(Warn), "useShorthandArrayType": Plain(Warn), "useSingleVarDeclarator": Plain(Warn), "useTemplate": Plain(Warn)} }) }), ignore: Some({"./coverage/**/*", "./node_modules/**/*"}) }), javascript: Some(JavascriptConfiguration { formatter: Some(JavascriptFormatter { quote_style: Single, quote_properties: AsNeeded, trailing_comma: None }), globals: None }) }}
β β βββ
β βββ
βββ
ββ141362667ms INFO tower_lsp::service::layers shutdown request received, shutting down
ββ141362668ms INFO tower_lsp::service::layers exit notification received, stopping
ββ141362696ms INFO rome_lsp::server Starting Rome Language Server...
ββ141362697ms INFO rome_lsp::server Attempting to load the configuration from 'rome.json' file
ββ141362697ms INFO rome_service::configuration Attempting to load the configuration file at path "d:\\repo\\rome.json"
βββrome_fs::fs::os::OsFile::read_to_string{}
βββ
ββ141362697ms INFO rome_lsp::session Configuration found, and it is valid!
βββrome_js_parser::parse::parse{file_id=FileId(0)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(1)}
βββ
βββrome_lsp::session::update_workspace_settings{}
β βββrome_service::workspace::server::update_settings{params=UpdateSettingsParams { configuration: Configuration { files: None, formatter: Some(FormatterConfiguration { enabled: false, format_with_errors: false, indent_style: Space, indent_size: 2, line_width: LineWidth(80), ignore: Some({"./coverage/**/*", "./node_modules/**/*"}) }), linter: Some(LinterConfiguration { enabled: true, rules: Some(Rules { recommended: Some(false), a11y: Some(A11y { recommended: None, rules: {"noAutofocus": Plain(Off), "noPositiveTabindex": Plain(Warn), "useAltText": Plain(Warn), "useAnchorContent": Plain(Warn), "useBlankTarget": Plain(Warn), "useButtonType": Plain(Warn), "useKeyWithClickEvents": Plain(Off), "useKeyWithMouseEvents": Plain(Off), "useValidAnchor": Plain(Off)} }), complexity: Some(Complexity { recommended: None, rules: {"noExtraBooleanCast": Plain(Warn), "useSimplifiedLogicExpression": Plain(Off)} }), correctness: Some(Correctness { recommended: None, rules: {"noArguments": Plain(Warn), "noArrayIndexKey": Plain(Off), "noAsyncPromiseExecutor": Plain(Warn), "noCatchAssign": Plain(Warn), "noChildrenProp": Plain(Off), "noCommentText": Plain(Warn), "noCompareNegZero": Plain(Warn), "noDebugger": Plain(Warn), "noDelete": Plain(Warn), "noDoubleEquals": Plain(Warn), "noDupeArgs": Plain(Warn), "noEmptyPattern": Plain(Warn), "noFunctionAssign": Plain(Warn), "noImportAssign": Plain(Warn), "noLabelVar": Plain(Warn), "noMultipleSpacesInRegularExpressionLiterals": Plain(Warn), "noNewSymbol": Plain(Off), "noRenderReturnValue": Plain(Warn), "noRestrictedGlobals": Plain(Off), "noShadowRestrictedNames": Plain(Warn), "noSparseArray": Plain(Warn), "noUndeclaredVariables": Plain(Off), "noUnnecessaryContinue": Plain(Warn), "noUnreachable": Plain(Off), "noUnsafeNegation": Plain(Warn), "noUnusedVariables": Plain(Off), "noUselessFragments": Plain(Off), "noVoidElementsWithChildren": Plain(Warn), "useSingleCaseStatement": Plain(Off), "useValidTypeof": Plain(Warn), "useWhile": Plain(Warn)} }), nursery: None, security: Some(Security { recommended: None, rules: {"noDangerouslySetInnerHtml": Plain(Warn), "noDangerouslySetInnerHtmlWithChildren": Plain(Warn)} }), style: Some(Style { recommended: None, rules: {"noImplicitBoolean": Plain(Off), "noNegationElse": Plain(Off), "noShoutyConstants": Plain(Warn), "noUnusedTemplateLiteral": Plain(Warn), "useBlockStatements": Plain(Off), "useFragmentSyntax": Plain(Warn), "useOptionalChain": Plain(Warn), "useSelfClosingElements": Plain(Warn), "useShorthandArrayType": Plain(Warn), "useSingleVarDeclarator": Plain(Warn), "useTemplate": Plain(Warn)} }) }), ignore: Some({"./coverage/**/*", "./node_modules/**/*"}) }), javascript: Some(JavascriptConfiguration { formatter: Some(JavascriptFormatter { quote_style: Single, quote_properties: AsNeeded, trailing_comma: None }), globals: None }) } }}
β β βββrome_service::settings::merge_with_configuration{configuration=Configuration { files: None, formatter: Some(FormatterConfiguration { enabled: false, format_with_errors: false, indent_style: Space, indent_size: 2, line_width: LineWidth(80), ignore: Some({"./coverage/**/*", "./node_modules/**/*"}) }), linter: Some(LinterConfiguration { enabled: true, rules: Some(Rules { recommended: Some(false), a11y: Some(A11y { recommended: None, rules: {"noAutofocus": Plain(Off), "noPositiveTabindex": Plain(Warn), "useAltText": Plain(Warn), "useAnchorContent": Plain(Warn), "useBlankTarget": Plain(Warn), "useButtonType": Plain(Warn), "useKeyWithClickEvents": Plain(Off), "useKeyWithMouseEvents": Plain(Off), "useValidAnchor": Plain(Off)} }), complexity: Some(Complexity { recommended: None, rules: {"noExtraBooleanCast": Plain(Warn), "useSimplifiedLogicExpression": Plain(Off)} }), correctness: Some(Correctness { recommended: None, rules: {"noArguments": Plain(Warn), "noArrayIndexKey": Plain(Off), "noAsyncPromiseExecutor": Plain(Warn), "noCatchAssign": Plain(Warn), "noChildrenProp": Plain(Off), "noCommentText": Plain(Warn), "noCompareNegZero": Plain(Warn), "noDebugger": Plain(Warn), "noDelete": Plain(Warn), "noDoubleEquals": Plain(Warn), "noDupeArgs": Plain(Warn), "noEmptyPattern": Plain(Warn), "noFunctionAssign": Plain(Warn), "noImportAssign": Plain(Warn), "noLabelVar": Plain(Warn), "noMultipleSpacesInRegularExpressionLiterals": Plain(Warn), "noNewSymbol": Plain(Off), "noRenderReturnValue": Plain(Warn), "noRestrictedGlobals": Plain(Off), "noShadowRestrictedNames": Plain(Warn), "noSparseArray": Plain(Warn), "noUndeclaredVariables": Plain(Off), "noUnnecessaryContinue": Plain(Warn), "noUnreachable": Plain(Off), "noUnsafeNegation": Plain(Warn), "noUnusedVariables": Plain(Off), "noUselessFragments": Plain(Off), "noVoidElementsWithChildren": Plain(Warn), "useSingleCaseStatement": Plain(Off), "useValidTypeof": Plain(Warn), "useWhile": Plain(Warn)} }), nursery: None, security: Some(Security { recommended: None, rules: {"noDangerouslySetInnerHtml": Plain(Warn), "noDangerouslySetInnerHtmlWithChildren": Plain(Warn)} }), style: Some(Style { recommended: None, rules: {"noImplicitBoolean": Plain(Off), "noNegationElse": Plain(Off), "noShoutyConstants": Plain(Warn), "noUnusedTemplateLiteral": Plain(Warn), "useBlockStatements": Plain(Off), "useFragmentSyntax": Plain(Warn), "useOptionalChain": Plain(Warn), "useSelfClosingElements": Plain(Warn), "useShorthandArrayType": Plain(Warn), "useSingleVarDeclarator": Plain(Warn), "useTemplate": Plain(Warn)} }) }), ignore: Some({"./coverage/**/*", "./node_modules/**/*"}) }), javascript: Some(JavascriptConfiguration { formatter: Some(JavascriptFormatter { quote_style: Single, quote_properties: AsNeeded, trailing_comma: None }), globals: None }) }}
β β βββ
β βββ
βββ
βββrome_js_parser::parse::parse{file_id=FileId(2)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(3)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(3)}
βββ
βββrome_js_parser::parse::parse{file_id=FileId(3)}
βββ
ββ141363573ms WARN tower_lsp Got a textDocument/didSave notification, but it is not implemented
ββ141384096ms INFO rome_service::configuration Attempting to load the configuration file at path "d:\\repo\\rome.json"
βββrome_fs::fs::os::OsFile::read_to_string{}
βββ
ββ141384097ms INFO rome_lsp::session Configuration found, and it is valid!
βββrome_lsp::session::update_workspace_settings{}
β βββrome_service::workspace::server::update_settings{params=UpdateSettingsParams { configuration: Configuration { files: None, formatter: Some(FormatterConfiguration { enabled: false, format_with_errors: false, indent_style: Space, indent_size: 2, line_width: LineWidth(80), ignore: Some({"./coverage/**/*", "./node_modules/**/*"}) }), linter: Some(LinterConfiguration { enabled: true, rules: Some(Rules { recommended: Some(false), a11y: Some(A11y { recommended: None, rules: {"noAutofocus": Plain(Off), "noPositiveTabindex": Plain(Warn), "useAltText": Plain(Warn), "useAnchorContent": Plain(Warn), "useBlankTarget": Plain(Warn), "useButtonType": Plain(Warn), "useKeyWithClickEvents": Plain(Off), "useKeyWithMouseEvents": Plain(Off), "useValidAnchor": Plain(Off)} }), complexity: Some(Complexity { recommended: None, rules: {"noExtraBooleanCast": Plain(Warn), "useSimplifiedLogicExpression": Plain(Off)} }), correctness: Some(Correctness { recommended: None, rules: {"noArguments": Plain(Warn), "noArrayIndexKey": Plain(Off), "noAsyncPromiseExecutor": Plain(Warn), "noCatchAssign": Plain(Warn), "noChildrenProp": Plain(Off), "noCommentText": Plain(Warn), "noCompareNegZero": Plain(Warn), "noDebugger": Plain(Warn), "noDelete": Plain(Warn), "noDoubleEquals": Plain(Warn), "noDupeArgs": Plain(Warn), "noEmptyPattern": Plain(Warn), "noFunctionAssign": Plain(Warn), "noImportAssign": Plain(Warn), "noLabelVar": Plain(Warn), "noMultipleSpacesInRegularExpressionLiterals": Plain(Warn), "noNewSymbol": Plain(Off), "noRenderReturnValue": Plain(Warn), "noRestrictedGlobals": Plain(Off), "noShadowRestrictedNames": Plain(Warn), "noSparseArray": Plain(Warn), "noUndeclaredVariables": Plain(Off), "noUnnecessaryContinue": Plain(Warn), "noUnreachable": Plain(Off), "noUnsafeNegation": Plain(Warn), "noUnusedVariables": Plain(Off), "noUselessFragments": Plain(Off), "noVoidElementsWithChildren": Plain(Warn), "useSingleCaseStatement": Plain(Off), "useValidTypeof": Plain(Warn), "useWhile": Plain(Warn)} }), nursery: None, security: Some(Security { recommended: None, rules: {"noDangerouslySetInnerHtml": Plain(Warn), "noDangerouslySetInnerHtmlWithChildren": Plain(Warn)} }), style: Some(Style { recommended: None, rules: {"noImplicitBoolean": Plain(Off), "noNegationElse": Plain(Off), "noShoutyConstants": Plain(Warn), "noUnusedTemplateLiteral": Plain(Off), "useBlockStatements": Plain(Off), "useFragmentSyntax": Plain(Warn), "useOptionalChain": Plain(Warn), "useSelfClosingElements": Plain(Warn), "useShorthandArrayType": Plain(Warn), "useSingleVarDeclarator": Plain(Warn), "useTemplate": Plain(Warn)} }) }), ignore: Some({"./coverage/**/*", "./node_modules/**/*"}) }), javascript: Some(JavascriptConfiguration { formatter: Some(JavascriptFormatter { quote_style: Single, quote_properties: AsNeeded, trailing_comma: None }), globals: None }) } }}
β β βββrome_service::settings::merge_with_configuration{configuration=Configuration { files: None, formatter: Some(FormatterConfiguration { enabled: false, format_with_errors: false, indent_style: Space, indent_size: 2, line_width: LineWidth(80), ignore: Some({"./coverage/**/*", "./node_modules/**/*"}) }), linter: Some(LinterConfiguration { enabled: true, rules: Some(Rules { recommended: Some(false), a11y: Some(A11y { recommended: None, rules: {"noAutofocus": Plain(Off), "noPositiveTabindex": Plain(Warn), "useAltText": Plain(Warn), "useAnchorContent": Plain(Warn), "useBlankTarget": Plain(Warn), "useButtonType": Plain(Warn), "useKeyWithClickEvents": Plain(Off), "useKeyWithMouseEvents": Plain(Off), "useValidAnchor": Plain(Off)} }), complexity: Some(Complexity { recommended: None, rules: {"noExtraBooleanCast": Plain(Warn), "useSimplifiedLogicExpression": Plain(Off)} }), correctness: Some(Correctness { recommended: None, rules: {"noArguments": Plain(Warn), "noArrayIndexKey": Plain(Off), "noAsyncPromiseExecutor": Plain(Warn), "noCatchAssign": Plain(Warn), "noChildrenProp": Plain(Off), "noCommentText": Plain(Warn), "noCompareNegZero": Plain(Warn), "noDebugger": Plain(Warn), "noDelete": Plain(Warn), "noDoubleEquals": Plain(Warn), "noDupeArgs": Plain(Warn), "noEmptyPattern": Plain(Warn), "noFunctionAssign": Plain(Warn), "noImportAssign": Plain(Warn), "noLabelVar": Plain(Warn), "noMultipleSpacesInRegularExpressionLiterals": Plain(Warn), "noNewSymbol": Plain(Off), "noRenderReturnValue": Plain(Warn), "noRestrictedGlobals": Plain(Off), "noShadowRestrictedNames": Plain(Warn), "noSparseArray": Plain(Warn), "noUndeclaredVariables": Plain(Off), "noUnnecessaryContinue": Plain(Warn), "noUnreachable": Plain(Off), "noUnsafeNegation": Plain(Warn), "noUnusedVariables": Plain(Off), "noUselessFragments": Plain(Off), "noVoidElementsWithChildren": Plain(Warn), "useSingleCaseStatement": Plain(Off), "useValidTypeof": Plain(Warn), "useWhile": Plain(Warn)} }), nursery: None, security: Some(Security { recommended: None, rules: {"noDangerouslySetInnerHtml": Plain(Warn), "noDangerouslySetInnerHtmlWithChildren": Plain(Warn)} }), style: Some(Style { recommended: None, rules: {"noImplicitBoolean": Plain(Off), "noNegationElse": Plain(Off), "noShoutyConstants": Plain(Warn), "noUnusedTemplateLiteral": Plain(Off), "useBlockStatements": Plain(Off), "useFragmentSyntax": Plain(Warn), "useOptionalChain": Plain(Warn), "useSelfClosingElements": Plain(Warn), "useShorthandArrayType": Plain(Warn), "useSingleVarDeclarator": Plain(Warn), "useTemplate": Plain(Warn)} }) }), ignore: Some({"./coverage/**/*", "./node_modules/**/*"}) }), javascript: Some(JavascriptConfiguration { formatter: Some(JavascriptFormatter { quote_style: Single, quote_properties: AsNeeded, trailing_comma: None }), globals: None }) }}
β β βββ
β βββ
βββ
βββrome_js_parser::parse::parse{file_id=FileId(3)}
βββ
ββ141384731ms WARN tower_lsp Got a textDocument/didSave notification, but it is not implemented
βββrome_js_parser::parse::parse{file_id=FileId(3)}
βββ
ββ141385664ms WARN tower_lsp Got a textDocument/didSave notification, but it is not implemented
ββ141388418ms INFO rome_service::configuration Attempting to load the configuration file at path "d:\\repo\\rome.json"
βββrome_fs::fs::os::OsFile::read_to_string{}
βββ
ββ141388418ms INFO rome_lsp::session Configuration found, and it is valid!
βββrome_lsp::session::update_workspace_settings{}
β βββrome_service::workspace::server::update_settings{params=UpdateSettingsParams { configuration: Configuration { files: None, formatter: Some(FormatterConfiguration { enabled: false, format_with_errors: false, indent_style: Space, indent_size: 2, line_width: LineWidth(80), ignore: Some({"./coverage/**/*", "./node_modules/**/*"}) }), linter: Some(LinterConfiguration { enabled: true, rules: Some(Rules { recommended: Some(false), a11y: Some(A11y { recommended: None, rules: {"noAutofocus": Plain(Off), "noPositiveTabindex": Plain(Warn), "useAltText": Plain(Warn), "useAnchorContent": Plain(Warn), "useBlankTarget": Plain(Warn), "useButtonType": Plain(Warn), "useKeyWithClickEvents": Plain(Off), "useKeyWithMouseEvents": Plain(Off), "useValidAnchor": Plain(Off)} }), complexity: Some(Complexity { recommended: None, rules: {"noExtraBooleanCast": Plain(Warn), "useSimplifiedLogicExpression": Plain(Off)} }), correctness: Some(Correctness { recommended: None, rules: {"noArguments": Plain(Warn), "noArrayIndexKey": Plain(Off), "noAsyncPromiseExecutor": Plain(Warn), "noCatchAssign": Plain(Warn), "noChildrenProp": Plain(Off), "noCommentText": Plain(Warn), "noCompareNegZero": Plain(Warn), "noDebugger": Plain(Warn), "noDelete": Plain(Warn), "noDoubleEquals": Plain(Warn), "noDupeArgs": Plain(Warn), "noEmptyPattern": Plain(Warn), "noFunctionAssign": Plain(Warn), "noImportAssign": Plain(Warn), "noLabelVar": Plain(Warn), "noMultipleSpacesInRegularExpressionLiterals": Plain(Warn), "noNewSymbol": Plain(Off), "noRenderReturnValue": Plain(Warn), "noRestrictedGlobals": Plain(Off), "noShadowRestrictedNames": Plain(Warn), "noSparseArray": Plain(Warn), "noUndeclaredVariables": Plain(Off), "noUnnecessaryContinue": Plain(Warn), "noUnreachable": Plain(Off), "noUnsafeNegation": Plain(Warn), "noUnusedVariables": Plain(Off), "noUselessFragments": Plain(Off), "noVoidElementsWithChildren": Plain(Warn), "useSingleCaseStatement": Plain(Off), "useValidTypeof": Plain(Warn), "useWhile": Plain(Warn)} }), nursery: None, security: Some(Security { recommended: None, rules: {"noDangerouslySetInnerHtml": Plain(Warn), "noDangerouslySetInnerHtmlWithChildren": Plain(Warn)} }), style: Some(Style { recommended: None, rules: {"noImplicitBoolean": Plain(Off), "noNegationElse": Plain(Off), "noShoutyConstants": Plain(Warn), "noUnusedTemplateLiteral": Plain(Warn), "useBlockStatements": Plain(Off), "useFragmentSyntax": Plain(Warn), "useOptionalChain": Plain(Warn), "useSelfClosingElements": Plain(Warn), "useShorthandArrayType": Plain(Warn), "useSingleVarDeclarator": Plain(Warn), "useTemplate": Plain(Warn)} }) }), ignore: Some({"./coverage/**/*", "./node_modules/**/*"}) }), javascript: Some(JavascriptConfiguration { formatter: Some(JavascriptFormatter { quote_style: Single, quote_properties: AsNeeded, trailing_comma: None }), globals: None }) } }}
β β βββrome_service::settings::merge_with_configuration{configuration=Configuration { files: None, formatter: Some(FormatterConfiguration { enabled: false, format_with_errors: false, indent_style: Space, indent_size: 2, line_width: LineWidth(80), ignore: Some({"./coverage/**/*", "./node_modules/**/*"}) }), linter: Some(LinterConfiguration { enabled: true, rules: Some(Rules { recommended: Some(false), a11y: Some(A11y { recommended: None, rules: {"noAutofocus": Plain(Off), "noPositiveTabindex": Plain(Warn), "useAltText": Plain(Warn), "useAnchorContent": Plain(Warn), "useBlankTarget": Plain(Warn), "useButtonType": Plain(Warn), "useKeyWithClickEvents": Plain(Off), "useKeyWithMouseEvents": Plain(Off), "useValidAnchor": Plain(Off)} }), complexity: Some(Complexity { recommended: None, rules: {"noExtraBooleanCast": Plain(Warn), "useSimplifiedLogicExpression": Plain(Off)} }), correctness: Some(Correctness { recommended: None, rules: {"noArguments": Plain(Warn), "noArrayIndexKey": Plain(Off), "noAsyncPromiseExecutor": Plain(Warn), "noCatchAssign": Plain(Warn), "noChildrenProp": Plain(Off), "noCommentText": Plain(Warn), "noCompareNegZero": Plain(Warn), "noDebugger": Plain(Warn), "noDelete": Plain(Warn), "noDoubleEquals": Plain(Warn), "noDupeArgs": Plain(Warn), "noEmptyPattern": Plain(Warn), "noFunctionAssign": Plain(Warn), "noImportAssign": Plain(Warn), "noLabelVar": Plain(Warn), "noMultipleSpacesInRegularExpressionLiterals": Plain(Warn), "noNewSymbol": Plain(Off), "noRenderReturnValue": Plain(Warn), "noRestrictedGlobals": Plain(Off), "noShadowRestrictedNames": Plain(Warn), "noSparseArray": Plain(Warn), "noUndeclaredVariables": Plain(Off), "noUnnecessaryContinue": Plain(Warn), "noUnreachable": Plain(Off), "noUnsafeNegation": Plain(Warn), "noUnusedVariables": Plain(Off), "noUselessFragments": Plain(Off), "noVoidElementsWithChildren": Plain(Warn), "useSingleCaseStatement": Plain(Off), "useValidTypeof": Plain(Warn), "useWhile": Plain(Warn)} }), nursery: None, security: Some(Security { recommended: None, rules: {"noDangerouslySetInnerHtml": Plain(Warn), "noDangerouslySetInnerHtmlWithChildren": Plain(Warn)} }), style: Some(Style { recommended: None, rules: {"noImplicitBoolean": Plain(Off), "noNegationElse": Plain(Off), "noShoutyConstants": Plain(Warn), "noUnusedTemplateLiteral": Plain(Warn), "useBlockStatements": Plain(Off), "useFragmentSyntax": Plain(Warn), "useOptionalChain": Plain(Warn), "useSelfClosingElements": Plain(Warn), "useShorthandArrayType": Plain(Warn), "useSingleVarDeclarator": Plain(Warn), "useTemplate": Plain(Warn)} }) }), ignore: Some({"./coverage/**/*", "./node_modules/**/*"}) }), javascript: Some(JavascriptConfiguration { formatter: Some(JavascriptFormatter { quote_style: Single, quote_properties: AsNeeded, trailing_comma: None }), globals: None }) }}
β β βββ
β βββ
βββ
βββrome_js_parser::parse::parse{file_id=FileId(3)}
βββ
ββ141392119ms WARN tower_lsp Got a textDocument/didSave notification, but it is not implemented
βββrome_js_parser::parse::parse{file_id=FileId(3)}
βββ
ββ141392899ms WARN tower_lsp Got a textDocument/didSave notification, but it is not implemented
βββrome_js_parser::parse::parse{file_id=FileId(4)}
βββ
ββ141476185ms INFO rome_lsp::server Starting Rome Language Server...
What happened?
- Add
ignore
settings for both formatter and linter - Open a file that should be ignored
- Rome will allow formatting/linting it in VSCode
Expected result
Rome's VSCode extension should respect the ignore
settings in rome.json
.
The CLI works fine in that regard.
Code of Conduct
- [X] I agree to follow Rome's Code of Conduct
@nstepien I did the following to reproduce the issue in a workspace with a test.mjs
file
Add file to formatter.ignore
- Open the file, make a change, hit save -> Rome reformats the file
- Add
test.mjs
toformatter.ignore
- Go back to the file, make more changes and hit save -> Rome does not format the file.
This seems to now be working with the latest preview: v0.19.20221125
Add file to linter.ignore
- Open the file and add
if (2 == 3) {}
-> Rome flags the use of==
- Add
test.mjs
tolinter.ignore
- Go back to the file -> Rome stills flags the error (@leops I thought we now issue a re-lint command when the settings change?)
- Reload the window
- Rome no longer flags the error.
So it seems that Rome isn't yet handling the configuration reload correctly.
Is Rome "ignoring" the ignored files even after reloading the window?
Okay so I tested a little bit more,
- Ignoring
"test.js"
works both in the cli and in vscode- That ignores all files named
test.js
- That ignores all files named
- Ignoring
"./test.js"
works in the cli, but not in vscode- This applies to both the formatter and the linter
- Only the
test.js
at the root is ignored (by the cli) as expected
- Ignoring
"./dist/**/*"
or".\\dist\\**\\*"
works in the cli, but not in vscode - Ignoring
"/dist/**/*"
or"dist/**/*"
does nothing- files under
dist/
will still be formatted/checked.
- files under
I've properly tested after each config change by closing vscode, terminating the rome process, and reopening vscode. FWIW I'm on Windows, might be a path issue?
Tested with v0.19.20221125
Go back to the file -> Rome stills flags the error
The lint will go away if you edit the file, but yes Rome shouldn't wait for a file update to re-check the file.
@nstepien thanks for the detailed test report.
I noticed that using a glob like *.mjs
works as expected but the ignore's stop working as soon as there is a folder prefix: src/*.mjs
.
I noticed that using a glob like
*.mjs
works as expected but the ignore's stop working as soon as there is a folder prefix:src/*.mjs
.
Thanks for this comment; this has saved me a whole bunch of debugging time!
It would definitely be very handy if the behaviour matched the documentation in the hover text:
@MichaReiser Out of curiosity, why is it scheduled for 12.0.0? Shouldn't this only require a bug fix in the VSCode extension, with no breaking change?
@MichaReiser Out of curiosity, why is it scheduled for 12.0.0? Shouldn't this only require a bug fix in the VSCode extension, with no breaking change?
We're open to PRs fixing the issue as part of the 11 release scheduled for next Tuesday. I marked it as planned for the next release because it's unlikely that someone from the core team has time to fix it before then.
For more context about this issue, this is related to the way we represent ignore patterns and file paths in the Rome toolchain as a whole.
For patterns, these currently get directly turned into a simple string matching pattern (for instance the pattern ./src/*
will only match the string ./src/test.js
but not src/tests.js
).
At the other end of this, we have multiple representations being used for file paths. The CLI makes use of the paths provided on the command line as-is, which generally (but not necessarily) translates to relative paths: you can write rome format ./src ../test.js C:\Projects\test
and each of these paths is going to be represented exactly as it was written in memory. During filesystem traversal operations, the path string that was originally provided to the CLI gets concatenated with the name of the files and directory that get discovered using the OS-specific separator: if you write rome format ./src
on Windows the paths to the discovered files may look like ./src\dir\file.js
.
In the Language Server that's used by the VSCode extension however, the Language Server Protocol represents paths as URIs so the code is almost exclusively manipulating absolute paths in the form file:///c%3A/Projects/test
(on Windows we can see the path separators are normalized to forward slashes, but the absolute path includes an OS-specific prefix).
At the intersection of all this we have the ignore logic, that currently doesn't works as expected because of the lack of normalization at each end: paths coming from the LSP will almost never be ignored since ignore patterns are generally written as relative to the location of the configuration file while those paths are extracted from absolute URIs (so they won't match the pattern because it performs a strict match on a string), and paths coming from the CLI only work sometimes depending purely on whether the path was specified on the command line in the same way it's specified in the ignore pattern (the ignore pattern src/**
will work with the command rome format src
while the pattern ./src/**
will work with rome format ./src
, but the reverse is not true).