Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/pr-check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@ on:
permissions: {}

env:
NODE_VERSION: 18.17.1
NODE_VERSION: 22.17.0
TEST_RESULTS_DIRECTORY: .
# Force a path with spaces and unicode chars to test extension works in these scenarios
special-working-directory: './🐍 🐛'
special-working-directory-relative: '🐍 🐛'
special-working-directory: './testDir'
special-working-directory-relative: 'testDir'

jobs:
build-vsix:
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/push-check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@ on:
permissions: {}

env:
NODE_VERSION: 18.17.1
NODE_VERSION: 22.17.0
TEST_RESULTS_DIRECTORY: .
# Force a path with spaces and unicode chars to test extension works in these scenarios
special-working-directory: './🐍 🐛'
special-working-directory-relative: '🐍 🐛'
special-working-directory: './testDir'
special-working-directory-relative: 'testDir'

jobs:
build-vsix:
Expand Down
7 changes: 6 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,9 @@ node_modules
bundled/libs/
**/__pycache__
**/.pytest_cache
**/.vs
**/.vs

# Generated files (sources live in pre-built/)
l10n/bundle.l10n.*.json
package.nls.*.json
telemetry.json
4 changes: 4 additions & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Force public npm registry to avoid CI auth (E401) when no token is provided
registry=https://registry.npmjs.org/
# Do not require auth for public installs
always-auth=false
8 changes: 4 additions & 4 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,12 @@
"request": "launch",
"runtimeExecutable": "${execPath}",
"args": [
"./out/test/**/*.unit.test.js",
"--extensionDevelopmentPath=${workspaceFolder}",
"--extensionTestsPath=${workspaceFolder}/out/test/unittest/index",
//"--grep", "<suite name>",
"--timeout=300000"
"--extensionTestsPath=${workspaceFolder}/out/test/unittest/index"
],
// "env": {
// "TEST_GREP": "Python API Tests"
// },
"outFiles": ["${workspaceFolder}/out/**/*.js"],
"preLaunchTask": "tasks: watch-tests"
}
Expand Down
1 change: 1 addition & 0 deletions .vscodeignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ build/**
out/**
node_modules/**
src/**
pre-built/**
.gitignore
.yarnrc
webpack.config.js
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,4 +53,4 @@ You can reference the table below to find the most recent Python Debugger extens

## Data and telemetry
The Debugpy Extension for Visual Studio Code collects usage data and sends it to Microsoft to help improve our products and services. Read our [privacy statement](https://privacy.microsoft.com/privacystatement) to learn more. This extension respects the `telemetry.enableTelemetry` setting which you can learn more about at https://code.visualstudio.com/docs/supporting/faq#_how-to-disable-telemetry-reporting.
The Debugpy Extension for Visual Studio Code collects usage data and sends it to Microsoft to help improve our products and services. Read our [privacy statement](https://privacy.microsoft.com/privacystatement) to learn more. This extension respects the `telemetry.telemetryLevel` setting which you can learn more about at https://code.visualstudio.com/docs/supporting/faq#_how-to-disable-telemetry-reporting.
11 changes: 11 additions & 0 deletions build/NuGet.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<config>
<add key="repositoryPath" value="NuGetPackages" />
</config>
<packageSources>
<!-- Limit to one feed per 1ES guidance -->
<clear />
<add key="VS-CoreXtFeeds" value="https://pkgs.dev.azure.com/devdiv/_packaging/VS-CoreXtFeeds/nuget/v3/index.json" protocolVersion="3" />
</packageSources>
</configuration>
124 changes: 124 additions & 0 deletions build/azure-devdiv-pipeline.pre-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
# Run on a schedule
trigger: none
pr: none

schedules:
- cron: '0 10 * * 1-5' # 10AM UTC (2AM PDT) MON-FRI (VS Code Pre-release builds at 9PM PDT)
displayName: Nightly Pre-Release Schedule
always: false # only run if there are source code changes
branches:
include:
- main

resources:
repositories:
- repository: MicroBuildTemplate
type: git
name: 1ESPipelineTemplates/MicroBuildTemplate
ref: refs/tags/release
variables:
- name: TeamName
value: VSCode-python-debugger
- name: VsixName
value: python-debugger.vsix
- name: AZURE_ARTIFACTS_FEED
value: 'https://devdiv.pkgs.visualstudio.com/DevDiv/_packaging/Pylance_PublicPackages/npm/registry/'
parameters:
- name: publishExtension
displayName: 🚀 Publish Extension
type: boolean
default: false

- name: buildPlatforms
type: object
default:
- name: Linux
vsceTarget: ''
- name: Linux
packageArch: arm64
vsceTarget: linux-arm64
- name: Linux
packageArch: arm
vsceTarget: linux-armhf
- name: Linux
packageArch: x64
vsceTarget: linux-x64
- name: MacOS
packageArch: arm64
vsceTarget: darwin-arm64
- name: MacOS
packageArch: x64
vsceTarget: darwin-x64
- name: Windows
packageArch: arm
vsceTarget: win32-arm64
- name: Windows
packageArch: x64
vsceTarget: win32-x64

- name: buildSteps
type: stepList
default:
- script: npm ci
displayName: Install NPM dependencies

- script: python -m pip install -U pip
displayName: Upgrade pip

- script: python -m pip install wheel
displayName: Install wheel

- script: python -m pip install nox
displayName: Install nox

- script: python -m nox --session install_bundled_libs
displayName: Install Python dependencies

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

- pwsh: Copy-Item -Path "pre-built/*" -Destination "." -Recurse -Force
displayName: Copy pre-built files

- script: npm run package
displayName: Build extension

extends:
template: azure-pipelines/MicroBuild.1ES.Official.yml@MicroBuildTemplate
parameters:
sdl:
sourceAnalysisPool: VSEngSS-MicroBuild2022-1ES
codeSignValidation:
enabled: true
sbom:
enabled: false # Disable global SBOM generation; we'll enable selectively per artifact output
pool:
name: AzurePipelines-EO
os: windows

customBuildTags:
- ES365AIMigrationTooling
stages:
- stage: Build
displayName: Build & Package Extension
jobs:
- template: build/templates/package.yml@self
parameters:
buildPlatforms: ${{ parameters.buildPlatforms }}
buildSteps: ${{ parameters.buildSteps }}
isPreRelease: true
standardizedVersioning: true

- stage: Publish
displayName: Publish Extension
dependsOn: Build
jobs:
- template: build/templates/publish-extension.yml@self
parameters:
buildPlatforms: ${{ parameters.buildPlatforms }}
publishExtension: ${{ parameters.publishExtension }}
preRelease: true
teamName: $(TeamName)
ghCreateTag: true
ghCreateRelease: true
ghReleaseAddChangeLog: true
118 changes: 118 additions & 0 deletions build/azure-devdiv-pipeline.stable.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
name: Publish Release
trigger: none
# branches:
# include:
# - release*
# tags:
# include: ['*']
pr: none

resources:
repositories:
- repository: MicroBuildTemplate
type: git
name: 1ESPipelineTemplates/MicroBuildTemplate
ref: refs/tags/release
variables:
- name: TeamName
value: VSCode-python-debugger
- name: VsixName
value: python-debugger.vsix
- name: AZURE_ARTIFACTS_FEED
value: 'https://devdiv.pkgs.visualstudio.com/DevDiv/_packaging/Pylance_PublicPackages/npm/registry/'

parameters:
- name: publishExtension
displayName: 🚀 Publish Extension
type: boolean
default: false

- name: buildPlatforms
type: object
default:
- name: Linux
vsceTarget: ''
- name: Linux
packageArch: arm64
vsceTarget: linux-arm64
- name: Linux
packageArch: arm
vsceTarget: linux-armhf
- name: Linux
packageArch: x64
vsceTarget: linux-x64
- name: MacOS
packageArch: arm64
vsceTarget: darwin-arm64
- name: MacOS
packageArch: x64
vsceTarget: darwin-x64
- name: Windows
packageArch: arm
vsceTarget: win32-arm64
- name: Windows
packageArch: x64
vsceTarget: win32-x64

- name: buildSteps
type: stepList
default:
- script: npm ci
displayName: Install NPM dependencies

- script: python -m pip install -U pip
displayName: Upgrade pip

- script: python -m pip install wheel
displayName: Install wheel

- script: python -m pip install nox
displayName: Install nox

- script: python -m nox --session install_bundled_libs
displayName: Install Python dependencies

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

- pwsh: Copy-Item -Path "pre-built/*" -Destination "." -Recurse -Force
displayName: Copy pre-built files

- script: npm run package
displayName: Build extension

extends:
template: azure-pipelines/MicroBuild.1ES.Official.yml@MicroBuildTemplate
parameters:
sdl:
sourceAnalysisPool: VSEngSS-MicroBuild2022-1ES
codeSignValidation:
enabled: true
sbom:
enabled: false # Disable global SBOM generation; we'll enable selectively per artifact output
pool:
name: AzurePipelines-EO
os: windows

customBuildTags:
- ES365AIMigrationTooling
stages:
- stage: Build
displayName: Build & Package Extension
jobs:
- template: build/templates/package.yml@self
parameters:
buildPlatforms: ${{ parameters.buildPlatforms }}
buildSteps: ${{ parameters.buildSteps }}
isPreRelease: false

- stage: Publish
displayName: Publish Extension
dependsOn: Build
jobs:
- template: build/templates/publish-extension.yml@self
parameters:
buildPlatforms: ${{ parameters.buildPlatforms }}
publishExtension: ${{ parameters.publishExtension }}
preRelease: false
teamName: $(TeamName)
2 changes: 1 addition & 1 deletion build/azure-pipeline.pre-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ extends:
buildSteps:
- task: NodeTool@0
inputs:
versionSpec: '18.17.1'
versionSpec: '22.17.0'
displayName: Select Node version

- task: UsePythonVersion@0
Expand Down
2 changes: 1 addition & 1 deletion build/azure-pipeline.stable.yml
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ extends:
buildSteps:
- task: NodeTool@0
inputs:
versionSpec: '18.17.1'
versionSpec: '22.17.0'
displayName: Select Node version

- task: UsePythonVersion@0
Expand Down
Loading
Loading