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

Future Design of Python Testing Output #21861

Closed
eleanorjboyd opened this issue Aug 21, 2023 · 15 comments · Fixed by #22039
Closed

Future Design of Python Testing Output #21861

eleanorjboyd opened this issue Aug 21, 2023 · 15 comments · Fixed by #22039
Assignees
Labels
area-testing on-testplan Added to test plan

Comments

@eleanorjboyd
Copy link
Member

eleanorjboyd commented Aug 21, 2023

The following issue describes the current behavior and outlines a few questions that need to be figured out to write a proposal.

Current Behavior (pre-rewrite)

Currently, there are three places where users can view different output types from their test run. First is the "python test log" under the output panel, second is the "Test Result" panel, and finally the in-line pop-up for failed tests. The "Test Result" panel and the in-line pop-up are identical in output (when the in-line is displayed since it isn't displayed on pass). Therefore for this discussion, we will just consider the "python test log" and the "Test Result" panel but all things printed to the "Test Result" panel will show up on the in-line pop-up if changes are made.

Due to prior constraints, the extension used to parse output to determine the result of test run and update the UI. This is the primary reason for the two different output views but due to the testing rewrite this is no longer a constraint. This means a decision needs to be made moving forward regarding these two channels and their information.

The current difference between the two are noted below:

Item "python test log" Test Result panel
print statements (when applicable)
test args
cwd / rootdir
workspace directory
failure message
test summary (section that goes "Total number of tests expected to run: 1.....")
------ Captured stdout call -------
=========== short test summary info ==============
FAILED test_output_types.py::test_print_fail - assert False
config file
platform / pytest version
# tests passed, # failed, # skipped, time taken (ex === 1 passed in 0.01s ====)
Screenshot 2023-08-21 at 11 47 25 AM

comparison on the differences just as text for a test that fails and has a print statement. (right: python test output, left: Test Result)
Screenshot 2023-08-21 at 1 04 47 PM

comparison on the difference just as text for a test that fails with logging enabled. (right: python test output, left: Test Result)
Screenshot 2023-08-21 at 1 06 41 PM

Moving Forward

The following questions arise after the above analysis. Please add your feedback in comments below.

  1. Would be better if we could instead switch all the necessary information to the Test Result panel? If we do this then do we even need the "python test output"?
  2. If we want to keep the two then what is the difference between them?
  3. What of the given information is most useful? Should we have the Test Results panel look as similar to the pytest output as possible (like what pytest returns to the command line)? If we do this do we still want custom additions to the Test Result panel such as "workspace directory", "args", and "test summary (section that goes "Total number of tests expected to run: 1.....")"?
  4. When we do these types of changes what should the "show output button on the testing explorer go to? What should tests open on default when test run finish? Are there any more commands / ways to pull up these different outputs that should be added?

Pros and Cons

  • If we switch to using the Test Result panel then we can support color in the output since it's all parsed by xterm.js

The following issues are related to this spike and those involved in these issues are encouraged to give their opinion. Thanks!

@eleanorjboyd eleanorjboyd added feature-request Request for new features or functionality needs spike Label for issues that need investigation before they can be worked on. labels Aug 21, 2023
@eleanorjboyd eleanorjboyd self-assigned this Aug 21, 2023
@eleanorjboyd
Copy link
Member Author

@eleanorjboyd eleanorjboyd added area-testing and removed feature-request Request for new features or functionality labels Aug 21, 2023
@eleanorjboyd
Copy link
Member Author

One item @karrtikr brought up was if the Test Result panel is always around or if it goes away. Users should be able to reference these logs not just right after run so the result panel will need to have the same lifespan as the output channel.

@brettcannon
Copy link
Member

I say just merge it all into the Test Result panel. It's the integrated solution in VS Code for this sort of information.

@eleanorjboyd
Copy link
Member Author

another related issue: #17371

@eleanorjboyd
Copy link
Member Author

If we got rid of the python test output then this issue will be different as all commands to open the output would then route to the test panel: #21694

@connor4312
Copy link
Member

Would be better if we could instead switch all the necessary information to the Test Result panel? If we do this then do we even need the "python test output"?

I would like the Test Results view to be the 'one stop shop' for the test experience in VS Code. If there are things that make this prohibitive or undesirable, let me know and we can solve them.

If we want to keep the two then what is the difference between them?

I'm not a pythonista, but one thing I do find useful is test extensions that print the command they're running (or the equivalent command a user could run) for the tests. Sometimes, for whatever reason, I want to run them manually in a terminal.

What of the given information is most useful? Should we have the Test Results panel look as similar to the pytest output as possible (like what pytest returns to the command line)?

From my point of view when writing test extensions, my goal for the output is to write human readable data and also not lose information. If there is VS Code API for providing information, such as showing large failure diffs in the TestMessage, then that counts as "not losing information" and I may write a more concise version of that failure into the output.

It seems like "python test output" is a mix of the test output and diagnostic data. I think it's good to have a way to get that diagnostic data, but that could be a "log" type output channel and not something we necessarily direct users to unless they run into problems.

When we do these types of changes what should the "show output button on the testing explorer go to? What should tests open on default when test run finish?

Today the "show output" button always opens the output in the Test Results view. Are you thinking that would be different?

@eleanorjboyd
Copy link
Member Author

Based on discussions with team members, the plan is to move fully to the Test Results panel (as we have also confirmed this is feasible) and possible remove the python test logs section from the output panel. The panel was created to handle engineering constraints which are no longer present with the rewrite.

This being said there is one question I have. Discovery (for example pytest discovery which is the equivalent of the command python -m pytest --collect-only) has output- does it make sense for this output to be put in the test results panel? Below I added an example of what the output of discovery is- this comes from pytest and it is useful as it outlines which tests were found as well as a few other important pieces of information such as the config file being used. Would having test discovery output end up in panel called "Test Results" be confusing for users?

@brettcannon, @luabud, @karthiknadig, @cwebster-99 thoughts?
@connor4312 from a core perspective how challenging would it be to implement given the test result panel is mostly based on the test runner object which handles pass/failure?

=========================================== test session starts ============================================
platform darwin -- Python 3.7.9, pytest-7.2.2, pluggy-1.0.0
rootdir: /Users/eleanorboyd/testingFiles/inc_dec_example, configfile: pytest.ini
collected 46 items                                                                                         

<Module diff_pattern_test.py>
  <UnitTestCase ClassDiffPattern>
    <TestCaseFunction test_a1>
<Module first_test.py>
  <Function test_add>
<DoctestTextfile test_docstring.txt>
  <DoctestItem test_docstring.txt>
<Module test_from_that.py>
  <Class TestSomething>
    <Function test_a>
<Module test_many_functions.py>
  <Function test_many_1p>
  <Function test_many_2f>
  <Function test_many_3f>
<Module test_plat.py>
  <Function test_if_apple_is_evil>
  <Function test_if_linux_works>
  <Function test_if_win32_crashes>
  <Function test_runs_everywhere>
<Module test_single_function.py>
  <Function test_single_1f>
<Module test_subtests.py>
  <UnitTestCase NumbersTest>
    <TestCaseFunction test_even>
<Module test_unit_and_pytest_combo.py>
  <Function test_single_pytest>
  <UnitTestCase test_class_unittest_combo_file>
    <TestCaseFunction test_combo1_function_unittest>
<Module test_unit_decorator.py>
  <UnitTestCase my_test>
    <TestCaseFunction test_first>
    <TestCaseFunction test_fourth>
    <TestCaseFunction test_third>
<Module blank_folder/test_two_classes.py>
  <UnitTestCase ClassA>
    <TestCaseFunction test_a1>
    <TestCaseFunction test_a2>
  <UnitTestCase ClassB>
    <TestCaseFunction test_b1>
    <TestCaseFunction test_b2>
<Module outer nested_folder/test_outer_folder.py>
  <Function test_outer_folder1>
  <Function test_outer_folder2>
<Module outer nested_folder/test_trial.py>
  <Function test_test[0]>
  <Function test_test[1]>
  <Function test_test[2]>
  <Function test_test[3]>
  <Function test_test[4]>
  <Function test_test[5]>
  <Function test_test[6]>
  <Function test_test[7]>
  <Function test_test[8]>
  <Function test_test[9]>
<Module outer nested_folder/inner_nested_folder/test_nested.py>
  <Function test_answer_1pNest>
<Module outer nested_folder/inner_nested_folder/test_unittest.py>
  <UnitTestCase test_class_unittest>
    <TestCaseFunction test1_function_unittest>
    <TestCaseFunction test2_function_unittest>
<Module param_folder/test_other.py>
  <Function test_this>
<Module param_folder/test_parameterized.py>
  <Function test_adding[test adding]>
  <Function test_adding[2      +V]>
  <Function test_adding[\n ffda]>
  <Function test_odd_even[1]>
<Package test_dup_class>
  <Module test_a.py>
    <UnitTestCase TestSomething>
      <TestCaseFunction test_a>
  <Module test_b.py>
    <UnitTestCase TestSomething>
      <TestCaseFunction test_b>
<Module tests/test_unit_path_no.py>
  <UnitTestCase Test_TestIncrementDecrement>
    <TestCaseFunction test_decrement>
    <TestCaseFunction test_increment>

============================================= warnings summary =============================================
test_plat.py:4
  /Users/eleanorboyd/testingFiles/inc_dec_example/test_plat.py:4: PytestUnknownMarkWarning: Unknown pytest.mark.darwin - is this a typo?  You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html
    @pytest.mark.darwin

test_plat.py:10
  /Users/eleanorboyd/testingFiles/inc_dec_example/test_plat.py:10: PytestUnknownMarkWarning: Unknown pytest.mark.linux - is this a typo?  You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html
    @pytest.mark.linux

test_plat.py:16
  /Users/eleanorboyd/testingFiles/inc_dec_example/test_plat.py:16: PytestUnknownMarkWarning: Unknown pytest.mark.win32 - is this a typo?  You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html
    @pytest.mark.win32

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
======================================= 46 tests collected in 0.06s ========================================

@brettcannon
Copy link
Member

We could stick it in the Python channel of the Output panel since, as you pointed out, the Test Results panel doesn't really have a concept of discovery.

@eleanorjboyd
Copy link
Member Author

for clarity on this issue, this is what I mean when I talk about the Test Result Panel,
Screenshot 2023-09-18 at 10 44 56 AM

@connor4312
Copy link
Member

Yea, I'm not a fan of the idea of putting it in the Test Results panel.

You could have an output channel, or even a simple memory buffer that's opened in an editor on some command. Up to you.

@eleanorjboyd
Copy link
Member Author

@connor4312 and @brettcannon, thanks for the input! Will move forward with keeping discovery in the python output panel thanks!

@eleanorjboyd
Copy link
Member Author

What are people's thoughts on using color for the debug console logs? This is what it would look like if pytest was set to color true and it was in debug mode:
Screenshot 2023-09-20 at 2 25 59 PM

@connor4312
Copy link
Member

Colors are great, they make output much more readable 👍

@brettcannon
Copy link
Member

I say we give it a shot and see what users think!

eleanorjboyd added a commit that referenced this issue Oct 11, 2023
closes #21861 and
related issues

---------

Co-authored-by: Courtney Webster <60238438+cwebster-99@users.noreply.github.com>
@github-actions github-actions bot removed the needs spike Label for issues that need investigation before they can be worked on. label Oct 11, 2023
@flying-sheep
Copy link

Ah, amazing, with "python.testing.pytestArgs": ["--color=yes"], I see color in the test output panel.

The “Peek View” still doesn’t have color, but that can be deactivated. Thank you!

@eleanorjboyd eleanorjboyd added the on-testplan Added to test plan label Oct 23, 2023
This was referenced Oct 23, 2023
@jrieken jrieken mentioned this issue Oct 24, 2023
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Nov 25, 2023
wesm pushed a commit to posit-dev/positron that referenced this issue Mar 28, 2024
… 2023.20

Merge pull request #244 from posit-dev/merge/upstream-2023.20

Merge upstream vscode-python 2023.20
--------------------
Commit message for posit-dev/positron-python@182a5a1b5c8ca577bea4b303224a2a92a78e8ce9:

Put back gulp installation path instead of nox

--------------------
Commit message for posit-dev/positron-python@bd64148cbb024a183cea2cdacd98c2d7cbf0008a:

Merge upstream 2023.20

--------------------
Commit message for microsoft/vscode-python@32ea534f7144fb1c9bd7502e91451e69f2fcd218:

remove new line chars from error text messages in testing rewrite (microsoft/vscode-python#22402)

fixes https://github.com/microsoft/vscode-python/issues/21512 where 2
extra new lines were seen at the end of an error message popup. Removing
these will restrict stop this from occurring.
--------------------
Commit message for microsoft/vscode-python@ff604ca9988420aefa4f66c1681e3d3374c5e03c:

Add cwd to error logs (microsoft/vscode-python#22387)

closes https://github.com/microsoft/vscode-python/issues/22359
--------------------
Commit message for microsoft/vscode-python@78052bd76e9922a983accd35a84f16c6d1d53f22:

Refactor get_node_path function to handle fspath greedy access  (microsoft/vscode-python#22384)

closes https://github.com/microsoft/vscode-python/issues/20830

---------

Co-authored-by: Karthik Nadig <kanadig@microsoft.com>
--------------------
Commit message for microsoft/vscode-python@491c2c8af29916136e0b6540b5d934bf448a51e3:

Bump typing-extensions from 4.7.1 to 4.8.0 (microsoft/vscode-python#22015)

Bumps [typing-extensions](https://github.com/python/typing_extensions)
from 4.7.1 to 4.8.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/python/typing_extensions/releases">typing-extensions's
releases</a>.</em></p>
<blockquote>
<h2>4.8.0</h2>
<p>Changes since 4.7.1:</p>
<ul>
<li>Add <code>typing_extensions.Doc</code>, as proposed by PEP 727.
Patch by
Sebastián Ramírez.</li>
<li>Drop support for Python 3.7 (including PyPy-3.7). Patch by Alex
Waygood.</li>
<li>Fix bug where <code>get_original_bases()</code> would return
incorrect results when
called on a concrete subclass of a generic class. Patch by Alex Waygood
(backporting <a
href="https://redirect.github.com/python/cpython/pull/107584">python/cpython#107584</a>,
by James
Hilton-Balfe).</li>
<li>Fix bug where <code>ParamSpec(default=...)</code> would raise a
<code>TypeError</code> on Python
versions &lt;3.11. Patch by James Hilton-Balfe</li>
</ul>
<p>No changes since 4.8.0rc1.</p>
<h2>4.8.0rc1</h2>
<ul>
<li>Add <code>typing_extensions.Doc</code>, as proposed by PEP 727.
Patch by
Sebastián Ramírez.</li>
<li>Drop support for Python 3.7 (including PyPy-3.7). Patch by Alex
Waygood.</li>
<li>Fix bug where <code>get_original_bases()</code> would return
incorrect results when
called on a concrete subclass of a generic class. Patch by Alex Waygood
(backporting <a
href="https://redirect.github.com/python/cpython/pull/107584">python/cpython#107584</a>,
by James
Hilton-Balfe).</li>
<li>Fix bug where <code>ParamSpec(default=...)</code> would raise a
<code>TypeError</code> on Python
versions &lt;3.11. Patch by James Hilton-Balfe</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/python/typing_extensions/blob/main/CHANGELOG.md">typing-extensions's
changelog</a>.</em></p>
<blockquote>
<h1>Release 4.8.0 (September 17, 2023)</h1>
<p>No changes since 4.8.0rc1.</p>
<h1>Release 4.8.0rc1 (September 7, 2023)</h1>
<ul>
<li>Add <code>typing_extensions.Doc</code>, as proposed by PEP 727.
Patch by
Sebastián Ramírez.</li>
<li>Drop support for Python 3.7 (including PyPy-3.7). Patch by Alex
Waygood.</li>
<li>Fix bug where <code>get_original_bases()</code> would return
incorrect results when
called on a concrete subclass of a generic class. Patch by Alex Waygood
(backporting <a
href="https://redirect.github.com/python/cpython/pull/107584">python/cpython#107584</a>,
by James
Hilton-Balfe).</li>
<li>Fix bug where <code>ParamSpec(default=...)</code> would raise a
<code>TypeError</code> on Python
versions &lt;3.11. Patch by James Hilton-Balfe</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/python/typing_extensions/commit/c17c499b865585458bc334a1f895ebaedd2ab854"><code>c17c499</code></a>
Prepare release 4.8.0 (<a
href="https://redirect.github.com/python/typing_extensions/issues/283">#283</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/df9e322f2d9cb66d936fbfeac524b5989b78cfd5"><code>df9e322</code></a>
Run tests on py312 for more third-party projects (<a
href="https://redirect.github.com/python/typing_extensions/issues/281">#281</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/7e294992dfe3070b3ca228555fa3887001ceaab2"><code>7e29499</code></a>
Release 4.8.0rc1 (<a
href="https://redirect.github.com/python/typing_extensions/issues/280">#280</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/ca2a739574fb259f156faba005aaa802e6f19faa"><code>ca2a739</code></a>
Add Doc from PEP 727: <a
href="https://peps.python.org/pep-0727/">https://peps.python.org/pep-0727/</a>
(<a
href="https://redirect.github.com/python/typing_extensions/issues/277">#277</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/13c9484f10f5f4b3ac995c49c06cef42d847723c"><code>13c9484</code></a>
Fix ParamSpec ellipsis default for &lt;3.10 (<a
href="https://redirect.github.com/python/typing_extensions/issues/279">#279</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/4705e747b8380ce466d81b132134bd4ed399eb45"><code>4705e74</code></a>
Improve documentation (<a
href="https://redirect.github.com/python/typing_extensions/issues/278">#278</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/99fa708df2af1ab5ecde47968d71dc5b0447fc5d"><code>99fa708</code></a>
Backport CPython PR 107584 (<a
href="https://redirect.github.com/python/typing_extensions/issues/275">#275</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/688fbd2545944c9c36a0d08084e7c92642a81751"><code>688fbd2</code></a>
Revert &quot;Skip running <code>cattrs</code> tests on PyPy (<a
href="https://redirect.github.com/python/typing_extensions/issues/272">#272</a>)&quot;
(<a
href="https://redirect.github.com/python/typing_extensions/issues/273">#273</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/8dfa0a5dc31b298252d001304b9107be76e4de4c"><code>8dfa0a5</code></a>
Skip running <code>cattrs</code> tests on PyPy (<a
href="https://redirect.github.com/python/typing_extensions/issues/272">#272</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/7bb3f3fca39d477b2bb04f64ff5ea2cc14383e51"><code>7bb3f3f</code></a>
Fix third-party workflow (<a
href="https://redirect.github.com/python/typing_extensions/issues/269">#269</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/python/typing_extensions/compare/4.7.1...4.8.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=typing-extensions&package-manager=pip&previous-version=4.7.1&new-version=4.8.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

You can trigger a rebase of this PR by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

> **Note**
> Automatic rebases have been disabled on this pull request as it has
been open for over 30 days.

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
--------------------
Commit message for microsoft/vscode-python@473de33f84fc649f99b1ae4692ecf0653f5d2d8c:

Ensure Python environment defined in `python.defaultInterpreterPath` is returned via discovery API (microsoft/vscode-python#22389)

Closes https://github.com/microsoft/vscode-python/issues/22268

Even when it is not the active interpreter for any workspace, it's still
a known environment which users could consider selecting.
--------------------
Commit message for microsoft/vscode-python@7aefb217ce836d865bdc170c8ef3427549aeac17:

Remove unused packages from `package.json` (microsoft/vscode-python#22386)

closes: https://github.com/microsoft/vscode-python/issues/16840
--------------------
Commit message for microsoft/vscode-python@b65ea3baa48c7ebd2af8e16c7eaf8a33f8d9bd87:

Use nox to install packages (microsoft/vscode-python#22381)


--------------------
Commit message for microsoft/vscode-python@a7262b8d9071c34ccd0dffb4d0fad48092411b31:

Do not prefer Microsoft store interpreter over other global interpreters when auto-selecting (microsoft/vscode-python#22380)

Closes https://github.com/microsoft/vscode-python/issues/22364

Do not compare two global interpreters using their kinds.
--------------------
Commit message for microsoft/vscode-python@b4f06c9e71c8e066d6df3dd787c7880439c4e41b:

Use python test runner for extension python tests (microsoft/vscode-python#22385)

closes https://github.com/microsoft/vscode-python/issues/9051
--------------------
Commit message for microsoft/vscode-python@ed6f4601b21013c1c0d750c751e935439136c44e:

Remove deprecated settings (microsoft/vscode-python#22377)


--------------------
Commit message for microsoft/vscode-python@6d2ab8e063bf3155ca56f782bb43fae84f15c9e0:

Update main version to next pre-release (microsoft/vscode-python#22379)


--------------------
Commit message for microsoft/vscode-python@2ea45befd3a8b5aacf8c92505e9e039f9d13871b:

Update version for release candidate (microsoft/vscode-python#22378)


--------------------
Commit message for microsoft/vscode-python@183a52922661a1d931858c81c6643227ec8ffc86:

allow -v, -f, -q, --local in unittest args (microsoft/vscode-python#22357)

fixes https://github.com/microsoft/vscode-python/issues/22343
--------------------
Commit message for microsoft/vscode-python@93bf5cc2dd89ea98f70c1f85a8a32989e4e635af:

Handle localized shells when powershell execution is disabled (microsoft/vscode-python#22360)

Closes https://github.com/microsoft/vscode-python/issues/22352
--------------------
Commit message for microsoft/vscode-python@56a88b8b885227d04f07eeda47ee7332acaf9fc4:

Trim ends before add lines to logs from create env output (microsoft/vscode-python#22358)

closes https://github.com/microsoft/vscode-python/issues/22321
--------------------
Commit message for microsoft/vscode-python@71a451cb4f7cb6a2e0b192ad0ed4d1ec202a001c:

Save env vars at first pytest hook to ensure theyre unedited (microsoft/vscode-python#22344)

fixes https://github.com/microsoft/vscode-python/issues/22192.

Now, all environment variables are accessed during the
pytest_load_initial_conftests hook and then saved as global variables in
the plugin. This ensures the port and uuid will still be saved even if a
user safely or unsafely clears their environment variables during
testing.

---------

Co-authored-by: Karthik Nadig <kanadig@microsoft.com>
--------------------
Commit message for microsoft/vscode-python@c2dec146b9fe53af641ed217c4a567735d4d2d32:

Update warning for the deprecated settings in python (microsoft/vscode-python#22345)

close https://github.com/microsoft/vscode-python/issues/22272
--------------------
Commit message for microsoft/vscode-python@fe229588a6626800e26299aa0c27d0be03698016:

Fix powershell core activation if executing scripts is not supported (microsoft/vscode-python#22350)

Closes https://github.com/microsoft/vscode-python/issues/22252
--------------------
Commit message for microsoft/vscode-python@26b6255420750510bbe50d926835e7064469e920:

fix small logging issues for testing deprecation & duplicate log (microsoft/vscode-python#22349)

fixes https://github.com/microsoft/vscode-python/issues/22327
--------------------
Commit message for microsoft/vscode-python@e6046877f9679641dea61484e6ba4ea62b454591:

Correct condition when logging whether shell integration is active (microsoft/vscode-python#22347)

Introduced by https://github.com/microsoft/vscode-python/pull/22346
--------------------
Commit message for microsoft/vscode-python@b46e1a6ba3c1e6ecb7e847ebbf190f5217df385b:

Log whether shell integration is active (microsoft/vscode-python#22346)

For microsoft/vscode-python#20950
--------------------
Commit message for microsoft/vscode-python@bcb10251f3479cf3dd89b1f79a96bb1cbdfcbd13:

Bump actions/setup-node from 3 to 4 in /.github/actions/build-vsix (microsoft/vscode-python#22296)

Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3
to 4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/actions/setup-node/releases">actions/setup-node's
releases</a>.</em></p>
<blockquote>
<h2>v4.0.0</h2>
<h2>What's Changed</h2>
<p>In scope of this release we changed version of node runtime for
action from node16 to node20 and updated dependencies in <a
href="https://redirect.github.com/actions/setup-node/pull/866">actions/setup-node#866</a></p>
<p>Besides, release contains such changes as:</p>
<ul>
<li>Upgrade actions/checkout to v4 by <a
href="https://github.com/gmembre-zenika"><code>@​gmembre-zenika</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/868">actions/setup-node#868</a></li>
<li>Update actions/checkout for documentation and yaml by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/876">actions/setup-node#876</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/gmembre-zenika"><code>@​gmembre-zenika</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/setup-node/pull/868">actions/setup-node#868</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v4.0.0">https://github.com/actions/setup-node/compare/v3...v4.0.0</a></p>
<h2>v3.8.2</h2>
<h2>What's Changed</h2>
<ul>
<li>Update semver by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/861">actions/setup-node#861</a></li>
<li>Update temp directory creation by <a
href="https://github.com/nikolai-laevskii"><code>@​nikolai-laevskii</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/859">actions/setup-node#859</a></li>
<li>Bump <code>@​babel/traverse</code> from 7.15.4 to 7.23.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/870">actions/setup-node#870</a></li>
<li>Add notice about binaries not being updated yet by <a
href="https://github.com/nikolai-laevskii"><code>@​nikolai-laevskii</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/872">actions/setup-node#872</a></li>
<li>Update toolkit cache and core by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
and <a
href="https://github.com/seongwon-privatenote"><code>@​seongwon-privatenote</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/875">actions/setup-node#875</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v3.8.2">https://github.com/actions/setup-node/compare/v3...v3.8.2</a></p>
<h2>v3.8.1</h2>
<h2>What's Changed</h2>
<p>In scope of this release, the filter was removed within the
cache-save step by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/831">actions/setup-node#831</a>.
It is filtered and checked in the toolkit/cache library.</p>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v3.8.1">https://github.com/actions/setup-node/compare/v3...v3.8.1</a></p>
<h2>v3.8.0</h2>
<h2>What's Changed</h2>
<h3>Bug fixes:</h3>
<ul>
<li>Add check for existing paths by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/803">actions/setup-node#803</a></li>
<li>Resolve SymbolicLink by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/809">actions/setup-node#809</a></li>
<li>Change passing logic for cache input by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/816">actions/setup-node#816</a></li>
<li>Fix armv7 cache issue by <a
href="https://github.com/louislam"><code>@​louislam</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/794">actions/setup-node#794</a></li>
<li>Update check-dist workflow name by <a
href="https://github.com/sinchang"><code>@​sinchang</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/710">actions/setup-node#710</a></li>
</ul>
<h3>Feature implementations:</h3>
<ul>
<li>feat: handling the case where &quot;node&quot; is used for
tool-versions file. by <a
href="https://github.com/xytis"><code>@​xytis</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/812">actions/setup-node#812</a></li>
</ul>
<h3>Documentation changes:</h3>
<ul>
<li>Refer to semver package name in README.md by <a
href="https://github.com/olleolleolle"><code>@​olleolleolle</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/808">actions/setup-node#808</a></li>
</ul>
<h3>Update dependencies:</h3>
<ul>
<li>Update toolkit cache to fix zstd by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/804">actions/setup-node#804</a></li>
<li>Bump tough-cookie and <code>@​azure/ms-rest-js</code> by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/802">actions/setup-node#802</a></li>
<li>Bump semver from 6.1.2 to 6.3.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/807">actions/setup-node#807</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/actions/setup-node/commit/8f152de45cc393bb48ce5d89d36b731f54556e65"><code>8f152de</code></a>
Update actions/checkout for documentation and yaml (<a
href="https://redirect.github.com/actions/setup-node/issues/876">#876</a>)</li>
<li><a
href="https://github.com/actions/setup-node/commit/23755b521f87533c8ed7f8fb13674f9021579e34"><code>23755b5</code></a>
upgrade actions/checkout to v4 (<a
href="https://redirect.github.com/actions/setup-node/issues/868">#868</a>)</li>
<li><a
href="https://github.com/actions/setup-node/commit/54534a2a9ba7308e8a8995af3104899e6a95b681"><code>54534a2</code></a>
Change node version for action to node20 (<a
href="https://redirect.github.com/actions/setup-node/issues/866">#866</a>)</li>
<li>See full diff in <a
href="https://github.com/actions/setup-node/compare/v3...v4">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/setup-node&package-manager=github_actions&previous-version=3&new-version=4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
--------------------
Commit message for microsoft/vscode-python@c9944e7b5a05c81992c9c936c1588327cdaf8739:

Bump actions/setup-node from 3 to 4 in /.github/actions/lint (microsoft/vscode-python#22297)

Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3
to 4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/actions/setup-node/releases">actions/setup-node's
releases</a>.</em></p>
<blockquote>
<h2>v4.0.0</h2>
<h2>What's Changed</h2>
<p>In scope of this release we changed version of node runtime for
action from node16 to node20 and updated dependencies in <a
href="https://redirect.github.com/actions/setup-node/pull/866">actions/setup-node#866</a></p>
<p>Besides, release contains such changes as:</p>
<ul>
<li>Upgrade actions/checkout to v4 by <a
href="https://github.com/gmembre-zenika"><code>@​gmembre-zenika</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/868">actions/setup-node#868</a></li>
<li>Update actions/checkout for documentation and yaml by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/876">actions/setup-node#876</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/gmembre-zenika"><code>@​gmembre-zenika</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/setup-node/pull/868">actions/setup-node#868</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v4.0.0">https://github.com/actions/setup-node/compare/v3...v4.0.0</a></p>
<h2>v3.8.2</h2>
<h2>What's Changed</h2>
<ul>
<li>Update semver by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/861">actions/setup-node#861</a></li>
<li>Update temp directory creation by <a
href="https://github.com/nikolai-laevskii"><code>@​nikolai-laevskii</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/859">actions/setup-node#859</a></li>
<li>Bump <code>@​babel/traverse</code> from 7.15.4 to 7.23.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/870">actions/setup-node#870</a></li>
<li>Add notice about binaries not being updated yet by <a
href="https://github.com/nikolai-laevskii"><code>@​nikolai-laevskii</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/872">actions/setup-node#872</a></li>
<li>Update toolkit cache and core by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
and <a
href="https://github.com/seongwon-privatenote"><code>@​seongwon-privatenote</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/875">actions/setup-node#875</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v3.8.2">https://github.com/actions/setup-node/compare/v3...v3.8.2</a></p>
<h2>v3.8.1</h2>
<h2>What's Changed</h2>
<p>In scope of this release, the filter was removed within the
cache-save step by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/831">actions/setup-node#831</a>.
It is filtered and checked in the toolkit/cache library.</p>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v3.8.1">https://github.com/actions/setup-node/compare/v3...v3.8.1</a></p>
<h2>v3.8.0</h2>
<h2>What's Changed</h2>
<h3>Bug fixes:</h3>
<ul>
<li>Add check for existing paths by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/803">actions/setup-node#803</a></li>
<li>Resolve SymbolicLink by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/809">actions/setup-node#809</a></li>
<li>Change passing logic for cache input by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/816">actions/setup-node#816</a></li>
<li>Fix armv7 cache issue by <a
href="https://github.com/louislam"><code>@​louislam</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/794">actions/setup-node#794</a></li>
<li>Update check-dist workflow name by <a
href="https://github.com/sinchang"><code>@​sinchang</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/710">actions/setup-node#710</a></li>
</ul>
<h3>Feature implementations:</h3>
<ul>
<li>feat: handling the case where &quot;node&quot; is used for
tool-versions file. by <a
href="https://github.com/xytis"><code>@​xytis</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/812">actions/setup-node#812</a></li>
</ul>
<h3>Documentation changes:</h3>
<ul>
<li>Refer to semver package name in README.md by <a
href="https://github.com/olleolleolle"><code>@​olleolleolle</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/808">actions/setup-node#808</a></li>
</ul>
<h3>Update dependencies:</h3>
<ul>
<li>Update toolkit cache to fix zstd by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/804">actions/setup-node#804</a></li>
<li>Bump tough-cookie and <code>@​azure/ms-rest-js</code> by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/802">actions/setup-node#802</a></li>
<li>Bump semver from 6.1.2 to 6.3.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/807">actions/setup-node#807</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/actions/setup-node/commit/8f152de45cc393bb48ce5d89d36b731f54556e65"><code>8f152de</code></a>
Update actions/checkout for documentation and yaml (<a
href="https://redirect.github.com/actions/setup-node/issues/876">#876</a>)</li>
<li><a
href="https://github.com/actions/setup-node/commit/23755b521f87533c8ed7f8fb13674f9021579e34"><code>23755b5</code></a>
upgrade actions/checkout to v4 (<a
href="https://redirect.github.com/actions/setup-node/issues/868">#868</a>)</li>
<li><a
href="https://github.com/actions/setup-node/commit/54534a2a9ba7308e8a8995af3104899e6a95b681"><code>54534a2</code></a>
Change node version for action to node20 (<a
href="https://redirect.github.com/actions/setup-node/issues/866">#866</a>)</li>
<li>See full diff in <a
href="https://github.com/actions/setup-node/compare/v3...v4">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/setup-node&package-manager=github_actions&previous-version=3&new-version=4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
--------------------
Commit message for microsoft/vscode-python@fa0d02b8358efb02f12fd24bc2560ec9926c77ce:

Bump actions/setup-node from 3 to 4 (microsoft/vscode-python#22298)

Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3
to 4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/actions/setup-node/releases">actions/setup-node's
releases</a>.</em></p>
<blockquote>
<h2>v4.0.0</h2>
<h2>What's Changed</h2>
<p>In scope of this release we changed version of node runtime for
action from node16 to node20 and updated dependencies in <a
href="https://redirect.github.com/actions/setup-node/pull/866">actions/setup-node#866</a></p>
<p>Besides, release contains such changes as:</p>
<ul>
<li>Upgrade actions/checkout to v4 by <a
href="https://github.com/gmembre-zenika"><code>@​gmembre-zenika</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/868">actions/setup-node#868</a></li>
<li>Update actions/checkout for documentation and yaml by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/876">actions/setup-node#876</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/gmembre-zenika"><code>@​gmembre-zenika</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/setup-node/pull/868">actions/setup-node#868</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v4.0.0">https://github.com/actions/setup-node/compare/v3...v4.0.0</a></p>
<h2>v3.8.2</h2>
<h2>What's Changed</h2>
<ul>
<li>Update semver by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/861">actions/setup-node#861</a></li>
<li>Update temp directory creation by <a
href="https://github.com/nikolai-laevskii"><code>@​nikolai-laevskii</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/859">actions/setup-node#859</a></li>
<li>Bump <code>@​babel/traverse</code> from 7.15.4 to 7.23.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/870">actions/setup-node#870</a></li>
<li>Add notice about binaries not being updated yet by <a
href="https://github.com/nikolai-laevskii"><code>@​nikolai-laevskii</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/872">actions/setup-node#872</a></li>
<li>Update toolkit cache and core by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
and <a
href="https://github.com/seongwon-privatenote"><code>@​seongwon-privatenote</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/875">actions/setup-node#875</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v3.8.2">https://github.com/actions/setup-node/compare/v3...v3.8.2</a></p>
<h2>v3.8.1</h2>
<h2>What's Changed</h2>
<p>In scope of this release, the filter was removed within the
cache-save step by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/831">actions/setup-node#831</a>.
It is filtered and checked in the toolkit/cache library.</p>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v3.8.1">https://github.com/actions/setup-node/compare/v3...v3.8.1</a></p>
<h2>v3.8.0</h2>
<h2>What's Changed</h2>
<h3>Bug fixes:</h3>
<ul>
<li>Add check for existing paths by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/803">actions/setup-node#803</a></li>
<li>Resolve SymbolicLink by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/809">actions/setup-node#809</a></li>
<li>Change passing logic for cache input by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/816">actions/setup-node#816</a></li>
<li>Fix armv7 cache issue by <a
href="https://github.com/louislam"><code>@​louislam</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/794">actions/setup-node#794</a></li>
<li>Update check-dist workflow name by <a
href="https://github.com/sinchang"><code>@​sinchang</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/710">actions/setup-node#710</a></li>
</ul>
<h3>Feature implementations:</h3>
<ul>
<li>feat: handling the case where &quot;node&quot; is used for
tool-versions file. by <a
href="https://github.com/xytis"><code>@​xytis</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/812">actions/setup-node#812</a></li>
</ul>
<h3>Documentation changes:</h3>
<ul>
<li>Refer to semver package name in README.md by <a
href="https://github.com/olleolleolle"><code>@​olleolleolle</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/808">actions/setup-node#808</a></li>
</ul>
<h3>Update dependencies:</h3>
<ul>
<li>Update toolkit cache to fix zstd by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/804">actions/setup-node#804</a></li>
<li>Bump tough-cookie and <code>@​azure/ms-rest-js</code> by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/802">actions/setup-node#802</a></li>
<li>Bump semver from 6.1.2 to 6.3.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/807">actions/setup-node#807</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/actions/setup-node/commit/8f152de45cc393bb48ce5d89d36b731f54556e65"><code>8f152de</code></a>
Update actions/checkout for documentation and yaml (<a
href="https://redirect.github.com/actions/setup-node/issues/876">#876</a>)</li>
<li><a
href="https://github.com/actions/setup-node/commit/23755b521f87533c8ed7f8fb13674f9021579e34"><code>23755b5</code></a>
upgrade actions/checkout to v4 (<a
href="https://redirect.github.com/actions/setup-node/issues/868">#868</a>)</li>
<li><a
href="https://github.com/actions/setup-node/commit/54534a2a9ba7308e8a8995af3104899e6a95b681"><code>54534a2</code></a>
Change node version for action to node20 (<a
href="https://redirect.github.com/actions/setup-node/issues/866">#866</a>)</li>
<li>See full diff in <a
href="https://github.com/actions/setup-node/compare/v3...v4">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/setup-node&package-manager=github_actions&previous-version=3&new-version=4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
--------------------
Commit message for microsoft/vscode-python@10327096932620304a49db6d9742bac676c68b04:

Log commands when using raw process APIs directly (microsoft/vscode-python#22326)


--------------------
Commit message for microsoft/vscode-python@c3afea5984b3dc41b1b3bf2ce04142baaf381029:

Update linter and formatter warning notifications (microsoft/vscode-python#22292)

closes https://github.com/microsoft/vscode-python/issues/22272

---------

Co-authored-by: Luciana Abud <45497113+luabud@users.noreply.github.com>
--------------------
Commit message for microsoft/vscode-python@3c88f27697f4a4b1251146b27b34c56c454ff9c7:

Improve notification texts for terminal activation (microsoft/vscode-python#22323)

Closes https://github.com/microsoft/vscode-python/issues/22316
--------------------
Commit message for microsoft/vscode-python@9e07503d11442bfafb84108d0f0e339eb29c040f:

Use taskkill to kill processes on Windows (microsoft/vscode-python#22286)

For https://github.com/microsoft/vscode-python/issues/22285
--------------------
Commit message for microsoft/vscode-python@daab11d7bfdda996325a7b0ca691c84e7d0fea5e:

Only show terminal notification for basic terminals created using '+' icon (microsoft/vscode-python#22275)


--------------------
Commit message for microsoft/vscode-python@d75874110cbd53bae8a2e2b006814ad1fd21331a:

Add telemetry for deactivate prompt (microsoft/vscode-python#22274)


--------------------
Commit message for microsoft/vscode-python@f57be20d7af6c623774cd148f07ed77c31607ee7:

Support powershell activation even if Powershell execution is disabled on the system (microsoft/vscode-python#22273)

Closes https://github.com/microsoft/vscode-python/issues/22252

Error out if stderr is related to Powershell execution being disabled on
system, even though environment variables are returned in this case,
we've observed they're not valid in this case.
--------------------
Commit message for microsoft/vscode-python@802cf0c136fa30d5a4e69b6cee60e20fb650636d:

Reveal selection after editing deactivate script (microsoft/vscode-python#22271)


--------------------
Commit message for microsoft/vscode-python@63337522aa7bf207b1028323262693d1961a33a1:

add envFile's pythonpath before running tests (microsoft/vscode-python#22269)

fixes https://github.com/microsoft/vscode-python/issues/22231

---------

Co-authored-by: Karthik Nadig <kanadig@microsoft.com>
--------------------
Commit message for microsoft/vscode-python@043881397910818cf43b94b85fb3692a4735a14b:

Guide users to install workaround when deactivate command is run (microsoft/vscode-python#22223)


--------------------
Commit message for microsoft/vscode-python@a55484d3c3ccadfc5144c5aa48bdefcb803a1f97:

Fix for stack overflow on dispose (microsoft/vscode-python#22263)

Closes https://github.com/microsoft/vscode-python/issues/22261
--------------------
Commit message for microsoft/vscode-python@5d7eb6546b2c1e03c9c321410b79fed32f859624:

Remove linting support (microsoft/vscode-python#22266)


--------------------
Commit message for microsoft/vscode-python@c82702e584c01c9891007d792e55d0b48e8ea38a:

Add extra logging to PythonTestServer data received before parsed as json (microsoft/vscode-python#22265)

gives additional insight into cases where the data returned to the
extension occurs but tests are still not populating the UI.
--------------------
Commit message for microsoft/vscode-python@0ffce1999c5c611668c0dcc00eab6397a9f1f137:

Bump microvenv from 2023.3.post1 to 2023.5 (microsoft/vscode-python#22259)

Bumps [microvenv](https://github.com/brettcannon/microvenv) from
2023.3.post1 to 2023.5.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/brettcannon/microvenv/releases">microvenv's
releases</a>.</em></p>
<blockquote>
<h2>2023.5</h2>
<!-- raw HTML omitted -->
<h2>What's Changed</h2>
<h3>⚠️ Breaking Changes</h3>
<ul>
<li>Drop Python 3.7 by <a
href="https://github.com/brettcannon"><code>@​brettcannon</code></a> in
<a
href="https://redirect.github.com/brettcannon/microvenv/pull/58">brettcannon/microvenv#58</a></li>
</ul>
<h3>🎉 New Features</h3>
<ul>
<li>Get mypy passing under Windows by <a
href="https://github.com/brettcannon"><code>@​brettcannon</code></a> in
<a
href="https://redirect.github.com/brettcannon/microvenv/pull/58">brettcannon/microvenv#58</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/brettcannon/microvenv/compare/v2023.4...v2023.5">https://github.com/brettcannon/microvenv/compare/v2023.4...v2023.5</a></p>
<h2>2023.4</h2>
<!-- raw HTML omitted -->
<h2>What's Changed</h2>
<h3>🪲 Bug Fixes</h3>
<ul>
<li>Prevent <code>__main__.py</code> from attempting to execute on
Windows. by <a
href="https://github.com/brettcannon"><code>@​brettcannon</code></a> in
<a
href="https://redirect.github.com/brettcannon/microvenv/pull/57">brettcannon/microvenv#57</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/brettcannon/microvenv/compare/v2023.3.post1...v2023.4">https://github.com/brettcannon/microvenv/compare/v2023.3.post1...v2023.4</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/brettcannon/microvenv/commit/7cdcf908438fd1e8b2370624ec80a9ee44a597ec"><code>7cdcf90</code></a>
Get mypy passing under Windows (<a
href="https://redirect.github.com/brettcannon/microvenv/issues/58">#58</a>)</li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/d32ca9dc1be5e029d326a240eda5c8137b64009d"><code>d32ca9d</code></a>
Fix <code>.github/workflows/docs.yml</code> syntax</li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/ee3b599b2e15e0c409641ad4c8313c9a28f654d9"><code>ee3b599</code></a>
Prevent <code>__main__.py</code> from attempting to execute on Windows.
(<a
href="https://redirect.github.com/brettcannon/microvenv/issues/57">#57</a>)</li>
<li>See full diff in <a
href="https://github.com/brettcannon/microvenv/compare/v2023.3.post1...v2023.5">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=microvenv&package-manager=pip&previous-version=2023.3.post1&new-version=2023.5)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
--------------------
Commit message for microsoft/vscode-python@8becc7654d3765520b99b973fb61e696748daa66:

Remove unused text edit code (microsoft/vscode-python#22244)

This is part of removing the formatting support from the extension.
--------------------
Commit message for microsoft/vscode-python@7cb3593c1f998d109721f783a0b80ae878dd0164:

Remove unmatched parenthesis from error message (microsoft/vscode-python#22254)

Remove unmatched parenthesis from error message

closes: https://github.com/microsoft/vscode-python/issues/22253
--------------------
Commit message for microsoft/vscode-python@01c7665e37f4674a6a574d38f4f7af9344ec0485:

add correct retrieval of workspace adapter for test discovery in multiroot context (microsoft/vscode-python#22246)

fixes: https://github.com/microsoft/vscode-python/issues/22218
--------------------
Commit message for microsoft/vscode-python@4caa20735b4fa7832e3d62e884cbc04b482f2ad8:

add wrapper hook for pytest_runtest_protocol (microsoft/vscode-python#22243)

fixes https://github.com/microsoft/vscode-python/issues/22232. From
https://github.com/pytest-dev/pytest/discussions/11509, learned that
some pytest hooks are meant to be unique and only one will be called per
run. If multiple plugins are at play then another plugin the user has
might override our plugin. Added the hookwrapper so our is always run.
Same as https://github.com/microsoft/vscode-python/pull/22240
--------------------
Commit message for microsoft/vscode-python@44053a22aafaa4ae1d661f867b4735b237308a14:

add hookwrappers to pytest plugin to ensure run (microsoft/vscode-python#22240)

fixes https://github.com/microsoft/vscode-python/issues/22232. From
[this
discussion](https://github.com/pytest-dev/pytest/discussions/11509),
learned that some pytest hooks are meant to be unique and only one will
be called per run. If multiple plugins are at play then another plugin
the user has might override our plugin. Added the hookwrapper so our is
always run.
--------------------
Commit message for microsoft/vscode-python@754f8effa482d2e37a8dfba588da4d51374e2a63:

remove node deletion for error tolerant discovery (microsoft/vscode-python#22207)

helps with a part of
https://github.com/microsoft/vscode-python/issues/21757
--------------------
Commit message for microsoft/vscode-python@ebaf8fe0d587cfbc190bd89ad4d584c35ff57bd1:

Fix experiment telemetry related to optInto/optOutFrom settings (microsoft/vscode-python#22241)

cc/ @luabud
--------------------
Commit message for microsoft/vscode-python@10b98d34b51b501531ac21027fcab59b12c8e182:

Deprecate the log directory setting (microsoft/vscode-python#22236)


--------------------
Commit message for microsoft/vscode-python@f43826256703a40f76e1a93e677e72e5963689bc:

Add support for a tensorboard experiment (microsoft/vscode-python#22215)


--------------------
Commit message for microsoft/vscode-python@1310bd665d83bcd4e09903bff39ac841dafcad52:

Enable experiments for all tests (microsoft/vscode-python#22194)

Closes: microsoft/vscode-python#22193

Enables to opt into experiments for tests such as single workspace,
multi workspace, debugger, venv, etc.
--------------------
Commit message for microsoft/vscode-python@ed155afa4bf6acdbd0341d093b5a00e13237985e:

remove asserts from catchable code for testing (microsoft/vscode-python#22210)

some asserts were inside functions / mocking and with this then the
extension code catches the exception and doesn't error out as the test.
Bring the asserts out of the functions into the test so the asserts work
as expected.
--------------------
Commit message for microsoft/vscode-python@eada0f1ab940729ae335389c34899d64b56edd35:

Bump microvenv from 2023.2.0 to 2023.3.post1 (microsoft/vscode-python#22204)

Bumps [microvenv](https://github.com/brettcannon/microvenv) from
2023.2.0 to 2023.3.post1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/brettcannon/microvenv/releases">microvenv's
releases</a>.</em></p>
<blockquote>
<h2>2023.3.post1</h2>
<!-- raw HTML omitted -->
<h2>What's Changed</h2>
<h3>⚠️ Breaking Changes</h3>
<ul>
<li>Add support for <code>scm_ignore_files</code> (and restructure
project) by <a
href="https://github.com/brettcannon"><code>@​brettcannon</code></a> in
<a
href="https://redirect.github.com/brettcannon/microvenv/pull/44">brettcannon/microvenv#44</a></li>
</ul>
<h3>🎉 New Features</h3>
<ul>
<li>Add <code>IN_VIRTUAL_ENV</code> by <a
href="https://github.com/brettcannon"><code>@​brettcannon</code></a> in
<a
href="https://redirect.github.com/brettcannon/microvenv/pull/47">brettcannon/microvenv#47</a></li>
<li>Add <code>parse_config()</code> by <a
href="https://github.com/brettcannon"><code>@​brettcannon</code></a> in
<a
href="https://redirect.github.com/brettcannon/microvenv/pull/48">brettcannon/microvenv#48</a></li>
<li>Add <code>activation()</code> by <a
href="https://github.com/brettcannon"><code>@​brettcannon</code></a> in
<a
href="https://redirect.github.com/brettcannon/microvenv/pull/49">brettcannon/microvenv#49</a></li>
<li>Add type annotations by <a
href="https://github.com/brettcannon"><code>@​brettcannon</code></a> in
<a
href="https://redirect.github.com/brettcannon/microvenv/pull/50">brettcannon/microvenv#50</a></li>
<li>Add docs by <a
href="https://github.com/brettcannon"><code>@​brettcannon</code></a> in
<a
href="https://redirect.github.com/brettcannon/microvenv/pull/51">brettcannon/microvenv#51</a></li>
<li>Add support for Windows (except for <code>create()</code>) by <a
href="https://github.com/brettcannon"><code>@​brettcannon</code></a> in
<a
href="https://redirect.github.com/brettcannon/microvenv/pull/55">brettcannon/microvenv#55</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/brettcannon/microvenv/compare/v2023.2.0...v2023.3.post1">https://github.com/brettcannon/microvenv/compare/v2023.2.0...v2023.3.post1</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/brettcannon/microvenv/commit/bf19f920060bd636ce15a992a118ee6a255d15ac"><code>bf19f92</code></a>
Update the docs due to Windows support</li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/0c5436dcd8718ba353140e0b2c73327f247d3737"><code>0c5436d</code></a>
Fix <code>docs.yml</code></li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/00d43b4188867d407387f314444d2f0b557383ea"><code>00d43b4</code></a>
Update the version for release</li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/2e8d62ec1b9a4bdf57f32bf5aac807b661f176be"><code>2e8d62e</code></a>
Add a <code>release.yml</code> workflow</li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/7b9ca8aff40eda2495a130453b8586646398d157"><code>7b9ca8a</code></a>
Add support for Windows (except for <code>create()</code>) (<a
href="https://redirect.github.com/brettcannon/microvenv/issues/55">#55</a>)</li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/7085e42a4b8df4706a4395ff520617801726db22"><code>7085e42</code></a>
Drop CI path requirements</li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/f9dc600ebf4feb08486e406688297ce6d61734ab"><code>f9dc600</code></a>
Add mypy's stubtest to linting</li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/54e08f8b35b920b4211b706404f55075e9d16b09"><code>54e08f8</code></a>
Clarify that <code>_create.py</code> is self-contained</li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/3145fcbaa4a0bc36d832d155d17f34389b8a398e"><code>3145fcb</code></a>
Merge branch 'main' of github.com:brettcannon/microvenv</li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/6c0529e2b49469544829dbb50008c933e08cb44b"><code>6c0529e</code></a>
Drop the static HTML directory</li>
<li>Additional commits viewable in <a
href="https://github.com/brettcannon/microvenv/compare/v2023.2.0...v2023.3.post1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=microvenv&package-manager=pip&previous-version=2023.2.0&new-version=2023.3.post1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
--------------------
Commit message for microsoft/vscode-python@76ae73a46bea7e722bf43e4d5550b3d895066d90:

Skip setting `PYTHONUTF8` when activating terminals (microsoft/vscode-python#22213)

Closes https://github.com/microsoft/vscode-python/issues/22205
--------------------
Commit message for microsoft/vscode-python@bdb8efb9dd20cefd56a11687ed7f7dfc89f9f15d:

Try using `import` in webpack condition names (microsoft/vscode-python#22212)


--------------------
Commit message for microsoft/vscode-python@6c23e4335db10e900ea0ca2402e267322c3a2e69:

Handle white spaces for list along with dictionary (microsoft/vscode-python#22209)

Legacy normalization script leaves unnecessary white spaces for
dictionary as well as list. While there are multiple correct usage of it
such as for after a function, for more intuitive REPL experience. We
want to keep previous normalization style and white space format EXCEPT
for dictionary and list case.

Dictionary case is handled, but this is the PR to handle the elimination
of extra white spaces for list as well.
Closes: microsoft/vscode-python#22208
--------------------
Commit message for microsoft/vscode-python@ec001a0b1503555e685996baab8fda4f0648c454:

Fix for webpack warning with LSP types (microsoft/vscode-python#22211)


--------------------
Commit message for microsoft/vscode-python@9b5f58afc0acacacd45c035c4e1a78622944407d:

Add logging for failure to retrieve environment variables, testing rewrite (microsoft/vscode-python#22203)


--------------------
Commit message for microsoft/vscode-python@65c8ac6e3f272d76c9775ad1163a18c61d473119:

Remove formatting settings (microsoft/vscode-python#22202)

Closes https://github.com/microsoft/vscode-python/issues/22183
--------------------
Commit message for microsoft/vscode-python@d1e4562b64e38045f549ca00025c4620a6a89567:

Move tensorboard support into a separate extension (microsoft/vscode-python#22197)

* No need of experiments (if users install extension, then it works)
* If tensorboard extension is installed the we rely on tensorboard
extension to handle everything
* For final deplayment we can decide whether to just remove this feature
altogether or prompt users to install tensorboard extension or to go
with an experiment, for now I wanted to keep this super simple (this
shoudl not affect anyone as no one will have a tensorboard extension
except us)
* Simple private API for tensorboard extension, untill Python ext
exposes a stable API
    * API is similar to Jupyter, scoped to Tensorboard ext
--------------------
Commit message for microsoft/vscode-python@1dd8a4bdb16d0a7e79082c75d8eb55a142a48fc2:

switch testing output to test result panel (microsoft/vscode-python#22039)

closes https://github.com/microsoft/vscode-python/issues/21861 and
related issues

---------

Co-authored-by: Courtney Webster <60238438+cwebster-99@users.noreply.github.com>
--------------------
Commit message for microsoft/vscode-python@055a352285db83158be4374a2e57bdc48b28fda8:

Remove formatting support (microsoft/vscode-python#22196)


--------------------
Commit message for microsoft/vscode-python@75e707be42bf67aac316c900f7d095c1e21bae28:

Update LSP to latest version to support completion itemDefaults (microsoft/vscode-python#22200)

Dirk added this feature here:

https://github.com/microsoft/vscode-languageserver-node/commit/0b7acc15abd7132c9154d94140f478ccf5ba5769

We want to use this in Pylance in order to speedup completions. For the
degenerate case, this can speedup completion results by 30%.

See https://github.com/microsoft/pyrx/issues/4113 and
https://github.com/microsoft/pylance-release/issues/4919
--------------------
Commit message for microsoft/vscode-python@bc0c7144d586d5a7514921ddfc8cd495f1838ba1:

add clickable show logs on discovery error (microsoft/vscode-python#22199)

fixes https://github.com/microsoft/vscode-python/issues/22175
--------------------
Commit message for microsoft/vscode-python@56661a1576b93430953f249cda582eeef30ff543:

REPL Smart Shift+Enter and Dynamic Smart Cursor  (microsoft/vscode-python#21779)

There are two Feature Requests from: microsoft/vscode-python#18105 microsoft/vscode-python#21838 
They are grouped together to provide the smoothest experience: when user
wants to press shift+enter and smoothly move between each executable
Python code block without having to manually move their cursor.

#19955 (For Execute line/selection and advance to next line, referred to
as dynamic smart cursor hereby)
Open Issue: microsoft/vscode-python#21778 microsoft/vscode-python#21838

Steps in implementing REPL Smart Send (smart shift+enter to the REPL)
and dynamic cursor move aka. Move to Next Line (next executable line of
code to be more precise):

1. Figure out the workflow of where things start and run when user
clicks on run selection/line
2. Send the content of selection & document to the Python Side from
Typescript side.
3. Respect and follow previous logic/code for EXPLICIT selection (user
has highlighting particular text they want to send to REPL), but
otherwise, use newly created smart send code.
4. Receive content of document & selection in Python Side
5. Use AST (From Python standard library) to figu…
wesm pushed a commit to posit-dev/positron that referenced this issue Mar 28, 2024
… 2023.20

Merge pull request #244 from posit-dev/merge/upstream-2023.20

Merge upstream vscode-python 2023.20
--------------------
Commit message for posit-dev/positron-python@182a5a1b5c8ca577bea4b303224a2a92a78e8ce9:

Put back gulp installation path instead of nox

--------------------
Commit message for posit-dev/positron-python@bd64148cbb024a183cea2cdacd98c2d7cbf0008a:

Merge upstream 2023.20

--------------------
Commit message for microsoft/vscode-python@32ea534f7144fb1c9bd7502e91451e69f2fcd218:

remove new line chars from error text messages in testing rewrite (microsoft/vscode-python#22402)

fixes https://github.com/microsoft/vscode-python/issues/21512 where 2
extra new lines were seen at the end of an error message popup. Removing
these will restrict stop this from occurring.
--------------------
Commit message for microsoft/vscode-python@ff604ca9988420aefa4f66c1681e3d3374c5e03c:

Add cwd to error logs (microsoft/vscode-python#22387)

closes https://github.com/microsoft/vscode-python/issues/22359
--------------------
Commit message for microsoft/vscode-python@78052bd76e9922a983accd35a84f16c6d1d53f22:

Refactor get_node_path function to handle fspath greedy access  (microsoft/vscode-python#22384)

closes https://github.com/microsoft/vscode-python/issues/20830

---------

Co-authored-by: Karthik Nadig <kanadig@microsoft.com>
--------------------
Commit message for microsoft/vscode-python@491c2c8af29916136e0b6540b5d934bf448a51e3:

Bump typing-extensions from 4.7.1 to 4.8.0 (microsoft/vscode-python#22015)

Bumps [typing-extensions](https://github.com/python/typing_extensions)
from 4.7.1 to 4.8.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/python/typing_extensions/releases">typing-extensions's
releases</a>.</em></p>
<blockquote>
<h2>4.8.0</h2>
<p>Changes since 4.7.1:</p>
<ul>
<li>Add <code>typing_extensions.Doc</code>, as proposed by PEP 727.
Patch by
Sebastián Ramírez.</li>
<li>Drop support for Python 3.7 (including PyPy-3.7). Patch by Alex
Waygood.</li>
<li>Fix bug where <code>get_original_bases()</code> would return
incorrect results when
called on a concrete subclass of a generic class. Patch by Alex Waygood
(backporting <a
href="https://redirect.github.com/python/cpython/pull/107584">python/cpython#107584</a>,
by James
Hilton-Balfe).</li>
<li>Fix bug where <code>ParamSpec(default=...)</code> would raise a
<code>TypeError</code> on Python
versions &lt;3.11. Patch by James Hilton-Balfe</li>
</ul>
<p>No changes since 4.8.0rc1.</p>
<h2>4.8.0rc1</h2>
<ul>
<li>Add <code>typing_extensions.Doc</code>, as proposed by PEP 727.
Patch by
Sebastián Ramírez.</li>
<li>Drop support for Python 3.7 (including PyPy-3.7). Patch by Alex
Waygood.</li>
<li>Fix bug where <code>get_original_bases()</code> would return
incorrect results when
called on a concrete subclass of a generic class. Patch by Alex Waygood
(backporting <a
href="https://redirect.github.com/python/cpython/pull/107584">python/cpython#107584</a>,
by James
Hilton-Balfe).</li>
<li>Fix bug where <code>ParamSpec(default=...)</code> would raise a
<code>TypeError</code> on Python
versions &lt;3.11. Patch by James Hilton-Balfe</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/python/typing_extensions/blob/main/CHANGELOG.md">typing-extensions's
changelog</a>.</em></p>
<blockquote>
<h1>Release 4.8.0 (September 17, 2023)</h1>
<p>No changes since 4.8.0rc1.</p>
<h1>Release 4.8.0rc1 (September 7, 2023)</h1>
<ul>
<li>Add <code>typing_extensions.Doc</code>, as proposed by PEP 727.
Patch by
Sebastián Ramírez.</li>
<li>Drop support for Python 3.7 (including PyPy-3.7). Patch by Alex
Waygood.</li>
<li>Fix bug where <code>get_original_bases()</code> would return
incorrect results when
called on a concrete subclass of a generic class. Patch by Alex Waygood
(backporting <a
href="https://redirect.github.com/python/cpython/pull/107584">python/cpython#107584</a>,
by James
Hilton-Balfe).</li>
<li>Fix bug where <code>ParamSpec(default=...)</code> would raise a
<code>TypeError</code> on Python
versions &lt;3.11. Patch by James Hilton-Balfe</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/python/typing_extensions/commit/c17c499b865585458bc334a1f895ebaedd2ab854"><code>c17c499</code></a>
Prepare release 4.8.0 (<a
href="https://redirect.github.com/python/typing_extensions/issues/283">#283</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/df9e322f2d9cb66d936fbfeac524b5989b78cfd5"><code>df9e322</code></a>
Run tests on py312 for more third-party projects (<a
href="https://redirect.github.com/python/typing_extensions/issues/281">#281</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/7e294992dfe3070b3ca228555fa3887001ceaab2"><code>7e29499</code></a>
Release 4.8.0rc1 (<a
href="https://redirect.github.com/python/typing_extensions/issues/280">#280</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/ca2a739574fb259f156faba005aaa802e6f19faa"><code>ca2a739</code></a>
Add Doc from PEP 727: <a
href="https://peps.python.org/pep-0727/">https://peps.python.org/pep-0727/</a>
(<a
href="https://redirect.github.com/python/typing_extensions/issues/277">#277</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/13c9484f10f5f4b3ac995c49c06cef42d847723c"><code>13c9484</code></a>
Fix ParamSpec ellipsis default for &lt;3.10 (<a
href="https://redirect.github.com/python/typing_extensions/issues/279">#279</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/4705e747b8380ce466d81b132134bd4ed399eb45"><code>4705e74</code></a>
Improve documentation (<a
href="https://redirect.github.com/python/typing_extensions/issues/278">#278</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/99fa708df2af1ab5ecde47968d71dc5b0447fc5d"><code>99fa708</code></a>
Backport CPython PR 107584 (<a
href="https://redirect.github.com/python/typing_extensions/issues/275">#275</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/688fbd2545944c9c36a0d08084e7c92642a81751"><code>688fbd2</code></a>
Revert &quot;Skip running <code>cattrs</code> tests on PyPy (<a
href="https://redirect.github.com/python/typing_extensions/issues/272">#272</a>)&quot;
(<a
href="https://redirect.github.com/python/typing_extensions/issues/273">#273</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/8dfa0a5dc31b298252d001304b9107be76e4de4c"><code>8dfa0a5</code></a>
Skip running <code>cattrs</code> tests on PyPy (<a
href="https://redirect.github.com/python/typing_extensions/issues/272">#272</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/7bb3f3fca39d477b2bb04f64ff5ea2cc14383e51"><code>7bb3f3f</code></a>
Fix third-party workflow (<a
href="https://redirect.github.com/python/typing_extensions/issues/269">#269</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/python/typing_extensions/compare/4.7.1...4.8.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=typing-extensions&package-manager=pip&previous-version=4.7.1&new-version=4.8.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

You can trigger a rebase of this PR by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

> **Note**
> Automatic rebases have been disabled on this pull request as it has
been open for over 30 days.

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
--------------------
Commit message for microsoft/vscode-python@473de33f84fc649f99b1ae4692ecf0653f5d2d8c:

Ensure Python environment defined in `python.defaultInterpreterPath` is returned via discovery API (microsoft/vscode-python#22389)

Closes https://github.com/microsoft/vscode-python/issues/22268

Even when it is not the active interpreter for any workspace, it's still
a known environment which users could consider selecting.
--------------------
Commit message for microsoft/vscode-python@7aefb217ce836d865bdc170c8ef3427549aeac17:

Remove unused packages from `package.json` (microsoft/vscode-python#22386)

closes: https://github.com/microsoft/vscode-python/issues/16840
--------------------
Commit message for microsoft/vscode-python@b65ea3baa48c7ebd2af8e16c7eaf8a33f8d9bd87:

Use nox to install packages (microsoft/vscode-python#22381)


--------------------
Commit message for microsoft/vscode-python@a7262b8d9071c34ccd0dffb4d0fad48092411b31:

Do not prefer Microsoft store interpreter over other global interpreters when auto-selecting (microsoft/vscode-python#22380)

Closes https://github.com/microsoft/vscode-python/issues/22364

Do not compare two global interpreters using their kinds.
--------------------
Commit message for microsoft/vscode-python@b4f06c9e71c8e066d6df3dd787c7880439c4e41b:

Use python test runner for extension python tests (microsoft/vscode-python#22385)

closes https://github.com/microsoft/vscode-python/issues/9051
--------------------
Commit message for microsoft/vscode-python@ed6f4601b21013c1c0d750c751e935439136c44e:

Remove deprecated settings (microsoft/vscode-python#22377)


--------------------
Commit message for microsoft/vscode-python@6d2ab8e063bf3155ca56f782bb43fae84f15c9e0:

Update main version to next pre-release (microsoft/vscode-python#22379)


--------------------
Commit message for microsoft/vscode-python@2ea45befd3a8b5aacf8c92505e9e039f9d13871b:

Update version for release candidate (microsoft/vscode-python#22378)


--------------------
Commit message for microsoft/vscode-python@183a52922661a1d931858c81c6643227ec8ffc86:

allow -v, -f, -q, --local in unittest args (microsoft/vscode-python#22357)

fixes https://github.com/microsoft/vscode-python/issues/22343
--------------------
Commit message for microsoft/vscode-python@93bf5cc2dd89ea98f70c1f85a8a32989e4e635af:

Handle localized shells when powershell execution is disabled (microsoft/vscode-python#22360)

Closes https://github.com/microsoft/vscode-python/issues/22352
--------------------
Commit message for microsoft/vscode-python@56a88b8b885227d04f07eeda47ee7332acaf9fc4:

Trim ends before add lines to logs from create env output (microsoft/vscode-python#22358)

closes https://github.com/microsoft/vscode-python/issues/22321
--------------------
Commit message for microsoft/vscode-python@71a451cb4f7cb6a2e0b192ad0ed4d1ec202a001c:

Save env vars at first pytest hook to ensure theyre unedited (microsoft/vscode-python#22344)

fixes https://github.com/microsoft/vscode-python/issues/22192.

Now, all environment variables are accessed during the
pytest_load_initial_conftests hook and then saved as global variables in
the plugin. This ensures the port and uuid will still be saved even if a
user safely or unsafely clears their environment variables during
testing.

---------

Co-authored-by: Karthik Nadig <kanadig@microsoft.com>
--------------------
Commit message for microsoft/vscode-python@c2dec146b9fe53af641ed217c4a567735d4d2d32:

Update warning for the deprecated settings in python (microsoft/vscode-python#22345)

close https://github.com/microsoft/vscode-python/issues/22272
--------------------
Commit message for microsoft/vscode-python@fe229588a6626800e26299aa0c27d0be03698016:

Fix powershell core activation if executing scripts is not supported (microsoft/vscode-python#22350)

Closes https://github.com/microsoft/vscode-python/issues/22252
--------------------
Commit message for microsoft/vscode-python@26b6255420750510bbe50d926835e7064469e920:

fix small logging issues for testing deprecation & duplicate log (microsoft/vscode-python#22349)

fixes https://github.com/microsoft/vscode-python/issues/22327
--------------------
Commit message for microsoft/vscode-python@e6046877f9679641dea61484e6ba4ea62b454591:

Correct condition when logging whether shell integration is active (microsoft/vscode-python#22347)

Introduced by https://github.com/microsoft/vscode-python/pull/22346
--------------------
Commit message for microsoft/vscode-python@b46e1a6ba3c1e6ecb7e847ebbf190f5217df385b:

Log whether shell integration is active (microsoft/vscode-python#22346)

For microsoft/vscode-python#20950
--------------------
Commit message for microsoft/vscode-python@bcb10251f3479cf3dd89b1f79a96bb1cbdfcbd13:

Bump actions/setup-node from 3 to 4 in /.github/actions/build-vsix (microsoft/vscode-python#22296)

Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3
to 4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/actions/setup-node/releases">actions/setup-node's
releases</a>.</em></p>
<blockquote>
<h2>v4.0.0</h2>
<h2>What's Changed</h2>
<p>In scope of this release we changed version of node runtime for
action from node16 to node20 and updated dependencies in <a
href="https://redirect.github.com/actions/setup-node/pull/866">actions/setup-node#866</a></p>
<p>Besides, release contains such changes as:</p>
<ul>
<li>Upgrade actions/checkout to v4 by <a
href="https://github.com/gmembre-zenika"><code>@​gmembre-zenika</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/868">actions/setup-node#868</a></li>
<li>Update actions/checkout for documentation and yaml by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/876">actions/setup-node#876</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/gmembre-zenika"><code>@​gmembre-zenika</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/setup-node/pull/868">actions/setup-node#868</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v4.0.0">https://github.com/actions/setup-node/compare/v3...v4.0.0</a></p>
<h2>v3.8.2</h2>
<h2>What's Changed</h2>
<ul>
<li>Update semver by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/861">actions/setup-node#861</a></li>
<li>Update temp directory creation by <a
href="https://github.com/nikolai-laevskii"><code>@​nikolai-laevskii</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/859">actions/setup-node#859</a></li>
<li>Bump <code>@​babel/traverse</code> from 7.15.4 to 7.23.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/870">actions/setup-node#870</a></li>
<li>Add notice about binaries not being updated yet by <a
href="https://github.com/nikolai-laevskii"><code>@​nikolai-laevskii</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/872">actions/setup-node#872</a></li>
<li>Update toolkit cache and core by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
and <a
href="https://github.com/seongwon-privatenote"><code>@​seongwon-privatenote</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/875">actions/setup-node#875</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v3.8.2">https://github.com/actions/setup-node/compare/v3...v3.8.2</a></p>
<h2>v3.8.1</h2>
<h2>What's Changed</h2>
<p>In scope of this release, the filter was removed within the
cache-save step by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/831">actions/setup-node#831</a>.
It is filtered and checked in the toolkit/cache library.</p>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v3.8.1">https://github.com/actions/setup-node/compare/v3...v3.8.1</a></p>
<h2>v3.8.0</h2>
<h2>What's Changed</h2>
<h3>Bug fixes:</h3>
<ul>
<li>Add check for existing paths by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/803">actions/setup-node#803</a></li>
<li>Resolve SymbolicLink by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/809">actions/setup-node#809</a></li>
<li>Change passing logic for cache input by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/816">actions/setup-node#816</a></li>
<li>Fix armv7 cache issue by <a
href="https://github.com/louislam"><code>@​louislam</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/794">actions/setup-node#794</a></li>
<li>Update check-dist workflow name by <a
href="https://github.com/sinchang"><code>@​sinchang</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/710">actions/setup-node#710</a></li>
</ul>
<h3>Feature implementations:</h3>
<ul>
<li>feat: handling the case where &quot;node&quot; is used for
tool-versions file. by <a
href="https://github.com/xytis"><code>@​xytis</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/812">actions/setup-node#812</a></li>
</ul>
<h3>Documentation changes:</h3>
<ul>
<li>Refer to semver package name in README.md by <a
href="https://github.com/olleolleolle"><code>@​olleolleolle</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/808">actions/setup-node#808</a></li>
</ul>
<h3>Update dependencies:</h3>
<ul>
<li>Update toolkit cache to fix zstd by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/804">actions/setup-node#804</a></li>
<li>Bump tough-cookie and <code>@​azure/ms-rest-js</code> by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/802">actions/setup-node#802</a></li>
<li>Bump semver from 6.1.2 to 6.3.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/807">actions/setup-node#807</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/actions/setup-node/commit/8f152de45cc393bb48ce5d89d36b731f54556e65"><code>8f152de</code></a>
Update actions/checkout for documentation and yaml (<a
href="https://redirect.github.com/actions/setup-node/issues/876">#876</a>)</li>
<li><a
href="https://github.com/actions/setup-node/commit/23755b521f87533c8ed7f8fb13674f9021579e34"><code>23755b5</code></a>
upgrade actions/checkout to v4 (<a
href="https://redirect.github.com/actions/setup-node/issues/868">#868</a>)</li>
<li><a
href="https://github.com/actions/setup-node/commit/54534a2a9ba7308e8a8995af3104899e6a95b681"><code>54534a2</code></a>
Change node version for action to node20 (<a
href="https://redirect.github.com/actions/setup-node/issues/866">#866</a>)</li>
<li>See full diff in <a
href="https://github.com/actions/setup-node/compare/v3...v4">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/setup-node&package-manager=github_actions&previous-version=3&new-version=4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
--------------------
Commit message for microsoft/vscode-python@c9944e7b5a05c81992c9c936c1588327cdaf8739:

Bump actions/setup-node from 3 to 4 in /.github/actions/lint (microsoft/vscode-python#22297)

Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3
to 4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/actions/setup-node/releases">actions/setup-node's
releases</a>.</em></p>
<blockquote>
<h2>v4.0.0</h2>
<h2>What's Changed</h2>
<p>In scope of this release we changed version of node runtime for
action from node16 to node20 and updated dependencies in <a
href="https://redirect.github.com/actions/setup-node/pull/866">actions/setup-node#866</a></p>
<p>Besides, release contains such changes as:</p>
<ul>
<li>Upgrade actions/checkout to v4 by <a
href="https://github.com/gmembre-zenika"><code>@​gmembre-zenika</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/868">actions/setup-node#868</a></li>
<li>Update actions/checkout for documentation and yaml by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/876">actions/setup-node#876</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/gmembre-zenika"><code>@​gmembre-zenika</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/setup-node/pull/868">actions/setup-node#868</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v4.0.0">https://github.com/actions/setup-node/compare/v3...v4.0.0</a></p>
<h2>v3.8.2</h2>
<h2>What's Changed</h2>
<ul>
<li>Update semver by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/861">actions/setup-node#861</a></li>
<li>Update temp directory creation by <a
href="https://github.com/nikolai-laevskii"><code>@​nikolai-laevskii</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/859">actions/setup-node#859</a></li>
<li>Bump <code>@​babel/traverse</code> from 7.15.4 to 7.23.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/870">actions/setup-node#870</a></li>
<li>Add notice about binaries not being updated yet by <a
href="https://github.com/nikolai-laevskii"><code>@​nikolai-laevskii</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/872">actions/setup-node#872</a></li>
<li>Update toolkit cache and core by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
and <a
href="https://github.com/seongwon-privatenote"><code>@​seongwon-privatenote</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/875">actions/setup-node#875</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v3.8.2">https://github.com/actions/setup-node/compare/v3...v3.8.2</a></p>
<h2>v3.8.1</h2>
<h2>What's Changed</h2>
<p>In scope of this release, the filter was removed within the
cache-save step by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/831">actions/setup-node#831</a>.
It is filtered and checked in the toolkit/cache library.</p>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v3.8.1">https://github.com/actions/setup-node/compare/v3...v3.8.1</a></p>
<h2>v3.8.0</h2>
<h2>What's Changed</h2>
<h3>Bug fixes:</h3>
<ul>
<li>Add check for existing paths by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/803">actions/setup-node#803</a></li>
<li>Resolve SymbolicLink by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/809">actions/setup-node#809</a></li>
<li>Change passing logic for cache input by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/816">actions/setup-node#816</a></li>
<li>Fix armv7 cache issue by <a
href="https://github.com/louislam"><code>@​louislam</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/794">actions/setup-node#794</a></li>
<li>Update check-dist workflow name by <a
href="https://github.com/sinchang"><code>@​sinchang</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/710">actions/setup-node#710</a></li>
</ul>
<h3>Feature implementations:</h3>
<ul>
<li>feat: handling the case where &quot;node&quot; is used for
tool-versions file. by <a
href="https://github.com/xytis"><code>@​xytis</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/812">actions/setup-node#812</a></li>
</ul>
<h3>Documentation changes:</h3>
<ul>
<li>Refer to semver package name in README.md by <a
href="https://github.com/olleolleolle"><code>@​olleolleolle</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/808">actions/setup-node#808</a></li>
</ul>
<h3>Update dependencies:</h3>
<ul>
<li>Update toolkit cache to fix zstd by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/804">actions/setup-node#804</a></li>
<li>Bump tough-cookie and <code>@​azure/ms-rest-js</code> by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/802">actions/setup-node#802</a></li>
<li>Bump semver from 6.1.2 to 6.3.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/807">actions/setup-node#807</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/actions/setup-node/commit/8f152de45cc393bb48ce5d89d36b731f54556e65"><code>8f152de</code></a>
Update actions/checkout for documentation and yaml (<a
href="https://redirect.github.com/actions/setup-node/issues/876">#876</a>)</li>
<li><a
href="https://github.com/actions/setup-node/commit/23755b521f87533c8ed7f8fb13674f9021579e34"><code>23755b5</code></a>
upgrade actions/checkout to v4 (<a
href="https://redirect.github.com/actions/setup-node/issues/868">#868</a>)</li>
<li><a
href="https://github.com/actions/setup-node/commit/54534a2a9ba7308e8a8995af3104899e6a95b681"><code>54534a2</code></a>
Change node version for action to node20 (<a
href="https://redirect.github.com/actions/setup-node/issues/866">#866</a>)</li>
<li>See full diff in <a
href="https://github.com/actions/setup-node/compare/v3...v4">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/setup-node&package-manager=github_actions&previous-version=3&new-version=4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
--------------------
Commit message for microsoft/vscode-python@fa0d02b8358efb02f12fd24bc2560ec9926c77ce:

Bump actions/setup-node from 3 to 4 (microsoft/vscode-python#22298)

Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3
to 4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/actions/setup-node/releases">actions/setup-node's
releases</a>.</em></p>
<blockquote>
<h2>v4.0.0</h2>
<h2>What's Changed</h2>
<p>In scope of this release we changed version of node runtime for
action from node16 to node20 and updated dependencies in <a
href="https://redirect.github.com/actions/setup-node/pull/866">actions/setup-node#866</a></p>
<p>Besides, release contains such changes as:</p>
<ul>
<li>Upgrade actions/checkout to v4 by <a
href="https://github.com/gmembre-zenika"><code>@​gmembre-zenika</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/868">actions/setup-node#868</a></li>
<li>Update actions/checkout for documentation and yaml by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/876">actions/setup-node#876</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/gmembre-zenika"><code>@​gmembre-zenika</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/setup-node/pull/868">actions/setup-node#868</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v4.0.0">https://github.com/actions/setup-node/compare/v3...v4.0.0</a></p>
<h2>v3.8.2</h2>
<h2>What's Changed</h2>
<ul>
<li>Update semver by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/861">actions/setup-node#861</a></li>
<li>Update temp directory creation by <a
href="https://github.com/nikolai-laevskii"><code>@​nikolai-laevskii</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/859">actions/setup-node#859</a></li>
<li>Bump <code>@​babel/traverse</code> from 7.15.4 to 7.23.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/870">actions/setup-node#870</a></li>
<li>Add notice about binaries not being updated yet by <a
href="https://github.com/nikolai-laevskii"><code>@​nikolai-laevskii</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/872">actions/setup-node#872</a></li>
<li>Update toolkit cache and core by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
and <a
href="https://github.com/seongwon-privatenote"><code>@​seongwon-privatenote</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/875">actions/setup-node#875</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v3.8.2">https://github.com/actions/setup-node/compare/v3...v3.8.2</a></p>
<h2>v3.8.1</h2>
<h2>What's Changed</h2>
<p>In scope of this release, the filter was removed within the
cache-save step by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/831">actions/setup-node#831</a>.
It is filtered and checked in the toolkit/cache library.</p>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v3.8.1">https://github.com/actions/setup-node/compare/v3...v3.8.1</a></p>
<h2>v3.8.0</h2>
<h2>What's Changed</h2>
<h3>Bug fixes:</h3>
<ul>
<li>Add check for existing paths by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/803">actions/setup-node#803</a></li>
<li>Resolve SymbolicLink by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/809">actions/setup-node#809</a></li>
<li>Change passing logic for cache input by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/816">actions/setup-node#816</a></li>
<li>Fix armv7 cache issue by <a
href="https://github.com/louislam"><code>@​louislam</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/794">actions/setup-node#794</a></li>
<li>Update check-dist workflow name by <a
href="https://github.com/sinchang"><code>@​sinchang</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/710">actions/setup-node#710</a></li>
</ul>
<h3>Feature implementations:</h3>
<ul>
<li>feat: handling the case where &quot;node&quot; is used for
tool-versions file. by <a
href="https://github.com/xytis"><code>@​xytis</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/812">actions/setup-node#812</a></li>
</ul>
<h3>Documentation changes:</h3>
<ul>
<li>Refer to semver package name in README.md by <a
href="https://github.com/olleolleolle"><code>@​olleolleolle</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/808">actions/setup-node#808</a></li>
</ul>
<h3>Update dependencies:</h3>
<ul>
<li>Update toolkit cache to fix zstd by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/804">actions/setup-node#804</a></li>
<li>Bump tough-cookie and <code>@​azure/ms-rest-js</code> by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/802">actions/setup-node#802</a></li>
<li>Bump semver from 6.1.2 to 6.3.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/807">actions/setup-node#807</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/actions/setup-node/commit/8f152de45cc393bb48ce5d89d36b731f54556e65"><code>8f152de</code></a>
Update actions/checkout for documentation and yaml (<a
href="https://redirect.github.com/actions/setup-node/issues/876">#876</a>)</li>
<li><a
href="https://github.com/actions/setup-node/commit/23755b521f87533c8ed7f8fb13674f9021579e34"><code>23755b5</code></a>
upgrade actions/checkout to v4 (<a
href="https://redirect.github.com/actions/setup-node/issues/868">#868</a>)</li>
<li><a
href="https://github.com/actions/setup-node/commit/54534a2a9ba7308e8a8995af3104899e6a95b681"><code>54534a2</code></a>
Change node version for action to node20 (<a
href="https://redirect.github.com/actions/setup-node/issues/866">#866</a>)</li>
<li>See full diff in <a
href="https://github.com/actions/setup-node/compare/v3...v4">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/setup-node&package-manager=github_actions&previous-version=3&new-version=4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
--------------------
Commit message for microsoft/vscode-python@10327096932620304a49db6d9742bac676c68b04:

Log commands when using raw process APIs directly (microsoft/vscode-python#22326)


--------------------
Commit message for microsoft/vscode-python@c3afea5984b3dc41b1b3bf2ce04142baaf381029:

Update linter and formatter warning notifications (microsoft/vscode-python#22292)

closes https://github.com/microsoft/vscode-python/issues/22272

---------

Co-authored-by: Luciana Abud <45497113+luabud@users.noreply.github.com>
--------------------
Commit message for microsoft/vscode-python@3c88f27697f4a4b1251146b27b34c56c454ff9c7:

Improve notification texts for terminal activation (microsoft/vscode-python#22323)

Closes https://github.com/microsoft/vscode-python/issues/22316
--------------------
Commit message for microsoft/vscode-python@9e07503d11442bfafb84108d0f0e339eb29c040f:

Use taskkill to kill processes on Windows (microsoft/vscode-python#22286)

For https://github.com/microsoft/vscode-python/issues/22285
--------------------
Commit message for microsoft/vscode-python@daab11d7bfdda996325a7b0ca691c84e7d0fea5e:

Only show terminal notification for basic terminals created using '+' icon (microsoft/vscode-python#22275)


--------------------
Commit message for microsoft/vscode-python@d75874110cbd53bae8a2e2b006814ad1fd21331a:

Add telemetry for deactivate prompt (microsoft/vscode-python#22274)


--------------------
Commit message for microsoft/vscode-python@f57be20d7af6c623774cd148f07ed77c31607ee7:

Support powershell activation even if Powershell execution is disabled on the system (microsoft/vscode-python#22273)

Closes https://github.com/microsoft/vscode-python/issues/22252

Error out if stderr is related to Powershell execution being disabled on
system, even though environment variables are returned in this case,
we've observed they're not valid in this case.
--------------------
Commit message for microsoft/vscode-python@802cf0c136fa30d5a4e69b6cee60e20fb650636d:

Reveal selection after editing deactivate script (microsoft/vscode-python#22271)


--------------------
Commit message for microsoft/vscode-python@63337522aa7bf207b1028323262693d1961a33a1:

add envFile's pythonpath before running tests (microsoft/vscode-python#22269)

fixes https://github.com/microsoft/vscode-python/issues/22231

---------

Co-authored-by: Karthik Nadig <kanadig@microsoft.com>
--------------------
Commit message for microsoft/vscode-python@043881397910818cf43b94b85fb3692a4735a14b:

Guide users to install workaround when deactivate command is run (microsoft/vscode-python#22223)


--------------------
Commit message for microsoft/vscode-python@a55484d3c3ccadfc5144c5aa48bdefcb803a1f97:

Fix for stack overflow on dispose (microsoft/vscode-python#22263)

Closes https://github.com/microsoft/vscode-python/issues/22261
--------------------
Commit message for microsoft/vscode-python@5d7eb6546b2c1e03c9c321410b79fed32f859624:

Remove linting support (microsoft/vscode-python#22266)


--------------------
Commit message for microsoft/vscode-python@c82702e584c01c9891007d792e55d0b48e8ea38a:

Add extra logging to PythonTestServer data received before parsed as json (microsoft/vscode-python#22265)

gives additional insight into cases where the data returned to the
extension occurs but tests are still not populating the UI.
--------------------
Commit message for microsoft/vscode-python@0ffce1999c5c611668c0dcc00eab6397a9f1f137:

Bump microvenv from 2023.3.post1 to 2023.5 (microsoft/vscode-python#22259)

Bumps [microvenv](https://github.com/brettcannon/microvenv) from
2023.3.post1 to 2023.5.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/brettcannon/microvenv/releases">microvenv's
releases</a>.</em></p>
<blockquote>
<h2>2023.5</h2>
<!-- raw HTML omitted -->
<h2>What's Changed</h2>
<h3>⚠️ Breaking Changes</h3>
<ul>
<li>Drop Python 3.7 by <a
href="https://github.com/brettcannon"><code>@​brettcannon</code></a> in
<a
href="https://redirect.github.com/brettcannon/microvenv/pull/58">brettcannon/microvenv#58</a></li>
</ul>
<h3>🎉 New Features</h3>
<ul>
<li>Get mypy passing under Windows by <a
href="https://github.com/brettcannon"><code>@​brettcannon</code></a> in
<a
href="https://redirect.github.com/brettcannon/microvenv/pull/58">brettcannon/microvenv#58</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/brettcannon/microvenv/compare/v2023.4...v2023.5">https://github.com/brettcannon/microvenv/compare/v2023.4...v2023.5</a></p>
<h2>2023.4</h2>
<!-- raw HTML omitted -->
<h2>What's Changed</h2>
<h3>🪲 Bug Fixes</h3>
<ul>
<li>Prevent <code>__main__.py</code> from attempting to execute on
Windows. by <a
href="https://github.com/brettcannon"><code>@​brettcannon</code></a> in
<a
href="https://redirect.github.com/brettcannon/microvenv/pull/57">brettcannon/microvenv#57</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/brettcannon/microvenv/compare/v2023.3.post1...v2023.4">https://github.com/brettcannon/microvenv/compare/v2023.3.post1...v2023.4</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/brettcannon/microvenv/commit/7cdcf908438fd1e8b2370624ec80a9ee44a597ec"><code>7cdcf90</code></a>
Get mypy passing under Windows (<a
href="https://redirect.github.com/brettcannon/microvenv/issues/58">#58</a>)</li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/d32ca9dc1be5e029d326a240eda5c8137b64009d"><code>d32ca9d</code></a>
Fix <code>.github/workflows/docs.yml</code> syntax</li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/ee3b599b2e15e0c409641ad4c8313c9a28f654d9"><code>ee3b599</code></a>
Prevent <code>__main__.py</code> from attempting to execute on Windows.
(<a
href="https://redirect.github.com/brettcannon/microvenv/issues/57">#57</a>)</li>
<li>See full diff in <a
href="https://github.com/brettcannon/microvenv/compare/v2023.3.post1...v2023.5">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=microvenv&package-manager=pip&previous-version=2023.3.post1&new-version=2023.5)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
--------------------
Commit message for microsoft/vscode-python@8becc7654d3765520b99b973fb61e696748daa66:

Remove unused text edit code (microsoft/vscode-python#22244)

This is part of removing the formatting support from the extension.
--------------------
Commit message for microsoft/vscode-python@7cb3593c1f998d109721f783a0b80ae878dd0164:

Remove unmatched parenthesis from error message (microsoft/vscode-python#22254)

Remove unmatched parenthesis from error message

closes: https://github.com/microsoft/vscode-python/issues/22253
--------------------
Commit message for microsoft/vscode-python@01c7665e37f4674a6a574d38f4f7af9344ec0485:

add correct retrieval of workspace adapter for test discovery in multiroot context (microsoft/vscode-python#22246)

fixes: https://github.com/microsoft/vscode-python/issues/22218
--------------------
Commit message for microsoft/vscode-python@4caa20735b4fa7832e3d62e884cbc04b482f2ad8:

add wrapper hook for pytest_runtest_protocol (microsoft/vscode-python#22243)

fixes https://github.com/microsoft/vscode-python/issues/22232. From
https://github.com/pytest-dev/pytest/discussions/11509, learned that
some pytest hooks are meant to be unique and only one will be called per
run. If multiple plugins are at play then another plugin the user has
might override our plugin. Added the hookwrapper so our is always run.
Same as https://github.com/microsoft/vscode-python/pull/22240
--------------------
Commit message for microsoft/vscode-python@44053a22aafaa4ae1d661f867b4735b237308a14:

add hookwrappers to pytest plugin to ensure run (microsoft/vscode-python#22240)

fixes https://github.com/microsoft/vscode-python/issues/22232. From
[this
discussion](https://github.com/pytest-dev/pytest/discussions/11509),
learned that some pytest hooks are meant to be unique and only one will
be called per run. If multiple plugins are at play then another plugin
the user has might override our plugin. Added the hookwrapper so our is
always run.
--------------------
Commit message for microsoft/vscode-python@754f8effa482d2e37a8dfba588da4d51374e2a63:

remove node deletion for error tolerant discovery (microsoft/vscode-python#22207)

helps with a part of
https://github.com/microsoft/vscode-python/issues/21757
--------------------
Commit message for microsoft/vscode-python@ebaf8fe0d587cfbc190bd89ad4d584c35ff57bd1:

Fix experiment telemetry related to optInto/optOutFrom settings (microsoft/vscode-python#22241)

cc/ @luabud
--------------------
Commit message for microsoft/vscode-python@10b98d34b51b501531ac21027fcab59b12c8e182:

Deprecate the log directory setting (microsoft/vscode-python#22236)


--------------------
Commit message for microsoft/vscode-python@f43826256703a40f76e1a93e677e72e5963689bc:

Add support for a tensorboard experiment (microsoft/vscode-python#22215)


--------------------
Commit message for microsoft/vscode-python@1310bd665d83bcd4e09903bff39ac841dafcad52:

Enable experiments for all tests (microsoft/vscode-python#22194)

Closes: microsoft/vscode-python#22193

Enables to opt into experiments for tests such as single workspace,
multi workspace, debugger, venv, etc.
--------------------
Commit message for microsoft/vscode-python@ed155afa4bf6acdbd0341d093b5a00e13237985e:

remove asserts from catchable code for testing (microsoft/vscode-python#22210)

some asserts were inside functions / mocking and with this then the
extension code catches the exception and doesn't error out as the test.
Bring the asserts out of the functions into the test so the asserts work
as expected.
--------------------
Commit message for microsoft/vscode-python@eada0f1ab940729ae335389c34899d64b56edd35:

Bump microvenv from 2023.2.0 to 2023.3.post1 (microsoft/vscode-python#22204)

Bumps [microvenv](https://github.com/brettcannon/microvenv) from
2023.2.0 to 2023.3.post1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/brettcannon/microvenv/releases">microvenv's
releases</a>.</em></p>
<blockquote>
<h2>2023.3.post1</h2>
<!-- raw HTML omitted -->
<h2>What's Changed</h2>
<h3>⚠️ Breaking Changes</h3>
<ul>
<li>Add support for <code>scm_ignore_files</code> (and restructure
project) by <a
href="https://github.com/brettcannon"><code>@​brettcannon</code></a> in
<a
href="https://redirect.github.com/brettcannon/microvenv/pull/44">brettcannon/microvenv#44</a></li>
</ul>
<h3>🎉 New Features</h3>
<ul>
<li>Add <code>IN_VIRTUAL_ENV</code> by <a
href="https://github.com/brettcannon"><code>@​brettcannon</code></a> in
<a
href="https://redirect.github.com/brettcannon/microvenv/pull/47">brettcannon/microvenv#47</a></li>
<li>Add <code>parse_config()</code> by <a
href="https://github.com/brettcannon"><code>@​brettcannon</code></a> in
<a
href="https://redirect.github.com/brettcannon/microvenv/pull/48">brettcannon/microvenv#48</a></li>
<li>Add <code>activation()</code> by <a
href="https://github.com/brettcannon"><code>@​brettcannon</code></a> in
<a
href="https://redirect.github.com/brettcannon/microvenv/pull/49">brettcannon/microvenv#49</a></li>
<li>Add type annotations by <a
href="https://github.com/brettcannon"><code>@​brettcannon</code></a> in
<a
href="https://redirect.github.com/brettcannon/microvenv/pull/50">brettcannon/microvenv#50</a></li>
<li>Add docs by <a
href="https://github.com/brettcannon"><code>@​brettcannon</code></a> in
<a
href="https://redirect.github.com/brettcannon/microvenv/pull/51">brettcannon/microvenv#51</a></li>
<li>Add support for Windows (except for <code>create()</code>) by <a
href="https://github.com/brettcannon"><code>@​brettcannon</code></a> in
<a
href="https://redirect.github.com/brettcannon/microvenv/pull/55">brettcannon/microvenv#55</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/brettcannon/microvenv/compare/v2023.2.0...v2023.3.post1">https://github.com/brettcannon/microvenv/compare/v2023.2.0...v2023.3.post1</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/brettcannon/microvenv/commit/bf19f920060bd636ce15a992a118ee6a255d15ac"><code>bf19f92</code></a>
Update the docs due to Windows support</li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/0c5436dcd8718ba353140e0b2c73327f247d3737"><code>0c5436d</code></a>
Fix <code>docs.yml</code></li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/00d43b4188867d407387f314444d2f0b557383ea"><code>00d43b4</code></a>
Update the version for release</li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/2e8d62ec1b9a4bdf57f32bf5aac807b661f176be"><code>2e8d62e</code></a>
Add a <code>release.yml</code> workflow</li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/7b9ca8aff40eda2495a130453b8586646398d157"><code>7b9ca8a</code></a>
Add support for Windows (except for <code>create()</code>) (<a
href="https://redirect.github.com/brettcannon/microvenv/issues/55">#55</a>)</li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/7085e42a4b8df4706a4395ff520617801726db22"><code>7085e42</code></a>
Drop CI path requirements</li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/f9dc600ebf4feb08486e406688297ce6d61734ab"><code>f9dc600</code></a>
Add mypy's stubtest to linting</li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/54e08f8b35b920b4211b706404f55075e9d16b09"><code>54e08f8</code></a>
Clarify that <code>_create.py</code> is self-contained</li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/3145fcbaa4a0bc36d832d155d17f34389b8a398e"><code>3145fcb</code></a>
Merge branch 'main' of github.com:brettcannon/microvenv</li>
<li><a
href="https://github.com/brettcannon/microvenv/commit/6c0529e2b49469544829dbb50008c933e08cb44b"><code>6c0529e</code></a>
Drop the static HTML directory</li>
<li>Additional commits viewable in <a
href="https://github.com/brettcannon/microvenv/compare/v2023.2.0...v2023.3.post1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=microvenv&package-manager=pip&previous-version=2023.2.0&new-version=2023.3.post1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
--------------------
Commit message for microsoft/vscode-python@76ae73a46bea7e722bf43e4d5550b3d895066d90:

Skip setting `PYTHONUTF8` when activating terminals (microsoft/vscode-python#22213)

Closes https://github.com/microsoft/vscode-python/issues/22205
--------------------
Commit message for microsoft/vscode-python@bdb8efb9dd20cefd56a11687ed7f7dfc89f9f15d:

Try using `import` in webpack condition names (microsoft/vscode-python#22212)


--------------------
Commit message for microsoft/vscode-python@6c23e4335db10e900ea0ca2402e267322c3a2e69:

Handle white spaces for list along with dictionary (microsoft/vscode-python#22209)

Legacy normalization script leaves unnecessary white spaces for
dictionary as well as list. While there are multiple correct usage of it
such as for after a function, for more intuitive REPL experience. We
want to keep previous normalization style and white space format EXCEPT
for dictionary and list case.

Dictionary case is handled, but this is the PR to handle the elimination
of extra white spaces for list as well.
Closes: microsoft/vscode-python#22208
--------------------
Commit message for microsoft/vscode-python@ec001a0b1503555e685996baab8fda4f0648c454:

Fix for webpack warning with LSP types (microsoft/vscode-python#22211)


--------------------
Commit message for microsoft/vscode-python@9b5f58afc0acacacd45c035c4e1a78622944407d:

Add logging for failure to retrieve environment variables, testing rewrite (microsoft/vscode-python#22203)


--------------------
Commit message for microsoft/vscode-python@65c8ac6e3f272d76c9775ad1163a18c61d473119:

Remove formatting settings (microsoft/vscode-python#22202)

Closes https://github.com/microsoft/vscode-python/issues/22183
--------------------
Commit message for microsoft/vscode-python@d1e4562b64e38045f549ca00025c4620a6a89567:

Move tensorboard support into a separate extension (microsoft/vscode-python#22197)

* No need of experiments (if users install extension, then it works)
* If tensorboard extension is installed the we rely on tensorboard
extension to handle everything
* For final deplayment we can decide whether to just remove this feature
altogether or prompt users to install tensorboard extension or to go
with an experiment, for now I wanted to keep this super simple (this
shoudl not affect anyone as no one will have a tensorboard extension
except us)
* Simple private API for tensorboard extension, untill Python ext
exposes a stable API
    * API is similar to Jupyter, scoped to Tensorboard ext
--------------------
Commit message for microsoft/vscode-python@1dd8a4bdb16d0a7e79082c75d8eb55a142a48fc2:

switch testing output to test result panel (microsoft/vscode-python#22039)

closes https://github.com/microsoft/vscode-python/issues/21861 and
related issues

---------

Co-authored-by: Courtney Webster <60238438+cwebster-99@users.noreply.github.com>
--------------------
Commit message for microsoft/vscode-python@055a352285db83158be4374a2e57bdc48b28fda8:

Remove formatting support (microsoft/vscode-python#22196)


--------------------
Commit message for microsoft/vscode-python@75e707be42bf67aac316c900f7d095c1e21bae28:

Update LSP to latest version to support completion itemDefaults (microsoft/vscode-python#22200)

Dirk added this feature here:

https://github.com/microsoft/vscode-languageserver-node/commit/0b7acc15abd7132c9154d94140f478ccf5ba5769

We want to use this in Pylance in order to speedup completions. For the
degenerate case, this can speedup completion results by 30%.

See https://github.com/microsoft/pyrx/issues/4113 and
https://github.com/microsoft/pylance-release/issues/4919
--------------------
Commit message for microsoft/vscode-python@bc0c7144d586d5a7514921ddfc8cd495f1838ba1:

add clickable show logs on discovery error (microsoft/vscode-python#22199)

fixes https://github.com/microsoft/vscode-python/issues/22175
--------------------
Commit message for microsoft/vscode-python@56661a1576b93430953f249cda582eeef30ff543:

REPL Smart Shift+Enter and Dynamic Smart Cursor  (microsoft/vscode-python#21779)

There are two Feature Requests from: microsoft/vscode-python#18105 microsoft/vscode-python#21838 
They are grouped together to provide the smoothest experience: when user
wants to press shift+enter and smoothly move between each executable
Python code block without having to manually move their cursor.

#19955 (For Execute line/selection and advance to next line, referred to
as dynamic smart cursor hereby)
Open Issue: microsoft/vscode-python#21778 microsoft/vscode-python#21838

Steps in implementing REPL Smart Send (smart shift+enter to the REPL)
and dynamic cursor move aka. Move to Next Line (next executable line of
code to be more precise):

1. Figure out the workflow of where things start and run when user
clicks on run selection/line
2. Send the content of selection & document to the Python Side from
Typescript side.
3. Respect and follow previous logic/code for EXPLICIT selection (user
has highlighting particular text they want to send to REPL), but
otherwise, use newly created smart send code.
4. Receive content of document & selection in Python Side
5. Use AST (From Python standard library) to figu…
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-testing on-testplan Added to test plan
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants