Raw JSON report machine-readable
{
"data": {
"repo": {
"topics": [
"dev-tunnels",
"microsoft"
],
"is_fork": false,
"size_kb": 2604,
"has_wiki": false,
"homepage": null,
"languages": {
"C#": 776900,
"Go": 203978,
"Java": 195140,
"Rust": 191476,
"JavaScript": 12342,
"PowerShell": 461,
"TypeScript": 456844
},
"pushed_at": "2026-07-10T13:20:19Z",
"created_at": "2022-02-04T01:49:18Z",
"owner_type": "Organization",
"updated_at": "2026-07-21T05:47:36Z",
"description": "Dev Tunnels SDK",
"is_archived": false,
"is_disabled": false,
"license_spdx": "MIT",
"default_branch": "main",
"license_spdx_raw": "MIT",
"primary_language": "C#",
"significant_languages": [
"C#",
"TypeScript",
"Go",
"Java",
"Rust"
]
},
"owner": {
"blog": "https://opensource.microsoft.com",
"name": "Microsoft",
"type": "Organization",
"login": "microsoft",
"company": null,
"location": "Redmond, WA",
"followers": 125556,
"avatar_url": "https://avatars.githubusercontent.com/u/6154722?v=4",
"created_at": "2013-12-10T19:06:48Z",
"is_verified": null,
"public_repos": 8210,
"account_age_days": 4605
},
"license": {
"state": "standard",
"spdx_id": "MIT",
"raw_spdx": "MIT",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "java-v0.4.1",
"kind": "other",
"published_at": "2026-06-22T21:32:27Z"
},
{
"tag": "java-v0.4.0",
"kind": "other",
"published_at": "2026-04-23T22:29:22Z"
},
{
"tag": "java-v0.3.0",
"kind": "other",
"published_at": "2023-10-11T19:35:59Z"
},
{
"tag": "v0.1.0",
"kind": "minor",
"published_at": "2022-04-20T17:38:09Z"
},
{
"tag": "java-v0.2.6",
"kind": "other",
"published_at": "2023-02-06T21:16:22Z"
},
{
"tag": "java-v0.2.5",
"kind": "other",
"published_at": "2022-12-14T18:57:55Z"
},
{
"tag": "java-v0.2.4",
"kind": "other",
"published_at": "2022-12-09T18:01:24Z"
},
{
"tag": "java-v0.2.3",
"kind": "other",
"published_at": "2022-09-19T22:05:33Z"
},
{
"tag": "java-v0.2.2",
"kind": "other",
"published_at": "2022-09-01T23:30:35Z"
},
{
"tag": "java-v0.2.1",
"kind": "other",
"published_at": "2022-09-01T23:27:54Z"
},
{
"tag": "java-v0.1.4",
"kind": "other",
"published_at": "2022-07-19T00:46:25Z"
},
{
"tag": "java-v0.1.3",
"kind": "other",
"published_at": "2022-07-18T23:17:55Z"
},
{
"tag": "java-v0.1.2",
"kind": "other",
"published_at": "2022-05-06T19:34:04Z"
},
{
"tag": "java-v0.1.1",
"kind": "other",
"published_at": "2022-05-04T17:40:43Z"
}
],
"recent_commits": [
{
"oid": "85c5efe5447005c0953db3d34226682b26c1ede3",
"body": null,
"is_bot": false,
"headline": "Use latest SSH packages (#652)",
"author_name": "Nagaraju Kotcharlakota",
"author_login": "klvnraju",
"committed_at": "2026-06-22T20:37:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a18b41f271d31770507c86efeefeb21c81593c2a",
"body": "Add the cluster recommendations API across the C#, TypeScript, and Go SDKs\nso tunnel creation can auto-select an optimal cluster when none is specified.\n\nContracts (C# source-of-truth, auto-generated to TS/Go/Java/Rust):\n- ClusterAvailability, ClusterRecommendation, ClusterRecommendationResponse\n- G\n[…]\ntring)\n\nTests: unit coverage for recommendations, auto-recommend, geo forwarding, and\nskip-when-cluster-set across C#, TS, and Go.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>",
"is_bot": false,
"headline": "Add cluster recommendations API support to SDKs (#653)",
"author_name": "Arun G",
"author_login": "ArunGopinathan",
"committed_at": "2026-06-19T20:25:31Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "f9224e4bc2a71d9b0ce7ed3726ba7a2084da8f86",
"body": "* Use the new local dnsname\n\n* Update go package version",
"is_bot": false,
"headline": "Use the new local dnsname (#630)",
"author_name": "Nagaraju Kotcharlakota",
"author_login": "klvnraju",
"committed_at": "2026-05-06T20:40:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "64048c1409ff56cb958b879de7ea069ec71edc8b",
"body": "* rust: update dependencies\n\n- chrono->jiff as chrono is going into maintence mode https://github.com/chronotope/chrono/issues/1423#issuecomment-3846148832\n- async-trait replaced when possible with Rust 1.75+ native async traits; kept for compat with russh\n- futures->futures_util, underlying library\n[…]\nPT 5.5 did some very impressive analysis to find the bug that led to\n adding `CHANNEL_WRITE_CHUNK_SIZE`. This was just never something I hit\n consistently enough before to repro and fix.\n\n* comments",
"is_bot": false,
"headline": "rust: implement relay client (#626)",
"author_name": "Connor Peet",
"author_login": "connor4312",
"committed_at": "2026-05-04T19:11:52Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "ea428189ca07709a3ec6725d2f0e1dbcff6bbf1c",
"body": null,
"is_bot": false,
"headline": "Update dev-tunnels-ssh package (#628)",
"author_name": "David Obando",
"author_login": "DavidObando",
"committed_at": "2026-05-02T00:43:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "271b1bfbb8ff3be81588ea9a560f728ae06acb4d",
"body": "…t Tenant (#625)\n\n* Updated DEV service app ids to new 3pa, updated all non-generated files in all languages and updated go version\n\n* Regenerated the sdk and commiting modified files with new 3pa app id\n\n* Updated the dependencies in package.json for connections and management to require a dependen\n[…]\nmanually replace for new 3pa dev app id.\n\nCo-authored-by: Copilot <copilot@github.com>\n\n---------\n\nCo-authored-by: juanpacostaaa <juanpacostaaa@github.com>\nCo-authored-by: Copilot <copilot@github.com>",
"is_bot": false,
"headline": "Update DEV environment 3PA app IDs for new Tunnels 3PA DEV app in Tes…",
"author_name": "Juan Pablo Acosta",
"author_login": "jpablo2002",
"committed_at": "2026-04-25T00:57:00Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "a0479985ed11dfbebda309df0d1136d0ac9d46c1",
"body": "…s (#623)\n\nFor Sev2.5 31000000590337\n\nThe Java SDK's WebSocketConnector used InsecureTrustManagerFactory.INSTANCE for all wss:// relay connections, which bypassed TLS certificate validation entirely. This allowed a man-in-the-middle attacker to intercept the WebSocket\nhandshake, capture the Authoriz\n[…]\nificates against the system's trusted CA store.\n - Localhost exceptions are preserved for local development (localhost and tunnels.local.api.visualstudio.com), matching the pattern used by the Go SDK.",
"is_bot": false,
"headline": "Fix TLS certificate validation in Java SDK WebSocket relay connection…",
"author_name": "Nagaraju Kotcharlakota",
"author_login": "klvnraju",
"committed_at": "2026-04-23T22:13:21Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a59fd89e37187a451576f2e9b66011326ea20277",
"body": "…environment config for running service Locally (#620)\n\n* Updated GitHub app ids for new apps and created new config for running service locally, and updated for all languages\n\n* Updated GitHub app ids for new apps and created new config for running service locally, and updated for all languages\n\n* \n[…]\n\n\n* Bumped tunnels sdk version for go for github app id changes\n\n* Modified and commited non-generated files for ts, rust, and java\n\n---------\n\nCo-authored-by: juanpacostaaa <juanpacostaaa@github.com>",
"is_bot": false,
"headline": "Split non-prod GitHub App into separate per-environment apps and new …",
"author_name": "Juan Pablo Acosta",
"author_login": "jpablo2002",
"committed_at": "2026-04-22T21:23:30Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "6cc48487bcc96697afc0e86a2c06b30341b43d95",
"body": "Bumps [openssl](https://github.com/rust-openssl/rust-openssl) from 0.10.60 to 0.10.76.\n- [Release notes](https://github.com/rust-openssl/rust-openssl/releases)\n- [Commits](https://github.com/rust-openssl/rust-openssl/compare/openssl-v0.10.60...openssl-v0.10.76)\n\n---\nupdated-dependencies:\n- dependenc\n[…]\nl\n dependency-version: 0.10.76\n dependency-type: indirect\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 openssl from 0.10.60 to 0.10.76 in /rs (#600)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-04-03T21:11:24Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a526aa767ca99799218f34c0bdd933635c7c0427",
"body": "Bumps [lodash](https://github.com/lodash/lodash) from 4.17.21 to 4.18.1.\n- [Release notes](https://github.com/lodash/lodash/releases)\n- [Commits](https://github.com/lodash/lodash/compare/4.17.21...4.18.1)\n\n---\nupdated-dependencies:\n- dependency-name: lodash\n dependency-version: 4.18.1\n dependency-type: indirect\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 lodash from 4.17.21 to 4.18.1 in /ts (#609)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-04-03T21:09:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "02426b78c83b24ce929948bd3efe0c3dda354438",
"body": "Bumps [minimatch](https://github.com/isaacs/minimatch) from 3.1.2 to 3.1.5.\n- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)\n- [Commits](https://github.com/isaacs/minimatch/compare/v3.1.2...v3.1.5)\n\n---\nupdated-dependencies:\n- dependency-name: minimatch\n dependency-version: 3.1.5\n dependency-type: indirect\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 minimatch from 3.1.2 to 3.1.5 in /ts (#601)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-04-03T21:09:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "14dbed83e7f4352d35b92c0b9984cfe085df32da",
"body": "* Remove net6 target, add net10 target\n\n* Update packages and fix tests\n\n* Progress on tests\n\n* Finalize stabilization of tests\n\n* Undo removal of asserts and disposal\n\n* Update to stabilize tests in Linux",
"is_bot": false,
"headline": "Remove net6 target, add net10 target, stabilize tests (#607)",
"author_name": "David Obando",
"author_login": "DavidObando",
"committed_at": "2026-04-03T21:07:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f6b09cd560265f5fbcc9a8615b08f1a525098a52",
"body": null,
"is_bot": false,
"headline": "Update TS build nodejs (#606)",
"author_name": "David Obando",
"author_login": "DavidObando",
"committed_at": "2026-04-03T21:06:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5d1efccaf8a698ead28b263fe0295b5dbce93e08",
"body": "Design\n------\nWhen a tunnel service deployment uses a custom domain (e.g.\n\"app.github.dev\"), the control-plane URL is derived by prepending\n\"cp.\" to that domain, producing \"https://cp.app.github.dev/\".\nBecause custom-domain deployments handle cluster routing at the\ninfrastructure level, the SDK must\n[…]\nstStandardServiceUriReplacesClusterId\nJava: forCustomDomainCreatesClient,\n forCustomDomainRejectsBlank\nRust: custom_domain_does_not_modify_hostname,\n standard_service_uri_replaces_cluster_id",
"is_bot": false,
"headline": "Add custom domain support to tunnel management SDKs (#605)",
"author_name": "David Obando",
"author_login": "DavidObando",
"committed_at": "2026-04-03T21:06:26Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "ad8d4711255f2eed23b3b6667a827479867784af",
"body": null,
"is_bot": false,
"headline": "Update typescript-build-and-publish.yaml for Azure Pipelines (#604)",
"author_name": "David Obando",
"author_login": "DavidObando",
"committed_at": "2026-04-01T21:35:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a26130a476a35df31734493fcb1b6c05f3f26e40",
"body": null,
"is_bot": false,
"headline": "Update versions for Dev Tunnels SSH package for C# and TS (#602)",
"author_name": "David Obando",
"author_login": "DavidObando",
"committed_at": "2026-04-01T17:56:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e0aa5af5da66001d4216fdb408425beb722d6460",
"body": "* update to 3p for dev instead of 1p\n\n* update version requirements for go and ts\n\n* bump go package version\n\n---------\n\nCo-authored-by: Arun Gopinathan <agopinathan@microsoft.com>",
"is_bot": false,
"headline": "changes to use 3p in Microsoft tenant for dev. (#579)",
"author_name": "Arun G",
"author_login": "ArunGopinathan",
"committed_at": "2026-03-31T22:10:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ded7eda44d31391b814ce8aec435e92abf83409f",
"body": "Bumps [js-yaml](https://github.com/nodeca/js-yaml) to 4.1.1 and updates ancestor dependency [mocha](https://github.com/mochajs/mocha). These dependencies need to be updated together.\n\n\nUpdates `js-yaml` from 4.1.0 to 4.1.1\n- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)\n- [\n[…]\ndency-version: 11.7.5\n dependency-type: direct:development\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 js-yaml and mocha in /ts (#597)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-03-31T21:40:09Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "650bff573fd32bd4ad7ce184b3859f522a4bdc31",
"body": "Bumps [cipher-base](https://github.com/crypto-browserify/cipher-base) from 1.0.4 to 1.0.7.\n- [Changelog](https://github.com/browserify/cipher-base/blob/master/CHANGELOG.md)\n- [Commits](https://github.com/crypto-browserify/cipher-base/compare/v1.0.4...v1.0.7)\n\n---\nupdated-dependencies:\n- dependency-n\n[…]\nase\n dependency-version: 1.0.7\n dependency-type: indirect\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 cipher-base from 1.0.4 to 1.0.7 in /ts (#599)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-03-31T21:39:21Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "8842e8e6491fb7707c56d78c9090c5c0cd7b85c8",
"body": "Bumps [tmp](https://github.com/raszi/node-tmp) from 0.1.0 to 0.2.4.\n- [Changelog](https://github.com/raszi/node-tmp/blob/master/CHANGELOG.md)\n- [Commits](https://github.com/raszi/node-tmp/compare/v0.1.0...v0.2.4)\n\n---\nupdated-dependencies:\n- dependency-name: tmp\n dependency-version: 0.2.4\n dependency-type: direct:development\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 tmp from 0.1.0 to 0.2.4 in /ts (#598)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-03-31T21:38:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2e460fd2da85efb03b46aad1c9bc19ff224bb976",
"body": "Bumps [pbkdf2](https://github.com/browserify/pbkdf2) from 3.1.2 to 3.1.5.\n- [Changelog](https://github.com/browserify/pbkdf2/blob/master/CHANGELOG.md)\n- [Commits](https://github.com/browserify/pbkdf2/compare/v3.1.2...v3.1.5)\n\n---\nupdated-dependencies:\n- dependency-name: pbkdf2\n dependency-version: 3.1.5\n dependency-type: indirect\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 pbkdf2 from 3.1.2 to 3.1.5 in /ts (#595)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-03-31T21:35:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9ac397d4595d4f03e43664f272550e1cce259c4b",
"body": "Bumps [axios](https://github.com/axios/axios) from 1.7.7 to 1.14.0.\n- [Release notes](https://github.com/axios/axios/releases)\n- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)\n- [Commits](https://github.com/axios/axios/compare/v1.7.7...v1.14.0)\n\n---\nupdated-dependencies:\n- depend\n[…]\nos\n dependency-version: 1.14.0\n dependency-type: indirect\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 axios from 1.7.7 to 1.14.0 in /samples/ts/client (#594)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-03-31T21:34:36Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "2bda40adc19aa79aec02631d8d63b6093648ba2c",
"body": "Bumps [io.netty:netty-codec-http](https://github.com/netty/netty) from 4.1.108.Final to 4.1.132.Final.\n- [Release notes](https://github.com/netty/netty/releases)\n- [Commits](https://github.com/netty/netty/compare/netty-4.1.108.Final...netty-4.1.132.Final)\n\n---\nupdated-dependencies:\n- dependency-name\n[…]\nversion: 4.1.132.Final\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": "Bump io.netty:netty-codec-http in /java (#591)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-03-31T21:33:48Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "501e07486ee26ef0c7e8d6323cff6c1d64d2f742",
"body": "Bumps [bn.js](https://github.com/indutny/bn.js) from 4.12.0 to 4.12.3.\n- [Release notes](https://github.com/indutny/bn.js/releases)\n- [Changelog](https://github.com/indutny/bn.js/blob/master/CHANGELOG.md)\n- [Commits](https://github.com/indutny/bn.js/compare/v4.12.0...v4.12.3)\n\n---\nupdated-dependenci\n[…]\njs\n dependency-version: 4.12.3\n dependency-type: indirect\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 bn.js from 4.12.0 to 4.12.3 in /samples/ts/host (#590)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-03-31T21:33:25Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "f328e79bc7bcafd957642e66e95365961a131433",
"body": "Bumps [flatted](https://github.com/WebReflection/flatted) from 3.2.7 to 3.4.2.\n- [Commits](https://github.com/WebReflection/flatted/compare/v3.2.7...v3.4.2)\n\n---\nupdated-dependencies:\n- dependency-name: flatted\n dependency-version: 3.4.2\n dependency-type: indirect\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 flatted from 3.2.7 to 3.4.2 in /ts (#589)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-03-31T21:33:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "42f784b01569d8cd8a4f4ba131b90d2562895da7",
"body": "Bumps and [bn.js](https://github.com/indutny/bn.js). These dependencies needed to be updated together.\n\nUpdates `bn.js` from 4.12.0 to 4.12.3\n- [Release notes](https://github.com/indutny/bn.js/releases)\n- [Changelog](https://github.com/indutny/bn.js/blob/master/CHANGELOG.md)\n- [Commits](https://git\n[…]\n.js\n dependency-version: 5.2.3\n dependency-type: indirect\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 bn.js in /ts (#588)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-03-31T21:32:38Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "85679a07aa1393ae605b4d6f057295852a82502f",
"body": "Bumps [axios](https://github.com/axios/axios) from 1.7.7 to 1.13.6.\n- [Release notes](https://github.com/axios/axios/releases)\n- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)\n- [Commits](https://github.com/axios/axios/compare/v1.7.7...v1.13.6)\n\n---\nupdated-dependencies:\n- depend\n[…]\nos\n dependency-version: 1.13.6\n dependency-type: indirect\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 axios from 1.7.7 to 1.13.6 in /samples/ts/host (#587)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-03-31T21:32:06Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "5cb34b5c89f1aaff920bf49dc37529b6fc83fd89",
"body": "Bumps [bn.js](https://github.com/indutny/bn.js) from 4.12.0 to 4.12.3.\n- [Release notes](https://github.com/indutny/bn.js/releases)\n- [Changelog](https://github.com/indutny/bn.js/blob/master/CHANGELOG.md)\n- [Commits](https://github.com/indutny/bn.js/compare/v4.12.0...v4.12.3)\n\n---\nupdated-dependenci\n[…]\njs\n dependency-version: 4.12.3\n dependency-type: indirect\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 bn.js from 4.12.0 to 4.12.3 in /samples/ts/client (#586)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-03-31T21:31:40Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "cf5ef7367db87b11377e994ccbc02d63649bbf62",
"body": "Bumps [picomatch](https://github.com/micromatch/picomatch) from 2.3.1 to 2.3.2.\n- [Release notes](https://github.com/micromatch/picomatch/releases)\n- [Changelog](https://github.com/micromatch/picomatch/blob/master/CHANGELOG.md)\n- [Commits](https://github.com/micromatch/picomatch/compare/2.3.1...2.3.\n[…]\ntch\n dependency-version: 2.3.2\n dependency-type: indirect\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 picomatch from 2.3.1 to 2.3.2 in /ts (#584)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-03-31T21:30:58Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a9db5e8cfad9d4f254d91081f7234b1a025c74b4",
"body": "Bumps [axios](https://github.com/axios/axios) from 1.8.4 to 1.13.5.\n- [Release notes](https://github.com/axios/axios/releases)\n- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)\n- [Commits](https://github.com/axios/axios/compare/v1.8.4...v1.13.5)\n\n---\nupdated-dependencies:\n- depend\n[…]\nndency-version: 1.13.5\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": "Bump axios from 1.8.4 to 1.13.5 in /ts (#585)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-03-31T21:26:58Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "7040f9b4c80a050c779b815c1da5d2c5e8ce3a50",
"body": "…led (#592)\n\n* Added logging when successfully manage to reconnect to tunnel relay, and fixed event logging of reconnect failed vs cancelled to warn correctly.\n\n* Added testing to ensure cancelled reconnect vs failed reconnect are reported correctly\n\n* Fixed infinite hanging of DisposeDuringReconnectReportsCancelledEvent by corecting use of cancellation token\n\n* Fixed required net6.0 installation for test proj\n\n---------\n\nCo-authored-by: juanpacostaaa <juanpacostaaa@github.com>",
"is_bot": false,
"headline": "Fix classification of disposal-during-reconnect as cancelled, not fai…",
"author_name": "Juan Pablo Acosta",
"author_login": "jpablo2002",
"committed_at": "2026-03-31T00:49:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "48720788d92a44dffeeabd65a00763c578ad049d",
"body": "* Limit tunnel IDs and names to 49 characters for DNS compliance\n\nDNS specifications limit each label in a hostname to 63 characters. Tunnel URIs include the tunnel ID/name plus port and inspection suffixes:\n- Standard: https://<tunnel_id>-<port>.<region>.devtunnels.ms\n- Inspection: https://<tunnel_\n[…]\nmain within the 63-character DNS label limit, tunnel IDs and names are now limited to 49 characters (63 - 6 for port - 8 for inspect).\n\n* Updated package numbers\n\n* Bumping Go PackageVersion to 0.1.22",
"is_bot": false,
"headline": "Limit tunnel IDs and names to 49 characters for DNS compliance (#581)",
"author_name": "Patrick Le Quere",
"author_login": "plequere-ms",
"committed_at": "2026-03-26T16:17:30Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "212c3e5ddf859adec23be38502c873206047cf1e",
"body": null,
"is_bot": false,
"headline": "Fix create retry behavior in go, improve tests (#582)",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2026-03-25T21:03:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d83f0a40fbc883a83435e4d47a4178b288fd5564",
"body": "The Session is not an instance of SshSession TypeError occurs at runtime\nwhen dev-tunnels-connections and dev-tunnels-ssh resolve to different copies\nof the SSH package. Two separate class constructors means instanceof checks\nacross package boundaries always return false.\n\nRoot causes and fixes:\n\n1.\n[…]\nand overwrote the pinned versions right before npm pack.\n Added the same version-pinning loop to pack-ts for both dependencies\n and peerDependencies. Also updated build-ts to pin peerDependencies.",
"is_bot": false,
"headline": "Fix duplicate SshSession class causing instanceof failures (#580)",
"author_name": "David Obando",
"author_login": "DavidObando",
"committed_at": "2026-03-24T18:49:05Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "aaf17f2ee90ee1266de5218921ce803791cda14b",
"body": "Disabled the following warning in the CI pipeline, as the behavior is intended and by design:\n##[warning]DevTunnels-Dev-Tunnels-SDK-CSharp-CI-Build-1.3.15-13463989-260305183406 will be published to Symweb only. Is that your intention? Surpress this message by setting SuppressSymwebOnlyWarning to true.",
"is_bot": false,
"headline": "Build pipeline: disabling an expected warning (#577)",
"author_name": "Patrick Le Quere",
"author_login": "plequere-ms",
"committed_at": "2026-03-06T00:58:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6664d39e61ead592d186cd3b76b0a7847d566f41",
"body": null,
"is_bot": false,
"headline": "Updated name of service connection for symbols publishing (#575)",
"author_name": "Patrick Le Quere",
"author_login": "plequere-ms",
"committed_at": "2026-03-04T17:48:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3222aff53187f07a31c95e2741d150eba0de694f",
"body": "…r symbols publishing\n\nUpdated the CI YAML pipeline per the latest engineering guidelines at https://devdiv.visualstudio.com/DevDiv/_wiki/wikis/DevDiv.wiki/34315/Archiving-Symbols. We can no longer publish symbols with PublishSymbols@2 as this task requires a PAT (which will no longer be an option a\n[…]\nols@2 to index source code\n- Use the MicroBuildArchiveSymbols@6 task to publish symbols. This task uses WIF in lieu of a PAT.\nRemoved a test pipeline that I created yesterday to validate some changes.",
"is_bot": false,
"headline": "Dev Tunnels CLI CI pipeline updates to remove dependencies on PATs fo…",
"author_name": "Patrick Le Quere",
"author_login": "plequere-ms",
"committed_at": "2026-03-03T22:07:25Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "cde7845e77c53e630425b59e244c9bf5c1f0b230",
"body": null,
"is_bot": false,
"headline": "Adding test pipeline for Symbols publishing AAD auth (#572)",
"author_name": "Patrick Le Quere",
"author_login": "plequere-ms",
"committed_at": "2026-03-03T00:05:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b473e004196f4dc607eb527c2817f449d7d39186",
"body": null,
"is_bot": false,
"headline": "Add bearer auth tunnel option (#569)",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2026-02-10T17:56:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "19856286deb1a3b05b385be8ddf5ad0c4e8247e4",
"body": null,
"is_bot": false,
"headline": "Fix tunnel creation ID conflict handling (#568)",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2026-01-27T18:58:05Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "11afa272af1c9182c3bd2019dcdf4052ae1e1593",
"body": null,
"is_bot": false,
"headline": "Allow colon in ACE subject name to support repo URIs (#566)",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2026-01-09T21:46:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e6cdca4b156eeb237961ac4c5b9c1a5d194fe6df",
"body": null,
"is_bot": false,
"headline": "Use EnableEventsReporting flag in C# client (#561)",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2025-10-24T20:28:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fab4fe74d6de5e28c7a65f33483233ba6d3cf8fc",
"body": "In a for loop, a new address is created for the loopvar. Appending the\npointer of the loopvar to a slice means that every element in the slice\nwill point to the last element ranged over.",
"is_bot": false,
"headline": "Fix ListTunnelPorts in Go (#538)",
"author_name": "William Martin",
"author_login": "williammartin",
"committed_at": "2025-08-25T19:43:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "19736479ae17751ec4f1bfa89bee028544cf8e9f",
"body": null,
"is_bot": false,
"headline": "add connected pme service name (#553)",
"author_name": "JacobRoberts",
"author_login": "JacobRoberts",
"committed_at": "2025-08-22T21:46:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3339d5d4b373ca1af5391472f9d6c916d7a8206a",
"body": null,
"is_bot": false,
"headline": "Add request timeout to tunnel options (#552)",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2025-08-22T00:18:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f51d0ce4ebf046e67c0213603065d24aaf886f02",
"body": "* keepalive events in typescript sdk\n\n* update readme",
"is_bot": false,
"headline": "Keep-alive implementation in TS SDK (#551)",
"author_name": "JacobRoberts",
"author_login": "JacobRoberts",
"committed_at": "2025-08-20T23:09:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "099ef316de566a9eb92296551c97f43d5747c82b",
"body": null,
"is_bot": false,
"headline": "Add session ID properties to connection events reporting (#550)",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2025-08-16T00:15:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "af2d25774a903095065be724f093e827ea01fd5e",
"body": null,
"is_bot": false,
"headline": "Fix ESRP approver email (#549)",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2025-08-12T17:17:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a7b404459aec9386b5dc1fa9ec3f90227625cb4c",
"body": null,
"is_bot": false,
"headline": "Migrate ESRP code signing to AME MSI (#547)",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2025-08-11T22:01:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9dc1e8c0f0bde032111d287fdd93d61baf81f2e9",
"body": null,
"is_bot": false,
"headline": "Report client connection events to the tunnel service (#546)",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2025-08-11T21:32:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f0568fa3119526237882c7465844788fd49464fa",
"body": "* add extra telemetry on websocket disconnects\n\n* add close status description to telemetry",
"is_bot": false,
"headline": "add extra telemetry on websocket disconnects (#545)",
"author_name": "JacobRoberts",
"author_login": "JacobRoberts",
"committed_at": "2025-08-07T17:42:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "507a98f0f55edccd0651ffca93786b42dc5fcd54",
"body": null,
"is_bot": false,
"headline": "add event for ssh keep alive (#544)",
"author_name": "JacobRoberts",
"author_login": "JacobRoberts",
"committed_at": "2025-07-31T21:13:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "06ba8571935cd11a5384cb7d597fa1b796c59282",
"body": null,
"is_bot": false,
"headline": "Fix nullability for tunnel CORS options (#534)",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2025-05-29T18:25:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f79233532f92b8017cb474f73b544d1dec89b8f7",
"body": null,
"is_bot": false,
"headline": "Add option for partitioned auth cookies (#530)",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2025-05-06T00:56:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b398df63644e34190e19544d7628ab6f5cd3404b",
"body": "* Implement ssh keep-alive for Tunnels C# SDK\n\n* Rename KeepAliveRequestFailed to KeepAliveFailed.",
"is_bot": false,
"headline": "Implement ssh keep-alive for Tunnels C# SDK (#527)",
"author_name": "Nagaraju Kotcharlakota",
"author_login": "klvnraju",
"committed_at": "2025-04-17T17:56:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "21b4768b4cfe9742bd033c1d41a93d9c7ea96305",
"body": "* Reduce websocket logs to reduce log file size\n\nChange from `WebSocketStream.ReadAsync` to `WS.R` and `WebSocketStream.WriteAsync` to `WS.W` accordingly.\n\n* Fix Java build failure\n\n* Add the comment back",
"is_bot": false,
"headline": "Reduce websocket logs to reduce log file size (#526)",
"author_name": "Nagaraju Kotcharlakota",
"author_login": "klvnraju",
"committed_at": "2025-04-15T22:40:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "385b638fb4902abb3ae8203cdbaffca222465d53",
"body": null,
"is_bot": false,
"headline": "Update axios to resolve CVE (#525)",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2025-04-10T19:55:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b028e5812b534227507c60359fb002ddc115ff76",
"body": null,
"is_bot": false,
"headline": "Add option for cross-site authentication (#524)",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2025-04-09T17:28:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9aa4639f4144fa85786089b9b0fd2e06c20ec840",
"body": "Set the environment variable DEVTUNNELS_LOG_WEBSOCKET_MESSAGES to true for the additional logging",
"is_bot": false,
"headline": "Add logging for websocket stream read and write (#521)",
"author_name": "Nagaraju Kotcharlakota",
"author_login": "klvnraju",
"committed_at": "2025-04-03T17:47:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0707a817dace114b261b04699d74bcc3f10c4a78",
"body": null,
"is_bot": false,
"headline": "Improve support for region-specific tunnel service URI (#517)",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2025-03-11T18:56:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "845d75c554514d34c6cd80de23ec6d616a674d47",
"body": "* Add sample ts host\r\n\r\n* Add sample ts client\r\n\r\n* Find free port in the host sample",
"is_bot": false,
"headline": "Add sample nodejs host (#495)",
"author_name": "Ilya Biryukov",
"author_login": "IlyaBiryukov",
"committed_at": "2024-11-13T19:29:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "04f0200317752de54f62d5c56c513a5f5e6aaf08",
"body": "…460)",
"is_bot": false,
"headline": "Add failed policy requirement names to UnauthorizedAccessException (#…",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2024-10-18T18:04:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f46cdab0637f101acb6a008132936c3617a14b26",
"body": null,
"is_bot": false,
"headline": "update listener type (#490)",
"author_name": "Jacob Fullerton",
"author_login": "jfullerton44",
"committed_at": "2024-10-09T21:38:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e5953a0e45ff46eb9b647fd7406cc8bc0edb1056",
"body": null,
"is_bot": false,
"headline": "Add .NET 8 target, remove .NET Core 3.1 (#486)",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2024-09-27T19:29:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "106b4e988454dc56468131165d35abb321939e5d",
"body": null,
"is_bot": false,
"headline": "Fix host port number in TCP listener factory (#485)",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2024-09-27T18:49:36Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "87c585c24795834961622dc6b141d730f88975de",
"body": "Bumps [elliptic](https://github.com/indutny/elliptic) from 6.5.4 to 6.5.7.\r\n- [Commits](https://github.com/indutny/elliptic/compare/v6.5.4...v6.5.7)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: elliptic\r\n dependency-type: indirect\r\n...\r\n\r\nSigned-off-by: dependabot[bot] <support@github.com>\r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Bump elliptic from 6.5.4 to 6.5.7 in /ts (#476)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2024-08-22T19:39:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5df299d4f5878cf01951e5efb2ae99addd86f81a",
"body": null,
"is_bot": false,
"headline": "Fix checks for local development DNS name (#474)",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2024-08-22T18:47:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "367919211d6989c3ef503bb63d2a8570b8a94ddd",
"body": "Fix for https://github.com/devdiv-microsoft/basis-planning/issues/1618\n\nInsert SSH 3.11.41 that has the fix.\nAdd a unit test for client connecting to host when the tunnel has multiple port.\nAdd more logging to unit tests.",
"is_bot": false,
"headline": "Insert SSH 3.11.41, add more unit tests and logging to tests (#473)",
"author_name": "Ilya Biryukov",
"author_login": "IlyaBiryukov",
"committed_at": "2024-08-16T16:18:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "464f85ea3cc8b37947b208f55e4c6d88d71a218b",
"body": "* Upgrade CodeQL version from v1 to v2\r\n\r\n* Upgrade CodeQL actions to v3\r\n\r\n* Update actions/checkout to v4",
"is_bot": false,
"headline": "Upgrade CodeQL version from v1 to v3 (#453)",
"author_name": "Taiyo Sogawa",
"author_login": "taiyosogawa",
"committed_at": "2024-06-11T17:34:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e4d1fd782be1bed9c87f53cdbb9436d19c8e88e4",
"body": "Bumps [mio](https://github.com/tokio-rs/mio) from 0.8.3 to 0.8.11.\r\n- [Release notes](https://github.com/tokio-rs/mio/releases)\r\n- [Changelog](https://github.com/tokio-rs/mio/blob/master/CHANGELOG.md)\r\n- [Commits](https://github.com/tokio-rs/mio/compare/v0.8.3...v0.8.11)\r\n\r\n---\r\nupdated-dependencies\n[…]\n: dependabot[bot] <support@github.com>\r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\r\nCo-authored-by: Taiyo Sogawa <1176981+taiyosogawa@users.noreply.github.com>",
"is_bot": true,
"headline": "Bump mio from 0.8.3 to 0.8.11 in /rs (#410)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2024-06-11T17:29:30Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "435cb918943dc1e0ebd02a2a3e09066382e22fec",
"body": "Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.\r\n- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)\r\n- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: braces\r\n dependency-type: indirect\r\n...\r\n\r\nSigned-off-by: dependabot[bot] <support@github.com>\r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Bump braces from 3.0.2 to 3.0.3 in /ts (#454)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2024-06-11T17:27:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2458e6b69f0a6f44d5062df0d3b00d1797b6aaae",
"body": "Bumps [h2](https://github.com/hyperium/h2) from 0.3.24 to 0.3.26.\r\n- [Release notes](https://github.com/hyperium/h2/releases)\r\n- [Changelog](https://github.com/hyperium/h2/blob/v0.3.26/CHANGELOG.md)\r\n- [Commits](https://github.com/hyperium/h2/compare/v0.3.24...v0.3.26)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: h2\r\n dependency-type: indirect\r\n...\r\n\r\nSigned-off-by: dependabot[bot] <support@github.com>\r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Bump h2 from 0.3.24 to 0.3.26 in /rs (#433)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2024-06-11T17:23:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "dd25bf75908ce2b6002a02f1678eaf7a70a8bdb5",
"body": "Bumps [io.netty:netty-codec-http](https://github.com/netty/netty) from 4.1.86.Final to 4.1.108.Final.\r\n- [Commits](https://github.com/netty/netty/compare/netty-4.1.86.Final...netty-4.1.108.Final)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: io.netty:netty-codec-http\r\n dependency-type: direct:production\r\n...\r\n\r\nSigned-off-by: dependabot[bot] <support@github.com>\r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Bump io.netty:netty-codec-http in /java (#428)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2024-06-11T17:23:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "390c0aca800313b5ea924feb7020fc1c4df36022",
"body": "Bumps [openssl](https://github.com/sfackler/rust-openssl) from 0.10.55 to 0.10.60.\r\n- [Release notes](https://github.com/sfackler/rust-openssl/releases)\r\n- [Commits](https://github.com/sfackler/rust-openssl/compare/openssl-v0.10.55...openssl-v0.10.60)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name\n[…]\n\r\n\r\nSigned-off-by: dependabot[bot] <support@github.com>\r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\r\nCo-authored-by: Jacob Fullerton <jfullerton@microsoft.com>",
"is_bot": true,
"headline": "Bump openssl from 0.10.55 to 0.10.60 in /rs (#352)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2024-06-11T17:23:13Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "d789eb9ce76c4318933320d7acda3cb8fba17e61",
"body": "* update dependencies\r\n\r\n* package version",
"is_bot": false,
"headline": "Update Go Crypto Versions (#447)",
"author_name": "Jacob Fullerton",
"author_login": "jfullerton44",
"committed_at": "2024-05-14T20:26:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7f61c9f28ee8564666aa2f486ab843db049b6cfc",
"body": null,
"is_bot": false,
"headline": "Update typescript-build-and-publish.yaml for Azure Pipelines (#442)",
"author_name": "Jacob Fullerton",
"author_login": "jfullerton44",
"committed_at": "2024-05-02T16:08:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "01d2db903863888e43822e3a2a14f2704bbe25c0",
"body": null,
"is_bot": false,
"headline": "Update typescript-build-and-publish.yaml for Azure Pipelines (#441)",
"author_name": "Jacob Fullerton",
"author_login": "jfullerton44",
"committed_at": "2024-05-01T20:42:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4a4a4981b3da1258a12c5c65633a52810fcae0b2",
"body": null,
"is_bot": false,
"headline": "update esrp release task (#440)",
"author_name": "Jacob Fullerton",
"author_login": "jfullerton44",
"committed_at": "2024-04-30T20:53:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2270c764646c9e4161d147eb34d3ff5a75333629",
"body": null,
"is_bot": false,
"headline": "Fix cluster ID logic for tunnels.local.api... hostname (#430)",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2024-03-28T20:00:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8ffca0e9d8e40a11c35c05358bdc09f0d69f30ef",
"body": "Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.5 to 1.15.6.\r\n- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)\r\n- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.5...v1.15.6)\r\n\r\n---\r\nupdated-depende\n[…]\nncy-name: follow-redirects\r\n dependency-type: indirect\r\n...\r\n\r\nSigned-off-by: dependabot[bot] <support@github.com>\r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Bump follow-redirects from 1.15.5 to 1.15.6 in /ts (#423)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2024-03-18T16:37:42Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "432fddefe6371e972632f1dd59c9b0fdcdc2f6c6",
"body": "* Detect 4xx error response from firewall\r\n\r\n* Fix ServedByHeaderPrefix in TS SDK\r\n\r\n---------\r\n\r\nCo-authored-by: Jason Ramsay <jasonra@microsoft.com>",
"is_bot": false,
"headline": "Detect 4xx error response from firewall (#418)",
"author_name": "Jason Ginchereau",
"author_login": "jasongin",
"committed_at": "2024-03-15T21:10:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "038b9f86ba3d990d2af121e3244d936699e414b9",
"body": "Bumps [es5-ext](https://github.com/medikoo/es5-ext) from 0.10.53 to 0.10.63.\r\n- [Release notes](https://github.com/medikoo/es5-ext/releases)\r\n- [Changelog](https://github.com/medikoo/es5-ext/blob/main/CHANGELOG.md)\r\n- [Commits](https://github.com/medikoo/es5-ext/compare/v0.10.53...v0.10.63)\r\n\r\n---\r\n\n[…]\n...\r\n\r\nSigned-off-by: dependabot[bot] <support@github.com>\r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\r\nCo-authored-by: jram <jramsay@users.noreply.github.com>",
"is_bot": true,
"headline": "Bump es5-ext from 0.10.53 to 0.10.63 in /ts/src/connections (#412)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2024-03-11T21:08:06Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "db5d357e467df7aec5fa812cbd46ee62547f9322",
"body": "* update dev fpa\r\n\r\n* update versions\r\n\r\n* fix app ID names in all sdk languages\r\n\r\n* fix rs\r\n\r\n* try revert auto-generated rs change\r\n\r\n* string to String",
"is_bot": false,
"headline": "Update dev FPA ID (#419)",
"author_name": "JacobRoberts",
"author_login": "JacobRoberts",
"committed_at": "2024-03-08T22:29:29Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9136491b4be8408ea1ae960c47aae55e97209fa7",
"body": null,
"is_bot": false,
"headline": "update response handling (#417)",
"author_name": "Neelima Potharaj",
"author_login": "neelip",
"committed_at": "2024-03-08T00:00:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8cae9b2a24c65c6c1958f5a0e77d72b23b5c6c30",
"body": null,
"is_bot": false,
"headline": "rs: fix policy registry key name (#415)",
"author_name": "Connor Peet",
"author_login": "connor4312",
"committed_at": "2024-03-06T23:29:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2d16ff17b8512ea8f27486c1fbd56ab35fce8655",
"body": "* Disambiguate Tunnel connection is disposed error\r\n\r\n* update package version\r\n\r\n* update from CR comments",
"is_bot": false,
"headline": "Disambiguate `tunnel connection is disposed` error (#411)",
"author_name": "jram",
"author_login": "jramsay",
"committed_at": "2024-03-05T01:08:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "10c284807694e6832b0d68236391aba0f92ece86",
"body": "* update displayed error message",
"is_bot": false,
"headline": "Update displayed error message for enterprise policies (#405)",
"author_name": "Neelima Potharaj",
"author_login": "neelip",
"committed_at": "2024-02-27T17:44:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cc62516b002cf03a1cc2a07441fbc08c49d8568e",
"body": "* adding exception catch\r\n\r\n* udpdating exception wording\r\n\r\n* capitalizing T\r\n\r\n* catching exceptions with sendasync\r\n\r\n* adding error catch\r\n\r\n* adding original exception message\r\n\r\n* updating ts package.json\r\n\r\n* adding space\r\n\r\n* removing catch\r\n\r\n* updating to latest version\r\n\r\n---------\r\n\r\nCo-authored-by: Utsa Santhosh <usasanthosh@microsoft.com>",
"is_bot": false,
"headline": "TLS Cert Exception (#366)",
"author_name": "usanth",
"author_login": "usanth",
"committed_at": "2024-02-23T18:25:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4997c8f916c80a849feacf2a351f556402445636",
"body": null,
"is_bot": false,
"headline": "update versions (#399)",
"author_name": "Jacob Fullerton",
"author_login": "jfullerton44",
"committed_at": "2024-02-15T17:52:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6e970a83e5e56e99f0a8fe6fe75837c46d7cc5e6",
"body": null,
"is_bot": false,
"headline": "Update typescript-build-and-publish.yaml for Azure Pipelines",
"author_name": "Jacob Fullerton",
"author_login": "jfullerton44",
"committed_at": "2024-02-15T17:05:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9838b504ce049e9ec01ab896f29ca1caac693848",
"body": null,
"is_bot": false,
"headline": "Update typescript-build-and-publish.yaml for Azure Pipelines",
"author_name": "Jacob Fullerton",
"author_login": "jfullerton44",
"committed_at": "2024-02-15T17:03:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d942da8bc2210449438899dd729de3b256e2f644",
"body": "* Update typescript-build-and-publish.yaml for Azure Pipelines\r\n\r\n* remove old\r\n\r\n* add newline at end of file",
"is_bot": false,
"headline": "Update typescript-build-and-publish.yaml for Azure Pipelines (#396)",
"author_name": "Jacob Fullerton",
"author_login": "jfullerton44",
"committed_at": "2024-02-13T23:39:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d2e60e2f5be68b85f9dbdb01db979cb10a4f4d1b",
"body": "Bumps [h2](https://github.com/hyperium/h2) from 0.3.17 to 0.3.24.\r\n- [Release notes](https://github.com/hyperium/h2/releases)\r\n- [Changelog](https://github.com/hyperium/h2/blob/v0.3.24/CHANGELOG.md)\r\n- [Commits](https://github.com/hyperium/h2/compare/v0.3.17...v0.3.24)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: h2\r\n dependency-type: indirect\r\n...\r\n\r\nSigned-off-by: dependabot[bot] <support@github.com>\r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Bump h2 from 0.3.17 to 0.3.24 in /rs (#381)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2024-02-13T18:03:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8f920d7dd65f30bc73410dee50c6a3f11d71e34a",
"body": null,
"is_bot": false,
"headline": "Update README.md (#395)",
"author_name": "Taiyo Sogawa",
"author_login": "taiyosogawa",
"committed_at": "2024-02-06T23:24:00Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4de1ff7979b5758c69218a3f45f6d9784b165072",
"body": "Rather than only host:port\n\nFor microsoft/vscode#201417",
"is_bot": false,
"headline": "rs: allow parsing proxies given as full URIs (#394)",
"author_name": "Connor Peet",
"author_login": "connor4312",
"committed_at": "2024-02-01T17:18:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "56e17611344d673f3d5c63afd8fde2df1a195b7d",
"body": "* - remove internal usage of validateTokenExpiration as it uses client's system time which can cause issues.\r\n\r\n* update SDK version",
"is_bot": false,
"headline": "Remove internal usage of ValidateTokenExpiration. (#393)",
"author_name": "jram",
"author_login": "jramsay",
"committed_at": "2024-01-31T01:09:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c1bf1424846ce3a1297ed3be7b8401cef6904bee",
"body": "* add endpoint query param\r\n\r\n* Revert \"add endpoint query param\"\r\n\r\nThis reverts commit 76b489c2e80d2f51a9c9b551e1310ac8fa26e1e7.\r\n\r\n* use tostring\r\n\r\n* update types\r\n\r\n* fix delete\r\n\r\n* fix build\r\n\r\n* update port request\r\n\r\n* fix syntax\r\n\r\n* fix build again\r\n\r\n* fix build\r\n\r\n* compilation error, build connections in ci\r\n\r\n* run clippy and cargo fmt\r\n\r\n---------\r\n\r\nCo-authored-by: Connor Peet <connor@peet.io>",
"is_bot": false,
"headline": "Add endpoint connection mode query param (#392)",
"author_name": "Jacob Fullerton",
"author_login": "jfullerton44",
"committed_at": "2024-01-30T00:33:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "11223263d6ff9679ece788ac2f0ab8a6823a1eb9",
"body": null,
"is_bot": false,
"headline": "rs: add missing semicolon in partner UA header (#391)",
"author_name": "Connor Peet",
"author_login": "connor4312",
"committed_at": "2024-01-29T23:17:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d033e5d3083e8e8f154880b8f9e811c2db73a153",
"body": "Fixes #388",
"is_bot": false,
"headline": "rs: fix error logs and compilation warning on non-windows (#390)",
"author_name": "Connor Peet",
"author_login": "connor4312",
"committed_at": "2024-01-29T23:14:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f8d0f6349ea9b513d9abd6e596be4ec83b291cbd",
"body": "* update rust endpoint requests\r\n\r\n* update types",
"is_bot": false,
"headline": "Update rust endpoint requests (#389)",
"author_name": "Jacob Fullerton",
"author_login": "jfullerton44",
"committed_at": "2024-01-29T23:13:27Z",
"body_truncated": false,
"is_coding_agent": false
}
],
"releases_count": 14,
"commits_last_year": 52,
"latest_release_at": "2026-06-22T21:32:27Z",
"latest_release_tag": "java-v0.4.1",
"releases_from_tags": false,
"days_since_last_push": 11,
"active_weeks_last_year": 15,
"days_since_latest_release": 28,
"mean_days_between_releases": 154.4
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": true,
"has_contributing": true,
"health_percentage": 87,
"has_issue_template": false,
"has_code_of_conduct": true,
"has_pull_request_template": true
},
"ecosystem": {
"packages": [
{
"name": "github.com/microsoft/dev-tunnels",
"exists": true,
"license": null,
"keywords": [],
"ecosystem": "go",
"matches_repo": true,
"registry_url": "https://pkg.go.dev/github.com/microsoft/dev-tunnels",
"is_deprecated": false,
"latest_version": "v0.1.27",
"repository_url": "https://github.com/microsoft/dev-tunnels",
"versions_count": 21,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": null,
"latest_published_at": "2026-06-19T20:25:31Z",
"latest_version_yanked": null,
"days_since_latest_publish": 31
},
{
"name": "tunnels",
"exists": true,
"license": "MIT",
"keywords": [],
"ecosystem": "crates",
"matches_repo": null,
"registry_url": "https://crates.io/crates/tunnels",
"is_deprecated": false,
"latest_version": "0.1.0",
"repository_url": null,
"versions_count": 1,
"total_downloads": 2037,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": 20,
"first_published_at": "2024-03-17T10:38:40.424961Z",
"latest_published_at": "2024-03-17T10:38:40.424961Z",
"latest_version_yanked": false,
"days_since_latest_publish": 856
}
]
},
"popularity": {
"forks": 47,
"stars": 490,
"watchers": 8,
"fork_history": {
"days": [
{
"date": "2022-05-17",
"count": 1
},
{
"date": "2022-06-16",
"count": 1
},
{
"date": "2023-01-08",
"count": 1
},
{
"date": "2023-02-15",
"count": 1
},
{
"date": "2023-04-24",
"count": 1
},
{
"date": "2023-05-19",
"count": 1
},
{
"date": "2023-06-20",
"count": 1
},
{
"date": "2023-07-07",
"count": 1
},
{
"date": "2023-07-17",
"count": 1
},
{
"date": "2023-09-01",
"count": 1
},
{
"date": "2023-09-14",
"count": 1
},
{
"date": "2023-11-03",
"count": 1
},
{
"date": "2023-12-15",
"count": 1
},
{
"date": "2024-01-24",
"count": 1
},
{
"date": "2024-03-17",
"count": 1
},
{
"date": "2024-05-14",
"count": 1
},
{
"date": "2024-08-16",
"count": 1
},
{
"date": "2024-10-15",
"count": 1
},
{
"date": "2025-01-02",
"count": 1
},
{
"date": "2025-01-17",
"count": 1
},
{
"date": "2025-01-26",
"count": 1
},
{
"date": "2025-03-31",
"count": 1
},
{
"date": "2025-05-12",
"count": 1
},
{
"date": "2025-05-28",
"count": 1
},
{
"date": "2025-06-11",
"count": 1
},
{
"date": "2025-06-19",
"count": 1
},
{
"date": "2025-07-02",
"count": 1
},
{
"date": "2025-07-29",
"count": 1
},
{
"date": "2025-10-17",
"count": 1
},
{
"date": "2025-10-21",
"count": 1
},
{
"date": "2025-11-19",
"count": 1
},
{
"date": "2025-11-26",
"count": 1
},
{
"date": "2025-11-27",
"count": 1
},
{
"date": "2026-02-15",
"count": 1
},
{
"date": "2026-04-01",
"count": 1
},
{
"date": "2026-04-08",
"count": 1
},
{
"date": "2026-04-10",
"count": 1
},
{
"date": "2026-04-18",
"count": 1
},
{
"date": "2026-05-07",
"count": 1
},
{
"date": "2026-06-05",
"count": 1
},
{
"date": "2026-06-08",
"count": 1
},
{
"date": "2026-06-09",
"count": 1
},
{
"date": "2026-06-16",
"count": 1
},
{
"date": "2026-06-17",
"count": 1
},
{
"date": "2026-07-08",
"count": 1
},
{
"date": "2026-07-10",
"count": 1
}
],
"complete": true,
"collected": 46,
"total_forks": 47
},
"star_history": {
"days": [
{
"date": "2022-02-07",
"count": 1
},
{
"date": "2022-02-10",
"count": 1
},
{
"date": "2022-05-16",
"count": 1
},
{
"date": "2022-05-17",
"count": 2
},
{
"date": "2022-05-18",
"count": 1
},
{
"date": "2022-06-08",
"count": 1
},
{
"date": "2022-06-10",
"count": 1
},
{
"date": "2022-06-11",
"count": 1
},
{
"date": "2022-07-13",
"count": 1
},
{
"date": "2022-08-10",
"count": 1
},
{
"date": "2022-09-12",
"count": 1
},
{
"date": "2022-09-15",
"count": 1
},
{
"date": "2022-09-16",
"count": 1
},
{
"date": "2022-09-22",
"count": 1
},
{
"date": "2022-09-23",
"count": 2
},
{
"date": "2022-09-30",
"count": 1
},
{
"date": "2022-10-19",
"count": 1
},
{
"date": "2022-10-20",
"count": 1
},
{
"date": "2022-11-08",
"count": 2
},
{
"date": "2022-11-09",
"count": 1
},
{
"date": "2022-11-14",
"count": 1
},
{
"date": "2022-11-19",
"count": 1
},
{
"date": "2022-11-25",
"count": 1
},
{
"date": "2022-12-09",
"count": 1
},
{
"date": "2022-12-10",
"count": 2
},
{
"date": "2022-12-12",
"count": 1
},
{
"date": "2022-12-14",
"count": 1
},
{
"date": "2022-12-16",
"count": 2
},
{
"date": "2022-12-17",
"count": 2
},
{
"date": "2022-12-18",
"count": 1
},
{
"date": "2022-12-24",
"count": 1
},
{
"date": "2022-12-25",
"count": 2
},
{
"date": "2022-12-29",
"count": 1
},
{
"date": "2023-01-01",
"count": 1
},
{
"date": "2023-01-03",
"count": 2
},
{
"date": "2023-01-08",
"count": 1
},
{
"date": "2023-01-09",
"count": 1
},
{
"date": "2023-01-17",
"count": 1
},
{
"date": "2023-01-18",
"count": 1
},
{
"date": "2023-01-31",
"count": 1
},
{
"date": "2023-02-02",
"count": 1
},
{
"date": "2023-02-03",
"count": 1
},
{
"date": "2023-02-07",
"count": 1
},
{
"date": "2023-02-11",
"count": 1
},
{
"date": "2023-02-15",
"count": 1
},
{
"date": "2023-02-16",
"count": 1
},
{
"date": "2023-02-17",
"count": 1
},
{
"date": "2023-02-19",
"count": 1
},
{
"date": "2023-02-24",
"count": 1
},
{
"date": "2023-02-26",
"count": 1
},
{
"date": "2023-02-28",
"count": 1
},
{
"date": "2023-03-04",
"count": 1
},
{
"date": "2023-03-08",
"count": 1
},
{
"date": "2023-03-17",
"count": 1
},
{
"date": "2023-03-25",
"count": 1
},
{
"date": "2023-03-28",
"count": 1
},
{
"date": "2023-03-29",
"count": 2
},
{
"date": "2023-04-03",
"count": 1
},
{
"date": "2023-04-13",
"count": 1
},
{
"date": "2023-04-14",
"count": 1
},
{
"date": "2023-04-23",
"count": 1
},
{
"date": "2023-05-09",
"count": 1
},
{
"date": "2023-05-11",
"count": 1
},
{
"date": "2023-05-13",
"count": 1
},
{
"date": "2023-05-18",
"count": 1
},
{
"date": "2023-05-19",
"count": 1
},
{
"date": "2023-05-21",
"count": 1
},
{
"date": "2023-05-23",
"count": 2
},
{
"date": "2023-05-24",
"count": 5
},
{
"date": "2023-05-25",
"count": 1
},
{
"date": "2023-05-26",
"count": 1
},
{
"date": "2023-05-29",
"count": 1
},
{
"date": "2023-06-07",
"count": 1
},
{
"date": "2023-06-08",
"count": 1
},
{
"date": "2023-06-09",
"count": 1
},
{
"date": "2023-06-10",
"count": 1
},
{
"date": "2023-06-15",
"count": 1
},
{
"date": "2023-06-20",
"count": 1
},
{
"date": "2023-07-03",
"count": 1
},
{
"date": "2023-07-04",
"count": 1
},
{
"date": "2023-07-06",
"count": 1
},
{
"date": "2023-07-08",
"count": 2
},
{
"date": "2023-07-10",
"count": 1
},
{
"date": "2023-07-30",
"count": 1
},
{
"date": "2023-08-01",
"count": 1
},
{
"date": "2023-08-02",
"count": 1
},
{
"date": "2023-08-14",
"count": 1
},
{
"date": "2023-08-17",
"count": 1
},
{
"date": "2023-08-23",
"count": 2
},
{
"date": "2023-08-26",
"count": 1
},
{
"date": "2023-08-28",
"count": 2
},
{
"date": "2023-08-29",
"count": 1
},
{
"date": "2023-08-30",
"count": 3
},
{
"date": "2023-08-31",
"count": 1
},
{
"date": "2023-09-06",
"count": 1
},
{
"date": "2023-09-07",
"count": 1
},
{
"date": "2023-09-08",
"count": 7
},
{
"date": "2023-09-09",
"count": 3
},
{
"date": "2023-09-10",
"count": 2
},
{
"date": "2023-09-11",
"count": 3
},
{
"date": "2023-09-13",
"count": 2
},
{
"date": "2023-09-16",
"count": 1
},
{
"date": "2023-09-18",
"count": 3
},
{
"date": "2023-09-19",
"count": 1
},
{
"date": "2023-09-20",
"count": 1
},
{
"date": "2023-09-21",
"count": 1
},
{
"date": "2023-09-26",
"count": 1
},
{
"date": "2023-09-28",
"count": 1
},
{
"date": "2023-10-05",
"count": 2
},
{
"date": "2023-10-10",
"count": 1
},
{
"date": "2023-10-12",
"count": 2
},
{
"date": "2023-10-13",
"count": 1
},
{
"date": "2023-10-16",
"count": 1
},
{
"date": "2023-10-17",
"count": 1
},
{
"date": "2023-10-18",
"count": 1
},
{
"date": "2023-10-22",
"count": 1
},
{
"date": "2023-10-23",
"count": 1
},
{
"date": "2023-10-26",
"count": 1
},
{
"date": "2023-10-27",
"count": 1
},
{
"date": "2023-11-01",
"count": 2
},
{
"date": "2023-11-09",
"count": 1
},
{
"date": "2023-11-10",
"count": 1
},
{
"date": "2023-11-12",
"count": 1
},
{
"date": "2023-11-14",
"count": 1
},
{
"date": "2023-11-15",
"count": 1
},
{
"date": "2023-11-17",
"count": 1
},
{
"date": "2023-11-18",
"count": 1
},
{
"date": "2023-11-20",
"count": 1
},
{
"date": "2023-11-21",
"count": 1
},
{
"date": "2023-11-24",
"count": 1
},
{
"date": "2023-11-25",
"count": 1
},
{
"date": "2023-11-26",
"count": 1
},
{
"date": "2023-11-29",
"count": 1
},
{
"date": "2023-11-30",
"count": 1
},
{
"date": "2023-12-04",
"count": 1
},
{
"date": "2023-12-05",
"count": 1
},
{
"date": "2023-12-06",
"count": 2
},
{
"date": "2023-12-07",
"count": 1
},
{
"date": "2023-12-11",
"count": 5
},
{
"date": "2023-12-12",
"count": 1
},
{
"date": "2023-12-13",
"count": 2
},
{
"date": "2023-12-15",
"count": 2
},
{
"date": "2023-12-19",
"count": 1
},
{
"date": "2023-12-20",
"count": 1
},
{
"date": "2023-12-25",
"count": 2
},
{
"date": "2023-12-26",
"count": 1
},
{
"date": "2023-12-28",
"count": 1
},
{
"date": "2024-01-03",
"count": 3
},
{
"date": "2024-01-04",
"count": 1
},
{
"date": "2024-01-05",
"count": 3
},
{
"date": "2024-01-07",
"count": 1
},
{
"date": "2024-01-09",
"count": 1
},
{
"date": "2024-01-10",
"count": 1
},
{
"date": "2024-01-12",
"count": 1
},
{
"date": "2024-01-18",
"count": 2
},
{
"date": "2024-01-19",
"count": 1
},
{
"date": "2024-01-22",
"count": 1
},
{
"date": "2024-01-23",
"count": 2
},
{
"date": "2024-01-24",
"count": 1
},
{
"date": "2024-01-31",
"count": 1
},
{
"date": "2024-02-03",
"count": 1
},
{
"date": "2024-02-06",
"count": 1
},
{
"date": "2024-02-12",
"count": 1
},
{
"date": "2024-02-14",
"count": 1
},
{
"date": "2024-02-15",
"count": 2
},
{
"date": "2024-02-17",
"count": 1
},
{
"date": "2024-02-19",
"count": 1
},
{
"date": "2024-02-21",
"count": 3
},
{
"date": "2024-02-25",
"count": 1
},
{
"date": "2024-02-26",
"count": 1
},
{
"date": "2024-02-28",
"count": 1
},
{
"date": "2024-02-29",
"count": 1
},
{
"date": "2024-03-01",
"count": 1
},
{
"date": "2024-03-05",
"count": 1
},
{
"date": "2024-03-07",
"count": 1
},
{
"date": "2024-03-09",
"count": 1
},
{
"date": "2024-03-13",
"count": 1
},
{
"date": "2024-03-14",
"count": 1
},
{
"date": "2024-03-19",
"count": 2
},
{
"date": "2024-03-27",
"count": 1
},
{
"date": "2024-04-01",
"count": 1
},
{
"date": "2024-04-02",
"count": 1
},
{
"date": "2024-04-03",
"count": 1
},
{
"date": "2024-04-05",
"count": 1
},
{
"date": "2024-04-07",
"count": 2
},
{
"date": "2024-04-12",
"count": 1
},
{
"date": "2024-04-15",
"count": 1
},
{
"date": "2024-04-20",
"count": 2
},
{
"date": "2024-04-26",
"count": 1
},
{
"date": "2024-04-27",
"count": 1
},
{
"date": "2024-04-30",
"count": 1
},
{
"date": "2024-05-06",
"count": 1
},
{
"date": "2024-05-09",
"count": 1
},
{
"date": "2024-05-10",
"count": 1
},
{
"date": "2024-05-14",
"count": 1
},
{
"date": "2024-05-16",
"count": 1
},
{
"date": "2024-05-28",
"count": 1
},
{
"date": "2024-06-04",
"count": 1
},
{
"date": "2024-06-05",
"count": 1
},
{
"date": "2024-06-11",
"count": 2
},
{
"date": "2024-06-12",
"count": 1
},
{
"date": "2024-06-14",
"count": 1
},
{
"date": "2024-06-15",
"count": 1
},
{
"date": "2024-06-18",
"count": 1
},
{
"date": "2024-06-22",
"count": 1
},
{
"date": "2024-07-05",
"count": 1
},
{
"date": "2024-07-07",
"count": 1
},
{
"date": "2024-07-11",
"count": 1
},
{
"date": "2024-07-12",
"count": 3
},
{
"date": "2024-07-19",
"count": 1
},
{
"date": "2024-07-26",
"count": 1
},
{
"date": "2024-07-31",
"count": 1
},
{
"date": "2024-08-01",
"count": 1
},
{
"date": "2024-08-04",
"count": 1
},
{
"date": "2024-08-08",
"count": 1
},
{
"date": "2024-08-22",
"count": 1
},
{
"date": "2024-08-26",
"count": 1
},
{
"date": "2024-08-28",
"count": 1
},
{
"date": "2024-09-10",
"count": 1
},
{
"date": "2024-09-18",
"count": 1
},
{
"date": "2024-09-23",
"count": 1
},
{
"date": "2024-09-25",
"count": 1
},
{
"date": "2024-09-30",
"count": 1
},
{
"date": "2024-10-06",
"count": 1
},
{
"date": "2024-10-08",
"count": 1
},
{
"date": "2024-10-19",
"count": 1
},
{
"date": "2024-10-22",
"count": 1
},
{
"date": "2024-10-23",
"count": 1
},
{
"date": "2024-10-31",
"count": 1
},
{
"date": "2024-11-04",
"count": 1
},
{
"date": "2024-11-11",
"count": 1
},
{
"date": "2024-11-12",
"count": 1
},
{
"date": "2024-11-13",
"count": 1
},
{
"date": "2024-11-14",
"count": 2
},
{
"date": "2024-11-15",
"count": 1
},
{
"date": "2024-11-20",
"count": 1
},
{
"date": "2024-12-03",
"count": 1
},
{
"date": "2024-12-09",
"count": 1
},
{
"date": "2024-12-10",
"count": 1
},
{
"date": "2024-12-11",
"count": 1
},
{
"date": "2024-12-12",
"count": 1
},
{
"date": "2024-12-14",
"count": 1
},
{
"date": "2024-12-16",
"count": 1
},
{
"date": "2024-12-20",
"count": 1
},
{
"date": "2024-12-22",
"count": 1
},
{
"date": "2024-12-26",
"count": 2
},
{
"date": "2024-12-31",
"count": 1
},
{
"date": "2025-01-06",
"count": 1
},
{
"date": "2025-01-08",
"count": 1
},
{
"date": "2025-01-14",
"count": 2
},
{
"date": "2025-01-16",
"count": 1
},
{
"date": "2025-01-17",
"count": 1
},
{
"date": "2025-01-21",
"count": 2
},
{
"date": "2025-01-25",
"count": 1
},
{
"date": "2025-01-30",
"count": 1
},
{
"date": "2025-02-04",
"count": 2
},
{
"date": "2025-02-09",
"count": 1
},
{
"date": "2025-02-15",
"count": 1
},
{
"date": "2025-02-22",
"count": 1
},
{
"date": "2025-02-23",
"count": 2
},
{
"date": "2025-02-28",
"count": 2
},
{
"date": "2025-03-03",
"count": 1
},
{
"date": "2025-03-04",
"count": 1
},
{
"date": "2025-03-11",
"count": 3
},
{
"date": "2025-03-15",
"count": 1
},
{
"date": "2025-03-16",
"count": 1
},
{
"date": "2025-03-18",
"count": 1
},
{
"date": "2025-03-19",
"count": 2
},
{
"date": "2025-03-20",
"count": 1
},
{
"date": "2025-03-22",
"count": 1
},
{
"date": "2025-03-25",
"count": 1
},
{
"date": "2025-03-26",
"count": 1
},
{
"date": "2025-03-30",
"count": 1
},
{
"date": "2025-04-04",
"count": 1
},
{
"date": "2025-04-12",
"count": 1
},
{
"date": "2025-04-14",
"count": 1
},
{
"date": "2025-04-15",
"count": 1
},
{
"date": "2025-04-16",
"count": 2
},
{
"date": "2025-04-20",
"count": 1
},
{
"date": "2025-04-21",
"count": 1
},
{
"date": "2025-04-27",
"count": 2
},
{
"date": "2025-05-03",
"count": 1
},
{
"date": "2025-05-09",
"count": 1
},
{
"date": "2025-05-12",
"count": 3
},
{
"date": "2025-05-13",
"count": 1
},
{
"date": "2025-05-15",
"count": 1
},
{
"date": "2025-05-21",
"count": 1
},
{
"date": "2025-05-22",
"count": 1
},
{
"date": "2025-05-26",
"count": 1
},
{
"date": "2025-05-27",
"count": 1
},
{
"date": "2025-05-28",
"count": 1
},
{
"date": "2025-05-29",
"count": 2
},
{
"date": "2025-06-01",
"count": 1
},
{
"date": "2025-06-11",
"count": 1
},
{
"date": "2025-06-13",
"count": 1
},
{
"date": "2025-06-25",
"count": 1
},
{
"date": "2025-06-29",
"count": 1
},
{
"date": "2025-06-30",
"count": 1
},
{
"date": "2025-07-01",
"count": 1
},
{
"date": "2025-07-02",
"count": 1
},
{
"date": "2025-07-03",
"count": 1
},
{
"date": "2025-07-08",
"count": 1
},
{
"date": "2025-07-10",
"count": 1
},
{
"date": "2025-07-22",
"count": 2
},
{
"date": "2025-07-23",
"count": 1
},
{
"date": "2025-07-31",
"count": 2
},
{
"date": "2025-08-02",
"count": 1
},
{
"date": "2025-08-03",
"count": 1
},
{
"date": "2025-08-05",
"count": 1
},
{
"date": "2025-08-11",
"count": 1
},
{
"date": "2025-08-14",
"count": 1
},
{
"date": "2025-08-21",
"count": 1
},
{
"date": "2025-08-23",
"count": 1
},
{
"date": "2025-08-24",
"count": 1
},
{
"date": "2025-08-26",
"count": 1
},
{
"date": "2025-08-28",
"count": 1
},
{
"date": "2025-08-29",
"count": 1
},
{
"date": "2025-09-04",
"count": 1
},
{
"date": "2025-09-15",
"count": 1
},
{
"date": "2025-09-17",
"count": 1
},
{
"date": "2025-09-22",
"count": 3
},
{
"date": "2025-09-26",
"count": 1
},
{
"date": "2025-09-30",
"count": 2
},
{
"date": "2025-10-01",
"count": 1
},
{
"date": "2025-10-28",
"count": 1
},
{
"date": "2025-10-30",
"count": 1
},
{
"date": "2025-10-31",
"count": 1
},
{
"date": "2025-11-01",
"count": 1
},
{
"date": "2025-11-11",
"count": 1
},
{
"date": "2025-11-12",
"count": 4
},
{
"date": "2025-11-17",
"count": 1
},
{
"date": "2025-11-18",
"count": 1
},
{
"date": "2025-11-23",
"count": 2
},
{
"date": "2025-11-25",
"count": 3
},
{
"date": "2025-12-15",
"count": 1
},
{
"date": "2025-12-27",
"count": 1
},
{
"date": "2026-01-03",
"count": 1
},
{
"date": "2026-01-06",
"count": 1
},
{
"date": "2026-01-12",
"count": 1
},
{
"date": "2026-01-16",
"count": 1
},
{
"date": "2026-01-17",
"count": 1
},
{
"date": "2026-01-21",
"count": 1
},
{
"date": "2026-01-26",
"count": 1
},
{
"date": "2026-01-29",
"count": 1
},
{
"date": "2026-01-31",
"count": 1
},
{
"date": "2026-02-02",
"count": 1
},
{
"date": "2026-02-04",
"count": 1
},
{
"date": "2026-02-05",
"count": 1
},
{
"date": "2026-02-06",
"count": 1
},
{
"date": "2026-02-08",
"count": 1
},
{
"date": "2026-02-09",
"count": 1
},
{
"date": "2026-02-10",
"count": 1
},
{
"date": "2026-02-12",
"count": 1
},
{
"date": "2026-02-15",
"count": 1
},
{
"date": "2026-02-17",
"count": 1
},
{
"date": "2026-02-20",
"count": 1
},
{
"date": "2026-02-25",
"count": 1
},
{
"date": "2026-02-26",
"count": 1
},
{
"date": "2026-02-28",
"count": 1
},
{
"date": "2026-03-11",
"count": 2
},
{
"date": "2026-03-13",
"count": 1
},
{
"date": "2026-03-14",
"count": 1
},
{
"date": "2026-03-31",
"count": 1
},
{
"date": "2026-04-04",
"count": 1
},
{
"date": "2026-04-05",
"count": 1
},
{
"date": "2026-04-07",
"count": 1
},
{
"date": "2026-04-11",
"count": 1
},
{
"date": "2026-04-15",
"count": 1
},
{
"date": "2026-04-18",
"count": 1
},
{
"date": "2026-04-25",
"count": 1
},
{
"date": "2026-04-28",
"count": 1
},
{
"date": "2026-04-29",
"count": 1
},
{
"date": "2026-05-02",
"count": 2
},
{
"date": "2026-05-15",
"count": 1
},
{
"date": "2026-05-19",
"count": 2
},
{
"date": "2026-05-20",
"count": 1
},
{
"date": "2026-05-22",
"count": 1
},
{
"date": "2026-05-23",
"count": 1
},
{
"date": "2026-05-25",
"count": 1
},
{
"date": "2026-05-28",
"count": 2
},
{
"date": "2026-05-30",
"count": 1
},
{
"date": "2026-06-01",
"count": 1
},
{
"date": "2026-06-06",
"count": 1
},
{
"date": "2026-06-07",
"count": 1
},
{
"date": "2026-06-15",
"count": 1
},
{
"date": "2026-06-16",
"count": 3
},
{
"date": "2026-06-17",
"count": 1
},
{
"date": "2026-06-18",
"count": 1
},
{
"date": "2026-06-19",
"count": 2
},
{
"date": "2026-06-22",
"count": 1
},
{
"date": "2026-06-23",
"count": 2
},
{
"date": "2026-07-01",
"count": 1
},
{
"date": "2026-07-05",
"count": 1
},
{
"date": "2026-07-10",
"count": 1
},
{
"date": "2026-07-11",
"count": 1
},
{
"date": "2026-07-20",
"count": 2
}
],
"complete": true,
"collected": 490,
"total_stars": 490
},
"open_issues_and_prs": 41
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [
"examples",
"samples"
],
"has_llms_txt": false,
"has_dockerfile": false,
"has_mcp_signal": false,
"bootstrap_files": [],
"api_schema_files": [],
"has_devcontainer": false,
"typecheck_configs": [
"samples/ts/client/tsconfig.json",
"samples/ts/host/tsconfig.json",
"ts/src/connections/tsconfig.json",
"ts/src/contracts/tsconfig.json",
"ts/src/management/tsconfig.json",
"ts/test/tunnels-test/tsconfig.json",
"ts/tsconfig.json"
],
"toolchain_manifests": [
"cs/src/Connections/DevTunnels.Connections.csproj",
"cs/src/Contracts/DevTunnels.Contracts.csproj",
"cs/src/Management/DevTunnels.Management.csproj",
"cs/test/TunnelsSDK.Test/TunnelsSDK.Test.csproj",
"cs/tools/TunnelsSDK.Generator/TunnelsSDK.Generator.csproj",
"go.mod",
"java/pom.xml",
"rs/Cargo.toml"
],
"largest_source_bytes": 82293,
"source_files_sampled": 400,
"oversized_source_files": 3,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"dependencies": {
"manifests": [
"go.mod",
"java/pom.xml",
"rs/Cargo.toml",
"ts/package.json"
],
"advisories": {
"error": null,
"scope": "published_package",
"source": "osv",
"findings": [
{
"name": "russh",
"direct": true,
"version": "0.37.1",
"severity": "high",
"ecosystem": "crates",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-45x7-px36-x8w8",
"GHSA-4r3c-5hpg-58qr",
"GHSA-76r6-x97p-67vr",
"GHSA-f5v4-2wr6-hqmg",
"GHSA-g9f8-wqj9-fjw5",
"GHSA-g9g7-5cgw-6v28",
"GHSA-h5rc-j5f5-3gcm",
"GHSA-hpv4-5h6f-wqr3",
"GHSA-vgvv-x7xg-6cqg",
"GHSA-wwx6-x28x-8259"
],
"fixed_version": "3.4.0",
"advisory_count": 11,
"oldest_advisory_days": 945
},
{
"name": "quick-xml",
"direct": false,
"version": "0.30.0",
"severity": "high",
"ecosystem": "crates",
"cvss_score": 7.5,
"advisory_ids": [
"RUSTSEC-2026-0194",
"RUSTSEC-2026-0195"
],
"fixed_version": "0.41.0",
"advisory_count": 2,
"oldest_advisory_days": 22
},
{
"name": "russh-cryptovec",
"direct": false,
"version": "0.7.3",
"severity": "high",
"ecosystem": "crates",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-g9f8-wqj9-fjw5",
"RUSTSEC-2026-0153"
],
"fixed_version": "0.60.3",
"advisory_count": 2,
"oldest_advisory_days": 67
},
{
"name": "ed25519-dalek",
"direct": false,
"version": "1.0.1",
"severity": "moderate",
"ecosystem": "crates",
"cvss_score": 5.9,
"advisory_ids": [
"GHSA-w5vr-6qhr-36cc",
"RUSTSEC-2022-0093"
],
"fixed_version": "2.0.0",
"advisory_count": 2,
"oldest_advisory_days": 1501
},
{
"name": "opentelemetry_sdk",
"direct": false,
"version": "0.20.0",
"severity": "moderate",
"ecosystem": "crates",
"cvss_score": 5.3,
"advisory_ids": [
"GHSA-w9wp-h8wv-79jx"
],
"fixed_version": "0.32.1",
"advisory_count": 1,
"oldest_advisory_days": 26
},
{
"name": "time",
"direct": false,
"version": "0.3.15",
"severity": "moderate",
"ecosystem": "crates",
"cvss_score": null,
"advisory_ids": [
"GHSA-r6v5-fh4h-64xc",
"RUSTSEC-2026-0009"
],
"fixed_version": "0.3.47",
"advisory_count": 2,
"oldest_advisory_days": 166
},
{
"name": "curve25519-dalek",
"direct": false,
"version": "3.2.1",
"severity": "low",
"ecosystem": "crates",
"cvss_score": 2.9,
"advisory_ids": [
"GHSA-x4gp-pqpj-f43q",
"RUSTSEC-2024-0344"
],
"fixed_version": "4.1.3",
"advisory_count": 2,
"oldest_advisory_days": 763
},
{
"name": "rand",
"direct": false,
"version": "0.7.3",
"severity": "low",
"ecosystem": "crates",
"cvss_score": null,
"advisory_ids": [
"GHSA-cq8v-f236-94qc",
"RUSTSEC-2026-0097"
],
"fixed_version": "0.10.1",
"advisory_count": 2,
"oldest_advisory_days": 103
},
{
"name": "opentelemetry_api",
"direct": false,
"version": "0.20.0",
"severity": "unknown",
"ecosystem": "crates",
"cvss_score": null,
"advisory_ids": [
"RUSTSEC-2024-0387"
],
"fixed_version": null,
"advisory_count": 1,
"oldest_advisory_days": 748
},
{
"name": "safemem",
"direct": false,
"version": "0.3.3",
"severity": "unknown",
"ecosystem": "crates",
"cvss_score": null,
"advisory_ids": [
"RUSTSEC-2023-0081"
],
"fixed_version": null,
"advisory_count": 1,
"oldest_advisory_days": 1253
}
],
"collected": true,
"truncated": false,
"by_severity": {
"low": 2,
"high": 3,
"unknown": 2,
"moderate": 3
},
"advisory_count": 26,
"affected_count": 10,
"assessed_count": 240,
"assessed_package": "crates:tunnels@0.1.0",
"unassessed_count": 0,
"direct_affected_count": 1
},
"ecosystems": [
"crates",
"go",
"maven",
"npm"
],
"dependencies": [
{
"name": "github.com/gorilla/websocket",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.4.2"
},
{
"name": "github.com/rodaine/table",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.0.1"
},
{
"name": "golang.org/x/crypto",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.23.0"
},
{
"name": "org.apache.sshd:sshd-netty",
"manifest": "java/pom.xml",
"ecosystem": "maven",
"version_constraint": "2.8.0"
},
{
"name": "io.netty:netty-codec-http",
"manifest": "java/pom.xml",
"ecosystem": "maven",
"version_constraint": "4.1.132.Final"
},
{
"name": "io.netty:netty-handler",
"manifest": "java/pom.xml",
"ecosystem": "maven",
"version_constraint": "4.1.94.Final"
},
{
"name": "io.netty:netty-transport",
"manifest": "java/pom.xml",
"ecosystem": "maven",
"version_constraint": "4.1.72.Final"
},
{
"name": "org.apache.maven.shared:maven-shared-utils",
"manifest": "java/pom.xml",
"ecosystem": "maven",
"version_constraint": "3.3.4"
},
{
"name": "commons-io:commons-io",
"manifest": "java/pom.xml",
"ecosystem": "maven",
"version_constraint": "2.7"
},
{
"name": "com.google.code.gson:gson",
"manifest": "java/pom.xml",
"ecosystem": "maven",
"version_constraint": "2.9.0"
},
{
"name": "com.puppycrawl.tools:checkstyle",
"manifest": "java/pom.xml",
"ecosystem": "maven",
"version_constraint": "9.3"
},
{
"name": "org.slf4j:slf4j-api",
"manifest": "java/pom.xml",
"ecosystem": "maven",
"version_constraint": "1.7.26"
},
{
"name": "serde",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "1"
},
{
"name": "jiff",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.2"
},
{
"name": "reqwest",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.13"
},
{
"name": "url",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "2"
},
{
"name": "opentelemetry",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.20"
},
{
"name": "serde_json",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "1"
},
{
"name": "async-trait",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.1"
},
{
"name": "thiserror",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "1.0"
},
{
"name": "log",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.4"
},
{
"name": "tokio",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "1.20"
},
{
"name": "tokio-util",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.7"
},
{
"name": "tokio-tungstenite",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.29"
},
{
"name": "futures-util",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.3"
},
{
"name": "uuid",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "1.4"
},
{
"name": "rand",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.8.5"
},
{
"name": "russh",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.37.1"
},
{
"name": "russh-keys",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.37.1"
},
{
"name": "hyper",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "1.9"
},
{
"name": "http-body-util",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.1"
},
{
"name": "hyper-util",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.1"
},
{
"name": "os_info",
"manifest": "rs/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "3"
},
{
"name": "@microsoft/dev-tunnels-ssh",
"manifest": "ts/package.json",
"ecosystem": "npm",
"version_constraint": "^3.12.36"
},
{
"name": "@microsoft/dev-tunnels-ssh-tcp",
"manifest": "ts/package.json",
"ecosystem": "npm",
"version_constraint": "^3.12.36"
},
{
"name": "await-semaphore",
"manifest": "ts/package.json",
"ecosystem": "npm",
"version_constraint": "^0.1.3"
},
{
"name": "axios",
"manifest": "ts/package.json",
"ecosystem": "npm",
"version_constraint": "^1.13.5"
},
{
"name": "buffer",
"manifest": "ts/package.json",
"ecosystem": "npm",
"version_constraint": "^5.2.1"
},
{
"name": "debug",
"manifest": "ts/package.json",
"ecosystem": "npm",
"version_constraint": "^4.1.1"
},
{
"name": "uuid",
"manifest": "ts/package.json",
"ecosystem": "npm",
"version_constraint": "^3.3.3"
},
{
"name": "vscode-jsonrpc",
"manifest": "ts/package.json",
"ecosystem": "npm",
"version_constraint": "^4.0.0"
}
],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "async-trait",
"direct": true,
"version": "0.1.56",
"ecosystem": "crates"
},
{
"name": "futures-util",
"direct": true,
"version": "0.3.28",
"ecosystem": "crates"
},
{
"name": "http-body-util",
"direct": true,
"version": "0.1.3",
"ecosystem": "crates"
},
{
"name": "hyper",
"direct": true,
"version": "1.9.0",
"ecosystem": "crates"
},
{
"name": "hyper-util",
"direct": true,
"version": "0.1.20",
"ecosystem": "crates"
},
{
"name": "jiff",
"direct": true,
"version": "0.2.24",
"ecosystem": "crates"
},
{
"name": "log",
"direct": true,
"version": "0.4.29",
"ecosystem": "crates"
},
{
"name": "opentelemetry",
"direct": true,
"version": "0.20.0",
"ecosystem": "crates"
},
{
"name": "os_info",
"direct": true,
"version": "3.7.0",
"ecosystem": "crates"
},
{
"name": "rand",
"direct": true,
"version": "0.7.3",
"ecosystem": "crates"
},
{
"name": "rand",
"direct": true,
"version": "0.8.5",
"ecosystem": "crates"
},
{
"name": "rand",
"direct": true,
"version": "0.9.4",
"ecosystem": "crates"
},
{
"name": "reqwest",
"direct": true,
"version": "0.13.2",
"ecosystem": "crates"
},
{
"name": "russh",
"direct": true,
"version": "0.37.1",
"ecosystem": "crates"
},
{
"name": "russh-keys",
"direct": true,
"version": "0.37.1",
"ecosystem": "crates"
},
{
"name": "serde",
"direct": true,
"version": "1.0.228",
"ecosystem": "crates"
},
{
"name": "serde_json",
"direct": true,
"version": "1.0.81",
"ecosystem": "crates"
},
{
"name": "thiserror",
"direct": true,
"version": "1.0.31",
"ecosystem": "crates"
},
{
"name": "thiserror",
"direct": true,
"version": "2.0.18",
"ecosystem": "crates"
},
{
"name": "tokio",
"direct": true,
"version": "1.52.1",
"ecosystem": "crates"
},
{
"name": "tokio-tungstenite",
"direct": true,
"version": "0.29.0",
"ecosystem": "crates"
},
{
"name": "tokio-util",
"direct": true,
"version": "0.7.3",
"ecosystem": "crates"
},
{
"name": "url",
"direct": true,
"version": "2.5.8",
"ecosystem": "crates"
},
{
"name": "uuid",
"direct": true,
"version": "1.4.1",
"ecosystem": "crates"
},
{
"name": "github.com/gorilla/websocket",
"direct": true,
"version": "1.4.2",
"ecosystem": "go"
},
{
"name": "github.com/rodaine/table",
"direct": true,
"version": "1.0.1",
"ecosystem": "go"
},
{
"name": "golang.org/x/crypto",
"direct": true,
"version": "0.23.0",
"ecosystem": "go"
},
{
"name": "com.google.code.gson:gson",
"direct": true,
"version": "2.9.0",
"ecosystem": "maven"
},
{
"name": "com.puppycrawl.tools:checkstyle",
"direct": true,
"version": "9.3",
"ecosystem": "maven"
},
{
"name": "commons-io:commons-io",
"direct": true,
"version": "2.7",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-codec-http",
"direct": true,
"version": "4.1.132",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-handler",
"direct": true,
"version": "4.1.94",
"ecosystem": "maven"
},
{
"name": "io.netty:netty-transport",
"direct": true,
"version": "4.1.72",
"ecosystem": "maven"
},
{
"name": "org.apache.maven.shared:maven-shared-utils",
"direct": true,
"version": "3.3.4",
"ecosystem": "maven"
},
{
"name": "org.apache.sshd:sshd-netty",
"direct": true,
"version": "2.8.0",
"ecosystem": "maven"
},
{
"name": "org.slf4j:slf4j-api",
"direct": true,
"version": "1.7.26",
"ecosystem": "maven"
},
{
"name": "@microsoft/dev-tunnels-ssh",
"direct": true,
"version": "3.12.22",
"ecosystem": "npm"
},
{
"name": "@microsoft/dev-tunnels-ssh",
"direct": true,
"version": "3.12.36",
"ecosystem": "npm"
},
{
"name": "@microsoft/dev-tunnels-ssh-tcp",
"direct": true,
"version": "3.12.22",
"ecosystem": "npm"
},
{
"name": "@microsoft/dev-tunnels-ssh-tcp",
"direct": true,
"version": "3.12.36",
"ecosystem": "npm"
},
{
"name": "await-semaphore",
"direct": true,
"version": "0.1.3",
"ecosystem": "npm"
},
{
"name": "await-semaphore",
"direct": true,
"version": "^0.1.3",
"ecosystem": "npm"
},
{
"name": "axios",
"direct": true,
"version": "1.14.0",
"ecosystem": "npm"
},
{
"name": "axios",
"direct": true,
"version": "1.18.0",
"ecosystem": "npm"
},
{
"name": "axios",
"direct": true,
"version": "^1.8.4",
"ecosystem": "npm"
},
{
"name": "buffer",
"direct": true,
"version": "5.2.1",
"ecosystem": "npm"
},
{
"name": "buffer",
"direct": true,
"version": "5.7.1",
"ecosystem": "npm"
},
{
"name": "buffer",
"direct": true,
"version": "^5.2.1",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": true,
"version": "2.6.9",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": true,
"version": "4.4.0",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": true,
"version": "4.4.3",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": true,
"version": "^4.1.1",
"ecosystem": "npm"
},
{
"name": "uuid",
"direct": true,
"version": "3.4.0",
"ecosystem": "npm"
},
{
"name": "uuid",
"direct": true,
"version": "^3.3.3",
"ecosystem": "npm"
},
{
"name": "vscode-jsonrpc",
"direct": true,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "vscode-jsonrpc",
"direct": true,
"version": "^4.0.0",
"ecosystem": "npm"
},
{
"name": "adler",
"direct": false,
"version": "1.0.2",
"ecosystem": "crates"
},
{
"name": "aead",
"direct": false,
"version": "0.5.1",
"ecosystem": "crates"
},
{
"name": "aes",
"direct": false,
"version": "0.8.1",
"ecosystem": "crates"
},
{
"name": "aes-gcm",
"direct": false,
"version": "0.10.3",
"ecosystem": "crates"
},
{
"name": "aho-corasick",
"direct": false,
"version": "0.7.20",
"ecosystem": "crates"
},
{
"name": "atomic-waker",
"direct": false,
"version": "1.1.2",
"ecosystem": "crates"
},
{
"name": "autocfg",
"direct": false,
"version": "1.1.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": "base64ct",
"direct": false,
"version": "1.5.2",
"ecosystem": "crates"
},
{
"name": "bcrypt-pbkdf",
"direct": false,
"version": "0.9.0",
"ecosystem": "crates"
},
{
"name": "bit-vec",
"direct": false,
"version": "0.6.3",
"ecosystem": "crates"
},
{
"name": "bitflags",
"direct": false,
"version": "1.3.2",
"ecosystem": "crates"
},
{
"name": "bitflags",
"direct": false,
"version": "2.11.1",
"ecosystem": "crates"
},
{
"name": "block-buffer",
"direct": false,
"version": "0.10.2",
"ecosystem": "crates"
},
{
"name": "block-buffer",
"direct": false,
"version": "0.9.0",
"ecosystem": "crates"
},
{
"name": "block-padding",
"direct": false,
"version": "0.3.2",
"ecosystem": "crates"
},
{
"name": "blowfish",
"direct": false,
"version": "0.9.1",
"ecosystem": "crates"
},
{
"name": "bumpalo",
"direct": false,
"version": "3.12.0",
"ecosystem": "crates"
},
{
"name": "byteorder",
"direct": false,
"version": "1.4.3",
"ecosystem": "crates"
},
{
"name": "bytes",
"direct": false,
"version": "1.11.1",
"ecosystem": "crates"
},
{
"name": "cbc",
"direct": false,
"version": "0.1.2",
"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.0",
"ecosystem": "crates"
},
{
"name": "cfg_aliases",
"direct": false,
"version": "0.2.1",
"ecosystem": "crates"
},
{
"name": "chacha20",
"direct": false,
"version": "0.9.0",
"ecosystem": "crates"
},
{
"name": "cipher",
"direct": false,
"version": "0.4.3",
"ecosystem": "crates"
},
{
"name": "cmake",
"direct": false,
"version": "0.1.58",
"ecosystem": "crates"
},
{
"name": "combine",
"direct": false,
"version": "4.6.7",
"ecosystem": "crates"
},
{
"name": "core-foundation",
"direct": false,
"version": "0.10.1",
"ecosystem": "crates"
},
{
"name": "core-foundation",
"direct": false,
"version": "0.9.3",
"ecosystem": "crates"
},
{
"name": "core-foundation-sys",
"direct": false,
"version": "0.8.7",
"ecosystem": "crates"
},
{
"name": "cpufeatures",
"direct": false,
"version": "0.2.4",
"ecosystem": "crates"
},
{
"name": "crc32fast",
"direct": false,
"version": "1.3.2",
"ecosystem": "crates"
},
{
"name": "crossbeam-channel",
"direct": false,
"version": "0.5.4",
"ecosystem": "crates"
},
{
"name": "crossbeam-utils",
"direct": false,
"version": "0.8.8",
"ecosystem": "crates"
},
{
"name": "crypto-common",
"direct": false,
"version": "0.1.6",
"ecosystem": "crates"
},
{
"name": "ctr",
"direct": false,
"version": "0.9.1",
"ecosystem": "crates"
},
{
"name": "curve25519-dalek",
"direct": false,
"version": "3.2.0",
"ecosystem": "crates"
},
{
"name": "data-encoding",
"direct": false,
"version": "2.3.2",
"ecosystem": "crates"
},
{
"name": "digest",
"direct": false,
"version": "0.10.7",
"ecosystem": "crates"
},
{
"name": "digest",
"direct": false,
"version": "0.9.0",
"ecosystem": "crates"
},
{
"name": "dirs",
"direct": false,
"version": "4.0.0",
"ecosystem": "crates"
},
{
"name": "dirs-sys",
"direct": false,
"version": "0.3.7",
"ecosystem": "crates"
},
{
"name": "displaydoc",
"direct": false,
"version": "0.2.5",
"ecosystem": "crates"
},
{
"name": "dunce",
"direct": false,
"version": "1.0.5",
"ecosystem": "crates"
},
{
"name": "ed25519",
"direct": false,
"version": "1.5.2",
"ecosystem": "crates"
},
{
"name": "ed25519-dalek",
"direct": false,
"version": "1.0.1",
"ecosystem": "crates"
},
{
"name": "encoding_rs",
"direct": false,
"version": "0.8.31",
"ecosystem": "crates"
},
{
"name": "fastrand",
"direct": false,
"version": "1.7.0",
"ecosystem": "crates"
},
{
"name": "find-msvc-tools",
"direct": false,
"version": "0.1.9",
"ecosystem": "crates"
},
{
"name": "flate2",
"direct": false,
"version": "1.0.24",
"ecosystem": "crates"
},
{
"name": "foreign-types",
"direct": false,
"version": "0.3.2",
"ecosystem": "crates"
},
{
"name": "foreign-types-shared",
"direct": false,
"version": "0.1.1",
"ecosystem": "crates"
},
{
"name": "form_urlencoded",
"direct": false,
"version": "1.2.2",
"ecosystem": "crates"
},
{
"name": "fs_extra",
"direct": false,
"version": "1.3.0",
"ecosystem": "crates"
},
{
"name": "futures",
"direct": false,
"version": "0.3.23",
"ecosystem": "crates"
},
{
"name": "futures-channel",
"direct": false,
"version": "0.3.28",
"ecosystem": "crates"
},
{
"name": "futures-core",
"direct": false,
"version": "0.3.32",
"ecosystem": "crates"
},
{
"name": "futures-executor",
"direct": false,
"version": "0.3.23",
"ecosystem": "crates"
},
{
"name": "futures-io",
"direct": false,
"version": "0.3.28",
"ecosystem": "crates"
},
{
"name": "futures-macro",
"direct": false,
"version": "0.3.28",
"ecosystem": "crates"
},
{
"name": "futures-sink",
"direct": false,
"version": "0.3.28",
"ecosystem": "crates"
},
{
"name": "futures-task",
"direct": false,
"version": "0.3.28",
"ecosystem": "crates"
},
{
"name": "generic-array",
"direct": false,
"version": "0.14.6",
"ecosystem": "crates"
},
{
"name": "getrandom",
"direct": false,
"version": "0.1.16",
"ecosystem": "crates"
},
{
"name": "getrandom",
"direct": false,
"version": "0.2.17",
"ecosystem": "crates"
},
{
"name": "getrandom",
"direct": false,
"version": "0.3.4",
"ecosystem": "crates"
},
{
"name": "ghash",
"direct": false,
"version": "0.5.0",
"ecosystem": "crates"
},
{
"name": "hashbrown",
"direct": false,
"version": "0.11.2",
"ecosystem": "crates"
},
{
"name": "hex-literal",
"direct": false,
"version": "0.3.4",
"ecosystem": "crates"
},
{
"name": "hmac",
"direct": false,
"version": "0.12.1",
"ecosystem": "crates"
},
{
"name": "http",
"direct": false,
"version": "1.4.0",
"ecosystem": "crates"
},
{
"name": "http-body",
"direct": false,
"version": "1.0.1",
"ecosystem": "crates"
},
{
"name": "httparse",
"direct": false,
"version": "1.10.1",
"ecosystem": "crates"
},
{
"name": "hyper-rustls",
"direct": false,
"version": "0.27.9",
"ecosystem": "crates"
},
{
"name": "hyper-tls",
"direct": false,
"version": "0.6.0",
"ecosystem": "crates"
},
{
"name": "icu_collections",
"direct": false,
"version": "2.2.0",
"ecosystem": "crates"
},
{
"name": "icu_locale_core",
"direct": false,
"version": "2.2.0",
"ecosystem": "crates"
},
{
"name": "icu_normalizer",
"direct": false,
"version": "2.2.0",
"ecosystem": "crates"
},
{
"name": "icu_normalizer_data",
"direct": false,
"version": "2.2.0",
"ecosystem": "crates"
},
{
"name": "icu_properties",
"direct": false,
"version": "2.2.0",
"ecosystem": "crates"
},
{
"name": "icu_properties_data",
"direct": false,
"version": "2.2.0",
"ecosystem": "crates"
},
{
"name": "icu_provider",
"direct": false,
"version": "2.2.0",
"ecosystem": "crates"
},
{
"name": "idna",
"direct": false,
"version": "1.1.0",
"ecosystem": "crates"
},
{
"name": "idna_adapter",
"direct": false,
"version": "1.2.1",
"ecosystem": "crates"
},
{
"name": "indexmap",
"direct": false,
"version": "1.8.2",
"ecosystem": "crates"
},
{
"name": "inout",
"direct": false,
"version": "0.1.3",
"ecosystem": "crates"
},
{
"name": "instant",
"direct": false,
"version": "0.1.12",
"ecosystem": "crates"
},
{
"name": "ipnet",
"direct": false,
"version": "2.12.0",
"ecosystem": "crates"
},
{
"name": "iri-string",
"direct": false,
"version": "0.7.12",
"ecosystem": "crates"
},
{
"name": "itoa",
"direct": false,
"version": "1.0.2",
"ecosystem": "crates"
},
{
"name": "jiff-static",
"direct": false,
"version": "0.2.24",
"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": "0.3.95",
"ecosystem": "crates"
},
{
"name": "lazy_static",
"direct": false,
"version": "1.4.0",
"ecosystem": "crates"
},
{
"name": "libc",
"direct": false,
"version": "0.2.186",
"ecosystem": "crates"
},
{
"name": "litemap",
"direct": false,
"version": "0.8.2",
"ecosystem": "crates"
},
{
"name": "lock_api",
"direct": false,
"version": "0.4.7",
"ecosystem": "crates"
},
{
"name": "lru-slab",
"direct": false,
"version": "0.1.2",
"ecosystem": "crates"
},
{
"name": "md5",
"direct": false,
"version": "0.7.0",
"ecosystem": "crates"
},
{
"name": "memchr",
"direct": false,
"version": "2.5.0",
"ecosystem": "crates"
},
{
"name": "mime",
"direct": false,
"version": "0.3.16",
"ecosystem": "crates"
},
{
"name": "miniz_oxide",
"direct": false,
"version": "0.5.3",
"ecosystem": "crates"
},
{
"name": "mio",
"direct": false,
"version": "1.2.0",
"ecosystem": "crates"
},
{
"name": "native-tls",
"direct": false,
"version": "0.2.11",
"ecosystem": "crates"
},
{
"name": "num-bigint",
"direct": false,
"version": "0.4.3",
"ecosystem": "crates"
},
{
"name": "num-integer",
"direct": false,
"version": "0.1.45",
"ecosystem": "crates"
},
{
"name": "num-traits",
"direct": false,
"version": "0.2.15",
"ecosystem": "crates"
},
{
"name": "once_cell",
"direct": false,
"version": "1.21.4",
"ecosystem": "crates"
},
{
"name": "opaque-debug",
"direct": false,
"version": "0.3.0",
"ecosystem": "crates"
},
{
"name": "openssl",
"direct": false,
"version": "0.10.76",
"ecosystem": "crates"
},
{
"name": "openssl-macros",
"direct": false,
"version": "0.1.1",
"ecosystem": "crates"
},
{
"name": "openssl-probe",
"direct": false,
"version": "0.1.5",
"ecosystem": "crates"
},
{
"name": "openssl-probe",
"direct": false,
"version": "0.2.1",
"ecosystem": "crates"
},
{
"name": "openssl-src",
"direct": false,
"version": "300.5.5+3.5.5",
"ecosystem": "crates"
},
{
"name": "openssl-sys",
"direct": false,
"version": "0.9.112",
"ecosystem": "crates"
},
{
"name": "opentelemetry_api",
"direct": false,
"version": "0.20.0",
"ecosystem": "crates"
},
{
"name": "opentelemetry_sdk",
"direct": false,
"version": "0.20.0",
"ecosystem": "crates"
},
{
"name": "ordered-float",
"direct": false,
"version": "3.9.1",
"ecosystem": "crates"
},
{
"name": "parking_lot",
"direct": false,
"version": "0.12.1",
"ecosystem": "crates"
},
{
"name": "parking_lot_core",
"direct": false,
"version": "0.9.3",
"ecosystem": "crates"
},
{
"name": "password-hash",
"direct": false,
"version": "0.4.2",
"ecosystem": "crates"
},
{
"name": "pbkdf2",
"direct": false,
"version": "0.11.0",
"ecosystem": "crates"
},
{
"name": "percent-encoding",
"direct": false,
"version": "2.3.2",
"ecosystem": "crates"
},
{
"name": "pin-project-lite",
"direct": false,
"version": "0.2.17",
"ecosystem": "crates"
},
{
"name": "pin-utils",
"direct": false,
"version": "0.1.0",
"ecosystem": "crates"
},
{
"name": "pkg-config",
"direct": false,
"version": "0.3.25",
"ecosystem": "crates"
},
{
"name": "poly1305",
"direct": false,
"version": "0.8.0",
"ecosystem": "crates"
},
{
"name": "polyval",
"direct": false,
"version": "0.6.0",
"ecosystem": "crates"
},
{
"name": "portable-atomic",
"direct": false,
"version": "1.13.1",
"ecosystem": "crates"
},
{
"name": "portable-atomic-util",
"direct": false,
"version": "0.2.7",
"ecosystem": "crates"
},
{
"name": "potential_utf",
"direct": false,
"version": "0.1.5",
"ecosystem": "crates"
},
{
"name": "ppv-lite86",
"direct": false,
"version": "0.2.16",
"ecosystem": "crates"
},
{
"name": "proc-macro2",
"direct": false,
"version": "1.0.106",
"ecosystem": "crates"
},
{
"name": "quinn",
"direct": false,
"version": "0.11.9",
"ecosystem": "crates"
},
{
"name": "quinn-proto",
"direct": false,
"version": "0.11.14",
"ecosystem": "crates"
},
{
"name": "quinn-udp",
"direct": false,
"version": "0.5.14",
"ecosystem": "crates"
},
{
"name": "quote",
"direct": false,
"version": "1.0.45",
"ecosystem": "crates"
},
{
"name": "r-efi",
"direct": false,
"version": "5.3.0",
"ecosystem": "crates"
},
{
"name": "rand_chacha",
"direct": false,
"version": "0.2.2",
"ecosystem": "crates"
},
{
"name": "rand_chacha",
"direct": false,
"version": "0.3.1",
"ecosystem": "crates"
},
{
"name": "rand_chacha",
"direct": false,
"version": "0.9.0",
"ecosystem": "crates"
},
{
"name": "rand_core",
"direct": false,
"version": "0.5.1",
"ecosystem": "crates"
},
{
"name": "rand_core",
"direct": false,
"version": "0.6.3",
"ecosystem": "crates"
},
{
"name": "rand_core",
"direct": false,
"version": "0.9.5",
"ecosystem": "crates"
},
{
"name": "rand_hc",
"direct": false,
"version": "0.2.0",
"ecosystem": "crates"
},
{
"name": "redox_syscall",
"direct": false,
"version": "0.2.13",
"ecosystem": "crates"
},
{
"name": "redox_users",
"direct": false,
"version": "0.4.3",
"ecosystem": "crates"
},
{
"name": "regex",
"direct": false,
"version": "1.7.1",
"ecosystem": "crates"
},
{
"name": "regex-syntax",
"direct": false,
"version": "0.6.28",
"ecosystem": "crates"
},
{
"name": "remove_dir_all",
"direct": false,
"version": "0.5.3",
"ecosystem": "crates"
},
{
"name": "ring",
"direct": false,
"version": "0.17.14",
"ecosystem": "crates"
},
{
"name": "russh-cryptovec",
"direct": false,
"version": "0.7.0",
"ecosystem": "crates"
},
{
"name": "rustc-hash",
"direct": false,
"version": "2.1.2",
"ecosystem": "crates"
},
{
"name": "rustls",
"direct": false,
"version": "0.23.39",
"ecosystem": "crates"
},
{
"name": "rustls-native-certs",
"direct": false,
"version": "0.8.3",
"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.10",
"ecosystem": "crates"
},
{
"name": "same-file",
"direct": false,
"version": "1.0.6",
"ecosystem": "crates"
},
{
"name": "schannel",
"direct": false,
"version": "0.1.20",
"ecosystem": "crates"
},
{
"name": "scopeguard",
"direct": false,
"version": "1.1.0",
"ecosystem": "crates"
},
{
"name": "security-framework",
"direct": false,
"version": "2.6.1",
"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": "serde_core",
"direct": false,
"version": "1.0.228",
"ecosystem": "crates"
},
{
"name": "serde_derive",
"direct": false,
"version": "1.0.228",
"ecosystem": "crates"
},
{
"name": "sha1",
"direct": false,
"version": "0.10.1",
"ecosystem": "crates"
},
{
"name": "sha2",
"direct": false,
"version": "0.10.2",
"ecosystem": "crates"
},
{
"name": "sha2",
"direct": false,
"version": "0.9.9",
"ecosystem": "crates"
},
{
"name": "shlex",
"direct": false,
"version": "1.3.0",
"ecosystem": "crates"
},
{
"name": "signal-hook-registry",
"direct": false,
"version": "1.4.0",
"ecosystem": "crates"
},
{
"name": "signature",
"direct": false,
"version": "1.6.0",
"ecosystem": "crates"
},
{
"name": "slab",
"direct": false,
"version": "0.4.6",
"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": "subtle",
"direct": false,
"version": "2.6.1",
"ecosystem": "crates"
},
{
"name": "syn",
"direct": false,
"version": "1.0.96",
"ecosystem": "crates"
},
{
"name": "syn",
"direct": false,
"version": "2.0.117",
"ecosystem": "crates"
},
{
"name": "sync_wrapper",
"direct": false,
"version": "1.0.2",
"ecosystem": "crates"
},
{
"name": "synstructure",
"direct": false,
"version": "0.12.6",
"ecosystem": "crates"
},
{
"name": "synstructure",
"direct": false,
"version": "0.13.2",
"ecosystem": "crates"
},
{
"name": "system-configuration",
"direct": false,
"version": "0.7.0",
"ecosystem": "crates"
},
{
"name": "system-configuration-sys",
"direct": false,
"version": "0.6.0",
"ecosystem": "crates"
},
{
"name": "tempfile",
"direct": false,
"version": "3.3.0",
"ecosystem": "crates"
},
{
"name": "thiserror-impl",
"direct": false,
"version": "1.0.31",
"ecosystem": "crates"
},
{
"name": "thiserror-impl",
"direct": false,
"version": "2.0.18",
"ecosystem": "crates"
},
{
"name": "tinystr",
"direct": false,
"version": "0.8.3",
"ecosystem": "crates"
},
{
"name": "tinyvec",
"direct": false,
"version": "1.6.0",
"ecosystem": "crates"
},
{
"name": "tinyvec_macros",
"direct": false,
"version": "0.1.0",
"ecosystem": "crates"
},
{
"name": "tokio-macros",
"direct": false,
"version": "2.7.0",
"ecosystem": "crates"
},
{
"name": "tokio-native-tls",
"direct": false,
"version": "0.3.1",
"ecosystem": "crates"
},
{
"name": "tokio-rustls",
"direct": false,
"version": "0.26.4",
"ecosystem": "crates"
},
{
"name": "tokio-stream",
"direct": false,
"version": "0.1.9",
"ecosystem": "crates"
},
{
"name": "tower",
"direct": false,
"version": "0.5.3",
"ecosystem": "crates"
},
{
"name": "tower-http",
"direct": false,
"version": "0.6.8",
"ecosystem": "crates"
},
{
"name": "tower-layer",
"direct": false,
"version": "0.3.3",
"ecosystem": "crates"
},
{
"name": "tower-service",
"direct": false,
"version": "0.3.3",
"ecosystem": "crates"
},
{
"name": "tracing",
"direct": false,
"version": "0.1.35",
"ecosystem": "crates"
},
{
"name": "tracing-core",
"direct": false,
"version": "0.1.27",
"ecosystem": "crates"
},
{
"name": "try-lock",
"direct": false,
"version": "0.2.3",
"ecosystem": "crates"
},
{
"name": "tungstenite",
"direct": false,
"version": "0.29.0",
"ecosystem": "crates"
},
{
"name": "typenum",
"direct": false,
"version": "1.15.0",
"ecosystem": "crates"
},
{
"name": "unicode-ident",
"direct": false,
"version": "1.0.24",
"ecosystem": "crates"
},
{
"name": "unicode-xid",
"direct": false,
"version": "0.2.3",
"ecosystem": "crates"
},
{
"name": "universal-hash",
"direct": false,
"version": "0.5.1",
"ecosystem": "crates"
},
{
"name": "untrusted",
"direct": false,
"version": "0.9.0",
"ecosystem": "crates"
},
{
"name": "urlencoding",
"direct": false,
"version": "2.1.3",
"ecosystem": "crates"
},
{
"name": "utf8_iter",
"direct": false,
"version": "1.0.4",
"ecosystem": "crates"
},
{
"name": "vcpkg",
"direct": false,
"version": "0.2.15",
"ecosystem": "crates"
},
{
"name": "version_check",
"direct": false,
"version": "0.9.4",
"ecosystem": "crates"
},
{
"name": "walkdir",
"direct": false,
"version": "2.5.0",
"ecosystem": "crates"
},
{
"name": "want",
"direct": false,
"version": "0.3.0",
"ecosystem": "crates"
},
{
"name": "wasi",
"direct": false,
"version": "0.11.0+wasi-snapshot-preview1",
"ecosystem": "crates"
},
{
"name": "wasi",
"direct": false,
"version": "0.9.0+wasi-snapshot-preview1",
"ecosystem": "crates"
},
{
"name": "wasip2",
"direct": false,
"version": "1.0.3+wasi-0.2.9",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen",
"direct": false,
"version": "0.2.118",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-futures",
"direct": false,
"version": "0.4.31",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-macro",
"direct": false,
"version": "0.2.118",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-macro-support",
"direct": false,
"version": "0.2.118",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-shared",
"direct": false,
"version": "0.2.118",
"ecosystem": "crates"
},
{
"name": "web-sys",
"direct": false,
"version": "0.3.58",
"ecosystem": "crates"
},
{
"name": "web-time",
"direct": false,
"version": "1.1.0",
"ecosystem": "crates"
},
{
"name": "webpki-root-certs",
"direct": false,
"version": "1.0.7",
"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-link",
"direct": false,
"version": "0.2.1",
"ecosystem": "crates"
},
{
"name": "windows-registry",
"direct": false,
"version": "0.6.1",
"ecosystem": "crates"
},
{
"name": "windows-result",
"direct": false,
"version": "0.4.1",
"ecosystem": "crates"
},
{
"name": "windows-strings",
"direct": false,
"version": "0.5.1",
"ecosystem": "crates"
},
{
"name": "windows-sys",
"direct": false,
"version": "0.36.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.60.2",
"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.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.52.6",
"ecosystem": "crates"
},
{
"name": "windows_aarch64_gnullvm",
"direct": false,
"version": "0.53.1",
"ecosystem": "crates"
},
{
"name": "windows_aarch64_msvc",
"direct": false,
"version": "0.36.1",
"ecosystem": "crates"
},
{
"name": "windows_aarch64_msvc",
"direct": false,
"version": "0.42.2",
"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.36.1",
"ecosystem": "crates"
},
{
"name": "windows_i686_gnu",
"direct": false,
"version": "0.42.2",
"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.36.1",
"ecosystem": "crates"
},
{
"name": "windows_i686_msvc",
"direct": false,
"version": "0.42.2",
"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.36.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.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.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.36.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.52.6",
"ecosystem": "crates"
},
{
"name": "windows_x86_64_msvc",
"direct": false,
"version": "0.53.1",
"ecosystem": "crates"
},
{
"name": "winreg",
"direct": false,
"version": "0.8.0",
"ecosystem": "crates"
},
{
"name": "wit-bindgen",
"direct": false,
"version": "0.57.1",
"ecosystem": "crates"
},
{
"name": "writeable",
"direct": false,
"version": "0.6.3",
"ecosystem": "crates"
},
{
"name": "yasna",
"direct": false,
"version": "0.5.2",
"ecosystem": "crates"
},
{
"name": "yoke",
"direct": false,
"version": "0.8.2",
"ecosystem": "crates"
},
{
"name": "yoke-derive",
"direct": false,
"version": "0.8.2",
"ecosystem": "crates"
},
{
"name": "zerofrom",
"direct": false,
"version": "0.1.7",
"ecosystem": "crates"
},
{
"name": "zerofrom-derive",
"direct": false,
"version": "0.1.7",
"ecosystem": "crates"
},
{
"name": "zeroize",
"direct": false,
"version": "1.8.2",
"ecosystem": "crates"
},
{
"name": "zeroize_derive",
"direct": false,
"version": "1.3.2",
"ecosystem": "crates"
},
{
"name": "zerotrie",
"direct": false,
"version": "0.2.4",
"ecosystem": "crates"
},
{
"name": "zerovec",
"direct": false,
"version": "0.11.6",
"ecosystem": "crates"
},
{
"name": "zerovec-derive",
"direct": false,
"version": "0.11.3",
"ecosystem": "crates"
},
{
"name": "golang.org/x/sys",
"direct": false,
"version": "0.20.0",
"ecosystem": "go"
},
{
"name": "gopkg.in/yaml.v3",
"direct": false,
"version": "3.0.1",
"ecosystem": "go"
},
{
"name": "junit:junit",
"direct": false,
"version": "4.13.1",
"ecosystem": "maven"
},
{
"name": "org.apache.maven.plugins:maven-checkstyle-plugin",
"direct": false,
"version": "3.1.2",
"ecosystem": "maven"
},
{
"name": "org.codehaus.mojo:flatten-maven-plugin",
"direct": false,
"version": "1.1.0",
"ecosystem": "maven"
},
{
"name": "org.slf4j:slf4j-jdk14",
"direct": false,
"version": "1.7.26",
"ecosystem": "maven"
},
{
"name": "@es-joy/jsdoccomment",
"direct": false,
"version": "0.49.0",
"ecosystem": "npm"
},
{
"name": "@eslint-community/eslint-utils",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "@eslint-community/regexpp",
"direct": false,
"version": "4.4.0",
"ecosystem": "npm"
},
{
"name": "@eslint/eslintrc",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "@eslint/js",
"direct": false,
"version": "8.36.0",
"ecosystem": "npm"
},
{
"name": "@humanwhocodes/config-array",
"direct": false,
"version": "0.11.8",
"ecosystem": "npm"
},
{
"name": "@humanwhocodes/module-importer",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@humanwhocodes/object-schema",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "@isaacs/cliui",
"direct": false,
"version": "8.0.2",
"ecosystem": "npm"
},
{
"name": "@microsoft/dev-tunnels-connections",
"direct": false,
"version": "1.3.6",
"ecosystem": "npm"
},
{
"name": "@microsoft/dev-tunnels-contracts",
"direct": false,
"version": "1.3.6",
"ecosystem": "npm"
},
{
"name": "@microsoft/dev-tunnels-contracts",
"direct": false,
"version": ">1.3.50",
"ecosystem": "npm"
},
{
"name": "@microsoft/dev-tunnels-management",
"direct": false,
"version": "1.3.6",
"ecosystem": "npm"
},
{
"name": "@microsoft/dev-tunnels-management",
"direct": false,
"version": ">1.3.50",
"ecosystem": "npm"
},
{
"name": "@nodelib/fs.scandir",
"direct": false,
"version": "2.1.5",
"ecosystem": "npm"
},
{
"name": "@nodelib/fs.stat",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "@nodelib/fs.walk",
"direct": false,
"version": "1.2.8",
"ecosystem": "npm"
},
{
"name": "@pkgjs/parseargs",
"direct": false,
"version": "0.11.0",
"ecosystem": "npm"
},
{
"name": "@pkgr/core",
"direct": false,
"version": "0.1.2",
"ecosystem": "npm"
},
{
"name": "@testdeck/core",
"direct": false,
"version": "0.3.3",
"ecosystem": "npm"
},
{
"name": "@testdeck/mocha",
"direct": false,
"version": "0.3.3",
"ecosystem": "npm"
},
{
"name": "@types/debug",
"direct": false,
"version": "4.1.7",
"ecosystem": "npm"
},
{
"name": "@types/events",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "@types/json-schema",
"direct": false,
"version": "7.0.11",
"ecosystem": "npm"
},
{
"name": "@types/mocha",
"direct": false,
"version": "5.2.7",
"ecosystem": "npm"
},
{
"name": "@types/ms",
"direct": false,
"version": "0.7.31",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "18.15.3",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "22.9.0",
"ecosystem": "npm"
},
{
"name": "@types/semver",
"direct": false,
"version": "7.3.13",
"ecosystem": "npm"
},
{
"name": "@types/tmp",
"direct": false,
"version": "0.0.34",
"ecosystem": "npm"
},
{
"name": "@types/uuid",
"direct": false,
"version": "3.4.10",
"ecosystem": "npm"
},
{
"name": "@types/websocket",
"direct": false,
"version": "0.0.40",
"ecosystem": "npm"
},
{
"name": "@types/yargs",
"direct": false,
"version": "17.0.22",
"ecosystem": "npm"
},
{
"name": "@types/yargs-parser",
"direct": false,
"version": "21.0.0",
"ecosystem": "npm"
},
{
"name": "@typescript-eslint/eslint-plugin",
"direct": false,
"version": "5.55.0",
"ecosystem": "npm"
},
{
"name": "@typescript-eslint/parser",
"direct": false,
"version": "5.55.0",
"ecosystem": "npm"
},
{
"name": "@typescript-eslint/scope-manager",
"direct": false,
"version": "5.55.0",
"ecosystem": "npm"
},
{
"name": "@typescript-eslint/type-utils",
"direct": false,
"version": "5.55.0",
"ecosystem": "npm"
},
{
"name": "@typescript-eslint/types",
"direct": false,
"version": "5.55.0",
"ecosystem": "npm"
},
{
"name": "@typescript-eslint/typescript-estree",
"direct": false,
"version": "5.55.0",
"ecosystem": "npm"
},
{
"name": "@typescript-eslint/utils",
"direct": false,
"version": "5.55.0",
"ecosystem": "npm"
},
{
"name": "@typescript-eslint/visitor-keys",
"direct": false,
"version": "5.55.0",
"ecosystem": "npm"
},
{
"name": "acorn",
"direct": false,
"version": "7.4.1",
"ecosystem": "npm"
},
{
"name": "acorn",
"direct": false,
"version": "8.14.1",
"ecosystem": "npm"
},
{
"name": "acorn-jsx",
"direct": false,
"version": "5.3.2",
"ecosystem": "npm"
},
{
"name": "acorn-node",
"direct": false,
"version": "1.8.2",
"ecosystem": "npm"
},
{
"name": "acorn-walk",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "agent-base",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "ajv",
"direct": false,
"version": "6.15.0",
"ecosystem": "npm"
},
{
"name": "ansi-regex",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "ansi-regex",
"direct": false,
"version": "6.2.2",
"ecosystem": "npm"
},
{
"name": "ansi-styles",
"direct": false,
"version": "3.2.1",
"ecosystem": "npm"
},
{
"name": "ansi-styles",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "ansi-styles",
"direct": false,
"version": "6.2.3",
"ecosystem": "npm"
},
{
"name": "are-docs-informative",
"direct": false,
"version": "0.0.2",
"ecosystem": "npm"
},
{
"name": "argparse",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "array-from",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "array-union",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "asn1.js",
"direct": false,
"version": "4.10.1",
"ecosystem": "npm"
},
{
"name": "assert",
"direct": false,
"version": "1.5.0",
"ecosystem": "npm"
},
{
"name": "asynckit",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "available-typed-arrays",
"direct": false,
"version": "1.0.7",
"ecosystem": "npm"
},
{
"name": "balanced-match",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "base64-js",
"direct": false,
"version": "1.5.1",
"ecosystem": "npm"
},
{
"name": "bn.js",
"direct": false,
"version": "4.12.3",
"ecosystem": "npm"
},
{
"name": "bn.js",
"direct": false,
"version": "5.2.3",
"ecosystem": "npm"
},
{
"name": "brace-expansion",
"direct": false,
"version": "1.1.15",
"ecosystem": "npm"
},
{
"name": "brace-expansion",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "braces",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "brfs",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "brorand",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "browser-pack",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "browser-resolve",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "browser-stdout",
"direct": false,
"version": "1.3.1",
"ecosystem": "npm"
},
{
"name": "browserify",
"direct": false,
"version": "16.5.2",
"ecosystem": "npm"
},
{
"name": "browserify-aes",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "browserify-cipher",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "browserify-des",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "browserify-rsa",
"direct": false,
"version": "4.1.1",
"ecosystem": "npm"
},
{
"name": "browserify-sign",
"direct": false,
"version": "4.2.6",
"ecosystem": "npm"
},
{
"name": "browserify-zlib",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "buffer-equal",
"direct": false,
"version": "0.0.1",
"ecosystem": "npm"
},
{
"name": "buffer-from",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "buffer-xor",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "bufferutil",
"direct": false,
"version": "4.0.7",
"ecosystem": "npm"
},
{
"name": "bufferutil",
"direct": false,
"version": "4.0.8",
"ecosystem": "npm"
},
{
"name": "builtin-status-codes",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "cached-path-relative",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "call-bind",
"direct": false,
"version": "1.0.8",
"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": "callsites",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "camel-case",
"direct": false,
"version": "4.1.2",
"ecosystem": "npm"
},
{
"name": "camelcase",
"direct": false,
"version": "6.3.0",
"ecosystem": "npm"
},
{
"name": "chalk",
"direct": false,
"version": "2.4.2",
"ecosystem": "npm"
},
{
"name": "chalk",
"direct": false,
"version": "4.1.2",
"ecosystem": "npm"
},
{
"name": "charenc",
"direct": false,
"version": "0.0.2",
"ecosystem": "npm"
},
{
"name": "chokidar",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "cipher-base",
"direct": false,
"version": "1.0.7",
"ecosystem": "npm"
},
{
"name": "cliui",
"direct": false,
"version": "8.0.1",
"ecosystem": "npm"
},
{
"name": "color-convert",
"direct": false,
"version": "1.9.3",
"ecosystem": "npm"
},
{
"name": "color-convert",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "color-name",
"direct": false,
"version": "1.1.3",
"ecosystem": "npm"
},
{
"name": "color-name",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "combine-source-map",
"direct": false,
"version": "0.8.0",
"ecosystem": "npm"
},
{
"name": "combined-stream",
"direct": false,
"version": "1.0.8",
"ecosystem": "npm"
},
{
"name": "comment-parser",
"direct": false,
"version": "1.4.1",
"ecosystem": "npm"
},
{
"name": "concat-map",
"direct": false,
"version": "0.0.1",
"ecosystem": "npm"
},
{
"name": "concat-stream",
"direct": false,
"version": "1.6.2",
"ecosystem": "npm"
},
{
"name": "console-browserify",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "constants-browserify",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "convert-source-map",
"direct": false,
"version": "1.1.3",
"ecosystem": "npm"
},
{
"name": "convert-source-map",
"direct": false,
"version": "1.9.0",
"ecosystem": "npm"
},
{
"name": "core-util-is",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "create-ecdh",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "create-hash",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "create-hmac",
"direct": false,
"version": "1.1.7",
"ecosystem": "npm"
},
{
"name": "cross-spawn",
"direct": false,
"version": "7.0.6",
"ecosystem": "npm"
},
{
"name": "crypt",
"direct": false,
"version": "0.0.2",
"ecosystem": "npm"
},
{
"name": "crypto-browserify",
"direct": false,
"version": "3.12.0",
"ecosystem": "npm"
},
{
"name": "d",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "d",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "dash-ast",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "dash-ast",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "decamelize",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "deep-is",
"direct": false,
"version": "0.1.4",
"ecosystem": "npm"
},
{
"name": "define-data-property",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "defined",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "delayed-stream",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "deps-sort",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "des.js",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "detective",
"direct": false,
"version": "5.2.1",
"ecosystem": "npm"
},
{
"name": "diff",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "diffie-hellman",
"direct": false,
"version": "5.0.3",
"ecosystem": "npm"
},
{
"name": "dir-glob",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "doctrine",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "domain-browser",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "dunder-proto",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "duplexer2",
"direct": false,
"version": "0.1.4",
"ecosystem": "npm"
},
{
"name": "eastasianwidth",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "elliptic",
"direct": false,
"version": "6.6.1",
"ecosystem": "npm"
},
{
"name": "emoji-regex",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "emoji-regex",
"direct": false,
"version": "9.2.2",
"ecosystem": "npm"
},
{
"name": "es-define-property",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "es-errors",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "es-module-lexer",
"direct": false,
"version": "1.6.0",
"ecosystem": "npm"
},
{
"name": "es-object-atoms",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "es-set-tostringtag",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "es5-ext",
"direct": false,
"version": "0.10.64",
"ecosystem": "npm"
},
{
"name": "es6-iterator",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "es6-map",
"direct": false,
"version": "0.1.5",
"ecosystem": "npm"
},
{
"name": "es6-set",
"direct": false,
"version": "0.1.6",
"ecosystem": "npm"
},
{
"name": "es6-symbol",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "es6-symbol",
"direct": false,
"version": "3.1.4",
"ecosystem": "npm"
},
{
"name": "escalade",
"direct": false,
"version": "3.1.1",
"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": "escodegen",
"direct": false,
"version": "1.14.3",
"ecosystem": "npm"
},
{
"name": "eslint",
"direct": false,
"version": "8.36.0",
"ecosystem": "npm"
},
{
"name": "eslint-config-prettier",
"direct": false,
"version": "8.7.0",
"ecosystem": "npm"
},
{
"name": "eslint-plugin-jsdoc",
"direct": false,
"version": "50.6.9",
"ecosystem": "npm"
},
{
"name": "eslint-plugin-prettier",
"direct": false,
"version": "4.2.1",
"ecosystem": "npm"
},
{
"name": "eslint-plugin-security",
"direct": false,
"version": "1.7.1",
"ecosystem": "npm"
},
{
"name": "eslint-scope",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "eslint-scope",
"direct": false,
"version": "7.1.1",
"ecosystem": "npm"
},
{
"name": "eslint-visitor-keys",
"direct": false,
"version": "3.3.0",
"ecosystem": "npm"
},
{
"name": "eslint-visitor-keys",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "esniff",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "espree",
"direct": false,
"version": "10.3.0",
"ecosystem": "npm"
},
{
"name": "espree",
"direct": false,
"version": "9.5.0",
"ecosystem": "npm"
},
{
"name": "esprima",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "esquery",
"direct": false,
"version": "1.6.0",
"ecosystem": "npm"
},
{
"name": "esrecurse",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "estraverse",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "estraverse",
"direct": false,
"version": "5.3.0",
"ecosystem": "npm"
},
{
"name": "estree-is-function",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "esutils",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "event-emitter",
"direct": false,
"version": "0.3.5",
"ecosystem": "npm"
},
{
"name": "events",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "evp_bytestokey",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "ext",
"direct": false,
"version": "1.7.0",
"ecosystem": "npm"
},
{
"name": "fast-deep-equal",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "fast-diff",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "fast-glob",
"direct": false,
"version": "3.2.12",
"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": "fast-safe-stringify",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "fastq",
"direct": false,
"version": "1.15.0",
"ecosystem": "npm"
},
{
"name": "file-entry-cache",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "fill-range",
"direct": false,
"version": "7.1.1",
"ecosystem": "npm"
},
{
"name": "find-up",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "flat",
"direct": false,
"version": "5.0.2",
"ecosystem": "npm"
},
{
"name": "flat-cache",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "flatted",
"direct": false,
"version": "3.4.2",
"ecosystem": "npm"
},
{
"name": "follow-redirects",
"direct": false,
"version": "1.15.11",
"ecosystem": "npm"
},
{
"name": "follow-redirects",
"direct": false,
"version": "1.16.0",
"ecosystem": "npm"
},
{
"name": "for-each",
"direct": false,
"version": "0.3.5",
"ecosystem": "npm"
},
{
"name": "foreground-child",
"direct": false,
"version": "3.3.1",
"ecosystem": "npm"
},
{
"name": "form-data",
"direct": false,
"version": "4.0.5",
"ecosystem": "npm"
},
{
"name": "form-data",
"direct": false,
"version": "4.0.6",
"ecosystem": "npm"
},
{
"name": "fs.realpath",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "function-bind",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "get-assigned-identifiers",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "get-caller-file",
"direct": false,
"version": "2.0.5",
"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": "glob",
"direct": false,
"version": "10.5.0",
"ecosystem": "npm"
},
{
"name": "glob",
"direct": false,
"version": "7.2.3",
"ecosystem": "npm"
},
{
"name": "glob-parent",
"direct": false,
"version": "5.1.2",
"ecosystem": "npm"
},
{
"name": "glob-parent",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "globals",
"direct": false,
"version": "13.20.0",
"ecosystem": "npm"
},
{
"name": "globby",
"direct": false,
"version": "11.1.0",
"ecosystem": "npm"
},
{
"name": "gopd",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "grapheme-splitter",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "has",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "has-flag",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "has-flag",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "has-property-descriptors",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "has-symbols",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "has-tostringtag",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "hash-base",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "hash.js",
"direct": false,
"version": "1.1.7",
"ecosystem": "npm"
},
{
"name": "hasown",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "hasown",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "he",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "hmac-drbg",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "htmlescape",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "https-browserify",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "https-proxy-agent",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "ieee754",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "ignore",
"direct": false,
"version": "5.2.4",
"ecosystem": "npm"
},
{
"name": "import-fresh",
"direct": false,
"version": "3.3.0",
"ecosystem": "npm"
},
{
"name": "imurmurhash",
"direct": false,
"version": "0.1.4",
"ecosystem": "npm"
},
{
"name": "inflight",
"direct": false,
"version": "1.0.6",
"ecosystem": "npm"
},
{
"name": "inherits",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "inherits",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "inherits",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "inline-source-map",
"direct": false,
"version": "0.6.2",
"ecosystem": "npm"
},
{
"name": "insert-module-globals",
"direct": false,
"version": "7.2.1",
"ecosystem": "npm"
},
{
"name": "is-buffer",
"direct": false,
"version": "1.1.6",
"ecosystem": "npm"
},
{
"name": "is-callable",
"direct": false,
"version": "1.2.7",
"ecosystem": "npm"
},
{
"name": "is-core-module",
"direct": false,
"version": "2.11.0",
"ecosystem": "npm"
},
{
"name": "is-extglob",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "is-fullwidth-code-point",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "is-glob",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "is-number",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "is-path-inside",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "is-plain-obj",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "is-typed-array",
"direct": false,
"version": "1.1.15",
"ecosystem": "npm"
},
{
"name": "is-typedarray",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "is-unicode-supported",
"direct": false,
"version": "0.1.0",
"ecosystem": "npm"
},
{
"name": "isarray",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "isarray",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "isexe",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "jackspeak",
"direct": false,
"version": "3.4.3",
"ecosystem": "npm"
},
{
"name": "js-sdsl",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "js-yaml",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "jsdoc-type-pratt-parser",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "json-schema-traverse",
"direct": false,
"version": "0.4.1",
"ecosystem": "npm"
},
{
"name": "json-stable-stringify",
"direct": false,
"version": "0.0.1",
"ecosystem": "npm"
},
{
"name": "json-stable-stringify-without-jsonify",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "jsonify",
"direct": false,
"version": "0.0.1",
"ecosystem": "npm"
},
{
"name": "jsonparse",
"direct": false,
"version": "1.3.1",
"ecosystem": "npm"
},
{
"name": "JSONStream",
"direct": false,
"version": "1.3.5",
"ecosystem": "npm"
},
{
"name": "labeled-stream-splicer",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "levn",
"direct": false,
"version": "0.3.0",
"ecosystem": "npm"
},
{
"name": "levn",
"direct": false,
"version": "0.4.1",
"ecosystem": "npm"
},
{
"name": "locate-path",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "lodash",
"direct": false,
"version": "4.18.1",
"ecosystem": "npm"
},
{
"name": "lodash.memoize",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "lodash.merge",
"direct": false,
"version": "4.6.2",
"ecosystem": "npm"
},
{
"name": "log-symbols",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "lower-case",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "lru-cache",
"direct": false,
"version": "10.4.3",
"ecosystem": "npm"
},
{
"name": "magic-string",
"direct": false,
"version": "0.25.1",
"ecosystem": "npm"
},
{
"name": "math-intrinsics",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "md5",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "md5.js",
"direct": false,
"version": "1.3.5",
"ecosystem": "npm"
},
{
"name": "merge-source-map",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "merge2",
"direct": false,
"version": "1.4.1",
"ecosystem": "npm"
},
{
"name": "micromatch",
"direct": false,
"version": "4.0.8",
"ecosystem": "npm"
},
{
"name": "miller-rabin",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "mime-db",
"direct": false,
"version": "1.52.0",
"ecosystem": "npm"
},
{
"name": "mime-types",
"direct": false,
"version": "2.1.35",
"ecosystem": "npm"
},
{
"name": "minimalistic-assert",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "minimalistic-crypto-utils",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "minimatch",
"direct": false,
"version": "3.1.5",
"ecosystem": "npm"
},
{
"name": "minimatch",
"direct": false,
"version": "9.0.9",
"ecosystem": "npm"
},
{
"name": "minimist",
"direct": false,
"version": "1.2.8",
"ecosystem": "npm"
},
{
"name": "minipass",
"direct": false,
"version": "7.1.3",
"ecosystem": "npm"
},
{
"name": "mkdirp",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "mkdirp-classic",
"direct": false,
"version": "0.5.3",
"ecosystem": "npm"
},
{
"name": "mocha",
"direct": false,
"version": "11.7.6",
"ecosystem": "npm"
},
{
"name": "mocha-junit-reporter",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "mocha-multi-reporters",
"direct": false,
"version": "1.5.1",
"ecosystem": "npm"
},
{
"name": "module-deps",
"direct": false,
"version": "6.2.3",
"ecosystem": "npm"
},
{
"name": "moment",
"direct": false,
"version": "2.29.4",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.1.3",
"ecosystem": "npm"
},
{
"name": "natural-compare",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "natural-compare-lite",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "nerdbank-gitversioning",
"direct": false,
"version": "3.6.133",
"ecosystem": "npm"
},
{
"name": "next-tick",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "no-case",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "node-gyp-build",
"direct": false,
"version": "4.6.0",
"ecosystem": "npm"
},
{
"name": "node-gyp-build",
"direct": false,
"version": "4.8.2",
"ecosystem": "npm"
},
{
"name": "object-assign",
"direct": false,
"version": "4.1.1",
"ecosystem": "npm"
},
{
"name": "object-inspect",
"direct": false,
"version": "1.12.3",
"ecosystem": "npm"
},
{
"name": "once",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "optionator",
"direct": false,
"version": "0.8.3",
"ecosystem": "npm"
},
{
"name": "optionator",
"direct": false,
"version": "0.9.1",
"ecosystem": "npm"
},
{
"name": "os-browserify",
"direct": false,
"version": "0.3.0",
"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": "package-json-from-dist",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "pako",
"direct": false,
"version": "1.0.11",
"ecosystem": "npm"
},
{
"name": "parent-module",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "parents",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "parse-asn1",
"direct": false,
"version": "5.1.9",
"ecosystem": "npm"
},
{
"name": "parse-imports",
"direct": false,
"version": "2.2.1",
"ecosystem": "npm"
},
{
"name": "pascal-case",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "path-browserify",
"direct": false,
"version": "0.0.1",
"ecosystem": "npm"
},
{
"name": "path-exists",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "path-is-absolute",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "path-key",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "path-parse",
"direct": false,
"version": "1.0.7",
"ecosystem": "npm"
},
{
"name": "path-platform",
"direct": false,
"version": "0.11.15",
"ecosystem": "npm"
},
{
"name": "path-scurry",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "path-type",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "pbkdf2",
"direct": false,
"version": "3.1.5",
"ecosystem": "npm"
},
{
"name": "picocolors",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "picomatch",
"direct": false,
"version": "2.3.2",
"ecosystem": "npm"
},
{
"name": "possible-typed-array-names",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "prelude-ls",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "prelude-ls",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "prettier",
"direct": false,
"version": "2.8.4",
"ecosystem": "npm"
},
{
"name": "prettier-linter-helpers",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "process",
"direct": false,
"version": "0.11.10",
"ecosystem": "npm"
},
{
"name": "process-nextick-args",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "proxy-from-env",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "public-encrypt",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "punycode",
"direct": false,
"version": "1.3.2",
"ecosystem": "npm"
},
{
"name": "punycode",
"direct": false,
"version": "1.4.1",
"ecosystem": "npm"
},
{
"name": "punycode",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "querystring",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "querystring-es3",
"direct": false,
"version": "0.2.1",
"ecosystem": "npm"
},
{
"name": "queue-microtask",
"direct": false,
"version": "1.2.3",
"ecosystem": "npm"
},
{
"name": "quote-stream",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "randombytes",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "randomfill",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "read-only-stream",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "readable-stream",
"direct": false,
"version": "2.3.8",
"ecosystem": "npm"
},
{
"name": "readable-stream",
"direct": false,
"version": "3.6.2",
"ecosystem": "npm"
},
{
"name": "readdirp",
"direct": false,
"version": "4.1.2",
"ecosystem": "npm"
},
{
"name": "regexp-tree",
"direct": false,
"version": "0.1.24",
"ecosystem": "npm"
},
{
"name": "require-directory",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "resolve",
"direct": false,
"version": "1.22.1",
"ecosystem": "npm"
},
{
"name": "resolve-from",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "reusify",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "rimraf",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "ripemd160",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "run-parallel",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "safe-buffer",
"direct": false,
"version": "5.1.2",
"ecosystem": "npm"
},
{
"name": "safe-buffer",
"direct": false,
"version": "5.2.1",
"ecosystem": "npm"
},
{
"name": "safe-regex",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "scope-analyzer",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "semver",
"direct": false,
"version": "7.7.1",
"ecosystem": "npm"
},
{
"name": "serialize-javascript",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "set-function-length",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "sha.js",
"direct": false,
"version": "2.4.12",
"ecosystem": "npm"
},
{
"name": "shallow-copy",
"direct": false,
"version": "0.0.1",
"ecosystem": "npm"
},
{
"name": "shasum",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "shasum-object",
"direct": false,
"version": "1.0.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": "shell-quote",
"direct": false,
"version": "1.8.4",
"ecosystem": "npm"
},
{
"name": "signal-exit",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "simple-concat",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "slash",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "slashes",
"direct": false,
"version": "3.0.12",
"ecosystem": "npm"
},
{
"name": "source-map",
"direct": false,
"version": "0.5.7",
"ecosystem": "npm"
},
{
"name": "source-map",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "source-map-support",
"direct": false,
"version": "0.5.21",
"ecosystem": "npm"
},
{
"name": "sourcemap-codec",
"direct": false,
"version": "1.4.8",
"ecosystem": "npm"
},
{
"name": "spdx-exceptions",
"direct": false,
"version": "2.5.0",
"ecosystem": "npm"
},
{
"name": "spdx-expression-parse",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "spdx-license-ids",
"direct": false,
"version": "3.0.21",
"ecosystem": "npm"
},
{
"name": "static-eval",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "static-module",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "stream-browserify",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "stream-combiner2",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "stream-http",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "stream-splicer",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "string-width",
"direct": false,
"version": "4.2.3",
"ecosystem": "npm"
},
{
"name": "string-width",
"direct": false,
"version": "5.1.2",
"ecosystem": "npm"
},
{
"name": "string_decoder",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "string_decoder",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "strip-ansi",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "strip-ansi",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "strip-json-comments",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "subarg",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "supports-color",
"direct": false,
"version": "5.5.0",
"ecosystem": "npm"
},
{
"name": "supports-color",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "supports-color",
"direct": false,
"version": "8.1.1",
"ecosystem": "npm"
},
{
"name": "supports-preserve-symlinks-flag",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "synckit",
"direct": false,
"version": "0.9.2",
"ecosystem": "npm"
},
{
"name": "syntax-error",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "text-table",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "through",
"direct": false,
"version": "2.3.8",
"ecosystem": "npm"
},
{
"name": "through2",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "timers-browserify",
"direct": false,
"version": "1.4.2",
"ecosystem": "npm"
},
{
"name": "tmp",
"direct": false,
"version": "0.2.7",
"ecosystem": "npm"
},
{
"name": "to-buffer",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "to-regex-range",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "tslib",
"direct": false,
"version": "1.14.1",
"ecosystem": "npm"
},
{
"name": "tslib",
"direct": false,
"version": "2.8.1",
"ecosystem": "npm"
},
{
"name": "tsutils",
"direct": false,
"version": "3.21.0",
"ecosystem": "npm"
},
{
"name": "tty-browserify",
"direct": false,
"version": "0.0.1",
"ecosystem": "npm"
},
{
"name": "type",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "type",
"direct": false,
"version": "2.7.2",
"ecosystem": "npm"
},
{
"name": "type",
"direct": false,
"version": "2.7.3",
"ecosystem": "npm"
},
{
"name": "type-check",
"direct": false,
"version": "0.3.2",
"ecosystem": "npm"
},
{
"name": "type-check",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "type-fest",
"direct": false,
"version": "0.20.2",
"ecosystem": "npm"
},
{
"name": "typed-array-buffer",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "typedarray",
"direct": false,
"version": "0.0.6",
"ecosystem": "npm"
},
{
"name": "typedarray-to-buffer",
"direct": false,
"version": "3.1.5",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "4.9.5",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "5.6.3",
"ecosystem": "npm"
},
{
"name": "umd",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "undeclared-identifiers",
"direct": false,
"version": "1.1.3",
"ecosystem": "npm"
},
{
"name": "undici-types",
"direct": false,
"version": "6.19.8",
"ecosystem": "npm"
},
{
"name": "uri-js",
"direct": false,
"version": "4.4.1",
"ecosystem": "npm"
},
{
"name": "url",
"direct": false,
"version": "0.11.0",
"ecosystem": "npm"
},
{
"name": "utf-8-validate",
"direct": false,
"version": "5.0.10",
"ecosystem": "npm"
},
{
"name": "util",
"direct": false,
"version": "0.10.3",
"ecosystem": "npm"
},
{
"name": "util",
"direct": false,
"version": "0.10.4",
"ecosystem": "npm"
},
{
"name": "util-deprecate",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "vm-browserify",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "websocket",
"direct": false,
"version": "1.0.34",
"ecosystem": "npm"
},
{
"name": "websocket",
"direct": false,
"version": "1.0.35",
"ecosystem": "npm"
},
{
"name": "websocket",
"direct": false,
"version": "^1.0.28",
"ecosystem": "npm"
},
{
"name": "which",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "which-typed-array",
"direct": false,
"version": "1.1.20",
"ecosystem": "npm"
},
{
"name": "word-wrap",
"direct": false,
"version": "1.2.5",
"ecosystem": "npm"
},
{
"name": "workerpool",
"direct": false,
"version": "9.3.4",
"ecosystem": "npm"
},
{
"name": "wrap-ansi",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "wrap-ansi",
"direct": false,
"version": "8.1.0",
"ecosystem": "npm"
},
{
"name": "wrappy",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "xml",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "xtend",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "y18n",
"direct": false,
"version": "5.0.8",
"ecosystem": "npm"
},
{
"name": "yaeti",
"direct": false,
"version": "0.0.6",
"ecosystem": "npm"
},
{
"name": "yargs",
"direct": false,
"version": "17.7.2",
"ecosystem": "npm"
},
{
"name": "yargs-parser",
"direct": false,
"version": "21.1.1",
"ecosystem": "npm"
},
{
"name": "yargs-unparser",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "yocto-queue",
"direct": false,
"version": "0.1.0",
"ecosystem": "npm"
},
{
"name": "Microsoft.AspNetCore.WebUtilities",
"direct": false,
"version": null,
"ecosystem": "nuget"
},
{
"name": "Microsoft.CodeAnalysis.Analyzers",
"direct": false,
"version": "3.3.4",
"ecosystem": "nuget"
},
{
"name": "Microsoft.CodeAnalysis.CSharp",
"direct": false,
"version": "4.3.0",
"ecosystem": "nuget"
},
{
"name": "Microsoft.DevTunnels.Ssh",
"direct": false,
"version": null,
"ecosystem": "nuget"
},
{
"name": "Microsoft.DevTunnels.Ssh.Tcp",
"direct": false,
"version": null,
"ecosystem": "nuget"
},
{
"name": "Nerdbank.Streams",
"direct": false,
"version": null,
"ecosystem": "nuget"
}
],
"collected": true,
"truncated": false,
"total_count": 817,
"direct_count": 56,
"indirect_count": 761
}
},
"maintainership": {
"issues": {
"open_prs": 16,
"merged_prs": 402,
"open_issues": 25,
"closed_ratio": 0.857,
"closed_issues": 150,
"closed_unmerged_prs": 56
},
"bus_factor": 2,
"bot_contributors": 2,
"top_contributors": [
{
"type": "User",
"login": "jfullerton44",
"commits": 97,
"avatar_url": "https://avatars.githubusercontent.com/u/12804248?v=4"
},
{
"type": "User",
"login": "jasongin",
"commits": 91,
"avatar_url": "https://avatars.githubusercontent.com/u/13093042?v=4"
},
{
"type": "User",
"login": "IlyaBiryukov",
"commits": 28,
"avatar_url": "https://avatars.githubusercontent.com/u/15989459?v=4"
},
{
"type": "User",
"login": "jessetrinity",
"commits": 25,
"avatar_url": "https://avatars.githubusercontent.com/u/42591254?v=4"
},
{
"type": "User",
"login": "connor4312",
"commits": 18,
"avatar_url": "https://avatars.githubusercontent.com/u/2230985?v=4"
},
{
"type": "User",
"login": "taiyosogawa",
"commits": 18,
"avatar_url": "https://avatars.githubusercontent.com/u/1176981?v=4"
},
{
"type": "User",
"login": "klvnraju",
"commits": 15,
"avatar_url": "https://avatars.githubusercontent.com/u/25800054?v=4"
},
{
"type": "User",
"login": "jramsay",
"commits": 13,
"avatar_url": "https://avatars.githubusercontent.com/u/8161247?v=4"
},
{
"type": "User",
"login": "DavidObando",
"commits": 7,
"avatar_url": "https://avatars.githubusercontent.com/u/950290?v=4"
},
{
"type": "User",
"login": "JacobRoberts",
"commits": 7,
"avatar_url": "https://avatars.githubusercontent.com/u/1372881?v=4"
}
],
"contributors_sampled": 23,
"top_contributor_share": 0.263
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"check-basis.yml",
"codeql-analysis.yml",
"go.yml",
"java-sdk-release.yml",
"maven.yml",
"rust.yml"
],
"has_docs_dir": false,
"linter_configs": [
".eslintrc.js"
],
"has_editorconfig": true,
"has_linter_config": true,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [
"Cargo.lock",
"go.sum",
"package-lock.json"
],
"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": 1,
"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": 10,
"reason": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
},
{
"name": "CII-Best-Practices",
"score": 0,
"reason": "no effort to earn an OpenSSF best practices badge detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
},
{
"name": "Code-Review",
"score": 10,
"reason": "all changesets reviewed",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
},
{
"name": "Contributors",
"score": 10,
"reason": "project has 12 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": "8 commit(s) and 19 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": 0,
"reason": "dependency not pinned by hash detected -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
},
{
"name": "SAST",
"score": 10,
"reason": "SAST tool is run on all commits",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
},
{
"name": "Security-Policy",
"score": 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": 0,
"reason": "101 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "85c5efe5447005c0953db3d34226682b26c1ede3",
"ran_at": "2026-07-21T18:54:28Z",
"aggregate_score": 6.5,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": true,
"has_security_policy": true,
"has_dependabot_config": false
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/microsoft/dev-tunnels",
"host": "github.com",
"name": "dev-tunnels",
"owner": "microsoft"
},
"metrics": {
"overall": {
"key": "overall",
"band": "good",
"name": "Overall health",
"note": null,
"notes": [],
"value": 71,
"inputs": {
"security": 61,
"vitality": 73,
"community": 62,
"governance": 82,
"engineering": 74
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "good",
"name": "Vitality",
"value": 73,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "moderate",
"name": "Development activity",
"note": null,
"notes": [],
"value": 65,
"inputs": {
"commits_last_year": 52,
"human_commit_share": 0.75,
"days_since_last_push": 11,
"active_weeks_last_year": 15
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 11 days ago",
"points": 28.8,
"status": "partial",
"details": [
{
"code": "push_recency",
"params": {
"days": 11
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "15/52 weeks with commits",
"points": 10.4,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 15
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "52 commits in the last year",
"points": 15.5,
"status": "partial",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 52
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "8 commit(s) and 19 issue activity found in the last 90 days -- score normalized to 10",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "release_discipline",
"band": "good",
"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": 84,
"inputs": {
"releases_count": 14,
"latest_release_tag": "java-v0.4.1",
"releases_from_tags": false,
"days_since_latest_release": 28,
"mean_days_between_releases": 154.4
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "14 releases published",
"points": 27,
"status": "met",
"details": [
{
"code": "releases_published",
"params": {
"count": 14
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 28 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 28
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~154.4 days",
"points": 12.6,
"status": "partial",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 154.4
}
}
],
"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": 29,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "last human commit 29 days ago",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_maintained",
"params": {
"days": 29
}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "moderate",
"name": "Community & Adoption",
"value": 62,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "moderate",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 62,
"inputs": {
"forks": 47,
"stars": 490,
"watchers": 8,
"growth_state": "organic",
"growth_factor_pct": 100
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "490 stars",
"points": 43.6,
"status": "partial",
"details": [
{
"code": "stars",
"params": {
"count": 490
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "47 forks",
"points": 13.9,
"status": "partial",
"details": [
{
"code": "forks",
"params": {
"count": 47
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "8 watchers",
"points": 4.7,
"status": "partial",
"details": [
{
"code": "watchers",
"params": {
"count": 8
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "excellent",
"name": "Community health",
"note": null,
"notes": [],
"value": 92,
"inputs": {
"has_readme": true,
"has_license": true,
"has_contributing": true,
"has_issue_template": false,
"has_code_of_conduct": true,
"has_pull_request_template": true
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 22.5,
"status": "met",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "recognized license (MIT)",
"points": 22.5,
"status": "met",
"details": [
{
"code": "license_standard",
"params": {}
},
{
"code": "license_spdx",
"params": {
"spdx": "MIT"
}
}
],
"max_points": 22.5
},
{
"key": "contributing_guide",
"name": "CONTRIBUTING guide",
"detail": null,
"points": 18,
"status": "met",
"details": [],
"max_points": 18
},
{
"key": "code_of_conduct",
"name": "Code of conduct",
"detail": null,
"points": 13.5,
"status": "met",
"details": [],
"max_points": 13.5
},
{
"key": "issue_template",
"name": "Issue template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.2
},
{
"key": "pr_template",
"name": "PR template",
"detail": null,
"points": 6.3,
"status": "met",
"details": [],
"max_points": 6.3
}
]
},
{
"key": "ecosystem_adoption",
"band": "critical",
"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": 22,
"inputs": {
"packages": [
"github.com/microsoft/dev-tunnels",
"tunnels"
],
"dependents": null,
"ecosystems": "crates, go",
"total_downloads": 2037,
"monthly_downloads": 20
},
"components": [
{
"key": "monthly_downloads",
"name": "Monthly downloads",
"detail": "20 downloads/month across crates, go",
"points": 17.6,
"status": "partial",
"details": [
{
"code": "downloads_monthly",
"params": {
"count": 20,
"ecosystems": "crates, go"
}
}
],
"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": "good",
"name": "Sustainability & Governance",
"value": 82,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "moderate",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 65,
"inputs": {
"bus_factor": 2,
"contributors_sampled": 23,
"top_contributor_share": 0.263
},
"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 26% of commits",
"points": 16.6,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 26
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "23 contributors",
"points": 13.5,
"status": "met",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 23
}
}
],
"max_points": 13.5
},
{
"key": "openssf_scorecard_contributors",
"name": "OpenSSF Scorecard: Contributors",
"detail": "project has 12 contributing companies or organizations",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "responsiveness",
"band": "excellent",
"name": "Issue & PR responsiveness",
"note": null,
"notes": [],
"value": 89,
"inputs": {
"merged_prs": 402,
"open_issues": 25,
"closed_issues": 150,
"issue_closed_ratio": 0.857,
"closed_unmerged_prs": 56
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "86% of issues closed",
"points": 40.1,
"status": "partial",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 86
}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "402/458 decided PRs merged",
"points": 33.6,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 402,
"decided": 458
}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "all changesets reviewed",
"points": 15,
"status": "met",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "good",
"name": "Ownership & stewardship",
"note": null,
"notes": [],
"value": 80,
"inputs": {
"followers": 125556,
"owner_type": "Organization",
"is_verified": null,
"owner_login": "microsoft",
"public_repos": 8210,
"account_age_days": 4605
},
"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": "125,556 followers of microsoft",
"points": 25,
"status": "met",
"details": [
{
"code": "owner_followers",
"params": {
"count": 125556,
"login": "microsoft"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "8210 public repos, account ~12 yr old",
"points": 25,
"status": "met",
"details": [
{
"code": "public_repos",
"params": {
"count": 8210
}
},
{
"code": "account_age_years",
"params": {
"years": 12
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "excellent",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"github.com/microsoft/dev-tunnels",
"tunnels"
],
"ecosystems": "crates, go",
"any_deprecated": false,
"min_days_since_publish": 31
},
"components": [
{
"key": "published_resolvable",
"name": "Published & resolvable",
"detail": "2 package(s) on crates, go",
"points": 25,
"status": "met",
"details": [
{
"code": "packages_published",
"params": {
"count": 2,
"ecosystems": "crates, go"
}
}
],
"max_points": 25
},
{
"key": "publish_recency",
"name": "Publish recency",
"detail": "latest publish 31 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 31
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "21 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 21
}
}
],
"max_points": 20
},
{
"key": "not_deprecated",
"name": "Not deprecated",
"detail": "active, not deprecated or yanked",
"points": 20,
"status": "met",
"details": [
{
"code": "package_not_deprecated",
"params": {}
}
],
"max_points": 20
}
]
}
],
"description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
},
{
"key": "engineering",
"band": "good",
"name": "Engineering Quality",
"value": 74,
"weight": 0.2,
"metrics": [
{
"key": "engineering_practices",
"band": "excellent",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 90,
"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": "6 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 6
}
}
],
"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": ".eslintrc.js",
"points": 16,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": ".eslintrc.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": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
"points": 20,
"status": "met",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "moderate",
"name": "Documentation",
"note": null,
"notes": [],
"value": 50,
"inputs": {
"topics": [
"dev-tunnels",
"microsoft"
],
"has_wiki": false,
"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": "2 topics",
"points": 10,
"status": "met",
"details": [
{
"code": "topics_count",
"params": {
"count": 2
}
}
],
"max_points": 10
},
{
"key": "wiki",
"name": "Wiki",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
}
],
"description": "Are baseline engineering and documentation practices in place?"
},
{
"key": "security",
"band": "moderate",
"name": "Security",
"value": 61,
"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": 65,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 17,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 1,
"scorecard_aggregate": 6.5
},
"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": 0.8,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "cii_best_practices",
"name": "CII-Best-Practices",
"detail": "no effort to earn an OpenSSF best practices badge detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 2.5
},
{
"key": "code_review",
"name": "Code-Review",
"detail": "all changesets reviewed",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 12 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": "8 commit(s) and 19 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 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "sast",
"name": "SAST",
"detail": "SAST tool is run on all commits",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "security_policy",
"name": "Security-Policy",
"detail": "security policy file detected",
"points": 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": "101 existing vulnerabilities detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "dependency_advisories",
"band": "at_risk",
"name": "Dependency advisories",
"note": "Matched the crates:tunnels@0.1.0 runtime dependency closure — what installing the published package pulls in — 240 packages. Reachability is not analyzed.",
"notes": [
{
"code": "advisories_scope_published",
"params": {
"package": "crates:tunnels@0.1.0",
"assessed": 240
}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 44,
"inputs": {
"source": "osv",
"advisories": 26,
"affected_packages": 10,
"assessed_packages": 240,
"unassessed_packages": 0,
"affected_by_severity": "high 3, moderate 3, low 2, unknown 2",
"direct_affected_packages": 1
},
"components": [
{
"key": "direct_dependencies_free_of_known_advisories",
"name": "Direct dependencies free of known advisories",
"detail": "1 affected: russh 0.37.1 (high 7.5)",
"points": 14,
"status": "partial",
"details": [
{
"code": "advisories_affected",
"params": {
"count": 1,
"packages": "russh 0.37.1 (high 7.5)"
}
}
],
"max_points": 35
},
{
"key": "indirect_dependencies_free_of_known_advisories",
"name": "Indirect dependencies free of known advisories",
"detail": "9 affected: quick-xml 0.30.0 (high 7.5), russh-cryptovec 0.7.3 (high 7.5), ed25519-dalek 1.0.1 (moderate 5.9), +6 more",
"points": 5.6,
"status": "partial",
"details": [
{
"code": "advisories_affected",
"params": {
"count": 9,
"packages": "quick-xml 0.30.0 (high 7.5), russh-cryptovec 0.7.3 (high 7.5), ed25519-dalek 1.0.1 (moderate 5.9)"
}
},
{
"code": "advisories_affected_more",
"params": {
"count": 6
}
}
],
"max_points": 25
},
{
"key": "no_advisories_left_outstanding",
"name": "No advisories left outstanding",
"detail": "7 advisory-carrying package(s) unaddressed past 90 days; oldest published 1501 days ago",
"points": 24.1,
"status": "partial",
"details": [
{
"code": "advisories_stale",
"params": {
"days": 90,
"count": 7,
"oldest": 1501
}
}
],
"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": 240,
"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": 16
},
"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": 65,
"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.96,
"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": "72 of 75 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 72,
"sampled": 75
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "good",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 79,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [
"Cargo.lock",
"go.sum",
"package-lock.json"
],
"has_dockerfile": false,
"typed_language": true,
"bootstrap_files": [],
"has_devcontainer": false,
"has_linter_config": true,
"typecheck_configs": [
"samples/ts/client/tsconfig.json",
"samples/ts/host/tsconfig.json",
"ts/src/connections/tsconfig.json",
"ts/src/contracts/tsconfig.json",
"ts/src/management/tsconfig.json",
"ts/test/tunnels-test/tsconfig.json",
"ts/tsconfig.json"
],
"agent_commit_share": 0.02,
"toolchain_manifests": [
"cs/src/Connections/DevTunnels.Connections.csproj",
"cs/src/Contracts/DevTunnels.Contracts.csproj",
"cs/src/Management/DevTunnels.Management.csproj",
"cs/test/TunnelsSDK.Test/TunnelsSDK.Test.csproj",
"cs/tools/TunnelsSDK.Generator/TunnelsSDK.Generator.csproj",
"go.mod",
"java/pom.xml",
"rs/Cargo.toml"
],
"dependency_bot_commit_share": 0.25
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": "cs/src/Connections/DevTunnels.Connections.csproj, cs/src/Contracts/DevTunnels.Contracts.csproj, cs/src/Management/DevTunnels.Management.csproj (toolchain convention, no task runner)",
"points": 12.6,
"status": "partial",
"details": [
{
"code": "toolchain_convention",
"params": {
"files": "cs/src/Connections/DevTunnels.Connections.csproj, cs/src/Contracts/DevTunnels.Contracts.csproj, cs/src/Management/DevTunnels.Management.csproj"
}
}
],
"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": ".eslintrc.js",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": ".eslintrc.js"
}
}
],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": "samples/ts/client/tsconfig.json, samples/ts/host/tsconfig.json, ts/src/connections/tsconfig.json, ts/src/contracts/tsconfig.json, ts/src/management/tsconfig.json, ts/test/tunnels-test/tsconfig.json, ts/tsconfig.json",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "samples/ts/client/tsconfig.json, samples/ts/host/tsconfig.json, ts/src/connections/tsconfig.json, ts/src/contracts/tsconfig.json, ts/src/management/tsconfig.json, ts/test/tunnels-test/tsconfig.json, ts/tsconfig.json"
}
}
],
"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": "2 of the last 100 commits agent-authored or agent-credited",
"points": 4,
"status": "partial",
"details": [
{
"code": "agent_authored_commits",
"params": {
"count": 2,
"sampled": 100
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "25 of the last 100 commits are automated dependency updates",
"points": 8,
"status": "met",
"details": [
{
"code": "dependency_bot_commits",
"params": {
"count": 25,
"sampled": 100
}
}
],
"max_points": 8
},
{
"key": "openssf_scorecard_pinned_dependencies",
"name": "OpenSSF Scorecard: Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "excellent",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"primary_language": "C#",
"largest_source_bytes": 82293,
"source_files_sampled": 400,
"oversized_source_files": 3
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "C# (statically typed)",
"points": 45,
"status": "met",
"details": [
{
"code": "statically_typed_language",
"params": {
"language": "C#"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "3/400 source files over 60KB",
"points": 54.6,
"status": "partial",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 400,
"oversized": 3
}
}
],
"max_points": 55
}
]
},
{
"key": "ai_interfaces",
"band": "at_risk",
"name": "Machine-readable interfaces",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"example_dirs": [
"examples",
"samples"
],
"has_mcp_signal": false,
"api_schema_files": []
},
"components": [
{
"key": "api_schema_openapi_graphql_proto",
"name": "API schema (OpenAPI/GraphQL/proto)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 40
},
{
"key": "mcp_server",
"name": "MCP server",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 20
},
{
"key": "runnable_examples",
"name": "Runnable examples",
"detail": "examples, samples",
"points": 40,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "examples, samples"
}
}
],
"max_points": 40
}
]
}
],
"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": [
"Could not fetch maven package 'com.microsoft.tunnels:tunnels-java-sdk' from its registry",
"Could not fetch npm package '@microsoft/dev-tunnels' from its registry"
],
"report_type": "repository",
"generated_at": "2026-07-21T18:54:56.870041Z",
"schema_version": "0.23.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/m/microsoft/dev-tunnels.svg",
"full_name": "microsoft/dev-tunnels",
"license_state": "standard",
"license_spdx": "MIT"
}