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

Merge from main into WIP/NoDS #14134

Merged
merged 38 commits into from
Sep 28, 2020
Merged

Merge from main into WIP/NoDS #14134

merged 38 commits into from
Sep 28, 2020

Conversation

rchiodo
Copy link

@rchiodo rchiodo commented Sep 28, 2020

Merge main branch into the nods branch

ericsnowcurrently and others added 30 commits September 16, 2020 13:50
…iterEnvs(). (#13950)

In order to ensure that ILocator.iterEnvs() can finish as fast as possible, we add a side-channel event for each iteration. This event fires any time an already-yielded env info object is updated (e.g. reduced/merged or resolved/completed). The update only relates to operations triggered by that particular iteration. ILocator.onChanged remains separate and only relates to when the locators finds a new env, notices one was removed, or that one was otherwise fundamentally changed.

There are two similar approaches we could take for this update event. Either we added the event as a property of IPythonEnvsIterator or we change the return value of ILocator.iterEnvs() to be a 2-tuple ([PythonEnvsIterator, Event<PythonEnvUpdatedEvent>]). We took the property approach since most of the time callers won't need to worry about the update events.
Co-authored-by: Ian Huff <ianhuff@CEIDCCEVIPSVC01.redmond.corp.microsoft.com>
* virtualenvwrapper locator

* skip os-specific tests

* Test getDefaultVirtualenvwrapperDir

* Update src/client/pythonEnvironments/discovery/locators/services/virtualenvwrapperLocator.ts

Co-authored-by: Karthik Nadig <kanadig@microsoft.com>

* add pathExists check to WORKON_HOME dir

* Change how the locator works + move util func out

* Fix functional tests

* utils unit tests

* Update locator tests

* Stub getUserHomeDir instead of getDefaultetc

Co-authored-by: Karthik Nadig <kanadig@microsoft.com>
* Clean up eslint errors

* Fix linting and address comments.
This allows us to start using the new discovery code in the extension.
* Extension API
* Api for DS
* Fix kernel name and server name

* Fixup server name for remote situations

* Add some functional tests

* Add news entry
This allows us to start using the new discovery code in the extension. The key thing is to be careful not to regress in the available functionality. So for now we have disabled use of the component.  When we feel comfortable with it we can enable it by setting the default for `ComponentAdapter.enabled` to `true`.

This PR involves small fixes to a large number of files due to API changes. The adapter is actually used (injected) in the following files:

src/client/interpreter/interpreterService.ts
src/client/interpreter/helpers.ts
src/client/pythonEnvironments/discovery/locators/index.ts
src/client/pythonEnvironments/discovery/locators/services/condaService.ts
src/client/pythonEnvironments/discovery/locators/services/windowsStoreInterpreter.ts
* Fix backup storage by looking at the options correctly

* Fix backup by being more explicit

* Only linux tests are failing. Hopefully fix them
* Pyenv locator
* Skip tests per platform
* Wrong pyenv path order in ternary
* Add description
* Autoformat venv locator
* Revert "Autoformat venv locator"
This reverts commit 5c8c4ab.
* Add links
* Windows-specific fixes
* Typo
This reverts commit ee0cad9.
* Remove cwd while running using isolate script

* Run inplace.

* Fix formatting
…esolver (#13997)

* Modify environment info worker to support new environment type

* Do not replace existing fields and return a new object

* Modify cache to carry deferred instead

* Change worker to return interpreter information instead

* Handle error and rename

* Fix bug with interpreterInfo.py

* Code reviews

* Rename old PythonEnvInfo type to InterpreterInfoJson
* Ideas for lang server API with python extension

* Working with new API

* Minimize API surface

* Fix up tests for intellisense

* Fix unit tests

* Put back custom editor service

* Remove unnecessary changes for service registry

* Code review feedback

* Move connection type to types file
* Fix tests
* Typo
Co-authored-by: Karthik Nadig <kanadig@microsoft.com>
Co-authored-by: Karthik Nadig <kanadig@microsoft.com>
…4022)

* make sure that we run our show code when a custom editor is shown

* Trigger notebook load in the constructor, not show

Co-authored-by: Ian Huff <ianhuff@CEIDCCEVIPSVC01.redmond.corp.microsoft.com>
* Fix path

* Actually fix settings

* Add news

* Add test

* Format

* Suppress 'jediEnabled' removal

* Drop survey first launch threshold

* Telemetry for exceptions

* Remove custom exception telemetry

* Remove unused
* Basic idea

* add some functional tests

* Add news entry

* Fix functional tests
Otherwise it doesn't understand the Python 2.7 restrictions for those dependencies.
* Add environments reducer

* Added tests

* Use path.join to construct paths

* Code reviews

* Correct dummy implementations and adjust tests

* Modify resolveEnv()

* Rename to a general parentLocator
* Port ipykernel install fix to release (#13975)

* Fix installing ipykernel into interpreters for raw kernel (#13959)

* update news

Co-authored-by: Ian Huff <ianhuff@CEIDCCEVIPSVC01.redmond.corp.microsoft.com>

* Merge in changes to release (#13976)

* Up release version for new release (#13928)

* Up release version

* Update changelog

* Update changelog

* Workaround test issue (#13930)

* Try different version of VS code in release

* Change to make it use the actual variable

* Use a real version

* More tests failing with gpu error (#13935)

* Try different version of VS code in release

* Change to make it use the actual variable

* Use a real version

* Two more version changes

* Fix kernel and server name missing in certain situations (#13974)

* Fix kernel name and server name

* Fixup server name for remote situations

* Add some functional tests

* Add news entry

* Delete news file

* Port two fixes to the release branch (#13995)

* Disable split views of custom editors (#13985)

* Fix backup storage by looking at the options correctly (#13983)

* Fix backup storage by looking at the options correctly

* Fix backup by being more explicit

* Only linux tests are failing. Hopefully fix them

* Fixup changelog

Co-authored-by: Don Jayamanne <don.jayamanne@yahoo.com>

* add jedi-language-server to 3rd party notices (#13977)

* add jedi-language-server to 3rd party notices

* move license from distribution to repository file

* disable test_discover_complex_default and (#14024)

test_discover_complex_doctest

* Upgrade isort to 5.5.3 (#14035) (#14037)

* prepare release (#14042)

* fixed annoying warnings (#14049)

* update version

Co-authored-by: Ian Huff <ianhu@microsoft.com>
Co-authored-by: Ian Huff <ianhuff@CEIDCCEVIPSVC01.redmond.corp.microsoft.com>
Co-authored-by: Rich Chiodo <rchiodo@users.noreply.github.com>
Co-authored-by: Don Jayamanne <don.jayamanne@yahoo.com>
Co-authored-by: Kartik Raj <karraj@microsoft.com>
* Fix object sort order in tools tests

* rebase with main

* Fix formatting
karthiknadig and others added 8 commits September 23, 2020 15:48
* Update ubuntu images for GPU issue fix

* Try with ubuntu-20.04
* Modify environment info worker to support new environment type

* Change worker to return interpreter information instead

* Modify resolveEnv()

* Code reviews

* Code reviews

* Move stuff
…rsion installed (#14091)

* Remove code that opts users out of the insiders program

* News entry

* Code reviews
* Do not quote isolated in exec module

* Revert "Do not quote isolated in exec module"

This reverts commit b9fa04c.

* Revert "IPyKernel install issue with windows paths (#13667)"

This reverts commit 23725ab.
@sonarcloud
Copy link

sonarcloud bot commented Sep 28, 2020

SonarCloud Quality Gate failed.

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities (and Security Hotspot 0 Security Hotspots to review)
Code Smell A 0 Code Smells

No Coverage information No Coverage information
4.0% 4.0% Duplication

@codecov-commenter
Copy link

Codecov Report

Merging #14134 into WIP/NoDS will increase coverage by 0.34%.
The diff coverage is 93.86%.

Impacted file tree graph

@@             Coverage Diff              @@
##           WIP/NoDS   #14134      +/-   ##
============================================
+ Coverage     66.12%   66.47%   +0.34%     
============================================
  Files           528      530       +2     
  Lines         24033    24182     +149     
  Branches       3372     3394      +22     
============================================
+ Hits          15892    16075     +183     
+ Misses         7522     7470      -52     
- Partials        619      637      +18     
Impacted Files Coverage Δ
...rc/client/common/process/internal/scripts/index.ts 69.73% <ø> (ø)
src/client/common/utils/decorators.ts 79.41% <50.00%> (-0.99%) ⬇️
src/client/pythonEnvironments/base/info/index.ts 93.33% <81.81%> (-6.67%) ⬇️
...nts/base/locators/composite/environmentsReducer.ts 94.93% <94.93%> (ø)
...ts/base/locators/composite/environmentsResolver.ts 95.58% <95.58%> (ø)
...t/common/insidersBuild/insidersExtensionService.ts 96.77% <100.00%> (-0.41%) ⬇️
src/client/common/process/internal/python.ts 58.82% <100.00%> (ø)
...very/locators/services/virtualenvwrapperLocator.ts 76.92% <0.00%> (-15.39%) ⬇️
src/client/common/utils/platform.ts 60.00% <0.00%> (-12.00%) ⬇️
.../pythonEnvironments/common/externalDependencies.ts 66.66% <0.00%> (-4.77%) ⬇️
... and 7 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 2ab1c9c...8b87f08. Read the comment docs.

@rchiodo rchiodo merged commit e5f7d40 into WIP/NoDS Sep 28, 2020
@rchiodo rchiodo deleted the rchiodo/merge_main_nods branch September 28, 2020 17:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.