Informe JSON sin procesar legible por máquina
{
"data": {
"repo": {
"topics": [
"cache",
"redis",
"nodejs",
"caching",
"caching-library",
"http",
"wrapper",
"rfc-72",
"key-value",
"keyv"
],
"is_fork": false,
"size_kb": 4883,
"has_wiki": false,
"homepage": "https://cacheable.org",
"languages": {
"JavaScript": 25586,
"TypeScript": 1051213
},
"pushed_at": "2026-07-15T18:26:15Z",
"created_at": "2013-04-06T22:57:49Z",
"owner_type": "User",
"updated_at": "2026-07-21T08:17:23Z",
"description": "a robust, scalable, and maintained set of caching packages",
"is_archived": false,
"is_disabled": false,
"license_spdx": "MIT",
"default_branch": "main",
"license_spdx_raw": "MIT",
"primary_language": "TypeScript",
"significant_languages": [
"TypeScript"
]
},
"owner": {
"blog": "http://jaredwray.com",
"name": "Jared Wray",
"type": "User",
"login": "jaredwray",
"company": null,
"location": null,
"followers": 238,
"avatar_url": "https://avatars.githubusercontent.com/u/1205481?v=4",
"created_at": "2011-11-18T22:17:59Z",
"is_verified": null,
"public_repos": 22,
"account_age_days": 5359
},
"license": {
"state": "standard",
"spdx_id": "MIT",
"raw_spdx": "MIT",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "2026-06-27",
"kind": "other",
"published_at": "2026-06-27T18:16:33Z"
},
{
"tag": "2026-05-27",
"kind": "other",
"published_at": "2026-05-27T15:39:32Z"
},
{
"tag": "2026-05-16",
"kind": "other",
"published_at": "2026-05-16T23:04:13Z"
},
{
"tag": "2026-05-07",
"kind": "other",
"published_at": "2026-05-07T19:44:53Z"
},
{
"tag": "2026-03-26",
"kind": "other",
"published_at": "2026-03-27T02:26:03Z"
},
{
"tag": "2026-03-17",
"kind": "other",
"published_at": "2026-03-17T23:43:48Z"
},
{
"tag": "2026-02-27",
"kind": "other",
"published_at": "2026-02-27T16:33:19Z"
},
{
"tag": "2026-02-06",
"kind": "other",
"published_at": "2026-02-06T22:50:15Z"
},
{
"tag": "2025-01-17",
"kind": "other",
"published_at": "2026-01-17T17:24:38Z"
},
{
"tag": "2026-01-09",
"kind": "other",
"published_at": "2026-01-09T21:01:23Z"
},
{
"tag": "2025-12-26",
"kind": "other",
"published_at": "2025-12-26T23:55:26Z"
},
{
"tag": "2025-12-16",
"kind": "other",
"published_at": "2025-12-16T22:08:14Z"
},
{
"tag": "2025-12-09",
"kind": "other",
"published_at": "2025-12-09T20:27:24Z"
},
{
"tag": "2025-12-06",
"kind": "other",
"published_at": "2025-12-06T22:44:07Z"
},
{
"tag": "2025-11-26",
"kind": "other",
"published_at": "2025-11-26T23:54:12Z"
},
{
"tag": "2025-11-17",
"kind": "other",
"published_at": "2025-11-17T20:40:31Z"
},
{
"tag": "2025-11-16",
"kind": "other",
"published_at": "2025-11-16T16:51:17Z"
},
{
"tag": "2025-11-07",
"kind": "other",
"published_at": "2025-11-07T18:23:53Z"
},
{
"tag": "2025-10-27",
"kind": "other",
"published_at": "2025-10-31T22:38:39Z"
},
{
"tag": "2025-10-17",
"kind": "other",
"published_at": "2025-10-17T18:34:37Z"
},
{
"tag": "2025-10-12",
"kind": "other",
"published_at": "2025-10-13T00:15:47Z"
},
{
"tag": "2025-10-06",
"kind": "other",
"published_at": "2025-10-06T16:52:40Z"
},
{
"tag": "2025-10-01",
"kind": "other",
"published_at": "2025-10-01T17:46:25Z"
},
{
"tag": "2025-09-22",
"kind": "other",
"published_at": "2025-09-22T15:54:26Z"
},
{
"tag": "2025-09-09",
"kind": "other",
"published_at": "2025-09-09T17:41:41Z"
},
{
"tag": "2025-08-26",
"kind": "other",
"published_at": "2025-08-26T22:23:38Z"
},
{
"tag": "2025-08-17",
"kind": "other",
"published_at": "2025-08-17T19:12:35Z"
},
{
"tag": "2025-08-06",
"kind": "other",
"published_at": "2025-08-06T16:25:39Z"
},
{
"tag": "2025-07-30",
"kind": "other",
"published_at": "2025-07-31T03:33:02Z"
},
{
"tag": "2025-07-23",
"kind": "other",
"published_at": "2025-07-23T18:30:27Z"
},
{
"tag": "2025-07-17",
"kind": "other",
"published_at": "2025-07-17T17:13:28Z"
},
{
"tag": "2025-06-30",
"kind": "other",
"published_at": "2025-06-30T16:42:57Z"
},
{
"tag": "2025-06-27",
"kind": "other",
"published_at": "2025-06-28T05:05:04Z"
},
{
"tag": "2025-05-06",
"kind": "other",
"published_at": "2025-05-06T15:56:14Z"
},
{
"tag": "2025-04-05",
"kind": "other",
"published_at": "2025-04-05T16:38:48Z"
},
{
"tag": "2025-03-03",
"kind": "other",
"published_at": "2025-03-03T23:49:37Z"
},
{
"tag": "2025-01-27",
"kind": "other",
"published_at": "2025-01-27T20:24:54Z"
},
{
"tag": "2025-01-23",
"kind": "other",
"published_at": "2025-01-23T17:00:44Z"
},
{
"tag": "2024-12-26",
"kind": "other",
"published_at": "2024-12-27T00:45:57Z"
},
{
"tag": "2024-12-03",
"kind": "other",
"published_at": "2024-12-03T23:07:31Z"
},
{
"tag": "2024-11-27",
"kind": "other",
"published_at": "2024-11-27T16:39:33Z"
},
{
"tag": "2024-11-24",
"kind": "other",
"published_at": "2024-11-24T17:40:17Z"
},
{
"tag": "2024-11-23",
"kind": "other",
"published_at": "2024-11-23T21:23:21Z"
},
{
"tag": "2024-11-10",
"kind": "other",
"published_at": "2024-11-10T18:28:59Z"
},
{
"tag": "2024-10-27",
"kind": "other",
"published_at": "2024-10-27T20:41:46Z"
},
{
"tag": "2024-10-21",
"kind": "other",
"published_at": "2024-10-21T20:54:41Z"
},
{
"tag": "2024-10-16",
"kind": "other",
"published_at": "2024-10-16T18:06:48Z"
},
{
"tag": "2024-10-04",
"kind": "other",
"published_at": "2024-10-04T23:19:07Z"
},
{
"tag": "2024-10-02",
"kind": "other",
"published_at": "2024-10-02T13:58:02Z"
},
{
"tag": "2024-09-29",
"kind": "other",
"published_at": "2024-09-29T17:46:07Z"
},
{
"tag": "2024-09-27",
"kind": "other",
"published_at": "2024-09-27T16:59:21Z"
},
{
"tag": "2024-09-25",
"kind": "other",
"published_at": "2024-09-25T16:08:33Z"
},
{
"tag": "2024-09-24",
"kind": "other",
"published_at": "2024-09-24T15:53:05Z"
},
{
"tag": "2024-09-23",
"kind": "other",
"published_at": "2024-09-23T19:53:36Z"
},
{
"tag": "2024-09-15",
"kind": "other",
"published_at": "2024-09-15T19:54:58Z"
},
{
"tag": "2024-09-10",
"kind": "other",
"published_at": "2024-09-10T21:35:29Z"
},
{
"tag": "2024-08-12",
"kind": "other",
"published_at": "2024-08-12T20:59:08Z"
},
{
"tag": "2024-08-05",
"kind": "other",
"published_at": "2024-08-05T22:58:51Z"
},
{
"tag": "2024-07-11",
"kind": "other",
"published_at": "2024-07-11T19:09:42Z"
},
{
"tag": "2024-07-03",
"kind": "other",
"published_at": "2024-07-03T17:11:41Z"
},
{
"tag": "2024-06-17",
"kind": "other",
"published_at": "2024-06-17T17:56:07Z"
},
{
"tag": "2024-06-05",
"kind": "other",
"published_at": "2024-06-05T14:20:29Z"
},
{
"tag": "2024-05-23",
"kind": "other",
"published_at": "2024-05-23T17:02:07Z"
},
{
"tag": "2024-05-22",
"kind": "other",
"published_at": "2024-05-22T23:22:00Z"
},
{
"tag": "2024-04-29",
"kind": "other",
"published_at": "2024-04-29T15:00:26Z"
},
{
"tag": "2024-04-05",
"kind": "other",
"published_at": "2024-04-05T16:36:52Z"
}
],
"recent_commits": [
{
"oid": "f50b770ec197a3dd628794a10adb456c1dab0bd7",
"body": "…1687)\n\n* cacheable-request - fix: keyv error listener leak on every request\n\nKeyv v5's event manager wraps once() listeners in an anonymous function,\nso the existing removeListener(error, errorHandler) cleanup never matched\nthe registered wrapper and one error listener leaked per request, hitting\nM\n[…]\nge collected.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_011tF3VefnzwcH6TQo48uJHQ\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "cacheable-request - fix: keyv error listener leak on every request (#…",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-07-15T18:26:13Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "d93554f8a775370ef6551c66987450182985901d",
"body": "Catch-up minor bump within undici 8 (8.6.0 -> 8.7.0), following the\nundici 8 major migration in #1682. `undici` is used type-only in\n@cacheable/net (the RequestInit / Response types); the actual fetch\nruns through Node's global fetch, so this only refreshes the type\ndefinitions.\n\nVerified: build, `t\n[…]\n tests, and the\nbuild-artifact validation (runtime + publint + attw) all pass.\n\n\nClaude-Session: https://claude.ai/code/session_01P1TBuMiXotBjpNHYcbwvqf\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "net - chore: upgrade undici to 8.7.0 (#1684)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-07-08T22:42:34Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "93aedf345c0d040e32263d1cf3807ec51c59eec3",
"body": "Catch-up dev-tooling maintenance:\n\n- Bump vitest, @vitest/coverage-v8, and @vitest/spy from 4.1.9 to 4.1.10.\n- Run `biome migrate`: replace the deprecated `linter.rules.recommended: true`\n with `linter.rules.preset: \"recommended\"`, and add `root: false` to the\n nested benchmark config (required fo\n[…]\nThe\n migration is behavior-neutral: identical lint findings before and after.\n\n\nClaude-Session: https://claude.ai/code/session_01P1TBuMiXotBjpNHYcbwvqf\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "mono - chore: upgrade vitest to 4.1.10 and migrate biome config (#1683)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-07-08T22:12:53Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "c21df29635b17aa452bb177a30c0f9b928ff7634",
"body": "undici ^7.24.5 -> ^8.6.0 (@cacheable/net dependency).\n\nNo code changes required. @cacheable/net uses undici only for its types\n(RequestInit, Response) and re-exports RequestInit as FetchRequestInit;\nruntime fetching uses Node's global fetch (to keep instanceof checks aligned\nwith Node's bundled undi\n[…]\n builds with tsdown which\ndoesn't type-check), and its 212 tests pass at 100%.\n\n\nClaude-Session: https://claude.ai/code/session_01P1TBuMiXotBjpNHYcbwvqf\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "net - chore: upgrade undici to 8 (breaking) (#1682)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-07-08T20:27:44Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "3c9b7a2fbeb4b1429a69ff35cb5a0a443252a3f3",
"body": "* cacheable-request - chore: upgrade normalize-url to 9 (breaking)\n\nnormalize-url ^8.1.1 -> ^9.0.1 (cacheable-request dependency).\n\nNo code changes required: cacheable-request's usage type-checks against v9\n(cacheable-request builds with tsc, so this is enforced by the build). The\nnormalized-URL out\n[…]\n (22/24/26).\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01P1TBuMiXotBjpNHYcbwvqf\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "cacheable-request - chore: upgrade normalize-url to 9 (breaking) (#1681)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-07-08T20:21:18Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "7c6ea108115cc7afedefd04103c4fd396a8a6b45",
"body": "hashery ^1.5.1 -> ^3.0.0 (@cacheable/utils dependency).\n\nNo code changes were required: @cacheable/utils' Hashery usage\n(toHash/toHashSync/toNumber/toNumberSync) is compatible with hashery 3,\nverified with tsc --noEmit. Hash output is unchanged across the upgrade --\nsha256, djb2, and both toNumber v\n[…]\neys derived from these hashes are stable and\nconsumers see no behavior change.\n\n\nClaude-Session: https://claude.ai/code/session_01P1TBuMiXotBjpNHYcbwvqf\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "utils - chore: upgrade hashery to 3 (breaking) (#1680)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-07-08T19:52:42Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "ee2e44581fe1bf8fd8b2e8e259bab0ddff8c1f1b",
"body": "* mono - chore: upgrade hookified to 3 (breaking)\n\nUpgrade hookified to ^3.0.1 across the 5 packages that use it (cacheable,\nflat-cache, @cacheable/memory, @cacheable/net, @cacheable/node-cache).\n\nhookified 3 removed the `Hook` type and changed `onHook` to return\n`IHook | undefined`. Updated package\n[…]\n dependency.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01P1TBuMiXotBjpNHYcbwvqf\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "mono - chore: upgrade hookified to 3 (breaking) (#1679)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-07-08T19:42:04Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "3c1e5b896dd80033e0ed51f594737703bcc30b30",
"body": "qified ecosystem, non-major (0.x) bump in the cacheable package:\n\n- qified ^0.10.1 -> ^0.12.0 (dependency)\n- @qified/redis ^0.10.1 -> ^0.12.0 (devDependency)\n\n\nClaude-Session: https://claude.ai/code/session_01P1TBuMiXotBjpNHYcbwvqf\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "cacheable - chore: upgrade qified (#1678)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-07-08T18:53:11Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "41ea31d1c38452d5ccef138322c8a8f1b25737ab",
"body": "tinybench ^6.0.1 -> ^6.0.2 (@cacheable/benchmark dep; patch).\n\n\nClaude-Session: https://claude.ai/code/session_01P1TBuMiXotBjpNHYcbwvqf\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "benchmark - chore: upgrade tinybench (#1677)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-07-06T23:39:00Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "4afc587af974bea04d0645bcea62917e701c0f3f",
"body": "docula ^1.14.0 -> ^2.1.0 (major; @cacheable/website devDep, docs-site\ngenerator).\n\nNo config or code changes required: the existing site/docula.config.ts\nschema is accepted by docula 2, and `pnpm website:build` completes\nsuccessfully (pages, docs, sitemap, llms.txt, and search index all built).\nWebsite-only; no impact on the published @cacheable/* packages.\n\n\nClaude-Session: https://claude.ai/code/session_01P1TBuMiXotBjpNHYcbwvqf\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "website - chore: upgrade docula to 2 (breaking) (#1676)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-07-06T13:50:28Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "d681affd91ba4fd1577be824e9e42f1ed6532fff",
"body": "Standalone test-support dev dependencies (non-major):\n\n- lru-cache ^11.3.6 -> ^11.5.1 (cacheable, dev)\n- body-parser ^2.2.2 -> ^2.3.0 (cacheable-request, dev)\n\n\nClaude-Session: https://claude.ai/code/session_01P1TBuMiXotBjpNHYcbwvqf\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "mono - chore: upgrade lru-cache and body-parser (#1675)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-07-06T00:36:21Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "d4dd66a1947e3e3c003fb2ca082cef8c63095dda",
"body": "wrangler ^4.87.0 -> ^4.107.0 (root devDep; minor bump within v4).\n\n\nClaude-Session: https://claude.ai/code/session_01P1TBuMiXotBjpNHYcbwvqf\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "mono - chore: upgrade wrangler (#1674)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-07-05T22:42:59Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "fa69be546ba9cd5487e35d1666bacae78168c2a8",
"body": "Upgrade all pinned GitHub Actions to their latest majors (pin style @vX\npreserved; workflow YAML validated):\n\n- actions/checkout v4 -> v7\n- actions/setup-node v4 -> v6\n- codecov/codecov-action v5 -> v7\n- cloudflare/wrangler-action v3 -> v4\n- pnpm/action-setup v6 (already latest; unchanged)\n\ncheckout\n[…]\n (already this repo's wrangler devDep major), and\n`pages deploy` is unchanged.\n\n\nClaude-Session: https://claude.ai/code/session_01P1TBuMiXotBjpNHYcbwvqf\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "mono - chore: upgrade GitHub Actions (breaking) (#1673)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-07-05T22:04:07Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "d1589d5eecba7930f1c83848c6031be1594d09a4",
"body": "Upgrade the TypeScript compiler 5.9.3 -> 6.0.3 across all 9 packages that\ndeclare it.\n\nTS 6.0 requires an explicit rootDir when the output layout depends on it\n(TS5011); this surfaced in cacheable-request's tsc-based build. Added\nrootDir \"./src\" to its tsconfig.build.json -- behavior-preserving, it \n[…]\n.0.3 (9 packages)\n- cacheable-request/tsconfig.build.json: add rootDir \"./src\"\n\n\nClaude-Session: https://claude.ai/code/session_01P1TBuMiXotBjpNHYcbwvqf\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "mono - chore: upgrade TypeScript to 6 (breaking) (#1672)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-07-05T21:44:20Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "df417aa03b6f80a09786d01309fcb51481f03ecb",
"body": "Raise the development/release Node baseline to 24 and bump @types/node to\nthe latest 24.x, per maintainer decision. The CI test matrix stays at\n22/24/26 and consumer-facing engines.node are unchanged, so published\npackages keep supporting older Node.\n\n- .nvmrc 22 -> 24\n- @types/node ^24.12.2 -> ^24.13.2 (latest 24.x under minimumReleaseAge)\n\n\nClaude-Session: https://claude.ai/code/session_01P1TBuMiXotBjpNHYcbwvqf\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "mono - chore: set Node baseline to 24 (#1671)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-07-05T21:30:59Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "b5a4515a76fcad337bfd0f61f8cc98e2a2df9266",
"body": "Upgrade the non-major TypeScript/build tooling to their latest\nminimumReleaseAge-gated versions:\n\n- tsdown 0.22.0 -> 0.22.3 (bundler; 8 packages)\n- tsx 4.21.0 -> 4.23.0 (benchmark, website)\n- @arethetypeswrong/cli 0.18.3 -> 0.18.4 (root)\n\ntypescript (5.9.3 -> 6.0.3, a major) and @types/node (Node-major target\nneeds a decision) are handled separately.\n\n\nClaude-Session: https://claude.ai/code/session_01P1TBuMiXotBjpNHYcbwvqf\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "mono - chore: upgrade build tooling (#1670)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-07-05T21:12:16Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "52c60fcafbeaea43d9800715aae9b992d029b337",
"body": "Upgrade the code-quality tooling group to their latest minimumReleaseAge-gated\nversions:\n\n- vitest, @vitest/coverage-v8, @vitest/spy 4.1.5 -> 4.1.9\n- @biomejs/biome 2.4.14 -> 2.5.2\n- @faker-js/faker 10.4.0 -> 10.5.0 (root devDep and @cacheable/benchmark\n dependency, kept in lockstep)\n\n\nClaude-Session: https://claude.ai/code/session_01P1TBuMiXotBjpNHYcbwvqf\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "mono - chore: upgrade code quality dependencies (#1669)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-07-05T18:45:10Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "2d9ba7356e8c6edd7dc79dfcdda817d432d4c19c",
"body": "…ore (#1668)\n\n* test(cacheable-request): replace sqlite3 test dependency with mock store\n\ncacheable-request pulled in sqlite3 and @keyv/sqlite as devDependencies\nsolely to exercise two cache-connection error paths in its tests\n(CacheError emission and automaticFailover fallback). sqlite3 is a heavy\n\n[…]\nrage change.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_011PoyCZFLpx5BXNih6jNiaQ\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "test(cacheable-request): replace sqlite3 test dependency with mock st…",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-06-27T18:51:49Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "caf0a600883d60591693ef840798762b2f62b726",
"body": "Bump packages with unreleased work since 2026-05-27:\n- cacheable 2.4.0 -> 2.5.0 (minor)\n- @cacheable/memory 2.1.0 -> 2.2.0 (minor)\n- @cacheable/net 2.0.9 -> 2.1.0 (minor)\n- @cacheable/utils 2.4.2 -> 2.5.0 (minor)\n- file-entry-cache 11.1.4 -> 11.1.5 (patch)\n- @cacheable/node-cache 3.1.0 -> 3.1.1 (patch)\n\n\nClaude-Session: https://claude.ai/code/session_01Fvs6ReFCKiUEYgr48DqgKN\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "release: 2026-06-27 (6 packages) (#1667)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-06-27T18:16:49Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "268d910d23911031b4017455fc5f848378cd430f",
"body": "…Table of Contents (#1666)\n\n* docs(net): expand @cacheable/net README with full API, Features, and Table of Contents\n\nRestructure the README to mirror the cacheable package README:\n- Expanded Features list\n- Full Table of Contents with working anchors\n- Document HTTP method helpers, DataResponse sha\n[…]\nw otherwise)\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01ERPCDjhDCjXjwrAkBD9z3Y\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(net): expand @cacheable/net README with full API, Features, and …",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-06-26T19:58:44Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "35c90d9ff3f3f55e1cb4c6dfdd28154d0f8fea40",
"body": "* feat: add registry-aware release workflow with provenance + OIDC\n\nAdd a release pipeline that publishes only the workspace packages whose\nmanually-set version is ahead of the npm registry — versions are never\nbumped by the tooling.\n\n- scripts/release.mjs: enumerates publishable packages (pnpm), co\n[…]\n add error).\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01F7cjEDzGAPQUmvQehU1sGF\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat: registry-aware release workflow with provenance + OIDC (#1664)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-06-26T18:58:03Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "917bd8338ae45185bf228a79312e27accb229ee5",
"body": "* feat(cacheable): add getStaticInstance shared singleton accessor\n\nAdd a static `Cacheable.getStaticInstance(options?)` accessor that lazily\ncreates and returns a single shared instance, so callers can use one global\ncache without constructing and passing an instance around. Options are applied\nonl\n[…]\nd API entry.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01JastxGGo1xPEJFy8N9YBpe\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(cacheable): add getStaticInstance shared singleton accessor (#1665)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-06-26T18:37:38Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "92d27840722e13a46f3bbebf8bbfe41a4bd9f247",
"body": "* feat(memory): strongly-typed onHook and hooks documentation\n\nBring @cacheable/memory hooks to parity with cacheable:\n\n- Add a strongly-typed onHook overload backed by a new\n CacheableMemoryHookHandlerMap so built-in CacheableMemoryHooks names\n infer their handler payloads (with a loose Hookified\n[…]\nly dispatch.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_0141FhENX9QqnUDzKkZomECo\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(memory): strongly-typed onHook and hooks documentation (#1663)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-06-26T18:24:53Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "4c8235304f34ba04cf60a6a87a7311bd6005cc4b",
"body": "* feat(memory): add statistics tracking via @cacheable/utils Stats\n\nAdd an opt-in `stats` option to `CacheableMemory` that tracks runtime\nstatistics (hits, misses, gets, sets, deletes, clears, count, ksize,\nvsize) using the shared `Stats` implementation from `@cacheable/utils`,\nconsistent with `cach\n[…]\n the README.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_012LnVP8LHiL2fPi3BycCYWY\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(memory): add statistics tracking via @cacheable/utils Stats (#1662)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-06-26T17:10:02Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "13da7772845a3c0c7eee2f8bc4c5eb0466552ba8",
"body": "* feat(memory): add getOrSet cache-aside helper to CacheableMemory\n\nCacheableMemory had `wrap` but no `getOrSet`, even though the package\nREADME already linked to a \"Get Or Set Memoization Function\" section that\ndid not exist. This adds the synchronous cache-aside helper.\n\n- Add `getOrSetSync` (+ `G\n[…]\nfails paths.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01CThksx3yULdnqQmPF5epua\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(memory): add getOrSet cache-aside helper to CacheableMemory (#1661)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-06-26T16:34:17Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "0be0680cd4c6f2018fffc718c6fb56c6806bedee",
"body": "* feat(cacheable): support per-store TTL overrides via hooks\n\nAllow a BEFORE_SET hook to assign a per-store object ({ primary,\nsecondary }) to item.ttl so the primary and secondary stores can be given\ndifferent expirations, mirroring the existing operation-level per-store\nTTL. The hook item now uses\n[…]\nough capTtl.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_018gcwQAcwjCjFP2Myh8kCMz\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(cacheable): support per-store TTL overrides via hooks (#1657)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-06-20T18:51:21Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "51f6ceaf2d3b17af97f064333f705a758edd1d83",
"body": "…p (#1660)\n\n* refactor(utils): expose Stats per-key data as public `trackedKeys` map\n\nRename the private `_keyCounts` map to a public `trackedKeys` field so\nconsumers can read per-key counters (and `trackedKeys.size`) directly,\nand drop the now-redundant `trackedKeyCount` getter. Export the\n`KeyCoun\n[…]\n invariants.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01SjsBvVfhc7vKeqPE4nWCUr\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "refactor(utils): expose Stats per-key data as public `trackedKeys` ma…",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-06-19T23:42:36Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "9178ad209335e3c4f10233169b90baf796ce0669",
"body": "The \"Iteration on Primary and Secondary Stores\" section implied the\ndefault in-memory primary store could be walked with\n`cache.primary.iterator()`. Keyv only assigns `iterator()` when the\nunderlying store is a raw `Map` or a recognized iterable adapter\n(redis, valkey, mongo, sqlite, postgres, mysql\n[…]\ne verified empirically against the actual Keyv and\n@cacheable/memory behavior.\n\n\nClaude-Session: https://claude.ai/code/session_01BCV53CPzQxWNWghd39QfVd\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(cacheable): correct primary/secondary iteration guidance (#1659)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-06-19T23:19:04Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "f61070ed071b11bffd8264c2c14f7e16f4a416da",
"body": "* feat(net): add WHOIS and RDAP lookups to @cacheable/net\n\nAdd cached WHOIS (TCP port 43) and RDAP (HTTPS/JSON) lookups for domains,\nIPv4/IPv6 addresses, and ASNs with both raw and parsed JSON output.\n\n- whois(): traditional WHOIS over node:net returning raw text plus parsed\n fields, with dynamic I\n[…]\nemains 100%.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_0153VmEzvkNSLQCcNLhhEs5h\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(net): add WHOIS and RDAP lookups to @cacheable/net (#1658)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-06-19T22:45:44Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "2debaff53a028af09dda4584c711a0422e6c49ea",
"body": "* feat(cacheable): support per-store TTL per operation\n\nAllow the `ttl` on `set`, `getOrSet`, and `wrap` to accept a per-store\nobject `{ primary?, secondary? }` in addition to a number or shorthand\nstring. Each field is resolved independently so a single operation can\nexpire a key at different rates\n[…]\nation rules.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01HjpVjtgWd5wyw17rsywLb8\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "cacheable - feat: support per-store TTL per operation (#1656)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-06-17T16:48:26Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "639e42c3fb2a1d271bf02a434210081ebb692ca2",
"body": "* feat(cacheable): add tag-based invalidation with CacheTags\n\nImplements tag-based invalidation for Cacheable (#1640) on top of the\nCacheTags service in @cacheable/utils:\n\n- set(key, value, { ttl, tags }) associates entries with tags\n (back-compat with ttl as the third argument)\n- setMany items acc\n[…]\n3PobY\n\n* refactor(cacheable): check tags.enabled at call sites before tag operations\n\nhttps://claude.ai/code/session_01CEUJ2ZvfykEnuUfL43PobY\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(cacheable): tag-based invalidation via CacheTags (#1655)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-06-12T16:34:24Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "0fca25542ee6223c90f142e1744e39ce81a93831",
"body": "* feat(utils): make Stats event-driven and fully featured\n\nEnhance the shared Stats class in @cacheable/utils so it can serve as the\nsingle statistics primitive across all cacheable libraries.\n\n- Event-driven: subscribe()/unsubscribe() attach to any duck-typed emitter\n (Hookified or Node EventEmitt\n[…]\nous. No behavior change. Nothing has\nshipped yet, so no deprecation alias is needed.\n\nhttps://claude.ai/code/session_019LJSwEXR15J1d8PHrNHMrE\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(utils): make Stats event-driven and fully featured (#1653)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-06-10T21:45:54Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "7df12369d753200fe1801b7a3f64f3d3821d0ca5",
"body": "* Add CacheTagService to @cacheable/utils\n\n* Act on code feedback and increase performance\n\n* Dedup before store query\n\n* moving to CacheTags\n\n* fix tsconfig\n\n---------\n\nCo-authored-by: Jared Wray <me@jaredwray.com>",
"is_bot": false,
"headline": "feat: Add CacheTagService to @cacheable/utils (#1646)",
"author_name": "Joakim Wimmerstedt",
"author_login": "cupofjoakim",
"committed_at": "2026-06-08T00:33:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7d5842091929b8577f08b68e9c1296f142fd2d86",
"body": "…ntics (#1648) (#1649)\n\n* fix(file-entry-cache): restore v8 reconcile and change-detection semantics (#1648)\n\nfile-entry-cache v11 diverged from v8 in three ways that broke ESLint's\nuse case:\n\n1. reconcile() updated cache entries for *every* tracked file, not just\n those inspected via getFileDescr\n[…]\ne). statSync is now used only to detect\n deletion.\n\nAdds regression tests for both behaviors.\n\n* fixing some small issues\n\n* minor bug fixes\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(file-entry-cache): restore v8 reconcile and change-detection sema…",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-06-06T18:05:06Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "c5eb62c6a494b6d4a8980fdc8cd5bbb119bfa58f",
"body": "* fix(net): make fetch behave like native fetch\n\n@cacheable/net previously threw `Error(\"Fetch failed with status …\")` on any\nnon-2xx response, which diverged from native `fetch` semantics. Callers written\nfor `fetch` check `response.ok`, but that became unreachable dead code because the\nrequest alr\n[…]\nus (check\nresponse.ok), preserves response.url/redirected/type, with caching opt-in.\n\nhttps://claude.ai/code/session_01QeG7AkCcuwmpw9JJSX26zi\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(net): make fetch behave like native fetch (#1652)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-06-04T17:39:12Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "ee73e5a0614cf97c0233912751a9d908ffe85642",
"body": "* Fixing issues with metrics reporting\n\n* Apply suggestions from code review\n\nCo-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>\n\n---------\n\nCo-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>\nCo-authored-by: Jared Wray <me@jaredwray.com>",
"is_bot": false,
"headline": "fix(node-cache): Fixing issues with metrics reporting (#1650)",
"author_name": "Julian Jones",
"author_login": "jmjones88",
"committed_at": "2026-06-04T15:59:44Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "c6c3e21dcb1885530d70ede178907df43cd177c3",
"body": "* chore: adding in build validation\n\n* fix(scripts): harden CJS export introspection in build validation\n\nGuard the CJS runtime check against modules that resolve to null,\nundefined, or a primitive (avoiding a TypeError on `Object.keys`/`in`),\nand correctly treat a bare function export (`module.expo\n[…]\nexports\".\n\nAddresses review feedback on PR #1651.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: adding in build validation (#1651)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-06-04T15:50:20Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "069f7340194f29f8ad2310cec4b922c0ad21b4f9",
"body": "Releasing 8 packages:\n- @cacheable/memory@2.1.0 (minor)\n- @cacheable/node-cache@3.1.0 (minor)\n- cacheable@2.4.0 (minor)\n- cache-manager@7.2.9 (patch)\n- file-entry-cache@11.1.4 (patch)\n- flat-cache@6.1.23 (patch)\n- @cacheable/net@2.0.9 (patch)\n- @cacheable/utils@2.4.2 (patch)\n\nhttps://claude.ai/code/session_01RHRKp9uLbfAsRAFPcDgZQx\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "release: 2026-05-27 (8 packages) (#1647)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-27T15:38:37Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "948234a0e976a565e2d13fb99626e9590968e487",
"body": "…e (#1645)\n\n* feat(cacheable, memory): add maxTtl option to cap maximum time-to-live\n\nAdds a `maxTtl` option to both `Cacheable` and `CacheableMemory` that\nenforces an upper bound on any TTL in the cache. When set, per-entry\nTTLs exceeding maxTtl are capped, and entries with no TTL are also\nbounded.\n[…]\n the hook runs, ensuring\nmaxTtl is always enforced regardless of hook modifications.\n\nhttps://claude.ai/code/session_01Gdiqk2rKNc1Vji61zm3qmy\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(cacheable, memory): add maxTtl option to cap maximum time-to-liv…",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-27T00:37:52Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "1ff149d11338afe06d2a87b2048e6ea2249e195e",
"body": "Add CacheableMemoryHooks enum and hookSync invocations to CacheableMemory\nfor get, getMany, set, setMany, delete, deleteMany, and clear operations.\nBEFORE hooks allow mutation of parameters (key, value, ttl) before the\noperation executes, matching the cacheable package's hook pattern.\n\nhttps://claude.ai/code/session_016g93vFCCgE3LPqYRYJWzCG\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(@cacheable/memory): add hooks like cacheable (#1644)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-26T23:25:52Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "bf3ea48bbac7c6283ad90622c58f82b2469df638",
"body": "…ures (#1643)\n\n* feat(@cacheable/node-cache): enhance NodeCacheStore with keys, has, getTtl, flushAll, events, and useClones\n\nAdd missing functionality to NodeCacheStore to bring it closer to parity with NodeCache:\n- keys() and has() for key inspection with expiration-aware checks\n- getTtl() to insp\n[…]\nrace conditions. Stats increments are atomic within each post-await\nmicrotask block.\n\nhttps://claude.ai/code/session_01R74MUq37AtZmGxxoKPiHDt\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(@cacheable/node-cache): enhance NodeCacheStore with missing feat…",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-26T21:01:05Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "150869529b1918b61e15cb629b5733f70c7d3364",
"body": "* migrate to pnpm 11 with corepack and tsdown from tsup\n\n- Update packageManager to pnpm@11.3.0 and use corepack in CI workflows\n- Move onlyBuiltDependencies from package.json to pnpm-workspace.yaml (allowBuilds)\n- Replace tsup with tsdown (v0.22.0) across all packages\n- Update CI test matrix from N\n[…]\nlude for @babel/* packages (tsdown's\n rolldown-plugin-dts pins babel 8 RC versions)\n\nhttps://claude.ai/code/session_01XSw3VPvqYovdssMUhcWCmf\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat: Migrate to pnpm 11 with corepack and tsdown from tsup (#1642)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-26T16:14:00Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "d51b5f2aab22b953a7d3ffe2884735276e8e2fa4",
"body": "* @cacheable/node-cache: replace hardcoded test data with @faker-js/faker in store tests\n\nReplace all hardcoded string keys/values (\"test\", \"value\", \"foo\", \"bar\", etc.)\nwith faker-generated data (faker.string.uuid(), faker.lorem.word(), etc.) for\nconsistency with index.test.ts and the rest of the mo\n[…]\ntead of\nchecking individual properties on mget results, ensuring no unexpected keys.\n\nhttps://claude.ai/code/session_01Xba73Vg7fi24yVik8zSjVT\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "@cacheable/node-cache: move store tests to use @faker-js/faker (#1641)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-26T15:35:01Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "9346f94f6b190ac95ca0fb01913531d7934261bb",
"body": "* @cacheable/memory - version bump to v2.0.9\n\n* ci: retrigger after Node 24 transient failure on initial run\n\n* ci: pin pnpm to 10 via pnpm/action-setup to fix Node 24 install\n\n* ci: use corepack with packageManager pin instead of pnpm/action-setup\n\n* ci: use pnpm/action-setup (reads version from pa\n[…]\nry request, drop dangerouslyIgnoreUnhandledErrors\n\n* cacheable-request - test: re-enable dangerouslyIgnoreUnhandledErrors with scoped comment\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "release: 2026-05-16 (2 packages) (#1639)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-16T23:03:15Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "2abfb68c158047b7738908309bff557fce9bb266",
"body": "…#1637) (#1638)\n\n* @cacheable/memory - docs: clarify that lruSize=0 disables LRU (fixes #1637)\n\nThe README described lruSize=0 as \"unlimited\" while the JSDoc and code\nsay it disables the LRU cache. The code is authoritative: when\n_lruSize === 0 the LRU helpers early-return and set() never evicts, so\n[…]\nclause on the lruSize intro sentence and\n rephrase for readability.\n- Use \"doubly linked list\" to match the internal DoublyLinkedList class.\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "@cacheable/memory - docs: clarify that lruSize=0 disables LRU (fixes …",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-13T21:08:30Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "7cbe2435a33680198dfc1531e8b34b54af10aca9",
"body": "…s own fetch (#1636)\n\n* @cacheable/net - fix: send FormData/Blob/streams correctly by using the runtime's own fetch\n\nThe package imported fetch from a standalone undici version whose\nFormData/Blob/ReadableStream classes differ from Node's bundled\nglobals. Its instanceof checks rejected the user-cons\n[…]\nacross\npost/patch/del.\n\n* @cacheable/net - fix: bind runtimeFetch to globalThis for context safety\n\n* @cacheable/net - version bump to v2.0.8\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "@cacheable/net - fix: send FormData/Blob correctly using the runtime'…",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-13T01:14:34Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "e61e79a1575f6c0811c0a151e8fca77b6bf438f9",
"body": null,
"is_bot": false,
"headline": "Update deploy-website.yml",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-07T19:58:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c0037d3a2b3a7ca3a9e34d8900a7e4660160747c",
"body": null,
"is_bot": false,
"headline": "file-entry-cache - version bump to v11.1.3",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-07T19:42:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0d6c4710cfea727ec654d90f19126b12498157fc",
"body": null,
"is_bot": false,
"headline": "cacheable-request - version bump to v13.0.19",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-07T19:42:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2db3df801a167c94af2f06c1931cfbc920b2da8d",
"body": null,
"is_bot": false,
"headline": "cacheable - version bump to v2.3.5",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-07T19:40:54Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6075e4f894431df570c9deeddf2ba380b51e13f1",
"body": null,
"is_bot": false,
"headline": "node-cache - version bump to v3.0.1",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-07T19:39:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6b8f03c424ccb92dcd75bf60f11e135299c25ed8",
"body": null,
"is_bot": false,
"headline": "benchmark - chore: upgrading tinybench and cleanup (#1635)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-07T19:10:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2968414312dddd0e1f875a466b66f1a9e6c4b574",
"body": "* cacheable-request - chore: upgrading sqlite3 to latest\n\n* Update cacheable-request-instance.test.ts",
"is_bot": false,
"headline": "cacheable-request - chore: upgrading sqlite3 to latest (#1634)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-07T16:31:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "752eeff1c63b7a8278ec55649966f3fbf9bce2e4",
"body": "…ng) (#1632)\n\nUpgrade @faker-js/faker dependency from 9.8.0 to 10.4.0 to align with the\nworkspace root which is already on 10.4.0.\n\nFaker 10 dropped CommonJS support and requires Node.js >= 20. The benchmark\npackage is private (not published) and only consumes the modern API, so this\nshould be a no-op at the call sites.\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "@cacheable/benchmark - fix: upgrade @faker-js/faker to 10.4.0 (breaki…",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-07T01:57:28Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "c53ebbd35d5bbc259abc67ea0228514ade4b7b3a",
"body": "Upgrade qified and @qified/redis from 0.9.0 to 0.10.1.\n\nThe qified 0.10 release renamed the Qified class's unsubscribe method to\nunsubscribeMessage (the topic/queue-level unsubscribe is now scoped). Update\nsync.ts to call unsubscribeMessage on namespace changes.\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "cacheable - fix: upgrade qified and @qified/redis to 0.10.1 (#1631)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-07T01:48:57Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "f93f91cf6ec5f904b0e78d7bc35c03277a7644da",
"body": "Upgrade non-major dependencies in @cacheable/benchmark:\n- bentocache 1.4.0 -> 1.6.1\n- lru.min 1.1.2 -> 1.1.4\n- quick-lru 7.0.1 -> 7.3.0\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "@cacheable/benchmark - fix: upgrade misc dependencies (#1630)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-07T01:32:42Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "cbde7534e061d5d042647288532c420a94d427fd",
"body": "Upgrade docula devDependency from 1.12.0 to 1.14.0.\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "@cacheable/website - fix: upgrade docula to 1.14.0 (#1629)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-07T01:28:05Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "97608d04cb0bbde5bac0ed2f7dd6f895147b26e8",
"body": "Upgrade tsx devDependency from 4.19.4 to 4.21.0 to align with the website package\nand pick up the latest tsx improvements.\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "@cacheable/benchmark - fix: upgrade tsx to 4.21.0 (#1628)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-07T01:24:16Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "d68586622a790583cd7b35f081d9059030770523",
"body": "Upgrade pino devDependency from 10.1.1 to 10.3.1.\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "file-entry-cache - fix: upgrade pino to 10.3.1 (#1627)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-07T01:20:05Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "23a174b9404e4fbc8399c607967e7c01599bc22a",
"body": "Upgrade @keyv/sqlite devDependency from 4.0.6 to 4.0.8.\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "cacheable-request - fix: upgrade @keyv/sqlite to 4.0.8 (#1626)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-07T01:16:04Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "02cf7f7dbb6584a823092869834e484a66ccd2da",
"body": "Upgrade lru-cache devDependency from 11.2.7 to 11.3.6 in the cacheable package.\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "cacheable - fix: upgrade lru-cache to 11.3.6 (#1625)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-07T01:01:56Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "259dd81d0dd812593aea91bfc6bd8284d4530693",
"body": "Upgrade wrangler from 4.81.0 to 4.87.0 in the workspace root.\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "mono - fix: upgrade wrangler to 4.87.0 (#1624)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-07T00:57:29Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "ffeac135eac8dee96255acdc1a4f5fc8dd0355b7",
"body": "Upgrade @types/node from 25.5.2 to the latest 24.x release (24.12.2) in the\nworkspace root. CI tests on Node 20/22/24, so 24.x matches the supported LTS.\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "mono - fix: upgrade @types/node to 24.12.2 (#1623)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-07T00:54:05Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "b0222464da8c887d9b2fcb0a20404f480cda34dc",
"body": "Upgrade @biomejs/biome from 2.4.10 to 2.4.14 in the workspace root.\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "mono - fix: upgrade @biomejs/biome to 2.4.14 (#1622)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-07T00:41:46Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "a170155c643398f32ce9a71fb47e2ac60388b932",
"body": "Upgrade vitest, @vitest/coverage-v8, and @vitest/spy from 4.1.3 to 4.1.5.\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "mono - fix: upgrade vitest cluster to 4.1.5 (#1621)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-05-07T00:37:04Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "46c31cccee3202078c538463cda343b80801f06e",
"body": "…tMany (#1620)\n\n* fix: respect per-store TTL in Cacheable set operations (#1619)\n\nThe `set()` and `setManyKeyv()` methods now correctly follow the\ndocumented TTL priority: explicit function TTL >> store adapter TTL >>\ncacheable TTL. Previously, both primary and secondary stores received\nthe same TTL\n[…]\nusly the secondary TTL was\ncomputed independently, ignoring the hook's modification.\n\nhttps://claude.ai/code/session_015CcQfg62CLeeE43HusGV57\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "cacheable - fix: ttl in documentation and cascading ttl in set and se…",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-04-16T12:36:11Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "ac27d2291934f0d3dd500fc4af7b7ac1cbd8f0e9",
"body": "* node-cache - fix: has() now checks TTL expiration (#1617)\n\nhas() previously returned true for expired keys, breaking the\nhas()/get() pattern used with the original node-cache. It now checks\nthe TTL, emits \"expired\", and removes the key (when deleteOnExpire is\nenabled), matching node-cache's behavi\n[…]\nn expired entry (get/has/checkData), regardless of\nthe deleteOnExpire option. Callers that want one-shot semantics can\ntrack that themselves.\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "node-cache - fix: has was not removing expired keys (#1618)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-04-15T19:25:40Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "411e66631e3d6fd50ce92d75e03b2680edd1f3ee",
"body": "* chore: upgrading docual to 1.12.0\n\n* adding defaults",
"is_bot": false,
"headline": "chore: upgrading docual to 1.12.0 (#1616)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-04-10T00:33:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b3effcdf575536246e27b31a88d86a2cc2ead094",
"body": null,
"is_bot": false,
"headline": "mono - chore: upgrading wrangler to 4.81.0 (#1615)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-04-09T22:48:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d352ff02b969d0b3f65340a370a98bf93bed5ad3",
"body": null,
"is_bot": false,
"headline": "mono - upgrading vitest, faker, biome, and types (#1614)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-04-09T22:41:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d55398f46913fb37b9096efa5ea705dc7f9e7dde",
"body": "…#1613)\n\n* fix: prevent prototype pollution in node-cache mget()\n\nUse Object.create(null) for mget() result objects in both NodeCache and\nNodeCacheStore so that __proto__ keys are treated as plain properties\ninstead of polluting Object.prototype.\n\nFixes #1612\n\nhttps://claude.ai/code/session_01MhMFGu\n[…]\nions that actually\nverify the Object.create(null) fix rather than passing vacuously.\n\nhttps://claude.ai/code/session_01MhMFGu517ERhcLM4M5DsM8\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "node-cache - fix: prototype pollution vulnerability in mget methods (…",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-03-27T17:00:35Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "487d6ff92738ddcfeacd5c56b1f3c13ca365dca6",
"body": null,
"is_bot": false,
"headline": "flat-cache - version bump to v6.1.22",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-03-27T02:28:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6a839f97805e71ed7c951bb8f1a078251d7d0a72",
"body": null,
"is_bot": false,
"headline": "net - version bump to v2.0.7",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-03-27T02:28:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "81f05e66bb5641c442e62fcc7b60d5818ef85b75",
"body": null,
"is_bot": false,
"headline": "utils - version bump to v2.4.1",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-03-27T02:26:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6292b97869d3777dbebb0caf3a5142d42ba179c0",
"body": "* node-cache - chore: (breaking) upgrading hookified\n\n* throwOnHookErrors updated\n\n* adding stats",
"is_bot": false,
"headline": "node-cache - chore: (breaking) upgrading hookified adding stats (#1609)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-03-27T02:24:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8ac7cbf4725c560b9751587e029e0446c3380a50",
"body": null,
"is_bot": false,
"headline": "net - chore: upgrading undici (#1608)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-03-27T01:31:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6484940462ff23ee439a63b24cbde2fd634ed51d",
"body": null,
"is_bot": false,
"headline": "utils - chore: upgrading hashery (#1607)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-03-27T01:26:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1a4d7217132c75f48ded6132029ba6431e310d09",
"body": "* Upgrade flatted to ^3.4.2 to fix prototype pollution vulnerability (GHSA-rf6f-7fwh-wjgh)\n\nFixes #1604\n\nhttps://claude.ai/code/session_013wvUrdCg1BZA1yKgsriN43\n\n* upgrading typescript\n\n* moving back to typescript 5\n\n* concurrency fixes\n\n* updating with faker for better tests\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix: Upgrade flatted to ^3.4.2 to fix GHSA-rf6f-7fwh-wjgh (#1606)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-03-27T01:21:40Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "bf8c696db56167c8c32a3f390b69c793b63db991",
"body": "* feat!: remove maxKeys from NodeCacheStore\n\nBREAKING CHANGE: Remove maxKeys option from NodeCacheStore as it does not\nmake sense for a store backed by external services (Redis, MongoDB, etc.)\nwhere the backend manages its own capacity. The maxKeys option remains\navailable on the in-memory NodeCache\n[…]\nable/node-cache to v3.0.0.\n\nhttps://claude.ai/code/session_01SY98RRSBdLQBanZEsGmqv4\n\n* Update README.md\n\n* removing stats\n\n* Update README.md\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "Remove maxKeys limit feature from NodeCacheStore (#1605)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-03-27T00:43:33Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "effcbe34ae555fcb110a59d0aef8f7a9a74ad278",
"body": null,
"is_bot": false,
"headline": "Delete packages/node-cache/.DS_Store",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-03-25T04:50:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a2cbed68f33488662d4279695f67fc3404ab8c1a",
"body": "* fix(node-cache): resolve generic type shadowing on mget, take, and get (#1601)\n\nMethod-level <T> generics on mget, take (NodeCache) and get, mget, take\n(NodeCacheStore) shadowed the class-level <T>, causing TypeScript to infer\nunknown instead of the user-specified type. Rename to <V = T> so the\ncl\n[…]\nty checks with explicit\ntoBeDefined + individual property assertions for all fields.\n\nhttps://claude.ai/code/session_01AfCP11dTBM4KuAcBdJRc3j\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix: generic type propagation in get, mget, and take methods (#1602)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-03-22T00:21:32Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "d94557af5f569e2fb1ac03c7d5c35d19a395b56d",
"body": null,
"is_bot": false,
"headline": "cacheable-request - chore: fixing tests with parse deprecation (#1600)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-03-18T00:09:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c961eac4c63cb5bd98447c015d079494b0f0fd14",
"body": "* mono - chore: moving to prepublishOnly\n\n* Update packages/cache-manager/package.json\n\nCo-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>\n\n* Update packages/cacheable-request/package.json\n\nCo-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>\n\n---------\n\nCo-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>",
"is_bot": false,
"headline": "mono - chore: moving to prepublishOnly (#1599)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-03-17T23:56:21Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "dcef98d616d0a7e9c3ce16cab32ea736dac97498",
"body": null,
"is_bot": false,
"headline": "flat-cache - version bump to v6.1.21",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-03-17T23:44:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7f9d958901e723a9a5f77d8e587ed1f0cb39a60a",
"body": null,
"is_bot": false,
"headline": "cacheable - chore: upgrading lru-cache and @keyv/redis (#1598)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-03-17T23:41:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c6dcc6a86074f6febcfddb2f55c0157a4bc6b132",
"body": null,
"is_bot": false,
"headline": "cacheable - chore: upgrading qified to latest (#1597)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-03-17T23:29:00Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "95a1287625f4ffab9f27b6fa64c854f62170571f",
"body": null,
"is_bot": false,
"headline": "chore: moving core dev dependencies to mono hoist (#1596)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-03-17T23:17:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c711fb734ca9edc837f3d3bb70a9cd20d080255d",
"body": "* fix: port issue with local mockhttp\n\n* fixing fall back",
"is_bot": false,
"headline": "fix: port issue with local mockhttp (#1595)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-03-17T23:02:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a4061ab98c9448e6292b8b319136f05480e77016",
"body": "…(#1594)",
"is_bot": false,
"headline": "flat-cache - chore: bump `flatted` version from `v3.3.3` -> `v3.4.1` …",
"author_name": "Brion Mario",
"author_login": "brionmario",
"committed_at": "2026-03-15T18:43:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c9cb8169fb9236bbd878bcc411c11080c837e8c0",
"body": null,
"is_bot": false,
"headline": "node-cache - version bump v2.0.3",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-02-27T16:41:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0c7de562a0b50c82633a84228c21e2f2d5127ed5",
"body": null,
"is_bot": false,
"headline": "net - version bump to v2.0.6",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-02-27T16:40:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "529a8dd5a961e0be2b6ee51742de60c3bdab34ee",
"body": null,
"is_bot": false,
"headline": "cacheable - version bump to v2.2.3",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-02-27T16:38:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "940da3d623808c0858ebcd99608e543b2d04f1e4",
"body": null,
"is_bot": false,
"headline": "memory - version bump to v2.0.8",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-02-27T16:37:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a30bd5b1225403320ee78e8f5d219ee22e5c7a1d",
"body": null,
"is_bot": false,
"headline": "utils - version bump v2.4.0",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-02-27T16:36:29Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b1a1f4ea58738af08c6a758ec96c1886d6e2a95c",
"body": "* mono - fix: updating codecov badge\n\n* Update index.ts",
"is_bot": false,
"headline": "mono - fix: updating codecov badge (#1592)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-02-27T16:10:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a7af48a520c2049c304d176d1e06418fafef6767",
"body": "* node-cache - fix: ttl was not defaulting to 0\n\n* handle the ttl better\n\n* adding resolveExpiration\n\n* isNegativeTtl\n\n* mset fixes",
"is_bot": false,
"headline": "node-cache - fix: ttl was not defaulting to 0 (#1591)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-02-26T20:01:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "649b53490e6b181b7ddd91bff83097f8e38abb00",
"body": null,
"is_bot": false,
"headline": "mono - chore: moving to nodejs 24 (#1590)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-02-26T19:39:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5110164abf484b4c82d17ea1e3cf3d9bc6e57f21",
"body": null,
"is_bot": false,
"headline": "net - chore: upgrading undici to 7.22.0 (#1589)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-02-26T18:56:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d9e8518b5e0b98aa6b2269db7d29ae2676fbc63b",
"body": null,
"is_bot": false,
"headline": "net - chore: upgrading hookified to 1.15.1 (#1588)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-02-26T18:52:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6196f6aa69d00b1bb6398f19b384686bde59c90e",
"body": null,
"is_bot": false,
"headline": "net - chore: upgrading types, rimraf, and faker to latest (#1587)",
"author_name": "Jared Wray",
"author_login": "jaredwray",
"committed_at": "2026-02-26T18:47:42Z",
"body_truncated": false,
"is_coding_agent": false
}
],
"releases_count": 66,
"commits_last_year": 528,
"latest_release_at": "2026-06-27T18:16:33Z",
"latest_release_tag": "2026-06-27",
"releases_from_tags": false,
"days_since_last_push": 6,
"active_weeks_last_year": 46,
"days_since_latest_release": 24,
"mean_days_between_releases": 18.8
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": true,
"has_contributing": true,
"health_percentage": 100,
"has_issue_template": false,
"has_code_of_conduct": true,
"has_pull_request_template": true
},
"ecosystem": {
"packages": [
{
"name": "@cacheable/net",
"exists": true,
"license": "MIT",
"keywords": [
"cacheable",
"http caching",
"fetch caching",
"request caching",
"http 1.1 caching",
"http 2 caching",
"dns caching",
"whois caching",
"whois",
"rdap",
"whois lookup",
"rdap lookup",
"domain lookup",
"high performance",
"layer 1 caching",
"layer 2 caching",
"distributed caching",
"keyv",
"expiration",
"CacheableMemory",
"distributed sync",
"secondary store",
"primary store",
"cache statistics",
"layered caching",
"fault tolerant",
"in-memory cache",
"distributed cache",
"lru",
"multi-tier cache"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@cacheable/net",
"is_deprecated": false,
"latest_version": "2.1.0",
"repository_url": "https://github.com/jaredwray/cacheable",
"versions_count": 12,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 4021,
"first_published_at": "2025-08-26T22:22:22.594000Z",
"latest_published_at": "2026-06-27T18:20:22.015000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 24
},
{
"name": "@cacheable/utils",
"exists": true,
"license": "MIT",
"keywords": [
"cacheable",
"caching",
"utilities",
"hashing",
"keyv",
"cache utils"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@cacheable/utils",
"is_deprecated": false,
"latest_version": "2.5.0",
"repository_url": "https://github.com/jaredwray/cacheable",
"versions_count": 17,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 33999082,
"first_published_at": "2025-07-25T04:45:56.505000Z",
"latest_published_at": "2026-06-27T18:19:51.509000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 24
},
{
"name": "@cacheable/memory",
"exists": true,
"license": "MIT",
"keywords": [
"cacheable",
"high performance",
"distributed caching",
"Keyv storage engine",
"keyv",
"memory caching",
"LRU cache",
"memory",
"in-memory",
"scalable cache",
"in-memory cache",
"lruSize",
"lru"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@cacheable/memory",
"is_deprecated": false,
"latest_version": "2.2.0",
"repository_url": "https://github.com/jaredwray/cacheable",
"versions_count": 13,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 28802590,
"first_published_at": "2025-07-31T03:16:20.103000Z",
"latest_published_at": "2026-06-27T18:19:57.669000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 24
},
{
"name": "cacheable",
"exists": true,
"license": "MIT",
"keywords": [
"cacheable",
"high performance",
"layer 1 caching",
"layer 2 caching",
"distributed caching",
"Keyv storage engine",
"memory caching",
"LRU cache",
"expiration",
"CacheableMemory",
"offline support",
"distributed sync",
"secondary store",
"primary store",
"non-blocking operations",
"cache statistics",
"layered caching",
"fault tolerant",
"scalable cache",
"in-memory cache",
"distributed cache",
"lruSize",
"lru",
"multi-tier cache"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/cacheable",
"is_deprecated": false,
"latest_version": "2.5.0",
"repository_url": "https://github.com/jaredwray/cacheable",
"versions_count": 47,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 30591519,
"first_published_at": "2014-02-20T01:06:09.065000Z",
"latest_published_at": "2026-06-27T18:20:16.235000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 24
},
{
"name": "flat-cache",
"exists": true,
"license": "MIT",
"keywords": [
"cache",
"caching",
"cacheable",
"flat-cache",
"flat",
"file",
"file-cache",
"file-caching",
"file-based-cache",
"file-persist",
"file-persistence",
"file-storage",
"file-system",
"file-management",
"filesystem-cache",
"disk-cache",
"cache-persistence",
"cache-persist",
"persistent-cache",
"persistent-storage",
"cache-to-file",
"cache-on-disk",
"cache-file",
"cache-expiration",
"cache-lifetime",
"data-persistence",
"data-storage",
"local-storage",
"file-system-cache"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/flat-cache",
"is_deprecated": false,
"latest_version": "6.1.23",
"repository_url": "https://github.com/jaredwray/cacheable",
"versions_count": 52,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 560542500,
"first_published_at": "2015-02-26T12:20:02.550000Z",
"latest_published_at": "2026-06-27T18:20:27.613000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 24
},
{
"name": "@cacheable/node-cache",
"exists": true,
"license": "MIT",
"keywords": [
"cache",
"caching",
"node",
"nodejs",
"cacheable",
"cacheable-node-cache",
"node-cache",
"cacheable-node"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@cacheable/node-cache",
"is_deprecated": false,
"latest_version": "3.1.1",
"repository_url": "https://github.com/jaredwray/cacheable",
"versions_count": 34,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 6916965,
"first_published_at": "2024-09-10T21:34:09.613000Z",
"latest_published_at": "2026-06-27T18:20:03.868000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 24
},
{
"name": "cache-manager",
"exists": true,
"license": "MIT",
"keywords": [
"cache",
"caching",
"cache manager",
"node",
"node.js",
"in-memory cache",
"redis",
"memcached",
"multi-store cache",
"ttl",
"caching layer",
"cache abstraction",
"cache middleware",
"cache strategies",
"cache wrapper"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/cache-manager",
"is_deprecated": false,
"latest_version": "7.2.9",
"repository_url": "https://github.com/jaredwray/cacheable",
"versions_count": 131,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 16172585,
"first_published_at": "2013-04-07T20:12:26.695000Z",
"latest_published_at": "2026-06-27T18:20:09.842000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 24
},
{
"name": "file-entry-cache",
"exists": true,
"license": "MIT",
"keywords": [
"file cache",
"task cache files",
"file cache",
"key par",
"key value",
"cache"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/file-entry-cache",
"is_deprecated": false,
"latest_version": "11.1.5",
"repository_url": "https://github.com/jaredwray/cacheable",
"versions_count": 44,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 552376384,
"first_published_at": "2015-03-02T09:30:04.174000Z",
"latest_published_at": "2026-06-27T18:20:33.507000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 24
}
]
},
"popularity": {
"forks": 203,
"stars": 1998,
"watchers": 10,
"fork_history": {
"days": [
{
"date": "2013-12-08",
"count": 1
},
{
"date": "2013-12-13",
"count": 1
},
{
"date": "2014-01-12",
"count": 1
},
{
"date": "2014-05-01",
"count": 1
},
{
"date": "2014-05-17",
"count": 1
},
{
"date": "2014-06-26",
"count": 1
},
{
"date": "2014-06-27",
"count": 1
},
{
"date": "2014-09-10",
"count": 1
},
{
"date": "2014-10-11",
"count": 1
},
{
"date": "2014-10-15",
"count": 1
},
{
"date": "2015-01-06",
"count": 1
},
{
"date": "2015-02-01",
"count": 1
},
{
"date": "2015-02-26",
"count": 1
},
{
"date": "2015-03-29",
"count": 1
},
{
"date": "2015-06-04",
"count": 1
},
{
"date": "2015-06-17",
"count": 1
},
{
"date": "2015-08-30",
"count": 1
},
{
"date": "2015-09-17",
"count": 1
},
{
"date": "2015-10-21",
"count": 1
},
{
"date": "2015-10-28",
"count": 2
},
{
"date": "2015-11-14",
"count": 1
},
{
"date": "2016-01-11",
"count": 1
},
{
"date": "2016-02-15",
"count": 1
},
{
"date": "2016-02-25",
"count": 1
},
{
"date": "2016-04-18",
"count": 1
},
{
"date": "2016-06-01",
"count": 1
},
{
"date": "2016-06-12",
"count": 1
},
{
"date": "2016-06-21",
"count": 1
},
{
"date": "2016-07-12",
"count": 1
},
{
"date": "2016-08-02",
"count": 1
},
{
"date": "2016-10-15",
"count": 1
},
{
"date": "2016-10-21",
"count": 1
},
{
"date": "2016-11-14",
"count": 1
},
{
"date": "2016-12-18",
"count": 1
},
{
"date": "2017-01-11",
"count": 1
},
{
"date": "2017-01-17",
"count": 1
},
{
"date": "2017-05-03",
"count": 1
},
{
"date": "2017-05-15",
"count": 1
},
{
"date": "2017-08-04",
"count": 1
},
{
"date": "2017-08-31",
"count": 1
},
{
"date": "2017-09-08",
"count": 1
},
{
"date": "2017-10-09",
"count": 1
},
{
"date": "2017-11-30",
"count": 1
},
{
"date": "2018-01-23",
"count": 1
},
{
"date": "2018-01-31",
"count": 2
},
{
"date": "2018-03-05",
"count": 1
},
{
"date": "2018-03-10",
"count": 1
},
{
"date": "2018-07-27",
"count": 1
},
{
"date": "2018-08-22",
"count": 1
},
{
"date": "2018-10-05",
"count": 1
},
{
"date": "2018-11-26",
"count": 1
},
{
"date": "2019-01-24",
"count": 1
},
{
"date": "2019-03-09",
"count": 1
},
{
"date": "2019-06-26",
"count": 1
},
{
"date": "2019-07-11",
"count": 1
},
{
"date": "2019-07-13",
"count": 1
},
{
"date": "2019-07-22",
"count": 1
},
{
"date": "2019-10-03",
"count": 1
},
{
"date": "2019-10-11",
"count": 1
},
{
"date": "2019-11-06",
"count": 1
},
{
"date": "2020-02-04",
"count": 1
},
{
"date": "2020-02-17",
"count": 1
},
{
"date": "2020-03-13",
"count": 1
},
{
"date": "2020-04-06",
"count": 1
},
{
"date": "2020-04-30",
"count": 1
},
{
"date": "2020-06-21",
"count": 1
},
{
"date": "2020-06-30",
"count": 1
},
{
"date": "2020-08-24",
"count": 1
},
{
"date": "2020-08-28",
"count": 1
},
{
"date": "2020-09-26",
"count": 1
},
{
"date": "2020-11-15",
"count": 1
},
{
"date": "2020-12-16",
"count": 1
},
{
"date": "2020-12-28",
"count": 1
},
{
"date": "2021-01-10",
"count": 1
},
{
"date": "2021-03-06",
"count": 1
},
{
"date": "2021-03-07",
"count": 1
},
{
"date": "2021-03-29",
"count": 1
},
{
"date": "2021-06-15",
"count": 1
},
{
"date": "2021-06-28",
"count": 1
},
{
"date": "2021-07-07",
"count": 1
},
{
"date": "2021-08-17",
"count": 1
},
{
"date": "2021-09-02",
"count": 1
},
{
"date": "2021-10-27",
"count": 1
},
{
"date": "2021-11-03",
"count": 1
},
{
"date": "2021-11-09",
"count": 1
},
{
"date": "2021-11-11",
"count": 1
},
{
"date": "2021-11-22",
"count": 1
},
{
"date": "2021-12-07",
"count": 1
},
{
"date": "2022-01-10",
"count": 1
},
{
"date": "2022-01-12",
"count": 1
},
{
"date": "2022-01-30",
"count": 1
},
{
"date": "2022-02-05",
"count": 1
},
{
"date": "2022-02-15",
"count": 1
},
{
"date": "2022-02-24",
"count": 1
},
{
"date": "2022-03-17",
"count": 1
},
{
"date": "2022-03-30",
"count": 1
},
{
"date": "2022-04-04",
"count": 1
},
{
"date": "2022-04-10",
"count": 1
},
{
"date": "2022-05-19",
"count": 1
},
{
"date": "2022-06-03",
"count": 1
},
{
"date": "2022-07-03",
"count": 1
},
{
"date": "2022-07-13",
"count": 1
},
{
"date": "2022-08-05",
"count": 1
},
{
"date": "2022-08-07",
"count": 1
},
{
"date": "2022-08-11",
"count": 1
},
{
"date": "2022-08-22",
"count": 1
},
{
"date": "2022-08-29",
"count": 1
},
{
"date": "2022-09-22",
"count": 1
},
{
"date": "2022-10-08",
"count": 1
},
{
"date": "2022-10-26",
"count": 1
},
{
"date": "2022-10-28",
"count": 1
},
{
"date": "2022-11-17",
"count": 1
},
{
"date": "2022-11-25",
"count": 2
},
{
"date": "2023-01-04",
"count": 1
},
{
"date": "2023-02-03",
"count": 1
},
{
"date": "2023-02-18",
"count": 1
},
{
"date": "2023-02-21",
"count": 1
},
{
"date": "2023-02-26",
"count": 1
},
{
"date": "2023-04-01",
"count": 1
},
{
"date": "2023-04-18",
"count": 1
},
{
"date": "2023-05-07",
"count": 1
},
{
"date": "2023-05-21",
"count": 1
},
{
"date": "2023-08-28",
"count": 1
},
{
"date": "2023-09-05",
"count": 1
},
{
"date": "2023-09-29",
"count": 1
},
{
"date": "2023-10-08",
"count": 1
},
{
"date": "2023-11-09",
"count": 1
},
{
"date": "2023-11-17",
"count": 3
},
{
"date": "2023-11-23",
"count": 1
},
{
"date": "2023-12-12",
"count": 1
},
{
"date": "2024-01-30",
"count": 1
},
{
"date": "2024-02-21",
"count": 1
},
{
"date": "2024-03-03",
"count": 1
},
{
"date": "2024-03-12",
"count": 1
},
{
"date": "2024-04-08",
"count": 1
},
{
"date": "2024-04-12",
"count": 1
},
{
"date": "2024-04-19",
"count": 2
},
{
"date": "2024-05-03",
"count": 1
},
{
"date": "2024-05-31",
"count": 1
},
{
"date": "2024-06-12",
"count": 1
},
{
"date": "2024-07-11",
"count": 1
},
{
"date": "2024-07-21",
"count": 1
},
{
"date": "2024-07-26",
"count": 1
},
{
"date": "2024-08-05",
"count": 1
},
{
"date": "2024-08-08",
"count": 1
},
{
"date": "2024-08-31",
"count": 1
},
{
"date": "2024-09-06",
"count": 1
},
{
"date": "2024-10-03",
"count": 1
},
{
"date": "2024-10-04",
"count": 1
},
{
"date": "2024-10-14",
"count": 1
},
{
"date": "2024-10-17",
"count": 1
},
{
"date": "2024-11-04",
"count": 1
},
{
"date": "2024-11-15",
"count": 1
},
{
"date": "2024-12-03",
"count": 2
},
{
"date": "2024-12-04",
"count": 1
},
{
"date": "2024-12-06",
"count": 2
},
{
"date": "2024-12-11",
"count": 1
},
{
"date": "2024-12-17",
"count": 1
},
{
"date": "2024-12-26",
"count": 1
},
{
"date": "2025-01-02",
"count": 1
},
{
"date": "2025-01-08",
"count": 1
},
{
"date": "2025-01-20",
"count": 1
},
{
"date": "2025-02-04",
"count": 1
},
{
"date": "2025-02-05",
"count": 1
},
{
"date": "2025-02-12",
"count": 1
},
{
"date": "2025-02-15",
"count": 1
},
{
"date": "2025-02-27",
"count": 1
},
{
"date": "2025-03-18",
"count": 1
},
{
"date": "2025-04-08",
"count": 1
},
{
"date": "2025-04-10",
"count": 1
},
{
"date": "2025-04-14",
"count": 1
},
{
"date": "2025-04-29",
"count": 1
},
{
"date": "2025-05-06",
"count": 1
},
{
"date": "2025-05-19",
"count": 1
},
{
"date": "2025-05-26",
"count": 1
},
{
"date": "2025-06-04",
"count": 1
},
{
"date": "2025-06-20",
"count": 1
},
{
"date": "2025-06-25",
"count": 1
},
{
"date": "2025-07-04",
"count": 1
},
{
"date": "2025-07-10",
"count": 1
},
{
"date": "2025-07-20",
"count": 1
},
{
"date": "2025-07-22",
"count": 2
},
{
"date": "2025-07-23",
"count": 1
},
{
"date": "2025-08-24",
"count": 1
},
{
"date": "2025-08-26",
"count": 1
},
{
"date": "2025-10-02",
"count": 1
},
{
"date": "2025-12-13",
"count": 1
},
{
"date": "2026-01-20",
"count": 1
},
{
"date": "2026-03-13",
"count": 1
},
{
"date": "2026-05-27",
"count": 1
},
{
"date": "2026-06-02",
"count": 1
},
{
"date": "2026-06-25",
"count": 1
}
],
"complete": true,
"collected": 201,
"total_forks": 203
},
"star_history": null,
"open_issues_and_prs": 0
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [],
"has_llms_txt": false,
"has_dockerfile": true,
"has_mcp_signal": false,
"bootstrap_files": [],
"api_schema_files": [],
"has_devcontainer": false,
"typecheck_configs": [
"packages/benchmark/tsconfig.json",
"packages/cache-manager/tsconfig.json",
"packages/cacheable-request/tsconfig.json",
"packages/cacheable/tsconfig.json",
"packages/file-entry-cache/tsconfig.json",
"packages/flat-cache/tsconfig.json",
"packages/memory/tsconfig.json",
"packages/net/tsconfig.json",
"packages/node-cache/tsconfig.json",
"packages/utils/tsconfig.json",
"packages/website/tsconfig.json"
],
"toolchain_manifests": [],
"largest_source_bytes": 69842,
"source_files_sampled": 119,
"oversized_source_files": 1,
"agent_instruction_files": [
"AGENTS.md",
"CLAUDE.md"
],
"agent_instruction_max_bytes": 1245
},
"dependencies": {
"manifests": [
"package.json"
],
"advisories": {
"error": null,
"scope": "published_package",
"source": "osv",
"findings": [],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {},
"advisory_count": 0,
"affected_count": 0,
"assessed_count": 9,
"malicious_count": 0,
"assessed_package": "npm:cacheable@2.5.0",
"unassessed_count": 0,
"direct_affected_count": 0
},
"ecosystems": [
"npm"
],
"dependencies": [
{
"name": "@cacheable/utils",
"manifest": "packages/cache-manager/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "keyv",
"manifest": "packages/cache-manager/package.json",
"ecosystem": "npm",
"version_constraint": "^5.6.0"
},
{
"name": "@types/http-cache-semantics",
"manifest": "packages/cacheable-request/package.json",
"ecosystem": "npm",
"version_constraint": "^4.2.0"
},
{
"name": "get-stream",
"manifest": "packages/cacheable-request/package.json",
"ecosystem": "npm",
"version_constraint": "^9.0.1"
},
{
"name": "http-cache-semantics",
"manifest": "packages/cacheable-request/package.json",
"ecosystem": "npm",
"version_constraint": "^4.2.0"
},
{
"name": "keyv",
"manifest": "packages/cacheable-request/package.json",
"ecosystem": "npm",
"version_constraint": "^5.6.0"
},
{
"name": "mimic-response",
"manifest": "packages/cacheable-request/package.json",
"ecosystem": "npm",
"version_constraint": "^4.0.0"
},
{
"name": "normalize-url",
"manifest": "packages/cacheable-request/package.json",
"ecosystem": "npm",
"version_constraint": "^9.0.1"
},
{
"name": "responselike",
"manifest": "packages/cacheable-request/package.json",
"ecosystem": "npm",
"version_constraint": "^4.0.2"
},
{
"name": "@cacheable/memory",
"manifest": "packages/cacheable/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@cacheable/utils",
"manifest": "packages/cacheable/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "hookified",
"manifest": "packages/cacheable/package.json",
"ecosystem": "npm",
"version_constraint": "^3.0.1"
},
{
"name": "keyv",
"manifest": "packages/cacheable/package.json",
"ecosystem": "npm",
"version_constraint": "^5.6.0"
},
{
"name": "qified",
"manifest": "packages/cacheable/package.json",
"ecosystem": "npm",
"version_constraint": "^0.12.0"
},
{
"name": "flat-cache",
"manifest": "packages/file-entry-cache/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "cacheable",
"manifest": "packages/flat-cache/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "flatted",
"manifest": "packages/flat-cache/package.json",
"ecosystem": "npm",
"version_constraint": "^3.4.2"
},
{
"name": "hookified",
"manifest": "packages/flat-cache/package.json",
"ecosystem": "npm",
"version_constraint": "^3.0.1"
},
{
"name": "@cacheable/utils",
"manifest": "packages/memory/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@keyv/bigmap",
"manifest": "packages/memory/package.json",
"ecosystem": "npm",
"version_constraint": "^1.3.1"
},
{
"name": "hookified",
"manifest": "packages/memory/package.json",
"ecosystem": "npm",
"version_constraint": "^3.0.1"
},
{
"name": "keyv",
"manifest": "packages/memory/package.json",
"ecosystem": "npm",
"version_constraint": "^5.6.0"
},
{
"name": "@cacheable/utils",
"manifest": "packages/net/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "cacheable",
"manifest": "packages/net/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "hookified",
"manifest": "packages/net/package.json",
"ecosystem": "npm",
"version_constraint": "^3.0.1"
},
{
"name": "http-cache-semantics",
"manifest": "packages/net/package.json",
"ecosystem": "npm",
"version_constraint": "^4.2.0"
},
{
"name": "undici",
"manifest": "packages/net/package.json",
"ecosystem": "npm",
"version_constraint": "^8.7.0"
},
{
"name": "@cacheable/utils",
"manifest": "packages/node-cache/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "hookified",
"manifest": "packages/node-cache/package.json",
"ecosystem": "npm",
"version_constraint": "^3.0.1"
},
{
"name": "keyv",
"manifest": "packages/node-cache/package.json",
"ecosystem": "npm",
"version_constraint": "^5.6.0"
},
{
"name": "hashery",
"manifest": "packages/utils/package.json",
"ecosystem": "npm",
"version_constraint": "^3.0.0"
},
{
"name": "keyv",
"manifest": "packages/utils/package.json",
"ecosystem": "npm",
"version_constraint": "^5.6.0"
}
],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "@cacheable/memory",
"direct": true,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "@cacheable/utils",
"direct": true,
"version": "2.5.0",
"ecosystem": "npm"
},
{
"name": "@keyv/bigmap",
"direct": true,
"version": "1.3.1",
"ecosystem": "npm"
},
{
"name": "@keyv/bigmap",
"direct": true,
"version": "^1.3.1",
"ecosystem": "npm"
},
{
"name": "@types/http-cache-semantics",
"direct": true,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "@types/http-cache-semantics",
"direct": true,
"version": "^4.2.0",
"ecosystem": "npm"
},
{
"name": "cacheable",
"direct": true,
"version": "2.5.0",
"ecosystem": "npm"
},
{
"name": "flatted",
"direct": true,
"version": "3.4.2",
"ecosystem": "npm"
},
{
"name": "flatted",
"direct": true,
"version": "^3.4.2",
"ecosystem": "npm"
},
{
"name": "get-stream",
"direct": true,
"version": "9.0.1",
"ecosystem": "npm"
},
{
"name": "get-stream",
"direct": true,
"version": "^9.0.1",
"ecosystem": "npm"
},
{
"name": "hashery",
"direct": true,
"version": "1.5.1",
"ecosystem": "npm"
},
{
"name": "hashery",
"direct": true,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "hashery",
"direct": true,
"version": "^3.0.0",
"ecosystem": "npm"
},
{
"name": "hookified",
"direct": true,
"version": "1.15.1",
"ecosystem": "npm"
},
{
"name": "hookified",
"direct": true,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "hookified",
"direct": true,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "hookified",
"direct": true,
"version": "^3.0.1",
"ecosystem": "npm"
},
{
"name": "http-cache-semantics",
"direct": true,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "http-cache-semantics",
"direct": true,
"version": "^4.2.0",
"ecosystem": "npm"
},
{
"name": "keyv",
"direct": true,
"version": "5.6.0",
"ecosystem": "npm"
},
{
"name": "keyv",
"direct": true,
"version": "^5.6.0",
"ecosystem": "npm"
},
{
"name": "mimic-response",
"direct": true,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "mimic-response",
"direct": true,
"version": "^4.0.0",
"ecosystem": "npm"
},
{
"name": "normalize-url",
"direct": true,
"version": "9.0.1",
"ecosystem": "npm"
},
{
"name": "normalize-url",
"direct": true,
"version": "^9.0.1",
"ecosystem": "npm"
},
{
"name": "qified",
"direct": true,
"version": "0.10.1",
"ecosystem": "npm"
},
{
"name": "qified",
"direct": true,
"version": "0.12.0",
"ecosystem": "npm"
},
{
"name": "qified",
"direct": true,
"version": "^0.12.0",
"ecosystem": "npm"
},
{
"name": "responselike",
"direct": true,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "responselike",
"direct": true,
"version": "^4.0.2",
"ecosystem": "npm"
},
{
"name": "undici",
"direct": true,
"version": "7.28.0",
"ecosystem": "npm"
},
{
"name": "undici",
"direct": true,
"version": "8.4.1",
"ecosystem": "npm"
},
{
"name": "undici",
"direct": true,
"version": "8.7.0",
"ecosystem": "npm"
},
{
"name": "undici",
"direct": true,
"version": "^8.7.0",
"ecosystem": "npm"
},
{
"name": "@ai-sdk/anthropic",
"direct": false,
"version": "3.0.92",
"ecosystem": "npm"
},
{
"name": "@ai-sdk/gateway",
"direct": false,
"version": "3.0.143",
"ecosystem": "npm"
},
{
"name": "@ai-sdk/google",
"direct": false,
"version": "3.0.88",
"ecosystem": "npm"
},
{
"name": "@ai-sdk/openai",
"direct": false,
"version": "3.0.80",
"ecosystem": "npm"
},
{
"name": "@ai-sdk/provider",
"direct": false,
"version": "3.0.13",
"ecosystem": "npm"
},
{
"name": "@ai-sdk/provider-utils",
"direct": false,
"version": "4.0.35",
"ecosystem": "npm"
},
{
"name": "@andrewbranch/untar.js",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "@arethetypeswrong/cli",
"direct": false,
"version": "0.18.4",
"ecosystem": "npm"
},
{
"name": "@arethetypeswrong/core",
"direct": false,
"version": "0.18.4",
"ecosystem": "npm"
},
{
"name": "@babel/generator",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "@babel/helper-string-parser",
"direct": false,
"version": "7.27.1",
"ecosystem": "npm"
},
{
"name": "@babel/helper-string-parser",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "@babel/helper-validator-identifier",
"direct": false,
"version": "7.28.5",
"ecosystem": "npm"
},
{
"name": "@babel/helper-validator-identifier",
"direct": false,
"version": "8.0.2",
"ecosystem": "npm"
},
{
"name": "@babel/parser",
"direct": false,
"version": "7.29.2",
"ecosystem": "npm"
},
{
"name": "@babel/parser",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "@babel/types",
"direct": false,
"version": "7.29.0",
"ecosystem": "npm"
},
{
"name": "@babel/types",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "@bcoe/v8-coverage",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "@biomejs/biome",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "@biomejs/cli-darwin-arm64",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "@biomejs/cli-darwin-x64",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "@biomejs/cli-linux-arm64",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "@biomejs/cli-linux-arm64-musl",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "@biomejs/cli-linux-x64",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "@biomejs/cli-linux-x64-musl",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "@biomejs/cli-win32-arm64",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "@biomejs/cli-win32-x64",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "@boringnode/bus",
"direct": false,
"version": "0.9.0",
"ecosystem": "npm"
},
{
"name": "@braidai/lang",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "@cacheable/net",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "@cloudflare/kv-asset-handler",
"direct": false,
"version": "0.5.0",
"ecosystem": "npm"
},
{
"name": "@cloudflare/unenv-preset",
"direct": false,
"version": "2.16.1",
"ecosystem": "npm"
},
{
"name": "@cloudflare/workerd-darwin-64",
"direct": false,
"version": "1.20260701.1",
"ecosystem": "npm"
},
{
"name": "@cloudflare/workerd-darwin-arm64",
"direct": false,
"version": "1.20260701.1",
"ecosystem": "npm"
},
{
"name": "@cloudflare/workerd-linux-64",
"direct": false,
"version": "1.20260701.1",
"ecosystem": "npm"
},
{
"name": "@cloudflare/workerd-linux-arm64",
"direct": false,
"version": "1.20260701.1",
"ecosystem": "npm"
},
{
"name": "@cloudflare/workerd-windows-64",
"direct": false,
"version": "1.20260701.1",
"ecosystem": "npm"
},
{
"name": "@colors/colors",
"direct": false,
"version": "1.5.0",
"ecosystem": "npm"
},
{
"name": "@cspotcode/source-map-support",
"direct": false,
"version": "0.8.1",
"ecosystem": "npm"
},
{
"name": "@emnapi/core",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@emnapi/runtime",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@emnapi/wasi-threads",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "@esbuild/aix-ppc64",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/aix-ppc64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/android-arm",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/android-arm",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/android-arm64",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/android-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/android-x64",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/android-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/darwin-arm64",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/darwin-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/darwin-x64",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/darwin-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/freebsd-arm64",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/freebsd-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/freebsd-x64",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/freebsd-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-arm",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-arm",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-arm64",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-ia32",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-ia32",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-loong64",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-loong64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-mips64el",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-mips64el",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-ppc64",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-ppc64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-riscv64",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-riscv64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-s390x",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-s390x",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-x64",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/netbsd-arm64",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/netbsd-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/netbsd-x64",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/netbsd-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/openbsd-arm64",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/openbsd-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/openbsd-x64",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/openbsd-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/openharmony-arm64",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/openharmony-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/sunos-x64",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/sunos-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/win32-arm64",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/win32-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/win32-ia32",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/win32-ia32",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/win32-x64",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "@esbuild/win32-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@faker-js/faker",
"direct": false,
"version": "10.5.0",
"ecosystem": "npm"
},
{
"name": "@faker-js/faker",
"direct": false,
"version": "^10.5.0",
"ecosystem": "npm"
},
{
"name": "@img/colour",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@img/sharp-darwin-arm64",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-darwin-x64",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-darwin-arm64",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-darwin-x64",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linux-arm",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linux-arm64",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linux-ppc64",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linux-riscv64",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linux-s390x",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linux-x64",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linuxmusl-arm64",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linuxmusl-x64",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linux-arm",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linux-arm64",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linux-ppc64",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linux-riscv64",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linux-s390x",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linux-x64",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linuxmusl-arm64",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linuxmusl-x64",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-wasm32",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-win32-arm64",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-win32-ia32",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-win32-x64",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@iovalkey/commands",
"direct": false,
"version": "0.1.0",
"ecosystem": "npm"
},
{
"name": "@jaredwray/fumanchu",
"direct": false,
"version": "4.7.1",
"ecosystem": "npm"
},
{
"name": "@jridgewell/gen-mapping",
"direct": false,
"version": "0.3.13",
"ecosystem": "npm"
},
{
"name": "@jridgewell/resolve-uri",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "@jridgewell/sourcemap-codec",
"direct": false,
"version": "1.5.5",
"ecosystem": "npm"
},
{
"name": "@jridgewell/trace-mapping",
"direct": false,
"version": "0.3.31",
"ecosystem": "npm"
},
{
"name": "@jridgewell/trace-mapping",
"direct": false,
"version": "0.3.9",
"ecosystem": "npm"
},
{
"name": "@julr/utils",
"direct": false,
"version": "1.9.0",
"ecosystem": "npm"
},
{
"name": "@keyv/redis",
"direct": false,
"version": "5.1.6",
"ecosystem": "npm"
},
{
"name": "@keyv/redis",
"direct": false,
"version": "^5.1.6",
"ecosystem": "npm"
},
{
"name": "@keyv/serialize",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "@keyv/valkey",
"direct": false,
"version": "1.0.11",
"ecosystem": "npm"
},
{
"name": "@keyv/valkey",
"direct": false,
"version": "^1.0.11",
"ecosystem": "npm"
},
{
"name": "@loaderkit/resolve",
"direct": false,
"version": "1.0.6",
"ecosystem": "npm"
},
{
"name": "@lukeed/ms",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "@monstermann/tables",
"direct": false,
"version": "0.0.0",
"ecosystem": "npm"
},
{
"name": "@monstermann/tinybench-pretty-printer",
"direct": false,
"version": "0.3.0",
"ecosystem": "npm"
},
{
"name": "@monstermann/tinybench-pretty-printer",
"direct": false,
"version": "^0.3.0",
"ecosystem": "npm"
},
{
"name": "@napi-rs/wasm-runtime",
"direct": false,
"version": "1.1.6",
"ecosystem": "npm"
},
{
"name": "@noble/hashes",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "@opentelemetry/api",
"direct": false,
"version": "1.9.0",
"ecosystem": "npm"
},
{
"name": "@oxc-project/types",
"direct": false,
"version": "0.138.0",
"ecosystem": "npm"
},
{
"name": "@paralleldrive/cuid2",
"direct": false,
"version": "3.3.0",
"ecosystem": "npm"
},
{
"name": "@pinojs/redact",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "@pnpm/config.env-replace",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@pnpm/network.ca-file",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "@pnpm/npm-conf",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "@poppinss/colors",
"direct": false,
"version": "4.1.6",
"ecosystem": "npm"
},
{
"name": "@poppinss/dumper",
"direct": false,
"version": "0.6.5",
"ecosystem": "npm"
},
{
"name": "@poppinss/exception",
"direct": false,
"version": "1.2.3",
"ecosystem": "npm"
},
{
"name": "@poppinss/object-builder",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@poppinss/string",
"direct": false,
"version": "1.6.0",
"ecosystem": "npm"
},
{
"name": "@poppinss/utils",
"direct": false,
"version": "6.10.1",
"ecosystem": "npm"
},
{
"name": "@publint/pack",
"direct": false,
"version": "0.1.4",
"ecosystem": "npm"
},
{
"name": "@qified/redis",
"direct": false,
"version": "0.12.0",
"ecosystem": "npm"
},
{
"name": "@qified/redis",
"direct": false,
"version": "^0.12.0",
"ecosystem": "npm"
},
{
"name": "@quansync/fs",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@redis/bloom",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@redis/bloom",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "@redis/client",
"direct": false,
"version": "1.6.0",
"ecosystem": "npm"
},
{
"name": "@redis/client",
"direct": false,
"version": "5.10.0",
"ecosystem": "npm"
},
{
"name": "@redis/client",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "@redis/graph",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "@redis/json",
"direct": false,
"version": "1.0.7",
"ecosystem": "npm"
},
{
"name": "@redis/json",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "@redis/search",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@redis/search",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "@redis/time-series",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@redis/time-series",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-android-arm64",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-darwin-arm64",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-darwin-x64",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-freebsd-x64",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm-gnueabihf",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm64-gnu",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm64-musl",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-ppc64-gnu",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-s390x-gnu",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-x64-gnu",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-x64-musl",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-openharmony-arm64",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-wasm32-wasi",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-win32-arm64-msvc",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-win32-x64-msvc",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/pluginutils",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-android-arm-eabi",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-android-arm64",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-darwin-arm64",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-darwin-x64",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-freebsd-arm64",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-freebsd-x64",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-arm-gnueabihf",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-arm-musleabihf",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-arm64-gnu",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-arm64-musl",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-loong64-gnu",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-loong64-musl",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-ppc64-gnu",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-ppc64-musl",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-riscv64-gnu",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-riscv64-musl",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-s390x-gnu",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-x64-gnu",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-x64-musl",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-openbsd-x64",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-openharmony-arm64",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-win32-arm64-msvc",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-win32-ia32-msvc",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-win32-x64-gnu",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-win32-x64-msvc",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "@sec-ant/readable-stream",
"direct": false,
"version": "0.4.1",
"ecosystem": "npm"
},
{
"name": "@sindresorhus/is",
"direct": false,
"version": "4.6.0",
"ecosystem": "npm"
},
{
"name": "@sindresorhus/is",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "@speed-highlight/core",
"direct": false,
"version": "1.2.15",
"ecosystem": "npm"
},
{
"name": "@standard-schema/spec",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@tybys/wasm-util",
"direct": false,
"version": "0.10.3",
"ecosystem": "npm"
},
{
"name": "@types/body-parser",
"direct": false,
"version": "1.19.6",
"ecosystem": "npm"
},
{
"name": "@types/bytes",
"direct": false,
"version": "3.1.5",
"ecosystem": "npm"
},
{
"name": "@types/chai",
"direct": false,
"version": "5.2.3",
"ecosystem": "npm"
},
{
"name": "@types/connect",
"direct": false,
"version": "3.4.38",
"ecosystem": "npm"
},
{
"name": "@types/debug",
"direct": false,
"version": "4.1.12",
"ecosystem": "npm"
},
{
"name": "@types/deep-eql",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "@types/estree",
"direct": false,
"version": "1.0.8",
"ecosystem": "npm"
},
{
"name": "@types/estree-jsx",
"direct": false,
"version": "1.0.5",
"ecosystem": "npm"
},
{
"name": "@types/express",
"direct": false,
"version": "5.0.6",
"ecosystem": "npm"
},
{
"name": "@types/express",
"direct": false,
"version": "^5.0.6",
"ecosystem": "npm"
},
{
"name": "@types/express-serve-static-core",
"direct": false,
"version": "5.0.6",
"ecosystem": "npm"
},
{
"name": "@types/hast",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "@types/http-errors",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "@types/jsesc",
"direct": false,
"version": "2.5.1",
"ecosystem": "npm"
},
{
"name": "@types/katex",
"direct": false,
"version": "0.16.8",
"ecosystem": "npm"
},
{
"name": "@types/mdast",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "@types/mime",
"direct": false,
"version": "1.3.5",
"ecosystem": "npm"
},
{
"name": "@types/ms",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "24.12.2",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "24.13.2",
"ecosystem": "npm"
},
{
"name": "@types/pluralize",
"direct": false,
"version": "0.0.33",
"ecosystem": "npm"
},
{
"name": "@types/qs",
"direct": false,
"version": "6.14.0",
"ecosystem": "npm"
},
{
"name": "@types/range-parser",
"direct": false,
"version": "1.2.7",
"ecosystem": "npm"
},
{
"name": "@types/responselike",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "@types/responselike",
"direct": false,
"version": "^1.0.3",
"ecosystem": "npm"
},
{
"name": "@types/send",
"direct": false,
"version": "0.17.5",
"ecosystem": "npm"
},
{
"name": "@types/serve-static",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "@types/ungap__structured-clone",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@types/unist",
"direct": false,
"version": "2.0.11",
"ecosystem": "npm"
},
{
"name": "@types/unist",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "@ungap/structured-clone",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "@vercel/oidc",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "@vitest/coverage-v8",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@vitest/expect",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@vitest/mocker",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@vitest/pretty-format",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@vitest/runner",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@vitest/snapshot",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@vitest/spy",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@vitest/utils",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "a-sync-waterfall",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "accepts",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "acorn",
"direct": false,
"version": "7.4.1",
"ecosystem": "npm"
},
{
"name": "acorn",
"direct": false,
"version": "8.16.0",
"ecosystem": "npm"
},
{
"name": "acorn-jsx",
"direct": false,
"version": "5.3.2",
"ecosystem": "npm"
},
{
"name": "ai",
"direct": false,
"version": "6.0.219",
"ecosystem": "npm"
},
{
"name": "ansi-align",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "ansi-escapes",
"direct": false,
"version": "7.3.0",
"ecosystem": "npm"
},
{
"name": "ansi-regex",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "ansi-regex",
"direct": false,
"version": "6.2.2",
"ecosystem": "npm"
},
{
"name": "ansi-styles",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "ansi-styles",
"direct": false,
"version": "6.2.3",
"ecosystem": "npm"
},
{
"name": "ansis",
"direct": false,
"version": "4.3.1",
"ecosystem": "npm"
},
{
"name": "any-promise",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "argparse",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "asap",
"direct": false,
"version": "2.0.6",
"ecosystem": "npm"
},
{
"name": "assert-never",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "assertion-error",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "ast-kit",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "ast-v8-to-istanbul",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "async-mutex",
"direct": false,
"version": "0.5.0",
"ecosystem": "npm"
},
{
"name": "atomic-sleep",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "atomically",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "babel-walk",
"direct": false,
"version": "3.0.0-canary-5",
"ecosystem": "npm"
},
{
"name": "bail",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "balanced-match",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "balanced-match",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "bentocache",
"direct": false,
"version": "1.6.1",
"ecosystem": "npm"
},
{
"name": "bentocache",
"direct": false,
"version": "^1.6.1",
"ecosystem": "npm"
},
{
"name": "bignumber.js",
"direct": false,
"version": "9.3.1",
"ecosystem": "npm"
},
{
"name": "birpc",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "blake3-wasm",
"direct": false,
"version": "2.1.5",
"ecosystem": "npm"
},
{
"name": "body-parser",
"direct": false,
"version": "2.2.2",
"ecosystem": "npm"
},
{
"name": "body-parser",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "body-parser",
"direct": false,
"version": "^2.3.0",
"ecosystem": "npm"
},
{
"name": "boxen",
"direct": false,
"version": "8.0.1",
"ecosystem": "npm"
},
{
"name": "brace-expansion",
"direct": false,
"version": "1.1.12",
"ecosystem": "npm"
},
{
"name": "brace-expansion",
"direct": false,
"version": "5.0.3",
"ecosystem": "npm"
},
{
"name": "braces",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "bundle-require",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "bytes",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "bytes",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "cac",
"direct": false,
"version": "6.7.14",
"ecosystem": "npm"
},
{
"name": "cac",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "cache-manager",
"direct": false,
"version": "5.7.6",
"ecosystem": "npm"
},
{
"name": "cache-manager-redis-yet",
"direct": false,
"version": "5.1.5",
"ecosystem": "npm"
},
{
"name": "cache-manager-redis-yet",
"direct": false,
"version": "^5.1.5",
"ecosystem": "npm"
},
{
"name": "call-bind-apply-helpers",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "call-bound",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "camelcase",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "case-anything",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "ccount",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "chai",
"direct": false,
"version": "6.2.2",
"ecosystem": "npm"
},
{
"name": "chalk",
"direct": false,
"version": "4.1.2",
"ecosystem": "npm"
},
{
"name": "chalk",
"direct": false,
"version": "5.6.2",
"ecosystem": "npm"
},
{
"name": "char-regex",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "character-entities",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "character-entities-html4",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "character-entities-legacy",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "character-parser",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "character-reference-invalid",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "chokidar",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "chrono-node",
"direct": false,
"version": "2.9.1",
"ecosystem": "npm"
},
{
"name": "cjs-module-lexer",
"direct": false,
"version": "1.4.3",
"ecosystem": "npm"
},
{
"name": "cli-boxes",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "cli-highlight",
"direct": false,
"version": "2.1.11",
"ecosystem": "npm"
},
{
"name": "cli-table3",
"direct": false,
"version": "0.6.5",
"ecosystem": "npm"
},
{
"name": "cli-truncate",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "cliui",
"direct": false,
"version": "7.0.4",
"ecosystem": "npm"
},
{
"name": "clone",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "cluster-key-slot",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "color-convert",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "color-name",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "colorette",
"direct": false,
"version": "2.0.20",
"ecosystem": "npm"
},
{
"name": "comma-separated-tokens",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": false,
"version": "10.0.1",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": false,
"version": "4.1.1",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": false,
"version": "8.3.0",
"ecosystem": "npm"
},
{
"name": "concat-map",
"direct": false,
"version": "0.0.1",
"ecosystem": "npm"
},
{
"name": "confbox",
"direct": false,
"version": "0.1.8",
"ecosystem": "npm"
},
{
"name": "config-chain",
"direct": false,
"version": "1.1.13",
"ecosystem": "npm"
},
{
"name": "configstore",
"direct": false,
"version": "7.1.0",
"ecosystem": "npm"
},
{
"name": "consola",
"direct": false,
"version": "3.4.2",
"ecosystem": "npm"
},
{
"name": "constantinople",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "content-disposition",
"direct": false,
"version": "0.5.2",
"ecosystem": "npm"
},
{
"name": "content-disposition",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "content-type",
"direct": false,
"version": "1.0.5",
"ecosystem": "npm"
},
{
"name": "content-type",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "convert-source-map",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "cookie",
"direct": false,
"version": "0.7.1",
"ecosystem": "npm"
},
{
"name": "cookie",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "cookie-signature",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "dayjs",
"direct": false,
"version": "1.11.21",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": false,
"version": "4.4.3",
"ecosystem": "npm"
},
{
"name": "decode-named-character-reference",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "deep-extend",
"direct": false,
"version": "0.6.0",
"ecosystem": "npm"
},
{
"name": "defu",
"direct": false,
"version": "6.1.7",
"ecosystem": "npm"
},
{
"name": "delay",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "delay",
"direct": false,
"version": "^7.0.0",
"ecosystem": "npm"
},
{
"name": "denque",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "depd",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "dequal",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "detect-libc",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "devlop",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "doctypes",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "docula",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "docula",
"direct": false,
"version": "^2.1.0",
"ecosystem": "npm"
},
{
"name": "dom-serializer",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "domelementtype",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "domhandler",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "domutils",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "dot-prop",
"direct": false,
"version": "9.0.0",
"ecosystem": "npm"
},
{
"name": "dts-resolver",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "dunder-proto",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "ecto",
"direct": false,
"version": "4.8.7",
"ecosystem": "npm"
},
{
"name": "ee-first",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "ejs",
"direct": false,
"version": "5.0.2",
"ecosystem": "npm"
},
{
"name": "emoji-regex",
"direct": false,
"version": "10.3.0",
"ecosystem": "npm"
},
{
"name": "emoji-regex",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "emojilib",
"direct": false,
"version": "2.4.0",
"ecosystem": "npm"
},
{
"name": "emoticon",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "empathic",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "encodeurl",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "ent",
"direct": false,
"version": "2.2.2",
"ecosystem": "npm"
},
{
"name": "entities",
"direct": false,
"version": "4.5.0",
"ecosystem": "npm"
},
{
"name": "entities",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "entities",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "environment",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "error-causes",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "error-stack-parser-es",
"direct": false,
"version": "1.0.5",
"ecosystem": "npm"
},
{
"name": "es-define-property",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "es-errors",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "es-module-lexer",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "es-object-atoms",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "esbuild",
"direct": false,
"version": "0.27.7",
"ecosystem": "npm"
},
{
"name": "esbuild",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "escalade",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "escape-goat",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "escape-html",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "escape-string-regexp",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "estree-util-is-identifier-name",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "estree-util-visit",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "estree-walker",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "etag",
"direct": false,
"version": "1.8.1",
"ecosystem": "npm"
},
{
"name": "eventemitter3",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "eventsource-parser",
"direct": false,
"version": "3.0.8",
"ecosystem": "npm"
},
{
"name": "expect-type",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "express",
"direct": false,
"version": "5.2.1",
"ecosystem": "npm"
},
{
"name": "express",
"direct": false,
"version": "^5.2.1",
"ecosystem": "npm"
},
{
"name": "extend",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "fdir",
"direct": false,
"version": "6.5.0",
"ecosystem": "npm"
},
{
"name": "fflate",
"direct": false,
"version": "0.8.3",
"ecosystem": "npm"
},
{
"name": "fill-range",
"direct": false,
"version": "7.1.1",
"ecosystem": "npm"
},
{
"name": "finalhandler",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "fix-dts-default-cjs-exports",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "flattie",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "forwarded",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "fresh",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "fsevents",
"direct": false,
"version": "2.3.3",
"ecosystem": "npm"
},
{
"name": "function-bind",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "generic-pool",
"direct": false,
"version": "3.9.0",
"ecosystem": "npm"
},
{
"name": "get-caller-file",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "get-east-asian-width",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "get-intrinsic",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "get-proto",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "get-tsconfig",
"direct": false,
"version": "5.0.0-beta.5",
"ecosystem": "npm"
},
{
"name": "github-slugger",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "glob",
"direct": false,
"version": "13.0.6",
"ecosystem": "npm"
},
{
"name": "global-directory",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "gopd",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "graceful-fs",
"direct": false,
"version": "4.2.10",
"ecosystem": "npm"
},
{
"name": "graceful-fs",
"direct": false,
"version": "4.2.11",
"ecosystem": "npm"
},
{
"name": "handlebars",
"direct": false,
"version": "4.7.9",
"ecosystem": "npm"
},
{
"name": "has-flag",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "has-symbols",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "has-tostringtag",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "hasown",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "hast-util-from-dom",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "hast-util-from-html",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "hast-util-from-html-isomorphic",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "hast-util-from-parse5",
"direct": false,
"version": "8.0.3",
"ecosystem": "npm"
},
{
"name": "hast-util-heading-rank",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "hast-util-is-element",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "hast-util-parse-selector",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "hast-util-raw",
"direct": false,
"version": "9.1.0",
"ecosystem": "npm"
},
{
"name": "hast-util-to-html",
"direct": false,
"version": "9.0.5",
"ecosystem": "npm"
},
{
"name": "hast-util-to-parse5",
"direct": false,
"version": "8.0.1",
"ecosystem": "npm"
},
{
"name": "hast-util-to-string",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "hast-util-to-text",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "hast-util-whitespace",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "hastscript",
"direct": false,
"version": "9.0.1",
"ecosystem": "npm"
},
{
"name": "highlight.js",
"direct": false,
"version": "10.7.3",
"ecosystem": "npm"
},
{
"name": "highlight.js",
"direct": false,
"version": "11.11.1",
"ecosystem": "npm"
},
{
"name": "hookable",
"direct": false,
"version": "6.1.1",
"ecosystem": "npm"
},
{
"name": "html-dom-parser",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "html-escaper",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "html-react-parser",
"direct": false,
"version": "6.1.4",
"ecosystem": "npm"
},
{
"name": "html-void-elements",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "htmlparser2",
"direct": false,
"version": "12.0.0",
"ecosystem": "npm"
},
{
"name": "http-errors",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "http-errors",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "iconv-lite",
"direct": false,
"version": "0.7.0",
"ecosystem": "npm"
},
{
"name": "iconv-lite",
"direct": false,
"version": "0.7.3",
"ecosystem": "npm"
},
{
"name": "import-without-cache",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "inherits",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "ini",
"direct": false,
"version": "1.3.8",
"ecosystem": "npm"
},
{
"name": "ini",
"direct": false,
"version": "4.1.1",
"ecosystem": "npm"
},
{
"name": "inline-style-parser",
"direct": false,
"version": "0.2.7",
"ecosystem": "npm"
},
{
"name": "iovalkey",
"direct": false,
"version": "0.3.3",
"ecosystem": "npm"
},
{
"name": "ipaddr.js",
"direct": false,
"version": "1.9.1",
"ecosystem": "npm"
},
{
"name": "ipaddr.js",
"direct": false,
"version": "2.4.0",
"ecosystem": "npm"
},
{
"name": "is-alphabetical",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "is-alphanumerical",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "is-core-module",
"direct": false,
"version": "2.16.1",
"ecosystem": "npm"
},
{
"name": "is-decimal",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "is-expression",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "is-fullwidth-code-point",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "is-fullwidth-code-point",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "is-hexadecimal",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "is-in-ci",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "is-installed-globally",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "is-npm",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "is-number",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "is-path-inside",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "is-plain-obj",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "is-promise",
"direct": false,
"version": "2.2.2",
"ecosystem": "npm"
},
{
"name": "is-promise",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "is-regex",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "is-stream",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "istanbul-lib-coverage",
"direct": false,
"version": "3.2.2",
"ecosystem": "npm"
},
{
"name": "istanbul-lib-report",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "istanbul-reports",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "jiti",
"direct": false,
"version": "2.7.0",
"ecosystem": "npm"
},
{
"name": "joycon",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "js-stringify",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "js-tokens",
"direct": false,
"version": "10.0.0",
"ecosystem": "npm"
},
{
"name": "js-yaml",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "jsesc",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "json-schema",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "jstransformer",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "katex",
"direct": false,
"version": "0.16.28",
"ecosystem": "npm"
},
{
"name": "kleur",
"direct": false,
"version": "4.1.5",
"ecosystem": "npm"
},
{
"name": "ky",
"direct": false,
"version": "1.14.3",
"ecosystem": "npm"
},
{
"name": "latest-version",
"direct": false,
"version": "9.0.0",
"ecosystem": "npm"
},
{
"name": "lilconfig",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "lines-and-columns",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "linkify-it",
"direct": false,
"version": "5.0.2",
"ecosystem": "npm"
},
{
"name": "liquidjs",
"direct": false,
"version": "10.27.1",
"ecosystem": "npm"
},
{
"name": "load-tsconfig",
"direct": false,
"version": "0.2.5",
"ecosystem": "npm"
},
{
"name": "lodash.clonedeep",
"direct": false,
"version": "4.5.0",
"ecosystem": "npm"
},
{
"name": "lodash.defaults",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "lodash.isarguments",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "longest-streak",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "lowercase-keys",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "lowlight",
"direct": false,
"version": "3.3.0",
"ecosystem": "npm"
},
{
"name": "lru-cache",
"direct": false,
"version": "10.4.3",
"ecosystem": "npm"
},
{
"name": "lru-cache",
"direct": false,
"version": "11.3.6",
"ecosystem": "npm"
},
{
"name": "lru-cache",
"direct": false,
"version": "11.5.1",
"ecosystem": "npm"
},
{
"name": "lru-cache",
"direct": false,
"version": "^11.5.1",
"ecosystem": "npm"
},
{
"name": "lru.min",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "lru.min",
"direct": false,
"version": "^1.1.4",
"ecosystem": "npm"
},
{
"name": "magic-string",
"direct": false,
"version": "0.30.21",
"ecosystem": "npm"
},
{
"name": "magicast",
"direct": false,
"version": "0.5.2",
"ecosystem": "npm"
},
{
"name": "make-dir",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "markdown-it",
"direct": false,
"version": "14.3.0",
"ecosystem": "npm"
},
{
"name": "markdown-table",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "marked",
"direct": false,
"version": "9.1.6",
"ecosystem": "npm"
},
{
"name": "marked-terminal",
"direct": false,
"version": "7.3.0",
"ecosystem": "npm"
},
{
"name": "math-intrinsics",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "mdast-util-find-and-replace",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "mdast-util-from-markdown",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "mdast-util-gfm",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "mdast-util-gfm-autolink-literal",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "mdast-util-gfm-footnote",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "mdast-util-gfm-strikethrough",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "mdast-util-gfm-table",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "mdast-util-gfm-task-list-item",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "mdast-util-math",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "mdast-util-mdx",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "mdast-util-mdx-expression",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "mdast-util-mdx-jsx",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "mdast-util-mdxjs-esm",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "mdast-util-phrasing",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "mdast-util-to-hast",
"direct": false,
"version": "13.2.1",
"ecosystem": "npm"
},
{
"name": "mdast-util-to-markdown",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "mdast-util-to-string",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "mdast-util-toc",
"direct": false,
"version": "7.1.0",
"ecosystem": "npm"
},
{
"name": "mdurl",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "media-typer",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "merge-descriptors",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "micromark",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "micromark-core-commonmark",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "micromark-extension-gfm",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "micromark-extension-gfm-autolink-literal",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "micromark-extension-gfm-footnote",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "micromark-extension-gfm-strikethrough",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "micromark-extension-gfm-table",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "micromark-extension-gfm-tagfilter",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "micromark-extension-gfm-task-list-item",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "micromark-extension-math",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "micromark-extension-mdx-expression",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-extension-mdx-jsx",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "micromark-extension-mdx-md",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "micromark-extension-mdxjs",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "micromark-extension-mdxjs-esm",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "micromark-factory-destination",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-factory-label",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-factory-mdx-expression",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "micromark-factory-space",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-factory-title",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-factory-whitespace",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-character",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-chunked",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-classify-character",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-combine-extensions",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-decode-numeric-character-reference",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "micromark-util-decode-string",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-encode",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-events-to-acorn",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "micromark-util-html-tag-name",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-normalize-identifier",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-resolve-all",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-sanitize-uri",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-subtokenize",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "micromark-util-symbol",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-types",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "micromatch",
"direct": false,
"version": "4.0.8",
"ecosystem": "npm"
},
{
"name": "mime-db",
"direct": false,
"version": "1.33.0",
"ecosystem": "npm"
},
{
"name": "mime-db",
"direct": false,
"version": "1.54.0",
"ecosystem": "npm"
},
{
"name": "mime-types",
"direct": false,
"version": "2.1.18",
"ecosystem": "npm"
},
{
"name": "mime-types",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "miniflare",
"direct": false,
"version": "4.20260701.0",
"ecosystem": "npm"
},
{
"name": "minimatch",
"direct": false,
"version": "10.2.2",
"ecosystem": "npm"
},
{
"name": "minimatch",
"direct": false,
"version": "3.1.5",
"ecosystem": "npm"
},
{
"name": "minimist",
"direct": false,
"version": "1.2.8",
"ecosystem": "npm"
},
{
"name": "minipass",
"direct": false,
"version": "7.1.3",
"ecosystem": "npm"
},
{
"name": "mlly",
"direct": false,
"version": "1.8.2",
"ecosystem": "npm"
},
{
"name": "mri",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.1.3",
"ecosystem": "npm"
},
{
"name": "mz",
"direct": false,
"version": "2.7.0",
"ecosystem": "npm"
},
{
"name": "nanoid",
"direct": false,
"version": "3.3.12",
"ecosystem": "npm"
},
{
"name": "negotiator",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "neo-async",
"direct": false,
"version": "2.6.2",
"ecosystem": "npm"
},
{
"name": "node-cache",
"direct": false,
"version": "5.1.2",
"ecosystem": "npm"
},
{
"name": "node-cache",
"direct": false,
"version": "^5.1.2",
"ecosystem": "npm"
},
{
"name": "node-emoji",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "nunjucks",
"direct": false,
"version": "3.2.4",
"ecosystem": "npm"
},
{
"name": "object-assign",
"direct": false,
"version": "4.1.1",
"ecosystem": "npm"
},
{
"name": "object-hash",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "object-inspect",
"direct": false,
"version": "1.13.4",
"ecosystem": "npm"
},
{
"name": "obug",
"direct": false,
"version": "2.1.3",
"ecosystem": "npm"
},
{
"name": "on-exit-leak-free",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "on-finished",
"direct": false,
"version": "2.4.1",
"ecosystem": "npm"
},
{
"name": "once",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "p-timeout",
"direct": false,
"version": "7.0.1",
"ecosystem": "npm"
},
{
"name": "package-json",
"direct": false,
"version": "10.0.1",
"ecosystem": "npm"
},
{
"name": "package-json-from-dist",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "package-manager-detector",
"direct": false,
"version": "1.6.0",
"ecosystem": "npm"
},
{
"name": "parse-entities",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "parse5",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "parse5",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "parse5",
"direct": false,
"version": "7.3.0",
"ecosystem": "npm"
},
{
"name": "parse5-htmlparser2-tree-adapter",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "parseurl",
"direct": false,
"version": "1.3.3",
"ecosystem": "npm"
},
{
"name": "path-is-inside",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "path-parse",
"direct": false,
"version": "1.0.7",
"ecosystem": "npm"
},
{
"name": "path-scurry",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "path-to-regexp",
"direct": false,
"version": "3.3.0",
"ecosystem": "npm"
},
{
"name": "path-to-regexp",
"direct": false,
"version": "6.3.0",
"ecosystem": "npm"
},
{
"name": "path-to-regexp",
"direct": false,
"version": "8.2.0",
"ecosystem": "npm"
},
{
"name": "pathe",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "picocolors",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "picomatch",
"direct": false,
"version": "2.3.2",
"ecosystem": "npm"
},
{
"name": "picomatch",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "pify",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "pify",
"direct": false,
"version": "^6.1.0",
"ecosystem": "npm"
},
{
"name": "pino",
"direct": false,
"version": "10.3.1",
"ecosystem": "npm"
},
{
"name": "pino",
"direct": false,
"version": "^10.3.1",
"ecosystem": "npm"
},
{
"name": "pino-abstract-transport",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "pino-std-serializers",
"direct": false,
"version": "7.1.0",
"ecosystem": "npm"
},
{
"name": "pirates",
"direct": false,
"version": "4.0.7",
"ecosystem": "npm"
},
{
"name": "pkg-types",
"direct": false,
"version": "1.3.1",
"ecosystem": "npm"
},
{
"name": "pluralize",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "postcss",
"direct": false,
"version": "8.5.14",
"ecosystem": "npm"
},
{
"name": "postcss-load-config",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "process-warning",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "promise",
"direct": false,
"version": "7.3.1",
"ecosystem": "npm"
},
{
"name": "promise-coalesce",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "property-information",
"direct": false,
"version": "7.1.0",
"ecosystem": "npm"
},
{
"name": "proto-list",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "proxy-addr",
"direct": false,
"version": "2.0.7",
"ecosystem": "npm"
},
{
"name": "publint",
"direct": false,
"version": "0.3.21",
"ecosystem": "npm"
},
{
"name": "pug",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "pug-attrs",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "pug-code-gen",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "pug-error",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "pug-filters",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "pug-lexer",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "pug-linker",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "pug-load",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "pug-parser",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "pug-runtime",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "pug-strip-comments",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "pug-walk",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "punycode",
"direct": false,
"version": "1.4.1",
"ecosystem": "npm"
},
{
"name": "punycode.js",
"direct": false,
"version": "2.3.1",
"ecosystem": "npm"
},
{
"name": "pupa",
"direct": false,
"version": "3.3.0",
"ecosystem": "npm"
},
{
"name": "qs",
"direct": false,
"version": "6.14.0",
"ecosystem": "npm"
},
{
"name": "qs",
"direct": false,
"version": "6.14.1",
"ecosystem": "npm"
},
{
"name": "qs",
"direct": false,
"version": "6.15.3",
"ecosystem": "npm"
},
{
"name": "quansync",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "quick-format-unescaped",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "quick-lru",
"direct": false,
"version": "7.3.0",
"ecosystem": "npm"
},
{
"name": "quick-lru",
"direct": false,
"version": "^7.3.0",
"ecosystem": "npm"
},
{
"name": "random-int",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "range-parser",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "range-parser",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "raw-body",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "rc",
"direct": false,
"version": "1.2.8",
"ecosystem": "npm"
},
{
"name": "react",
"direct": false,
"version": "19.2.7",
"ecosystem": "npm"
},
{
"name": "react-property",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "readdirp",
"direct": false,
"version": "4.1.2",
"ecosystem": "npm"
},
{
"name": "real-require",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "redis",
"direct": false,
"version": "4.7.0",
"ecosystem": "npm"
},
{
"name": "redis",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "redis-errors",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "redis-parser",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "registry-auth-token",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "registry-url",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "rehype-highlight",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "rehype-katex",
"direct": false,
"version": "7.0.1",
"ecosystem": "npm"
},
{
"name": "rehype-raw",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "rehype-slug",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "rehype-stringify",
"direct": false,
"version": "10.0.1",
"ecosystem": "npm"
},
{
"name": "remark-emoji",
"direct": false,
"version": "5.0.2",
"ecosystem": "npm"
},
{
"name": "remark-gfm",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "remark-github-blockquote-alert",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "remark-math",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "remark-mdx",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "remark-parse",
"direct": false,
"version": "11.0.0",
"ecosystem": "npm"
},
{
"name": "remark-rehype",
"direct": false,
"version": "11.1.2",
"ecosystem": "npm"
},
{
"name": "remark-stringify",
"direct": false,
"version": "11.0.0",
"ecosystem": "npm"
},
{
"name": "remark-toc",
"direct": false,
"version": "9.0.0",
"ecosystem": "npm"
},
{
"name": "require-directory",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "resolve",
"direct": false,
"version": "1.22.11",
"ecosystem": "npm"
},
{
"name": "resolve-from",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "resolve-pkg-maps",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "rimraf",
"direct": false,
"version": "6.1.3",
"ecosystem": "npm"
},
{
"name": "rolldown",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "rolldown-plugin-dts",
"direct": false,
"version": "0.26.0",
"ecosystem": "npm"
},
{
"name": "rollup",
"direct": false,
"version": "4.60.3",
"ecosystem": "npm"
},
{
"name": "router",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "sade",
"direct": false,
"version": "1.8.1",
"ecosystem": "npm"
},
{
"name": "safe-buffer",
"direct": false,
"version": "5.2.1",
"ecosystem": "npm"
},
{
"name": "safe-regex-test",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "safe-stable-stringify",
"direct": false,
"version": "2.5.0",
"ecosystem": "npm"
},
{
"name": "safer-buffer",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "secure-json-parse",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "semver",
"direct": false,
"version": "7.8.5",
"ecosystem": "npm"
},
{
"name": "send",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "serve-handler",
"direct": false,
"version": "6.1.7",
"ecosystem": "npm"
},
{
"name": "serve-static",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "setprototypeof",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "sharp",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "side-channel",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "side-channel",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "side-channel-list",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "side-channel-list",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "side-channel-map",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "side-channel-weakmap",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "siginfo",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "skin-tone",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "slice-ansi",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "slugify",
"direct": false,
"version": "1.6.6",
"ecosystem": "npm"
},
{
"name": "sonic-boom",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "source-map",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "source-map",
"direct": false,
"version": "0.7.6",
"ecosystem": "npm"
},
{
"name": "source-map-js",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "space-separated-tokens",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "split2",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "stackback",
"direct": false,
"version": "0.0.2",
"ecosystem": "npm"
},
{
"name": "standard-as-callback",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "statuses",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "statuses",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "std-env",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "string-width",
"direct": false,
"version": "4.2.3",
"ecosystem": "npm"
},
{
"name": "string-width",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "stringify-entities",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "strip-ansi",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "strip-ansi",
"direct": false,
"version": "7.1.2",
"ecosystem": "npm"
},
{
"name": "strip-json-comments",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "stubborn-fs",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "stubborn-utils",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "style-to-js",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "style-to-object",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "sucrase",
"direct": false,
"version": "3.35.1",
"ecosystem": "npm"
},
{
"name": "supports-color",
"direct": false,
"version": "10.2.2",
"ecosystem": "npm"
},
{
"name": "supports-color",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "supports-hyperlinks",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "supports-preserve-symlinks-flag",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "thenify",
"direct": false,
"version": "3.3.1",
"ecosystem": "npm"
},
{
"name": "thenify-all",
"direct": false,
"version": "1.6.0",
"ecosystem": "npm"
},
{
"name": "thread-stream",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "tinybench",
"direct": false,
"version": "2.9.0",
"ecosystem": "npm"
},
{
"name": "tinybench",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "tinybench",
"direct": false,
"version": "^6.0.2",
"ecosystem": "npm"
},
{
"name": "tinyexec",
"direct": false,
"version": "0.3.2",
"ecosystem": "npm"
},
{
"name": "tinyexec",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "tinyglobby",
"direct": false,
"version": "0.2.16",
"ecosystem": "npm"
},
{
"name": "tinyglobby",
"direct": false,
"version": "0.2.17",
"ecosystem": "npm"
},
{
"name": "tinyrainbow",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "to-regex-range",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "toidentifier",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "token-stream",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "tree-kill",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "trim-lines",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "trough",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "truncatise",
"direct": false,
"version": "0.0.8",
"ecosystem": "npm"
},
{
"name": "ts-interface-checker",
"direct": false,
"version": "0.1.13",
"ecosystem": "npm"
},
{
"name": "tsdown",
"direct": false,
"version": "0.22.3",
"ecosystem": "npm"
},
{
"name": "tsdown",
"direct": false,
"version": "^0.22.3",
"ecosystem": "npm"
},
{
"name": "tslib",
"direct": false,
"version": "2.8.1",
"ecosystem": "npm"
},
{
"name": "tsup",
"direct": false,
"version": "8.5.1",
"ecosystem": "npm"
},
{
"name": "tsup",
"direct": false,
"version": "^8.5.1",
"ecosystem": "npm"
},
{
"name": "tsx",
"direct": false,
"version": "4.23.0",
"ecosystem": "npm"
},
{
"name": "tsx",
"direct": false,
"version": "^4.23.0",
"ecosystem": "npm"
},
{
"name": "type-fest",
"direct": false,
"version": "4.41.0",
"ecosystem": "npm"
},
{
"name": "type-is",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "type-is",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "5.6.1-rc",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "^6.0.3",
"ecosystem": "npm"
},
{
"name": "uc.micro",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "ufo",
"direct": false,
"version": "1.6.4",
"ecosystem": "npm"
},
{
"name": "uglify-js",
"direct": false,
"version": "3.19.3",
"ecosystem": "npm"
},
{
"name": "unconfig-core",
"direct": false,
"version": "7.5.0",
"ecosystem": "npm"
},
{
"name": "undici-types",
"direct": false,
"version": "7.16.0",
"ecosystem": "npm"
},
{
"name": "undici-types",
"direct": false,
"version": "7.18.2",
"ecosystem": "npm"
},
{
"name": "unenv",
"direct": false,
"version": "2.0.0-rc.24",
"ecosystem": "npm"
},
{
"name": "unicode-emoji-modifier-base",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "unified",
"direct": false,
"version": "11.0.5",
"ecosystem": "npm"
},
{
"name": "unist-util-find-after",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "unist-util-is",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "unist-util-position",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "unist-util-position-from-estree",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "unist-util-remove-position",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "unist-util-stringify-position",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "unist-util-visit",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "unist-util-visit-parents",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "unlimited-timeout",
"direct": false,
"version": "0.1.0",
"ecosystem": "npm"
},
{
"name": "unpipe",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "update-notifier",
"direct": false,
"version": "7.3.1",
"ecosystem": "npm"
},
{
"name": "validate-npm-package-name",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "vary",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "vfile",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "vfile-location",
"direct": false,
"version": "5.0.3",
"ecosystem": "npm"
},
{
"name": "vfile-message",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "vite",
"direct": false,
"version": "7.3.1",
"ecosystem": "npm"
},
{
"name": "vitest",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "void-elements",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "web-namespaces",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "when-exit",
"direct": false,
"version": "2.1.5",
"ecosystem": "npm"
},
{
"name": "why-is-node-running",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "widest-line",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "with",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "wordwrap",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "workerd",
"direct": false,
"version": "1.20260701.1",
"ecosystem": "npm"
},
{
"name": "wrangler",
"direct": false,
"version": "4.107.0",
"ecosystem": "npm"
},
{
"name": "wrap-ansi",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "wrap-ansi",
"direct": false,
"version": "9.0.2",
"ecosystem": "npm"
},
{
"name": "wrappy",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "writr",
"direct": false,
"version": "6.1.3",
"ecosystem": "npm"
},
{
"name": "ws",
"direct": false,
"version": "8.21.0",
"ecosystem": "npm"
},
{
"name": "xdg-basedir",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "y18n",
"direct": false,
"version": "5.0.8",
"ecosystem": "npm"
},
{
"name": "yallist",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "yargs",
"direct": false,
"version": "16.2.0",
"ecosystem": "npm"
},
{
"name": "yargs-parser",
"direct": false,
"version": "20.2.9",
"ecosystem": "npm"
},
{
"name": "youch",
"direct": false,
"version": "4.1.0-beta.10",
"ecosystem": "npm"
},
{
"name": "youch-core",
"direct": false,
"version": "0.3.3",
"ecosystem": "npm"
},
{
"name": "zod",
"direct": false,
"version": "4.4.3",
"ecosystem": "npm"
},
{
"name": "zwitch",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
}
],
"collected": true,
"truncated": false,
"total_count": 876,
"direct_count": 35,
"indirect_count": 841
}
},
"maintainership": {
"issues": {
"open_prs": 0,
"merged_prs": 1301,
"open_issues": 0,
"closed_ratio": 1,
"closed_issues": 320,
"closed_unmerged_prs": 65
},
"bus_factor": 1,
"bot_contributors": 2,
"top_contributors": [
{
"type": "User",
"login": "jaredwray",
"commits": 1087,
"avatar_url": "https://avatars.githubusercontent.com/u/1205481?v=4"
},
{
"type": "User",
"login": "BryanDonovan",
"commits": 344,
"avatar_url": "https://avatars.githubusercontent.com/u/8901?v=4"
},
{
"type": "User",
"login": "zzau13",
"commits": 71,
"avatar_url": "https://avatars.githubusercontent.com/u/2625545?v=4"
},
{
"type": "User",
"login": "marcoreni",
"commits": 8,
"avatar_url": "https://avatars.githubusercontent.com/u/2797489?v=4"
},
{
"type": "User",
"login": "seanzx85",
"commits": 7,
"avatar_url": "https://avatars.githubusercontent.com/u/2249034?v=4"
},
{
"type": "User",
"login": "aletorrado",
"commits": 6,
"avatar_url": "https://avatars.githubusercontent.com/u/279292?v=4"
},
{
"type": "User",
"login": "philippeauriach",
"commits": 6,
"avatar_url": "https://avatars.githubusercontent.com/u/920265?v=4"
},
{
"type": "User",
"login": "gswalden",
"commits": 6,
"avatar_url": "https://avatars.githubusercontent.com/u/3459542?v=4"
},
{
"type": "User",
"login": "corradodellorusso",
"commits": 5,
"avatar_url": "https://avatars.githubusercontent.com/u/30291252?v=4"
},
{
"type": "User",
"login": "loixlab",
"commits": 4,
"avatar_url": "https://avatars.githubusercontent.com/u/2854616?v=4"
}
],
"contributors_sampled": 96,
"top_contributor_share": 0.658
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"codecov.yml",
"deploy-website.yml",
"release.yml",
"tests.yml"
],
"has_docs_dir": false,
"linter_configs": [
"biome.json"
],
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [
"pnpm-lock.yaml"
],
"scorecard": {
"checks": [
{
"name": "Binary-Artifacts",
"score": 10,
"reason": "no binaries found in the repo",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
},
{
"name": "Branch-Protection",
"score": null,
"reason": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
},
{
"name": "CI-Tests",
"score": 10,
"reason": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
},
{
"name": "CII-Best-Practices",
"score": 0,
"reason": "no effort to earn an OpenSSF best practices badge detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
},
{
"name": "Code-Review",
"score": 0,
"reason": "Found 0/30 approved changesets -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
},
{
"name": "Contributors",
"score": 10,
"reason": "project has 8 contributing companies or organizations",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
},
{
"name": "Dangerous-Workflow",
"score": 10,
"reason": "no dangerous workflow patterns detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
},
{
"name": "Dependency-Update-Tool",
"score": 10,
"reason": "update tool detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
},
{
"name": "Fuzzing",
"score": 0,
"reason": "project is not fuzzed",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
},
{
"name": "License",
"score": 10,
"reason": "license file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
},
{
"name": "Maintained",
"score": 10,
"reason": "30 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
},
{
"name": "Packaging",
"score": null,
"reason": "packaging workflow not detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
},
{
"name": "Pinned-Dependencies",
"score": 0,
"reason": "dependency not pinned by hash detected -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
},
{
"name": "SAST",
"score": 10,
"reason": "SAST tool is run on all commits",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
},
{
"name": "Security-Policy",
"score": 4,
"reason": "security policy file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
},
{
"name": "Signed-Releases",
"score": null,
"reason": "no releases found",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
},
{
"name": "Token-Permissions",
"score": 10,
"reason": "GitHub workflow tokens follow principle of least privilege",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
},
{
"name": "Vulnerabilities",
"score": 0,
"reason": "25 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "f50b770ec197a3dd628794a10adb456c1dab0bd7",
"ran_at": "2026-07-22T16:13:37Z",
"aggregate_score": 6.4,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": false,
"has_security_policy": true,
"has_dependabot_config": false
},
"contribution_flow": {
"collected": true,
"ci_last_run_at": "2026-07-16T16:43:18Z",
"oldest_open_prs": [],
"last_merged_pr_at": "2026-07-15T18:26:14Z",
"ci_last_conclusion": "SUCCESS",
"oldest_open_issues": []
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/jaredwray/cacheable",
"host": "github.com",
"name": "cacheable",
"owner": "jaredwray"
},
"metrics": {
"overall": {
"key": "overall",
"band": "good",
"name": "Overall health",
"note": null,
"notes": [],
"value": 80,
"inputs": {
"security": 71,
"vitality": 98,
"community": 88,
"governance": 68,
"engineering": 76
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "excellent",
"name": "Vitality",
"value": 98,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "excellent",
"name": "Development activity",
"note": null,
"notes": [],
"value": 96,
"inputs": {
"commits_last_year": 528,
"human_commit_share": 1,
"days_since_last_push": 6,
"active_weeks_last_year": 46
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 6 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "push_recency",
"params": {
"days": 6
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "46/52 weeks with commits",
"points": 31.8,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 46
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "528 commits in the last year",
"points": 18,
"status": "met",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 528
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "30 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "release_discipline",
"band": "excellent",
"name": "Release discipline",
"note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"openssf_scorecard_signed_releases"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 100,
"inputs": {
"releases_count": 66,
"latest_release_tag": "2026-06-27",
"releases_from_tags": false,
"days_since_latest_release": 24,
"mean_days_between_releases": 18.8
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "66 releases published",
"points": 27,
"status": "met",
"details": [
{
"code": "releases_published",
"params": {
"count": 66
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 24 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 24
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~18.8 days",
"points": 27,
"status": "met",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 18.8
}
}
],
"max_points": 27
},
{
"key": "openssf_scorecard_signed_releases",
"name": "OpenSSF Scorecard: Signed-Releases",
"detail": "no releases found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 10
}
]
},
{
"key": "abandonment",
"band": "excellent",
"name": "Abandonment",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"cap": null,
"state": "maintained",
"guards": [],
"signals": [],
"red_flag": false,
"multiplier_pct": 100,
"declared_reason": null,
"unverified_reason": null,
"unanswered_open_prs": null,
"unanswered_open_issues": null,
"days_since_last_merged_pr": null,
"days_since_last_human_commit": 6,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "last human commit 6 days ago",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_maintained",
"params": {
"days": 6
}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "excellent",
"name": "Community & Adoption",
"value": 88,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "good",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 78,
"inputs": {
"forks": 203,
"stars": 1998,
"watchers": 10,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "1,998 stars",
"points": 53.5,
"status": "partial",
"details": [
{
"code": "stars",
"params": {
"count": 1998
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "203 forks",
"points": 19.2,
"status": "partial",
"details": [
{
"code": "forks",
"params": {
"count": 203
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "10 watchers",
"points": 5.3,
"status": "partial",
"details": [
{
"code": "watchers",
"params": {
"count": 10
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "excellent",
"name": "Community health",
"note": null,
"notes": [],
"value": 92,
"inputs": {
"has_readme": true,
"has_license": true,
"has_contributing": true,
"has_issue_template": false,
"has_code_of_conduct": true,
"has_pull_request_template": true
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 22.5,
"status": "met",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "recognized license (MIT)",
"points": 22.5,
"status": "met",
"details": [
{
"code": "license_standard",
"params": {}
},
{
"code": "license_spdx",
"params": {
"spdx": "MIT"
}
}
],
"max_points": 22.5
},
{
"key": "contributing_guide",
"name": "CONTRIBUTING guide",
"detail": null,
"points": 18,
"status": "met",
"details": [],
"max_points": 18
},
{
"key": "code_of_conduct",
"name": "Code of conduct",
"detail": null,
"points": 13.5,
"status": "met",
"details": [],
"max_points": 13.5
},
{
"key": "issue_template",
"name": "Issue template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.2
},
{
"key": "pr_template",
"name": "PR template",
"detail": null,
"points": 6.3,
"status": "met",
"details": [],
"max_points": 6.3
}
]
},
{
"key": "ecosystem_adoption",
"band": "excellent",
"name": "Ecosystem adoption (downloads)",
"note": "Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"registry_dependents"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 100,
"inputs": {
"packages": [
"@cacheable/net",
"@cacheable/utils",
"@cacheable/memory",
"cacheable",
"flat-cache",
"@cacheable/node-cache",
"cache-manager",
"file-entry-cache"
],
"dependents": null,
"ecosystems": "npm",
"total_downloads": null,
"monthly_downloads": 1229405646
},
"components": [
{
"key": "monthly_downloads",
"name": "Monthly downloads",
"detail": "1,229,405,646 downloads/month across npm",
"points": 80,
"status": "met",
"details": [
{
"code": "downloads_monthly",
"params": {
"count": 1229405646,
"ecosystems": "npm"
}
}
],
"max_points": 80
},
{
"key": "registry_dependents",
"name": "Registry dependents",
"detail": "not reported by this ecosystem",
"points": 0,
"status": "excluded",
"details": [
{
"code": "not_reported_by_this_ecosystem",
"params": {}
}
],
"max_points": 20
}
]
}
],
"description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
},
{
"key": "governance",
"band": "moderate",
"name": "Sustainability & Governance",
"value": 68,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "at_risk",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"bus_factor": 1,
"contributors_sampled": 96,
"top_contributor_share": 0.658
},
"components": [
{
"key": "bus_factor",
"name": "Bus factor",
"detail": "1 contributor(s) cover half of all commits",
"points": 9,
"status": "partial",
"details": [
{
"code": "bus_factor",
"params": {
"count": 1
}
}
],
"max_points": 54
},
{
"key": "commit_distribution",
"name": "Commit distribution",
"detail": "top contributor authored 66% of commits",
"points": 7.7,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 66
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "96 contributors",
"points": 13.5,
"status": "met",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 96
}
}
],
"max_points": 13.5
},
{
"key": "openssf_scorecard_contributors",
"name": "OpenSSF Scorecard: Contributors",
"detail": "project has 8 contributing companies or organizations",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "responsiveness",
"band": "good",
"name": "Issue & PR responsiveness",
"note": null,
"notes": [],
"value": 83,
"inputs": {
"merged_prs": 1301,
"open_issues": 0,
"closed_issues": 320,
"issue_closed_ratio": 1,
"closed_unmerged_prs": 65
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "100% of issues closed",
"points": 46.8,
"status": "met",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 100
}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "1301/1366 decided PRs merged",
"points": 36.4,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 1301,
"decided": 1366
}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "Found 0/30 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "moderate",
"name": "Ownership & stewardship",
"note": "Excluded from scoring (no data or not applicable): Verified domain. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"verified_domain"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 61,
"inputs": {
"followers": 238,
"owner_type": "User",
"is_verified": null,
"owner_login": "jaredwray",
"public_repos": 22,
"account_age_days": 5359
},
"components": [
{
"key": "ownership_backing",
"name": "Ownership backing",
"detail": "personal (user) account",
"points": 10,
"status": "partial",
"details": [
{
"code": "owner_personal",
"params": {}
}
],
"max_points": 30
},
{
"key": "verified_domain",
"name": "Verified domain",
"detail": "not applicable to user accounts",
"points": 0,
"status": "excluded",
"details": [
{
"code": "not_applicable_to_user_accounts",
"params": {}
}
],
"max_points": 20
},
{
"key": "owner_reach",
"name": "Owner reach",
"detail": "238 followers of jaredwray",
"points": 17.1,
"status": "partial",
"details": [
{
"code": "owner_followers",
"params": {
"count": 238,
"login": "jaredwray"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "22 public repos, account ~14 yr old",
"points": 21.9,
"status": "partial",
"details": [
{
"code": "public_repos",
"params": {
"count": 22
}
},
{
"code": "account_age_years",
"params": {
"years": 14
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "excellent",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"@cacheable/net",
"@cacheable/utils",
"@cacheable/memory",
"cacheable",
"flat-cache",
"@cacheable/node-cache",
"cache-manager",
"file-entry-cache"
],
"ecosystems": "npm",
"any_deprecated": false,
"min_days_since_publish": 24
},
"components": [
{
"key": "published_resolvable",
"name": "Published & resolvable",
"detail": "8 package(s) on npm",
"points": 25,
"status": "met",
"details": [
{
"code": "packages_published",
"params": {
"count": 8,
"ecosystems": "npm"
}
}
],
"max_points": 25
},
{
"key": "publish_recency",
"name": "Publish recency",
"detail": "latest publish 24 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 24
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "131 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 131
}
}
],
"max_points": 20
},
{
"key": "not_deprecated",
"name": "Not deprecated",
"detail": "active, not deprecated or yanked",
"points": 20,
"status": "met",
"details": [
{
"code": "package_not_deprecated",
"params": {}
}
],
"max_points": 20
}
]
}
],
"description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
},
{
"key": "engineering",
"band": "good",
"name": "Engineering Quality",
"value": 76,
"weight": 0.2,
"metrics": [
{
"key": "engineering_practices",
"band": "good",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 84,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "4 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 4
}
}
],
"max_points": 24
},
{
"key": "tests_present",
"name": "Tests present",
"detail": null,
"points": 24,
"status": "met",
"details": [],
"max_points": 24
},
{
"key": "linter_config",
"name": "Linter config",
"detail": "biome.json",
"points": 16,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "biome.json"
}
}
],
"max_points": 16
},
{
"key": "pre_commit_hooks",
"name": "Pre-commit hooks",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 9.6
},
{
"key": "editorconfig",
"name": ".editorconfig",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 6.4
},
{
"key": "openssf_scorecard_ci_tests",
"name": "OpenSSF Scorecard: CI-Tests",
"detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
"points": 20,
"status": "met",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "moderate",
"name": "Documentation",
"note": null,
"notes": [],
"value": 65,
"inputs": {
"topics": [
"cache",
"redis",
"nodejs",
"caching",
"caching-library",
"http",
"wrapper",
"rfc-72",
"key-value",
"keyv"
],
"has_wiki": false,
"homepage": "https://cacheable.org",
"has_readme": true,
"has_docs_dir": false,
"has_description": true
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 30,
"status": "met",
"details": [],
"max_points": 30
},
{
"key": "documentation_directory",
"name": "Documentation directory",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 25
},
{
"key": "documentation_homepage_site",
"name": "Documentation / homepage site",
"detail": "https://cacheable.org",
"points": 15,
"status": "met",
"details": [],
"max_points": 15
},
{
"key": "repository_description",
"name": "Repository description",
"detail": null,
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "topics",
"name": "Topics",
"detail": "10 topics",
"points": 10,
"status": "met",
"details": [
{
"code": "topics_count",
"params": {
"count": 10
}
}
],
"max_points": 10
},
{
"key": "wiki",
"name": "Wiki",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
}
],
"description": "Are baseline engineering and documentation practices in place?"
},
{
"key": "security",
"band": "good",
"name": "Security",
"value": 71,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "moderate",
"name": "Security posture",
"note": "Excluded from scoring (no data or not applicable): Branch-Protection, Packaging, Signed-Releases. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"branch_protection",
"packaging",
"signed_releases"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 64,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 15,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 3,
"scorecard_aggregate": 6.4
},
"components": [
{
"key": "binary_artifacts",
"name": "Binary-Artifacts",
"detail": "no binaries found in the repo",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "branch_protection",
"name": "Branch-Protection",
"detail": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "cii_best_practices",
"name": "CII-Best-Practices",
"detail": "no effort to earn an OpenSSF best practices badge detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 2.5
},
{
"key": "code_review",
"name": "Code-Review",
"detail": "Found 0/30 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 8 contributing companies or organizations",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "dangerous_workflow",
"name": "Dangerous-Workflow",
"detail": "no dangerous workflow patterns detected",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "dependency_update_tool",
"name": "Dependency-Update-Tool",
"detail": "update tool detected",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "fuzzing",
"name": "Fuzzing",
"detail": "project is not fuzzed",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "license",
"name": "License",
"detail": "license file detected",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "maintained",
"name": "Maintained",
"detail": "30 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "packaging",
"name": "Packaging",
"detail": "packaging workflow not detected",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 5
},
{
"key": "pinned_dependencies",
"name": "Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "sast",
"name": "SAST",
"detail": "SAST tool is run on all commits",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "security_policy",
"name": "Security-Policy",
"detail": "security policy file detected",
"points": 2,
"status": "partial",
"details": [],
"max_points": 5
},
{
"key": "signed_releases",
"name": "Signed-Releases",
"detail": "no releases found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 7.5
},
{
"key": "token_permissions",
"name": "Token-Permissions",
"detail": "GitHub workflow tokens follow principle of least privilege",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "vulnerabilities",
"name": "Vulnerabilities",
"detail": "25 existing vulnerabilities detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "dependency_advisories",
"band": "excellent",
"name": "Dependency advisories",
"note": "Excluded from scoring (no data or not applicable): No advisories left outstanding. Remaining weights renormalized. Matched the npm:cacheable@2.5.0 runtime dependency closure — what installing the published package pulls in — 9 packages. Reachability is not analyzed.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"no_advisories_left_outstanding"
]
}
},
{
"code": "weights_renormalized",
"params": {}
},
{
"code": "advisories_scope_published",
"params": {
"package": "npm:cacheable@2.5.0",
"assessed": 9
}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 100,
"inputs": {
"source": "osv",
"advisories": 0,
"affected_packages": 0,
"assessed_packages": 9,
"unassessed_packages": 0,
"affected_by_severity": "none",
"direct_affected_packages": 0
},
"components": [
{
"key": "direct_dependencies_free_of_known_advisories",
"name": "Direct dependencies free of known advisories",
"detail": "no direct dependency carries a known advisory",
"points": 35,
"status": "met",
"details": [
{
"code": "no_direct_advisories",
"params": {}
}
],
"max_points": 35
},
{
"key": "indirect_dependencies_free_of_known_advisories",
"name": "Indirect dependencies free of known advisories",
"detail": "no indirect dependency carries a known advisory",
"points": 25,
"status": "met",
"details": [
{
"code": "no_indirect_advisories",
"params": {}
}
],
"max_points": 25
},
{
"key": "no_advisories_left_outstanding",
"name": "No advisories left outstanding",
"detail": "no advisory carries a publication date",
"points": 0,
"status": "excluded",
"details": [
{
"code": "advisories_no_publication_date",
"params": {}
}
],
"max_points": 40
}
]
},
{
"key": "malicious_dependencies",
"band": "excellent",
"name": "Malicious dependencies",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"source": "osv",
"meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
"packages": [],
"red_flag": false,
"assessed_packages": 9,
"malicious_packages": 0,
"direct_malicious_packages": 0,
"withdrawn_malicious_packages": 0,
"installable_malicious_packages": 0
},
"components": [
{
"key": "no_dependency_reported_as_a_malicious_package",
"name": "No dependency reported as a malicious package",
"detail": "no dependency is reported as a malicious package",
"points": 100,
"status": "met",
"details": [
{
"code": "no_malicious_dependencies",
"params": {}
}
],
"max_points": 100
}
]
},
{
"key": "high_risk_jurisdiction_exposure",
"band": "excellent",
"name": "High-Risk Jurisdiction Exposure",
"note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
"notes": [
{
"code": "jurisdiction_evidence_limits",
"params": {}
}
],
"value": 100,
"inputs": {
"meaning": "self-published location evidence; not nationality or citizenship",
"red_flag": false,
"exposures": [],
"policy_countries": [
"Russia",
"Iran",
"North Korea"
],
"review_only_matches": 0,
"assessed_self_published_locations": 11
},
"components": [
{
"key": "policy_exposure_multiplier",
"name": "Policy exposure multiplier",
"detail": "no confirmed policy-scope location match",
"points": 100,
"status": "met",
"details": [
{
"code": "jurisdiction_no_match",
"params": {}
}
],
"max_points": 100
}
]
}
],
"description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
},
{
"key": "ai_readiness",
"band": "good",
"name": "AI Readiness",
"value": 78,
"weight": 0,
"metrics": [
{
"key": "ai_agent_context",
"band": "excellent",
"name": "Agent context & guidance",
"note": null,
"notes": [],
"value": 85,
"inputs": {
"has_llms_txt": false,
"legible_history_share": 0.84,
"agent_instruction_files": [
"AGENTS.md",
"CLAUDE.md"
],
"agent_instruction_max_bytes": 1245
},
"components": [
{
"key": "agent_instructions",
"name": "Agent instructions",
"detail": "AGENTS.md, CLAUDE.md",
"points": 45,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "AGENTS.md, CLAUDE.md"
}
}
],
"max_points": 45
},
{
"key": "machine_readable_docs_llms_txt",
"name": "Machine-readable docs (llms.txt)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "legible_commit_history",
"name": "Legible commit history",
"detail": "84 of 100 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 84,
"sampled": 100
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "moderate",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 64,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [
"pnpm-lock.yaml"
],
"has_dockerfile": true,
"typed_language": true,
"bootstrap_files": [],
"has_devcontainer": false,
"has_linter_config": true,
"typecheck_configs": [
"packages/benchmark/tsconfig.json",
"packages/cache-manager/tsconfig.json",
"packages/cacheable-request/tsconfig.json",
"packages/cacheable/tsconfig.json",
"packages/file-entry-cache/tsconfig.json",
"packages/flat-cache/tsconfig.json",
"packages/memory/tsconfig.json",
"packages/net/tsconfig.json",
"packages/node-cache/tsconfig.json",
"packages/utils/tsconfig.json",
"packages/website/tsconfig.json"
],
"agent_commit_share": 0.64,
"toolchain_manifests": [],
"dependency_bot_commit_share": 0
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 18
},
{
"key": "automated_tests",
"name": "Automated tests",
"detail": null,
"points": 22,
"status": "met",
"details": [],
"max_points": 22
},
{
"key": "lint_format_config",
"name": "Lint / format config",
"detail": "biome.json",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "biome.json"
}
}
],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": "packages/benchmark/tsconfig.json, packages/cache-manager/tsconfig.json, packages/cacheable-request/tsconfig.json, packages/cacheable/tsconfig.json, packages/file-entry-cache/tsconfig.json, packages/flat-cache/tsconfig.json, packages/memory/tsconfig.json, packages/net/tsconfig.json, packages/node-cache/tsconfig.json, packages/utils/tsconfig.json, packages/website/tsconfig.json",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "packages/benchmark/tsconfig.json, packages/cache-manager/tsconfig.json, packages/cacheable-request/tsconfig.json, packages/cacheable/tsconfig.json, packages/file-entry-cache/tsconfig.json, packages/flat-cache/tsconfig.json, packages/memory/tsconfig.json, packages/net/tsconfig.json, packages/node-cache/tsconfig.json, packages/utils/tsconfig.json, packages/website/tsconfig.json"
}
}
],
"max_points": 11
},
{
"key": "reproducible_environment",
"name": "Reproducible environment",
"detail": "Dockerfile, lockfile",
"points": 10,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "Dockerfile, lockfile"
}
}
],
"max_points": 10
},
{
"key": "demonstrated_agent_practice",
"name": "Demonstrated agent practice",
"detail": "64 of the last 100 commits agent-authored or agent-credited",
"points": 10,
"status": "met",
"details": [
{
"code": "agent_authored_commits",
"params": {
"count": 64,
"sampled": 100
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "no automated dependency updates observed",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_dependency_automation",
"params": {}
}
],
"max_points": 8
},
{
"key": "openssf_scorecard_pinned_dependencies",
"name": "OpenSSF Scorecard: Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "excellent",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"primary_language": "TypeScript",
"largest_source_bytes": 69842,
"source_files_sampled": 119,
"oversized_source_files": 1
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "TypeScript (statically typed)",
"points": 45,
"status": "met",
"details": [
{
"code": "statically_typed_language",
"params": {
"language": "TypeScript"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "1/119 source files over 60KB",
"points": 54.5,
"status": "partial",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 119,
"oversized": 1
}
}
],
"max_points": 55
}
]
}
],
"description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
}
],
"metrics_version": "1.13.0"
},
"warnings": [
"Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token"
],
"report_type": "repository",
"generated_at": "2026-07-22T16:14:05.519289Z",
"schema_version": "0.26.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/j/jaredwray/cacheable.svg",
"full_name": "jaredwray/cacheable",
"license_state": "standard",
"license_spdx": "MIT"
}