forked from DonJayamanne/pythonVSCode
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge master into ds custom (#10261)
* fixing a typo in CONTRIBUTING.md (#10044) * fix for button backgrounds (#10234) * add kernel connection sys info string (#10236) * Fix to return env variables of interpreter that is not current interpreter (#10251) For #10250 * Bug fix * Support jupyter output in the remote scenario too (#10241) * Add some output for remote situations * Add news entry * Skip flaky FS test (#10244) Merely disables test for #10240 * Switch experiments settings scope to machine (#10237) * Switch experiments settings scope to machine * Add news item * Show quickfixes for launch.json (#10245) * Added implementation * Added tests * Moved into providers * Add code actions vscode mock and convert .test.ts into unit.test.ts * Rename folders * Dispose registered services * News entry * Added unit tests * Rename core service * Reduce the number of build agents used by CI. (#10221) * Drop extra jobs from the PR-validation pipeline. This reduces the number of build agents we are using most frequently, without sacrificing much coverage. Note that this relies on 2 things: * sufficient unit test coverage * manual "full CI" runs when there may be OS-specific concerns With this change: * all tests get run on 3.x on linux (including smoke) * for 2.7 only the unit and functional tests are run (and only on linux) * on Windows and OSX, only functional and "single workspace" tests are run The total number of test jobs (and hence agents) drops from 13 to 8. * Drop extra jobs from the PR-merge pipeline. This change relies on the nightly CI run covering the full matrix. The total number of test jobs (and hence agents) drops from 39 to 24. * Limit # of parallel jobs in each job matrix in the PR-merge and nightly pipelines. This reduces the max number of agents used by the PR-merge pipeline to 8 (from 24). For the nightly pipeline it goes down from 84 to 12. Both will take longer to complete, but that shouldn't be a major problem. * Add a "manual build" CI pipeline for faster turnaround. * Do not test internal tools on lower than Python 3.7. * Drop the temporary workaround jobs. * (again) Do not test internal tools on lower than Python 3.7. * Improve the perf of functional tests running with real jupyter (#10242) * Improve the perf of subsequent tests by caching interpreters * Add back the nightly flake * Remove coverage * Add news entry * Use a static map to allow promise to be cleared on new interpreters (as it was before) Co-authored-by: Panpan Lin <panpanli@ie.ibm.com> Co-authored-by: Ian Huff <ian.huff@gmail.com> Co-authored-by: Rich Chiodo <rchiodo@users.noreply.github.com> Co-authored-by: Karthik Nadig <kanadig@microsoft.com> Co-authored-by: Kartik Raj <karraj@microsoft.com> Co-authored-by: Eric Snow <ericsnowcurrently@gmail.com>
- Loading branch information
1 parent
93cf440
commit eea3f1c
Showing
46 changed files
with
1,082 additions
and
259 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
./out/test/**/*.functional.test.js | ||
--require=out/test/unittests.js | ||
--exclude=out/**/*.jsx | ||
--ui=tdd | ||
--recursive | ||
--colors | ||
--exit | ||
--timeout=180000 | ||
--reporter spec |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,296 @@ | ||
# manual CI build | ||
|
||
name: '$(Year:yyyy).$(Month).0.$(BuildID)-manual' | ||
|
||
trigger: none | ||
pr: none | ||
|
||
# Variables that are available for the entire pipeline. | ||
variables: | ||
- template: templates/globals.yml | ||
|
||
stages: | ||
- stage: Build | ||
jobs: | ||
- template: templates/jobs/build_compile.yml | ||
|
||
# Each item in each matrix has a number of possible values it may | ||
# define. They are detailed in templates/test_phases.yml. The only | ||
# required value is "TestsToRun". | ||
|
||
- stage: Linux | ||
dependsOn: [] | ||
jobs: | ||
- job: 'Py3x' | ||
dependsOn: [] | ||
timeoutInMinutes: 120 | ||
strategy: | ||
matrix: | ||
'Unit': | ||
# with mocks | ||
# focused on small units (i.e. functions) | ||
# and tightly controlled dependencies | ||
TestsToRun: 'testUnitTests, pythonUnitTests, pythonInternalTools, pythonIPythonTests' | ||
NeedsPythonTestReqs: true | ||
NeedsIPythonReqs: true | ||
'Functional': | ||
# no mocks, no vscode | ||
# focused on integration | ||
TestsToRun: 'testfunctional' | ||
NeedsPythonTestReqs: true | ||
NeedsPythonFunctionalReqs: true | ||
'Single Workspace': | ||
# no mocks, with vscode | ||
# focused on integration | ||
TestsToRun: 'testSingleWorkspace' | ||
NeedsPythonTestReqs: true | ||
'Multi Workspace': | ||
# no mocks, with vscode | ||
# focused on integration | ||
TestsToRun: 'testMultiWorkspace' | ||
NeedsPythonTestReqs: true | ||
'Venv': | ||
TestsToRun: 'venvTests' | ||
NeedsPythonTestReqs: true | ||
NeedsIPythonReqs: true | ||
# This is for the venvTests to use, not needed if you don't run venv tests... | ||
PYTHON_VIRTUAL_ENVS_LOCATION: './src/tmp/envPaths.json' | ||
'Debugger': | ||
TestsToRun: 'testDebugger' | ||
NeedsPythonTestReqs: true | ||
'Smoke': | ||
TestsToRun: 'testSmoke' | ||
NeedsPythonTestReqs: true | ||
NeedsIPythonReqs: true | ||
#maxParallel: 3 | ||
pool: | ||
vmImage: 'ubuntu-16.04' | ||
steps: | ||
- template: templates/test_phases.yml | ||
|
||
# This is the oldest Python 3 version we support. | ||
- job: 'Py36' | ||
dependsOn: [] | ||
timeoutInMinutes: 120 | ||
strategy: | ||
matrix: | ||
'Unit': | ||
PythonVersion: '3.6' | ||
# Note: "pythonInternalTools" tests are 3.7+. | ||
TestsToRun: 'testUnitTests, pythonUnitTests, pythonIPythonTests' | ||
NeedsPythonTestReqs: true | ||
NeedsIPythonReqs: true | ||
'Functional': | ||
PythonVersion: '3.6' | ||
TestsToRun: 'testfunctional' | ||
NeedsPythonTestReqs: true | ||
NeedsPythonFunctionalReqs: true | ||
'Single Workspace': | ||
PythonVersion: '3.6' | ||
TestsToRun: 'testSingleWorkspace' | ||
NeedsPythonTestReqs: true | ||
#maxParallel: 3 | ||
pool: | ||
vmImage: 'ubuntu-16.04' | ||
steps: | ||
- template: templates/test_phases.yml | ||
|
||
# This is the oldest Python 3 version we support. | ||
- job: 'Py35' | ||
dependsOn: [] | ||
timeoutInMinutes: 120 | ||
strategy: | ||
matrix: | ||
'Unit': | ||
PythonVersion: '3.5' | ||
# Note: "pythonInternalTools" tests are 3.7+. | ||
TestsToRun: 'testUnitTests, pythonUnitTests, pythonIPythonTests' | ||
NeedsPythonTestReqs: true | ||
NeedsIPythonReqs: true | ||
'Functional': | ||
PythonVersion: '3.5' | ||
TestsToRun: 'testfunctional' | ||
NeedsPythonTestReqs: true | ||
NeedsPythonFunctionalReqs: true | ||
'Single Workspace': | ||
PythonVersion: '3.5' | ||
TestsToRun: 'testSingleWorkspace' | ||
NeedsPythonTestReqs: true | ||
'Venv': | ||
PythonVersion: '3.5' | ||
TestsToRun: 'venvTests' | ||
NeedsPythonTestReqs: true | ||
NeedsIPythonReqs: true | ||
PYTHON_VIRTUAL_ENVS_LOCATION: './src/tmp/envPaths.json' | ||
'Debugger': | ||
PythonVersion: '3.5' | ||
TestsToRun: 'testDebugger' | ||
NeedsPythonTestReqs: true | ||
#maxParallel: 3 | ||
pool: | ||
vmImage: 'ubuntu-16.04' | ||
steps: | ||
- template: templates/test_phases.yml | ||
|
||
- stage: Mac | ||
dependsOn: [] | ||
jobs: | ||
- job: 'Py3x' | ||
dependsOn: [] | ||
timeoutInMinutes: 120 | ||
strategy: | ||
matrix: | ||
'Unit': | ||
TestsToRun: 'testUnitTests, pythonUnitTests, pythonInternalTools, pythonIPythonTests' | ||
NeedsPythonTestReqs: true | ||
NeedsIPythonReqs: true | ||
'Functional': | ||
TestsToRun: 'testfunctional' | ||
NeedsPythonTestReqs: true | ||
NeedsPythonFunctionalReqs: true | ||
'Single Workspace': | ||
TestsToRun: 'testSingleWorkspace' | ||
NeedsPythonTestReqs: true | ||
'Multi Workspace': | ||
TestsToRun: 'testMultiWorkspace' | ||
NeedsPythonTestReqs: true | ||
'Venv': | ||
TestsToRun: 'venvTests' | ||
NeedsPythonTestReqs: true | ||
NeedsIPythonReqs: true | ||
PYTHON_VIRTUAL_ENVS_LOCATION: './src/tmp/envPaths.json' | ||
'Debugger': | ||
TestsToRun: 'testDebugger' | ||
NeedsPythonTestReqs: true | ||
'Smoke': | ||
TestsToRun: 'testSmoke' | ||
NeedsPythonTestReqs: true | ||
NeedsIPythonReqs: true | ||
#maxParallel: 3 | ||
pool: | ||
vmImage: 'macos-10.13' | ||
steps: | ||
- template: templates/test_phases.yml | ||
|
||
# This is the oldest Python 3 version we support. | ||
- job: 'Py35' | ||
dependsOn: [] | ||
timeoutInMinutes: 120 | ||
strategy: | ||
matrix: | ||
'Unit': | ||
PythonVersion: '3.5' | ||
# Note: "pythonInternalTools" tests are 3.7+. | ||
TestsToRun: 'testUnitTests, pythonUnitTests, pythonIPythonTests' | ||
NeedsPythonTestReqs: true | ||
NeedsIPythonReqs: true | ||
'Functional': | ||
PythonVersion: '3.5' | ||
TestsToRun: 'testfunctional' | ||
NeedsPythonTestReqs: true | ||
NeedsPythonFunctionalReqs: true | ||
'Single Workspace': | ||
PythonVersion: '3.5' | ||
TestsToRun: 'testSingleWorkspace' | ||
NeedsPythonTestReqs: true | ||
'Venv': | ||
PythonVersion: '3.5' | ||
TestsToRun: 'venvTests' | ||
NeedsPythonTestReqs: true | ||
NeedsIPythonReqs: true | ||
PYTHON_VIRTUAL_ENVS_LOCATION: './src/tmp/envPaths.json' | ||
'Debugger': | ||
PythonVersion: '3.5' | ||
TestsToRun: 'testDebugger' | ||
NeedsPythonTestReqs: true | ||
#maxParallel: 3 | ||
pool: | ||
vmImage: 'macos-10.13' | ||
steps: | ||
- template: templates/test_phases.yml | ||
|
||
- stage: Windows | ||
dependsOn: [] | ||
jobs: | ||
- job: 'Py3x' | ||
dependsOn: [] | ||
timeoutInMinutes: 120 | ||
strategy: | ||
matrix: | ||
'Unit': | ||
TestsToRun: 'testUnitTests, pythonUnitTests, pythonInternalTools, pythonIPythonTests' | ||
NeedsPythonTestReqs: true | ||
NeedsIPythonReqs: true | ||
'Functional': | ||
TestsToRun: 'testfunctional' | ||
NeedsPythonTestReqs: true | ||
NeedsPythonFunctionalReqs: true | ||
'Single Workspace': | ||
TestsToRun: 'testSingleWorkspace' | ||
NeedsPythonTestReqs: true | ||
'Multi Workspace': | ||
TestsToRun: 'testMultiWorkspace' | ||
NeedsPythonTestReqs: true | ||
'Venv': | ||
TestsToRun: 'venvTests' | ||
NeedsPythonTestReqs: true | ||
NeedsIPythonReqs: true | ||
PYTHON_VIRTUAL_ENVS_LOCATION: './src/tmp/envPaths.json' | ||
'Debugger': | ||
TestsToRun: 'testDebugger' | ||
NeedsPythonTestReqs: true | ||
'Smoke': | ||
TestsToRun: 'testSmoke' | ||
NeedsPythonTestReqs: true | ||
NeedsIPythonReqs: true | ||
#maxParallel: 3 | ||
pool: | ||
vmImage: 'vs2017-win2016' | ||
steps: | ||
- template: templates/test_phases.yml | ||
|
||
# This is the oldest Python 3 version we support. | ||
- job: 'Py35' | ||
dependsOn: [] | ||
timeoutInMinutes: 120 | ||
strategy: | ||
matrix: | ||
'Unit': | ||
PythonVersion: '3.5' | ||
# Note: "pythonInternalTools" tests are 3.7+. | ||
TestsToRun: 'testUnitTests, pythonUnitTests, pythonIPythonTests' | ||
NeedsPythonTestReqs: true | ||
NeedsIPythonReqs: true | ||
'Functional': | ||
PythonVersion: '3.5' | ||
TestsToRun: 'testfunctional' | ||
NeedsPythonTestReqs: true | ||
NeedsPythonFunctionalReqs: true | ||
'Single Workspace': | ||
PythonVersion: '3.5' | ||
TestsToRun: 'testSingleWorkspace' | ||
NeedsPythonTestReqs: true | ||
'Venv': | ||
PythonVersion: '3.5' | ||
TestsToRun: 'venvTests' | ||
NeedsPythonTestReqs: true | ||
NeedsIPythonReqs: true | ||
PYTHON_VIRTUAL_ENVS_LOCATION: './src/tmp/envPaths.json' | ||
'Debugger': | ||
PythonVersion: '3.5' | ||
TestsToRun: 'testDebugger' | ||
NeedsPythonTestReqs: true | ||
#maxParallel: 3 | ||
pool: | ||
vmImage: 'vs2017-win2016' | ||
steps: | ||
- template: templates/test_phases.yml | ||
|
||
- stage: Reports | ||
dependsOn: | ||
- Linux | ||
- Mac | ||
- Windows | ||
condition: always() | ||
jobs: | ||
- template: templates/jobs/coverage.yml |
Oops, something went wrong.