diff --git a/.github/workflows/node.js.yml b/.github/workflows/node.js.yml index f45c39c..21b509e 100644 --- a/.github/workflows/node.js.yml +++ b/.github/workflows/node.js.yml @@ -27,7 +27,7 @@ jobs: with: node-version: ${{ matrix.node-version }} - name: Install dependencies - run: npm i + run: npm install --ignore-scripts - name: Run tests run: npm run test automerge: diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 0000000..3f5efa7 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,29 @@ +name: Publish Package + +on: + push: + tags: + - 'v*' + +permissions: + id-token: write # Required for OIDC + contents: read + +jobs: + publish: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + + - uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0 + with: + node-version: '24.x' + registry-url: 'https://registry.npmjs.org' + + # Ensure npm 11.5.1 or later is installed + - name: Update npm + run: npm install -g npm@latest + - run: npm install --ignore-scripts + - run: npm run build --if-present + - run: npm test + - run: npm publish diff --git a/.npmrc b/.npmrc index 43c97e7..304fb65 100644 --- a/.npmrc +++ b/.npmrc @@ -1 +1,3 @@ package-lock=false +ignore-scripts=true +save-exact=true diff --git a/package.json b/package.json index a11e3a2..466fcc4 100644 --- a/package.json +++ b/package.json @@ -10,6 +10,11 @@ "coverage": "c8 -r html npm test", "lint": "eslint ." }, + "publishConfig": { + "registry": "https://registry.npmjs.org", + "access": "public", + "provenance": true + }, "repository": { "type": "git", "url": "git+https://github.com/TopCli/text-align.git" @@ -32,7 +37,7 @@ }, "homepage": "https://github.com/TopCli/text-align#readme", "dependencies": { - "@topcli/wcwidth": "^1.0.1" + "@topcli/wcwidth": "1.0.1" }, "devDependencies": { "@openally/config.eslint": "^2.2.0",