diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index b21d062..4140655 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -3,4 +3,5 @@ patreon: bevry open_collective: bevry ko_fi: balupton liberapay: bevry +tidelift: npm/@bevry/memo custom: ['https://bevry.me/fund'] diff --git a/HISTORY.md b/HISTORY.md index ae2b2fe..f57a188 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,5 +1,9 @@ # History +## v4.1.0 2023 November 15 + +- Updated dependencies, [base files](https://github.com/bevry/base), and [editions](https://editions.bevry.me) using [boundation](https://github.com/bevry/boundation) + ## v4.0.0 2023 November 14 - Updated dependencies, [base files](https://github.com/bevry/base), and [editions](https://editions.bevry.me) using [boundation](https://github.com/bevry/boundation) diff --git a/README.md b/README.md index 5a925b8..236fc2b 100644 --- a/README.md +++ b/README.md @@ -64,14 +64,14 @@ counterMemo() // returns 1

Deno

``` typescript -import pkg from 'https://unpkg.com/@bevry/memo@^4.0.0/edition-deno/index.ts' +import pkg from 'https://unpkg.com/@bevry/memo@^4.1.0/edition-deno/index.ts' ```

Skypack

``` html ``` @@ -79,7 +79,7 @@ import pkg from 'https://unpkg.com/@bevry/memo@^4.0.0/edition-deno/index.ts' ``` html ``` @@ -87,7 +87,7 @@ import pkg from 'https://unpkg.com/@bevry/memo@^4.0.0/edition-deno/index.ts' ``` html ``` diff --git a/SECURITY.md b/SECURITY.md new file mode 100644 index 0000000..cff8ed7 --- /dev/null +++ b/SECURITY.md @@ -0,0 +1,21 @@ +# Security Policy + +## Security Practices + +This project meets standardized secure software development practices, including 2FA for all members, password managers with monitoring, secure secret retrieval instead of storage. [Learn more about our practices.](https://tidelift.com/funding/github/npm/@bevry/memo) + +## Supported Versions + +This project uses [Bevry's automated tooling](https://github.com/bevry/boundation) to deliver the latest updates, fixes, and improvements inside the latest release while still maintaining widespread ecosystem compatibility. + +[Refer to supported ecosystem versions: `Editions` section in `README.md`.](https://github.com/bevry/memo/blob/master/README.md#Editions) + +[Refer to automated support of ecosystem versions: `boundation` entries in `HISTORY.md`.](https://github.com/bevry/memo/blob/master/HISTORY.md) + +Besides testing and verification, out CI also [auto-merges](https://docs.github.com/en/code-security/dependabot/working-with-dependabot/automating-dependabot-with-github-actions) [Dependabot security updates](https://docs.github.com/en/code-security/dependabot/dependabot-security-updates/about-dependabot-security-updates) and [auto-publishes](https://github.com/bevry-actions/npm) successful builds of the [`master` branch](https://github.com/bevry/wait/actions?query=branch%3Amaster) to the [`next` version tag](https://www.npmjs.com/package/@bevry/memo?activeTab=versions), offering immediate resolutions before scheduled maintenance releases. + +## Reporting a Vulnerability + +[Report the vulnerability to the project owners.](https://github.com/bevry/memo/security/advisories) + +[Report the vulnerability to Tidelift.](https://tidelift.com/security) diff --git a/package-lock.json b/package-lock.json index 2f77665..730f441 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,35 +1,35 @@ { "name": "@bevry/memo", - "version": "4.0.0", + "version": "4.1.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@bevry/memo", - "version": "4.0.0", + "version": "4.1.0", "license": "Artistic-2.0", "devDependencies": { "@bevry/update-contributors": "^1.23.0", "@types/node": "^20.9.0", - "@typescript-eslint/eslint-plugin": "^6.10.0", - "@typescript-eslint/parser": "^6.10.0", - "assert-helpers": "^11.2.0", + "@typescript-eslint/eslint-plugin": "^6.11.0", + "@typescript-eslint/parser": "^6.11.0", + "assert-helpers": "^11.4.0", "eslint": "^8.53.0", - "eslint-config-bevry": "^3.29.0", + "eslint-config-bevry": "^4.0.0", "eslint-config-prettier": "^9.0.0", "eslint-plugin-prettier": "^5.0.1", - "kava": "^7.1.0", + "kava": "^7.2.0", "make-deno-edition": "^1.3.0", "prettier": "^3.1.0", - "projectz": "^2.23.0", + "projectz": "^3.0.0", "surge": "^0.23.1", "typedoc": "^0.25.3", "typescript": "5.2.2", - "valid-directory": "^4.1.0", - "valid-module": "^2.1.0" + "valid-directory": "^4.2.0", + "valid-module": "^2.2.0" }, "engines": { - "node": ">=10" + "node": ">=4" }, "funding": { "url": "https://bevry.me/fund" @@ -45,12 +45,12 @@ } }, "node_modules/@bevry/ansi": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@bevry/ansi/-/ansi-6.1.0.tgz", - "integrity": "sha512-xKY8zybxMVwJYSe0SJRCYceA0tLGMLWE78U/GVSOGYjzXzKFtKtJJXNsQ7uTofpwKEWI+s4eVvWyQXl4f0u70Q==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/@bevry/ansi/-/ansi-6.2.0.tgz", + "integrity": "sha512-9LJj1wKAJiIUZuOopV/jZGyYchsSFwkIzT0J8Sl+zK1X+e/bN+XJOEnwFmB8LS9v+lMYfsGP4zsG3BXRNDETxA==", "dev": true, "dependencies": { - "editions": "^6.10.0" + "editions": "^6.13.0" }, "engines": { "node": ">=4" @@ -60,24 +60,28 @@ } }, "node_modules/@bevry/file": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@bevry/file/-/file-1.5.0.tgz", - "integrity": "sha512-RKKDXkZwjAFYYGXdsr0XCarrgVC1ML2Fj+KrOXWbozx4l8JuHOze8QInjGWhjTOFe55MMwCJStEQ9YW95Bw5oA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@bevry/file/-/file-2.1.0.tgz", + "integrity": "sha512-QNTNe8M+QZpg7epw6iIpK3fSSheszM/RtS6s5cdHk1aAa1hXtsNIzooOiDdhKbWBe8jKdD6cZyc5GOUd/8YTRA==", "dev": true, + "dependencies": { + "editions": "^6.11.0", + "version-compare": "^3.1.0" + }, "engines": { - "node": ">=10" + "node": ">=4" }, "funding": { "url": "https://bevry.me/fund" } }, "node_modules/@bevry/github-api": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/@bevry/github-api/-/github-api-10.0.0.tgz", - "integrity": "sha512-2V3iJEWuBxbvaEOHL/f1Wk9QeuCFNmAR8A43DHw8uLdH1/yJ0vTkYEzaHDLWjlsLUZMbJoYR0dYgAQkeCCYn/g==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/@bevry/github-api/-/github-api-10.1.0.tgz", + "integrity": "sha512-GwtlaJ3IRpulHYx0FUJiRM8HqeW0KfwTQkAqcEb86lMF7gQ9ZEyqSn8yYSXY8vHVt/PtLMPaXc76CcLQOxQmbw==", "dev": true, "dependencies": { - "@bevry/wait": "^1.0.0", + "@bevry/wait": "^2.0.0", "simplytyped": "^3.3.0" }, "engines": { @@ -141,14 +145,26 @@ "url": "https://bevry.me/fund" } }, + "node_modules/@bevry/github-repos/node_modules/@bevry/wait": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@bevry/wait/-/wait-1.1.0.tgz", + "integrity": "sha512-hmF51d5lMREobXfdZ8fPuUBdHS11APwAibWEHpHI3sEVu8I0tdK8xmawIZWSxfhFgSsgwdSSCWSUCx92qMA9Gg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://bevry.me/fund" + } + }, "node_modules/@bevry/json": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@bevry/json/-/json-1.6.0.tgz", - "integrity": "sha512-1k9U19P3AD2zkhdhcZ+V63Dm6WDz5+29mlj49w19urTXxSpNdozwTGM95EfrviWqTiwFXVqMYbAh4vekGR0pQA==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@bevry/json/-/json-1.7.0.tgz", + "integrity": "sha512-6sloPFqrsvXt4XViAta8UCdwnNhBAuwH3fWyqRvdkL3Fyu0DvOAHlskYytrIwGYdI1Euvj4+TVvb1Xi/nmT/oQ==", "dev": true, "dependencies": { - "@bevry/file": "^1.5.0", - "errlop": "^5.0.0" + "@bevry/file": "^2.1.0", + "errlop": "^7.1.0" }, "engines": { "node": ">=10" @@ -189,27 +205,27 @@ } }, "node_modules/@bevry/valid-filename": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@bevry/valid-filename/-/valid-filename-1.1.0.tgz", - "integrity": "sha512-c9npoyb/A+yYVeJzgUZWWSYK/yG1lJGnfTwOVXG2sMQ8BJiFLQFJJVzaRPGaivwN0cXTDAPxia8Qvi2lOAHggQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@bevry/valid-filename/-/valid-filename-2.0.0.tgz", + "integrity": "sha512-YRK4spEHvSnZeyAb1It6OeuG2+zO1RjFdox39xnnVtwCuDIWvoIR5dHNgTLYp99k8pMzES8trzhroi5A7l0CwQ==", "dev": true, "bin": { "valid-filename": "bin.cjs" }, "engines": { - "node": ">=18" + "node": ">=4" }, "funding": { "url": "https://bevry.me/fund" } }, "node_modules/@bevry/wait": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@bevry/wait/-/wait-1.1.0.tgz", - "integrity": "sha512-hmF51d5lMREobXfdZ8fPuUBdHS11APwAibWEHpHI3sEVu8I0tdK8xmawIZWSxfhFgSsgwdSSCWSUCx92qMA9Gg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@bevry/wait/-/wait-2.0.0.tgz", + "integrity": "sha512-rHyxdCSe/NDXHtPUTArprp45ULTCbciS07Oc+EXC5QUunnMi14aVBHALoFQuEkpY3fS2WqDCzBlD+xLjLQpPyA==", "dev": true, "engines": { - "node": ">=12" + "node": ">=4" }, "funding": { "url": "https://bevry.me/fund" @@ -413,16 +429,16 @@ "dev": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.10.0.tgz", - "integrity": "sha512-uoLj4g2OTL8rfUQVx2AFO1hp/zja1wABJq77P6IclQs6I/m9GLrm7jCdgzZkvWdDCQf1uEvoa8s8CupsgWQgVg==", + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.11.0.tgz", + "integrity": "sha512-uXnpZDc4VRjY4iuypDBKzW1rz9T5YBBK0snMn8MaTSNd2kMlj50LnLBABELjJiOL5YHk7ZD8hbSpI9ubzqYI0w==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.10.0", - "@typescript-eslint/type-utils": "6.10.0", - "@typescript-eslint/utils": "6.10.0", - "@typescript-eslint/visitor-keys": "6.10.0", + "@typescript-eslint/scope-manager": "6.11.0", + "@typescript-eslint/type-utils": "6.11.0", + "@typescript-eslint/utils": "6.11.0", + "@typescript-eslint/visitor-keys": "6.11.0", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", @@ -448,15 +464,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.10.0.tgz", - "integrity": "sha512-+sZwIj+s+io9ozSxIWbNB5873OSdfeBEH/FR0re14WLI6BaKuSOnnwCJ2foUiu8uXf4dRp1UqHP0vrZ1zXGrog==", + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.11.0.tgz", + "integrity": "sha512-+whEdjk+d5do5nxfxx73oanLL9ghKO3EwM9kBCkUtWMRwWuPaFv9ScuqlYfQ6pAD6ZiJhky7TZ2ZYhrMsfMxVQ==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "6.10.0", - "@typescript-eslint/types": "6.10.0", - "@typescript-eslint/typescript-estree": "6.10.0", - "@typescript-eslint/visitor-keys": "6.10.0", + "@typescript-eslint/scope-manager": "6.11.0", + "@typescript-eslint/types": "6.11.0", + "@typescript-eslint/typescript-estree": "6.11.0", + "@typescript-eslint/visitor-keys": "6.11.0", "debug": "^4.3.4" }, "engines": { @@ -476,13 +492,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.10.0.tgz", - "integrity": "sha512-TN/plV7dzqqC2iPNf1KrxozDgZs53Gfgg5ZHyw8erd6jd5Ta/JIEcdCheXFt9b1NYb93a1wmIIVW/2gLkombDg==", + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.11.0.tgz", + "integrity": "sha512-0A8KoVvIURG4uhxAdjSaxy8RdRE//HztaZdG8KiHLP8WOXSk0vlF7Pvogv+vlJA5Rnjj/wDcFENvDaHb+gKd1A==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.10.0", - "@typescript-eslint/visitor-keys": "6.10.0" + "@typescript-eslint/types": "6.11.0", + "@typescript-eslint/visitor-keys": "6.11.0" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -493,13 +509,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.10.0.tgz", - "integrity": "sha512-wYpPs3hgTFblMYwbYWPT3eZtaDOjbLyIYuqpwuLBBqhLiuvJ+9sEp2gNRJEtR5N/c9G1uTtQQL5AhV0fEPJYcg==", + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.11.0.tgz", + "integrity": "sha512-nA4IOXwZtqBjIoYrJcYxLRO+F9ri+leVGoJcMW1uqr4r1Hq7vW5cyWrA43lFbpRvQ9XgNrnfLpIkO3i1emDBIA==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "6.10.0", - "@typescript-eslint/utils": "6.10.0", + "@typescript-eslint/typescript-estree": "6.11.0", + "@typescript-eslint/utils": "6.11.0", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, @@ -520,9 +536,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.10.0.tgz", - "integrity": "sha512-36Fq1PWh9dusgo3vH7qmQAj5/AZqARky1Wi6WpINxB6SkQdY5vQoT2/7rW7uBIsPDcvvGCLi4r10p0OJ7ITAeg==", + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.11.0.tgz", + "integrity": "sha512-ZbEzuD4DwEJxwPqhv3QULlRj8KYTAnNsXxmfuUXFCxZmO6CF2gM/y+ugBSAQhrqaJL3M+oe4owdWunaHM6beqA==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -533,13 +549,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.10.0.tgz", - "integrity": "sha512-ek0Eyuy6P15LJVeghbWhSrBCj/vJpPXXR+EpaRZqou7achUWL8IdYnMSC5WHAeTWswYQuP2hAZgij/bC9fanBg==", + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.11.0.tgz", + "integrity": "sha512-Aezzv1o2tWJwvZhedzvD5Yv7+Lpu1by/U1LZ5gLc4tCx8jUmuSCMioPFRjliN/6SJIvY6HpTtJIWubKuYYYesQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.10.0", - "@typescript-eslint/visitor-keys": "6.10.0", + "@typescript-eslint/types": "6.11.0", + "@typescript-eslint/visitor-keys": "6.11.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -560,17 +576,17 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.10.0.tgz", - "integrity": "sha512-v+pJ1/RcVyRc0o4wAGux9x42RHmAjIGzPRo538Z8M1tVx6HOnoQBCX/NoadHQlZeC+QO2yr4nNSFWOoraZCAyg==", + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.11.0.tgz", + "integrity": "sha512-p23ibf68fxoZy605dc0dQAEoUsoiNoP3MD9WQGiHLDuTSOuqoTsa4oAy+h3KDkTcxbbfOtUjb9h3Ta0gT4ug2g==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.10.0", - "@typescript-eslint/types": "6.10.0", - "@typescript-eslint/typescript-estree": "6.10.0", + "@typescript-eslint/scope-manager": "6.11.0", + "@typescript-eslint/types": "6.11.0", + "@typescript-eslint/typescript-estree": "6.11.0", "semver": "^7.5.4" }, "engines": { @@ -585,12 +601,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.10.0.tgz", - "integrity": "sha512-xMGluxQIEtOM7bqFCo+rCMh5fqI+ZxV5RUUOa29iVPz1OgCZrtc7rFnz5cLUazlkPKYqX+75iuDq7m0HQ48nCg==", + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.11.0.tgz", + "integrity": "sha512-+SUN/W7WjBr05uRxPggJPSzyB8zUpaYo2hByKasWbqr3PM8AXfZt8UHdNpBS1v9SA62qnSSMF3380SwDqqprgQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.10.0", + "@typescript-eslint/types": "6.11.0", "eslint-visitor-keys": "^3.4.1" }, "engines": { @@ -773,27 +789,15 @@ } }, "node_modules/assert-helpers": { - "version": "11.2.0", - "resolved": "https://registry.npmjs.org/assert-helpers/-/assert-helpers-11.2.0.tgz", - "integrity": "sha512-FdaVk2uxkAFcFVJoMD/ZK3OJUKJQKm0sR2cSlQnjueb6TADQ4OQX6f523+14NhyTq2ajmlXMRYpbxbwSk9v3Sg==", + "version": "11.4.0", + "resolved": "https://registry.npmjs.org/assert-helpers/-/assert-helpers-11.4.0.tgz", + "integrity": "sha512-TdRtvQxF6nKWH8u9DPVIpdBCEkg8k41rzigC+tNJvY8+ebIeLcXuhLqPZOF8ncWDHYPAhptSWu92hKgq6YqzGw==", "dev": true, "dependencies": { "@bevry/ansi": "^6.1.0", - "editions": "^6.10.0", - "errlop": "^7.1.0" - }, - "engines": { - "node": ">=4" + "editions": "^6.12.0", + "errlop": "^7.2.0" }, - "funding": { - "url": "https://bevry.me/fund" - } - }, - "node_modules/assert-helpers/node_modules/errlop": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/errlop/-/errlop-7.1.0.tgz", - "integrity": "sha512-358kod+aVr3p1aycu114HOS8Dj6+2f1eaHYbrdQCN0YlKziPV0zCd3IgpPclk2nIEtzi4lLfywprFX34MMbiFg==", - "dev": true, "engines": { "node": ">=4" }, @@ -844,9 +848,9 @@ "dev": true }, "node_modules/badges": { - "version": "4.32.0", - "resolved": "https://registry.npmjs.org/badges/-/badges-4.32.0.tgz", - "integrity": "sha512-NLFyk36zumFczfq+tyjzBR2GASb0nEUdudZr+qdHKNELuvCrv0xszbfMs9kI8HgRIH6idrja9WvH8qUTA7LjCQ==", + "version": "4.34.0", + "resolved": "https://registry.npmjs.org/badges/-/badges-4.34.0.tgz", + "integrity": "sha512-X4dmnTht9p5PEv5Us/W3nLNtDxIzUWJ24U5Jt93gUixGWV0N2dN9t10odTMj5X/wvsxSvoNo3yn6tmVkUDwXoA==", "dev": true, "engines": { "node": ">=10" @@ -1011,14 +1015,15 @@ "dev": true }, "node_modules/caterpillar": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/caterpillar/-/caterpillar-6.8.0.tgz", - "integrity": "sha512-221w6wxVE7mIE1u7Tl6o+Koo6UpnO/mg3smEBC8JmqgnsL/m2H6K2I4K2kgEg05LNXcrEpRvnoQ88dfwU3ISrQ==", + "version": "6.10.0", + "resolved": "https://registry.npmjs.org/caterpillar/-/caterpillar-6.10.0.tgz", + "integrity": "sha512-E2UOyr2LoDyxTW9Z7oG+e7dME8DT6jEQO2xZ0TUAl5Jx+4wgsj9LjhXmmhObP+2EWSTS/1Exri4Ff5uHFRfxtQ==", "dev": true, "dependencies": { - "@bevry/ansi": "^3.3.0", - "get-current-line": "^6.5.0", - "rfc-log-levels": "^3.16.0" + "@bevry/ansi": "^6.1.0", + "editions": "^6.11.0", + "get-current-line": "^6.8.0", + "rfc-log-levels": "^3.19.0" }, "engines": { "node": ">=10" @@ -1027,21 +1032,6 @@ "url": "https://bevry.me/fund" } }, - "node_modules/caterpillar/node_modules/@bevry/ansi": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@bevry/ansi/-/ansi-3.5.0.tgz", - "integrity": "sha512-64cTf9QlwvRErbcyblGN/pTlV6wFCobu+2uv4hXpBPHrin5vkXTI4QPdVCjn2o+W4NSJGVqu26at2Y0n4MXqpw==", - "dev": true, - "dependencies": { - "editions": "^6.8.0" - }, - "engines": { - "node": ">=4" - }, - "funding": { - "url": "https://bevry.me/fund" - } - }, "node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -1278,28 +1268,13 @@ } }, "node_modules/eachr": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/eachr/-/eachr-6.1.0.tgz", - "integrity": "sha512-UnFwETRLkyK0X1wKrJj8qLqD/ZKRCybfD0/OnC6p3b7XY/BvAiDFnwmGxBk3HoraiucRJwRXddkrBYVxzIJMTg==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/eachr/-/eachr-6.3.0.tgz", + "integrity": "sha512-8IvhM85jVBHWObZ/GJ6MgzpBwD5Z/KsSbeQFMnauf71pB+CLRA7+qzEpueBGLD6j/PG4mBu8Ho+/J2aZjYFSOg==", "dev": true, "dependencies": { - "editions": "^6.11.0", - "typechecker": "^8.1.0" - }, - "engines": { - "node": ">=4" - }, - "funding": { - "url": "https://bevry.me/fund" - } - }, - "node_modules/eachr/node_modules/typechecker": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/typechecker/-/typechecker-8.1.0.tgz", - "integrity": "sha512-XaC7pXzm8oaeLj9eByF1hw3LB6XBFdXZNuYD4MNUmEZa2EfkqSkTfU98+Hw2ZhEVunZDvkYZ4Js7MyW5No1F6Q==", - "dev": true, - "dependencies": { - "editions": "^6.11.0" + "editions": "^6.13.0", + "typechecker": "^8.2.0" }, "engines": { "node": ">=4" @@ -1319,12 +1294,12 @@ } }, "node_modules/editions": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/editions/-/editions-6.11.0.tgz", - "integrity": "sha512-zkeYLFJZL2doPyqlj03eVtUcGt7imyMfxLyJcG7ufc8J2vFXVm/qXmVhSO1OgECj/PhnVlZiDVElyN/JLsmVKw==", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/editions/-/editions-6.13.0.tgz", + "integrity": "sha512-wAQCrco6+HLunD8Zv2VTZxJqAv90kQbhSkD5hH80o1D2TvM0V5tbwHRFL1OnYg0BZRKOcWaGuBh8WCwjfz/eGw==", "dev": true, "dependencies": { - "version-range": "^3.1.0" + "version-range": "^3.2.0" }, "engines": { "node": ">=4" @@ -1334,12 +1309,12 @@ } }, "node_modules/errlop": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/errlop/-/errlop-5.0.0.tgz", - "integrity": "sha512-2fCmpAa26GJq1FEYoKPAzYqFpGj3FpKscYulxO7GbZoodRS0t4/8X6qmVt+kkkWg4OmaeaJTH5rkVTUiasuXBA==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/errlop/-/errlop-7.2.0.tgz", + "integrity": "sha512-/dMPTcSrBHN6c6idVJbNiFJ8KZGDujcRrf2rDCXqo4sGUwbRpbo1KKTtL91wBA5OAhCZ9O1hmKQpDFyVo6owrg==", "dev": true, "engines": { - "node": ">=8" + "node": ">=4" }, "funding": { "url": "https://bevry.me/fund" @@ -1413,15 +1388,15 @@ } }, "node_modules/eslint-config-bevry": { - "version": "3.29.0", - "resolved": "https://registry.npmjs.org/eslint-config-bevry/-/eslint-config-bevry-3.29.0.tgz", - "integrity": "sha512-YMFtf6pP/icuWlaPIJD3Bziv83GU5ZRbdVtD1VMX1vVy7aW6YnzNmJvZM6Yn7EP+IaOci9UyNij2Fj6Hsp/yCA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-bevry/-/eslint-config-bevry-4.0.0.tgz", + "integrity": "sha512-329+HQ/bn9VnjpvWWGqjenyx/ZTxG38+vzjYNUl4BqGXjdHL2U9N0DM3I5YXsSp7Nr5bHkDHUPVycRaz5rFNnQ==", "dev": true, "dependencies": { "semver": "^7.5.4" }, "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { "url": "https://bevry.me/fund" @@ -1556,14 +1531,14 @@ } }, "node_modules/event-emitter-grouped": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/event-emitter-grouped/-/event-emitter-grouped-6.1.0.tgz", - "integrity": "sha512-OXDI7ZklMTxYtD9Ke6g7frRmC9QlJ2O7e0vGKWxEHu+Z2qShMF1Fz80sQEZL1QV5nLUrCqnk7o0NZZizYVUyiQ==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/event-emitter-grouped/-/event-emitter-grouped-6.2.0.tgz", + "integrity": "sha512-qKUoNmGXBdlMI9PfWqr3QPuHqERWNekw4/4j2LqvybsKG4IK3mqzgKHYDOZCrdSeX8svcMI+ZJ6Mi2FAETa4kQ==", "dev": true, "dependencies": { - "editions": "^6.11.0", - "taskgroup": "^9.2.0", - "unbounded": "^5.1.0" + "editions": "^6.13.0", + "taskgroup": "^9.3.0", + "unbounded": "^5.2.0" }, "engines": { "node": ">=4" @@ -1629,28 +1604,13 @@ "dev": true }, "node_modules/extendr": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/extendr/-/extendr-7.1.0.tgz", - "integrity": "sha512-b3A/bbW7c4TWmsO7A5RLJEId54kp06G7Z3IgiHeQ8VXn5p2cFx+FRsc0Rspqhwzx8lgPnK7BWzi45msW8xe2hQ==", - "dev": true, - "dependencies": { - "editions": "^6.11.0", - "typechecker": "^8.1.0" - }, - "engines": { - "node": ">=4" - }, - "funding": { - "url": "https://bevry.me/fund" - } - }, - "node_modules/extendr/node_modules/typechecker": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/typechecker/-/typechecker-8.1.0.tgz", - "integrity": "sha512-XaC7pXzm8oaeLj9eByF1hw3LB6XBFdXZNuYD4MNUmEZa2EfkqSkTfU98+Hw2ZhEVunZDvkYZ4Js7MyW5No1F6Q==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/extendr/-/extendr-7.2.0.tgz", + "integrity": "sha512-OERmPfUU5W6XFhtvYXKpfsvzphuKlgczjFuyLetNpp2yEq6eM5BcaRkdv4iITTTA72kINNQrynsNLrc7dqJIVg==", "dev": true, "dependencies": { - "editions": "^6.11.0" + "editions": "^6.13.0", + "typechecker": "^8.2.0" }, "engines": { "node": ">=4" @@ -1943,9 +1903,9 @@ } }, "node_modules/get-current-line": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/get-current-line/-/get-current-line-6.8.0.tgz", - "integrity": "sha512-X4JqocHKZEZRvFGdTzvPLYSZ16hol/9gzKF3bMGe53PWIkxlSv0U9xGxB4gXFqhN6jR1YNGMc6u1oMAFBrBqGw==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/get-current-line/-/get-current-line-6.9.0.tgz", + "integrity": "sha512-jFRFeABDPUMkidcVK3OOWKCAts9Gpku1+dWDLTU7mHbdp6sRB2IM9EnE3io8gJhxCHyTgANj3N5Lg9yHyAxypA==", "dev": true, "engines": { "node": ">=10" @@ -2522,14 +2482,14 @@ } }, "node_modules/kava": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/kava/-/kava-7.1.0.tgz", - "integrity": "sha512-v0eCMoxduQH3OkddO115ygJ+1gNm3kkIEUqAlUwwicQBhD33+ylSb302fRhwl/Y6ekA6TekcmX1IAbKkCXJ2Gw==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/kava/-/kava-7.2.0.tgz", + "integrity": "sha512-Fs4liNvmIhLxyRmTMdnl4xLyEGivaVtozYwysDxNDu0yS6fMh5yC9lzqmh8q+DKaNrfjbkHwnWYLV8YwYGqiaQ==", "dev": true, "dependencies": { - "editions": "^6.11.0", - "event-emitter-grouped": "^6.1.0", - "taskgroup": "^9.2.0" + "editions": "^6.13.0", + "event-emitter-grouped": "^6.2.0", + "taskgroup": "^9.3.0" }, "engines": { "node": ">=4" @@ -2764,12 +2724,12 @@ "dev": true }, "node_modules/native-promise-pool": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/native-promise-pool/-/native-promise-pool-3.21.0.tgz", - "integrity": "sha512-dygCAVEgrG+14M0DPkjMGK414lbYuxI2LQXHJRE6YFT3k0wkCwhNOdJRtOnlGSXqbyylOT7f1Tq+iDB0zJU6cg==", + "version": "3.22.0", + "resolved": "https://registry.npmjs.org/native-promise-pool/-/native-promise-pool-3.22.0.tgz", + "integrity": "sha512-tEFj/KMhIfuKi0umpWBWx0KQ8C0+a3dL0oV+Kor2tPKkzhMpkyou7jAyAy0D2OyloJ99MrLhtEX8LdhirdLlMQ==", "dev": true, "dependencies": { - "editions": "^6.8.0" + "editions": "^6.11.0" }, "engines": { "node": ">=10" @@ -2811,9 +2771,9 @@ } }, "node_modules/normalify": { - "version": "2.25.0", - "resolved": "https://registry.npmjs.org/normalify/-/normalify-2.25.0.tgz", - "integrity": "sha512-cxwJIcf3b7yK0tgprrNHJkbwu679m2MRcmMtADWtOBixojPavGQjbRSRKTUCs/5x3IfADhrhQhBbofkdI7ERrw==", + "version": "2.26.0", + "resolved": "https://registry.npmjs.org/normalify/-/normalify-2.26.0.tgz", + "integrity": "sha512-G4oWM/03stGSeu/C7FXBiTj44Ei5ba4WKiTET3gH/QiTPEEoS8aqH0OPPP1qJamxikY1kztCnlvCVsyL22uqrA==", "dev": true, "engines": { "node": ">=10" @@ -3080,26 +3040,41 @@ } }, "node_modules/projectz": { - "version": "2.23.0", - "resolved": "https://registry.npmjs.org/projectz/-/projectz-2.23.0.tgz", - "integrity": "sha512-XgAXkKCdEtdixFkQBCwYJ4n3PWLcvrxBZSRzGV5uQrZYUfcZhxQyLqE5yP15Vy7yk+J0MVQWYHpHlBUloKXn6Q==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/projectz/-/projectz-3.0.0.tgz", + "integrity": "sha512-8DLhjLuGM8KWqvag/SL/vTZgqHIGqEmMyQXQAaiIMd3Zc/VevrM/38a4KYNlOFznzbDOCQkZpoGu/aQh723Kjw==", "dev": true, "dependencies": { - "@bevry/file": "^1.2.0", - "@bevry/json": "^1.4.0", - "badges": "^4.28.0", - "caterpillar": "^6.8.0", - "fellow": "^6.24.0", - "get-cli-arg": "^7.3.0", + "@bevry/file": "^2.1.0", + "@bevry/json": "^1.7.0", + "badges": "^4.32.0", + "caterpillar": "^6.9.0", + "fellow": "^6.25.0", + "get-cli-arg": "^8.0.0", "spdx-expression-parse": "^3.0.1", - "spdx-license-list": "^6.6.0", - "typechecker": "^7.18.0" + "spdx-license-list": "^6.8.0", + "typechecker": "^8.1.0" }, "bin": { "projectz": "bin.cjs" }, "engines": { - "node": ">=18" + "node": ">=20" + }, + "funding": { + "url": "https://bevry.me/fund" + } + }, + "node_modules/projectz/node_modules/get-cli-arg": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/get-cli-arg/-/get-cli-arg-8.0.0.tgz", + "integrity": "sha512-cR/Tt2Gnj7hF5CbkUOzXFZvmDWkDssqaTt7jeMSpZ+vKb/U0tAmfESYnwWprYJY81Jhvm2eXtSbNts5uqOaPCw==", + "dev": true, + "dependencies": { + "normalify": "^2.26.0" + }, + "engines": { + "node": ">=8" }, "funding": { "url": "https://bevry.me/fund" @@ -3240,9 +3215,9 @@ } }, "node_modules/rfc-log-levels": { - "version": "3.18.0", - "resolved": "https://registry.npmjs.org/rfc-log-levels/-/rfc-log-levels-3.18.0.tgz", - "integrity": "sha512-Bjc4gS02aK19WAF5p/Dgfy78YHlOYUwhvpBo6UXfd47zqqm6eQy1btSSvF46fA/JEOqlH5lV4eQnNgzcdUA3Jw==", + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/rfc-log-levels/-/rfc-log-levels-3.19.0.tgz", + "integrity": "sha512-4+EiBg1icaZ5jaz+4B2O15Xq4YcrCverWekGnJUqGlXgGJWjrjgMJ74cqCWMzvffeSph5g2HxyfOQcnQDSh40Q==", "dev": true, "engines": { "node": ">=10" @@ -3751,16 +3726,16 @@ } }, "node_modules/taskgroup": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/taskgroup/-/taskgroup-9.2.0.tgz", - "integrity": "sha512-q7591pBFED3gC23BY3N522iHtR2CJAZgT+mUON55akUNQ58HFtuUf6dmLhLqAIYH5ouBf1qeVivSOYzjnHBgTg==", + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/taskgroup/-/taskgroup-9.3.0.tgz", + "integrity": "sha512-yYsPr+4YYfigAb0ZGbIsvKumdOW8+s+226Swn21OSvdipTatsLsVBp7Cq9qTgKGBloYRydRkS4VE/43xyU0a9g==", "dev": true, "dependencies": { "ambi": "3.2.0", - "eachr": "^6.1.0", - "editions": "^6.11.0", - "extendr": "^7.1.0", - "unbounded": "^5.1.0" + "eachr": "^6.3.0", + "editions": "^6.13.0", + "extendr": "^7.2.0", + "unbounded": "^5.2.0" }, "engines": { "node": ">=4" @@ -3897,12 +3872,15 @@ } }, "node_modules/typechecker": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/typechecker/-/typechecker-7.18.0.tgz", - "integrity": "sha512-GjwqmuBuIQOvy0VsuMyjxur1hop/mLgKby61izt4UpT3Knm/7qzXAxpQHVhLK7bgmZjIj9GtIBmh1FMnyEDVBw==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/typechecker/-/typechecker-8.2.0.tgz", + "integrity": "sha512-SnCTb8RGuu4n3fhbbQ7VJPtFc8F3WtQ9HD7rBg3cyBKKsL8bhAz6tB7ul/zX7hMj8IVFWRfrdbZpd+84lSA8Pw==", "dev": true, + "dependencies": { + "editions": "^6.13.0" + }, "engines": { - "node": ">=10" + "node": ">=4" }, "funding": { "url": "https://bevry.me/fund" @@ -3967,12 +3945,12 @@ } }, "node_modules/unbounded": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/unbounded/-/unbounded-5.1.0.tgz", - "integrity": "sha512-MMiuCaqRYzWGuHC2DgMNXnRPiDyI2hURt77M+8yIeepefT4S62so5iDK1KvQ7x3qKJI52e8rhJGYgiu4ViJsHQ==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/unbounded/-/unbounded-5.2.0.tgz", + "integrity": "sha512-/DKuVxnOBgTB85FUcSKAyjPBCsu0mVvG7JtRMQa4+EzyBYS0zYEzpcts5R9QrjL7kE9Jy1iu4XQdAYv/itf4qg==", "dev": true, "dependencies": { - "editions": "^6.11.0" + "editions": "^6.13.0" }, "engines": { "node": ">=4" @@ -4028,13 +4006,13 @@ } }, "node_modules/valid-directory": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/valid-directory/-/valid-directory-4.1.0.tgz", - "integrity": "sha512-1bFS6NK2eYInrjLA3Qclw0HK8JjMMkIbUIHbYahZoDz3GfITOt9V77MMogUvtSVtSHLLpgl6KnzADdKbJ35How==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/valid-directory/-/valid-directory-4.2.0.tgz", + "integrity": "sha512-H48H7Jbw2zLZl4DA8QLkT9HsfgGHg+MJi1mOfj+eybe2VhElHsD/0WBaKMBDJAVFq+Pi8w1leiYITYAKZtg/FA==", "dev": true, "dependencies": { - "@bevry/valid-filename": "^1.0.0", - "fdir": "^6.1.0" + "@bevry/valid-filename": "^2.0.0", + "fdir": "^6.1.1" }, "bin": { "valid-directory": "bin.cjs" @@ -4075,12 +4053,12 @@ } }, "node_modules/valid-module": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/valid-module/-/valid-module-2.1.0.tgz", - "integrity": "sha512-B7Ls2WpRNNN8zzlJ5VcymFNPfYWcBVDZKbkNLZ0nwvLeC9NEP9EyLqD3ud9rHdf2wE/qGVnp3exQgazObQ454Q==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/valid-module/-/valid-module-2.2.0.tgz", + "integrity": "sha512-wtCUxWrFHWbZUKYrDCcwSOUh3SRduj7K3pUecARAAb3n+m7A8H3bXsZ6bOT4GNMJ6coH/RrEvaw644Eh7GxrLA==", "dev": true, "dependencies": { - "errlop": "^4.6.0" + "errlop": "^7.1.0" }, "bin": { "valid-module": "bin.cjs" @@ -4092,18 +4070,6 @@ "url": "https://bevry.me/fund" } }, - "node_modules/valid-module/node_modules/errlop": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/errlop/-/errlop-4.6.0.tgz", - "integrity": "sha512-9a1m+bGJeZiCQHZmXwjdpmiSXfOVbp6g/BvLFeJ4Xx2Iu/3ReWGdG5+z4ZPE+F1JU66S+CY9dp4Bm7vw0l3LGA==", - "dev": true, - "engines": { - "node": ">=4" - }, - "funding": { - "url": "https://bevry.me/fund" - } - }, "node_modules/verror": { "version": "1.10.0", "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", @@ -4119,9 +4085,9 @@ } }, "node_modules/version-compare": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/version-compare/-/version-compare-3.1.0.tgz", - "integrity": "sha512-2mBbYi/gSFSBN1g75mPIJOyPHN0JzOjcKhwu4IVQH7JgA4DNb/lIlF95mgDSVOOd3JmGLK/k4XEUQkHI8sFckw==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/version-compare/-/version-compare-3.2.0.tgz", + "integrity": "sha512-cSIEcfQ2OuSqOC+SIjHXMoldXuXavr/M5GLtQYpQG6mn+tlKYK1DNJ/pllsGGnogM81ekhcHdLJmdEQmwA0hQA==", "dev": true, "engines": { "node": ">=4" @@ -4131,12 +4097,12 @@ } }, "node_modules/version-range": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/version-range/-/version-range-3.1.0.tgz", - "integrity": "sha512-RZGnPNzMcv8pa7PyqEmf8OGX8NH3UAOPX89mwYOGT2WnIjMZLEp0RbLXH/+lMeLwpOkzcN/3EjwvHoZwQ/E7sQ==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/version-range/-/version-range-3.2.0.tgz", + "integrity": "sha512-aP/XwEG9q+mTjyGUR2FDrIfLMAylJ4k4/eSCxXBAeDUeHWWtzFeWE37YlTrPA5lEXwA2A7A0N+YDPEPAkuEcJg==", "dev": true, "dependencies": { - "version-compare": "^3.1.0" + "version-compare": "^3.2.0" }, "engines": { "node": ">=4" diff --git a/package.json b/package.json index ea296a8..a8b02d0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@bevry/memo", - "version": "4.0.0", + "version": "4.1.0", "description": "Wrap a function in a memo to reuse the first invocation result of the function", "homepage": "https://github.com/bevry/memo", "license": "Artistic-2.0", @@ -165,22 +165,22 @@ "devDependencies": { "@bevry/update-contributors": "^1.23.0", "@types/node": "^20.9.0", - "@typescript-eslint/eslint-plugin": "^6.10.0", - "@typescript-eslint/parser": "^6.10.0", - "assert-helpers": "^11.2.0", + "@typescript-eslint/eslint-plugin": "^6.11.0", + "@typescript-eslint/parser": "^6.11.0", + "assert-helpers": "^11.4.0", "eslint": "^8.53.0", - "eslint-config-bevry": "^3.29.0", + "eslint-config-bevry": "^4.0.0", "eslint-config-prettier": "^9.0.0", "eslint-plugin-prettier": "^5.0.1", - "kava": "^7.1.0", + "kava": "^7.2.0", "make-deno-edition": "^1.3.0", "prettier": "^3.1.0", - "projectz": "^2.23.0", + "projectz": "^3.0.0", "surge": "^0.23.1", "typedoc": "^0.25.3", "typescript": "5.2.2", - "valid-directory": "^4.1.0", - "valid-module": "^2.1.0" + "valid-directory": "^4.2.0", + "valid-module": "^2.2.0" }, "scripts": { "our:clean": "rm -rf ./docs ./edition* ./es2015 ./es5 ./out ./.next",