Skip to content

Commit 53dc928

Browse files
committed
updated readme
1 parent 6fc64f4 commit 53dc928

6 files changed

Lines changed: 36 additions & 87 deletions

File tree

.github/workflows/ci.yml

Lines changed: 18 additions & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -2,101 +2,40 @@ name: CI
22

33
on:
44
push:
5-
branches: [ main, master, debug-and-decorators ]
5+
branches: [main]
66
pull_request:
7-
branches: [ main, master, debug-and-decorators ]
7+
branches: [main]
88

99
jobs:
10-
lint-and-unit:
11-
name: Lint and Unit Tests
12-
strategy:
13-
matrix:
14-
os: [ubuntu-latest, windows-latest]
15-
runs-on: ${{ matrix.os }}
16-
steps:
17-
- name: Checkout repository
18-
uses: actions/checkout@v4
19-
20-
- name: Use Node.js
21-
uses: actions/setup-node@v4
22-
with:
23-
node-version: '18'
24-
cache: 'npm'
25-
26-
- name: Install dependencies
27-
run: npm ci
28-
29-
- name: Run linter
30-
run: npm run lint
31-
32-
- name: Run unit tests
33-
run: npm run test:unit
34-
35-
- name: Run tests via batch script (Windows)
36-
if: matrix.os == 'windows-latest'
37-
shell: cmd
38-
continue-on-error: true
39-
run: |
40-
if exist run_tests.bat (
41-
call run_tests.bat
42-
if exist project_logs.log (
43-
echo "=== Test logs ==="
44-
type project_logs.log
45-
)
46-
)
47-
48-
vscode-tests-and-package:
49-
name: VS Code integration tests and package
50-
needs: lint-and-unit
10+
build-and-test:
11+
name: Build & Test
5112
runs-on: windows-latest
13+
5214
steps:
53-
- name: Checkout repository
15+
- name: Checkout
5416
uses: actions/checkout@v4
5517

56-
- name: Use Node.js
18+
- name: Setup Node.js
5719
uses: actions/setup-node@v4
5820
with:
59-
node-version: '18'
21+
node-version: 20
22+
cache: npm
6023

6124
- name: Install dependencies
6225
run: npm ci
6326

64-
- name: Run VS Code integration tests
65-
env:
66-
CI: true
67-
VSCODE_VERSION: insiders
68-
run: npm run test:integration
27+
- name: Lint
28+
run: npx eslint .
29+
30+
- name: Run extension tests
31+
run: npm test
6932

70-
- name: Package VSIX
71-
run: npm run package:vsix
33+
- name: Package VSIX (dry run)
34+
run: npx vsce package --no-dependencies
7235

7336
- name: Upload VSIX artifact
7437
uses: actions/upload-artifact@v4
7538
with:
7639
name: blinter-vsix
77-
path: blinter.vsix
78-
79-
publish-release:
80-
name: Publish VSIX to GitHub Release
81-
needs: vscode-tests-and-package
82-
# Only publish on tag pushes (release tags). This avoids publishing from every push/PR.
83-
if: startsWith(github.ref, 'refs/tags/')
84-
runs-on: ubuntu-latest
85-
steps:
86-
- name: Checkout
87-
uses: actions/checkout@v4
88-
89-
- name: Download VSIX artifact
90-
uses: actions/download-artifact@v4
91-
with:
92-
name: blinter-vsix
93-
path: .
94-
95-
- name: Create GitHub Release
96-
uses: softprops/action-gh-release@v1
97-
with:
98-
files: blinter.vsix
99-
draft: false
100-
prerelease: false
101-
env:
102-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
40+
path: "*.vsix"
41+
retention-days: 2

.gitignore

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,5 @@ release_notes.md
1313
!progress.txt
1414
!project.txt
1515
!todo.txt
16-
!vendor/Blinter/version.txt
16+
!vendor/version.txt
1717
@ts-nocheck
18-
vendor/Blinter

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ Blinter integrates the Python-based Blinter linter into the IDE's **Run & Debug*
1313

1414
## Requirements (Prerequisites)
1515

