Skip to content

Commit 43a060b

Browse files
authored
Merge pull request #8574 from MicrosoftDocs/cxwtool-10514
Merge master into release-dev17-preview4
2 parents 03be5b5 + 12a3b09 commit 43a060b

14 files changed

+57
-44
lines changed

bridge/articles/overview-bridge-to-kubernetes.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,8 +68,8 @@ The following animation shows two developers working on the same cluster in isol
6868
When you enable working in isolation, Bridge to Kubernetes does the following in addition to connecting to your Kubernetes cluster:
6969

7070
* Verifies Kubernetes cluster does not have Azure Dev Spaces enabled.
71-
* Replicates your chosen service in the cluster in the same namespace and adds a *routing.visualstudio.io/route-from=SERVICE_NAME* label and *routing.visualstudio.io/route-on-header=kubernetes-route-as: GENERATED_NAME* annotation.
72-
* Configures and starts the routing manager in the same namespace on the Kubernetes cluster. The routing manager uses a label selector to look for the *routing.visualstudio.io/route-from=SERVICE_NAME* label and *routing.visualstudio.io/route-on-header=kubernetes-route-as: GENERATED_NAME* annotation when configuring routing in your namespace.
71+
* Replicates your chosen service in the cluster in the same namespace and adds a *routing.visualstudio.io/route-from=SERVICE_NAME* label and *routing.visualstudio.io/route-on-header=kubernetes-route-as=GENERATED_NAME* annotation.
72+
* Configures and starts the routing manager in the same namespace on the Kubernetes cluster. The routing manager uses a label selector to look for the *routing.visualstudio.io/route-from=SERVICE_NAME* label and *routing.visualstudio.io/route-on-header=kubernetes-route-as=GENERATED_NAME* annotation when configuring routing in your namespace.
7373

7474
If Bridge to Kubernetes detects that Azure Dev Spaces is enabled on your Kubernetes cluster, you are prompted to disable Azure Dev Spaces before you can use Bridge to Kubernetes.
7575

