about summary refs log tree commit diff
path: root/crates/rust-analyzer/src/config.rs
AgeCommit message (Collapse)AuthorLines
2022-07-18Auto merge of #12807 - Veykril:completion-item-details, r=Veykrilbors-0/+14
Add simple support for completion item details Supercedes https://github.com/rust-lang/rust-analyzer/pull/9891 This doesn't yet really implement anything new, it just adds the scaffolding for the protocol conversion
2022-07-18Add simple support for completion item detailsLukas Wirth-0/+14
2022-07-18Improve file watcher configJonas Schievink-7/+22
2022-07-04Improve documentation for buildScripts.overrideCommand / ↵Florian Diebold-8/+11
checkOnSave.overrideCommand
2022-06-14fix: Check for the correct proc-macro settings in missing proc-macro diagnosticsLukas Wirth-1/+2
2022-06-12More precise proc-macro errorsLukas Wirth-1/+2
2022-05-28fix: add an option to show inlay hint for return type of closures without blockharpsword-3/+32
2022-05-27Auto merge of #12341 - vemoo:exclude_dirs, r=Veykrilbors-1/+16
make `files.excludeDirs` work There's a small issue because if all projects are excluded, this: https://github.com/rust-lang/rust-analyzer/blob/01d412f4d7bd7ef21a7e8f0461e9ba3439e3c4bf/crates/rust-analyzer/src/main_loop.rs#L114 will be shown. I thought about not showing it if `files.excludeDirs` is set, but that is not necessarily correct. Fixes #7755
2022-05-25internal: Make autoclosing angle brackets configurable, disabled by defaultLukas Wirth-0/+7
2022-05-22feat: Add on-typing handler for left angleFelicián Németh-0/+4
Only advertise this feature in the server capabilities when the client supports SnippetTextEdit. Close #11398. Co-authored-by: unexge <unexge@gmail.com>
2022-05-21take into account excludeDirs when computing linked_projectsBernardo Uriarte-1/+16
2022-05-20feat: hide type inlay hints for initializations of closuresandylizi-0/+6
2022-05-20remove duplicate 'to' in `cachePriming.numThreads` option descriptionEquinox-1/+1
2022-05-16Show inlay hints after a `}` to indicate the closed itemJonas Schievink-0/+10
2022-05-16Auto merge of #12253 - Veykril:bm, r=Veykrilbors-0/+3
feat: Add binding mode inlay hints ![image](https://user-images.githubusercontent.com/3757771/168427387-2f299438-a0cc-496b-a9a5-d689ef6a2b55.png)
2022-05-14feat: Add binding mode inlay hintsLukas Wirth-0/+3
2022-05-14internal: Make VSCode config more GUI edit friendlyLukas Wirth-54/+53
2022-05-13fix: Fix incorrect hover actions config keysLukas Wirth-5/+5
2022-05-13fix: Fix fill-arguments completions not workingLukas Wirth-11/+8
2022-05-12fix: Fix vscode config descriptions not recognizing all valid valuesLukas Wirth-22/+58
2022-05-12fix: Fix old config patching overwriting callable snippet config unconditionallyLukas Wirth-0/+1
2022-05-12Auto merge of #12226 - Veykril:reborrow-inlay-hints, r=Veykrilbors-7/+31
feat: Allow reborrow inlay hints to be restricted to mutable reborrows only
2022-05-12feat: Allow reborrow inlay hints to be restricted to mutable reborrows onlyLukas Wirth-7/+31
2022-05-12internal: Rename primeCaches config keysLukas Wirth-9/+9
2022-05-10fix typo in `inlayHints.renderColons` option descriptionElliot Roberts-1/+1
2022-05-10Auto merge of #12010 - Veykril:r-a-config, r=Veykrilbors-212/+412
Config revamp Fixes https://github.com/rust-lang/rust-analyzer/issues/11790 Fixes https://github.com/rust-lang/rust-analyzer/issues/12115 This PR changes a lot of config names, and a few ones are being merged or split apart. The reason for this is that our configuration names currently are rather inconsistent and some where poorly chosen in regards to extensability. This PR plans to fix that. We still allow the old config names by patching them to the new ones before deserializing to keep backwards compatability with other clients (the VSCode client will auto update the config) but ideally we will get rid of that layer in the future. Here is a list of the changes: These are simple renames `old_name | alias1 | alias2 ... -> new_name` (the vscode client will fix these up automagically): ``` assist_allowMergingIntoGlobImports -> imports_merge_glob assist_exprFillDefault -> assist_expressionFillDefault assist_importEnforceGranularity -> imports_granularity_enforce assist_importGranularity | assist_importMergeBehavior | assist_importMergeBehaviour -> imports_granularity_group assist_importGroup -> imports_group_enable assist_importPrefix -> imports_prefix cache_warmup -> primeCaches_enable cargo_loadOutDirsFromCheck -> cargo_buildScripts_enable cargo_runBuildScripts | cargo_runBuildScriptsCommand -> cargo_runBuildScripts_overrideCommand cargo_useRustcWrapperForBuildScripts -> cargo_runBuildScripts_useRustcWrapper completion_snippets -> completion_snippets_custom diagnostics_enableExperimental -> diagnostics_experimental_enable experimental_procAttrMacros -> procMacro_attributes_enable highlighting_strings -> semanticHighlighting_strings_enable highlightRelated_breakPoints -> semanticHighlighting_breakPoints_enable highlightRelated_exitPoints -> semanticHighlighting_exitPoints_enable highlightRelated_yieldPoints -> semanticHighlighting_yieldPoints_enable highlightRelated_references -> semanticHighlighting_references_enable hover_documentation -> hover_documentation_enable hover_linksInHover | hoverActions_linksInHover -> hover_links_enable hoverActions_debug -> hoverActions_debug_enable hoverActions_enable -> hoverActions_enable_enable hoverActions_gotoTypeDef -> hoverActions_gotoTypeDef_enable hoverActions_implementations -> hoverActions_implementations_enable hoverActions_references -> hoverActions_references_enable hoverActions_run -> hoverActions_run_enable inlayHints_chainingHints -> inlayHints_chainingHints_enable inlayHints_closureReturnTypeHints -> inlayHints_closureReturnTypeHints_enable inlayHints_hideNamedConstructorHints -> inlayHints_typeHints_hideNamedConstructorHints inlayHints_parameterHints -> inlayHints_parameterHints_enable inlayHints_reborrowHints -> inlayHints_reborrowHints_enable inlayHints_typeHints -> inlayHints_typeHints_enable lruCapacity -> lru_capacity runnables_cargoExtraArgs -> runnables_extraArgs runnables_overrideCargo -> runnables_command rustcSource -> rustc_source rustfmt_enableRangeFormatting -> rustfmt_rangeFormatting_enable ``` These are configs that have been merged or split apart, which have to be manually updated by the user: ``` callInfo_full -> signatureInfo_detail, signatureInfo_documentation_enable cargo_allFeatures, cargo_features -> cargo_features checkOnSave_allFeatures, checkOnSave_features -> checkOnSave_features completion_addCallArgumentSnippets completion_addCallParenthesis -> completion_callable_snippets ```
2022-05-04Implement old to new config patchingLukas Wirth-0/+3
2022-05-02Auto merge of #12093 - nico-abram:uwu, r=Veykrilbors-1/+1
Reload project on .cargo/config[.toml] changes Fixes #11024 Not adding tests as discussed in the issue
2022-05-01Fix up config docsLukas Wirth-20/+41
2022-05-01Fix untagged enum deserializationLukas Wirth-2/+32
2022-05-01Final fixupsLukas Wirth-10/+11
2022-05-01Update config usage in slow testsLukas Wirth-1/+1
2022-05-01Adjust signature info and enum variant lensesLukas Wirth-5/+20
2022-05-01Implement boolean aliasesLukas Wirth-21/+100
2022-05-01Sort config definitionLukas Wirth-107/+102
2022-05-01Initial config revampLukas Wirth-128/+184
2022-04-28minor: Record snippet config errorsLukas Wirth-1/+6
2022-04-27Reload project on .cargo/config[.toml] changesunknown-1/+1
Fixes #11024
2022-04-14minor: Cleanup config.rs a bitLukas Wirth-50/+96
2022-04-13Auto merge of #11956 - fee1-dead:master, r=flodieboldbors-0/+5
feat: allow customizing the command for running build scripts I have tested this locally and it fixed #9201 with some small changes on the compiler side with suggestions from https://github.com/rust-analyzer/rust-analyzer/issues/9201#issuecomment-1019554086. I have also added an environment variable `IS_RA_BUILDSCRIPT_CHECK` for crates to detect that it is a check for buildscripts, and allows defaulting to bogus values for expected environment variables.
2022-04-13feat: allow customizing the command for running build scriptsDeadbeef-0/+5
2022-04-11Add simplistic config validationLukas Wirth-0/+13
2022-04-11Show config deseralization failures on start upLukas Wirth-44/+62
2022-04-03Merge #10802bors[bot]-1/+9
10802: Allow clients to configure the global workspace search limit r=Veykril a=knutwalker Playing around with [helix](https://helix-editor.com) I realized that the global worksapce symbol search works different compared to vs-code. Helix requires all possible symbols in one query and does no subsequent refinement searched. This PR adds a configuration option to override the default search limit with the default being the currently hardocded value. Helix users can increment this limit for their instance with a config like ```toml [[language]] name = "rust" language-server = { command = "rust-analyzer" } [language.config] workspace = { symbol = { search = { limit = 65536 }}} ``` Other editors are not affected by this change. Co-authored-by: Paul Horn <dev@knutwalker.engineer>
2022-03-24Disable experimental diagnostics by defaultJonas Schievink-1/+1
2022-03-22fix: Fix lifetime elision hint configuration keyLukas Wirth-2/+2
2022-03-20feat: Visualize compiler inserted reborrows via inlay hintsLukas Wirth-0/+3
2022-03-19Change skip trivial behaviourLukas Wirth-4/+4
2022-03-19Add option to skip trivial casesLukas Wirth-10/+34
2022-03-19Use numbers for lifetimes by default, add setting to prefer using parameter ↵Lukas Wirth-8/+13
names