Звіт у форматі JSON машиночитний
{
"data": {
"repo": {
"topics": [],
"is_fork": false,
"size_kb": 1521,
"has_wiki": true,
"homepage": null,
"languages": {
"Rust": 85619,
"Shell": 1912,
"JavaScript": 101187
},
"pushed_at": "2026-07-27T10:16:23Z",
"created_at": "2024-04-03T08:40:33Z",
"owner_type": "Organization",
"updated_at": "2026-07-15T18:57:46Z",
"description": "libdatadog bindings for NodeJS",
"is_archived": false,
"is_disabled": false,
"license_spdx": "Apache-2.0",
"default_branch": "main",
"license_spdx_raw": "Apache-2.0",
"primary_language": "JavaScript",
"significant_languages": [
"JavaScript",
"Rust"
]
},
"owner": {
"blog": "https://datadoghq.com",
"name": "Datadog, Inc.",
"type": "Organization",
"login": "DataDog",
"company": null,
"location": "New York",
"followers": 3237,
"avatar_url": "https://avatars.githubusercontent.com/u/365230?v=4",
"created_at": "2010-08-15T19:56:37Z",
"is_verified": null,
"public_repos": 1196,
"account_age_days": 5824
},
"license": {
"state": "standard",
"spdx_id": "Apache-2.0",
"raw_spdx": "Apache-2.0",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "v0.18.1",
"kind": "patch",
"published_at": "2026-07-20T18:56:07Z"
},
{
"tag": "v0.18.0",
"kind": "minor",
"published_at": "2026-07-17T17:34:40Z"
},
{
"tag": "v0.17.0",
"kind": "minor",
"published_at": "2026-07-16T14:06:02Z"
},
{
"tag": "v0.16.0",
"kind": "minor",
"published_at": "2026-07-11T00:21:46Z"
},
{
"tag": "v0.15.0",
"kind": "minor",
"published_at": "2026-07-10T14:29:17Z"
},
{
"tag": "v0.14.0",
"kind": "minor",
"published_at": "2026-07-09T20:38:47Z"
},
{
"tag": "v0.13.0",
"kind": "minor",
"published_at": "2026-07-08T16:42:14Z"
},
{
"tag": "v0.12.2",
"kind": "patch",
"published_at": "2026-07-06T17:09:14Z"
},
{
"tag": "v0.12.1",
"kind": "patch",
"published_at": "2026-07-02T15:29:19Z"
},
{
"tag": "v0.12.0",
"kind": "minor",
"published_at": "2026-07-02T14:33:44Z"
},
{
"tag": "v0.11.0",
"kind": "minor",
"published_at": "2026-07-01T18:45:44Z"
},
{
"tag": "v0.10.0",
"kind": "minor",
"published_at": "2026-06-22T19:18:51Z"
},
{
"tag": "v0.9.4",
"kind": "patch",
"published_at": "2026-06-04T18:20:55Z"
},
{
"tag": "v0.9.3",
"kind": "patch",
"published_at": "2026-04-08T18:41:25Z"
},
{
"tag": "v0.9.2",
"kind": "patch",
"published_at": "2026-03-24T17:10:48Z"
},
{
"tag": "v0.9.0",
"kind": "minor",
"published_at": "2026-03-20T15:03:06Z"
},
{
"tag": "v0.8.2",
"kind": "patch",
"published_at": "2026-03-03T14:38:11Z"
},
{
"tag": "v0.8.1",
"kind": "patch",
"published_at": "2026-02-12T22:33:49Z"
},
{
"tag": "v0.8.0",
"kind": "minor",
"published_at": "2026-02-12T14:20:15Z"
},
{
"tag": "v0.7.0",
"kind": "minor",
"published_at": "2025-06-13T10:43:38Z"
},
{
"tag": "v0.6.0",
"kind": "minor",
"published_at": "2025-06-03T20:31:20Z"
},
{
"tag": "v0.5.1",
"kind": "patch",
"published_at": "2025-04-10T08:02:23Z"
},
{
"tag": "v0.5.0",
"kind": "minor",
"published_at": "2025-02-18T14:29:57Z"
},
{
"tag": "v0.4.0",
"kind": "minor",
"published_at": "2025-01-16T11:07:16Z"
},
{
"tag": "v0.3.0",
"kind": "minor",
"published_at": "2024-12-17T16:19:51Z"
},
{
"tag": "v0.2.2",
"kind": "patch",
"published_at": "2024-11-13T16:48:07Z"
},
{
"tag": "v0.2.1",
"kind": "patch",
"published_at": "2024-11-12T21:59:12Z"
},
{
"tag": "v0.1.6",
"kind": "patch",
"published_at": "2024-09-19T14:12:44Z"
},
{
"tag": "v0.1.4",
"kind": "patch",
"published_at": "2024-09-04T14:31:04Z"
},
{
"tag": "v0.1.1",
"kind": "patch",
"published_at": "2024-09-03T20:34:40Z"
}
],
"recent_commits": [
{
"oid": "d99947f6c5ea698d2a5996d3a61c62b13ba5eef7",
"body": "* fix(pipeline): set OTLP instrumentation scope\n\n* fix(pipeline): consume ported libdatadog scope patch\n\nUpdate the temporary libdatadog dependency to the PR head ported onto main. Current libdatadog also changed the stats concentrator API, so adapt the WASM stats wrapper to pass the new cardinality limit argument and encode unobfuscated buckets from FlushResult.\n\n* fix(pipeline): return collapsed stats count from flushStats\n\n* test(pipeline): widen stats overflow regression",
"is_bot": false,
"headline": "fix(pipeline): set OTLP instrumentation scope (#173)",
"author_name": "Bryan English",
"author_login": "bengl",
"committed_at": "2026-07-15T18:57:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0e969928e14f244faecc5ae740beafb59c2cfdcd",
"body": "Two native-spans fixes for the dd-trace-js native pipeline:\n\n- Transport: parse the Rust-rendered HTTP/1.1 request head into {method, path, headers} for http.request() instead of injecting it via the Node-internal req._header, which Bun's node:http ignores (trace requests went out as POST / and were\n[…]\ndd_common::parse_uri (like the trace exporter) so a unix:// agent URL's socket path is hex-encoded into the URI authority and the request routes over the socket, instead of never reaching a UDS agent.",
"is_bot": false,
"headline": "fix(native-spans): Bun-compatible transport head + UDS client stats",
"author_name": "Bryan English",
"author_login": "bengl",
"committed_at": "2026-07-10T21:07:03Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "fefe1362b1289600a62237c8f87941410642802e",
"body": "…stats slash, IPv6 host\n\nFour native-spans compatibility fixes for the dd-trace-js native (WASM) pipeline:\n\n- Stamp span-meta language as javascript (not the nodejs tracer lang), matching the JS pipeline and system-tests test_meta_language_tag.\n- Lazy-require node:http/node:https/node:fs in the tran\n[…]\n.6/stats URL (was //v0.6/stats, which the agent/stats tooling missed), fixing client-stats delivery.\n- Strip IPv6 brackets from the transport connect host ([::1] -> ::1) so traces reach an IPv6 agent.",
"is_bot": false,
"headline": "fix(native-spans): span-meta language, lazy transport requires, v0.6/…",
"author_name": "Bryan English",
"author_login": "bengl",
"committed_at": "2026-07-10T14:15:23Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "35702fc5706c9a6f4d90e9e6f63e825282579f9b",
"body": "…s (#166)\n\nlibdatadog's automatic entity detection (libdd-common's entity_id module) is\ngated #[cfg(unix)] and therefore inert on the wasm32 target, and DD_EXTERNAL_ENV\nis unreachable from wasm, so the native exporter never sent Datadog-Container-ID\n/ Datadog-Entity-ID / Datadog-External-Env. Node c\n[…]\nin-<cgroup_inode>). The empty datadog-container-id libdatadog emits on wasm is\nreplaced rather than duplicated, and external-env is rejected if it carries\nCR/LF or non-ASCII to avoid header injection.",
"is_bot": false,
"headline": "feat(capabilities): inject container-id/entity-id/external-env header…",
"author_name": "Bryan English",
"author_login": "bengl",
"committed_at": "2026-07-09T19:38:31Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "29dea8b4628bb18f8bdd785242606578629cad35",
"body": "Add a `client_computed_stats` parameter to `WasmSpanState::new` and set\n`builder.set_client_computed_stats()` so the exporter sends the\n`Datadog-Client-Computed-Stats: true` header. The tracer needs this when it\nruns in APM-standalone (apmTracingEnabled=false) so the agent skips its own APM\nstats/sa\n[…]\n already supports the flag; the WASM binding\njust never called it. Adds pipeline tests asserting the header is present when\nclient_computed_stats OR stats_enabled is set, and absent when both are off.",
"is_bot": false,
"headline": "feat(pipeline): send Datadog-Client-Computed-Stats when enabled (#164)",
"author_name": "Bryan English",
"author_login": "bengl",
"committed_at": "2026-07-08T16:00:51Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "e97ba3e2c46730a928fc9007c92e8bd102b63219",
"body": "prepareChunk overwrote the single prepared chunk on each call, so a flush\ncarrying spans from multiple traces could only send the last one. Callers\nworked around that by passing every span to one prepareChunk, which lumps\ndistinct trace_ids into a single chunk: flush_chunk then treats them as one\nse\n[…]\nt. The exporter\ncalls prepareChunk once per trace, so each chunk is one segment with correct\nper-trace tags. send_trace_chunks_async already accepts multiple chunks, so the\nrequest shape is unchanged.",
"is_bot": false,
"headline": "fix(pipeline): stage one chunk per trace in a single request (#159)",
"author_name": "Bryan English",
"author_login": "bengl",
"committed_at": "2026-07-06T16:55:41Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "2662b918d665849387b4564ab918b7fcdc1fffe9",
"body": "Co-authored-by: gh-worker-campaigns-3e9aa4[bot] <244854796+gh-worker-campaigns-3e9aa4[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "ADMS: vuln patch: brace-expansion, flatted, picomatch (#133)",
"author_name": "gh-worker-campaigns-3e9aa4[bot]",
"author_login": "gh-worker-campaigns-3e9aa4[bot]",
"committed_at": "2026-07-03T07:47:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "29b267630da08ba48c8be8c684e98363f2cf0802",
"body": "…(#141)\n\nBumps [express](https://github.com/expressjs/express) from 4.22.1 to 5.2.1.\n- [Release notes](https://github.com/expressjs/express/releases)\n- [Changelog](https://github.com/expressjs/express/blob/master/History.md)\n- [Commits](https://github.com/expressjs/express/compare/v4.22.1...v5.2.1)\n\n[…]\nirect:production\n update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump express from 4.22.1 to 5.2.1 in /test/crashtracker …",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-03T07:44:24Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "ae5923cdf342c6f9d6b4f954b92c606d665db902",
"body": "… 3 updates (#142)\n\nBumps the minor-updates group with 3 updates in the / directory: [eslint](https://github.com/eslint/eslint), [eslint-plugin-import-x](https://github.com/un-ts/eslint-plugin-import-x) and [globals](https://github.com/sindresorhus/globals).\n\n\nUpdates `eslint` from 10.0.3 to 10.6.0\n\n[…]\nrsion-update:semver-minor\n dependency-group: minor-updates\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps-dev): bump the minor-updates group across 1 directory with…",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-02T15:56:43Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "1c93727fc98fa400c61f5ce7430a4b771e3e049b",
"body": "Bumps [libdd-crashtracker](https://github.com/DataDog/libdatadog) from v35.0.0 to v37.0.0.\n- [Release notes](https://github.com/DataDog/libdatadog/releases)\n- [Commits](https://github.com/DataDog/libdatadog/compare/aa78483fba211c72ca3759c76318895f45e0184b...86b7f5700d3db4e58076794b5e8073a40d780083)\n\n[…]\n80bd9eb9e91f41566ba5b9\n dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump libdd-crashtracker from v35.0.0 to v37.0.0 (#147)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-02T15:54:04Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "bf9865db5c921ad17decf1005142f59a8558f8a6",
"body": "…th 3 updates (#139)\n\nBumps the gh-actions-packages group with 3 updates in the / directory: [actions/checkout](https://github.com/actions/checkout), [actions/setup-node](https://github.com/actions/setup-node) and [DataDog/dd-octo-sts-action](https://github.com/datadog/dd-octo-sts-action).\n\n\nUpdates\n[…]\nupdate:semver-patch\n dependency-group: gh-actions-packages\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump the gh-actions-packages group across 1 directory wi…",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-02T15:53:04Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "e83305e4b98864b73e646480c59a72b98e48aeae",
"body": "The TraceExporterBuilder set url/service/env/hostname/app_version but\nnever called set_runtime_id, so at build_async the builder fell back to\nUuid::new_v4(). That gave the trace payload a random runtime-id that\nmismatched the stats payload (correlation bug) and called getrandom,\nwhich traps on wasm runtimes without a configured entropy source\n(surfaced as native-spans System Tests / E2E failures). Pass through the\nruntime-id the caller already provides.",
"is_bot": false,
"headline": "fix(pipeline): set exporter runtime-id from the tracer (#157)",
"author_name": "Bryan English",
"author_login": "bengl",
"committed_at": "2026-07-02T15:13:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e23ce1a292f66aea967714adbeb138fb5b59e1f1",
"body": "* Expose ThreadLocalMetadata via process_discovery\n\nReplaces the flat `threadlocal_attribute_keys` field on the napi\nTracerMetadata with a `threadlocal_metadata` substruct mirroring the\nlibdatadog Rust API. Lets callers set the schema-version string and\nextra process-context attributes (strings and \n[…]\neaking change to the process_discovery.TracerMetadata\nconstructor. Downstream (dd-trace-js) will need to migrate from passing\nthreadlocalAttributeKeys directly to passing a threadlocalMetadata\nobject.",
"is_bot": false,
"headline": "feat!: expose ThreadLocalMetadata via process_discovery (#153)",
"author_name": "Attila Szegedi",
"author_login": "szegedi",
"committed_at": "2026-07-02T13:34:11Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "18b6f3f0aaf23ce192157e4921b765d1dcdc8088",
"body": "…sions (#150)\n\nThe build-test-wasm composite action still pinned the old Node.js 20 era\nactions/* versions while the rest of the repo had moved on. Bring it in\nline: actions/checkout v6.0.2, actions/download-artifact v8.0.1,\nactions/setup-node v6.3.0, actions/upload-artifact v7.0.1.",
"is_bot": false,
"headline": "PROF-15218: Update build-test-wasm composite action to Node.js 24 ver…",
"author_name": "Attila Szegedi",
"author_login": "szegedi",
"committed_at": "2026-07-02T07:29:54Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4392a3e9f24c13ae2f3107d5eb22405c2ea6e08e",
"body": "…er) (#151)\n\n* build: set up cargo workspace and wasm/native build tooling\n\nEstablish the Rust workspace, pin the toolchain, and add the npm scripts\nand shell tooling that build the wasm modules and the native (napi)\naddons and run their test suites.\n\nCo-authored-by: Jules Wiriath <jules.wiriath@dat\n[…]\nuthored-by: Jules Wiriath <jules.wiriath@datadoghq.com>\nCo-authored-by: paullegranddc <paul.legranddescloizeaux@datadoghq.com>\nCo-authored-by: Gyuheon Oh <102937919+gyuheon0h@users.noreply.github.com>",
"is_bot": false,
"headline": "feat: native-spans wasm support (pipeline, capabilities, trace export…",
"author_name": "Bryan English",
"author_login": "bengl",
"committed_at": "2026-07-01T17:37:38Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a0629144b61cc701206800d88db5a4408a4d47d8",
"body": "* chore: enable dependabot for npm and cargo dependencies\n\n* chore: add lockfile and dependabot entry for test/crashtracker",
"is_bot": false,
"headline": "chore: enable dependabot for npm and cargo dependencies (#138)",
"author_name": "Attila Szegedi",
"author_login": "szegedi",
"committed_at": "2026-06-22T19:19:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "333217d72e71629b6b940302e08257ec0c21c66a",
"body": "The release workflow's tag push was rejected by the tag ruleset because\nactions/checkout persisted GITHUB_TOKEN credentials, which took precedence\nover the dd-octo-sts token in the explicit push URL. Drop the persisted\ncredentials and downgrade contents permission to read.\n\nAlso add the dd-octo-sts policy file.",
"is_bot": false,
"headline": "fix: release tag push (#137)",
"author_name": "Attila Szegedi",
"author_login": "szegedi",
"committed_at": "2026-06-22T15:52:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2453a51db8ca040dff1e3055cb40144e556119cd",
"body": "Add the optional `threadlocal_attribute_keys: Option<Vec<String>>`\nfield to the NAPI `TracerMetadata` and forward it to libdatadog's\n`tracer_metadata::TracerMetadata`. When set, libdatadog's\n`to_otel_process_ctx` injects:\n\n threadlocal.schema_version = \"tlsdesc_v1_dev\"\n threadlocal.attribute_\n[…]\nhe crashtracker crate in this workspace) and\nenable the feature.\n\nExisting 8-arg constructor calls keep working because the new\nfield is optional. The test exercises both the absent and present\nforms.",
"is_bot": false,
"headline": "process_discovery: expose threadlocal_attribute_keys (#135)",
"author_name": "Attila Szegedi",
"author_login": "szegedi",
"committed_at": "2026-06-22T14:59:17Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "0c3f048d653bbbabd07c671ed53b242f610bda59",
"body": "Rename .disabled configs back and add cooldown: default-days: 2\n\nSigned-off-by: Moe Zein <moe.zein@datadoghq.com>",
"is_bot": false,
"headline": "chore: re-enable dependabot with 2-day cooldown (#118)",
"author_name": "moezein0",
"author_login": "moezein0",
"committed_at": "2026-06-22T13:53:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2896b1d7f2d90e141ceab665491657c573af1f19",
"body": "* Bump to libdatadog v35 crashtracker\n\n* enable wasm pack bulk memory ops",
"is_bot": false,
"headline": "chore(deps): bump to libdatadog v35 crashtracker (#130)",
"author_name": "Gyuheon Oh",
"author_login": "gyuheon0h",
"committed_at": "2026-06-04T18:11:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "08acdc17ac7b3581d266ec714fe5b9c700f3d93e",
"body": "…#115)\n\nSigned-off-by: Moe Zein <moe.zein@datadoghq.com>",
"is_bot": false,
"headline": "chore: disable automated dependency updater config [incident-51602] (…",
"author_name": "moezein0",
"author_login": "moezein0",
"committed_at": "2026-03-25T14:36:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d7b1b6b49d419ce0d1e8506ed9d442c3b8158c58",
"body": "…(#110)\n\ndownload-artifact v8 no longer extracts artifacts into an\nartifact-named subdirectory by default, causing the publish job to\nfail with \"cannot access './prebuilds'\". Explicitly set name and path\nto restore the expected behavior.\n\nCo-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>\nCo-authored-by: Attila Szegedi <szegedi@users.noreply.github.com>",
"is_bot": false,
"headline": "fix(ci): set explicit path for download-artifact in release workflow …",
"author_name": "Thomas Hunter II",
"author_login": "tlhunter",
"committed_at": "2026-03-24T14:49:26Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "ac523ac55ac18f4cbdcc5a7a4f05b624c6c538b4",
"body": "…(#103)\n\nBumps the gh-actions-packages group with 2 updates in the / directory: [actions/setup-node](https://github.com/actions/setup-node) and [actions/download-artifact](https://github.com/actions/download-artifact).\n\n\nUpdates `actions/setup-node` from 6.2.0 to 6.3.0\n- [Release notes](https://gith\n[…]\nupdate:semver-patch\n dependency-group: gh-actions-packages\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Bump the gh-actions-packages group across 1 directory with 2 updates …",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-03-24T13:59:56Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "5c2292db48ef70ea605684b95cced36b81e5f8d5",
"body": null,
"is_bot": false,
"headline": "chore(ci): switch prebuildify back to main (#107)",
"author_name": "Thomas Hunter II",
"author_login": "tlhunter",
"committed_at": "2026-03-23T19:51:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "45cefe4080b9f27a0c3083d68c74626631d63805",
"body": "…etadata (#104)",
"is_bot": false,
"headline": "feat(process-discovery): add process_tags and container_id to TracerM…",
"author_name": "Thomas Hunter II",
"author_login": "tlhunter",
"committed_at": "2026-03-19T18:20:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "08eb48eaa6bdf92ef401211242a6b7295ca84789",
"body": null,
"is_bot": false,
"headline": "demangle crashes stack traces (#101)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2026-03-16T14:27:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "549a68e8f8ae9cdf99f88d561329b91bb145ff5e",
"body": "* Bump libdatadog to v29\n\n* trigger CI\n\n* trigger CI\n\n* Trigger CI\n\n* Trigger CI\n\n* Trigger CI\n\n* Trigger CI",
"is_bot": false,
"headline": "Bump libdatadog to v29 and use remote symbol resolution (#100)",
"author_name": "Gyuheon Oh",
"author_login": "gyuheon0h",
"committed_at": "2026-03-13T14:38:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c35f07aa7b9febad77730a8533112d0315001ee2",
"body": "Bumps the gh-actions-packages group with 3 updates: [actions/checkout](https://github.com/actions/checkout), [actions/download-artifact](https://github.com/actions/download-artifact) and [actions/setup-node](https://github.com/actions/setup-node).\n\n\nUpdates `actions/checkout` from 4.3.1 to 6.0.2\n- [\n[…]\nupdate:semver-major\n dependency-group: gh-actions-packages\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Bump the gh-actions-packages group with 3 updates (#86)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-03-04T20:04:30Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "83fd325000dbcabc2b02e1204f1761a049d954b8",
"body": "…sts (#83)\n\n- Increase crashtracker handler timeout from 3s to 15s and crash-report\n wait timeout from 10s to 20s to reduce flakiness in CI\n- Guard stdout/stderr log file reads in the timeout handler with\n existence checks to avoid masking the real timeout error\n- Add error and close handlers to child processes so tests fail with a\n clear message instead of hanging indefinitely\n- Add console.log labels to each test for easier debugging",
"is_bot": false,
"headline": "test(crashtracker): improve reliability and debuggability of crash te…",
"author_name": "Thomas Watson",
"author_login": "watson",
"committed_at": "2026-03-03T20:12:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8ea1cff7eeda7d0578e00bcefdd4fd201f3be92a",
"body": "Set up ESLint with @eslint/js, @stylistic/eslint-plugin, eslint-plugin-n,\neslint-plugin-unicorn, and eslint-plugin-import-x. Add an eslint.config.js\nwith project-specific overrides (CJS mode, Node.js >=18, 1tbs brace style,\nkebab-case filenames, prefer-const, import ordering, etc.) and a lint CI\njob\n[…]\n process-discovery.js)\n- Replace .find() equality checks with .includes()\n- Remove unused catch bindings\n- Use top-level await where applicable\n- Auto-install test subdirectory dependencies in test.sh",
"is_bot": false,
"headline": "chore: add ESLint linting to the project (#84)",
"author_name": "Thomas Watson",
"author_login": "watson",
"committed_at": "2026-03-03T17:12:17Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "673d8540ff80f3930837074ea06d202d051a4f19",
"body": "The crashtracker test uses yarn (yarn.lock already exists),\nso the npm package-lock.json is unnecessary.",
"is_bot": false,
"headline": "chore(test): remove npm lockfile from crashtracker test (#90)",
"author_name": "Thomas Watson",
"author_login": "watson",
"committed_at": "2026-03-03T16:17:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "726cd26420c3dc1aa58020635294286b1ea8f55e",
"body": "Update min-node-version in the build and release CI workflows.",
"is_bot": false,
"headline": "chore: set minimum Node.js version to 18 (#85)",
"author_name": "Thomas Watson",
"author_login": "watson",
"committed_at": "2026-03-03T15:06:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e26b6562def28365f4fe551d7c7b81fdbd3cc73b",
"body": "…ping (#82)\n\nPin all GitHub Actions to full commit SHAs instead of version tags for\nsupply-chain safety. Add inline comments with the resolved version\n(e.g. v4.3.1). Add Dependabot for github-actions (weekly), with a 5-day\ncooldown (excluding @datadog/*) and a single grouped PR for action updates.",
"is_bot": false,
"headline": "chore(ci): pin actions to SHAs, add Dependabot with cooldown and grou…",
"author_name": "Thomas Watson",
"author_login": "watson",
"committed_at": "2026-03-03T13:52:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2c55c22890b5b9ea38bd5457c3a69f8615bdb686",
"body": "When CC is set (e.g. ccache cc), the wasm32 C/C++ build can use Apple\nClang, which does not support wasm32-unknown-unknown, so the\ndatadog-js-zstd WASM build failed. Set CC_wasm32_unknown_unknown and\nCXX_wasm32_unknown_unknown to Homebrew's clang so crates like zstd-sys\nalways use a wasm32-capable compiler.\n\nAdd DEVELOPMENT.md with Rust/rustup, macOS LLVM, and yarn setup steps,\nand move the build/test notes from README into DEVELOPMENT.md.",
"is_bot": false,
"headline": "fix(build): use Homebrew clang for wasm32 C build on macOS (#77)",
"author_name": "Thomas Watson",
"author_login": "watson",
"committed_at": "2026-03-03T12:11:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1c0d40b2b7039411c3689c198d1b85ffea3c7814",
"body": "Call findWASM only when find() returns no native .node, so we skip\nunnecessary prebuilds readdir when a native build is available.",
"is_bot": false,
"headline": "perf(load): defer findWASM until native binary is missing (#78)",
"author_name": "Thomas Watson",
"author_login": "watson",
"committed_at": "2026-03-03T10:25:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4398e0d4b0f4082e7ee437ca0b6e60169e824d0e",
"body": "Replace the Node.js test runner (test.js) with scripts/test.sh so\ntests are discovered and run from bash. The test script runs top-level\ntest/*.js files and index.js in test subdirectories, skipping wasm.",
"is_bot": false,
"headline": "refactor(test): run tests via shell script instead of test.js (#79)",
"author_name": "Thomas Watson",
"author_login": "watson",
"committed_at": "2026-03-03T10:19:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e28d6b3e73f919c03447d5cd7e87e62ea34908ac",
"body": null,
"is_bot": false,
"headline": "Fix an unpleasant typo (#69)",
"author_name": "Attila Szegedi",
"author_login": "szegedi",
"committed_at": "2026-03-03T10:13:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ebcf8e0edcad230c67b628a22942c8305f1977c3",
"body": "* Add unhandled exception libdatadog binding\n\n* Use process.on() in the test\n\n* uncaughtException -> uncaughtExceptionMonitor\n\n* Handle unhandled promise rejections and add test scenarios\n\n* We only need uncaughtExceptionMonitor\n\n* Clean test cases\n\n* Assert library",
"is_bot": false,
"headline": "feat(crashtracking): add unhandled exception libdatadog binding (#73)",
"author_name": "Gyuheon Oh",
"author_login": "gyuheon0h",
"committed_at": "2026-03-02T16:17:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4a8ecc28ade0f800d1ec174bffeda92b835b6e0d",
"body": "* bump libdd-crashtracker to v28\n\n* v28.0.1",
"is_bot": false,
"headline": "chore(crashtracking): bump libdd-crashtracker to v28.0.1 (#72)",
"author_name": "Gyuheon Oh",
"author_login": "gyuheon0h",
"committed_at": "2026-02-25T16:16:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "07d525919d89ffefcda890b509abea9668a0c226",
"body": null,
"is_bot": false,
"headline": "Bump libdd-crashtracker to v27.0.0 (#66)",
"author_name": "Gyuheon Oh",
"author_login": "gyuheon0h",
"committed_at": "2026-02-12T19:14:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f8b339bc16c9040c9a1a8ca684bf71e4ad8f7b26",
"body": null,
"is_bot": false,
"headline": "Enable releasing through OIDC (#65)",
"author_name": "Attila Szegedi",
"author_login": "szegedi",
"committed_at": "2026-02-12T17:19:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4f169669b813bc73ca544fcff84d9d80c8da4d13",
"body": "* Add CODEOWNERS, with dd-trace-js and libdatadog teams",
"is_bot": false,
"headline": "Add CODEOWNERS (#64)",
"author_name": "Attila Szegedi",
"author_login": "szegedi",
"committed_at": "2026-02-12T17:19:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a99d229c751aa88ef81c5c45578f273dc6bef30c",
"body": "* Align with how library filenames are generated in Cargo 1.79+\n\n* Unrelated fix that makes our tests fail",
"is_bot": false,
"headline": "Align with how library filenames are generated in Cargo 1.79+ (#63)",
"author_name": "Attila Szegedi",
"author_login": "szegedi",
"committed_at": "2026-02-12T13:56:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b9305f5b2baf4ba3b3d462e983e5949fb6bd97d3",
"body": "* Upgrade to v26 and fix compat issues + serialization workaround\n\n* Serde + napi demo\n\n* remove demo code; keep commit for history\n\n* clean up\n\n* members being weird\n\n* Remove crypto init and make test resilient\n\n* Include pre-test script in build.yml\n\nAdd pre-test script to build workflow for artifact handling\n\n* Remove crypto init\n\n* Revert build yml file",
"is_bot": false,
"headline": "[crashtracking]: upgrade libdatadog for crashtracking to 26.0.0 (#61)",
"author_name": "Gyuheon Oh",
"author_login": "gyuheon0h",
"committed_at": "2026-02-05T15:56:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bd08cd11e4fffd7d894aac6b56aa56dcb09daede",
"body": null,
"is_bot": false,
"headline": "Remove unused crates (#58)",
"author_name": "Attila Szegedi",
"author_login": "szegedi",
"committed_at": "2026-02-05T03:28:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "61df46ef964b4926a36bfdb8570f46587c90615b",
"body": null,
"is_bot": false,
"headline": "deps(crashtracker) Update libdatadog for crashtracker to 16.0.3 (#54)",
"author_name": "Attila Szegedi",
"author_login": "szegedi",
"committed_at": "2025-06-13T09:26:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a7b36c913f4fa48c19d46a488a4e46c153f5d4b4",
"body": null,
"is_bot": false,
"headline": "feat: add bindings for process/service discovery (#53)",
"author_name": "Damien Mehala",
"author_login": "dmehala",
"committed_at": "2025-06-11T19:30:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "83baa89ce64a5b4bdc3fe877ed460401ccd294c9",
"body": null,
"is_bot": false,
"headline": "deps(library_config): bump to v18.1.0 (#51)",
"author_name": "Damien Mehala",
"author_login": "dmehala",
"committed_at": "2025-06-02T11:38:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7b2798cf9270b06a5b6c4348c3a668534bc05da8",
"body": "* Handle wasm-pack's dash-to-underscore filename transformation\n\n* Add a crate for wasm zstd implementation\n\n* Only run tests for a single crate\n\n* Fix WASM builds on macOS",
"is_bot": false,
"headline": "Add a crate for wasm zstd implementation (#52)",
"author_name": "Attila Szegedi",
"author_login": "szegedi",
"committed_at": "2025-05-28T14:18:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ab8cdc0ca52ccffa1e570c2f132c55a4334eb517",
"body": null,
"is_bot": false,
"headline": "upgrade(libdatadog-nodejs): Support library_config (#49)",
"author_name": "Baptiste Foy",
"author_login": "BaptisteFoy",
"committed_at": "2025-02-18T14:11:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "de9557133f1c198218ab194faa3698f3f73b1a94",
"body": "…ion (#45)",
"is_bot": false,
"headline": "Add APIs for marking the crash as happened during profiler serializat…",
"author_name": "Attila Szegedi",
"author_login": "szegedi",
"committed_at": "2025-01-14T16:28:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "55dc3bc7844372cb6f2d4740adeb24da9f9f6fef",
"body": null,
"is_bot": false,
"headline": "update libdatadog to 14.3.1 (#42)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-12-17T15:52:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "763c4a19b1df72e2c95006f3dab56559c1e9607e",
"body": null,
"is_bot": false,
"headline": "fix release tag and environment (#39)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-11-12T19:26:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "97491c74ee5d4f24b112d4c685a0630695158b66",
"body": null,
"is_bot": false,
"headline": "update libdatadog to 14.1.0 (#38)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-11-12T16:50:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2bcf2eb037e504978577f4bff037bbb7c55649dc",
"body": null,
"is_bot": false,
"headline": "update crashtracker and use new init function (#36)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-11-11T22:25:08Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "787c8c5339e1353cba8438991ff97692bc7bbf0b",
"body": null,
"is_bot": false,
"headline": "fix minimum node version for release ci job (#32)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-09-18T11:24:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5ff0387750211196828148f66ad45af759bbc74a",
"body": null,
"is_bot": false,
"headline": "add crash report test for the receiver (#30)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-09-17T22:20:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cfe9709ed4c3d1f12b084c4a12125a004672c434",
"body": null,
"is_bot": false,
"headline": "fix concurrency deadlock in release job (#28)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-09-04T13:51:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ac0a33dc454e13c718576c623779ad65037f38d4",
"body": null,
"is_bot": false,
"headline": "fix invalid yaml for publish job permissions (#26)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-09-04T12:36:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "96d5bb1425c73e89411ed63a0c95ee3356d42eac",
"body": null,
"is_bot": false,
"headline": "add write permission to publish job for git tagging (#22)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-09-03T21:31:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0c81664fcb162cbca3f9fc0063bd14ccd8ea4e62",
"body": null,
"is_bot": false,
"headline": "add missing build step before release (#24)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-09-03T21:31:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9161340d1d029ac2241c7dd731460353492843b5",
"body": null,
"is_bot": false,
"headline": "add publish config to make package public (#20)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-09-03T20:14:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6dfdd9070a8200a7c2929aeef37c9530a08d5c06",
"body": null,
"is_bot": false,
"headline": "prepare package.json for eventual release (#14)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-09-03T19:15:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b695cdd91c6a68a9febc9641a6c43f4c3e9f2e9f",
"body": null,
"is_bot": false,
"headline": "redo the readme for the current code and scripts (#18)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-09-03T19:00:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9b925cd17fd121ed14b130325b415b97ca1ddeb2",
"body": null,
"is_bot": false,
"headline": "bump rust version + code cleanup (#17)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-09-03T13:55:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "eccd8834eaefc114806bc1268d48a70b13f5bb2a",
"body": "* add crashtracker\r\n\r\n* expose more methods and fix test\r\n\r\n* add build config to skip unsupported platforms\r\n\r\n* fix yaml\r\n\r\n* fix loading crashtracker\r\n\r\n* fix loader using libc outside of linux\r\n\r\n* fix loader not finding the prebuilds folder\r\n\r\n* change rust version to libdatadog version\r\n\r\n* ma\n[…]\np\r\n\r\n* simplify path handling\r\n\r\nCo-authored-by: Julio Gonzalez <107922352+hoolioh@users.noreply.github.com>\r\n\r\n---------\r\n\r\nCo-authored-by: Julio Gonzalez <107922352+hoolioh@users.noreply.github.com>",
"is_bot": false,
"headline": "add crashtracker (#15)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-09-03T13:03:19Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "98ac4934146f944d4df7aeb770a834d5184f8532",
"body": "* expose finding bindings and load externally\r\n\r\n* move error handling to the caller of the loader",
"is_bot": false,
"headline": "expose finding bindings and load externally (#12)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-09-02T14:33:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c3e98f4e1bf4ea3ff86765d269d0c342744e7417",
"body": "* add write permission to issues for package-size job\r\n\r\n* add write permission to pr for package-size job",
"is_bot": false,
"headline": "add write permission to issues for package-size job (#13)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-09-02T13:45:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "280e0e45f62a881ab5f2f280e6998fa3bb489ea1",
"body": null,
"is_bot": false,
"headline": "update package-size ci job to node 20 (#11)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-08-19T15:52:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "164152f94ca017670c4ffeae7fc6745a89853467",
"body": null,
"is_bot": false,
"headline": "fix loader and split tests (#10)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-08-16T15:20:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c0dcf075cae710fc4e56377f431494ba8cb7b001",
"body": "* restructure project as multiple crates\r\n\r\n* simplify npm scripts\r\n\r\n* fix typos\r\n\r\n* code cleanup\r\n\r\n* restore root functions since crates and now separated\r\n\r\n* add config.toml\r\n\r\n* switch to new prebuildify logic\r\n\r\n* make sure target folder exists\r\n\r\n* fix errors\r\n\r\n* enable cache\r\n\r\n* restructure project to output multiple artifacts\r\n\r\n* code cleanup\r\n\r\n* fix missing export\r\n\r\n* revert cache\r\n\r\n* code cleanup\r\n\r\n* remove slow to install and unneeded rust-docs component",
"is_bot": false,
"headline": "restructure project as multiple crates (#9)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-08-14T15:40:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "adff244374216a32c9b443319102f7e57b647486",
"body": "Add files needed to open source the repository",
"is_bot": false,
"headline": "Merge pull request #6 from DataDog/julio/make-repository-public",
"author_name": "Julio Gonzalez",
"author_login": "hoolioh",
"committed_at": "2024-04-24T07:41:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6c82f2acbfd33d24564d6def70272abe001df3cf",
"body": null,
"is_bot": false,
"headline": "Add files needed to make the repository publicly available.",
"author_name": "Julio Gonzalez",
"author_login": "hoolioh",
"committed_at": "2024-04-23T13:18:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bf8ad2d8f150b65eb416b67278b37ff7277c9ebc",
"body": null,
"is_bot": false,
"headline": "bump cargo lock (#5)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-04-20T03:49:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f97b8394086c83a3afa3b0996b4243376981d7a1",
"body": null,
"is_bot": false,
"headline": "add global export (#4)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-04-20T01:37:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "53f8922a61e677e3954aadc0f452d36c8ccf1442",
"body": "* move data-pipeline behind a cargo feature\r\n\r\n* only test trace exporter when available\r\n\r\n* always build to release folder\r\n\r\n* code cleanup",
"is_bot": false,
"headline": "move data-pipeline behind a cargo feature (#3)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-04-15T15:58:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d7ca82ff6d8888efca32c9b60c5f891b90bb32c2",
"body": "* add event collector and ci config\r\n\r\n* fix license\r\n\r\n* add package size action and update collector repo\r\n\r\n* fix test\r\n\r\n* run package size job after build workflow\r\n\r\n* add npmignore and ensure prebuilds are present for pkg size\r\n\r\n* PR review.\r\n\r\n* Isolate different entities in different modules.\r\n* Remove unused 'hello' function.\r\n\r\n* add register functions to individual modules\r\n\r\n---------\r\n\r\nCo-authored-by: Julio Gonzalez <julio.gonzalez@datadoghq.com>",
"is_bot": false,
"headline": "add event collector and ci config (#1)",
"author_name": "Roch Devost",
"author_login": "rochdev",
"committed_at": "2024-04-10T13:01:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2aa4da6541ba6883493d9c3c9b4baeee0fae4ffe",
"body": "* Implement bindings for data-pipeline crate.\n* Use data-pipeline crate as git dependency.\n* Add release profile to reduce binary size.",
"is_bot": false,
"headline": "Initial upload.",
"author_name": "Julio Gonzalez",
"author_login": "hoolioh",
"committed_at": "2024-04-03T11:25:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "630908172e4cfd29421219039725d02e483e931c",
"body": null,
"is_bot": false,
"headline": "Initial commit",
"author_name": "Julio Gonzalez",
"author_login": "hoolioh",
"committed_at": "2024-04-03T08:40:34Z",
"body_truncated": false,
"is_coding_agent": false
}
],
"releases_count": 30,
"commits_last_year": 45,
"latest_release_at": "2026-07-20T18:56:07Z",
"latest_release_tag": "v0.18.1",
"releases_from_tags": true,
"days_since_last_push": 0,
"active_weeks_last_year": 12,
"days_since_latest_release": 6,
"mean_days_between_releases": 2
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": true,
"has_contributing": true,
"health_percentage": 62,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"ecosystem": {
"packages": [
{
"name": "@datadog/libdatadog",
"exists": true,
"license": "Apache-2.0",
"keywords": [],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@datadog/libdatadog",
"is_deprecated": false,
"latest_version": "0.18.1",
"repository_url": "https://github.com/DataDog/libdatadog-nodejs",
"versions_count": 27,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 33286672,
"first_published_at": "2024-09-03T20:35:03.131000Z",
"latest_published_at": "2026-07-20T19:06:20.702000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 6
}
]
},
"popularity": {
"forks": 1,
"stars": 2,
"watchers": 4,
"fork_history": {
"days": [
{
"date": "2025-02-15",
"count": 1
}
],
"complete": true,
"collected": 1,
"total_forks": 1
},
"star_history": null,
"open_issues_and_prs": 29
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [],
"has_llms_txt": false,
"has_dockerfile": false,
"has_mcp_signal": false,
"bootstrap_files": [],
"api_schema_files": [],
"has_devcontainer": false,
"typecheck_configs": [],
"toolchain_manifests": [
"Cargo.toml",
"crates/capabilities/Cargo.toml",
"crates/crashtracker/Cargo.toml",
"crates/datadog-js-zstd/Cargo.toml",
"crates/library_config/Cargo.toml",
"crates/pipeline/Cargo.toml",
"crates/process_discovery/Cargo.toml"
],
"largest_source_bytes": 47691,
"source_files_sampled": 35,
"oversized_source_files": 0,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"dependencies": {
"manifests": [
"Cargo.toml",
"package.json"
],
"advisories": {
"error": null,
"scope": "repository_graph",
"source": "osv",
"findings": [
{
"name": "brace-expansion",
"direct": false,
"version": "5.0.6",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-3jxr-9vmj-r5cp",
"GHSA-mh99-v99m-4gvg"
],
"fixed_version": "5.0.8",
"advisory_count": 2,
"oldest_advisory_days": 6
},
{
"name": "qs",
"direct": false,
"version": "6.14.2",
"severity": "moderate",
"ecosystem": "npm",
"cvss_score": 5.3,
"advisory_ids": [
"GHSA-q8mj-m7cp-5q26"
],
"fixed_version": "6.15.2",
"advisory_count": 1,
"oldest_advisory_days": 65
},
{
"name": "body-parser",
"direct": false,
"version": "1.20.4",
"severity": "low",
"ecosystem": "npm",
"cvss_score": 3.7,
"advisory_ids": [
"GHSA-v422-hmwv-36x6"
],
"fixed_version": "2.3.0",
"advisory_count": 1,
"oldest_advisory_days": 6
},
{
"name": "memmap2",
"direct": false,
"version": "0.9.10",
"severity": "unknown",
"ecosystem": "crates",
"cvss_score": null,
"advisory_ids": [
"RUSTSEC-2026-0186"
],
"fixed_version": "0.9.11",
"advisory_count": 1,
"oldest_advisory_days": 36
},
{
"name": "paste",
"direct": false,
"version": "1.0.15",
"severity": "unknown",
"ecosystem": "crates",
"cvss_score": null,
"advisory_ids": [
"RUSTSEC-2024-0436"
],
"fixed_version": null,
"advisory_count": 1,
"oldest_advisory_days": 657
}
],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {
"low": 1,
"high": 1,
"unknown": 2,
"moderate": 1
},
"advisory_count": 6,
"affected_count": 5,
"assessed_count": 551,
"malicious_count": 0,
"assessed_package": null,
"unassessed_count": 19,
"direct_affected_count": 0
},
"ecosystems": [
"crates",
"npm"
],
"dependencies": [],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "adler2",
"direct": false,
"version": "2.0.1",
"ecosystem": "crates"
},
{
"name": "aho-corasick",
"direct": false,
"version": "1.1.4",
"ecosystem": "crates"
},
{
"name": "allocator-api2",
"direct": false,
"version": "0.2.21",
"ecosystem": "crates"
},
{
"name": "android_system_properties",
"direct": false,
"version": "0.1.5",
"ecosystem": "crates"
},
{
"name": "anyhow",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "anyhow",
"direct": false,
"version": "1.0.103",
"ecosystem": "crates"
},
{
"name": "arc-swap",
"direct": false,
"version": "1.9.1",
"ecosystem": "crates"
},
{
"name": "async-trait",
"direct": false,
"version": "0.1.89",
"ecosystem": "crates"
},
{
"name": "atomic-waker",
"direct": false,
"version": "1.1.2",
"ecosystem": "crates"
},
{
"name": "autocfg",
"direct": false,
"version": "1.5.0",
"ecosystem": "crates"
},
{
"name": "aws-lc-rs",
"direct": false,
"version": "1.16.3",
"ecosystem": "crates"
},
{
"name": "aws-lc-sys",
"direct": false,
"version": "0.40.0",
"ecosystem": "crates"
},
{
"name": "base64",
"direct": false,
"version": "0.22.1",
"ecosystem": "crates"
},
{
"name": "bitflags",
"direct": false,
"version": "2.11.1",
"ecosystem": "crates"
},
{
"name": "blazesym",
"direct": false,
"version": "0.2.3",
"ecosystem": "crates"
},
{
"name": "block-buffer",
"direct": false,
"version": "0.10.4",
"ecosystem": "crates"
},
{
"name": "block2",
"direct": false,
"version": "0.6.2",
"ecosystem": "crates"
},
{
"name": "borrow-or-share",
"direct": false,
"version": "0.2.4",
"ecosystem": "crates"
},
{
"name": "bumpalo",
"direct": false,
"version": "3.20.2",
"ecosystem": "crates"
},
{
"name": "bytes",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "bytes",
"direct": false,
"version": "1.11.1",
"ecosystem": "crates"
},
{
"name": "cadence",
"direct": false,
"version": "1.8.0",
"ecosystem": "crates"
},
{
"name": "cast",
"direct": false,
"version": "0.3.0",
"ecosystem": "crates"
},
{
"name": "cc",
"direct": false,
"version": "1.2.61",
"ecosystem": "crates"
},
{
"name": "cesu8",
"direct": false,
"version": "1.1.0",
"ecosystem": "crates"
},
{
"name": "cfg-if",
"direct": false,
"version": "1.0.4",
"ecosystem": "crates"
},
{
"name": "cfg_aliases",
"direct": false,
"version": "0.2.1",
"ecosystem": "crates"
},
{
"name": "chrono",
"direct": false,
"version": "0.4.44",
"ecosystem": "crates"
},
{
"name": "cmake",
"direct": false,
"version": "0.1.58",
"ecosystem": "crates"
},
{
"name": "combine",
"direct": false,
"version": "4.6.7",
"ecosystem": "crates"
},
{
"name": "console_error_panic_hook",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "console_error_panic_hook",
"direct": false,
"version": "0.1.7",
"ecosystem": "crates"
},
{
"name": "const_format",
"direct": false,
"version": "0.2.36",
"ecosystem": "crates"
},
{
"name": "const_format_proc_macros",
"direct": false,
"version": "0.2.34",
"ecosystem": "crates"
},
{
"name": "convert_case",
"direct": false,
"version": "0.6.0",
"ecosystem": "crates"
},
{
"name": "core-foundation",
"direct": false,
"version": "0.10.1",
"ecosystem": "crates"
},
{
"name": "core-foundation-sys",
"direct": false,
"version": "0.8.7",
"ecosystem": "crates"
},
{
"name": "cpp_demangle",
"direct": false,
"version": "0.4.5",
"ecosystem": "crates"
},
{
"name": "cpp_demangle",
"direct": false,
"version": "0.5.1",
"ecosystem": "crates"
},
{
"name": "cpufeatures",
"direct": false,
"version": "0.2.17",
"ecosystem": "crates"
},
{
"name": "crossbeam-channel",
"direct": false,
"version": "0.5.15",
"ecosystem": "crates"
},
{
"name": "crossbeam-utils",
"direct": false,
"version": "0.8.21",
"ecosystem": "crates"
},
{
"name": "crypto-common",
"direct": false,
"version": "0.1.7",
"ecosystem": "crates"
},
{
"name": "ctor",
"direct": false,
"version": "0.2.9",
"ecosystem": "crates"
},
{
"name": "debugid",
"direct": false,
"version": "0.8.0",
"ecosystem": "crates"
},
{
"name": "digest",
"direct": false,
"version": "0.10.7",
"ecosystem": "crates"
},
{
"name": "dispatch2",
"direct": false,
"version": "0.3.1",
"ecosystem": "crates"
},
{
"name": "dunce",
"direct": false,
"version": "1.0.5",
"ecosystem": "crates"
},
{
"name": "dyn-clone",
"direct": false,
"version": "1.0.20",
"ecosystem": "crates"
},
{
"name": "either",
"direct": false,
"version": "1.15.0",
"ecosystem": "crates"
},
{
"name": "equivalent",
"direct": false,
"version": "1.0.2",
"ecosystem": "crates"
},
{
"name": "errno",
"direct": false,
"version": "0.3.14",
"ecosystem": "crates"
},
{
"name": "fallible-iterator",
"direct": false,
"version": "0.3.0",
"ecosystem": "crates"
},
{
"name": "find-msvc-tools",
"direct": false,
"version": "0.1.9",
"ecosystem": "crates"
},
{
"name": "fluent-uri",
"direct": false,
"version": "0.4.1",
"ecosystem": "crates"
},
{
"name": "foldhash",
"direct": false,
"version": "0.1.5",
"ecosystem": "crates"
},
{
"name": "fs_extra",
"direct": false,
"version": "1.3.0",
"ecosystem": "crates"
},
{
"name": "futures",
"direct": false,
"version": "0.3.32",
"ecosystem": "crates"
},
{
"name": "futures-channel",
"direct": false,
"version": "0.3.32",
"ecosystem": "crates"
},
{
"name": "futures-core",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "futures-core",
"direct": false,
"version": "0.3.32",
"ecosystem": "crates"
},
{
"name": "futures-executor",
"direct": false,
"version": "0.3.32",
"ecosystem": "crates"
},
{
"name": "futures-io",
"direct": false,
"version": "0.3.32",
"ecosystem": "crates"
},
{
"name": "futures-macro",
"direct": false,
"version": "0.3.32",
"ecosystem": "crates"
},
{
"name": "futures-sink",
"direct": false,
"version": "0.3.32",
"ecosystem": "crates"
},
{
"name": "futures-task",
"direct": false,
"version": "0.3.32",
"ecosystem": "crates"
},
{
"name": "futures-util",
"direct": false,
"version": "0.3.32",
"ecosystem": "crates"
},
{
"name": "generic-array",
"direct": false,
"version": "0.14.7",
"ecosystem": "crates"
},
{
"name": "getrandom",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "getrandom",
"direct": false,
"version": "0.2.17",
"ecosystem": "crates"
},
{
"name": "getrandom",
"direct": false,
"version": "0.3.4",
"ecosystem": "crates"
},
{
"name": "getrandom",
"direct": false,
"version": "0.4.2",
"ecosystem": "crates"
},
{
"name": "gimli",
"direct": false,
"version": "0.32.3",
"ecosystem": "crates"
},
{
"name": "hashbrown",
"direct": false,
"version": "0.15.5",
"ecosystem": "crates"
},
{
"name": "hashbrown",
"direct": false,
"version": "0.17.0",
"ecosystem": "crates"
},
{
"name": "heck",
"direct": false,
"version": "0.5.0",
"ecosystem": "crates"
},
{
"name": "hex",
"direct": false,
"version": "0.4.3",
"ecosystem": "crates"
},
{
"name": "http",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "http",
"direct": false,
"version": "1.4.0",
"ecosystem": "crates"
},
{
"name": "http-body",
"direct": false,
"version": "1.0.1",
"ecosystem": "crates"
},
{
"name": "http-body-util",
"direct": false,
"version": "0.1.3",
"ecosystem": "crates"
},
{
"name": "httparse",
"direct": false,
"version": "1.10.1",
"ecosystem": "crates"
},
{
"name": "hyper",
"direct": false,
"version": "1.9.0",
"ecosystem": "crates"
},
{
"name": "hyper-rustls",
"direct": false,
"version": "0.27.9",
"ecosystem": "crates"
},
{
"name": "hyper-util",
"direct": false,
"version": "0.1.20",
"ecosystem": "crates"
},
{
"name": "iana-time-zone",
"direct": false,
"version": "0.1.65",
"ecosystem": "crates"
},
{
"name": "iana-time-zone-haiku",
"direct": false,
"version": "0.1.2",
"ecosystem": "crates"
},
{
"name": "id-arena",
"direct": false,
"version": "2.3.0",
"ecosystem": "crates"
},
{
"name": "indexmap",
"direct": false,
"version": "2.14.0",
"ecosystem": "crates"
},
{
"name": "itertools",
"direct": false,
"version": "0.14.0",
"ecosystem": "crates"
},
{
"name": "itoa",
"direct": false,
"version": "1.0.18",
"ecosystem": "crates"
},
{
"name": "jni",
"direct": false,
"version": "0.21.1",
"ecosystem": "crates"
},
{
"name": "jni-sys",
"direct": false,
"version": "0.3.1",
"ecosystem": "crates"
},
{
"name": "jni-sys",
"direct": false,
"version": "0.4.1",
"ecosystem": "crates"
},
{
"name": "jni-sys-macros",
"direct": false,
"version": "0.4.1",
"ecosystem": "crates"
},
{
"name": "jobserver",
"direct": false,
"version": "0.1.34",
"ecosystem": "crates"
},
{
"name": "js-sys",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "js-sys",
"direct": false,
"version": "0.3.97",
"ecosystem": "crates"
},
{
"name": "konst",
"direct": false,
"version": "0.2.20",
"ecosystem": "crates"
},
{
"name": "konst_macro_rules",
"direct": false,
"version": "0.2.19",
"ecosystem": "crates"
},
{
"name": "leb128fmt",
"direct": false,
"version": "0.1.0",
"ecosystem": "crates"
},
{
"name": "libc",
"direct": false,
"version": "0.2.186",
"ecosystem": "crates"
},
{
"name": "libdd-capabilities",
"direct": false,
"version": "2.0.0",
"ecosystem": "crates"
},
{
"name": "libdd-capabilities",
"direct": false,
"version": "2.1.0",
"ecosystem": "crates"
},
{
"name": "libdd-capabilities-impl",
"direct": false,
"version": "2.0.0",
"ecosystem": "crates"
},
{
"name": "libdd-capabilities-impl",
"direct": false,
"version": "3.0.0",
"ecosystem": "crates"
},
{
"name": "libdd-common",
"direct": false,
"version": "5.0.0",
"ecosystem": "crates"
},
{
"name": "libdd-common",
"direct": false,
"version": "5.1.0",
"ecosystem": "crates"
},
{
"name": "libdd-crashtracker",
"direct": false,
"version": "1.0.0",
"ecosystem": "crates"
},
{
"name": "libdd-data-pipeline",
"direct": false,
"version": "7.0.0",
"ecosystem": "crates"
},
{
"name": "libdd-ddsketch",
"direct": false,
"version": "1.0.1",
"ecosystem": "crates"
},
{
"name": "libdd-ddsketch",
"direct": false,
"version": "1.1.0",
"ecosystem": "crates"
},
{
"name": "libdd-dogstatsd-client",
"direct": false,
"version": "4.0.0",
"ecosystem": "crates"
},
{
"name": "libdd-library-config",
"direct": false,
"version": "1.0.0",
"ecosystem": "crates"
},
{
"name": "libdd-library-config",
"direct": false,
"version": "2.0.0",
"ecosystem": "crates"
},
{
"name": "libdd-libunwind-sys",
"direct": false,
"version": "1.0.2",
"ecosystem": "crates"
},
{
"name": "libdd-shared-runtime",
"direct": false,
"version": "1.0.0",
"ecosystem": "crates"
},
{
"name": "libdd-shared-runtime",
"direct": false,
"version": "2.0.0",
"ecosystem": "crates"
},
{
"name": "libdd-telemetry",
"direct": false,
"version": "5.0.1",
"ecosystem": "crates"
},
{
"name": "libdd-tinybytes",
"direct": false,
"version": "1.1.1",
"ecosystem": "crates"
},
{
"name": "libdd-trace-normalization",
"direct": false,
"version": "3.0.0",
"ecosystem": "crates"
},
{
"name": "libdd-trace-obfuscation",
"direct": false,
"version": "5.0.0",
"ecosystem": "crates"
},
{
"name": "libdd-trace-protobuf",
"direct": false,
"version": "3.0.2",
"ecosystem": "crates"
},
{
"name": "libdd-trace-protobuf",
"direct": false,
"version": "4.0.0",
"ecosystem": "crates"
},
{
"name": "libdd-trace-stats",
"direct": false,
"version": "6.0.0",
"ecosystem": "crates"
},
{
"name": "libdd-trace-utils",
"direct": false,
"version": "9.0.0",
"ecosystem": "crates"
},
{
"name": "libloading",
"direct": false,
"version": "0.8.9",
"ecosystem": "crates"
},
{
"name": "libm",
"direct": false,
"version": "0.2.16",
"ecosystem": "crates"
},
{
"name": "linux-raw-sys",
"direct": false,
"version": "0.12.1",
"ecosystem": "crates"
},
{
"name": "log",
"direct": false,
"version": "0.4.29",
"ecosystem": "crates"
},
{
"name": "memchr",
"direct": false,
"version": "2.8.0",
"ecosystem": "crates"
},
{
"name": "memfd",
"direct": false,
"version": "0.6.5",
"ecosystem": "crates"
},
{
"name": "memmap2",
"direct": false,
"version": "0.9.10",
"ecosystem": "crates"
},
{
"name": "memoffset",
"direct": false,
"version": "0.9.1",
"ecosystem": "crates"
},
{
"name": "minicov",
"direct": false,
"version": "0.3.8",
"ecosystem": "crates"
},
{
"name": "miniz_oxide",
"direct": false,
"version": "0.9.1",
"ecosystem": "crates"
},
{
"name": "mio",
"direct": false,
"version": "1.2.0",
"ecosystem": "crates"
},
{
"name": "msvc-demangler",
"direct": false,
"version": "0.11.0",
"ecosystem": "crates"
},
{
"name": "napi",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "napi",
"direct": false,
"version": "2.16.17",
"ecosystem": "crates"
},
{
"name": "napi-derive",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "napi-derive",
"direct": false,
"version": "2.16.13",
"ecosystem": "crates"
},
{
"name": "napi-derive-backend",
"direct": false,
"version": "1.0.75",
"ecosystem": "crates"
},
{
"name": "napi-sys",
"direct": false,
"version": "2.4.0",
"ecosystem": "crates"
},
{
"name": "nix",
"direct": false,
"version": "0.29.0",
"ecosystem": "crates"
},
{
"name": "nix",
"direct": false,
"version": "0.30.1",
"ecosystem": "crates"
},
{
"name": "nu-ansi-term",
"direct": false,
"version": "0.50.3",
"ecosystem": "crates"
},
{
"name": "num-derive",
"direct": false,
"version": "0.4.2",
"ecosystem": "crates"
},
{
"name": "num-traits",
"direct": false,
"version": "0.2.19",
"ecosystem": "crates"
},
{
"name": "objc2",
"direct": false,
"version": "0.6.4",
"ecosystem": "crates"
},
{
"name": "objc2-cloud-kit",
"direct": false,
"version": "0.3.2",
"ecosystem": "crates"
},
{
"name": "objc2-core-data",
"direct": false,
"version": "0.3.2",
"ecosystem": "crates"
},
{
"name": "objc2-core-foundation",
"direct": false,
"version": "0.3.2",
"ecosystem": "crates"
},
{
"name": "objc2-core-graphics",
"direct": false,
"version": "0.3.2",
"ecosystem": "crates"
},
{
"name": "objc2-core-image",
"direct": false,
"version": "0.3.2",
"ecosystem": "crates"
},
{
"name": "objc2-core-location",
"direct": false,
"version": "0.3.2",
"ecosystem": "crates"
},
{
"name": "objc2-core-text",
"direct": false,
"version": "0.3.2",
"ecosystem": "crates"
},
{
"name": "objc2-encode",
"direct": false,
"version": "4.1.0",
"ecosystem": "crates"
},
{
"name": "objc2-foundation",
"direct": false,
"version": "0.3.2",
"ecosystem": "crates"
},
{
"name": "objc2-io-surface",
"direct": false,
"version": "0.3.2",
"ecosystem": "crates"
},
{
"name": "objc2-quartz-core",
"direct": false,
"version": "0.3.2",
"ecosystem": "crates"
},
{
"name": "objc2-ui-kit",
"direct": false,
"version": "0.3.2",
"ecosystem": "crates"
},
{
"name": "objc2-user-notifications",
"direct": false,
"version": "0.3.2",
"ecosystem": "crates"
},
{
"name": "once_cell",
"direct": false,
"version": "1.21.4",
"ecosystem": "crates"
},
{
"name": "oorandom",
"direct": false,
"version": "11.1.5",
"ecosystem": "crates"
},
{
"name": "openssl-probe",
"direct": false,
"version": "0.1.6",
"ecosystem": "crates"
},
{
"name": "os_info",
"direct": false,
"version": "3.14.0",
"ecosystem": "crates"
},
{
"name": "page_size",
"direct": false,
"version": "0.6.0",
"ecosystem": "crates"
},
{
"name": "paste",
"direct": false,
"version": "1.0.15",
"ecosystem": "crates"
},
{
"name": "percent-encoding",
"direct": false,
"version": "2.3.2",
"ecosystem": "crates"
},
{
"name": "pin-project",
"direct": false,
"version": "1.1.11",
"ecosystem": "crates"
},
{
"name": "pin-project-internal",
"direct": false,
"version": "1.1.11",
"ecosystem": "crates"
},
{
"name": "pin-project-lite",
"direct": false,
"version": "0.2.17",
"ecosystem": "crates"
},
{
"name": "pkg-config",
"direct": false,
"version": "0.3.33",
"ecosystem": "crates"
},
{
"name": "portable-atomic",
"direct": false,
"version": "1.13.1",
"ecosystem": "crates"
},
{
"name": "ppv-lite86",
"direct": false,
"version": "0.2.21",
"ecosystem": "crates"
},
{
"name": "prettyplease",
"direct": false,
"version": "0.2.37",
"ecosystem": "crates"
},
{
"name": "proc-macro2",
"direct": false,
"version": "1.0.106",
"ecosystem": "crates"
},
{
"name": "prost",
"direct": false,
"version": "0.14.3",
"ecosystem": "crates"
},
{
"name": "prost-derive",
"direct": false,
"version": "0.14.3",
"ecosystem": "crates"
},
{
"name": "quote",
"direct": false,
"version": "1.0.45",
"ecosystem": "crates"
},
{
"name": "r-efi",
"direct": false,
"version": "5.3.0",
"ecosystem": "crates"
},
{
"name": "r-efi",
"direct": false,
"version": "6.0.0",
"ecosystem": "crates"
},
{
"name": "rand",
"direct": false,
"version": "0.8.6",
"ecosystem": "crates"
},
{
"name": "rand_chacha",
"direct": false,
"version": "0.3.1",
"ecosystem": "crates"
},
{
"name": "rand_core",
"direct": false,
"version": "0.6.4",
"ecosystem": "crates"
},
{
"name": "ref-cast",
"direct": false,
"version": "1.0.25",
"ecosystem": "crates"
},
{
"name": "ref-cast-impl",
"direct": false,
"version": "1.0.25",
"ecosystem": "crates"
},
{
"name": "regex",
"direct": false,
"version": "1.12.3",
"ecosystem": "crates"
},
{
"name": "regex-automata",
"direct": false,
"version": "0.4.14",
"ecosystem": "crates"
},
{
"name": "regex-syntax",
"direct": false,
"version": "0.8.10",
"ecosystem": "crates"
},
{
"name": "ring",
"direct": false,
"version": "0.17.14",
"ecosystem": "crates"
},
{
"name": "rmp",
"direct": false,
"version": "0.8.15",
"ecosystem": "crates"
},
{
"name": "rmp-serde",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "rmp-serde",
"direct": false,
"version": "1.3.1",
"ecosystem": "crates"
},
{
"name": "rmpv",
"direct": false,
"version": "1.3.1",
"ecosystem": "crates"
},
{
"name": "rustc-demangle",
"direct": false,
"version": "0.1.27",
"ecosystem": "crates"
},
{
"name": "rustc-hash",
"direct": false,
"version": "2.1.2",
"ecosystem": "crates"
},
{
"name": "rustix",
"direct": false,
"version": "1.1.4",
"ecosystem": "crates"
},
{
"name": "rustls",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "rustls",
"direct": false,
"version": "0.23.40",
"ecosystem": "crates"
},
{
"name": "rustls-native-certs",
"direct": false,
"version": "0.8.2",
"ecosystem": "crates"
},
{
"name": "rustls-pki-types",
"direct": false,
"version": "1.14.1",
"ecosystem": "crates"
},
{
"name": "rustls-platform-verifier",
"direct": false,
"version": "0.6.2",
"ecosystem": "crates"
},
{
"name": "rustls-platform-verifier-android",
"direct": false,
"version": "0.1.1",
"ecosystem": "crates"
},
{
"name": "rustls-webpki",
"direct": false,
"version": "0.103.13",
"ecosystem": "crates"
},
{
"name": "rustversion",
"direct": false,
"version": "1.0.22",
"ecosystem": "crates"
},
{
"name": "ryu",
"direct": false,
"version": "1.0.23",
"ecosystem": "crates"
},
{
"name": "same-file",
"direct": false,
"version": "1.0.6",
"ecosystem": "crates"
},
{
"name": "schannel",
"direct": false,
"version": "0.1.29",
"ecosystem": "crates"
},
{
"name": "schemars",
"direct": false,
"version": "0.8.22",
"ecosystem": "crates"
},
{
"name": "schemars_derive",
"direct": false,
"version": "0.8.22",
"ecosystem": "crates"
},
{
"name": "security-framework",
"direct": false,
"version": "3.7.0",
"ecosystem": "crates"
},
{
"name": "security-framework-sys",
"direct": false,
"version": "2.17.0",
"ecosystem": "crates"
},
{
"name": "semver",
"direct": false,
"version": "1.0.28",
"ecosystem": "crates"
},
{
"name": "serde",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "serde",
"direct": false,
"version": "1.0.228",
"ecosystem": "crates"
},
{
"name": "serde-transcode",
"direct": false,
"version": "1.1.1",
"ecosystem": "crates"
},
{
"name": "serde-wasm-bindgen",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "serde-wasm-bindgen",
"direct": false,
"version": "0.4.5",
"ecosystem": "crates"
},
{
"name": "serde_bytes",
"direct": false,
"version": "0.11.19",
"ecosystem": "crates"
},
{
"name": "serde_core",
"direct": false,
"version": "1.0.228",
"ecosystem": "crates"
},
{
"name": "serde_derive",
"direct": false,
"version": "1.0.228",
"ecosystem": "crates"
},
{
"name": "serde_derive_internals",
"direct": false,
"version": "0.29.1",
"ecosystem": "crates"
},
{
"name": "serde_json",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "serde_json",
"direct": false,
"version": "1.0.149",
"ecosystem": "crates"
},
{
"name": "serde_yaml",
"direct": false,
"version": "0.9.34+deprecated",
"ecosystem": "crates"
},
{
"name": "sha2",
"direct": false,
"version": "0.10.9",
"ecosystem": "crates"
},
{
"name": "shlex",
"direct": false,
"version": "1.3.0",
"ecosystem": "crates"
},
{
"name": "simd-adler32",
"direct": false,
"version": "0.3.9",
"ecosystem": "crates"
},
{
"name": "slab",
"direct": false,
"version": "0.4.12",
"ecosystem": "crates"
},
{
"name": "smallvec",
"direct": false,
"version": "1.15.1",
"ecosystem": "crates"
},
{
"name": "socket2",
"direct": false,
"version": "0.6.3",
"ecosystem": "crates"
},
{
"name": "stable_deref_trait",
"direct": false,
"version": "1.2.1",
"ecosystem": "crates"
},
{
"name": "static_assertions",
"direct": false,
"version": "1.1.0",
"ecosystem": "crates"
},
{
"name": "subtle",
"direct": false,
"version": "2.6.1",
"ecosystem": "crates"
},
{
"name": "symbolic-common",
"direct": false,
"version": "12.18.3",
"ecosystem": "crates"
},
{
"name": "symbolic-demangle",
"direct": false,
"version": "12.18.3",
"ecosystem": "crates"
},
{
"name": "syn",
"direct": false,
"version": "2.0.117",
"ecosystem": "crates"
},
{
"name": "sys-info",
"direct": false,
"version": "0.9.1",
"ecosystem": "crates"
},
{
"name": "thin-vec",
"direct": false,
"version": "0.2.18",
"ecosystem": "crates"
},
{
"name": "thiserror",
"direct": false,
"version": "1.0.69",
"ecosystem": "crates"
},
{
"name": "thiserror-impl",
"direct": false,
"version": "1.0.69",
"ecosystem": "crates"
},
{
"name": "tokio",
"direct": false,
"version": "1.52.1",
"ecosystem": "crates"
},
{
"name": "tokio-macros",
"direct": false,
"version": "2.7.0",
"ecosystem": "crates"
},
{
"name": "tokio-rustls",
"direct": false,
"version": "0.26.4",
"ecosystem": "crates"
},
{
"name": "tokio-util",
"direct": false,
"version": "0.7.18",
"ecosystem": "crates"
},
{
"name": "tower-service",
"direct": false,
"version": "0.3.3",
"ecosystem": "crates"
},
{
"name": "tracing",
"direct": false,
"version": "0.1.44",
"ecosystem": "crates"
},
{
"name": "tracing-core",
"direct": false,
"version": "0.1.36",
"ecosystem": "crates"
},
{
"name": "try-lock",
"direct": false,
"version": "0.2.5",
"ecosystem": "crates"
},
{
"name": "typenum",
"direct": false,
"version": "1.20.0",
"ecosystem": "crates"
},
{
"name": "unicode-ident",
"direct": false,
"version": "1.0.24",
"ecosystem": "crates"
},
{
"name": "unicode-segmentation",
"direct": false,
"version": "1.13.2",
"ecosystem": "crates"
},
{
"name": "unicode-xid",
"direct": false,
"version": "0.2.6",
"ecosystem": "crates"
},
{
"name": "unsafe-libyaml",
"direct": false,
"version": "0.2.11",
"ecosystem": "crates"
},
{
"name": "untrusted",
"direct": false,
"version": "0.9.0",
"ecosystem": "crates"
},
{
"name": "uuid",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "uuid",
"direct": false,
"version": "1.23.1",
"ecosystem": "crates"
},
{
"name": "version_check",
"direct": false,
"version": "0.9.5",
"ecosystem": "crates"
},
{
"name": "walkdir",
"direct": false,
"version": "2.5.0",
"ecosystem": "crates"
},
{
"name": "want",
"direct": false,
"version": "0.3.1",
"ecosystem": "crates"
},
{
"name": "wasi",
"direct": false,
"version": "0.11.1+wasi-snapshot-preview1",
"ecosystem": "crates"
},
{
"name": "wasip2",
"direct": false,
"version": "1.0.3+wasi-0.2.9",
"ecosystem": "crates"
},
{
"name": "wasip3",
"direct": false,
"version": "0.4.0+wasi-0.3.0-rc-2026-01-06",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "wasm-bindgen",
"direct": false,
"version": "0.2.120",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-futures",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-futures",
"direct": false,
"version": "0.4.70",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-macro",
"direct": false,
"version": "0.2.120",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-macro-support",
"direct": false,
"version": "0.2.120",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-shared",
"direct": false,
"version": "0.2.120",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-test",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-test",
"direct": false,
"version": "0.3.70",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-test-macro",
"direct": false,
"version": "0.3.70",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-test-shared",
"direct": false,
"version": "0.2.120",
"ecosystem": "crates"
},
{
"name": "wasm-encoder",
"direct": false,
"version": "0.244.0",
"ecosystem": "crates"
},
{
"name": "wasm-metadata",
"direct": false,
"version": "0.244.0",
"ecosystem": "crates"
},
{
"name": "wasmparser",
"direct": false,
"version": "0.244.0",
"ecosystem": "crates"
},
{
"name": "webpki-root-certs",
"direct": false,
"version": "1.0.8",
"ecosystem": "crates"
},
{
"name": "winapi",
"direct": false,
"version": "0.3.9",
"ecosystem": "crates"
},
{
"name": "winapi-i686-pc-windows-gnu",
"direct": false,
"version": "0.4.0",
"ecosystem": "crates"
},
{
"name": "winapi-util",
"direct": false,
"version": "0.1.11",
"ecosystem": "crates"
},
{
"name": "winapi-x86_64-pc-windows-gnu",
"direct": false,
"version": "0.4.0",
"ecosystem": "crates"
},
{
"name": "windows",
"direct": false,
"version": "0.48.0",
"ecosystem": "crates"
},
{
"name": "windows",
"direct": false,
"version": "0.59.0",
"ecosystem": "crates"
},
{
"name": "windows-core",
"direct": false,
"version": "0.59.0",
"ecosystem": "crates"
},
{
"name": "windows-core",
"direct": false,
"version": "0.62.2",
"ecosystem": "crates"
},
{
"name": "windows-implement",
"direct": false,
"version": "0.59.0",
"ecosystem": "crates"
},
{
"name": "windows-implement",
"direct": false,
"version": "0.60.2",
"ecosystem": "crates"
},
{
"name": "windows-interface",
"direct": false,
"version": "0.59.3",
"ecosystem": "crates"
},
{
"name": "windows-link",
"direct": false,
"version": "0.1.3",
"ecosystem": "crates"
},
{
"name": "windows-link",
"direct": false,
"version": "0.2.1",
"ecosystem": "crates"
},
{
"name": "windows-result",
"direct": false,
"version": "0.3.4",
"ecosystem": "crates"
},
{
"name": "windows-result",
"direct": false,
"version": "0.4.1",
"ecosystem": "crates"
},
{
"name": "windows-strings",
"direct": false,
"version": "0.3.1",
"ecosystem": "crates"
},
{
"name": "windows-strings",
"direct": false,
"version": "0.5.1",
"ecosystem": "crates"
},
{
"name": "windows-sys",
"direct": false,
"version": "0.45.0",
"ecosystem": "crates"
},
{
"name": "windows-sys",
"direct": false,
"version": "0.52.0",
"ecosystem": "crates"
},
{
"name": "windows-sys",
"direct": false,
"version": "0.61.2",
"ecosystem": "crates"
},
{
"name": "windows-targets",
"direct": false,
"version": "0.42.2",
"ecosystem": "crates"
},
{
"name": "windows-targets",
"direct": false,
"version": "0.48.5",
"ecosystem": "crates"
},
{
"name": "windows-targets",
"direct": false,
"version": "0.52.6",
"ecosystem": "crates"
},
{
"name": "windows-targets",
"direct": false,
"version": "0.53.5",
"ecosystem": "crates"
},
{
"name": "windows_aarch64_gnullvm",
"direct": false,
"version": "0.42.2",
"ecosystem": "crates"
},
{
"name": "windows_aarch64_gnullvm",
"direct": false,
"version": "0.48.5",
"ecosystem": "crates"
},
{
"name": "windows_aarch64_gnullvm",
"direct": false,
"version": "0.52.6",
"ecosystem": "crates"
},
{
"name": "windows_aarch64_gnullvm",
"direct": false,
"version": "0.53.1",
"ecosystem": "crates"
},
{
"name": "windows_aarch64_msvc",
"direct": false,
"version": "0.42.2",
"ecosystem": "crates"
},
{
"name": "windows_aarch64_msvc",
"direct": false,
"version": "0.48.5",
"ecosystem": "crates"
},
{
"name": "windows_aarch64_msvc",
"direct": false,
"version": "0.52.6",
"ecosystem": "crates"
},
{
"name": "windows_aarch64_msvc",
"direct": false,
"version": "0.53.1",
"ecosystem": "crates"
},
{
"name": "windows_i686_gnu",
"direct": false,
"version": "0.42.2",
"ecosystem": "crates"
},
{
"name": "windows_i686_gnu",
"direct": false,
"version": "0.48.5",
"ecosystem": "crates"
},
{
"name": "windows_i686_gnu",
"direct": false,
"version": "0.52.6",
"ecosystem": "crates"
},
{
"name": "windows_i686_gnu",
"direct": false,
"version": "0.53.1",
"ecosystem": "crates"
},
{
"name": "windows_i686_gnullvm",
"direct": false,
"version": "0.52.6",
"ecosystem": "crates"
},
{
"name": "windows_i686_gnullvm",
"direct": false,
"version": "0.53.1",
"ecosystem": "crates"
},
{
"name": "windows_i686_msvc",
"direct": false,
"version": "0.42.2",
"ecosystem": "crates"
},
{
"name": "windows_i686_msvc",
"direct": false,
"version": "0.48.5",
"ecosystem": "crates"
},
{
"name": "windows_i686_msvc",
"direct": false,
"version": "0.52.6",
"ecosystem": "crates"
},
{
"name": "windows_i686_msvc",
"direct": false,
"version": "0.53.1",
"ecosystem": "crates"
},
{
"name": "windows_x86_64_gnu",
"direct": false,
"version": "0.42.2",
"ecosystem": "crates"
},
{
"name": "windows_x86_64_gnu",
"direct": false,
"version": "0.48.5",
"ecosystem": "crates"
},
{
"name": "windows_x86_64_gnu",
"direct": false,
"version": "0.52.6",
"ecosystem": "crates"
},
{
"name": "windows_x86_64_gnu",
"direct": false,
"version": "0.53.1",
"ecosystem": "crates"
},
{
"name": "windows_x86_64_gnullvm",
"direct": false,
"version": "0.42.2",
"ecosystem": "crates"
},
{
"name": "windows_x86_64_gnullvm",
"direct": false,
"version": "0.48.5",
"ecosystem": "crates"
},
{
"name": "windows_x86_64_gnullvm",
"direct": false,
"version": "0.52.6",
"ecosystem": "crates"
},
{
"name": "windows_x86_64_gnullvm",
"direct": false,
"version": "0.53.1",
"ecosystem": "crates"
},
{
"name": "windows_x86_64_msvc",
"direct": false,
"version": "0.42.2",
"ecosystem": "crates"
},
{
"name": "windows_x86_64_msvc",
"direct": false,
"version": "0.48.5",
"ecosystem": "crates"
},
{
"name": "windows_x86_64_msvc",
"direct": false,
"version": "0.52.6",
"ecosystem": "crates"
},
{
"name": "windows_x86_64_msvc",
"direct": false,
"version": "0.53.1",
"ecosystem": "crates"
},
{
"name": "winver",
"direct": false,
"version": "1.0.0",
"ecosystem": "crates"
},
{
"name": "wit-bindgen",
"direct": false,
"version": "0.51.0",
"ecosystem": "crates"
},
{
"name": "wit-bindgen",
"direct": false,
"version": "0.57.1",
"ecosystem": "crates"
},
{
"name": "wit-bindgen-core",
"direct": false,
"version": "0.51.0",
"ecosystem": "crates"
},
{
"name": "wit-bindgen-rust",
"direct": false,
"version": "0.51.0",
"ecosystem": "crates"
},
{
"name": "wit-bindgen-rust-macro",
"direct": false,
"version": "0.51.0",
"ecosystem": "crates"
},
{
"name": "wit-component",
"direct": false,
"version": "0.244.0",
"ecosystem": "crates"
},
{
"name": "wit-parser",
"direct": false,
"version": "0.244.0",
"ecosystem": "crates"
},
{
"name": "zerocopy",
"direct": false,
"version": "0.8.48",
"ecosystem": "crates"
},
{
"name": "zerocopy-derive",
"direct": false,
"version": "0.8.48",
"ecosystem": "crates"
},
{
"name": "zeroize",
"direct": false,
"version": "1.8.2",
"ecosystem": "crates"
},
{
"name": "zmij",
"direct": false,
"version": "1.0.21",
"ecosystem": "crates"
},
{
"name": "zstd",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "zstd",
"direct": false,
"version": "0.13.3",
"ecosystem": "crates"
},
{
"name": "zstd-safe",
"direct": false,
"version": "7.2.4",
"ecosystem": "crates"
},
{
"name": "zstd-sys",
"direct": false,
"version": "2.0.16+zstd.1.5.7",
"ecosystem": "crates"
},
{
"name": "@babel/helper-validator-identifier",
"direct": false,
"version": "7.28.5",
"ecosystem": "npm"
},
{
"name": "@datadog/segfaultify",
"direct": false,
"version": "0.1.1",
"ecosystem": "npm"
},
{
"name": "@emnapi/core",
"direct": false,
"version": "1.8.1",
"ecosystem": "npm"
},
{
"name": "@emnapi/runtime",
"direct": false,
"version": "1.8.1",
"ecosystem": "npm"
},
{
"name": "@emnapi/wasi-threads",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@eslint-community/eslint-utils",
"direct": false,
"version": "4.9.1",
"ecosystem": "npm"
},
{
"name": "@eslint-community/regexpp",
"direct": false,
"version": "4.12.2",
"ecosystem": "npm"
},
{
"name": "@eslint/config-array",
"direct": false,
"version": "0.23.5",
"ecosystem": "npm"
},
{
"name": "@eslint/config-helpers",
"direct": false,
"version": "0.6.0",
"ecosystem": "npm"
},
{
"name": "@eslint/core",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "@eslint/js",
"direct": false,
"version": "10.0.1",
"ecosystem": "npm"
},
{
"name": "@eslint/object-schema",
"direct": false,
"version": "3.0.5",
"ecosystem": "npm"
},
{
"name": "@eslint/plugin-kit",
"direct": false,
"version": "0.7.2",
"ecosystem": "npm"
},
{
"name": "@humanfs/core",
"direct": false,
"version": "0.19.1",
"ecosystem": "npm"
},
{
"name": "@humanfs/node",
"direct": false,
"version": "0.16.7",
"ecosystem": "npm"
},
{
"name": "@humanwhocodes/module-importer",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@humanwhocodes/retry",
"direct": false,
"version": "0.4.3",
"ecosystem": "npm"
},
{
"name": "@napi-rs/wasm-runtime",
"direct": false,
"version": "0.2.12",
"ecosystem": "npm"
},
{
"name": "@stylistic/eslint-plugin",
"direct": false,
"version": "5.10.0",
"ecosystem": "npm"
},
{
"name": "@tybys/wasm-util",
"direct": false,
"version": "0.10.1",
"ecosystem": "npm"
},
{
"name": "@types/esrecurse",
"direct": false,
"version": "4.3.1",
"ecosystem": "npm"
},
{
"name": "@types/estree",
"direct": false,
"version": "1.0.8",
"ecosystem": "npm"
},
{
"name": "@types/json-schema",
"direct": false,
"version": "7.0.15",
"ecosystem": "npm"
},
{
"name": "@typescript-eslint/types",
"direct": false,
"version": "8.57.0",
"ecosystem": "npm"
},
{
"name": "@unrs/resolver-binding-android-arm-eabi",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@unrs/resolver-binding-android-arm64",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@unrs/resolver-binding-darwin-arm64",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@unrs/resolver-binding-darwin-x64",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@unrs/resolver-binding-freebsd-x64",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@unrs/resolver-binding-linux-arm-gnueabihf",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@unrs/resolver-binding-linux-arm-musleabihf",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@unrs/resolver-binding-linux-arm64-gnu",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@unrs/resolver-binding-linux-arm64-musl",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@unrs/resolver-binding-linux-ppc64-gnu",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@unrs/resolver-binding-linux-riscv64-gnu",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@unrs/resolver-binding-linux-riscv64-musl",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@unrs/resolver-binding-linux-s390x-gnu",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@unrs/resolver-binding-linux-x64-gnu",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@unrs/resolver-binding-linux-x64-musl",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@unrs/resolver-binding-wasm32-wasi",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@unrs/resolver-binding-win32-arm64-msvc",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@unrs/resolver-binding-win32-ia32-msvc",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@unrs/resolver-binding-win32-x64-msvc",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "accepts",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "acorn",
"direct": false,
"version": "8.16.0",
"ecosystem": "npm"
},
{
"name": "acorn-jsx",
"direct": false,
"version": "5.3.2",
"ecosystem": "npm"
},
{
"name": "ajv",
"direct": false,
"version": "6.14.0",
"ecosystem": "npm"
},
{
"name": "balanced-match",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "baseline-browser-mapping",
"direct": false,
"version": "2.10.0",
"ecosystem": "npm"
},
{
"name": "body-parser",
"direct": false,
"version": "1.20.4",
"ecosystem": "npm"
},
{
"name": "body-parser",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "brace-expansion",
"direct": false,
"version": "5.0.6",
"ecosystem": "npm"
},
{
"name": "browserslist",
"direct": false,
"version": "4.28.1",
"ecosystem": "npm"
},
{
"name": "builtin-modules",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "bytes",
"direct": false,
"version": "3.1.2",
"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": "caniuse-lite",
"direct": false,
"version": "1.0.30001777",
"ecosystem": "npm"
},
{
"name": "change-case",
"direct": false,
"version": "5.4.4",
"ecosystem": "npm"
},
{
"name": "ci-info",
"direct": false,
"version": "4.4.0",
"ecosystem": "npm"
},
{
"name": "clean-regexp",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "comment-parser",
"direct": false,
"version": "1.4.5",
"ecosystem": "npm"
},
{
"name": "content-disposition",
"direct": false,
"version": "1.1.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": "cookie",
"direct": false,
"version": "0.7.2",
"ecosystem": "npm"
},
{
"name": "cookie-signature",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "core-js-compat",
"direct": false,
"version": "3.48.0",
"ecosystem": "npm"
},
{
"name": "cross-spawn",
"direct": false,
"version": "7.0.6",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": false,
"version": "2.6.9",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": false,
"version": "4.4.3",
"ecosystem": "npm"
},
{
"name": "deep-is",
"direct": false,
"version": "0.1.4",
"ecosystem": "npm"
},
{
"name": "depd",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "destroy",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "dunder-proto",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "ee-first",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "electron-to-chromium",
"direct": false,
"version": "1.5.307",
"ecosystem": "npm"
},
{
"name": "encodeurl",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "enhanced-resolve",
"direct": false,
"version": "5.20.0",
"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-object-atoms",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "escalade",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "escape-html",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "escape-string-regexp",
"direct": false,
"version": "1.0.5",
"ecosystem": "npm"
},
{
"name": "escape-string-regexp",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "eslint",
"direct": false,
"version": "10.6.0",
"ecosystem": "npm"
},
{
"name": "eslint-compat-utils",
"direct": false,
"version": "0.5.1",
"ecosystem": "npm"
},
{
"name": "eslint-import-context",
"direct": false,
"version": "0.1.9",
"ecosystem": "npm"
},
{
"name": "eslint-plugin-es-x",
"direct": false,
"version": "7.8.0",
"ecosystem": "npm"
},
{
"name": "eslint-plugin-import-x",
"direct": false,
"version": "4.17.1",
"ecosystem": "npm"
},
{
"name": "eslint-plugin-n",
"direct": false,
"version": "17.24.0",
"ecosystem": "npm"
},
{
"name": "eslint-plugin-unicorn",
"direct": false,
"version": "63.0.0",
"ecosystem": "npm"
},
{
"name": "eslint-scope",
"direct": false,
"version": "9.1.2",
"ecosystem": "npm"
},
{
"name": "eslint-visitor-keys",
"direct": false,
"version": "3.4.3",
"ecosystem": "npm"
},
{
"name": "eslint-visitor-keys",
"direct": false,
"version": "4.2.1",
"ecosystem": "npm"
},
{
"name": "eslint-visitor-keys",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "espree",
"direct": false,
"version": "10.4.0",
"ecosystem": "npm"
},
{
"name": "espree",
"direct": false,
"version": "11.2.0",
"ecosystem": "npm"
},
{
"name": "esquery",
"direct": false,
"version": "1.7.0",
"ecosystem": "npm"
},
{
"name": "esrecurse",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "estraverse",
"direct": false,
"version": "5.3.0",
"ecosystem": "npm"
},
{
"name": "esutils",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "etag",
"direct": false,
"version": "1.8.1",
"ecosystem": "npm"
},
{
"name": "express",
"direct": false,
"version": "5.2.1",
"ecosystem": "npm"
},
{
"name": "fast-deep-equal",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "fast-json-stable-stringify",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "fast-levenshtein",
"direct": false,
"version": "2.0.6",
"ecosystem": "npm"
},
{
"name": "file-entry-cache",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "finalhandler",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "find-up",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "find-up-simple",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "flat-cache",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "flatted",
"direct": false,
"version": "3.4.2",
"ecosystem": "npm"
},
{
"name": "forwarded",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "fresh",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "function-bind",
"direct": false,
"version": "1.1.2",
"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": "4.13.6",
"ecosystem": "npm"
},
{
"name": "glob-parent",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "globals",
"direct": false,
"version": "15.15.0",
"ecosystem": "npm"
},
{
"name": "globals",
"direct": false,
"version": "16.5.0",
"ecosystem": "npm"
},
{
"name": "globals",
"direct": false,
"version": "17.7.0",
"ecosystem": "npm"
},
{
"name": "globrex",
"direct": false,
"version": "0.1.2",
"ecosystem": "npm"
},
{
"name": "gopd",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "graceful-fs",
"direct": false,
"version": "4.2.11",
"ecosystem": "npm"
},
{
"name": "has-symbols",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "hasown",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "http-errors",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "iconv-lite",
"direct": false,
"version": "0.4.24",
"ecosystem": "npm"
},
{
"name": "iconv-lite",
"direct": false,
"version": "0.7.2",
"ecosystem": "npm"
},
{
"name": "ignore",
"direct": false,
"version": "5.3.2",
"ecosystem": "npm"
},
{
"name": "imurmurhash",
"direct": false,
"version": "0.1.4",
"ecosystem": "npm"
},
{
"name": "indent-string",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "inherits",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "ipaddr.js",
"direct": false,
"version": "1.9.1",
"ecosystem": "npm"
},
{
"name": "is-builtin-module",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "is-extglob",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "is-glob",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "is-promise",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "isexe",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "jsesc",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "json-buffer",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "json-schema-traverse",
"direct": false,
"version": "0.4.1",
"ecosystem": "npm"
},
{
"name": "json-stable-stringify-without-jsonify",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "keyv",
"direct": false,
"version": "4.5.4",
"ecosystem": "npm"
},
{
"name": "levn",
"direct": false,
"version": "0.4.1",
"ecosystem": "npm"
},
{
"name": "locate-path",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "math-intrinsics",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "media-typer",
"direct": false,
"version": "0.3.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": "mime-db",
"direct": false,
"version": "1.52.0",
"ecosystem": "npm"
},
{
"name": "mime-db",
"direct": false,
"version": "1.54.0",
"ecosystem": "npm"
},
{
"name": "mime-types",
"direct": false,
"version": "2.1.35",
"ecosystem": "npm"
},
{
"name": "mime-types",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "minimatch",
"direct": false,
"version": "10.2.4",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.1.3",
"ecosystem": "npm"
},
{
"name": "napi-postinstall",
"direct": false,
"version": "0.3.4",
"ecosystem": "npm"
},
{
"name": "natural-compare",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "negotiator",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "node-gyp-build",
"direct": false,
"version": "3.9.0",
"ecosystem": "npm"
},
{
"name": "node-releases",
"direct": false,
"version": "2.0.36",
"ecosystem": "npm"
},
{
"name": "object-inspect",
"direct": false,
"version": "1.13.4",
"ecosystem": "npm"
},
{
"name": "on-finished",
"direct": false,
"version": "2.4.1",
"ecosystem": "npm"
},
{
"name": "once",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "optionator",
"direct": false,
"version": "0.9.4",
"ecosystem": "npm"
},
{
"name": "p-limit",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "p-locate",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "parseurl",
"direct": false,
"version": "1.3.3",
"ecosystem": "npm"
},
{
"name": "path-exists",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "path-key",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "path-to-regexp",
"direct": false,
"version": "8.4.2",
"ecosystem": "npm"
},
{
"name": "picocolors",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "picomatch",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "pluralize",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "prelude-ls",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "proxy-addr",
"direct": false,
"version": "2.0.7",
"ecosystem": "npm"
},
{
"name": "punycode",
"direct": false,
"version": "2.3.1",
"ecosystem": "npm"
},
{
"name": "qs",
"direct": false,
"version": "6.14.2",
"ecosystem": "npm"
},
{
"name": "qs",
"direct": false,
"version": "6.15.2",
"ecosystem": "npm"
},
{
"name": "range-parser",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "raw-body",
"direct": false,
"version": "2.5.3",
"ecosystem": "npm"
},
{
"name": "raw-body",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "regexp-tree",
"direct": false,
"version": "0.1.27",
"ecosystem": "npm"
},
{
"name": "regjsparser",
"direct": false,
"version": "0.13.0",
"ecosystem": "npm"
},
{
"name": "resolve-pkg-maps",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "router",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "safer-buffer",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "semver",
"direct": false,
"version": "7.7.4",
"ecosystem": "npm"
},
{
"name": "send",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "serve-static",
"direct": false,
"version": "2.2.1",
"ecosystem": "npm"
},
{
"name": "setprototypeof",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "shebang-command",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "shebang-regex",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "side-channel",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "side-channel-list",
"direct": false,
"version": "1.0.0",
"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": "stable-hash-x",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "statuses",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "strip-indent",
"direct": false,
"version": "4.1.1",
"ecosystem": "npm"
},
{
"name": "tapable",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "toidentifier",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "ts-declaration-location",
"direct": false,
"version": "1.0.7",
"ecosystem": "npm"
},
{
"name": "tslib",
"direct": false,
"version": "2.8.1",
"ecosystem": "npm"
},
{
"name": "type-check",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "type-is",
"direct": false,
"version": "1.6.18",
"ecosystem": "npm"
},
{
"name": "type-is",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "unpipe",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "unrs-resolver",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "update-browserslist-db",
"direct": false,
"version": "1.2.3",
"ecosystem": "npm"
},
{
"name": "uri-js",
"direct": false,
"version": "4.4.1",
"ecosystem": "npm"
},
{
"name": "vary",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "which",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "word-wrap",
"direct": false,
"version": "1.2.5",
"ecosystem": "npm"
},
{
"name": "wrappy",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "yocto-queue",
"direct": false,
"version": "0.1.0",
"ecosystem": "npm"
}
],
"collected": true,
"truncated": false,
"total_count": 570,
"direct_count": 0,
"indirect_count": 570
}
},
"maintainership": {
"issues": {
"open_prs": 27,
"merged_prs": 116,
"open_issues": 2,
"closed_ratio": 0,
"closed_issues": 0,
"closed_unmerged_prs": 43
},
"bus_factor": 2,
"bot_contributors": 2,
"top_contributors": [
{
"type": "User",
"login": "rochdev",
"commits": 25,
"avatar_url": "https://avatars.githubusercontent.com/u/1596303?v=4"
},
{
"type": "User",
"login": "szegedi",
"commits": 13,
"avatar_url": "https://avatars.githubusercontent.com/u/122822?v=4"
},
{
"type": "User",
"login": "bengl",
"commits": 8,
"avatar_url": "https://avatars.githubusercontent.com/u/110455?v=4"
},
{
"type": "User",
"login": "watson",
"commits": 8,
"avatar_url": "https://avatars.githubusercontent.com/u/10602?v=4"
},
{
"type": "User",
"login": "gyuheon0h",
"commits": 6,
"avatar_url": "https://avatars.githubusercontent.com/u/102937919?v=4"
},
{
"type": "User",
"login": "hoolioh",
"commits": 4,
"avatar_url": "https://avatars.githubusercontent.com/u/107922352?v=4"
},
{
"type": "User",
"login": "tlhunter",
"commits": 3,
"avatar_url": "https://avatars.githubusercontent.com/u/551402?v=4"
},
{
"type": "User",
"login": "dmehala",
"commits": 2,
"avatar_url": "https://avatars.githubusercontent.com/u/204994?v=4"
},
{
"type": "User",
"login": "moezein0",
"commits": 2,
"avatar_url": "https://avatars.githubusercontent.com/u/169095174?v=4"
},
{
"type": "User",
"login": "BaptisteFoy",
"commits": 1,
"avatar_url": "https://avatars.githubusercontent.com/u/61354189?v=4"
}
],
"contributors_sampled": 10,
"top_contributor_share": 0.347
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"build.yml",
"release.yml"
],
"has_docs_dir": false,
"linter_configs": [
"eslint.config.js"
],
"has_editorconfig": true,
"has_linter_config": true,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [
"Cargo.lock",
"package-lock.json",
"yarn.lock"
],
"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": 4,
"reason": "branch protection is not maximal on development and all release branches",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
},
{
"name": "CI-Tests",
"score": 0,
"reason": "0 out of 30 merged PRs checked by a CI test -- score normalized to 0",
"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": 9,
"reason": "Found 22/23 approved changesets -- score normalized to 9",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
},
{
"name": "Contributors",
"score": 10,
"reason": "project has 13 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": "20 commit(s) and 0 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": 10,
"reason": "packaging workflow detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
},
{
"name": "Pinned-Dependencies",
"score": 5,
"reason": "dependency not pinned by hash detected -- score normalized to 5",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
},
{
"name": "SAST",
"score": 0,
"reason": "SAST tool is not run on all commits -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
},
{
"name": "Security-Policy",
"score": 10,
"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": 0,
"reason": "detected GitHub workflow tokens with excessive permissions",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
},
{
"name": "Vulnerabilities",
"score": 4,
"reason": "6 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "d99947f6c5ea698d2a5996d3a61c62b13ba5eef7",
"ran_at": "2026-07-27T10:37:57Z",
"aggregate_score": 6.4,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": false,
"has_security_policy": true,
"has_dependabot_config": true
},
"contribution_flow": {
"collected": true,
"ci_last_run_at": "2026-07-21T08:54:38Z",
"oldest_open_prs": [
{
"number": 7,
"created_at": "2024-04-25T13:16:22Z",
"last_comment_at": "2024-04-29T10:41:38Z",
"last_comment_author": "codecov-commenter"
},
{
"number": 23,
"created_at": "2024-09-03T20:41:42Z",
"last_comment_at": "2024-09-03T20:47:34Z",
"last_comment_author": "github-actions"
},
{
"number": 34,
"created_at": "2024-09-19T15:22:02Z",
"last_comment_at": "2024-09-19T15:31:22Z",
"last_comment_author": "github-actions"
},
{
"number": 35,
"created_at": "2024-09-20T21:21:01Z",
"last_comment_at": "2024-09-22T19:17:39Z",
"last_comment_author": "github-actions"
},
{
"number": 57,
"created_at": "2025-10-16T12:34:32Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 59,
"created_at": "2025-11-20T15:20:10Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 70,
"created_at": "2026-02-13T11:09:36Z",
"last_comment_at": "2026-02-18T16:19:08Z",
"last_comment_author": "github-actions"
},
{
"number": 89,
"created_at": "2026-03-03T15:47:24Z",
"last_comment_at": "2026-03-03T15:47:40Z",
"last_comment_author": "watson"
},
{
"number": 111,
"created_at": "2026-03-24T15:21:06Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 124,
"created_at": "2026-04-22T17:15:57Z",
"last_comment_at": "2026-04-22T17:16:02Z",
"last_comment_author": "dd-octo-sts"
},
{
"number": 125,
"created_at": "2026-04-22T17:16:10Z",
"last_comment_at": "2026-04-22T17:25:56Z",
"last_comment_author": "github-actions"
},
{
"number": 127,
"created_at": "2026-04-30T12:50:14Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 128,
"created_at": "2026-05-04T15:41:29Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 140,
"created_at": "2026-06-22T19:20:41Z",
"last_comment_at": "2026-07-03T07:44:55Z",
"last_comment_author": "szegedi"
},
{
"number": 146,
"created_at": "2026-06-22T19:21:53Z",
"last_comment_at": "2026-06-22T19:24:03Z",
"last_comment_author": "datadog-datadog-prod-us1"
},
{
"number": 149,
"created_at": "2026-06-22T19:22:31Z",
"last_comment_at": "2026-06-22T19:25:18Z",
"last_comment_author": "datadog-datadog-prod-us1-2"
},
{
"number": 162,
"created_at": "2026-07-07T08:54:42Z",
"last_comment_at": "2026-07-07T09:02:58Z",
"last_comment_author": "github-actions"
},
{
"number": 174,
"created_at": "2026-07-14T08:54:30Z",
"last_comment_at": "2026-07-14T09:02:58Z",
"last_comment_author": "github-actions"
},
{
"number": 175,
"created_at": "2026-07-14T08:54:37Z",
"last_comment_at": "2026-07-14T09:03:06Z",
"last_comment_author": "github-actions"
},
{
"number": 176,
"created_at": "2026-07-15T11:58:32Z",
"last_comment_at": "2026-07-16T09:59:39Z",
"last_comment_author": "github-actions"
}
],
"last_merged_pr_at": "2026-07-20T18:56:09Z",
"ci_last_conclusion": "SUCCESS",
"oldest_open_issues": [
{
"number": 60,
"created_at": "2026-01-03T05:53:52Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 114,
"created_at": "2026-03-24T22:25:52Z",
"last_comment_at": "2026-03-26T21:09:09Z",
"last_comment_author": "gyuheon0h"
}
]
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/DataDog/libdatadog-nodejs",
"host": "github.com",
"name": "libdatadog-nodejs",
"owner": "DataDog"
},
"metrics": {
"overall": {
"key": "overall",
"band": "moderate",
"name": "Overall health",
"note": null,
"notes": [],
"value": 66,
"inputs": {
"security": 71,
"vitality": 77,
"community": 51,
"governance": 69,
"engineering": 62
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "good",
"name": "Vitality",
"value": 77,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "moderate",
"name": "Development activity",
"note": null,
"notes": [],
"value": 69,
"inputs": {
"commits_last_year": 45,
"human_commit_share": 0.911,
"days_since_last_push": 0,
"active_weeks_last_year": 12
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 0 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "push_recency",
"params": {
"days": 0
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "12/52 weeks with commits",
"points": 8.3,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 12
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "45 commits in the last year",
"points": 14.9,
"status": "partial",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 45
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "20 commit(s) and 0 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": 88,
"inputs": {
"releases_count": 30,
"latest_release_tag": "v0.18.1",
"releases_from_tags": true,
"days_since_latest_release": 6,
"mean_days_between_releases": 2
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "30 version tags (no GitHub releases)",
"points": 16.2,
"status": "partial",
"details": [
{
"code": "version_tags_no_releases",
"params": {
"count": 30
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 6 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 6
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~2 days",
"points": 27,
"status": "met",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 2
}
}
],
"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": 11,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "last human commit 11 days ago",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_maintained",
"params": {
"days": 11
}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "moderate",
"name": "Community & Adoption",
"value": 51,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "critical",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 3,
"inputs": {
"forks": 1,
"stars": 2,
"watchers": 4,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "2 stars",
"points": 0,
"status": "missed",
"details": [
{
"code": "stars",
"params": {
"count": 2
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "1 forks",
"points": 0,
"status": "missed",
"details": [
{
"code": "forks",
"params": {
"count": 1
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "4 watchers",
"points": 2.7,
"status": "partial",
"details": [
{
"code": "watchers",
"params": {
"count": 4
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "good",
"name": "Community health",
"note": null,
"notes": [],
"value": 70,
"inputs": {
"has_readme": true,
"has_license": true,
"has_contributing": true,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 22.5,
"status": "met",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "recognized license (Apache-2.0)",
"points": 22.5,
"status": "met",
"details": [
{
"code": "license_standard",
"params": {}
},
{
"code": "license_spdx",
"params": {
"spdx": "Apache-2.0"
}
}
],
"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": 0,
"status": "missed",
"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": 0,
"status": "missed",
"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": [
"@datadog/libdatadog"
],
"dependents": null,
"ecosystems": "npm",
"total_downloads": null,
"monthly_downloads": 33286672
},
"components": [
{
"key": "monthly_downloads",
"name": "Monthly downloads",
"detail": "33,286,672 downloads/month across npm",
"points": 80,
"status": "met",
"details": [
{
"code": "downloads_monthly",
"params": {
"count": 33286672,
"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": 69,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "moderate",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 63,
"inputs": {
"bus_factor": 2,
"contributors_sampled": 10,
"top_contributor_share": 0.347
},
"components": [
{
"key": "bus_factor",
"name": "Bus factor",
"detail": "2 contributor(s) cover half of all commits",
"points": 25.2,
"status": "partial",
"details": [
{
"code": "bus_factor",
"params": {
"count": 2
}
}
],
"max_points": 54
},
{
"key": "commit_distribution",
"name": "Commit distribution",
"detail": "top contributor authored 35% of commits",
"points": 14.7,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 35
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "10 contributors",
"points": 13.5,
"status": "met",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 10
}
}
],
"max_points": 13.5
},
{
"key": "openssf_scorecard_contributors",
"name": "OpenSSF Scorecard: Contributors",
"detail": "project has 13 contributing companies or organizations",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "responsiveness",
"band": "at_risk",
"name": "Issue & PR responsiveness",
"note": null,
"notes": [],
"value": 41,
"inputs": {
"merged_prs": 116,
"open_issues": 2,
"closed_issues": 0,
"issue_closed_ratio": 0,
"closed_unmerged_prs": 43
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "0% of issues closed",
"points": 0,
"status": "missed",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 0
}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "116/159 decided PRs merged",
"points": 27.9,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 116,
"decided": 159
}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "Found 22/23 approved changesets -- score normalized to 9",
"points": 13.5,
"status": "partial",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "good",
"name": "Ownership & stewardship",
"note": null,
"notes": [],
"value": 80,
"inputs": {
"followers": 3237,
"owner_type": "Organization",
"is_verified": null,
"owner_login": "DataDog",
"public_repos": 1196,
"account_age_days": 5824
},
"components": [
{
"key": "ownership_backing",
"name": "Ownership backing",
"detail": "organization-owned",
"points": 30,
"status": "met",
"details": [
{
"code": "owner_organization",
"params": {}
}
],
"max_points": 30
},
{
"key": "verified_domain",
"name": "Verified domain",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 20
},
{
"key": "owner_reach",
"name": "Owner reach",
"detail": "3,237 followers of DataDog",
"points": 25,
"status": "met",
"details": [
{
"code": "owner_followers",
"params": {
"count": 3237,
"login": "DataDog"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "1196 public repos, account ~15 yr old",
"points": 25,
"status": "met",
"details": [
{
"code": "public_repos",
"params": {
"count": 1196
}
},
{
"code": "account_age_years",
"params": {
"years": 15
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "excellent",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"@datadog/libdatadog"
],
"ecosystems": "npm",
"any_deprecated": false,
"min_days_since_publish": 6
},
"components": [
{
"key": "published_resolvable",
"name": "Published & resolvable",
"detail": "1 package(s) on npm",
"points": 25,
"status": "met",
"details": [
{
"code": "packages_published",
"params": {
"count": 1,
"ecosystems": "npm"
}
}
],
"max_points": 25
},
{
"key": "publish_recency",
"name": "Publish recency",
"detail": "latest publish 6 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 6
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "27 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 27
}
}
],
"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": "moderate",
"name": "Engineering Quality",
"value": 62,
"weight": 0.2,
"metrics": [
{
"key": "engineering_practices",
"band": "good",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 70,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": true,
"has_linter_config": true,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "2 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 2
}
}
],
"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": "eslint.config.js",
"points": 16,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "eslint.config.js"
}
}
],
"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": 6.4,
"status": "met",
"details": [],
"max_points": 6.4
},
{
"key": "openssf_scorecard_ci_tests",
"name": "OpenSSF Scorecard: CI-Tests",
"detail": "0 out of 30 merged PRs checked by a CI test -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "moderate",
"name": "Documentation",
"note": null,
"notes": [],
"value": 50,
"inputs": {
"topics": [],
"has_wiki": true,
"homepage": null,
"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": null,
"points": 0,
"status": "missed",
"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": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
},
{
"key": "wiki",
"name": "Wiki",
"detail": null,
"points": 10,
"status": "met",
"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): Signed-Releases. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"signed_releases"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 64,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 17,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 1,
"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": "branch protection is not maximal on development and all release branches",
"points": 3,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "0 out of 30 merged PRs checked by a CI test -- score normalized to 0",
"points": 0,
"status": "missed",
"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 22/23 approved changesets -- score normalized to 9",
"points": 6.8,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 13 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": "20 commit(s) and 0 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 detected",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "pinned_dependencies",
"name": "Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 5",
"points": 2.5,
"status": "partial",
"details": [],
"max_points": 5
},
{
"key": "sast",
"name": "SAST",
"detail": "SAST tool is not run on all commits -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "security_policy",
"name": "Security-Policy",
"detail": "security policy file detected",
"points": 5,
"status": "met",
"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": "detected GitHub workflow tokens with excessive permissions",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "vulnerabilities",
"name": "Vulnerabilities",
"detail": "6 existing vulnerabilities detected",
"points": 3,
"status": "partial",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "dependency_advisories",
"band": "excellent",
"name": "Dependency advisories",
"note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories, No advisories left outstanding. Remaining weights renormalized. Matched 551 resolved dependencies against OSV; 19 could not be assessed (no resolved version, an unsupported ecosystem, or beyond the reported package list). This repository publishes no package the index resolves, so the repository dependency graph was assessed instead. That graph mixes development and test pins with shipped dependencies, so only the declared runtime dependencies are scored; transitive findings are reported as context and excluded from the score. Reachability is not analyzed.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"indirect_dependencies_free_of_known_advisories",
"no_advisories_left_outstanding"
]
}
},
{
"code": "weights_renormalized",
"params": {}
},
{
"code": "advisories_scope_repository",
"params": {
"assessed": 551
}
},
{
"code": "advisories_unassessed",
"params": {
"count": 19
}
},
{
"code": "advisories_repo_graph_caveat",
"params": {}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 100,
"inputs": {
"source": "osv",
"advisories": 6,
"affected_packages": 5,
"assessed_packages": 551,
"unassessed_packages": 19,
"affected_by_severity": "high 1, moderate 1, low 1, unknown 2",
"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": "transitive set not separable from development and test dependencies in this scope",
"points": 0,
"status": "excluded",
"details": [
{
"code": "advisories_scope_not_separable",
"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": 551,
"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": 19
},
"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": "moderate",
"name": "AI Readiness",
"value": 57,
"weight": 0,
"metrics": [
{
"key": "ai_agent_context",
"band": "at_risk",
"name": "Agent context & guidance",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"has_llms_txt": false,
"legible_history_share": 0.958,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"components": [
{
"key": "agent_instructions",
"name": "Agent instructions",
"detail": "no CLAUDE.md / AGENTS.md / editor rules",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_agent_instructions",
"params": {}
}
],
"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": "69 of 72 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 69,
"sampled": 72
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "good",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 71,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [
"Cargo.lock",
"package-lock.json",
"yarn.lock"
],
"has_dockerfile": false,
"typed_language": false,
"bootstrap_files": [],
"has_devcontainer": false,
"has_linter_config": true,
"typecheck_configs": [],
"agent_commit_share": 0.013,
"toolchain_manifests": [
"Cargo.toml",
"crates/capabilities/Cargo.toml",
"crates/crashtracker/Cargo.toml",
"crates/datadog-js-zstd/Cargo.toml",
"crates/library_config/Cargo.toml",
"crates/pipeline/Cargo.toml",
"crates/process_discovery/Cargo.toml"
],
"dependency_bot_commit_share": 0.076
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": "Cargo.toml, crates/capabilities/Cargo.toml, crates/crashtracker/Cargo.toml (toolchain convention, no task runner)",
"points": 12.6,
"status": "partial",
"details": [
{
"code": "toolchain_convention",
"params": {
"files": "Cargo.toml, crates/capabilities/Cargo.toml, crates/crashtracker/Cargo.toml"
}
}
],
"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": "eslint.config.js",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "eslint.config.js"
}
}
],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 11
},
{
"key": "reproducible_environment",
"name": "Reproducible environment",
"detail": "lockfile",
"points": 10,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "lockfile"
}
}
],
"max_points": 10
},
{
"key": "demonstrated_agent_practice",
"name": "Demonstrated agent practice",
"detail": "1 of the last 79 commits agent-authored or agent-credited",
"points": 2.5,
"status": "partial",
"details": [
{
"code": "agent_authored_commits",
"params": {
"count": 1,
"sampled": 79
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "6 of the last 79 commits are automated dependency updates",
"points": 8,
"status": "met",
"details": [
{
"code": "dependency_bot_commits",
"params": {
"count": 6,
"sampled": 79
}
}
],
"max_points": 8
},
{
"key": "openssf_scorecard_pinned_dependencies",
"name": "OpenSSF Scorecard: Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 5",
"points": 5,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "moderate",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 55,
"inputs": {
"primary_language": "JavaScript",
"largest_source_bytes": 47691,
"source_files_sampled": 35,
"oversized_source_files": 0
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "JavaScript without a type-check config",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_typecheck_config_language",
"params": {
"language": "JavaScript"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "0/35 source files over 60KB",
"points": 55,
"status": "met",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 35,
"oversized": 0
}
}
],
"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-27T10:38:22.962136Z",
"schema_version": "0.27.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/d/DataDog/libdatadog-nodejs.svg",
"full_name": "DataDog/libdatadog-nodejs",
"license_state": "standard",
"license_spdx": "Apache-2.0"
}