docs/debugger/expressions-in-the-debugger.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,8 +100,8 @@ Debugger intrinsic functions:
100100
|**String comparison**|[strcmp, wcscmp](/cpp/c-runtime-library/reference/strcmp-wcscmp-mbscmp), [stricmp, wcsicmp](/cpp/c-runtime-library/reference/stricmp-wcsicmp), [_stricmp, _strcmpi, _wcsicmp, _wcscmpi](/cpp/c-runtime-library/reference/stricmp-wcsicmp-mbsicmp-stricmp-l-wcsicmp-l-mbsicmp-l), [strncmp, wcsncmp](/cpp/c-runtime-library/reference/strncmp-wcsncmp-mbsncmp-mbsncmp-l), [strnicmp, wcsnicmp](/cpp/c-runtime-library/reference/strnicmp-wcsnicmp), [_strnicmp, _wcsnicmp](/cpp/c-runtime-library/reference/strnicmp-wcsnicmp-mbsnicmp-strnicmp-l-wcsnicmp-l-mbsnicmp-l)|
101101
|**String search**|[strchr, wcschr](/cpp/c-runtime-library/reference/strchr-wcschr-mbschr-mbschr-l), [memchr, wmemchr](/cpp/c-runtime-library/reference/memchr-wmemchr), [strstr, wcsstr](/cpp/c-runtime-library/reference/strstr-wcsstr-mbsstr-mbsstr-l)|
102102
|**Win32**|[CoDecodeProxy](/windows/win32/api/combaseapi/nf-combaseapi-codecodeproxy), [DecodePointer](/previous-versions/bb432242(v=vs.85)), [GetLastError](/windows/win32/api/errhandlingapi/nf-errhandlingapi-getlasterror), [TlsGetValue](/windows/win32/api/processthreadsapi/nf-processthreadsapi-tlsgetvalue)|
103-
|**Windows 8**|[RoInspectCapturedStackBackTrace](/windows/win32/api/roerrorapi/nf-roerrorapi-roinspectcapturedstackbacktrace), [WindowsCompareStringOrdinal](/windows/win32/api/winstring/nf-winstring-windowscomparestringordinal), [WindowsGetStringLen](/windows/win32/api/winstring/nf-winstring-windowsgetstringlen), [WindowsGetStringRawBuffer](/windows/win32/api/winstring/nf-winstring-windowsgetstringrawbuffer)<br /><br /> These functions require the process that is being debugged to be running on Windows 8. Debugging dump files generated from a Windows 8 device also requires that the Visual Studio computer be running Windows 8. However, if you are debugging a Windows 8 device remotely, the Visual Studio computer can be running Windows 7.|
104-
|**Miscellaneous**|__log2 // Returns the log base 2 of a specified integer, rounded to the nearest lower integer.<br /><br />__findNonNull, DecodeHString, DecodeWinRTRestrictedException, DynamicCast, DynamicMemberLookup, GetEnvBlockLength<br /><br />Stdext_HashMap_Int_OperatorBracket_idx, Std_UnorderedMap_Int_OperatorBracket_idx<br /><br />ConcurrencyArray_OperatorBracket_idx // Concurrency::array<>::operator[index<>] and operator(index<>)<br /><br />ConcurrencyArray_OperatorBracket_int // Concurrency::array<>::operator(int, int, ...)<br /><br />ConcurrencyArray_OperatorBracket_tidx // Concurrency::array<>::operator[tiled_index<>] and operator(tiled_index<>)<br /><br />ConcurrencyArrayView_OperatorBracket_idx // Concurrency::array_view<>::operator[index<>] and operator(index<>)<br /><br />ConcurrencyArrayView_OperatorBracket_int // Concurrency::array_view<>::operator(int, int, ...)<br /><br />ConcurrencyArrayView_OperatorBracket_tidx // Concurrency::array_view<>::operator[tiled_index<>] and operator(tiled_index<>)<br /><br />TreeTraverse_Init // Initializes a new tree traversal<br /><br />TreeTraverse_Next // Returns nodes in a tree<br /><br />TreeTraverse_Skip // Skips nodes in a pending tree traversal`|
103+
|**Windows 8**|[RoInspectCapturedStackBackTrace](/windows/win32/api/roerrorapi/nf-roerrorapi-roinspectcapturedstackbacktrace), [WindowsCompareStringOrdinal](/windows/win32/api/winstring/nf-winstring-windowscomparestringordinal), [WindowsGetStringLen](/windows/win32/api/winstring/nf-winstring-windowsgetstringlen), [WindowsGetStringRawBuffer](/windows/win32/api/winstring/nf-winstring-windowsgetstringrawbuffer)<br /><br /> These functions require the process that is being debugged to be running on Windows 8. Debugging dump files generated from a Windows 8 device also requires that the Visual Studio computer be running Windows 8. However, if you are debugging a Windows 8 device remotely, the Visual Studio computer can be running Windows 7.<br />`WindowsGetStringLen` and `WindowsGetStringRawBuffer` are used only by the execution engine (EE) on the source level.|
104+
|**Miscellaneous**|**__log2** - Returns the log base 2 of a specified integer, rounded to the nearest lower integer.<br /><br />**__findNonNull** - Searches an array of pointers, returning the index of the first non-null element.<br />- Parameters: (1) Pointer to first element in array (void*), (2) Size of array (unsigned int).<br />- Return values: (1) 0-based index of first non-null element in array or -1 if not found.<br /><br />**DecodeHString** - Helper function to format the value of an HSTRING. Pops the HSTRING value off the stack, pushes the bytes of a StringInfo structure that the EE can use to tell where the string is located. This is only used internally by the EE; it is not available to the user to call directly.<br /><br />**DecodeWinRTRestrictedException** - Decodes a WinRT restricted exception to get the restricted description.<br />- Parameters: (1) characters of a null-terminated string representing the restricted reference string.<br />- Return value: Characters of a null-terminated string containing the actual error message to show.<br /><br />**DynamicCast** - Implements dynamic_cast.<br />- Parameters: (1) Pointer to object to cast.<br />- Data items: A CDynamicCastData object should be associated as a data item to the corresponding ExecuteIntrinsic() instruction. The data item encodes the type we are casting from and to, as well as whether or not we are evaluating a natvis expression (needed for diagnostics to break infinite recursion).<br />- Return value: (1) A pointer to the object, cast to the correct type, or NULL if the object being cast is not an instance of the correct type.<br /><br />**DynamicMemberLookup** - Helper function to get the value of a class member dynamically<br /><br />**GetEnvBlockLength** - Helper function to get length of an environment block, in characters. Used for $env.<br /><br />**Stdext_HashMap_Int_OperatorBracket_idx** - Operator[] for stdext::hash_map. Assumes default hash function with a key of 'int'. Returns the value. The intrinsic operator[] only supports retrieving existing items from the hashtable - it does not support inserting new items into the table, as that could involve unwanted complexity, such as memory allocation. However, operator[] may be used to modify the value associated with a key already in the table.<br />- Stack Parameters: (1) The address of the stdext::hash_map object, (2) The key into the table (int), (3) a HashMapPdb structure that specifies the field offsets of members that the function implementation needs to do the lookup. This is required because direct access to symbols is not available on the remote side.<br />- Return values: (1) If the key is in the table, the address of the value which corresponds to the key. Otherwise, NULL.<br /><br />**Std_UnorderedMap_Int_OperatorBracket_idx** - std::unordered_map works the same way as stdext::hash_map, except the hash function is different.<br /><br />**ConcurrencyArray_OperatorBracket_idx** // Concurrency::array<>::operator[index<>] and operator(index<>)<br /><br />**ConcurrencyArray_OperatorBracket_int** // Concurrency::array<>::operator(int, int, ...)<br /><br />**ConcurrencyArray_OperatorBracket_tidx** // Concurrency::array<>::operator[tiled_index<>] and operator(tiled_index<>)<br /><br />**ConcurrencyArrayView_OperatorBracket_idx** // Concurrency::array_view<>::operator[index<>] and operator(index<>)<br /><br />**ConcurrencyArrayView_OperatorBracket_int** // Concurrency::array_view<>::operator(int, int, ...)<br /><br />**ConcurrencyArrayView_OperatorBracket_tidx** // Concurrency::array_view<>::operator[tiled_index<>] and operator(tiled_index<>)<br /><br />**TreeTraverse_Init** - Initializes a new tree traversal. <br />- Stack Parameters: (1) Address of root node, (2) Hint for the maximum depth to use. Items at a depth beyond this are moved to a queue for later processing.<br />- Subroutine parameters: (1) node validity (optional).<br />- Return values: (1) Opaque sequence of bytes encoding the state of the tree traversal.<br /><br />**TreeTraverse_Next** - Retrieves nodes from a pending tree traversal.<br />- Stack Parameters: (1) Opaque byte array representing state of tree traversal, (2) Number of nodes to fetch.<br />- Subroutine parameters (must match call to TreeTraverse_Init()): (1) left child, (2) right child, (3) node validity (optional).<br />- Return values: (1) Number of nodes fetched (Note: pushed after the nodes, themselves, so it can be popped first). If fewer nodes were fetched than requested, this means the end of the tree. (2) For each node fetched, the address of the node. (3) Opaque sequence of bytes encoding the new state of the tree traversal<br /><br />**TreeTraverse_Skip** - Skips nodes in a pending tree traversal.<br />- Stack Parameters: (1) Opaque byte array representing state of tree traversal, (2) Number of nodes to skip.<br />- Subroutine parameters (must match on successive calls to Next() on the same enumerator): (1) left child, (2) right child, (3) node validity (optional).<br />- Return values: (1) Number of items actually skipped (might be less than what's requested), (2) Opaque sequence of bytes encoding the new state of the tree traversal|
105105

