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

Use Python extension API to get environments related to Notebooks/IW #1857

Closed
wants to merge 149 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
149 commits
Select commit Hold shift + click to select a range
a5c42b2
Support category being undefined (#23745)
DonJayamanne Jul 4, 2024
5470d60
Handle & track conda envs not found (#23753)
DonJayamanne Jul 8, 2024
d8ae575
Add more data for conda envs not found (#23770)
DonJayamanne Jul 8, 2024
a5c539d
Determine reasons for Poetry find failures (#23771)
DonJayamanne Jul 9, 2024
462b9bf
Enable explicit Ruff check rules (#23741)
brettcannon Jul 9, 2024
7e434a7
Hide Run Python option when in Jupyter Notebook (#23732)
anthonykim1 Jul 9, 2024
658e2de
Add configuration request (#23782)
DonJayamanne Jul 10, 2024
d69d605
Gather additional data to determine failures in identifying conda env…
DonJayamanne Jul 10, 2024
d97c7e4
Native Conda Telemetry (#23787)
DonJayamanne Jul 10, 2024
144c9c1
Additional native finder conda telemetry (#23788)
DonJayamanne Jul 10, 2024
d6a7cf4
Add additional context keys to commands (#23737)
luabud Jul 10, 2024
588983d
Update pylance.ts for GDPR clearning (#23789)
luabud Jul 10, 2024
d0e3feb
Additional conda telemetry (#23790)
DonJayamanne Jul 11, 2024
415c55b
Performance telemetry for native locator (#23792)
DonJayamanne Jul 11, 2024
5fd5098
Minimize execution output when there is no output for new REPL (#23786)
anthonykim1 Jul 11, 2024
55b3129
Capture info for missing conda envs in native locator (#23796)
DonJayamanne Jul 12, 2024
b65d452
Await on promises (#23802)
DonJayamanne Jul 12, 2024
2d9f706
Fix Bad GDPR annotations (#23803)
lramos15 Jul 12, 2024
e5f8539
Additional data to compare conda environments.txt (#23805)
DonJayamanne Jul 14, 2024
2a6608c
Capture additional telemetry for conda (#23810)
DonJayamanne Jul 15, 2024
d38e110
Fix debug arg error (#23814)
paulacamargo25 Jul 15, 2024
8c18f74
add backwards compatibility for pytest hook wrapper (#23781)
eleanorjboyd Jul 15, 2024
33f423c
Read launch from devcontainer (#23817)
paulacamargo25 Jul 16, 2024
5d8f514
Add some more telemetry for missing conda envs (#23825)
DonJayamanne Jul 17, 2024
193b929
Use Native Python Finder as the main locator (#23823)
karthiknadig Jul 17, 2024
abe223f
Updates to use new Python locator Api (#23832)
DonJayamanne Jul 18, 2024
0d1a0f1
Configure before resolving and remove old API call (#23834)
DonJayamanne Jul 18, 2024
a60f228
Correctly display native REPL execution status (#23797)
anthonykim1 Jul 18, 2024
d2646dc
More native tests for Native python finder (#23831)
karthiknadig Jul 19, 2024
1cc490b
Add executable path as `id` for envs (#23840)
karthiknadig Jul 19, 2024
226ba0a
xdist fixes (#23791)
DetachHead Jul 22, 2024
f09ab3f
Ensure env manager executable is set (#23845)
karthiknadig Jul 22, 2024
7cc813d
Update logging in getConfigurationsForWorkspace (#23847)
paulacamargo25 Jul 22, 2024
066b9c3
Fix `location` for native environments (#23851)
karthiknadig Jul 23, 2024
9fad643
Ensure telemetry measurements are sent correctly (#23850)
DonJayamanne Jul 23, 2024
82015bc
Add support for file system watching with native python locator (#23852)
karthiknadig Jul 23, 2024
a45df21
Add Cache dir for native locator (#23853)
DonJayamanne Jul 23, 2024
4093317
Metrics tracking launch times for native locator (#23854)
DonJayamanne Jul 23, 2024
1f12640
Update Pylance settings telemetry property list to match code (#23841)
debonte Jul 23, 2024
30058f2
Add a new measure for native finder perf (#23861)
DonJayamanne Jul 23, 2024
cecdf3c
Bump zipp from 3.17.0 to 3.19.1 in /python_files/jedilsp_requirements…
dependabot[bot] Jul 24, 2024
cb31457
Bump importlib-metadata from 8.0.0 to 8.1.0 (#23864)
dependabot[bot] Jul 24, 2024
89ebe52
fix crash when importing `pluggy.Result` on old versions of pluggy (#…
DetachHead Jul 25, 2024
b13f38d
Update release_plan.md (#23873)
eleanorjboyd Jul 26, 2024
279ebbf
Bump version to 2024.12.0-rc (#23881)
anthonykim1 Jul 29, 2024
774badc
Update info-needed-closer.yml (#23876)
eleanorjboyd Jul 29, 2024
79515ea
Bump version to 2024.13.0-dev (#23882)
anthonykim1 Jul 29, 2024
3641652
Downgrade lsp packages (#23890)
heejaechang Jul 30, 2024
3dad6c9
Add tests for native REPL (#23729)
anthonykim1 Jul 31, 2024
40302fd
Add GDPR tags for Pylance event (#23900)
luabud Aug 1, 2024
8ad3b94
Update release plan for stable (#23896)
karthiknadig Aug 2, 2024
f6a6a32
Remove the middleware addon component from all language servers (#23898)
DonJayamanne Aug 6, 2024
1c8d20e
Debug test session proposed (#23891)
eleanorjboyd Aug 6, 2024
48e277a
Fix event name in GDPR tag (#23917)
luabud Aug 6, 2024
e90b95d
Allow native REPL launch from command palette (#23912)
anthonykim1 Aug 7, 2024
20e186f
Fix issues with localization and signing (#23931)
karthiknadig Aug 8, 2024
3fea993
Remove finalized terminalShellIntegration from proposals (#23940)
Tyriar Aug 12, 2024
f417024
Attempt to handle pixi error more gracefully (#23937)
anthonykim1 Aug 12, 2024
c13bb07
REPL Telemetry for Terminal REPL and Native REPL (#23941)
anthonykim1 Aug 13, 2024
b872cb4
Fire telemetry when REPLs are launched via shift+enter (#23944)
anthonykim1 Aug 13, 2024
59a8d03
Django Test Compatibility (#23935)
eleanorjboyd Aug 14, 2024
e9f1071
Fix telemetry not getting picked up for Terminal REPL (#23958)
anthonykim1 Aug 16, 2024
a3dcf1b
Fix execInREPL Enter to respect complete expression (#23973)
anthonykim1 Aug 19, 2024
9cd6b2d
Add GDPR comment for `repltype` (#23974)
cwebster-99 Aug 19, 2024
fdddaf9
Additional graceful handling for pixi (#23942)
anthonykim1 Aug 20, 2024
e751377
Do not truncate whitespace for multi-line string (#23977)
anthonykim1 Aug 20, 2024
8ea21a9
Handle poetry env manager from native locator (#23983)
DonJayamanne Aug 21, 2024
32d519b
Update to latest lsp for pull diagnostics (#23979)
rchiodo Aug 23, 2024
16bffde
Bump importlib-metadata from 8.1.0 to 8.4.0 (#23980)
dependabot[bot] Aug 26, 2024
460f623
Bump elliptic from 6.5.4 to 6.5.7 (#23986)
dependabot[bot] Aug 26, 2024
61bc2d5
Fix stop sending double telemetry for Terminal REPL (#23995)
anthonykim1 Aug 26, 2024
7ccf01e
Correctly track native REPL state (#23997)
anthonykim1 Aug 26, 2024
eb0ed8e
Version updates for Python Extension Release 2024.14.0 (#24040)
karthiknadig Sep 3, 2024
d9c0ce1
Update `main` to next pre-release version (#24043)
karthiknadig Sep 3, 2024
884efad
fix django manage.py path validation (#24019)
eleanorjboyd Sep 3, 2024
3343560
Fix failing multiroot test (#24049)
rchiodo Sep 4, 2024
e694910
Remove use of mocked output channel in virtual workspace (#24051)
karthiknadig Sep 4, 2024
ef7c7e3
switch to using temp file for test_ids (#24054)
eleanorjboyd Sep 5, 2024
e3a7c7a
Download `pet` from azure pipeline build (#24052)
karthiknadig Sep 5, 2024
223eca9
Better messaging for tests output in virtual or untrusted scenario (#…
karthiknadig Sep 6, 2024
34dac5c
Stable extension builds using `pet` from Azure Feed (#24063)
karthiknadig Sep 6, 2024
08e7fdf
Update engine version to match LSP client (#24065)
rchiodo Sep 9, 2024
6578d9d
Revert "Do not truncate whitespace for multi-line string" (#24096)
anthonykim1 Sep 11, 2024
216c7ed
Switch over to executeCommand from sendText (#24078)
anthonykim1 Sep 12, 2024
0ae1a5d
Add `uv.lock` to file associations (#23991)
edgarrmondragon Sep 13, 2024
144ecf6
Enable proposed APIs for `codeActionAI` (#24108)
StellaHuang95 Sep 13, 2024
b59af57
Contribute problem matcher (#24114)
anthonykim1 Sep 17, 2024
717e518
variable provider for native repl (#24094)
amunger Sep 18, 2024
8268131
Implementation of Test Coverage (#24118)
eleanorjboyd Sep 18, 2024
9a22fb4
account for inline chat widget (#24130)
amunger Sep 18, 2024
07a0755
use new context key for both repl-type editors (#24131)
amunger Sep 19, 2024
3fcb3fa
Adding PYTHONSTARTUP with shell integration to environment variable c…
anthonykim1 Sep 19, 2024
cac5bb2
Add a command copilot calls back to ensure testing is set up (#24128)
connor4312 Sep 19, 2024
62897c6
Add logging for executeCommand (#24138)
anthonykim1 Sep 19, 2024
63280be
Default PYTHONSTARTUP to opt out/off for Stable Release (#24140)
anthonykim1 Sep 19, 2024
f9bb1f1
Use new REPL notebook API (#24029)
amunger Sep 20, 2024
336a110
add experimental tag for enableShellIntegration (#24144)
anthonykim1 Sep 20, 2024
af2aa6e
Remove variableProvider suite.only from limiting other tests (#24146)
anthonykim1 Sep 21, 2024
f8b861a
Change PYTHONSTARTUP setting name to Python.terminal.shell integratio…
anthonykim1 Sep 23, 2024
8cfd2d0
Bump importlib-metadata from 8.4.0 to 8.5.0 (#24100)
dependabot[bot] Sep 23, 2024
c314bab
Fix issue with creating `.gitignore` with venvs (#24155)
karthiknadig Sep 23, 2024
f7e0857
Remove redundant @typescript-eslint/no-explicit-any suppression (#24091)
vishrutss Sep 23, 2024
06a976f
Tests for PYTHONSTARTUP setting (#24145)
anthonykim1 Sep 23, 2024
14e134e
Add separate enum for telemetry when running python manually. (#24157)
karthiknadig Sep 23, 2024
d879a0d
Adjust PythonStartUp test for new setting value (#24165)
anthonykim1 Sep 24, 2024
dd76d4f
Change log level on pixi interpreter discovery to reduce confusion (…
anthonykim1 Sep 24, 2024
30b7884
Fix) Python Shell Integration setting should have markdown descriptio…
anthonykim1 Sep 25, 2024
710d3c8
Remove branch coverage and refactor coverage.py methods for accessing…
eleanorjboyd Sep 25, 2024
9f6735e
Prioritize `conda` handler over `pixi` handler (#24198)
karthiknadig Sep 26, 2024
60bd545
Update version for 2024.16.0 release (#24212)
karthiknadig Sep 30, 2024
23424cb
Update version for pre-release (#24213)
karthiknadig Sep 30, 2024
8bcf046
Remove unnecessary file read on execution (#24196)
karthiknadig Oct 1, 2024
7d01dc2
Use latest build of `pet` from `main` for pre-release (#24223)
karthiknadig Oct 2, 2024
3e7d8e1
support setting only `--cov-report` arg (#24225)
eleanorjboyd Oct 2, 2024
d072503
Avoid prefixing with home when unnecessary (#24230)
DonJayamanne Oct 3, 2024
4b37abd
prevent test.only (#24235)
amunger Oct 3, 2024
c60f0dd
Bump tomli from 2.0.1 to 2.0.2 (#24229)
dependabot[bot] Oct 3, 2024
3362dc3
enable turning off the variable provider (#24231)
amunger Oct 3, 2024
92762ca
remove EOT from testing communication (#24220)
eleanorjboyd Oct 3, 2024
b8c0fc4
Update pylance.ts (#24237)
bschnurr Oct 3, 2024
1b36762
Remove notification for old linter formatter settings (#24240)
karthiknadig Oct 4, 2024
e5b47b9
Fix error with `displayName` is missing in PackageJSON (#24246)
karthiknadig Oct 4, 2024
6bd34bf
Wait 0.5 second for shell integration event, otherwise fall back to s…
anthonykim1 Oct 4, 2024
8c4dee4
Allow pytest to use correct interpreter from getActiveInterpreter (#2…
anthonykim1 Oct 4, 2024
ebe55a4
only show coverage button for rewrite (#24249)
eleanorjboyd Oct 5, 2024
204b8ca
Add customizable interpreter discovery timeout (#24227)
mnoah1 Oct 7, 2024
c2ed6b2
Update pylance gdpr classification tag (#24274)
luabud Oct 9, 2024
041be0d
Fix GDPR annotations (#24278)
lramos15 Oct 9, 2024
9be9308
fix: tag non-stable settings with new system (#24287)
rzhao271 Oct 11, 2024
c5a8e4f
Refactor code to remove unused JSDoc types (#24300)
brokoli777 Oct 14, 2024
5112073
Fix for conda activation during testing (#24295)
karthiknadig Oct 14, 2024
97b4610
Make `python_server.py` compatible to Python 3.7 (#24252)
T-256 Oct 14, 2024
7d471a4
Enable 3.13-dev tests
karthiknadig Oct 7, 2024
f6af3a1
Switch to `pytest`
karthiknadig Oct 7, 2024
8b4a47e
Fixes
karthiknadig Oct 7, 2024
0df1929
Fix version
karthiknadig Oct 7, 2024
e8dd8c0
Fix paths
karthiknadig Oct 8, 2024
fb79afb
Add properties to GDPR tags (#24320)
luabud Oct 17, 2024
28c13a1
Fix typo in class name (#24314)
karthiknadig Oct 18, 2024
5e5a7ce
add error message for missing pytest-cov while running coverage (#24288)
eleanorjboyd Oct 18, 2024
e7860a5
Restore `pixi` functionality only when Pixi is available (#24319)
karthiknadig Oct 21, 2024
40b29bf
Fix for duplication of python envs (#24321)
karthiknadig Oct 21, 2024
205a19e
Update VS Code engine and `@types/vscode` for APIs (#24335)
karthiknadig Oct 28, 2024
b428ba5
update jedi dependencies to add python 3.13 support (#24330)
soda92 Oct 28, 2024
d440bc1
disable shell integration for 3.13 (#24341)
anthonykim1 Oct 28, 2024
3115887
Update main version for release (#24338)
karthiknadig Oct 28, 2024
fdfe2a6
Update main to next pre-release (#24344)
karthiknadig Oct 28, 2024
9b182da
fix: upgrade settings to preview (#24354)
rzhao271 Oct 29, 2024
c6c1e8b
Jupyter API to get Env associated with Notebooks
DonJayamanne Oct 30, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
9 changes: 7 additions & 2 deletions .eslintrc
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,10 @@
"mocha": true
},
"parser": "@typescript-eslint/parser",
"plugins": ["@typescript-eslint"],
"plugins": [
"@typescript-eslint",
"no-only-tests"
],
"extends": [
"airbnb",
"plugin:@typescript-eslint/recommended",
Expand Down Expand Up @@ -69,6 +72,7 @@
"no-control-regex": "off",
"no-extend-native": "off",
"no-multi-str": "off",
"no-shadow": "off",
"no-param-reassign": "off",
"no-prototype-builtins": "off",
"no-restricted-syntax": [
Expand Down Expand Up @@ -96,6 +100,7 @@
}
],
"operator-assignment": "off",
"strict": "off"
"strict": "off",
"no-only-tests/no-only-tests": ["error", { "block": ["test", "suite"], "focus": ["only"] }]
}
}
2 changes: 1 addition & 1 deletion .github/actions/smoke-tests/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ runs:

# Bits from the VSIX are reused by smokeTest.ts to speed things up.
- name: Download VSIX
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: ${{ inputs.artifact_name }}

Expand Down
18 changes: 11 additions & 7 deletions .github/release_plan.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,18 +8,18 @@ Feature freeze is Monday @ 17:00 America/Vancouver, XXX XX. At that point, commi

| Month | Primary | Secondary |
|:----------|:----------|:------------|
| ~~January~~ | ~~Eleanor~~ | ~~Karthik~~ |
| ~~February~~ | ~~Kartik~~ | ~~Anthony~~ |
| ~~March~~ | ~~Karthik~~ | ~~Eleanor~~ |
| ~~April~~ | ~~Paula~~ | ~~Eleanor~~ |
| May | Anthony | Karthik |
| June | Eleanor | Paula |
| ~~January~~ | ~~Eleanor~~ | ~~Karthik~~ |
| ~~February~~ | ~~Kartik~~ | ~~Anthony~~ |
| ~~March~~ | ~~Karthik~~ | ~~Eleanor~~ |
| ~~April~~ | ~~Paula~~ | ~~Eleanor~~ |
| ~~May~~ | ~~Anthony~~ | ~~Karthik~~ |
| ~~June~~ | ~~Karthik~~ | ~~Eleanor~~ |
| July | Anthony | Karthik |
| August | Paula | Anthony |
| September | Anthony | Eleanor |
| October | Paula | Karthik |
| November | Eleanor | Paula |
| December | Karthik | Anthony |
| December | Eleanor | Anthony |

Paula: 3 primary, 2 secondary
Eleanor: 3 primary (2 left), 3 secondary (2 left)
Expand All @@ -40,6 +40,9 @@ NOTE: the number of this release is in the issue title and can be substituted in

- [ ] checkout to `main` on your local machine and run `git fetch` to ensure your local is up to date with the remote repo.
- [ ] Create a new branch called **`bump-release-[YYYY.minor]`**.
- [ ] Update `pet`:
- [ ] Go to the [pet](https://github.com/microsoft/python-environment-tools) repo and check `main` and latest `release/*` branch. If there are new changes in `main` then create a branch called `release/YYYY.minor` (matching python extension release `major.minor`).
- [ ] Update `build\azure-pipeline.stable.yml` to point to the latest `release/YYYY.minor` for `python-environment-tools`.
- [ ] Change the version in `package.json` to the next **even** number and switch the `-dev` to `-rc`. (🤖)
- [ ] Run `npm install` to make sure `package-lock.json` is up-to-date _(you should now see changes to the `package.json` and `package-lock.json` at this point which update the version number **only**)_. (🤖)
- [ ] Update `ThirdPartyNotices-Repository.txt` as appropriate. You can check by looking at the [commit history](https://github.com/microsoft/vscode-python/commits/main) and scrolling through to see if there's anything listed there which might have pulled in some code directly into the repository from somewhere else. If you are still unsure you can check with the team.
Expand Down Expand Up @@ -111,6 +114,7 @@ NOTE: this PR should make all CI relating to `main` be passing again (such as th
- [ ] Create a branch against **`release/YYYY.minor`** called **`release-[YYYY.minor.point]`**.
- [ ] Bump the point version number in the `package.json` to the next `YYYY.minor.point`
- [ ] Run `npm install` to make sure `package-lock.json` is up-to-date _(you should now see changes to the `package.json` and `package-lock.json` only relating to the new version number)_ . (🤖)
- [ ] If Point Release is due to an issue in `pet`. Update `build\azure-pipeline.stable.yml` to point to the branch `release/YYYY.minor` for `python-environment-tools` with the fix or decided by the team.
- [ ] Create a PR from this branch against `release/YYYY.minor`
- [ ] **Rebase** and merge this PR into the release branch
- [ ] Create a draft GitHub release for the release notes (🤖) ❄️
Expand Down
9 changes: 8 additions & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -165,7 +165,7 @@ jobs:
# macOS runners are expensive, and we assume that Ubuntu is enough to cover the Unix case.
os: [ubuntu-latest, windows-latest]
# Run the tests on the oldest and most recent versions of Python.
python: ['3.8', '3.x', '3.12-dev']
python: ['3.8', '3.x', '3.13-dev']

steps:
- name: Checkout
Expand Down Expand Up @@ -257,6 +257,13 @@ jobs:
- name: Install test requirements
run: python -m pip install --upgrade -r build/test-requirements.txt

- name: Rust Tool Chain setup
uses: dtolnay/rust-toolchain@stable

- name: Build Native Binaries
run: nox --session native_build
shell: bash

- name: Install functional test requirements
run: python -m pip install --upgrade -r ./build/functional-test-requirements.txt
if: matrix.test-suite == 'functional'
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/info-needed-closer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ jobs:
- name: Run info-needed Closer
uses: ./actions/needs-more-info-closer
with:
token: ${{secrets.GITHUB_TOKEN}}
label: info-needed
closeDays: 30
closeComment: "Because we have not heard back with the information we requested, we are closing this issue for now. If you are able to provide the info later on, then we will be happy to re-open this issue to pick up where we left off. \n\nHappy Coding!"
Expand Down
20 changes: 19 additions & 1 deletion .github/workflows/pr-check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,7 @@ jobs:
# macOS runners are expensive, and we assume that Ubuntu is enough to cover the Unix case.
os: [ubuntu-latest, windows-latest]
# Run the tests on the oldest and most recent versions of Python.
python: ['3.8', '3.x'] # run for 3 pytest versions, most recent stable, oldest version supported and pre-release
python: ['3.8', '3.x', '3.13-dev'] # run for 3 pytest versions, most recent stable, oldest version supported and pre-release
pytest-version: ['pytest', 'pytest@pre-release', 'pytest==6.2.0']

steps:
Expand Down Expand Up @@ -253,6 +253,13 @@ jobs:
- name: Install test requirements
run: python -m pip install --upgrade -r build/test-requirements.txt

- name: Rust Tool Chain setup
uses: dtolnay/rust-toolchain@stable

- name: Build Native Binaries
run: nox --session native_build
shell: bash

- name: Install functional test requirements
run: python -m pip install --upgrade -r ./build/functional-test-requirements.txt
if: matrix.test-suite == 'functional'
Expand Down Expand Up @@ -512,6 +519,17 @@ jobs:
requirements-file: './python_files/jedilsp_requirements/requirements.txt'
options: '-t ./python_files/lib/jedilsp --implementation py'

- name: Install build pre-requisite
run: python -m pip install wheel nox
shell: bash

- name: Rust Tool Chain setup
uses: dtolnay/rust-toolchain@stable

- name: Build Native Binaries
run: nox --session native_build
shell: bash

- name: Install test requirements
run: python -m pip install --upgrade -r build/test-requirements.txt

Expand Down
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -49,3 +49,8 @@ dist/**
package.nls.*.json
l10n/
python-env-tools/**
# coverage files produced as test output
python_files/tests/*/.data/.coverage*
python_files/tests/*/.data/*/.coverage*
src/testTestingRootWkspc/coverageWorkspace/.coverage

3 changes: 3 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,9 @@
"--extensionDevelopmentPath=${workspaceFolder}",
"--extensionTestsPath=${workspaceFolder}/out/test"
],
"env": {
"VSC_PYTHON_CI_TEST_GREP": "" // Modify this to run a subset of the single workspace tests
},
"sourceMaps": true,
"smartStep": true,
"outFiles": ["${workspaceFolder}/out/**/*", "!${workspaceFolder}/**/node_modules**/*"],
Expand Down
59 changes: 23 additions & 36 deletions build/azure-pipeline.pre-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,6 @@ resources:
ref: main
endpoint: Monaco

- repository: python-environment-tools
type: github
name: microsoft/python-environment-tools
ref: main
endpoint: Monaco


parameters:
- name: publishExtension
displayName: 🚀 Publish Extension
Expand All @@ -38,11 +31,6 @@ extends:
ghCreateTag: false
standardizedVersioning: true
l10nSourcePaths: ./src/client
sourceRepositoriesToScan:
include:
- repository: python-environment-tools
exclude:
- repository: translations

buildPlatforms:
- name: Linux
Expand Down Expand Up @@ -76,10 +64,6 @@ extends:
vsceTarget: win32-x64

buildSteps:
- checkout: self
displayName: Checkout Python Extension
path: ./s

- task: NodeTool@0
inputs:
versionSpec: '18.17.1'
Expand All @@ -104,9 +88,6 @@ extends:
- script: nox --session install_python_libs
displayName: Install Jedi, get-pip, etc

# - script: python ./build/update_ext_version.py --for-publishing
# displayName: Update build number

- script: python ./build/update_package_file.py
displayName: Update telemetry in package.json

Expand All @@ -116,24 +97,30 @@ extends:
- script: npx gulp prePublishBundle
displayName: Build

- checkout: python-environment-tools
displayName: Checkout python-environment-tools
path: ./s/python-env-tools

- script: nox --session azure_pet_build_before
displayName: Enable cargo config for azure
- bash: |
mkdir -p $(Build.SourcesDirectory)/python-env-tools/bin
chmod +x $(Build.SourcesDirectory)/python-env-tools/bin
displayName: Make Directory for python-env-tool binary

- template: azure-pipelines/extension/templates/steps/build-extension-rust-package.yml@templates
parameters:
vsceTarget: $(vsceTarget)
binaryName: pet
signing: true
workingDirectory: $(Build.SourcesDirectory)/python-env-tools
buildWasm: false
runTest: false

- script: nox --session azure_pet_build_after
displayName: Move bin to final location
- task: DownloadPipelineArtifact@2
inputs:
buildType: 'specific'
project: 'Monaco'
definition: 591
buildVersionToDownload: 'latest'
branchName: 'refs/heads/main'
targetPath: '$(Build.SourcesDirectory)/python-env-tools/bin'
artifactName: 'bin-$(vsceTarget)'
itemPattern: |
pet.exe
pet
ThirdPartyNotices.txt

- bash: |
ls -lf ./python-env-tools/bin
chmod +x ./python-env-tools/bin/pet*
ls -lf ./python-env-tools/bin
displayName: Set chmod for pet binary

- script: python -c "import shutil; shutil.rmtree('.nox', ignore_errors=True)"
displayName: Clean up Nox
Expand Down
56 changes: 24 additions & 32 deletions build/azure-pipeline.stable.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,6 @@ resources:
ref: main
endpoint: Monaco

- repository: python-environment-tools
type: github
name: microsoft/python-environment-tools
ref: release/latest
endpoint: Monaco

parameters:
- name: publishExtension
displayName: 🚀 Publish Extension
Expand All @@ -31,11 +25,7 @@ extends:
parameters:
publishExtension: ${{ parameters.publishExtension }}
l10nSourcePaths: ./src/client
sourceRepositoriesToScan:
include:
- repository: python-environment-tools
exclude:
- repository: translations
needsTools: true

buildPlatforms:
- name: Linux
Expand Down Expand Up @@ -69,10 +59,6 @@ extends:
vsceTarget: win32-x64

buildSteps:
- checkout: self
displayName: Checkout Python Extension
path: ./s

- task: NodeTool@0
inputs:
versionSpec: '18.17.1'
Expand Down Expand Up @@ -106,24 +92,30 @@ extends:
- script: npx gulp prePublishBundle
displayName: Build

- checkout: python-environment-tools
displayName: Checkout python-environment-tools
path: ./s/python-env-tools
- bash: |
mkdir -p $(Build.SourcesDirectory)/python-env-tools/bin
chmod +x $(Build.SourcesDirectory)/python-env-tools/bin
displayName: Make Directory for python-env-tool binary

- script: nox --session azure_pet_build_before
displayName: Enable cargo config for azure

- template: azure-pipelines/extension/templates/steps/build-extension-rust-package.yml@templates
parameters:
vsceTarget: $(vsceTarget)
binaryName: pet
signing: true
workingDirectory: $(Build.SourcesDirectory)/python-env-tools
buildWasm: false
runTest: false

- script: nox --session azure_pet_build_after
displayName: Move bin to final location
- task: DownloadPipelineArtifact@2
inputs:
buildType: 'specific'
project: 'Monaco'
definition: 593
buildVersionToDownload: 'latestFromBranch'
branchName: 'refs/heads/release/2024.18'
targetPath: '$(Build.SourcesDirectory)/python-env-tools/bin'
artifactName: 'bin-$(vsceTarget)'
itemPattern: |
pet.exe
pet
ThirdPartyNotices.txt

- bash: |
ls -lf ./python-env-tools/bin
chmod +x ./python-env-tools/bin/pet*
ls -lf ./python-env-tools/bin
displayName: Set chmod for pet binary

- script: python -c "import shutil; shutil.rmtree('.nox', ignore_errors=True)"
displayName: Clean up Nox
Expand Down
3 changes: 2 additions & 1 deletion build/ci/addEnvPath.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,8 @@

#Adds the virtual environment's executable path to json file

import json,sys
import json
import sys
import os.path
jsonPath = sys.argv[1]
key = sys.argv[2]
Expand Down
2 changes: 2 additions & 0 deletions build/functional-test-requirements.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# List of requirements for functional tests
versioneer
numpy
pytest
pytest-cov
7 changes: 7 additions & 0 deletions build/test-requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -24,3 +24,10 @@ freezegun

# testing custom pytest plugin require the use of named pipes
namedpipe; platform_system == "Windows"

# typing for Django files
django-stubs

# for coverage
coverage
pytest-cov
2 changes: 1 addition & 1 deletion build/update_ext_version.py
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ def main(package_json: pathlib.Path, argv: Sequence[str]) -> None:
raise ValueError(
f"Major version [{major}] must be the current year [{current_year}].",
f"If changing major version after new year's, change to {current_year}.1.0",
f"Minor version must be updated based on release or pre-release channel.",
"Minor version must be updated based on release or pre-release channel.",
)

if args.release and not is_even(minor):
Expand Down
Loading
Loading