Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Preliminary merge for 1.23.0 #12877

Merged
merged 15 commits into from
Oct 23, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
120 changes: 34 additions & 86 deletions Extension/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,117 +1,65 @@
# C/C++ for Visual Studio Code Changelog

## Version 1.22.8: October 8, 2024
## Version 1.22.10: October 21, 2024
### Bug Fixes
* Fix an issue with the 'Add #include' code action incorrectly using a relative path for a system include. [#12010](https://github.com/microsoft/vscode-cpptools/issues/12010)
* Fix an issue with lingering incorrect squiggles after an edit. [#12175](https://github.com/microsoft/vscode-cpptools/issues/12175)
* Fix an issue with clang-format/tidy version checks for some builds. [#12806](https://github.com/microsoft/vscode-cpptools/issues/12806)
* Revert/postpone changes related to recursive includes handling due to issues with some projects.
* Fix a memory leak.

## Version 1.22.7: September 30, 2024
### Enhancement
* The .vsix and .js files are now signed. [#12725](https://github.com/microsoft/vscode-cpptools/issues/12725), [#12744](https://github.com/microsoft/vscode-cpptools/issues/12744)

### Bug Fixes
* Fix some Copilot-related issues. [PR #12773](https://github.com/microsoft/vscode-cpptools/pull/12773)
* Fix an issue preventing use of a full command line in `compilerPath`. [PR #12774](https://github.com/microsoft/vscode-cpptools/pull/12774)
* Fix an infinite loop on shutdown after changing the selected settings.
* Fix a crash (from `insert_lines`).
* Fix the 'Extract to Function' feature not working.
* Fix the 'Go to Next/Prev Preprocessor Conditional' feature not working.

## Version 1.22.6: September 25, 2024
### Bug Fixes
* Fix an issue with usage of `#cpp` with Copilot chat. [vscode-copilot-release#1634](https://github.com/microsoft/vscode-copilot-release/issues/1634)
* Fix a performance regression with tag parsing.
* Fix a document buffer issue related to edits within files containing multi-byte characters.

## Version 1.22.5: September 24, 2024
### Enhancement
* Add the database path to the `C/C++: Log Diagnostics` output.

### Bug Fixes
* Fix some synchronization and crash issues with `handle_edits`. [#12747](https://github.com/microsoft/vscode-cpptools/issues/12747)
* Fix usage of `#cpp` with Copilot chat. [PR #12755](https://github.com/microsoft/vscode-cpptools/pull/12755)
* Fix some document buffer issues.

## Version 1.22.4: September 19, 2024
### Enhancements
* Performance improvements related to how custom configurations are processed. [#12632](https://github.com/microsoft/vscode-cpptools/issues/12632)
* Performance improvements related to LSP request processing.

### Bug Fixes
* Fix an issue with missing database symbols after a Rename operation. [#12480](https://github.com/microsoft/vscode-cpptools/issues/12480)
* Work around IntelliSense issues with clang 18 due to `size_t` not being defined. [#12618](https://github.com/microsoft/vscode-cpptools/issues/12618)
* Fix some crashes with recursive includes. [#12643](https://github.com/microsoft/vscode-cpptools/issues/12643)
* Possibly fix a crash in `find_existing_intellisense_client`. [#12666](https://github.com/microsoft/vscode-cpptools/issues/12666)
* Fix issues applying `files.exclude` settings when `C_Cpp.caseSensitiveFileSupport` is enabled. [#12672](https://github.com/microsoft/vscode-cpptools/issues/12672)
* Fix an issue with duplicate tag parsing occurring after a Rename operation. [#12728](https://github.com/microsoft/vscode-cpptools/issues/12728)
* Fix an issue causing unnecessary TU updates for files opened during a Rename operation, when `"files.refactoring.autoSave": false` is used.

## Version 1.22.3: September 12, 2024
### Enhancement
* Add support for providing additional context information to Copilot Chat. [PR #12685](https://github.com/microsoft/vscode-cpptools/pull/12685)
* Currently, it requires `"C_Cpp.experimentalFeatures": "enabled"` and typing `#cpp` in the chat.

### Bug Fixes
* Fix the compiler selection control not keeping the list in sync with contents of the textbox. [#7427](https://github.com/microsoft/vscode-cpptools/issues/7427)
* Fix a string localization issue. [#7824](https://github.com/microsoft/vscode-cpptools/issues/7824)
* Stop logging duplicate compiler path messages. [#12445](https://github.com/microsoft/vscode-cpptools/issues/12445)
* Fix some crashes with recursive includes. [#12643](https://github.com/microsoft/vscode-cpptools/issues/12643)
* Fix a rare crash on macOS related to `get_memory_usage`. [#12667](https://github.com/microsoft/vscode-cpptools/issues/12667)
* Fix an issue with 'Extract to Function' formatting. [#12677](https://github.com/microsoft/vscode-cpptools/issues/12677)
* Fix a potential deadlock in `process_paths`. [#12690](https://github.com/microsoft/vscode-cpptools/issues/12690)

## Version 1.22.2: August 29, 2024
### Enhancement
* Remove the `C_Cpp.intelliSenseEngineFallback` setting. [#12596](https://github.com/microsoft/vscode-cpptools/issues/12596)

### Bug Fix
* Fix a deadlock when doing "Find All References" and a file is deleted. [#12656](https://github.com/microsoft/vscode-cpptools/issues/12656)

## Version 1.22.1: August 29, 2024
### Enhancement
* Add "Additional Tracked Settings" to `C/C++: Log Diagnostics` output. [PR #12635](https://github.com/microsoft/vscode-cpptools/pull/12635)

### Bug Fixes
* Fix hover over static constexpr variables sometimes not working. [#12284](https://github.com/microsoft/vscode-cpptools/issues/12284)
* Fix completion not giving results in several scenarios. [#12412](https://github.com/microsoft/vscode-cpptools/issues/12412)
* Fix include completion showing results for deleted folders with recursive includes. [#12636](https://github.com/microsoft/vscode-cpptools/issues/12636)
* Fix the `/FU` flag not working for C++/CLI . [#12641](https://github.com/microsoft/vscode-cpptools/issues/12641)
* Fix some crashes with recursive includes. [#12643](https://github.com/microsoft/vscode-cpptools/issues/12643)
* Fix IntelliSense not working on Windows when `C_Cpp.caseSensitiveFileSupport` is `enabled`. [#12648](https://github.com/microsoft/vscode-cpptools/issues/12648)
* Changes that might fix a crash with `translate_encoding_to_utf8`. [#12652](https://github.com/microsoft/vscode-cpptools/issues/12652)
* Fix a random crash during IntelliSense creation.

## Version 1.22.0: August 26, 2024
## Version 1.22.9: October 10, 2024
### Performance Improvements
* Switch to an alternative implementation of recursive includes (that sends all the paths instead of only the "used" paths). [#11780](https://github.com/microsoft/vscode-cpptools/issues/11780)
- Performance improvement: Configuration is no longer blocked on tag parsing of all dependent headers.
- Configuration change: Recursive include paths now take precedence over system include paths (similar to compiler behavior and non-recursive includes). [#11485](https://github.com/microsoft/vscode-cpptools/issues/11485)
* Initialization performance improvements. [#12030](https://github.com/microsoft/vscode-cpptools/issues/12030)
- Some processing is parallelized and started earlier (populating the filename cache, discovering files). [#11954](https://github.com/microsoft/vscode-cpptools/issues/11954), [#12169](https://github.com/microsoft/vscode-cpptools/issues/12169)
- Some compiler configuration queries are cached in the database, and processing of compile_commands.json was improved. [#10029](https://github.com/microsoft/vscode-cpptools/issues/10029), [#12078](https://github.com/microsoft/vscode-cpptools/issues/12078)
* Performance improvements related to how custom configurations are processed. [#9003](https://github.com/microsoft/vscode-cpptools/issues/9003), [#12632](https://github.com/microsoft/vscode-cpptools/issues/12632)
* Improve the implementation of file buffers to reduce memory usage.
* Performance improvements related to LSP request processing.

### Enhancements
* Add modified `C_Cpp` settings to the `C/C++: Log Diagnostics` output. [#11700](https://github.com/microsoft/vscode-cpptools/issues/11700)
* Change the default C/C++ `"editor.stickyScroll.defaultModel"` to `"foldingProviderModel"`. [#12483](https://github.com/microsoft/vscode-cpptools/issues/12483)
* Add better validation for settings. [#12371](https://github.com/microsoft/vscode-cpptools/issues/12371)
* Change the default C/C++ `"editor.stickyScroll.defaultModel"` to `"foldingProviderModel"`. [#12483](https://github.com/microsoft/vscode-cpptools/issues/12483)
* Remove the `C_Cpp.intelliSenseEngineFallback` setting. [#12596](https://github.com/microsoft/vscode-cpptools/issues/12596)
* Enable `C/C++: Log Diagnostics` without a C/C++ file being active. [#12634](https://github.com/microsoft/vscode-cpptools/issues/12634)
* Add "Additional Tracked Settings" to the `C/C++: Log Diagnostics` output. [PR #12635](https://github.com/microsoft/vscode-cpptools/pull/12635)
* Add support for providing additional context information to Copilot Chat. [PR #12685](https://github.com/microsoft/vscode-cpptools/pull/12685)
* Currently, it requires `"C_Cpp.experimentalFeatures": "enabled"` and typing `#cpp` in the chat.
* The .vsix and .js files are now signed. [#12725](https://github.com/microsoft/vscode-cpptools/issues/12725), [#12744](https://github.com/microsoft/vscode-cpptools/issues/12744)
* Add the database path to the `C/C++: Log Diagnostics` output.
* Various IntelliSense parsing updates/fixes.

### Bug Fixes
* Fix the compiler selection control not keeping the list in sync with the contents of the textbox. [#7427](https://github.com/microsoft/vscode-cpptools/issues/7427)
* Fix a string localization issue. [#7824](https://github.com/microsoft/vscode-cpptools/issues/7824)
* Fix an issue with the 'Add #include' code action incorrectly using a relative path for a system include. [#12010](https://github.com/microsoft/vscode-cpptools/issues/12010)
* Fix an issue with lingering IntelliSense squiggles after an edit. [#12175](https://github.com/microsoft/vscode-cpptools/issues/12175)
* Fix hover over static constexpr variables sometimes not working. [#12284](https://github.com/microsoft/vscode-cpptools/issues/12284)
* Fix completion not giving results in several scenarios. [#12412](https://github.com/microsoft/vscode-cpptools/issues/12412)
* Stop logging duplicate compiler path messages. [#12445](https://github.com/microsoft/vscode-cpptools/issues/12445)
* Fix an issue where a file is incorrectly processed as C instead of C++. [#12466](https://github.com/microsoft/vscode-cpptools/issues/12466)
* Fix an issue with missing database symbols after a Rename operation. [#12480](https://github.com/microsoft/vscode-cpptools/issues/12480)
* Fix include path ordering being incorrect if there is a duplicate. [#12525](https://github.com/microsoft/vscode-cpptools/issues/12525)
* Fix a WebAssembly "Out of Memory" error. [#12529](https://github.com/microsoft/vscode-cpptools/issues/12529)
* Fix an error message not being shown if the connection failed with remote attach debugging. [#12547](https://github.com/microsoft/vscode-cpptools/issues/12547)
* Thank you for the contribution. [@MrStanislav0 (Stanislav)](https://github.com/MrStanislav0)
* Fix `-I` not being used if `-iquote` is also used for the same path. [#12551](https://github.com/microsoft/vscode-cpptools/issues/12551)
* Fix issues with relative paths on `nvcc` (CUDA) command lines not being handled correctly. [#12553](https://github.com/microsoft/vscode-cpptools/issues/12553)
* Fix a random crash when a child process is created. [#12585](https://github.com/microsoft/vscode-cpptools/issues/12585)
* Fix a crash on shutdown on macOS with a verbose logging level. [#12567](https://github.com/microsoft/vscode-cpptools/issues/12567)
* Fix a random crash when a child process is created. [#12585](https://github.com/microsoft/vscode-cpptools/issues/12585)
* Work around IntelliSense issues with clang 18 due to `size_t` not being defined. [#12618](https://github.com/microsoft/vscode-cpptools/issues/12618)
* Fix the `/FU` flag not working for C++/CLI. [#12641](https://github.com/microsoft/vscode-cpptools/issues/12641)
* Fix a crash in `find_existing_intellisense_client`. [#12666](https://github.com/microsoft/vscode-cpptools/issues/12666)
* Fix a rare crash on macOS related to `get_memory_usage`. [#12667](https://github.com/microsoft/vscode-cpptools/issues/12667)
* Fix an issue with 'Extract to Function' formatting. [#12677](https://github.com/microsoft/vscode-cpptools/issues/12677)
* Fix an issue with duplicate tag parsing occurring after a Rename operation. [#12728](https://github.com/microsoft/vscode-cpptools/issues/12728)
* Fix an issue preventing use of a full command line in `compilerPath`. [PR #12774](https://github.com/microsoft/vscode-cpptools/pull/12774)
* Fix an issue with clang-format/tidy version checks for some builds. [#12806](https://github.com/microsoft/vscode-cpptools/issues/12806)
* Fix an issue causing unnecessary TU updates for files opened during a Rename operation, when `"files.refactoring.autoSave": false` is used.
* Fix some issues with recursive includes handling of symbolic links, multi-root, exclusion changes, and file/folder deletion.
* Fix unnecessary IntelliSense resetting when a new file or folder was created.
* Fix an infinite loop on shutdown after changing the selected settings.
* Fix accumulation of stale signature help and completion requests.
* Fix handling of the `compiler-binddir` compiler argument.
* Fix a random crash during IntelliSense creation.
* Fix some bugs with include completion.

## Version 1.21.6: August 5, 2024
Expand Down
10 changes: 5 additions & 5 deletions Extension/bin/messages/cs/messages.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"poslední řádek souboru končí bez nového řádku",
"poslední řádek souboru končí zpětným lomítkem",
"Soubor #include %sq obsahuje sám sebe.",
"nedostatek paměti",
"Nedostatek paměti. Zvažte povolení 64bitového modulu IntelliSense a zvýšení limitu paměti IntelliSense v nastaveních.",
null,
"nezavřený komentář na konci souboru",
"Nerozpoznaný token",
Expand Down Expand Up @@ -1505,7 +1505,7 @@
"Chyba příkazového řádku",
"vnitřní chyba",
"Vnitřní chyba",
"-D",
null,
null,
"Došlo k dosažení limitu chyb.",
"Smyčka interní chyby",
Expand All @@ -1524,7 +1524,7 @@
"převodní jazyk (7)",
"převodní jazyk (8)",
"převodní jazyk (9)",
"PCH",
null,
null,
null,
null,
Expand All @@ -1537,7 +1537,7 @@
"neplatný znak pro literál char16_t",
null,
"Nerozpoznaná konvence volání %s, musí být jednou z:",
"%s",
null,
null,
null,
"Nadřízený typ typu výčtu musí být integrální typ.",
Expand Down Expand Up @@ -2955,7 +2955,7 @@
"Specifikátory omezení destruktoru musejí pokrývat sjednocení specifikátorů omezení všech konstruktorů.",
"error",
"Pro nostdlib se vyžaduje aspoň jedno nucené použití.",
"error-type",
"typ chyby",
null,
null,
null,
Expand Down
8 changes: 4 additions & 4 deletions Extension/bin/messages/de/messages.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"Die letzte Zeile von Dateien endet ohne Zeilenvorschub.",
"Die letzte Zeile von Dateien endet mit einem umgekehrten Schrägstrich.",
"Die #include-Datei \"%sq\" schließt sich selbst ein.",
"Nicht genügend Arbeitsspeicher.",
"Es ist nicht genügend Arbeitsspeicher vorhanden. Erwägen Sie, die 64-Bit-IntelliSense-Engine zu aktivieren und das IntelliSense-Arbeitsspeicherlimit in den Einstellungen zu erhöhen.",
null,
"Nicht geschlossener Kommentar am Ende der Datei",
"Unbekanntes Token",
Expand Down Expand Up @@ -1505,7 +1505,7 @@
"Befehlszeilenfehler",
"Interner Fehler.",
"Interner Fehler.",
"-D",
null,
null,
"Fehlerlimit erreicht.",
"Interne Fehlerschleife",
Expand All @@ -1524,7 +1524,7 @@
"Zwischensprache (7)",
"Zwischensprache (8)",
"Zwischensprache (9)",
"PCH",
null,
null,
null,
null,
Expand All @@ -1537,7 +1537,7 @@
"Ungültiges Zeichen für char16_t-Literal.",
null,
"Unbekannte Aufrufkonvention \"%s\", muss eine der folgenden Optionen sein:",
"%s",
null,
null,
null,
"Der zugrunde liegende Typ des Enumerationstyps muss ein integraler Typ sein.",
Expand Down
10 changes: 5 additions & 5 deletions Extension/bin/messages/es/messages.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"la última línea del archivo termina sin una nueva línea",
"la última línea del archivo termina con una barra diagonal inversa",
"el archivo #include %sq se incluye a sí mismo",
"memoria insuficiente",
"Memoria insuficiente. Considere la posibilidad de habilitar el motor de IntelliSense de 64 bits y aumentar el límite de memoria de IntelliSense en la configuración.",
null,
"comentario no cerrado al final del archivo",
"token no reconocido",
Expand Down Expand Up @@ -1505,7 +1505,7 @@
"Error de la línea de comandos",
"Error interno",
"Error interno",
"-D",
null,
null,
"Se ha alcanzado el límite de error.",
"Bucle de error interno",
Expand All @@ -1524,7 +1524,7 @@
"lenguaje intermedio (7)",
"lenguaje intermedio (8)",
"lenguaje intermedio (9)",
"PCH",
null,
null,
null,
null,
Expand All @@ -1537,7 +1537,7 @@
"carácter no válido para el literal char16_t",
null,
"convención de llamada %s no reconocida, debe ser una de las siguientes:",
"%s",
null,
null,
null,
"el tipo subyacente del tipo de enumeración debe ser un tipo entero",
Expand Down Expand Up @@ -2955,7 +2955,7 @@
"los especificadores de restricción del destructor deben cubrir la unión de los especificadores de restricción de todos los constructores",
"error",
"nostdlib requiere al menos un uso forzado",
"error-type",
"tipo de error",
null,
null,
null,
Expand Down
8 changes: 4 additions & 4 deletions Extension/bin/messages/fr/messages.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"la dernière ligne du fichier se termine sans saut de ligne",
"la dernière ligne du fichier se termine par une barre oblique inverse",
"le fichier #include %sq s'inclut lui-même",
"Mémoire insuffisante",
"Plus de mémoire. Envisagez d’activer le moteur IntelliSense 64 bits et d’augmenter la limite de mémoire IntelliSense dans les paramètres.",
null,
"commentaire non fermé à la fin du fichier",
"jeton non reconnu",
Expand Down Expand Up @@ -1505,7 +1505,7 @@
"Erreur de ligne de commande",
"erreur interne",
"Erreur interne",
"-D",
null,
null,
"Limitation d'erreur atteinte.",
"Boucle d'erreur interne",
Expand All @@ -1524,7 +1524,7 @@
"langage intermédiaire (7)",
"langage intermédiaire (8)",
"langage intermédiaire (9)",
"PCH",
null,
null,
null,
null,
Expand All @@ -1537,7 +1537,7 @@
"caractère non valide pour le littéral char16_t",
null,
"convention d'appel inconnue %s, doit être l'une des suivantes :",
"%s",
null,
null,
null,
"le type sous-jacent du type enum doit être un type intégral",
Expand Down
8 changes: 4 additions & 4 deletions Extension/bin/messages/it/messages.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"l'ultima riga del file termina senza un carattere di nuova riga",
"l'ultima riga del file termina con una barra rovesciata",
"il file #include %sq include se stesso",
"memoria insufficiente",
"Memoria insufficiente. Provare ad abilitare il motore IntelliSense a 64 bit e ad aumentare il limite di memoria IntelliSense nelle impostazioni.",
null,
"commento non chiuso alla fine del file",
"token non riconosciuto",
Expand Down Expand Up @@ -1505,7 +1505,7 @@
"Errore nella riga di comando",
"errore interno",
"Errore interno",
"-D",
null,
null,
"Limite di errore raggiunto.",
"Ciclo di errore interno",
Expand All @@ -1524,7 +1524,7 @@
"linguaggio intermedio (7)",
"linguaggio intermedio (8)",
"linguaggio intermedio (9)",
"PCH",
null,
null,
null,
null,
Expand All @@ -1537,7 +1537,7 @@
"carattere non valido per il valore letterale char16_t",
null,
"convenzione di chiamata %s non riconosciuta. Deve essere una delle seguenti:",
"%s",
null,
null,
null,
"il tipo sottostante del tipo enumerazione deve essere un tipo integrale",
Expand Down
Loading
Loading