106106
## C++/CLI - Unsupported Expressions
107107

docs/extensibility/migration/update-visual-studio-extension.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,13 +32,13 @@ The VS SDK targeting Visual Studio 2022 for managed extensions is up *exclusivel
3232
- The [Microsoft.VisualStudio.Sdk](https://www.nuget.org/packages/Microsoft.VisualStudio.Sdk/) (17.x versions) meta-package brings in most or all of the reference assemblies you will need.
3333
- The [Microsoft.VSSDK.BuildTools](https://www.nuget.org/packages/Microsoft.VSSDK.BuildTools/) (17.x versions) package should be referenced from your VSIX project so it can build a Visual Studio 2022-compliant VSIX.
3434

35-
Extensions *must* be compiled with the "Any CPU" or "x64" platform. The "x86" platform is incompatible with Visual Studio 2022's 64-bit process.
35+
Even if you don't reference any breaking changes, extensions *must* be compiled with the "Any CPU" or "x64" platform. The "x86" platform is incompatible with Visual Studio 2022's 64-bit process.
3636

3737
### Extensions written in C++
3838

3939
The VS SDK for extensions compiled with C++ is available with the installed Visual Studio SDK, as usual.
4040

41-
Extensions *must* be compiled specifically against the Visual Studio 2022 SDK and for amd64.
41+
Even if you don't reference any breaking changes, extensions *must* be compiled specifically against the Visual Studio 2022 SDK and for amd64.
4242

4343
### Update your extension to Visual Studio 2022
4444

@@ -210,7 +210,7 @@ Proceed to add Visual Studio 2022 support to your extension with these steps, wh
210210
| - | - | - |
211211
| ProductArchitecture | X86, AMD64 | The platforms that are supported by this VSIX. Not case sensitive. One platform per element and one element per InstallTarget. For product versions less than 17.0 the default value is x86 and can be omitted. For product versions 17.0 and greater this element is required and there is no default value. For Visual Studio 2022 the only valid content for this element is "amd64". |
212212

213-
1. Make any other adjustments necessary in your source.extension.vsixmanifest to match the one that targets Visual Studio 2019 (if any). It is critical that the ID of the VSIX, in the `Identity` element of the manifest, is identical for both extensions.
213+
1. Make any other adjustments necessary in your source.extension.vsixmanifest to match the one that targets Visual Studio 2019 (if any). If you are publishing 2 different versions of your extension each targeting a different version of VS, it is critical that the ID of the VSIX, in the `Identity` element of the manifest, is different for both extensions.
214214

215215
At this point, you have a Visual Studio 2022-targeted extension VSIX. You should build your Visual Studio 2022-targeted VSIX project and [work through any build breaks that appear](#handle-breaking-api-changes). If you do not have build breaks in your Visual Studio 2022-targeted VSIX project,
216216
congratulations: you're ready for testing!

docs/ide/quickstart-personalize-the-ide.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: Set the Visual Studio dark theme and change text colors
33
description: Learn how to change the default Visual Studio color theme to dark mode and change font colors in the code editor.
4-
ms.date: 08/20/2020
4+
ms.date: 08/19/2021
55
ms.topic: how-to
66
ms.custom: contperf-fy21q1
77
author: TerryGLee
@@ -15,6 +15,9 @@ ms.workload:
1515

1616
In this how-to article, we'll customize the Visual Studio color theme from the default blue theme to the dark theme. Then, we'll customize the colors for two different types of text in the code editor.
1717

18+
> [!NOTE]
19+
> In [Visual Studio 2022 Preview](/visualstudio/releases/2022/release-notes-preview), we've revamped the color themes functionality to mesh with your Windows settings. To learn more, see the [**Flexible theming capabilities for Visual Studio**](https://devblogs.microsoft.com/visualstudio/flexible-theming-visual-studio/) blog post.
20+
1821
::: moniker range="vs-2017"
1922

2023
If you haven't already installed Visual Studio, go to the [Visual Studio downloads](https://visualstudio.microsoft.com/vs/older-downloads/?utm_medium=microsoft&utm_source=docs.microsoft.com&utm_campaign=vs+2017+download) page to install it for free.

docs/test/create-unit-tests-menu.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: Create unit test method stubs
33
description: Learn how to use the Create Unit Tests command, which allows easy configuration of a test project, the test class, and the test method stub within it.
44
ms.custom: SEO-VS-2020
5-
ms.date: 07/26/2021
5+
ms.date: 08/19/2021
66
ms.topic: how-to
77
helpviewer_keywords:
88
- unit testing, create unit tests
@@ -23,7 +23,7 @@ The **Create Unit Tests** command creates unit test method stubs. This feature a
2323
::: moniker-end
2424
::: moniker range=">=vs-2019"
2525
> [!NOTE]
26-
> The **Create Unit Tests** menu command is only available for C# code.
26+
> The **Create Unit Tests** menu command is only available for C# code. To use this method with .NET Core or .NET Standard, Visual Studio 2019 is required.
2727
::: moniker-end
2828

2929
The **Create Unit Tests** menu command is extensible and can be used to generate tests for MSTest, MSTest V2, NUnit, and xUnit.

docs/test/getting-started-with-unit-testing.md

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -53,12 +53,19 @@ This section describes how to create a unit test project.
5353
5454
1. In **Solution Explorer**, select the solution node. Then, from the top menu bar, select **File** > **Add** > **New Project**.
5555
56-
1. In the new project dialog box, find a unit test project template for the test framework you want to use, such as MSTest (C#) or the **Native Unit Test** project (C++), and select it.
56+
1. In the new project dialog box, find the unit test project to use.
5757
58-
Starting in Visual Studio 2017 version 14.8, the .NET languages include built-in templates for NUnit and xUnit. For C++, in this example select the **Native Unit Test** project, which uses Microsoft Native Unit Test Framework. (To use a different C++ test frameworks, see [Writing unit tests for C/C++](../test/writing-unit-tests-for-c-cpp.md)). For Python, see [Set up unit testing in Python code](../python/unit-testing-python-in-visual-studio.md) to set up your test project.
58+
::: moniker range=">=vs-2019"
59+
Type **test** in the search box to find a unit test project template for the test framework you want to use, such as MSTest (C#) or the **Native Unit Test** project (C++), and select it.
60+
::: moniker-end
61+
::: moniker range="vs-2017"
62+
Expand the **Installed** node, choose the language that you want to use for your test project, and then choose **Test**.
63+
::: moniker-end
64+
65+
Starting in Visual Studio 2017 version 14.8, the .NET languages include built-in templates for NUnit and xUnit. For C++, in this example select the **Native Unit Test** project, which uses Microsoft Native Unit Test Framework. (To use a different C++ test framework, see [Writing unit tests for C/C++](../test/writing-unit-tests-for-c-cpp.md)). For Python, see [Set up unit testing in Python code](../python/unit-testing-python-in-visual-studio.md) to set up your test project.
5966
6067
> [!TIP]
61-
> For C# only, you can create unit test projects from code using a faster method. For more information, see [Create unit test projects and test methods](../test/unit-test-basics.md#create-unit-test-projects-and-test-methods). To use this method with .NET Core or .NET Standard, Visual Studio 2019 is required.
68+
> For C# only, you can create unit test projects from code using a faster method. For more information, see [Create unit test projects and test methods](../test/unit-test-basics.md#create-unit-test-projects-and-test-methods-c). To use this method with .NET Core or .NET Standard, Visual Studio 2019 is required.
6269
6370
The following illustration shows an MSTest unit test, which is supported in .NET.
6471
@@ -82,15 +89,15 @@ This section describes how to create a unit test project.
8289
8390
![Unit test project in Solution Explorer](media/vs-2019/solution-explorer.png)
8491
85-
1. In the unit test project, add a reference to the project you want to test by right-clicking on **References** or **Dependencies** and then choosing **Add Reference**.
92+
1. In the unit test project, add a reference to the project you want to test by right-clicking on **References** or **Dependencies** and then choosing **Add Reference** or **Add Project Reference**.
8693
8794
1. Select the project that contains the code you'll test and click **OK**.
8895
8996
![Add project reference in Visual Studio](media/vs-2019/reference-manager.png)
9097
9198
1. Add code to the unit test method.
9299
93-
For example, you might use the following code by selecting the correct documentation tab that matches your test framework: MSTest, NUnit, or xUnit (supported on .NET only), or C++ Microsoft Unit Testing Framework.
100+
For example, you might use the following code by selecting the correct documentation tab that matches your test framework: MSTest, NUnit, or xUnit (supported on .NET only), or C++ Microsoft Native Unit Test Framework.
94101
95102
### [MSTest](#tab/mstest)
96103

docs/test/improve-code-quality.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
---
2-
title: Testing tools
2+
title: Unit test tools
33
description: Learn how Visual Studio testing tools can help you and your team develop and sustain high standards of code excellence.
44
ms.custom: SEO-VS-2020
5-
ms.date: 03/16/2018
5+
ms.date: 08/19/2021
66
ms.topic: conceptual
77
helpviewer_keywords:
88
- testing tools [Visual Studio]
@@ -34,6 +34,7 @@ The **Test Explorer** window helps developers create, manage, and run unit tests
3434
::: moniker-end
3535

3636
* [Get started with unit testing](unit-test-your-code.md)
37+
* [Unit test basics](unit-test-basics.md)
3738
* [Run unit tests with Test Explorer](run-unit-tests-with-test-explorer.md)
3839
* [Test Explorer FAQ](test-explorer-faq.md)
3940
* [Install third-party unit test frameworks](install-third-party-unit-test-frameworks.md)

0 commit comments

Comments
 (0)