16+
- **Windows OS** (required). Blinter specifically targets Windows batch scripting.
1617
- **Python 3.10+** installed and accessible on the system PATH, or configured via `blinter.pythonPath`.
1718
- **Blinter** installed via pip:
1819
```
@@ -26,7 +27,7 @@ Blinter integrates the Python-based Blinter linter into the IDE's **Run & Debug*
2627
If you are cloning this repository for development, you must pull the core Blinter linter sources into the `vendor/` folder (which is ignored by Git to keep the repository size manageable).
2728

2829
1. Execute the `setup-vendor.bat` script located at the repository root.
29-
2. This script downloads and extracts the validated version of the core linter into `vendor/Blinter`.
30+
2. This script downloads and extracts the validated version of the core linter (**v1.0.112 @ 3564f35**) into `vendor/Blinter`.
3031

3132
> [!NOTE]
3233
> The extension package (`.vsix`) automatically includes these sources, so regular users do not need to perform this setup.

extension.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,11 @@ const { parseBlinterOutput } = require('./lib/parser');
99
const { InlineDebugAdapterSession } = require('./lib/debugAdapterCore');
1010

1111
function activate(context) {
12+
if (process.platform !== 'win32') {
13+
vscode.window.showErrorMessage('Blinter only supports Windows OS. Extension will not be activated.');
14+
return;
15+
}
16+
1217
// Register debug configuration provider
1318
context.subscriptions.push(
1419
vscode.debug.registerDebugConfigurationProvider('blinter-debug', {

package.json

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,11 @@
33
"version": "1.12.25103",
44
"publisher": "14ag",
55
"icon": "icons/blinter-logo.png",
6-
"description": "A powerful linter for Windows Batch files with real-time feedback and quick fixes (Core v1.0.112)",
6+
"description": "A powerful linter for Windows Batch files with real-time feedback and quick fixes (Core v1.0.112 @ 3564f35). Only supports Windows OS.",
77
"displayName": "Blinter",
8+
"os": [
9+
"win32"
10+
],
811
"author": {
912
"name": "14ag",
1013
"url": "https://github.com/14ag"
@@ -126,7 +129,8 @@
126129
"debug": [
127130
{
128131
"id": "blinter.outputSummary",
129-
"name": "Blinter Output"
132+
"name": "Blinter Output",
133+
"icon": "icons/blinter-logo.png"
130134
}
131135
]
132136
},

setup-vendor.bat

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,19 @@ setlocal
33

44
:: Configuration
55
set BLINTER_VERSION=1.0.112
6+
set BLINTER_COMMIT=3564f35
67
set VENDOR_DIR=%~dp0vendor\Blinter
7-
set ZIP_FILE=%TEMP%\Blinter-%BLINTER_VERSION%-src.zip
8+
set ZIP_FILE=%TEMP%\Blinter-%BLINTER_VERSION%-%BLINTER_COMMIT%-src.zip
89
set EXTRACT_DIR=%TEMP%\Blinter-src-extract
910

10-
echo [Blinter] Setting up vendor sources (v%BLINTER_VERSION%)...
11+
echo [Blinter] Setting up vendor sources (v%BLINTER_VERSION% @ %BLINTER_COMMIT%)...
1112

1213
:: Create vendor directory if it doesn't exist
1314
if not exist "%VENDOR_DIR%" mkdir "%VENDOR_DIR%"
1415

1516
:: Download source from GitHub
1617
echo [Blinter] Downloading source zipball...
17-
powershell -Command "Invoke-WebRequest -Uri 'https://api.github.com/repos/tboy1337/Blinter/zipball/v%BLINTER_VERSION%' -OutFile '%ZIP_FILE%' -UseBasicParsing"
18+
powershell -Command "Invoke-WebRequest -Uri 'https://api.github.com/repos/tboy1337/Blinter/zipball/%BLINTER_COMMIT%' -OutFile '%ZIP_FILE%' -UseBasicParsing"
1819

1920
if %ERRORLEVEL% neq 0 (
2021
echo [Error] Failed to download Blinter source.

0 commit comments

Comments
 (0)