From df0234b2fb3fc5c3f03139f7e015f537a0e35891 Mon Sep 17 00:00:00 2001 From: Rob Reed Date: Fri, 21 Nov 2025 11:19:24 -0800 Subject: [PATCH 1/3] [XELP] Use forked brighterscript & brighterscript-formatter modules. --- package-lock.json | 19 +++++++++---------- package.json | 7 +++---- 2 files changed, 12 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index dfee6474..513e0729 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,8 +15,8 @@ "@vscode/extension-telemetry": "^0.4.7", "array-sort": "^1.0.0", "backoff": "^2.5.0", - "brighterscript": "^0.70.3", - "brighterscript-formatter": "^1.7.19", + "brighterscript": "https://github.com/plexinc/brighterscript.git#0.70.202511253", + "brighterscript-formatter": "https://github.com/plexinc/brighterscript-formatter.git#1.7.2025112720", "clone-deep": "^4.0.1", "debounce": "^1.2.0", "dotenv": "^6.2.0", @@ -101,7 +101,6 @@ "yargs": "^16.2.0" }, "engines": { - "node": "^12.12.0", "vscode": "^1.81.0" }, "optionalDependencies": { @@ -2565,9 +2564,9 @@ } }, "node_modules/brighterscript": { - "version": "0.70.3", - "resolved": "https://registry.npmjs.org/brighterscript/-/brighterscript-0.70.3.tgz", - "integrity": "sha512-R9r/AWvxDZioTfDvRZT50yO+PAHl/nElKA3SO9eWfmF43J88CBEtLT1dpLfFPfmPfdtxjcF58ZW87rmcqqYVyA==", + "version": "0.70.202511253", + "resolved": "https://github.com/plexinc/brighterscript.git#0cefe327d40abc09e0486c3e7a66874a55ab603a", + "license": "MIT", "dependencies": { "@rokucommunity/bslib": "^0.1.1", "@rokucommunity/logger": "^0.3.11", @@ -2614,11 +2613,11 @@ } }, "node_modules/brighterscript-formatter": { - "version": "1.7.19", - "resolved": "https://registry.npmjs.org/brighterscript-formatter/-/brighterscript-formatter-1.7.19.tgz", - "integrity": "sha512-GDitTZ0uM8AdKr9cwssx0IeA1jh9t6Lcp9fm68Pk9LrRG3otGe+eYP2Y/1+axn6T4MBo6zfjrsJy2JrdbaDbWw==", + "version": "1.7.2025112720", + "resolved": "https://github.com/plexinc/brighterscript-formatter.git#fecff86ec6e198bd9b5cbbd7c4109c9f8b4acb37", + "license": "MIT", "dependencies": { - "brighterscript": "^0.70.2", + "brighterscript": "https://github.com/plexinc/brighterscript.git#0.70.202511253", "glob-all": "^3.3.0", "jsonc-parser": "^3.0.0", "source-map": "^0.7.3", diff --git a/package.json b/package.json index 7fea7a7e..abb5730f 100644 --- a/package.json +++ b/package.json @@ -14,8 +14,7 @@ "multi-root-ready" ], "engines": { - "vscode": "^1.81.0", - "node": "^12.12.0" + "vscode": "^1.81.0" }, "repository": { "type": "git", @@ -58,8 +57,8 @@ "@vscode/extension-telemetry": "^0.4.7", "array-sort": "^1.0.0", "backoff": "^2.5.0", - "brighterscript": "^0.70.3", - "brighterscript-formatter": "^1.7.19", + "brighterscript": "https://github.com/plexinc/brighterscript.git#0.70.202511253", + "brighterscript-formatter": "https://github.com/plexinc/brighterscript-formatter.git#1.7.2025112720", "clone-deep": "^4.0.1", "debounce": "^1.2.0", "dotenv": "^6.2.0", From 21666c0d136b8c4de734acc3dcd61e31dd8462a9 Mon Sep 17 00:00:00 2001 From: Rob Reed Date: Wed, 26 Nov 2025 19:52:40 -0800 Subject: [PATCH 2/3] [XELP] GHA shadow release + vsix --- .github/workflows/xelp_shadow_release.yml | 101 ++++++++++++++++++++++ 1 file changed, 101 insertions(+) create mode 100644 .github/workflows/xelp_shadow_release.yml diff --git a/.github/workflows/xelp_shadow_release.yml b/.github/workflows/xelp_shadow_release.yml new file mode 100644 index 00000000..edc9df79 --- /dev/null +++ b/.github/workflows/xelp_shadow_release.yml @@ -0,0 +1,101 @@ +name: Xelp Shadow Release + +on: + workflow_dispatch: + +jobs: + shadow-release: + runs-on: ubuntu-latest + permissions: + contents: write + steps: + - name: Checkout xelp/main + uses: actions/checkout@v4 + with: + ref: xelp/main + fetch-depth: 0 + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: '18' + + - name: Configure Git + run: | + git config user.name "github-actions[bot]" + git config user.email "github-actions[bot]@users.noreply.github.com" + + - name: Calculate XelpShadow Version + id: version + run: | + CURRENT_VERSION=$(node -p "require('./package.json').version") + PACKAGE_NAME=$(node -p "require('./package.json').name") + echo "Current version: $CURRENT_VERSION" + echo "Package name: $PACKAGE_NAME" + echo "package_name=$PACKAGE_NAME" >> $GITHUB_OUTPUT + + # Remove pre-release and build metadata + BASE_VERSION=$(echo "$CURRENT_VERSION" | sed 's/[-+].*//') + + # Split version into parts + IFS='.' read -r -a PARTS <<< "$BASE_VERSION" + if [ ${#PARTS[@]} -ne 3 ]; then + echo "Error: Version must be in MAJOR.MINOR.PATCH format" + exit 1 + fi + MAJOR="${PARTS[0]}" + MINOR="${PARTS[1]}" + PATCH="${PARTS[2]}" + + # Get build metadata + DATE=$(date +'%Y%m%d') + SHORT_HASH=$(git rev-parse --short HEAD) + + # Construct base version: MAJOR.MINOR.DATE + CLEAN_VERSION="$MAJOR.$MINOR.$DATE$PATCH" + + # Full version with metadata for the tag message/release notes + METADATA_VERSION="$CLEAN_VERSION+xelp-$SHORT_HASH" + + # Use clean version for package.json and git tag (no + or -) + PACKAGE_VERSION="$CLEAN_VERSION" + TAG_VERSION="$CLEAN_VERSION" + + echo "Clean version: $CLEAN_VERSION" + echo "Metadata version: $METADATA_VERSION" + + echo "package_version=$PACKAGE_VERSION" >> $GITHUB_OUTPUT + echo "tag_version=$TAG_VERSION" >> $GITHUB_OUTPUT + echo "metadata_version=$METADATA_VERSION" >> $GITHUB_OUTPUT + - name: Install dependencies + run: npm ci + + - name: Update package.json version + run: | + npm version ${{ steps.version.outputs.package_version }} --no-git-tag-version + + - name: Create VSIX + run: npm run create-package + + - name: Commit and Push + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + set -e + git checkout -b xelp/dist + git add -f *.vsix package.json package-lock.json + git commit -m "Release shadow version ${{ steps.version.outputs.package_version }}" + git tag -a "${{ steps.version.outputs.tag_version }}" -m "Shadow release ${{ steps.version.outputs.metadata_version }}" + git push origin xelp/dist --force + git push origin "${{ steps.version.outputs.tag_version }}" --force + + - name: Create Release + env: + GH_TOKEN: ${{ secrets.GH_PAT }} + run: | + gh release create "${{ steps.version.outputs.tag_version }}" \ + --repo $GITHUB_REPOSITORY \ + --title "Shadow Release ${{ steps.version.outputs.tag_version }}" \ + --notes "Shadow release build ${{ steps.version.outputs.metadata_version }}" \ + --prerelease \ + *.vsix From 8704c3a80712b9f5cded536b204b1d8f0ba91570 Mon Sep 17 00:00:00 2001 From: Rob Reed Date: Wed, 26 Nov 2025 20:07:39 -0800 Subject: [PATCH 3/3] [GHA] disable few actions --- .github/workflows/build.yml | 5 ----- ...eate-vsix-from-pr.yml => create-vsix-from-pr.yml.disable} | 0 .../workflows/{create-vsix.yml => create-vsix.yml.disable} | 0 .github/workflows/{docs.yml => docs.yml.disable} | 0 ...initialize-release.yml => initialize-release.yml.disable} | 0 ...ease-artifacts.yml => make-release-artifacts.yml.disable} | 0 .../{publish-release.yml => publish-release.yml.disable} | 0 7 files changed, 5 deletions(-) rename .github/workflows/{create-vsix-from-pr.yml => create-vsix-from-pr.yml.disable} (100%) rename .github/workflows/{create-vsix.yml => create-vsix.yml.disable} (100%) rename .github/workflows/{docs.yml => docs.yml.disable} (100%) rename .github/workflows/{initialize-release.yml => initialize-release.yml.disable} (100%) rename .github/workflows/{make-release-artifacts.yml => make-release-artifacts.yml.disable} (100%) rename .github/workflows/{publish-release.yml => publish-release.yml.disable} (100%) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6518d40c..2e0f579a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -8,9 +8,6 @@ on: jobs: ci: runs-on: ${{ matrix.os }} - env: - #just hardcode this. It's not a mission-critical token, and we can always change it - COVERALLS_REPO_TOKEN: "Ysqq6q68DgojDzv3gvl5Yv029HXZYwGxq" strategy: matrix: os: [ubuntu-latest, macos-latest, windows-latest] @@ -23,6 +20,4 @@ jobs: - run: npm run build - run: npm run lint - run: npm run test - # disable coverage for now (because coveralls is down right now) - #- run: npm run publish-coverage - run: npm run create-package diff --git a/.github/workflows/create-vsix-from-pr.yml b/.github/workflows/create-vsix-from-pr.yml.disable similarity index 100% rename from .github/workflows/create-vsix-from-pr.yml rename to .github/workflows/create-vsix-from-pr.yml.disable diff --git a/.github/workflows/create-vsix.yml b/.github/workflows/create-vsix.yml.disable similarity index 100% rename from .github/workflows/create-vsix.yml rename to .github/workflows/create-vsix.yml.disable diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml.disable similarity index 100% rename from .github/workflows/docs.yml rename to .github/workflows/docs.yml.disable diff --git a/.github/workflows/initialize-release.yml b/.github/workflows/initialize-release.yml.disable similarity index 100% rename from .github/workflows/initialize-release.yml rename to .github/workflows/initialize-release.yml.disable diff --git a/.github/workflows/make-release-artifacts.yml b/.github/workflows/make-release-artifacts.yml.disable similarity index 100% rename from .github/workflows/make-release-artifacts.yml rename to .github/workflows/make-release-artifacts.yml.disable diff --git a/.github/workflows/publish-release.yml b/.github/workflows/publish-release.yml.disable similarity index 100% rename from .github/workflows/publish-release.yml rename to .github/workflows/publish-release.yml.disable