Skip to content

package-lock: Add

package-lock: Add #4

name: VSCode Extension
on:
push:
branches: [ "mainline" ]
paths:
- 'editors/vscode/**'
pull_request:
branches: [ "mainline" ]
paths:
- 'editors/vscode/**'
jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read
defaults:
run:
working-directory: editors/vscode
steps:
- uses: actions/checkout@v6
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'npm'
cache-dependency-path: editors/vscode/package-lock.json
- name: Install dependencies
run: npm ci
- name: Type check
run: npm run lint
- name: Build (esbuild)
run: npm run package
- name: Package VSIX
run: npx vsce package --no-dependencies
- name: Upload VSIX artifact
uses: actions/upload-artifact@v4
with:
name: sharpy-lang-vsix
path: editors/vscode/*.vsix
retention-days: 30