From b51545ab39722e07181493590245dcdd757a58dd Mon Sep 17 00:00:00 2001 From: laosb Date: Sun, 30 Nov 2025 10:28:57 +0800 Subject: [PATCH] fix: Strip JSR deps before publishing and add deno.json JSR itself does not accept 'jsr:' dependencies in package.json, remove them in the publish workflow before publishing. Add $schema to jsr.json. --- .github/workflows/publish_jsr.yml | 16 ++++++++++++++++ deno.json | 5 +++++ jsr.json | 1 + 3 files changed, 22 insertions(+) create mode 100644 deno.json diff --git a/.github/workflows/publish_jsr.yml b/.github/workflows/publish_jsr.yml index 0b1d2e9..3510919 100644 --- a/.github/workflows/publish_jsr.yml +++ b/.github/workflows/publish_jsr.yml @@ -32,5 +32,21 @@ jobs: - name: Install dependencies run: pnpm install + # This step removes JSR dependencies from package.json before publishing, + # Because apparently now while major npm compatible package managers + # support JSR dependencies in package.json, JSR itself does not. + - name: Remove JSR deps from package.json + run: | + node -e " + const fs = require('fs'); + const pkg = JSON.parse(fs.readFileSync('package.json', 'utf-8')); + for (const dep in pkg.dependencies ?? {}) { + if (pkg.dependencies[dep].startsWith('jsr:')) { + delete pkg.dependencies[dep]; + } + } + fs.writeFileSync('package.json', JSON.stringify(pkg, null, 2)); + " + - name: Publish to JSR run: pnpm dlx jsr publish diff --git a/deno.json b/deno.json new file mode 100644 index 0000000..32f3350 --- /dev/null +++ b/deno.json @@ -0,0 +1,5 @@ +{ + "imports": { + "@std/cli": "jsr:@std/cli@1" + } +} diff --git a/jsr.json b/jsr.json index ab18bfe..9961e03 100644 --- a/jsr.json +++ b/jsr.json @@ -1,4 +1,5 @@ { + "$schema": "https://jsr.io/schema/config-file.v1.json", "name": "@textplace/core", "version": "0.5.0", "exports": "./src/mod.ts",