From 888489102e38df0b4d2e2c48782068a9f91dcace Mon Sep 17 00:00:00 2001 From: James Chartrand Date: Wed, 15 Jan 2025 19:09:00 -0500 Subject: [PATCH 1/9] move status check before expiry check --- lib/index.js | 20 +++++++++++--------- package.json | 2 +- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/lib/index.js b/lib/index.js index b0996cef..a2c6c647 100644 --- a/lib/index.js +++ b/lib/index.js @@ -355,19 +355,21 @@ async function _verifyCredential(options = {}) { log.push({id: 'valid_signature', valid: true}); log.push({id: 'issuer_did_resolves', valid: true}); + // if credential status is provided, a `checkStatus` function must be given + if(credential.credentialStatus && typeof checkStatus !== 'function') { + throw new TypeError( + 'A "checkStatus" function must be given to verify credentials with ' + + '"credentialStatus".'); + } + + if(credential.credentialStatus) { + await addStatusInfoToLog({options, result, log}); + } + // run common credential checks (add check results to log) _checkCredential({credential, log, now}); - // if credential status is provided, a `checkStatus` function must be given - if(credential.credentialStatus && typeof checkStatus !== 'function') { - throw new TypeError( - 'A "checkStatus" function must be given to verify credentials with ' + - '"credentialStatus".'); - } - if(credential.credentialStatus) { - await addStatusInfoToLog({options, result, log}); - } result.log = log; if(result.results) { result.results[0].log = log; diff --git a/package.json b/package.json index 8b69d1aa..c3f7d065 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@digitalcredentials/vc", - "version": "9.0.1", + "version": "9.0.1-beta.1", "description": "Verifiable Credentials JavaScript library.", "homepage": "https://github.com/digitalcredentials/vc", "repository": { From 5c502e72067724740e4643b75bfcae2306220725 Mon Sep 17 00:00:00 2001 From: James Chartrand Date: Wed, 15 Jan 2025 19:30:30 -0500 Subject: [PATCH 2/9] fix lint errors --- lib/index.js | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/lib/index.js b/lib/index.js index a2c6c647..d6263ea1 100644 --- a/lib/index.js +++ b/lib/index.js @@ -355,21 +355,20 @@ async function _verifyCredential(options = {}) { log.push({id: 'valid_signature', valid: true}); log.push({id: 'issuer_did_resolves', valid: true}); - // if credential status is provided, a `checkStatus` function must be given - if(credential.credentialStatus && typeof checkStatus !== 'function') { - throw new TypeError( - 'A "checkStatus" function must be given to verify credentials with ' + - '"credentialStatus".'); - } - - if(credential.credentialStatus) { - await addStatusInfoToLog({options, result, log}); - } - + // if credential status is provided, a `checkStatus` function must be given + if(credential.credentialStatus && typeof checkStatus !== 'function') { + throw new TypeError( + 'A "checkStatus" function must be given to verify credentials with ' + + '"credentialStatus".'); + } + + if(credential.credentialStatus) { + await addStatusInfoToLog({options, result, log}); + } + // run common credential checks (add check results to log) _checkCredential({credential, log, now}); - result.log = log; if(result.results) { result.results[0].log = log; From 5031d33b98a4c81728d1a097ec5820d01b749f53 Mon Sep 17 00:00:00 2001 From: James Chartrand Date: Mon, 27 Jan 2025 09:49:19 -0500 Subject: [PATCH 3/9] add credential object to result --- lib/index.js | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/index.js b/lib/index.js index d6263ea1..1e8f80b4 100644 --- a/lib/index.js +++ b/lib/index.js @@ -550,6 +550,7 @@ async function _verifyPresentation(options = {}) { for(const [i, credentialResult] of credentialResults.entries()) { credentialResult.credentialId = credentials[i].id; + credentialResult.credential = credentials[i] } const allCredentialsVerified = credentialResults.every(r => r.verified); From 6329f3cd35a46c942246dd3775d294ce4a6a40c8 Mon Sep 17 00:00:00 2001 From: James Chartrand Date: Sun, 9 Feb 2025 15:45:50 -0500 Subject: [PATCH 4/9] fix lint error and prepare changelog and version --- CHANGELOG.md | 7 ++++++- lib/index.js | 2 +- package.json | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4bf01975..a1dda638 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,11 @@ # @digitalcredentials/vc ChangeLog -## 9.0.0 - 2024-09-30 +## 9.0.1 - TBD + +### Fixed +- run status check before running expiry check because expiry check throws error that had prevented the status check from running + +## 9.0.1 - 2024-09-30 ### Fixed - add signature checks to the log before running other verification checks whose errors might prevent that logging diff --git a/lib/index.js b/lib/index.js index 1e8f80b4..ff5305a5 100644 --- a/lib/index.js +++ b/lib/index.js @@ -550,7 +550,7 @@ async function _verifyPresentation(options = {}) { for(const [i, credentialResult] of credentialResults.entries()) { credentialResult.credentialId = credentials[i].id; - credentialResult.credential = credentials[i] + credentialResult.credential = credentials[i]; } const allCredentialsVerified = credentialResults.every(r => r.verified); diff --git a/package.json b/package.json index c3f7d065..8f59b4b9 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@digitalcredentials/vc", - "version": "9.0.1-beta.1", + "version": "9.0.2", "description": "Verifiable Credentials JavaScript library.", "homepage": "https://github.com/digitalcredentials/vc", "repository": { From f642e672b24288372ecd56ccff47cf14e4893863 Mon Sep 17 00:00:00 2001 From: James Chartrand Date: Wed, 12 Mar 2025 10:17:26 -0400 Subject: [PATCH 5/9] set beta version for npm publish --- CHANGELOG.md | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a1dda638..417befa0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,9 +1,9 @@ # @digitalcredentials/vc ChangeLog -## 9.0.1 - TBD +## 9.0.2 - TBD ### Fixed -- run status check before running expiry check because expiry check throws error that had prevented the status check from running +- run status check before expiry check because expiry check throws error that had prevented the status check from running ## 9.0.1 - 2024-09-30 diff --git a/package.json b/package.json index 8f59b4b9..4d709b74 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@digitalcredentials/vc", - "version": "9.0.2", + "version": "9.0.2-beta.3", "description": "Verifiable Credentials JavaScript library.", "homepage": "https://github.com/digitalcredentials/vc", "repository": { From 1b6b1646b9723848f1181767489c8716b0843ba4 Mon Sep 17 00:00:00 2001 From: James Chartrand Date: Thu, 13 Mar 2025 14:02:51 -0400 Subject: [PATCH 6/9] remove cjs build --- build-dist.sh | 18 ------------------ package.json | 22 ++-------------------- post-test.js | 11 ----------- pre-test.js | 11 ----------- rollup.config.js | 14 -------------- 5 files changed, 2 insertions(+), 74 deletions(-) delete mode 100755 build-dist.sh delete mode 100644 post-test.js delete mode 100644 pre-test.js delete mode 100644 rollup.config.js diff --git a/build-dist.sh b/build-dist.sh deleted file mode 100755 index 361b7db3..00000000 --- a/build-dist.sh +++ /dev/null @@ -1,18 +0,0 @@ -mkdir ./dist/esm - -cat >dist/esm/index.js <dist/esm/package.json < { - const pkgJson = await PackageJson.load('./'); - pkgJson.update({ type: undefined }); - await pkgJson.save(); -}; - -// run post-test script -main(); diff --git a/pre-test.js b/pre-test.js deleted file mode 100644 index dc99e49e..00000000 --- a/pre-test.js +++ /dev/null @@ -1,11 +0,0 @@ -const PackageJson = require('@npmcli/package-json'); - -// pre-test script -const main = async () => { - const pkgJson = await PackageJson.load('./'); - pkgJson.update({ type: 'module' }); - await pkgJson.save(); -}; - -// run pre-test script -main(); diff --git a/rollup.config.js b/rollup.config.js deleted file mode 100644 index c56f7fb8..00000000 --- a/rollup.config.js +++ /dev/null @@ -1,14 +0,0 @@ -import pkg from './package.json'; -export default [ - { - input: './lib/index.js', - output: [ - { - dir: 'dist', - format: 'cjs', - preserveModules: true - } - ], - external: Object.keys(pkg.dependencies) - } -]; From 3c3e13d0c832c9dca8f41423e81fbe88794fa7c6 Mon Sep 17 00:00:00 2001 From: James Chartrand Date: Fri, 14 Mar 2025 10:16:36 -0400 Subject: [PATCH 7/9] beta release --- package.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 337f58b6..a77560ec 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@digitalcredentials/vc", - "version": "9.0.2-beta.3", + "version": "10.0.0-beta.1", "description": "Verifiable Credentials JavaScript library.", "homepage": "https://github.com/digitalcredentials/vc", "repository": { @@ -16,9 +16,9 @@ "LICENSE" ], "dependencies": { - "@digitalcredentials/credentials-v2-context": "~0.0.1-beta.0", + "@digitalcredentials/credentials-v2-context": "^0.0.1-beta.0", "@digitalcredentials/jsonld": "^9.0.0", - "@digitalcredentials/jsonld-signatures": "^12.0.0", + "@digitalcredentials/jsonld-signatures": "^12.0.1", "@digitalcredentials/open-badges-context": "^2.1.0", "credentials-context": "^2.0.0", "ed25519-signature-2018-context": "^1.1.0" From a347b22c00f32da9d997142303754037200efe7e Mon Sep 17 00:00:00 2001 From: James Chartrand Date: Fri, 14 Mar 2025 10:23:12 -0400 Subject: [PATCH 8/9] fix CI tests --- .github/workflows/main.yml | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 2e7fbcba..e0c2007c 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -33,20 +33,20 @@ jobs: node-version: ${{ matrix.node-version }} - run: npm install - name: Run test with Node.js ${{ matrix.node-version }} - run: npm run pretest; npm run test-node; npm run posttest -# test-karma: -# needs: [lint] -# runs-on: ubuntu-latest -# timeout-minutes: 10 -# strategy: -# matrix: -# node-version: [16.x] -# steps: -# - uses: actions/checkout@v2 -# - name: Use Node.js ${{ matrix.node-version }} -# uses: actions/setup-node@v1 -# with: -# node-version: ${{ matrix.node-version }} -# - run: npm install -# - name: Run karma test -# run: npm run pretest; npm run test-karma; npm run posttest + run: npm run test-node + test-karma: + needs: [lint] + runs-on: ubuntu-latest + timeout-minutes: 10 + strategy: + matrix: + node-version: [18.x] + steps: + - uses: actions/checkout@v2 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + - run: npm install + - name: Run karma test + run: npm run test-karma From c1f3b89a3345830e4d077978494eed630bfc0421 Mon Sep 17 00:00:00 2001 From: James Chartrand Date: Wed, 30 Apr 2025 14:59:32 -0400 Subject: [PATCH 9/9] prepare for npm publish --- CHANGELOG.md | 8 ++++++-- package.json | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 417befa0..3a15a073 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,9 +1,13 @@ # @digitalcredentials/vc ChangeLog -## 9.0.2 - TBD +## 10.0.0 - 2025-04-30 + +### Changed +- **BREAKING**: Removes CJS build ### Fixed -- run status check before expiry check because expiry check throws error that had prevented the status check from running +- move status check before expiry check because expiry check throws error that had prevented the status check from running +- attach the credential to the verification result for each credential submitted as part of a VP verification ## 9.0.1 - 2024-09-30 diff --git a/package.json b/package.json index a77560ec..f26d2a68 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@digitalcredentials/vc", - "version": "10.0.0-beta.1", + "version": "10.0.0", "description": "Verifiable Credentials JavaScript library.", "homepage": "https://github.com/digitalcredentials/vc", "repository": {