JSON-Rohbericht maschinenlesbar
{
"data": {
"repo": {
"topics": [
"java",
"android",
"kotlin",
"graalvm"
],
"is_fork": false,
"size_kb": 67423,
"has_wiki": false,
"homepage": "https://lysine.dev/okhttp/",
"languages": {
"Java": 23594,
"Shell": 3130,
"Kotlin": 4119368
},
"pushed_at": "2026-07-28T08:36:36Z",
"created_at": "2012-07-23T13:42:55Z",
"owner_type": "Organization",
"updated_at": "2026-07-28T08:37:14Z",
"description": "A meticulous HTTP client for the JVM, Android, and GraalVM.",
"is_archived": false,
"is_disabled": false,
"license_spdx": "Apache-2.0",
"default_branch": "master",
"license_spdx_raw": "Apache-2.0",
"primary_language": "Kotlin",
"significant_languages": [
"Kotlin"
]
},
"owner": {
"blog": null,
"name": "lysine.dev",
"type": "Organization",
"login": "lysine-dev",
"company": null,
"location": null,
"followers": 108,
"avatar_url": "https://avatars.githubusercontent.com/u/265085928?v=4",
"created_at": "2026-03-02T17:50:31Z",
"is_verified": null,
"public_repos": 4,
"account_age_days": 147
},
"license": {
"state": "standard",
"spdx_id": "Apache-2.0",
"raw_spdx": "Apache-2.0",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [],
"recent_commits": [
{
"oid": "f9263c3615907711077b732e5b29e340ac8f4d09",
"body": "* Update org.bouncycastle\n\n* Upgrade and fix issues with BC versions\n\n---------\n\nCo-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>\nCo-authored-by: Yuri Schimke <yuri@schimke.ee>",
"is_bot": true,
"headline": "Update org.bouncycastle (#9603)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-28T08:36:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4fcf9fd27ea109b3b801e3707464be59f32df5d3",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update spotless.plugin to v8.9.0 (#9616)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-28T08:06:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "050145b54cd17b759eb6d9a1576790255dad54c4",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update plugin com.diffplug.spotless to v8.9.0 (#9615)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-28T00:51:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b7910e4b4fbb5ff25185c77e0c8cfc638a15d0a2",
"body": "Document that a pool sized exactly to maxRequests can reject work when\npromotion submits from a still-busy worker thread.",
"is_bot": false,
"headline": "Clarify Dispatcher custom executor sizing requirements. (#9613)",
"author_name": "Hashim Khan",
"author_login": "Hashim1999164",
"committed_at": "2026-07-27T14:26:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f2395989e1b17b49e3396ef189a1c27860e7b4b0",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update dependency com.puppycrawl.tools:checkstyle to v13.9.0 (#9612)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-27T14:10:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e005148cce0a1294d5c402df942a3e92150c21ff",
"body": "* Add a test with network pinning\n\nImplicitly tests the ECH code paths, but not ECH servers on API 37.",
"is_bot": false,
"headline": "Add a test with network pinning (#9607)",
"author_name": "Yuri Schimke",
"author_login": "yschimke",
"committed_at": "2026-07-26T22:57:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f04ccb003a27875c2097b5a53d2aa3da3132af1d",
"body": null,
"is_bot": false,
"headline": "Fix failing test on Android 37 dur to conscrypt provider (#9610)",
"author_name": "Yuri Schimke",
"author_login": "yschimke",
"committed_at": "2026-07-26T21:45:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a7c54497eb6faa3e7a7acb1fae1f75126aaa9c06",
"body": "Co-authored-by: arpitagarwal1301 <arpitagarwal1301@users.noreply.github.com>",
"is_bot": false,
"headline": "Fix java.net cookie jar artifact coordinate (#9609)",
"author_name": "Arpit Agarwal",
"author_login": "arpitagarwal1301",
"committed_at": "2026-07-26T21:31:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "710d6ffbf486a0180993ead6fd650b95d0b50f08",
"body": "* Add local only EchTests taken from curl",
"is_bot": false,
"headline": "Add proper EchTests (#9604) (#9608)",
"author_name": "Yuri Schimke",
"author_login": "yschimke",
"committed_at": "2026-07-26T14:45:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "603875cb5ec8d17afdf3e7d8a695046e845e3b01",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update gradle/actions action to v6 (#9589)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-26T11:50:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "517e185b1d74995c60f950f555b68002dcf0602b",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update actions/setup-python action to v7 (#9588)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-26T11:50:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a15acec6ef5c84033431d4d7ddab56870c669d8b",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update shadow.plugin to v9.6.1 (#9587)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-26T11:50:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f77dad6f842accee66f3e1a7e62918839b192200",
"body": "* Add EchAwareDns as an option on Android 37",
"is_bot": false,
"headline": "Add EchAwareDns for Android 37 (#9596)",
"author_name": "Yuri Schimke",
"author_login": "yschimke",
"committed_at": "2026-07-26T11:34:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9b3c99b6a2fd62642102897ef808ad0c4d5e5d4e",
"body": "no longer supports TLS 1.0 and 1.1",
"is_bot": false,
"headline": "Handle conscrypt changes (#9600)",
"author_name": "Yuri Schimke",
"author_login": "yschimke",
"committed_at": "2026-07-26T11:19:36Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d291c023c9b54834da4f6038b72c9bfe2a786df6",
"body": "The default cache size is 1,000, which is effectively unbounded\nfor mobile apps, which likely call a few dozen API servers, ad\nnetworks, and analytics systems.\n\nI don't expect DnsOverHttps to be deployed in other environments.\nIf so, it's possible this cache will be problematic, as even\n10-second stale results can be problematic for server\nenvironments. I'll put an appropriate warning about this in our\nrelease notes.",
"is_bot": false,
"headline": "Enable in-memory caching in DnsOverHttps and AndroidDns (#9594)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-26T03:18:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "116395312625f4c929da5e060746f8b0e3682198",
"body": "* Cache empty results on the failure schedule.\n\n* Spotless",
"is_bot": false,
"headline": "Cache empty results on the failure schedule. (#9595)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-26T03:17:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "23f38965d38bc4db49fd9f53f43772d8d1848ccb",
"body": "I had attempted to avoid making StateMachineDnsCall have its own\nTaskRunner, instead relying exclusively on the DnsQuery callback\nfor concurrency. This was more complexity than it was worth, and\nit interacted awkwardly with the cache.\n\nNow the DnsOverHttps DnsQuery enforces this invariant, and the\nadjacent code is simpler because of it.",
"is_bot": false,
"headline": "Move DoH public/private host rules into the DnsQuery (#9593)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-25T21:53:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4f7df360704b62336d8164e59e6a7a1edffc49e7",
"body": null,
"is_bot": false,
"headline": "Fix CI failures (#9597)",
"author_name": "Yuri Schimke",
"author_login": "yschimke",
"committed_at": "2026-07-25T21:49:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1fe9db66145ecac91a1108d54968edbabb797dca",
"body": null,
"is_bot": false,
"headline": "Public API for DnsCache (#9592)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-25T07:36:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1682d9bac8c03dffde2969b0b74d47649d0dbb52",
"body": "* Rearrange new DNS classes without changing behavior\n\nTransport is now DnsQuery.Factory\nCachingTransport is now DnsCache\nStateMachineDnsCall.Query is now DnsQuery\n\nThis is intended to make it possible to have end-users get a DnsCache\ninstance without being exposed to the implementation details of our\ntransports and things.\n\n* Use has-a, not is-a for the MemoryCache\n\n* Update AndroidDns\n\n* Track a test API change\n\n* spotless",
"is_bot": false,
"headline": "Rearrange new DNS classes without changing behavior (#9584)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-24T16:36:54Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0a5f8780076c05f78b9be4bc2226a45f9eb66645",
"body": null,
"is_bot": false,
"headline": "read HTTPS mandatory SvcParamKeys as 16-bit values (#9585)",
"author_name": "Basavaraj S m",
"author_login": "basavaraj-sm05",
"committed_at": "2026-07-24T16:35:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "551ef83b265f88b176fe72c45fc3d9a1a8da967e",
"body": "* Start evicting elements from the DNS memory cache\n\n* Spotless\n\n* Don't use a PriorityQueue constructor that doesn't exist",
"is_bot": false,
"headline": "Start evicting elements from the DNS memory cache (#9583)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-24T12:25:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "77d4f5a0586bce6b125c43cbe7dbf400a15b5422",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update graalvm (#9514)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-24T11:24:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2007d560c289b044f2b932ac0b30101c5fffc9a8",
"body": "…ies to v7 (#9502)\n\nCo-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update dependency org.mock-server:mockserver-client-java-no-dependenc…",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-24T11:23:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fb13116f75d2cdc0ec245d4a5620fc30a036aff8",
"body": "* Add Android ECH support via DNS state machine\n\nAdds AndroidDns, backed by the system resolver and Android's DnsResolver\nfor HTTPS/ECH records, driving okhttp's StateMachineDnsCall as a transport.\nAdds Android17SocketAdapter for platform ALPN/session-ticket/ECH setup on\nAPI 37+. Pins Robolectric android-test to SDK 36.",
"is_bot": false,
"headline": "Add Android ECH support (#9573)",
"author_name": "Yuri Schimke",
"author_login": "yschimke",
"committed_at": "2026-07-24T11:20:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8956946b37b0018d47f5b14b431ad7c9342dd864",
"body": "* More tests for the new DNS cache\n\n* Spotless\n\n* Rename DnsCallStateMachine to StateMachineDnsCall (#9582)\n\nIt's no longer necessary to have both the call and the state machine,\nthe state machine can implement Dns.Call directly.",
"is_bot": false,
"headline": "More tests for the new DNS cache (#9581)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-23T20:03:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0f4e198d5f473837ba09501e315b5b0a20a2e977",
"body": "* Switch to Question as the Transport argument\n\nIt makes caching easier.\n\n* New CachingTransport\n\n* spotless\n\n* Switch to ComparableTimeSource\n\n* Switch from computeIfAbsent to putIfAbsent\n\nThe former isn't available on API 21.",
"is_bot": false,
"headline": " New CachingTransport (#9579)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-23T15:28:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "65e3cadbce9e62a4f1d094fd2d6d0053043b83b4",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update spotless.plugin to v8.8.0 (#9521)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-23T15:12:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9b25cc3312a75b3eca0968aa18634f6cdd0fd398",
"body": "* Add a tester just for the DnsCallStateMachine\n\nA very nice perk of extracting it out so it could be reused for Android,\nis that it's also a lot easier to test.\n\n* Spotless",
"is_bot": false,
"headline": "Add a tester just for the DnsCallStateMachine (#9578)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-23T11:47:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2ff0781bd6d775ee1a2f286d3b2d80f9c5a9a34a",
"body": null,
"is_bot": false,
"headline": "Update to Okio 3.18, including the new APIs (#9577)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-22T17:29:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "afad3bea3edcc067c5d1ebb9a36d22cd0a44442b",
"body": null,
"is_bot": false,
"headline": "Update our security docs with our new signing key (#9575)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-22T14:09:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "06bd0ef676efc1d7cfd49922816eb5a19d7b355d",
"body": "* Move the DNS call state machine into okhttp\n\n* Missing annotation",
"is_bot": false,
"headline": "Move the DNS call state machine into okhttp (#9576)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-22T14:09:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "461b63d036261cf89ab69a79f2a28b344a9146eb",
"body": "We can rely on R8 to desugar these for us",
"is_bot": false,
"headline": "Don't manually implement hashCode on data classes (#9566)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-22T02:22:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1a3ae1ff29b02c9f2f1b530024001a3df7145d94",
"body": null,
"is_bot": false,
"headline": "Move DnsMessage to okhttp core internal (#9571)",
"author_name": "Yuri Schimke",
"author_login": "yschimke",
"committed_at": "2026-07-21T20:47:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c38a27dc7080b86f176346b6771c542c1c007e36",
"body": null,
"is_bot": false,
"headline": "Updated guidance for running API 37.0 emulators (#9572)",
"author_name": "Yuri Schimke",
"author_login": "yschimke",
"committed_at": "2026-07-21T19:10:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ba0c9d13b5b1c57dc41f9870e8f172a667a1a22f",
"body": null,
"is_bot": false,
"headline": "Fix broken/outdated links (#9570)",
"author_name": "Marcono1234",
"author_login": "Marcono1234",
"committed_at": "2026-07-21T19:08:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d120673e399c37a20797971f4d582b48620a3faf",
"body": "* Split the state machine out of DnsOverHttps\n\nThere's a few things that are a bit awkward, but overall it seems\nlike it'll afford swapping in UDP or Android's resolver.\n\n* Fixup exception text\n\n* Spotless",
"is_bot": false,
"headline": "Split the state machine out of DnsOverHttps (#9569)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-21T17:40:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b2cbae722dee8222ba3897f4aa657011a0548ecb",
"body": "* Implement Dns.lookup on Dns.newCall for DnsOverHttps\n\nThe lookup path is no longer exercised by OkHttp itself.\n\nThis reduces potential drift between the two strategies.\n\n* Spotless\n\n* Update okhttp-dnsoverhttps/src/test/java/okhttp3/dnsoverhttps/DnsOverHttpsTest.kt\n\nCo-authored-by: Yuri Schimke <yuri@schimke.ee>\n\n---------\n\nCo-authored-by: Yuri Schimke <yuri@schimke.ee>",
"is_bot": false,
"headline": "Implement Dns.lookup on Dns.newCall for DnsOverHttps (#9568)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-21T15:31:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6846f1f6795c393c278aa2c04ed8d4928d7c6520",
"body": "* Rename includeHttps to includeServiceMetadata\n\n'HTTPS' is way too confusing for DnsOverHttps, because it's about\na DNS record type and not the transport for which records are\nretrieved.\n\n* Fix another includeHttps use",
"is_bot": false,
"headline": "Rename includeHttps to includeServiceMetadata (#9565)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-20T01:59:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "25724c1827252e907c69babb603687d93075178c",
"body": null,
"is_bot": false,
"headline": "Reject malformed messages that have infinite loops (#9562)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-19T18:21:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7da9284510cd55c0afb8d501f903af3d96bbcba7",
"body": "* Create a place for ECH in our configureTlsExtensions API\n\n* Trailing comma",
"is_bot": false,
"headline": "Create a place for ECH in our configureTlsExtensions API (#9558)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-19T13:45:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6268afe895fe93136ee022d91af16950e9d97bfa",
"body": "We had a bug where these calls could be made in parallel. Making\nthem serial is a bit awkward but doesn't require any locks if we're\nclever.",
"is_bot": false,
"headline": "Serialize calls to Dns.Callback (#9561)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-19T13:01:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2babee3b0a1b0b724c52883e40b538acaf3b85c3",
"body": "* Add RFC 1008 (QUERY Method) support\n* Add responseCode to redirectsToGet",
"is_bot": false,
"headline": "Add RFC 1008 (QUERY Method) support (#9496)",
"author_name": "Mario Daniel Ruiz Saavedra",
"author_login": "desiderantes",
"committed_at": "2026-07-18T09:18:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "20fcded4b5a00e45836e932913e498b230d68f90",
"body": "* Start including ECH data in RouteSelector results\n\nThis changes RouteSelector to use our new async API, when it is\navailable.\n\n* Extract the execute() function\n\n* Fixup Https results to use targetName\n\n* Fixup some tests\n\n* Use LinkedBlockingQueue instead of CompletableFuture\n\nCompletableFuture isn't available until Android API 24",
"is_bot": false,
"headline": " Start including ECH data in RouteSelector results (#9557)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-17T23:08:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "759a4e5b2d6d2a5b99c243f757de7fcf8903bf88",
"body": "* Add ECH service metadata to Route.\n\nAlso combine DnsOverHttpsServer with FakeDns, so we can serve metadata\nanywhere we're testing DNS.\n\nAlso move stuff to the 'internal' package in okhttp-dnsoverhttps, so we\ncan make symbols visible to the main okhttp module's tests.\n\n* Fixup tests\n\n* Test DNS returning zero results",
"is_bot": false,
"headline": "Add ECH service metadata to Route. (#9556)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-17T20:19:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6d0e76d0b9b7bd6b9aff7887957b6a7de92b98c9",
"body": null,
"is_bot": false,
"headline": "Define only one DNS interface (#9554)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-17T15:42:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e14cdaa7a2f78a633f1c9f2e221e6e99130627f9",
"body": "…irst (#9553)\n\n* New tests for HTTPS records\n\n* Honor resolvePrivateAddresses and resolvePublicAddresses in DnsOverHttps\n\n* Spotless\n\n* Test canceling after a partial success\n\n* Use a volatile to track whether it's canceled\n\n* Spotless",
"is_bot": false,
"headline": "DnsOverHttps Fixups: event sequencing, resolvePublicAddresses, IPv6 f…",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-17T13:46:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "71b6f9c493eac1aade4d74e38f70958d61822035",
"body": null,
"is_bot": false,
"headline": "Update all the documentation to prevent broken links everywhere (#9552)",
"author_name": "Pablo Baxter",
"author_login": "pablobaxter",
"committed_at": "2026-07-16T21:11:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f542df894f30a707951b1b74a5cf4d93914182ce",
"body": "* WIP: Implement Dns2 on DnsOverHttps\n\nObviously this needs more than zero tests.\n\n* Test the new API with the old tests",
"is_bot": false,
"headline": "Implement Dns2 on DnsOverHttps (#9550)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-16T13:06:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8bf87e8d2f708f85999519f85e04b2a245436ea9",
"body": "* Change how we test DnsOverHttps\n\nRather than returning opaque hard-coded response bodies, use our\nnew message encoder so we can test with real value objects.\n\n* Fixup internal API",
"is_bot": false,
"headline": "Change how we test DnsOverHttps (#9549)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-16T11:31:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "127cfe25168931aa600fff29c43f96d8d1dd480c",
"body": null,
"is_bot": false,
"headline": "Write DNS messages (#9545)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-14T19:45:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d86233eb454795b54a29b8e3b8f18fc212e1f328",
"body": "* Decode HTTPS DNS records\n\n* Spotless\n\n* Fix refactor\n\n* apiDump\n\n* Cut some allocations\n\n* animal sniffer",
"is_bot": false,
"headline": "Decode HTTPS DNS records (#9543)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-14T16:33:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a1ceb92e60646ed707bcc922c8414a6ecb2137d1",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update dependency com.puppycrawl.tools:checkstyle to v13.8.0 (#9542)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-14T13:51:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "37b3a953a7431ae0538f3a1c65a8ef574cce3bf0",
"body": "* Write our own DNS message reader\n\n* Spotless\n\n* Avoid hashCode accelerators\n\n* PR feedback",
"is_bot": false,
"headline": "Write our own DNS message reader (#9541)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-14T13:14:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0afc65fee707a5df87f28233cba7c24899f236b0",
"body": "* DnsAsDns2\n\n* Update okhttp/src/commonJvmAndroid/kotlin/okhttp3/internal/dns/DnsAsDns2.kt\n\nCo-authored-by: Jake Wharton <jw@jakewharton.com>\n\n* Spotless\n\n---------\n\nCo-authored-by: Jake Wharton <jw@jakewharton.com>",
"is_bot": false,
"headline": "DnsAsDns2 (#9540)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-13T22:24:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6a237f781144a7d388c734ab86de7aa52127035b",
"body": "* WIP: New DNS API\n\nBig new features are support for SVCB and being async.\n\n* Fixup docs\n\n* More API feedback\n\n* Replace data classes with manual equals/hashCode/toString things\n\nWe can't use data classes in public APIs without making backwards-compatibility\nmore difficult.\n\n* apiDump\n\n* Spotless",
"is_bot": false,
"headline": "Dns2, the new OkHttp DNS API (#9536)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-07-13T12:55:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "63e3caa7c7248fa38af7ba3375470446e2fb5574",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update ksp monorepo to v2.3.10 (#9532)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-10T04:30:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8ef2d8081a417149fa614fe817bea4af60674718",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update shadow.plugin to v9.5.1 (#9526)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-09T16:14:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fc9f43ac2c37412772b05895a0d2c6fcb5c6c2a1",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update dependency com.github.jnr:jnr-unixsocket to v0.39.2 (#9528)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-07T03:49:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1d2c0fe4844fb7143c37198015539eec2fccbd71",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update plugin com.diffplug.spotless to v8.8.0 (#9520)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-06-30T03:48:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0cadfa2997513d20bf88ca530c963a1266f17af9",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update dependency com.puppycrawl.tools:checkstyle to v13.7.0 (#9518)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-06-28T19:34:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b3a6e51aaaade843e201fa372a3c88afb5491854",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update dependency com.github.jnr:jnr-unixsocket to v0.39.1 (#9516)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-06-28T19:06:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "359febc4e265c5cd98903dc226458de1e7a57808",
"body": "* Set up API 37 emulator matrix in CI\n\nRefactor the android CI job to drive the emulator matrix off an explicit\ntarget/arch include list and add an experimental, non-blocking API 37\n(16 KB page-size) entry. Warm the Gradle cache by assembling the\ninstrumentation APK instead of running the Robolectri\n[…]\nor suppressed\n exception) rather than thrown directly; accept any of those shapes.\n\nThese are independent of the Android 17 platform/ECH work, so they can\nland with the emulator CI setup ahead of it.",
"is_bot": false,
"headline": "emulator 37 testing (#9515)",
"author_name": "Yuri Schimke",
"author_login": "yschimke",
"committed_at": "2026-06-27T20:33:10Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "62ce184cf11abf9a42c743ca32781dac875aa413",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update Gradle to v9.6.1 (#9495)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-06-26T17:40:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d2aab54668961163b6d063366e2eae19b5f7b2a6",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update dependency com.github.jnr:jnr-unixsocket to v0.39.0 (#9513)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-06-26T16:34:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "76bec10403501257b90c30b6e77d2ce9926e786f",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update shadow.plugin to v9.4.3 (#9512)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-06-26T04:47:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f7ea9ad9f1a2ee271ded865c174347ae08e25667",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update dependency org.gradlex.extra-java-module-info to v1.14.2 (#9511)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-06-26T03:41:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "04aa831d1345bfe467a503ed95fd7c942d2f151a",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update dependency org.gradlex.extra-java-module-info to v1.14.1 (#9509)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-06-25T16:07:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "055e69afccaed188e5c5adbca0269444545a9ac5",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update actions/cache action to v6 (#9507)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-06-23T17:54:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5caff201a9e8ebf64a33204b8046e5d38d324202",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update plugin com.diffplug.spotless to v8.7.0 (#9486)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-06-23T16:26:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8bb26f537c117b3bbb27a684c0707c1b85322ef4",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update ksp monorepo to v2.3.9 (#9461)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-06-22T01:07:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0d812ea2ff104a5b9119e3cf2c874778721d84a7",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update lint.gradle to v1.0.0 (#9488)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-06-22T00:48:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0fef838dc5365cf684ac28f835075efb33d48675",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update maven.publish to v0.37.0 (#9498)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-06-21T22:44:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f9492a3a2604bdd2781564ff69b7e778bdc73924",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update actions/checkout action to v7 (#9494)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-06-18T21:41:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7ebdb0aca70628862a590fd18244de1265470848",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update spotless.plugin to v8.7.0 (#9487)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-06-16T10:02:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b6960566a79d5ad33732e8bbcbe845f6c5bd0110",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update graalvm to v1.1.2 (#9460)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-06-16T02:43:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6abc678ad07aefe055cb1afb6fd897c34a988eb9",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update checkstyle to v13.6.0 (#9485)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-06-15T12:34:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "eef98589a84b2724e8f9ae64f09b9bde43a51eef",
"body": null,
"is_bot": false,
"headline": "Fix the 4.x docs commit (#9484)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-06-09T12:55:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "668794b665a62045605930e03dd7ae0336ce5934",
"body": "…478)\n\nSigned-off-by: Sai Asish Y <say.apm35@gmail.com>",
"is_bot": false,
"headline": "Don't crash route selection when the system proxy selector throws (#9…",
"author_name": "Sai Asish Y",
"author_login": "SAY-5",
"committed_at": "2026-06-09T02:08:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "728e4d575d8e9a09bbab04ef09bb24ff6b1fa0ab",
"body": null,
"is_bot": false,
"headline": "Don't publish docs for internal packages (#9483)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-06-08T21:50:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0f00a315b23bc6ed89f67d310c81413a2d897c2b",
"body": null,
"is_bot": false,
"headline": "Fix website publishing (#9482)",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-06-08T21:44:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1cfe02f6bc428e6a5f4f4e1699fc34d1cb16dc62",
"body": null,
"is_bot": false,
"headline": "Prepare next development version.",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-06-08T19:34:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "61423f472da24e0ccc42b6a2c0863fb27932fea5",
"body": null,
"is_bot": false,
"headline": "Prepare for release 5.4.0.",
"author_name": "Jesse Wilson",
"author_login": "swankjesse",
"committed_at": "2026-06-08T19:34:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d7e6effcb6852ca848b5f497032546b98b0a6370",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update eclipse.osgi to v3.24.200 (#9480)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-06-08T10:28:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7a350986e3231a7b81cbfcc6e3c185327033422b",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update bnd to v7.3.0 (#9475)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-06-03T20:59:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0c5a45b1174b8f735cc251eb19faaed87b65d868",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (#9468)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-05-30T22:45:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "113ad17f70af6984a1a8b4d46024118e5409c44b",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update dependency macos to v26 (#9457)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-05-29T08:46:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "84f601af03d047eef3f4b2f0ca6b6f72303dcea1",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update shadow.plugin to v9.4.2 (#9466)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-05-28T13:42:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7d463f4bcfca91e4466037f2c65c7c700545d64c",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update spotless.plugin to v8.6.0 (#9464)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-05-27T22:25:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3bf00f52921a0727bd18997cd92112dd2e582ed7",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update plugin com.diffplug.spotless to v8.6.0 (#9463)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-05-27T20:00:29Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cfc45a3f146d2389797a3d51d405e9118bed56c9",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update spotless.plugin to v8.5.1 (#9456)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-05-25T16:06:54Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "81c5006e336c1cb67870694e38707e2c1c44fb34",
"body": null,
"is_bot": false,
"headline": "Apply gradle lint correctly (#9459)",
"author_name": "Yuri Schimke",
"author_login": "yschimke",
"committed_at": "2026-05-25T10:12:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "003d68d14f3c60e8fb20d08c50281e3410566acc",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update org.bouncycastle to v1.84 (#9421)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-05-25T09:17:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fbc810ece6f870aba76533611d89e9c23de37e34",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update kotlinx-coroutines monorepo to v1.11.0 (#9450)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-05-25T09:17:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cab07951afccde4c44223c2750f8e3285b000933",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update graalvm (#9427)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-05-25T09:16:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "517ecdc9e77f06cf3536355f1df8c4b061cc2bf9",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update dependency com.github.iherasymenko.jlink to v0.9 (#9441)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-05-25T09:16:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1509b260dd0a8dbd4cdb434c453ae7ff69d92444",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update plugin com.diffplug.spotless to v8.5.1 (#9455)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-05-25T09:15:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0a96d3ef6240d51b483d06a9934d69f50a2f8702",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update Gradle to v9.5.1 (#9448)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-05-25T08:53:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "42995fba4dc50f38ba33777c36da2635a2f75ab6",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update dependency com.puppycrawl.tools:checkstyle to v13.4.2 (#9432)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-05-24T01:46:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cd011b2a44111871146979d450d4fb9bd5b10c05",
"body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Update junit-framework monorepo to v1.14.4 (#9431)",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-05-23T22:01:43Z",
"body_truncated": false,
"is_coding_agent": false
}
],
"releases_count": 0,
"commits_last_year": 385,
"latest_release_at": null,
"latest_release_tag": null,
"releases_from_tags": false,
"days_since_last_push": 0,
"active_weeks_last_year": 47,
"days_since_latest_release": null,
"mean_days_between_releases": null
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": true,
"has_contributing": true,
"health_percentage": 75,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"ecosystem": {
"packages": []
},
"popularity": {
"forks": 9288,
"stars": 47015,
"watchers": 1616,
"fork_history": {
"days": [
{
"date": "2022-06-13",
"count": 2
},
{
"date": "2022-06-15",
"count": 3
},
{
"date": "2022-06-16",
"count": 2
},
{
"date": "2022-06-18",
"count": 1
},
{
"date": "2022-06-20",
"count": 2
},
{
"date": "2022-06-21",
"count": 2
},
{
"date": "2022-06-22",
"count": 2
},
{
"date": "2022-06-23",
"count": 3
},
{
"date": "2022-06-24",
"count": 2
},
{
"date": "2022-06-25",
"count": 2
},
{
"date": "2022-06-26",
"count": 2
},
{
"date": "2022-06-28",
"count": 2
},
{
"date": "2022-06-30",
"count": 1
},
{
"date": "2022-07-01",
"count": 1
},
{
"date": "2022-07-03",
"count": 2
},
{
"date": "2022-07-05",
"count": 3
},
{
"date": "2022-07-07",
"count": 2
},
{
"date": "2022-07-09",
"count": 1
},
{
"date": "2022-07-11",
"count": 1
},
{
"date": "2022-07-12",
"count": 1
},
{
"date": "2022-07-13",
"count": 2
},
{
"date": "2022-07-15",
"count": 1
},
{
"date": "2022-07-18",
"count": 2
},
{
"date": "2022-07-20",
"count": 2
},
{
"date": "2022-07-21",
"count": 2
},
{
"date": "2022-07-22",
"count": 2
},
{
"date": "2022-07-23",
"count": 1
},
{
"date": "2022-07-25",
"count": 1
},
{
"date": "2022-07-26",
"count": 1
},
{
"date": "2022-07-27",
"count": 2
},
{
"date": "2022-07-28",
"count": 2
},
{
"date": "2022-07-29",
"count": 2
},
{
"date": "2022-07-30",
"count": 5
},
{
"date": "2022-08-02",
"count": 1
},
{
"date": "2022-08-04",
"count": 1
},
{
"date": "2022-08-05",
"count": 4
},
{
"date": "2022-08-08",
"count": 2
},
{
"date": "2022-08-09",
"count": 1
},
{
"date": "2022-08-10",
"count": 1
},
{
"date": "2022-08-11",
"count": 2
},
{
"date": "2022-08-12",
"count": 2
},
{
"date": "2022-08-14",
"count": 1
},
{
"date": "2022-08-15",
"count": 1
},
{
"date": "2022-08-17",
"count": 2
},
{
"date": "2022-08-19",
"count": 1
},
{
"date": "2022-08-23",
"count": 1
},
{
"date": "2022-08-25",
"count": 1
},
{
"date": "2022-08-28",
"count": 1
},
{
"date": "2022-08-30",
"count": 3
},
{
"date": "2022-08-31",
"count": 2
},
{
"date": "2022-09-01",
"count": 2
},
{
"date": "2022-09-02",
"count": 3
},
{
"date": "2022-09-04",
"count": 1
},
{
"date": "2022-09-05",
"count": 2
},
{
"date": "2022-09-06",
"count": 4
},
{
"date": "2022-09-07",
"count": 4
},
{
"date": "2022-09-09",
"count": 1
},
{
"date": "2022-09-15",
"count": 1
},
{
"date": "2022-09-16",
"count": 2
},
{
"date": "2022-09-19",
"count": 1
},
{
"date": "2022-09-20",
"count": 1
},
{
"date": "2022-09-21",
"count": 3
},
{
"date": "2022-09-22",
"count": 1
},
{
"date": "2022-09-26",
"count": 1
},
{
"date": "2022-09-27",
"count": 1
},
{
"date": "2022-09-28",
"count": 2
},
{
"date": "2022-09-29",
"count": 1
},
{
"date": "2022-10-01",
"count": 1
},
{
"date": "2022-10-03",
"count": 1
},
{
"date": "2022-10-06",
"count": 1
},
{
"date": "2022-10-08",
"count": 3
},
{
"date": "2022-10-09",
"count": 2
},
{
"date": "2022-10-11",
"count": 2
},
{
"date": "2022-10-14",
"count": 3
},
{
"date": "2022-10-15",
"count": 2
},
{
"date": "2022-10-16",
"count": 1
},
{
"date": "2022-10-17",
"count": 2
},
{
"date": "2022-10-19",
"count": 1
},
{
"date": "2022-10-20",
"count": 1
},
{
"date": "2022-10-21",
"count": 1
},
{
"date": "2022-10-22",
"count": 2
},
{
"date": "2022-10-23",
"count": 1
},
{
"date": "2022-10-26",
"count": 1
},
{
"date": "2022-10-27",
"count": 1
},
{
"date": "2022-10-28",
"count": 1
},
{
"date": "2022-10-31",
"count": 1
},
{
"date": "2022-11-01",
"count": 1
},
{
"date": "2022-11-03",
"count": 3
},
{
"date": "2022-11-07",
"count": 2
},
{
"date": "2022-11-08",
"count": 1
},
{
"date": "2022-11-09",
"count": 2
},
{
"date": "2022-11-10",
"count": 3
},
{
"date": "2022-11-13",
"count": 2
},
{
"date": "2022-11-15",
"count": 1
},
{
"date": "2022-11-16",
"count": 2
},
{
"date": "2022-11-17",
"count": 1
},
{
"date": "2022-11-20",
"count": 1
},
{
"date": "2022-11-21",
"count": 1
},
{
"date": "2022-11-22",
"count": 1
},
{
"date": "2022-11-23",
"count": 1
},
{
"date": "2022-11-25",
"count": 2
},
{
"date": "2022-11-26",
"count": 1
},
{
"date": "2022-11-27",
"count": 1
},
{
"date": "2022-11-28",
"count": 1
},
{
"date": "2022-11-29",
"count": 1
},
{
"date": "2022-11-30",
"count": 1
},
{
"date": "2022-12-01",
"count": 1
},
{
"date": "2022-12-02",
"count": 1
},
{
"date": "2022-12-03",
"count": 2
},
{
"date": "2022-12-05",
"count": 2
},
{
"date": "2022-12-06",
"count": 2
},
{
"date": "2022-12-07",
"count": 2
},
{
"date": "2022-12-08",
"count": 2
},
{
"date": "2022-12-14",
"count": 2
},
{
"date": "2022-12-15",
"count": 1
},
{
"date": "2022-12-17",
"count": 1
},
{
"date": "2022-12-19",
"count": 1
},
{
"date": "2022-12-20",
"count": 1
},
{
"date": "2022-12-22",
"count": 1
},
{
"date": "2022-12-23",
"count": 2
},
{
"date": "2022-12-24",
"count": 3
},
{
"date": "2022-12-26",
"count": 1
},
{
"date": "2022-12-27",
"count": 1
},
{
"date": "2023-01-01",
"count": 1
},
{
"date": "2023-01-04",
"count": 1
},
{
"date": "2023-01-05",
"count": 1
},
{
"date": "2023-01-08",
"count": 1
},
{
"date": "2023-01-09",
"count": 2
},
{
"date": "2023-01-13",
"count": 2
},
{
"date": "2023-01-14",
"count": 1
},
{
"date": "2023-01-17",
"count": 1
},
{
"date": "2023-01-18",
"count": 1
},
{
"date": "2023-01-19",
"count": 2
},
{
"date": "2023-01-20",
"count": 2
},
{
"date": "2023-01-21",
"count": 1
},
{
"date": "2023-01-24",
"count": 1
},
{
"date": "2023-01-25",
"count": 3
},
{
"date": "2023-01-27",
"count": 1
},
{
"date": "2023-01-28",
"count": 2
},
{
"date": "2023-01-29",
"count": 1
},
{
"date": "2023-01-30",
"count": 2
},
{
"date": "2023-01-31",
"count": 1
},
{
"date": "2023-02-01",
"count": 1
},
{
"date": "2023-02-02",
"count": 2
},
{
"date": "2023-02-03",
"count": 2
},
{
"date": "2023-02-05",
"count": 1
},
{
"date": "2023-02-06",
"count": 1
},
{
"date": "2023-02-08",
"count": 1
},
{
"date": "2023-02-10",
"count": 2
},
{
"date": "2023-02-16",
"count": 2
},
{
"date": "2023-02-17",
"count": 3
},
{
"date": "2023-02-19",
"count": 2
},
{
"date": "2023-02-20",
"count": 1
},
{
"date": "2023-02-21",
"count": 2
},
{
"date": "2023-02-22",
"count": 1
},
{
"date": "2023-02-23",
"count": 1
},
{
"date": "2023-02-24",
"count": 2
},
{
"date": "2023-02-26",
"count": 1
},
{
"date": "2023-02-27",
"count": 2
},
{
"date": "2023-02-28",
"count": 2
},
{
"date": "2023-03-01",
"count": 4
},
{
"date": "2023-03-03",
"count": 1
},
{
"date": "2023-03-05",
"count": 3
},
{
"date": "2023-03-06",
"count": 2
},
{
"date": "2023-03-07",
"count": 2
},
{
"date": "2023-03-10",
"count": 1
},
{
"date": "2023-03-11",
"count": 1
},
{
"date": "2023-03-16",
"count": 4
},
{
"date": "2023-03-17",
"count": 1
},
{
"date": "2023-03-20",
"count": 1
},
{
"date": "2023-03-21",
"count": 1
},
{
"date": "2023-03-22",
"count": 2
},
{
"date": "2023-03-23",
"count": 1
},
{
"date": "2023-03-24",
"count": 1
},
{
"date": "2023-03-25",
"count": 1
},
{
"date": "2023-03-28",
"count": 1
},
{
"date": "2023-03-30",
"count": 3
},
{
"date": "2023-03-31",
"count": 1
},
{
"date": "2023-04-01",
"count": 1
},
{
"date": "2023-04-03",
"count": 1
},
{
"date": "2023-04-04",
"count": 1
},
{
"date": "2023-04-05",
"count": 1
},
{
"date": "2023-04-06",
"count": 2
},
{
"date": "2023-04-09",
"count": 1
},
{
"date": "2023-04-10",
"count": 2
},
{
"date": "2023-04-11",
"count": 2
},
{
"date": "2023-04-12",
"count": 1
},
{
"date": "2023-04-13",
"count": 3
},
{
"date": "2023-04-14",
"count": 4
},
{
"date": "2023-04-15",
"count": 1
},
{
"date": "2023-04-17",
"count": 1
},
{
"date": "2023-04-19",
"count": 3
},
{
"date": "2023-04-20",
"count": 2
},
{
"date": "2023-04-23",
"count": 2
},
{
"date": "2023-04-24",
"count": 2
},
{
"date": "2023-04-25",
"count": 1
},
{
"date": "2023-04-26",
"count": 5
},
{
"date": "2023-04-27",
"count": 1
},
{
"date": "2023-04-29",
"count": 1
},
{
"date": "2023-04-30",
"count": 1
},
{
"date": "2023-05-02",
"count": 1
},
{
"date": "2023-05-04",
"count": 2
},
{
"date": "2023-05-06",
"count": 2
},
{
"date": "2023-05-08",
"count": 1
},
{
"date": "2023-05-10",
"count": 1
},
{
"date": "2023-05-11",
"count": 1
},
{
"date": "2023-05-15",
"count": 1
},
{
"date": "2023-05-17",
"count": 4
},
{
"date": "2023-05-18",
"count": 2
},
{
"date": "2023-05-20",
"count": 1
},
{
"date": "2023-05-22",
"count": 2
},
{
"date": "2023-05-23",
"count": 1
},
{
"date": "2023-05-24",
"count": 2
},
{
"date": "2023-05-26",
"count": 2
},
{
"date": "2023-05-28",
"count": 1
},
{
"date": "2023-05-30",
"count": 2
},
{
"date": "2023-05-31",
"count": 1
},
{
"date": "2023-06-03",
"count": 1
},
{
"date": "2023-06-06",
"count": 1
},
{
"date": "2023-06-07",
"count": 1
},
{
"date": "2023-06-11",
"count": 2
},
{
"date": "2023-06-13",
"count": 1
},
{
"date": "2023-06-14",
"count": 2
},
{
"date": "2023-06-15",
"count": 3
},
{
"date": "2023-06-18",
"count": 1
},
{
"date": "2023-06-19",
"count": 1
},
{
"date": "2023-06-20",
"count": 2
},
{
"date": "2023-06-22",
"count": 2
},
{
"date": "2023-06-26",
"count": 1
},
{
"date": "2023-06-27",
"count": 1
},
{
"date": "2023-07-04",
"count": 1
},
{
"date": "2023-07-06",
"count": 1
},
{
"date": "2023-07-07",
"count": 1
},
{
"date": "2023-07-11",
"count": 1
},
{
"date": "2023-07-12",
"count": 2
},
{
"date": "2023-07-13",
"count": 1
},
{
"date": "2023-07-16",
"count": 1
},
{
"date": "2023-07-17",
"count": 1
},
{
"date": "2023-07-20",
"count": 1
},
{
"date": "2023-07-21",
"count": 1
},
{
"date": "2023-07-23",
"count": 1
},
{
"date": "2023-07-27",
"count": 1
},
{
"date": "2023-07-28",
"count": 1
},
{
"date": "2023-07-29",
"count": 1
},
{
"date": "2023-08-01",
"count": 1
},
{
"date": "2023-08-02",
"count": 2
},
{
"date": "2023-08-05",
"count": 1
},
{
"date": "2023-08-07",
"count": 3
},
{
"date": "2023-08-08",
"count": 3
},
{
"date": "2023-08-09",
"count": 1
},
{
"date": "2023-08-10",
"count": 1
},
{
"date": "2023-08-11",
"count": 2
},
{
"date": "2023-08-18",
"count": 1
},
{
"date": "2023-08-20",
"count": 1
},
{
"date": "2023-08-21",
"count": 2
},
{
"date": "2023-08-24",
"count": 3
},
{
"date": "2023-08-26",
"count": 2
},
{
"date": "2023-08-27",
"count": 1
},
{
"date": "2023-08-29",
"count": 1
},
{
"date": "2023-08-31",
"count": 1
},
{
"date": "2023-09-04",
"count": 1
},
{
"date": "2023-09-05",
"count": 1
},
{
"date": "2023-09-07",
"count": 1
},
{
"date": "2023-09-08",
"count": 2
},
{
"date": "2023-09-09",
"count": 1
},
{
"date": "2023-09-14",
"count": 3
},
{
"date": "2023-09-15",
"count": 1
},
{
"date": "2023-09-18",
"count": 1
},
{
"date": "2023-09-25",
"count": 1
},
{
"date": "2023-09-26",
"count": 1
},
{
"date": "2023-09-27",
"count": 2
},
{
"date": "2023-10-01",
"count": 1
},
{
"date": "2023-10-04",
"count": 2
},
{
"date": "2023-10-06",
"count": 1
},
{
"date": "2023-10-07",
"count": 1
},
{
"date": "2023-10-08",
"count": 1
},
{
"date": "2023-10-10",
"count": 2
},
{
"date": "2023-10-12",
"count": 2
},
{
"date": "2023-10-23",
"count": 1
},
{
"date": "2023-10-25",
"count": 2
},
{
"date": "2023-10-26",
"count": 4
},
{
"date": "2023-10-29",
"count": 1
},
{
"date": "2023-10-31",
"count": 3
},
{
"date": "2023-11-04",
"count": 1
},
{
"date": "2023-11-06",
"count": 2
},
{
"date": "2023-11-09",
"count": 3
},
{
"date": "2023-11-10",
"count": 1
},
{
"date": "2023-11-11",
"count": 1
},
{
"date": "2023-11-12",
"count": 1
},
{
"date": "2023-11-14",
"count": 3
},
{
"date": "2023-11-18",
"count": 1
},
{
"date": "2023-11-19",
"count": 1
},
{
"date": "2023-11-21",
"count": 1
},
{
"date": "2023-11-27",
"count": 2
},
{
"date": "2023-11-29",
"count": 2
},
{
"date": "2023-11-30",
"count": 1
},
{
"date": "2023-12-03",
"count": 2
},
{
"date": "2023-12-04",
"count": 1
},
{
"date": "2023-12-06",
"count": 2
},
{
"date": "2023-12-07",
"count": 3
},
{
"date": "2023-12-08",
"count": 1
},
{
"date": "2023-12-09",
"count": 2
},
{
"date": "2023-12-10",
"count": 1
},
{
"date": "2023-12-13",
"count": 1
},
{
"date": "2023-12-15",
"count": 2
},
{
"date": "2023-12-22",
"count": 2
},
{
"date": "2023-12-26",
"count": 2
},
{
"date": "2023-12-30",
"count": 1
},
{
"date": "2023-12-31",
"count": 1
},
{
"date": "2024-01-05",
"count": 2
},
{
"date": "2024-01-08",
"count": 1
},
{
"date": "2024-01-11",
"count": 2
},
{
"date": "2024-01-13",
"count": 1
},
{
"date": "2024-01-15",
"count": 1
},
{
"date": "2024-01-18",
"count": 1
},
{
"date": "2024-01-19",
"count": 1
},
{
"date": "2024-01-22",
"count": 1
},
{
"date": "2024-01-23",
"count": 1
},
{
"date": "2024-01-24",
"count": 2
},
{
"date": "2024-01-27",
"count": 3
},
{
"date": "2024-01-30",
"count": 4
},
{
"date": "2024-02-02",
"count": 1
},
{
"date": "2024-02-03",
"count": 1
},
{
"date": "2024-02-04",
"count": 1
},
{
"date": "2024-02-05",
"count": 2
},
{
"date": "2024-02-06",
"count": 3
},
{
"date": "2024-02-08",
"count": 1
},
{
"date": "2024-02-09",
"count": 2
},
{
"date": "2024-02-12",
"count": 1
},
{
"date": "2024-02-13",
"count": 1
},
{
"date": "2024-02-14",
"count": 1
},
{
"date": "2024-02-16",
"count": 2
},
{
"date": "2024-02-17",
"count": 3
},
{
"date": "2024-02-18",
"count": 1
},
{
"date": "2024-02-21",
"count": 1
},
{
"date": "2024-02-22",
"count": 1
},
{
"date": "2024-02-23",
"count": 1
},
{
"date": "2024-02-25",
"count": 1
},
{
"date": "2024-02-26",
"count": 2
},
{
"date": "2024-02-27",
"count": 1
},
{
"date": "2024-02-29",
"count": 3
},
{
"date": "2024-03-01",
"count": 1
},
{
"date": "2024-03-07",
"count": 2
},
{
"date": "2024-03-08",
"count": 1
},
{
"date": "2024-03-12",
"count": 1
},
{
"date": "2024-03-13",
"count": 1
},
{
"date": "2024-03-15",
"count": 3
},
{
"date": "2024-03-16",
"count": 2
},
{
"date": "2024-03-17",
"count": 2
},
{
"date": "2024-03-19",
"count": 1
},
{
"date": "2024-03-21",
"count": 3
},
{
"date": "2024-03-22",
"count": 2
},
{
"date": "2024-03-23",
"count": 1
},
{
"date": "2024-03-25",
"count": 2
},
{
"date": "2024-03-26",
"count": 2
},
{
"date": "2024-03-31",
"count": 1
},
{
"date": "2024-04-03",
"count": 1
},
{
"date": "2024-04-06",
"count": 1
},
{
"date": "2024-04-07",
"count": 1
},
{
"date": "2024-04-08",
"count": 1
},
{
"date": "2024-04-09",
"count": 1
},
{
"date": "2024-04-10",
"count": 1
},
{
"date": "2024-04-11",
"count": 2
},
{
"date": "2024-04-13",
"count": 1
},
{
"date": "2024-04-16",
"count": 1
},
{
"date": "2024-04-19",
"count": 1
},
{
"date": "2024-04-21",
"count": 1
},
{
"date": "2024-04-22",
"count": 1
},
{
"date": "2024-04-25",
"count": 1
},
{
"date": "2024-04-26",
"count": 1
},
{
"date": "2024-04-30",
"count": 1
},
{
"date": "2024-05-03",
"count": 1
},
{
"date": "2024-05-05",
"count": 1
},
{
"date": "2024-05-08",
"count": 1
},
{
"date": "2024-05-09",
"count": 2
},
{
"date": "2024-05-10",
"count": 2
},
{
"date": "2024-05-13",
"count": 1
},
{
"date": "2024-05-14",
"count": 2
},
{
"date": "2024-05-20",
"count": 1
},
{
"date": "2024-05-22",
"count": 2
},
{
"date": "2024-05-27",
"count": 1
},
{
"date": "2024-05-28",
"count": 3
},
{
"date": "2024-05-29",
"count": 1
},
{
"date": "2024-05-30",
"count": 2
},
{
"date": "2024-06-04",
"count": 3
},
{
"date": "2024-06-05",
"count": 1
},
{
"date": "2024-06-09",
"count": 1
},
{
"date": "2024-06-10",
"count": 1
},
{
"date": "2024-06-11",
"count": 1
},
{
"date": "2024-06-13",
"count": 1
},
{
"date": "2024-06-16",
"count": 1
},
{
"date": "2024-06-17",
"count": 1
},
{
"date": "2024-06-18",
"count": 1
},
{
"date": "2024-06-21",
"count": 3
},
{
"date": "2024-06-23",
"count": 1
},
{
"date": "2024-06-24",
"count": 1
},
{
"date": "2024-06-25",
"count": 1
},
{
"date": "2024-07-02",
"count": 1
},
{
"date": "2024-07-03",
"count": 2
},
{
"date": "2024-07-04",
"count": 1
},
{
"date": "2024-07-07",
"count": 1
},
{
"date": "2024-07-09",
"count": 1
},
{
"date": "2024-07-12",
"count": 2
},
{
"date": "2024-07-13",
"count": 1
},
{
"date": "2024-07-21",
"count": 1
},
{
"date": "2024-07-22",
"count": 1
},
{
"date": "2024-07-23",
"count": 1
},
{
"date": "2024-07-25",
"count": 2
},
{
"date": "2024-07-26",
"count": 1
},
{
"date": "2024-07-28",
"count": 1
},
{
"date": "2024-07-29",
"count": 1
},
{
"date": "2024-07-30",
"count": 3
},
{
"date": "2024-08-01",
"count": 1
},
{
"date": "2024-08-04",
"count": 1
},
{
"date": "2024-08-05",
"count": 1
},
{
"date": "2024-08-06",
"count": 1
},
{
"date": "2024-08-07",
"count": 1
},
{
"date": "2024-08-09",
"count": 2
},
{
"date": "2024-08-10",
"count": 1
},
{
"date": "2024-08-18",
"count": 1
},
{
"date": "2024-08-25",
"count": 1
},
{
"date": "2024-08-27",
"count": 2
},
{
"date": "2024-08-30",
"count": 1
},
{
"date": "2024-08-31",
"count": 2
},
{
"date": "2024-09-02",
"count": 1
},
{
"date": "2024-09-03",
"count": 2
},
{
"date": "2024-09-04",
"count": 1
},
{
"date": "2024-09-08",
"count": 2
},
{
"date": "2024-09-11",
"count": 1
},
{
"date": "2024-09-20",
"count": 1
},
{
"date": "2024-09-21",
"count": 1
},
{
"date": "2024-09-23",
"count": 1
},
{
"date": "2024-09-24",
"count": 1
},
{
"date": "2024-09-25",
"count": 1
},
{
"date": "2024-09-27",
"count": 1
},
{
"date": "2024-09-30",
"count": 1
},
{
"date": "2024-10-04",
"count": 1
},
{
"date": "2024-10-08",
"count": 2
},
{
"date": "2024-10-10",
"count": 1
},
{
"date": "2024-10-11",
"count": 1
},
{
"date": "2024-10-14",
"count": 1
},
{
"date": "2024-10-15",
"count": 1
},
{
"date": "2024-10-17",
"count": 2
},
{
"date": "2024-10-20",
"count": 1
},
{
"date": "2024-10-21",
"count": 1
},
{
"date": "2024-10-28",
"count": 1
},
{
"date": "2024-10-29",
"count": 1
},
{
"date": "2024-10-30",
"count": 1
},
{
"date": "2024-10-31",
"count": 1
},
{
"date": "2024-11-01",
"count": 2
},
{
"date": "2024-11-06",
"count": 1
},
{
"date": "2024-11-09",
"count": 1
},
{
"date": "2024-11-18",
"count": 2
},
{
"date": "2024-11-20",
"count": 2
},
{
"date": "2024-11-21",
"count": 1
},
{
"date": "2024-11-22",
"count": 1
},
{
"date": "2024-11-24",
"count": 1
},
{
"date": "2024-11-25",
"count": 2
},
{
"date": "2024-11-27",
"count": 1
},
{
"date": "2024-11-30",
"count": 1
},
{
"date": "2024-12-02",
"count": 1
},
{
"date": "2024-12-04",
"count": 1
},
{
"date": "2024-12-06",
"count": 2
},
{
"date": "2024-12-07",
"count": 1
},
{
"date": "2024-12-08",
"count": 1
},
{
"date": "2024-12-10",
"count": 1
},
{
"date": "2024-12-11",
"count": 1
},
{
"date": "2024-12-13",
"count": 2
},
{
"date": "2024-12-16",
"count": 1
},
{
"date": "2024-12-18",
"count": 1
},
{
"date": "2024-12-19",
"count": 1
},
{
"date": "2024-12-29",
"count": 1
},
{
"date": "2024-12-30",
"count": 1
},
{
"date": "2024-12-31",
"count": 2
},
{
"date": "2025-01-01",
"count": 1
},
{
"date": "2025-01-06",
"count": 1
},
{
"date": "2025-01-09",
"count": 1
},
{
"date": "2025-01-10",
"count": 2
},
{
"date": "2025-01-12",
"count": 1
},
{
"date": "2025-01-14",
"count": 1
},
{
"date": "2025-01-20",
"count": 1
},
{
"date": "2025-01-21",
"count": 1
},
{
"date": "2025-01-23",
"count": 1
},
{
"date": "2025-01-29",
"count": 1
},
{
"date": "2025-01-30",
"count": 1
},
{
"date": "2025-02-04",
"count": 1
},
{
"date": "2025-02-05",
"count": 1
},
{
"date": "2025-02-10",
"count": 3
},
{
"date": "2025-02-13",
"count": 1
},
{
"date": "2025-02-15",
"count": 3
},
{
"date": "2025-02-16",
"count": 1
},
{
"date": "2025-02-19",
"count": 1
},
{
"date": "2025-02-24",
"count": 1
},
{
"date": "2025-02-25",
"count": 1
},
{
"date": "2025-02-28",
"count": 1
},
{
"date": "2025-03-02",
"count": 1
},
{
"date": "2025-03-03",
"count": 1
},
{
"date": "2025-03-04",
"count": 1
},
{
"date": "2025-03-17",
"count": 1
},
{
"date": "2025-03-18",
"count": 1
},
{
"date": "2025-03-19",
"count": 1
},
{
"date": "2025-03-21",
"count": 2
},
{
"date": "2025-03-23",
"count": 1
},
{
"date": "2025-03-25",
"count": 1
},
{
"date": "2025-03-26",
"count": 1
},
{
"date": "2025-03-27",
"count": 1
},
{
"date": "2025-03-29",
"count": 2
},
{
"date": "2025-03-31",
"count": 1
},
{
"date": "2025-04-01",
"count": 1
},
{
"date": "2025-04-02",
"count": 2
},
{
"date": "2025-04-04",
"count": 1
},
{
"date": "2025-04-05",
"count": 1
},
{
"date": "2025-04-07",
"count": 1
},
{
"date": "2025-04-09",
"count": 1
},
{
"date": "2025-04-15",
"count": 1
},
{
"date": "2025-04-17",
"count": 1
},
{
"date": "2025-04-18",
"count": 4
},
{
"date": "2025-04-22",
"count": 1
},
{
"date": "2025-05-01",
"count": 1
},
{
"date": "2025-05-02",
"count": 1
},
{
"date": "2025-05-06",
"count": 1
},
{
"date": "2025-05-07",
"count": 1
},
{
"date": "2025-05-14",
"count": 1
},
{
"date": "2025-05-20",
"count": 1
},
{
"date": "2025-05-21",
"count": 1
},
{
"date": "2025-05-28",
"count": 2
},
{
"date": "2025-06-07",
"count": 1
},
{
"date": "2025-06-11",
"count": 1
},
{
"date": "2025-06-12",
"count": 1
},
{
"date": "2025-06-14",
"count": 1
},
{
"date": "2025-06-16",
"count": 1
},
{
"date": "2025-06-17",
"count": 1
},
{
"date": "2025-06-18",
"count": 1
},
{
"date": "2025-06-19",
"count": 1
},
{
"date": "2025-06-23",
"count": 3
},
{
"date": "2025-06-24",
"count": 1
},
{
"date": "2025-06-25",
"count": 2
},
{
"date": "2025-06-27",
"count": 1
},
{
"date": "2025-06-29",
"count": 1
},
{
"date": "2025-06-30",
"count": 2
},
{
"date": "2025-07-02",
"count": 1
},
{
"date": "2025-07-07",
"count": 1
},
{
"date": "2025-07-09",
"count": 2
},
{
"date": "2025-07-10",
"count": 1
},
{
"date": "2025-07-11",
"count": 1
},
{
"date": "2025-07-13",
"count": 1
},
{
"date": "2025-07-14",
"count": 1
},
{
"date": "2025-07-15",
"count": 2
},
{
"date": "2025-07-17",
"count": 1
},
{
"date": "2025-07-18",
"count": 1
},
{
"date": "2025-07-19",
"count": 1
},
{
"date": "2025-07-20",
"count": 1
},
{
"date": "2025-07-21",
"count": 1
},
{
"date": "2025-07-22",
"count": 1
},
{
"date": "2025-07-25",
"count": 1
},
{
"date": "2025-08-04",
"count": 3
},
{
"date": "2025-08-05",
"count": 1
},
{
"date": "2025-08-06",
"count": 1
},
{
"date": "2025-08-12",
"count": 1
},
{
"date": "2025-08-13",
"count": 2
},
{
"date": "2025-08-15",
"count": 1
},
{
"date": "2025-08-18",
"count": 2
},
{
"date": "2025-08-19",
"count": 1
},
{
"date": "2025-08-21",
"count": 1
},
{
"date": "2025-08-24",
"count": 1
},
{
"date": "2025-08-26",
"count": 1
},
{
"date": "2025-08-27",
"count": 1
},
{
"date": "2025-08-28",
"count": 2
},
{
"date": "2025-08-30",
"count": 1
},
{
"date": "2025-08-31",
"count": 2
},
{
"date": "2025-09-01",
"count": 1
},
{
"date": "2025-09-05",
"count": 1
},
{
"date": "2025-09-10",
"count": 1
},
{
"date": "2025-09-15",
"count": 1
},
{
"date": "2025-09-18",
"count": 2
},
{
"date": "2025-09-21",
"count": 1
},
{
"date": "2025-09-22",
"count": 3
},
{
"date": "2025-09-23",
"count": 2
},
{
"date": "2025-09-28",
"count": 2
},
{
"date": "2025-09-29",
"count": 1
},
{
"date": "2025-09-30",
"count": 1
},
{
"date": "2025-10-03",
"count": 2
},
{
"date": "2025-10-05",
"count": 2
},
{
"date": "2025-10-06",
"count": 1
},
{
"date": "2025-10-09",
"count": 1
},
{
"date": "2025-10-11",
"count": 2
},
{
"date": "2025-10-13",
"count": 1
},
{
"date": "2025-10-18",
"count": 1
},
{
"date": "2025-10-20",
"count": 1
},
{
"date": "2025-10-21",
"count": 1
},
{
"date": "2025-10-22",
"count": 1
},
{
"date": "2025-10-27",
"count": 1
},
{
"date": "2025-11-03",
"count": 1
},
{
"date": "2025-11-04",
"count": 1
},
{
"date": "2025-11-05",
"count": 1
},
{
"date": "2025-11-06",
"count": 1
},
{
"date": "2025-11-07",
"count": 1
},
{
"date": "2025-11-11",
"count": 3
},
{
"date": "2025-11-12",
"count": 1
},
{
"date": "2025-11-13",
"count": 1
},
{
"date": "2025-11-16",
"count": 1
},
{
"date": "2025-11-18",
"count": 1
},
{
"date": "2025-11-21",
"count": 2
},
{
"date": "2025-11-28",
"count": 2
},
{
"date": "2025-12-05",
"count": 2
},
{
"date": "2025-12-07",
"count": 1
},
{
"date": "2025-12-13",
"count": 1
},
{
"date": "2025-12-18",
"count": 3
},
{
"date": "2026-01-03",
"count": 1
},
{
"date": "2026-01-04",
"count": 2
},
{
"date": "2026-01-06",
"count": 1
},
{
"date": "2026-01-10",
"count": 1
},
{
"date": "2026-01-18",
"count": 1
},
{
"date": "2026-01-21",
"count": 2
},
{
"date": "2026-01-26",
"count": 1
},
{
"date": "2026-01-28",
"count": 1
},
{
"date": "2026-02-02",
"count": 1
},
{
"date": "2026-02-04",
"count": 1
},
{
"date": "2026-02-07",
"count": 1
},
{
"date": "2026-02-09",
"count": 1
},
{
"date": "2026-02-10",
"count": 1
},
{
"date": "2026-02-11",
"count": 1
},
{
"date": "2026-02-12",
"count": 1
},
{
"date": "2026-02-13",
"count": 1
},
{
"date": "2026-02-14",
"count": 1
},
{
"date": "2026-02-16",
"count": 1
},
{
"date": "2026-02-19",
"count": 1
},
{
"date": "2026-02-20",
"count": 1
},
{
"date": "2026-02-21",
"count": 1
},
{
"date": "2026-02-23",
"count": 1
},
{
"date": "2026-02-25",
"count": 1
},
{
"date": "2026-02-27",
"count": 1
},
{
"date": "2026-02-28",
"count": 1
},
{
"date": "2026-03-02",
"count": 1
},
{
"date": "2026-03-05",
"count": 2
},
{
"date": "2026-03-06",
"count": 2
},
{
"date": "2026-03-07",
"count": 2
},
{
"date": "2026-03-10",
"count": 2
},
{
"date": "2026-03-13",
"count": 3
},
{
"date": "2026-03-15",
"count": 1
},
{
"date": "2026-03-18",
"count": 3
},
{
"date": "2026-03-20",
"count": 2
},
{
"date": "2026-03-23",
"count": 2
},
{
"date": "2026-03-26",
"count": 1
},
{
"date": "2026-03-30",
"count": 1
},
{
"date": "2026-04-02",
"count": 1
},
{
"date": "2026-04-03",
"count": 1
},
{
"date": "2026-04-04",
"count": 1
},
{
"date": "2026-04-05",
"count": 1
},
{
"date": "2026-04-06",
"count": 1
},
{
"date": "2026-04-07",
"count": 1
},
{
"date": "2026-04-10",
"count": 1
},
{
"date": "2026-04-13",
"count": 2
},
{
"date": "2026-04-17",
"count": 1
},
{
"date": "2026-04-22",
"count": 1
},
{
"date": "2026-05-02",
"count": 1
},
{
"date": "2026-05-07",
"count": 1
},
{
"date": "2026-05-08",
"count": 1
},
{
"date": "2026-05-10",
"count": 1
},
{
"date": "2026-05-11",
"count": 1
},
{
"date": "2026-05-15",
"count": 2
},
{
"date": "2026-05-18",
"count": 1
},
{
"date": "2026-05-22",
"count": 1
},
{
"date": "2026-05-24",
"count": 1
},
{
"date": "2026-05-30",
"count": 1
},
{
"date": "2026-05-31",
"count": 1
},
{
"date": "2026-06-06",
"count": 1
},
{
"date": "2026-06-08",
"count": 1
},
{
"date": "2026-06-11",
"count": 1
},
{
"date": "2026-06-14",
"count": 1
},
{
"date": "2026-06-18",
"count": 1
},
{
"date": "2026-06-20",
"count": 1
},
{
"date": "2026-06-21",
"count": 2
},
{
"date": "2026-06-23",
"count": 1
},
{
"date": "2026-06-24",
"count": 2
},
{
"date": "2026-06-25",
"count": 2
},
{
"date": "2026-07-05",
"count": 2
},
{
"date": "2026-07-06",
"count": 3
},
{
"date": "2026-07-11",
"count": 1
},
{
"date": "2026-07-12",
"count": 2
},
{
"date": "2026-07-14",
"count": 1
},
{
"date": "2026-07-16",
"count": 1
},
{
"date": "2026-07-18",
"count": 3
},
{
"date": "2026-07-19",
"count": 4
},
{
"date": "2026-07-20",
"count": 1
},
{
"date": "2026-07-23",
"count": 1
},
{
"date": "2026-07-26",
"count": 1
},
{
"date": "2026-07-27",
"count": 4
},
{
"date": "2026-07-28",
"count": 1
}
],
"complete": false,
"collected": 1000,
"total_forks": 9288
},
"star_history": null,
"open_issues_and_prs": 129
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [
"recipes",
"sample",
"samples"
],
"has_llms_txt": false,
"has_dockerfile": false,
"has_mcp_signal": false,
"bootstrap_files": [],
"api_schema_files": [],
"has_devcontainer": true,
"typecheck_configs": [],
"toolchain_manifests": [
"android-test-app/build.gradle.kts",
"android-test/build.gradle.kts",
"build-logic/build.gradle.kts",
"build.gradle.kts",
"container-tests/build.gradle.kts",
"maven-tests/pom.xml",
"mockwebserver-deprecated/build.gradle.kts",
"mockwebserver-junit4/build.gradle.kts",
"mockwebserver-junit5/build.gradle.kts",
"mockwebserver/build.gradle.kts",
"module-tests/build.gradle.kts",
"native-image-tests/build.gradle.kts",
"okcurl/build.gradle.kts",
"okhttp-bom/build.gradle.kts",
"okhttp-brotli/build.gradle.kts",
"okhttp-coroutines/build.gradle.kts",
"okhttp-dnsoverhttps/build.gradle.kts",
"okhttp-hpacktests/build.gradle.kts",
"okhttp-idna-mapping-table/build.gradle.kts",
"okhttp-java-net-cookiejar/build.gradle.kts",
"okhttp-logging-interceptor/build.gradle.kts",
"okhttp-osgi-tests/build.gradle.kts",
"okhttp-sse/build.gradle.kts",
"okhttp-testing-support/build.gradle.kts",
"okhttp-tls/build.gradle.kts",
"okhttp-urlconnection/build.gradle.kts",
"okhttp-zstd/build.gradle.kts",
"okhttp/build.gradle.kts",
"regression-test/build.gradle.kts",
"samples/compare/build.gradle.kts",
"samples/crawler/build.gradle.kts",
"samples/guide/build.gradle.kts",
"samples/simple-client/build.gradle.kts",
"samples/slack/build.gradle.kts",
"samples/static-server/build.gradle.kts",
"samples/tlssurvey/build.gradle.kts",
"samples/unixdomainsockets/build.gradle.kts"
],
"largest_source_bytes": 152954,
"source_files_sampled": 624,
"oversized_source_files": 9,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"dependencies": {
"manifests": [
"android-test-app/build.gradle.kts",
"android-test/build.gradle.kts",
"build-logic/build.gradle.kts",
"build.gradle.kts",
"container-tests/build.gradle.kts",
"maven-tests/pom.xml",
"mockwebserver-deprecated/build.gradle.kts",
"mockwebserver-junit4/build.gradle.kts",
"mockwebserver-junit5/build.gradle.kts",
"mockwebserver/build.gradle.kts",
"module-tests/build.gradle.kts",
"native-image-tests/build.gradle.kts",
"okcurl/build.gradle.kts",
"okhttp-bom/build.gradle.kts",
"okhttp-brotli/build.gradle.kts",
"okhttp-coroutines/build.gradle.kts",
"okhttp-dnsoverhttps/build.gradle.kts",
"okhttp-hpacktests/build.gradle.kts",
"okhttp-idna-mapping-table/build.gradle.kts",
"okhttp-java-net-cookiejar/build.gradle.kts",
"okhttp-logging-interceptor/build.gradle.kts",
"okhttp-osgi-tests/build.gradle.kts",
"okhttp-sse/build.gradle.kts",
"okhttp-testing-support/build.gradle.kts",
"okhttp-tls/build.gradle.kts",
"okhttp-urlconnection/build.gradle.kts",
"okhttp-zstd/build.gradle.kts",
"okhttp/build.gradle.kts",
"regression-test/build.gradle.kts"
],
"advisories": {
"error": null,
"scope": "repository_graph",
"source": "osv",
"findings": [
{
"name": "flatted",
"direct": false,
"version": "3.2.7",
"severity": "critical",
"ecosystem": "npm",
"cvss_score": 9.8,
"advisory_ids": [
"GHSA-25h7-pfq9-p65f",
"GHSA-rf6f-7fwh-wjgh"
],
"fixed_version": "3.4.2",
"advisory_count": 2,
"oldest_advisory_days": 136
},
{
"name": "body-parser",
"direct": false,
"version": "1.20.0",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-qwcr-r2fm-qrc7",
"GHSA-v422-hmwv-36x6"
],
"fixed_version": "2.3.0",
"advisory_count": 2,
"oldest_advisory_days": 685
},
{
"name": "brace-expansion",
"direct": false,
"version": "1.1.11",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-3jxr-9vmj-r5cp",
"GHSA-f886-m6hf-6m8v",
"GHSA-mh99-v99m-4gvg",
"GHSA-v6h2-p8h4-qcjw"
],
"fixed_version": "5.0.8",
"advisory_count": 4,
"oldest_advisory_days": 413
},
{
"name": "brace-expansion",
"direct": false,
"version": "2.0.1",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-3jxr-9vmj-r5cp",
"GHSA-f886-m6hf-6m8v",
"GHSA-mh99-v99m-4gvg",
"GHSA-v6h2-p8h4-qcjw"
],
"fixed_version": "5.0.8",
"advisory_count": 4,
"oldest_advisory_days": 413
},
{
"name": "braces",
"direct": false,
"version": "3.0.2",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-grv7-fg5c-xmjg"
],
"fixed_version": "3.0.3",
"advisory_count": 1,
"oldest_advisory_days": 804
},
{
"name": "cross-spawn",
"direct": false,
"version": "7.0.3",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-3xgq-45jj-v275"
],
"fixed_version": "7.0.5",
"advisory_count": 1,
"oldest_advisory_days": 627
},
{
"name": "engine.io",
"direct": false,
"version": "6.2.1",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-q9mw-68c2-j6m5",
"GHSA-r635-g3xr-vw7x"
],
"fixed_version": "6.6.7",
"advisory_count": 2,
"oldest_advisory_days": 1181
},
{
"name": "js-yaml",
"direct": false,
"version": "4.1.0",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-52cp-r559-cp3m",
"GHSA-h67p-54hq-rp68",
"GHSA-mh29-5h37-fv8m"
],
"fixed_version": "4.3.0",
"advisory_count": 3,
"oldest_advisory_days": 255
},
{
"name": "lodash",
"direct": false,
"version": "4.17.21",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 8.1,
"advisory_ids": [
"GHSA-f23m-r3pf-42rh",
"GHSA-r5fr-rjxr-66jc",
"GHSA-xxjr-mmjv-4gpg"
],
"fixed_version": "4.18.0",
"advisory_count": 3,
"oldest_advisory_days": 187
},
{
"name": "minimatch",
"direct": false,
"version": "3.1.2",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-23c5-xmqv-rm74",
"GHSA-3ppc-4f35-3m26",
"GHSA-7r86-cg39-jmmj"
],
"fixed_version": "10.2.3",
"advisory_count": 3,
"oldest_advisory_days": 159
},
{
"name": "minimatch",
"direct": false,
"version": "5.0.1",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-23c5-xmqv-rm74",
"GHSA-3ppc-4f35-3m26",
"GHSA-7r86-cg39-jmmj"
],
"fixed_version": "10.2.3",
"advisory_count": 3,
"oldest_advisory_days": 159
},
{
"name": "picomatch",
"direct": false,
"version": "2.3.1",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-3v7f-55p6-f55p",
"GHSA-c2c7-rcm5-vvqj"
],
"fixed_version": "4.0.4",
"advisory_count": 2,
"oldest_advisory_days": 124
},
{
"name": "serialize-javascript",
"direct": false,
"version": "6.0.0",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 8.1,
"advisory_ids": [
"GHSA-5c6j-r48x-rmvq",
"GHSA-76p7-773f-r4q5",
"GHSA-qj8w-gfj5-8c6v"
],
"fixed_version": "7.0.5",
"advisory_count": 3,
"oldest_advisory_days": 532
},
{
"name": "serialize-javascript",
"direct": false,
"version": "6.0.1",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 8.1,
"advisory_ids": [
"GHSA-5c6j-r48x-rmvq",
"GHSA-76p7-773f-r4q5",
"GHSA-qj8w-gfj5-8c6v"
],
"fixed_version": "7.0.5",
"advisory_count": 3,
"oldest_advisory_days": 532
},
{
"name": "socket.io",
"direct": false,
"version": "4.5.4",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.3,
"advisory_ids": [
"GHSA-25hc-qcg6-38wj"
],
"fixed_version": "4.6.2",
"advisory_count": 1,
"oldest_advisory_days": 768
},
{
"name": "socket.io-parser",
"direct": false,
"version": "4.2.1",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-677m-j7p3-52f9",
"GHSA-cqmj-92xf-r6r9"
],
"fixed_version": "4.2.6",
"advisory_count": 2,
"oldest_advisory_days": 1161
},
{
"name": "tmp",
"direct": false,
"version": "0.2.1",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-52f5-9888-hmc6",
"GHSA-ph9p-34f9-6g65"
],
"fixed_version": "0.2.6",
"advisory_count": 2,
"oldest_advisory_days": 355
},
{
"name": "ua-parser-js",
"direct": false,
"version": "0.7.32",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-fhg7-m89q-25r3"
],
"fixed_version": "1.0.33",
"advisory_count": 1,
"oldest_advisory_days": 1280
},
{
"name": "webpack",
"direct": false,
"version": "5.82.0",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.6,
"advisory_ids": [
"GHSA-38r7-794h-5758",
"GHSA-4vvj-4cpr-p986",
"GHSA-8fgc-7cc6-rx7x"
],
"fixed_version": "5.104.1",
"advisory_count": 3,
"oldest_advisory_days": 699
},
{
"name": "ws",
"direct": false,
"version": "8.2.3",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-3h5v-q93c-6h6q",
"GHSA-58qx-3vcg-4xpx",
"GHSA-96hv-2xvq-fx4p"
],
"fixed_version": "8.21.0",
"advisory_count": 3,
"oldest_advisory_days": 770
},
{
"name": "ajv",
"direct": false,
"version": "6.12.6",
"severity": "moderate",
"ecosystem": "npm",
"cvss_score": 5.3,
"advisory_ids": [
"GHSA-2g4f-4pwh-qvx6"
],
"fixed_version": "8.18.0",
"advisory_count": 1,
"oldest_advisory_days": 166
},
{
"name": "diff",
"direct": false,
"version": "5.0.0",
"severity": "moderate",
"ecosystem": "npm",
"cvss_score": 5.3,
"advisory_ids": [
"GHSA-73rr-hh4g-fpgx"
],
"fixed_version": "8.0.3",
"advisory_count": 1,
"oldest_advisory_days": 194
},
{
"name": "follow-redirects",
"direct": false,
"version": "1.15.1",
"severity": "moderate",
"ecosystem": "npm",
"cvss_score": 6.5,
"advisory_ids": [
"GHSA-cxjh-pqwp-8mfp",
"GHSA-jchw-25xp-jwwc",
"GHSA-r4q5-vmmm-2653"
],
"fixed_version": "1.16.0",
"advisory_count": 3,
"oldest_advisory_days": 938
},
{
"name": "nanoid",
"direct": false,
"version": "3.3.3",
"severity": "moderate",
"ecosystem": "npm",
"cvss_score": 4.3,
"advisory_ids": [
"GHSA-mwcw-c2x4-8c55"
],
"fixed_version": "5.0.9",
"advisory_count": 1,
"oldest_advisory_days": 596
},
{
"name": "qs",
"direct": false,
"version": "6.10.3",
"severity": "moderate",
"ecosystem": "npm",
"cvss_score": 5.3,
"advisory_ids": [
"GHSA-6rw7-vpxm-498p",
"GHSA-w7fw-mjwx-w883"
],
"fixed_version": "6.14.2",
"advisory_count": 2,
"oldest_advisory_days": 209
},
{
"name": "cookie",
"direct": false,
"version": "0.4.2",
"severity": "low",
"ecosystem": "npm",
"cvss_score": null,
"advisory_ids": [
"GHSA-pxg6-pf52-xh8x"
],
"fixed_version": "0.7.0",
"advisory_count": 1,
"oldest_advisory_days": 661
}
],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {
"low": 1,
"high": 19,
"critical": 1,
"moderate": 5
},
"advisory_count": 57,
"affected_count": 26,
"assessed_count": 289,
"malicious_count": 0,
"assessed_package": null,
"unassessed_count": 4,
"direct_affected_count": 0
},
"ecosystems": [
"maven"
],
"dependencies": [
{
"name": "com.squareup.okhttp3:okhttp-bom",
"manifest": "maven-tests/pom.xml",
"ecosystem": "maven",
"version_constraint": "[5.2.0-SNAPSHOT,6.0.0-SNAPSHOT)"
},
{
"name": "com.squareup.okhttp3:okhttp-jvm",
"manifest": "maven-tests/pom.xml",
"ecosystem": "maven",
"version_constraint": null
},
{
"name": "com.squareup.okhttp3:mockwebserver3",
"manifest": "maven-tests/pom.xml",
"ecosystem": "maven",
"version_constraint": null
},
{
"name": "com.squareup.okhttp3:logging-interceptor",
"manifest": "maven-tests/pom.xml",
"ecosystem": "maven",
"version_constraint": null
}
],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "com.squareup.okhttp3:logging-interceptor",
"direct": true,
"version": null,
"ecosystem": "maven"
},
{
"name": "com.squareup.okhttp3:mockwebserver3",
"direct": true,
"version": null,
"ecosystem": "maven"
},
{
"name": "com.squareup.okhttp3:okhttp-bom",
"direct": true,
"version": null,
"ecosystem": "maven"
},
{
"name": "com.squareup.okhttp3:okhttp-jvm",
"direct": true,
"version": null,
"ecosystem": "maven"
},
{
"name": "junit:junit",
"direct": false,
"version": "4.13.2",
"ecosystem": "maven"
},
{
"name": "@colors/colors",
"direct": false,
"version": "1.5.0",
"ecosystem": "npm"
},
{
"name": "@discoveryjs/json-ext",
"direct": false,
"version": "0.5.7",
"ecosystem": "npm"
},
{
"name": "@jridgewell/gen-mapping",
"direct": false,
"version": "0.3.1",
"ecosystem": "npm"
},
{
"name": "@jridgewell/resolve-uri",
"direct": false,
"version": "3.0.7",
"ecosystem": "npm"
},
{
"name": "@jridgewell/resolve-uri",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "@jridgewell/set-array",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "@jridgewell/source-map",
"direct": false,
"version": "0.3.5",
"ecosystem": "npm"
},
{
"name": "@jridgewell/sourcemap-codec",
"direct": false,
"version": "1.4.13",
"ecosystem": "npm"
},
{
"name": "@jridgewell/sourcemap-codec",
"direct": false,
"version": "1.4.14",
"ecosystem": "npm"
},
{
"name": "@jridgewell/trace-mapping",
"direct": false,
"version": "0.3.13",
"ecosystem": "npm"
},
{
"name": "@jridgewell/trace-mapping",
"direct": false,
"version": "0.3.18",
"ecosystem": "npm"
},
{
"name": "@socket.io/component-emitter",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "@types/cookie",
"direct": false,
"version": "0.4.1",
"ecosystem": "npm"
},
{
"name": "@types/cors",
"direct": false,
"version": "2.8.13",
"ecosystem": "npm"
},
{
"name": "@types/eslint",
"direct": false,
"version": "8.4.3",
"ecosystem": "npm"
},
{
"name": "@types/eslint-scope",
"direct": false,
"version": "3.7.4",
"ecosystem": "npm"
},
{
"name": "@types/estree",
"direct": false,
"version": "0.0.51",
"ecosystem": "npm"
},
{
"name": "@types/estree",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@types/json-schema",
"direct": false,
"version": "7.0.11",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "17.0.41",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/ast",
"direct": false,
"version": "1.11.6",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/floating-point-hex-parser",
"direct": false,
"version": "1.11.6",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/helper-api-error",
"direct": false,
"version": "1.11.6",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/helper-buffer",
"direct": false,
"version": "1.11.6",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/helper-numbers",
"direct": false,
"version": "1.11.6",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/helper-wasm-bytecode",
"direct": false,
"version": "1.11.6",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/helper-wasm-section",
"direct": false,
"version": "1.11.6",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/ieee754",
"direct": false,
"version": "1.11.6",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/leb128",
"direct": false,
"version": "1.11.6",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/utf8",
"direct": false,
"version": "1.11.6",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/wasm-edit",
"direct": false,
"version": "1.11.6",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/wasm-gen",
"direct": false,
"version": "1.11.6",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/wasm-opt",
"direct": false,
"version": "1.11.6",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/wasm-parser",
"direct": false,
"version": "1.11.6",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/wast-printer",
"direct": false,
"version": "1.11.6",
"ecosystem": "npm"
},
{
"name": "@webpack-cli/configtest",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "@webpack-cli/info",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "@webpack-cli/serve",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "@xtuc/ieee754",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@xtuc/long",
"direct": false,
"version": "4.2.2",
"ecosystem": "npm"
},
{
"name": "abab",
"direct": false,
"version": "2.0.6",
"ecosystem": "npm"
},
{
"name": "accepts",
"direct": false,
"version": "1.3.8",
"ecosystem": "npm"
},
{
"name": "acorn",
"direct": false,
"version": "8.10.0",
"ecosystem": "npm"
},
{
"name": "acorn",
"direct": false,
"version": "8.8.1",
"ecosystem": "npm"
},
{
"name": "acorn-import-assertions",
"direct": false,
"version": "1.8.0",
"ecosystem": "npm"
},
{
"name": "ajv",
"direct": false,
"version": "6.12.6",
"ecosystem": "npm"
},
{
"name": "ajv-keywords",
"direct": false,
"version": "3.5.2",
"ecosystem": "npm"
},
{
"name": "ansi-colors",
"direct": false,
"version": "4.1.1",
"ecosystem": "npm"
},
{
"name": "ansi-regex",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "ansi-styles",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "anymatch",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "argparse",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "balanced-match",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "base64id",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "binary-extensions",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "body-parser",
"direct": false,
"version": "1.20.0",
"ecosystem": "npm"
},
{
"name": "brace-expansion",
"direct": false,
"version": "1.1.11",
"ecosystem": "npm"
},
{
"name": "brace-expansion",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "braces",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "browser-stdout",
"direct": false,
"version": "1.3.1",
"ecosystem": "npm"
},
{
"name": "browserslist",
"direct": false,
"version": "4.20.4",
"ecosystem": "npm"
},
{
"name": "buffer-from",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "bytes",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "call-bind",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "camelcase",
"direct": false,
"version": "6.3.0",
"ecosystem": "npm"
},
{
"name": "caniuse-lite",
"direct": false,
"version": "1.0.30001350",
"ecosystem": "npm"
},
{
"name": "chalk",
"direct": false,
"version": "4.1.2",
"ecosystem": "npm"
},
{
"name": "chokidar",
"direct": false,
"version": "3.5.3",
"ecosystem": "npm"
},
{
"name": "chrome-trace-event",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "cliui",
"direct": false,
"version": "7.0.4",
"ecosystem": "npm"
},
{
"name": "clone-deep",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "color-convert",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "color-name",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "colorette",
"direct": false,
"version": "2.0.17",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": false,
"version": "10.0.1",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": false,
"version": "2.20.3",
"ecosystem": "npm"
},
{
"name": "concat-map",
"direct": false,
"version": "0.0.1",
"ecosystem": "npm"
},
{
"name": "connect",
"direct": false,
"version": "3.7.0",
"ecosystem": "npm"
},
{
"name": "content-type",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "cookie",
"direct": false,
"version": "0.4.2",
"ecosystem": "npm"
},
{
"name": "cors",
"direct": false,
"version": "2.8.5",
"ecosystem": "npm"
},
{
"name": "cross-spawn",
"direct": false,
"version": "7.0.3",
"ecosystem": "npm"
},
{
"name": "custom-event",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "date-format",
"direct": false,
"version": "4.0.14",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": false,
"version": "2.6.9",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": false,
"version": "4.3.4",
"ecosystem": "npm"
},
{
"name": "decamelize",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "depd",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "destroy",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "di",
"direct": false,
"version": "0.0.1",
"ecosystem": "npm"
},
{
"name": "diff",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "dom-serialize",
"direct": false,
"version": "2.2.1",
"ecosystem": "npm"
},
{
"name": "ee-first",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "electron-to-chromium",
"direct": false,
"version": "1.4.148",
"ecosystem": "npm"
},
{
"name": "emoji-regex",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "encodeurl",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "engine.io",
"direct": false,
"version": "6.2.1",
"ecosystem": "npm"
},
{
"name": "engine.io-parser",
"direct": false,
"version": "5.0.4",
"ecosystem": "npm"
},
{
"name": "enhanced-resolve",
"direct": false,
"version": "5.15.0",
"ecosystem": "npm"
},
{
"name": "ent",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "envinfo",
"direct": false,
"version": "7.8.1",
"ecosystem": "npm"
},
{
"name": "es-module-lexer",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "escalade",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "escape-html",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "escape-string-regexp",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "eslint-scope",
"direct": false,
"version": "5.1.1",
"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": "eventemitter3",
"direct": false,
"version": "4.0.7",
"ecosystem": "npm"
},
{
"name": "events",
"direct": false,
"version": "3.3.0",
"ecosystem": "npm"
},
{
"name": "extend",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "fast-deep-equal",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "fast-json-stable-stringify",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "fastest-levenshtein",
"direct": false,
"version": "1.0.12",
"ecosystem": "npm"
},
{
"name": "fill-range",
"direct": false,
"version": "7.0.1",
"ecosystem": "npm"
},
{
"name": "finalhandler",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "find-up",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "find-up",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "flat",
"direct": false,
"version": "5.0.2",
"ecosystem": "npm"
},
{
"name": "flatted",
"direct": false,
"version": "3.2.7",
"ecosystem": "npm"
},
{
"name": "follow-redirects",
"direct": false,
"version": "1.15.1",
"ecosystem": "npm"
},
{
"name": "format-util",
"direct": false,
"version": "1.0.5",
"ecosystem": "npm"
},
{
"name": "fs-extra",
"direct": false,
"version": "8.1.0",
"ecosystem": "npm"
},
{
"name": "fs.realpath",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "fsevents",
"direct": false,
"version": "2.3.2",
"ecosystem": "npm"
},
{
"name": "function-bind",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "get-caller-file",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "get-intrinsic",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "glob",
"direct": false,
"version": "7.2.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-to-regexp",
"direct": false,
"version": "0.4.1",
"ecosystem": "npm"
},
{
"name": "graceful-fs",
"direct": false,
"version": "4.2.10",
"ecosystem": "npm"
},
{
"name": "graceful-fs",
"direct": false,
"version": "4.2.11",
"ecosystem": "npm"
},
{
"name": "has",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "has-flag",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "has-symbols",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "he",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "http-errors",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "http-proxy",
"direct": false,
"version": "1.18.1",
"ecosystem": "npm"
},
{
"name": "iconv-lite",
"direct": false,
"version": "0.4.24",
"ecosystem": "npm"
},
{
"name": "iconv-lite",
"direct": false,
"version": "0.6.3",
"ecosystem": "npm"
},
{
"name": "import-local",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "inflight",
"direct": false,
"version": "1.0.6",
"ecosystem": "npm"
},
{
"name": "inherits",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "interpret",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "is-binary-path",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "is-core-module",
"direct": false,
"version": "2.12.1",
"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-plain-obj",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "is-plain-object",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "is-unicode-supported",
"direct": false,
"version": "0.1.0",
"ecosystem": "npm"
},
{
"name": "isbinaryfile",
"direct": false,
"version": "4.0.10",
"ecosystem": "npm"
},
{
"name": "isexe",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "isobject",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "jest-worker",
"direct": false,
"version": "27.5.1",
"ecosystem": "npm"
},
{
"name": "js-yaml",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "json-parse-even-better-errors",
"direct": false,
"version": "2.3.1",
"ecosystem": "npm"
},
{
"name": "json-schema-traverse",
"direct": false,
"version": "0.4.1",
"ecosystem": "npm"
},
{
"name": "jsonfile",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "karma",
"direct": false,
"version": "6.4.2",
"ecosystem": "npm"
},
{
"name": "karma-chrome-launcher",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "karma-mocha",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "karma-sourcemap-loader",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "karma-webpack",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "kind-of",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "loader-runner",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "locate-path",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "locate-path",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "lodash",
"direct": false,
"version": "4.17.21",
"ecosystem": "npm"
},
{
"name": "log-symbols",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "log4js",
"direct": false,
"version": "6.7.1",
"ecosystem": "npm"
},
{
"name": "media-typer",
"direct": false,
"version": "0.3.0",
"ecosystem": "npm"
},
{
"name": "merge-stream",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "mime",
"direct": false,
"version": "2.6.0",
"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": "minimatch",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "minimatch",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "minimist",
"direct": false,
"version": "1.2.6",
"ecosystem": "npm"
},
{
"name": "mkdirp",
"direct": false,
"version": "0.5.6",
"ecosystem": "npm"
},
{
"name": "mocha",
"direct": false,
"version": "10.2.0",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.1.3",
"ecosystem": "npm"
},
{
"name": "nanoid",
"direct": false,
"version": "3.3.3",
"ecosystem": "npm"
},
{
"name": "negotiator",
"direct": false,
"version": "0.6.3",
"ecosystem": "npm"
},
{
"name": "neo-async",
"direct": false,
"version": "2.6.2",
"ecosystem": "npm"
},
{
"name": "node-releases",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "normalize-path",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "object-assign",
"direct": false,
"version": "4.1.1",
"ecosystem": "npm"
},
{
"name": "object-inspect",
"direct": false,
"version": "1.12.2",
"ecosystem": "npm"
},
{
"name": "on-finished",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "on-finished",
"direct": false,
"version": "2.4.1",
"ecosystem": "npm"
},
{
"name": "once",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "p-limit",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "p-limit",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "p-locate",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "p-locate",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "p-try",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "parseurl",
"direct": false,
"version": "1.3.3",
"ecosystem": "npm"
},
{
"name": "path-exists",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "path-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": "picocolors",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "picomatch",
"direct": false,
"version": "2.3.1",
"ecosystem": "npm"
},
{
"name": "pkg-dir",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "punycode",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "qjobs",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "qs",
"direct": false,
"version": "6.10.3",
"ecosystem": "npm"
},
{
"name": "randombytes",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "range-parser",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "raw-body",
"direct": false,
"version": "2.5.1",
"ecosystem": "npm"
},
{
"name": "readdirp",
"direct": false,
"version": "3.6.0",
"ecosystem": "npm"
},
{
"name": "rechoir",
"direct": false,
"version": "0.8.0",
"ecosystem": "npm"
},
{
"name": "require-directory",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "requires-port",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "resolve",
"direct": false,
"version": "1.22.2",
"ecosystem": "npm"
},
{
"name": "resolve-cwd",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "resolve-from",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "rfdc",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "rimraf",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "safe-buffer",
"direct": false,
"version": "5.2.1",
"ecosystem": "npm"
},
{
"name": "safer-buffer",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "schema-utils",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "schema-utils",
"direct": false,
"version": "3.3.0",
"ecosystem": "npm"
},
{
"name": "serialize-javascript",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "serialize-javascript",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "setprototypeof",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "shallow-clone",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "shebang-command",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "shebang-regex",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "side-channel",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "socket.io",
"direct": false,
"version": "4.5.4",
"ecosystem": "npm"
},
{
"name": "socket.io-adapter",
"direct": false,
"version": "2.4.0",
"ecosystem": "npm"
},
{
"name": "socket.io-parser",
"direct": false,
"version": "4.2.1",
"ecosystem": "npm"
},
{
"name": "source-map",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "source-map-js",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "source-map-loader",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "source-map-support",
"direct": false,
"version": "0.5.21",
"ecosystem": "npm"
},
{
"name": "statuses",
"direct": false,
"version": "1.5.0",
"ecosystem": "npm"
},
{
"name": "statuses",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "streamroller",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "string-width",
"direct": false,
"version": "4.2.3",
"ecosystem": "npm"
},
{
"name": "strip-ansi",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "strip-json-comments",
"direct": false,
"version": "3.1.1",
"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": "tapable",
"direct": false,
"version": "2.2.1",
"ecosystem": "npm"
},
{
"name": "terser",
"direct": false,
"version": "5.19.2",
"ecosystem": "npm"
},
{
"name": "terser-webpack-plugin",
"direct": false,
"version": "5.3.9",
"ecosystem": "npm"
},
{
"name": "tmp",
"direct": false,
"version": "0.2.1",
"ecosystem": "npm"
},
{
"name": "to-regex-range",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "toidentifier",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "type-is",
"direct": false,
"version": "1.6.18",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "5.0.4",
"ecosystem": "npm"
},
{
"name": "ua-parser-js",
"direct": false,
"version": "0.7.32",
"ecosystem": "npm"
},
{
"name": "universalify",
"direct": false,
"version": "0.1.2",
"ecosystem": "npm"
},
{
"name": "unpipe",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "uri-js",
"direct": false,
"version": "4.4.1",
"ecosystem": "npm"
},
{
"name": "utils-merge",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "vary",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "void-elements",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "watchpack",
"direct": false,
"version": "2.4.0",
"ecosystem": "npm"
},
{
"name": "webpack",
"direct": false,
"version": "5.82.0",
"ecosystem": "npm"
},
{
"name": "webpack-cli",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "webpack-merge",
"direct": false,
"version": "4.2.2",
"ecosystem": "npm"
},
{
"name": "webpack-merge",
"direct": false,
"version": "5.8.0",
"ecosystem": "npm"
},
{
"name": "webpack-sources",
"direct": false,
"version": "3.2.3",
"ecosystem": "npm"
},
{
"name": "which",
"direct": false,
"version": "1.3.1",
"ecosystem": "npm"
},
{
"name": "which",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "wildcard",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "workerpool",
"direct": false,
"version": "6.2.1",
"ecosystem": "npm"
},
{
"name": "wrap-ansi",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "wrappy",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "ws",
"direct": false,
"version": "8.2.3",
"ecosystem": "npm"
},
{
"name": "y18n",
"direct": false,
"version": "5.0.8",
"ecosystem": "npm"
},
{
"name": "yargs",
"direct": false,
"version": "16.2.0",
"ecosystem": "npm"
},
{
"name": "yargs-parser",
"direct": false,
"version": "20.2.4",
"ecosystem": "npm"
},
{
"name": "yargs-parser",
"direct": false,
"version": "20.2.9",
"ecosystem": "npm"
},
{
"name": "yargs-unparser",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "yocto-queue",
"direct": false,
"version": "0.1.0",
"ecosystem": "npm"
}
],
"collected": true,
"truncated": false,
"total_count": 293,
"direct_count": 4,
"indirect_count": 289
}
},
"maintainership": {
"issues": {
"open_prs": 44,
"merged_prs": 4109,
"open_issues": 85,
"closed_ratio": 0.98,
"closed_issues": 4203,
"closed_unmerged_prs": 977
},
"bus_factor": 1,
"bot_contributors": 1,
"top_contributors": [
{
"type": "User",
"login": "swankjesse",
"commits": 2926,
"avatar_url": "https://avatars.githubusercontent.com/u/133019?v=4"
},
{
"type": "User",
"login": "yschimke",
"commits": 820,
"avatar_url": "https://avatars.githubusercontent.com/u/231923?v=4"
},
{
"type": "User",
"login": "JakeWharton",
"commits": 784,
"avatar_url": "https://avatars.githubusercontent.com/u/66577?v=4"
},
{
"type": "User",
"login": "amirlivneh",
"commits": 73,
"avatar_url": "https://avatars.githubusercontent.com/u/724254?v=4"
},
{
"type": "User",
"login": "nfuller",
"commits": 56,
"avatar_url": "https://avatars.githubusercontent.com/u/6388721?v=4"
},
{
"type": "User",
"login": "dave-r12",
"commits": 55,
"avatar_url": "https://avatars.githubusercontent.com/u/1520761?v=4"
},
{
"type": "User",
"login": "Goooler",
"commits": 54,
"avatar_url": "https://avatars.githubusercontent.com/u/10363352?v=4"
},
{
"type": "User",
"login": "oldergod",
"commits": 35,
"avatar_url": "https://avatars.githubusercontent.com/u/1767669?v=4"
},
{
"type": "User",
"login": "monkey-mas",
"commits": 24,
"avatar_url": "https://avatars.githubusercontent.com/u/5261677?v=4"
},
{
"type": "User",
"login": "mescortes",
"commits": 21,
"avatar_url": "https://avatars.githubusercontent.com/u/1553664?v=4"
}
],
"contributors_sampled": 99,
"top_contributor_share": 0.568
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"build.yml",
"containers.yml",
"docs.yml",
"publish.yml"
],
"has_docs_dir": true,
"linter_configs": [],
"has_editorconfig": true,
"has_linter_config": false,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [
"yarn.lock"
],
"scorecard": {
"checks": [
{
"name": "Binary-Artifacts",
"score": 9,
"reason": "binaries present in source code",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
},
{
"name": "Branch-Protection",
"score": null,
"reason": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
},
{
"name": "CI-Tests",
"score": 8,
"reason": "25 out of 30 merged PRs checked by a CI test -- score normalized to 8",
"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": 8,
"reason": "Found 17/20 approved changesets -- score normalized to 8",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
},
{
"name": "Contributors",
"score": 10,
"reason": "project has 25 contributing companies or organizations",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
},
{
"name": "Dangerous-Workflow",
"score": 10,
"reason": "no dangerous workflow patterns detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
},
{
"name": "Dependency-Update-Tool",
"score": 10,
"reason": "update tool detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
},
{
"name": "Fuzzing",
"score": 0,
"reason": "project is not fuzzed",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
},
{
"name": "License",
"score": 10,
"reason": "license file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
},
{
"name": "Maintained",
"score": 10,
"reason": "30 commit(s) and 11 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": 6,
"reason": "SAST tool is not run on all commits -- score normalized to 6",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
},
{
"name": "Security-Policy",
"score": 0,
"reason": "security policy file not detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
},
{
"name": "Signed-Releases",
"score": null,
"reason": "no releases found",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
},
{
"name": "Token-Permissions",
"score": 10,
"reason": "GitHub workflow tokens follow principle of least privilege",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
},
{
"name": "Vulnerabilities",
"score": 0,
"reason": "46 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "f9263c3615907711077b732e5b29e340ac8f4d09",
"ran_at": "2026-07-28T14:21:23Z",
"aggregate_score": 6.7,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": false,
"has_security_policy": false,
"has_dependabot_config": false
},
"contribution_flow": {
"collected": true,
"ci_last_run_at": "2026-07-28T08:52:42Z",
"oldest_open_prs": [
{
"number": 7845,
"created_at": "2023-05-21T10:50:09Z",
"last_comment_at": "2026-04-05T14:52:44Z",
"last_comment_author": "yschimke"
},
{
"number": 8376,
"created_at": "2024-04-20T11:46:19Z",
"last_comment_at": "2026-04-05T14:31:57Z",
"last_comment_author": "yschimke"
},
{
"number": 8386,
"created_at": "2024-04-24T17:15:17Z",
"last_comment_at": "2025-08-04T07:33:05Z",
"last_comment_author": "yschimke"
},
{
"number": 8565,
"created_at": "2024-10-31T14:46:52Z",
"last_comment_at": "2025-09-29T08:36:42Z",
"last_comment_author": "p1gp1g"
},
{
"number": 8944,
"created_at": "2025-07-16T15:37:37Z",
"last_comment_at": "2025-07-27T15:17:53Z",
"last_comment_author": "swankjesse"
},
{
"number": 8996,
"created_at": "2025-08-04T07:54:09Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 9088,
"created_at": "2025-09-27T10:21:18Z",
"last_comment_at": "2025-10-03T18:06:23Z",
"last_comment_author": "JakeWharton"
},
{
"number": 9100,
"created_at": "2025-10-03T01:43:56Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 9193,
"created_at": "2025-11-14T09:03:06Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 9214,
"created_at": "2025-11-29T06:45:54Z",
"last_comment_at": "2026-01-02T14:53:16Z",
"last_comment_author": "MukjepScarlet"
},
{
"number": 9241,
"created_at": "2026-01-04T12:57:26Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 9246,
"created_at": "2026-01-10T13:22:46Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 9315,
"created_at": "2026-02-05T22:53:13Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 9321,
"created_at": "2026-02-07T21:18:25Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 9339,
"created_at": "2026-02-22T12:31:06Z",
"last_comment_at": "2026-02-23T20:40:54Z",
"last_comment_author": "yschimke"
},
{
"number": 9395,
"created_at": "2026-03-30T02:25:59Z",
"last_comment_at": "2026-06-23T04:12:45Z",
"last_comment_author": "iVamsi"
},
{
"number": 9396,
"created_at": "2026-03-30T12:54:43Z",
"last_comment_at": "2026-04-05T09:45:34Z",
"last_comment_author": "yschimke"
},
{
"number": 9407,
"created_at": "2026-04-06T14:45:26Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 9410,
"created_at": "2026-04-07T19:42:39Z",
"last_comment_at": "2026-06-09T13:36:23Z",
"last_comment_author": "eyupcanakman"
},
{
"number": 9417,
"created_at": "2026-04-12T13:19:46Z",
"last_comment_at": null,
"last_comment_author": null
}
],
"last_merged_pr_at": "2026-07-28T08:36:34Z",
"ci_last_conclusion": "FAILURE",
"oldest_open_issues": [
{
"number": 3918,
"created_at": "2018-03-09T16:50:34Z",
"last_comment_at": "2024-12-09T21:53:42Z",
"last_comment_author": "bt90"
},
{
"number": 4655,
"created_at": "2019-02-24T16:10:30Z",
"last_comment_at": "2025-08-03T21:00:17Z",
"last_comment_author": "yschimke"
},
{
"number": 5500,
"created_at": "2019-09-26T13:51:23Z",
"last_comment_at": "2025-08-03T21:14:18Z",
"last_comment_author": "yschimke"
},
{
"number": 5627,
"created_at": "2019-12-02T09:48:25Z",
"last_comment_at": "2025-02-25T15:49:32Z",
"last_comment_author": "ntrp"
},
{
"number": 6171,
"created_at": "2020-07-06T02:35:26Z",
"last_comment_at": "2020-07-06T03:00:36Z",
"last_comment_author": "swankjesse"
},
{
"number": 6357,
"created_at": "2020-10-31T11:49:45Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 6363,
"created_at": "2020-10-31T13:43:37Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 6700,
"created_at": "2021-06-08T11:32:19Z",
"last_comment_at": "2025-06-24T03:10:27Z",
"last_comment_author": "freeleeq"
},
{
"number": 6702,
"created_at": "2021-06-11T15:06:19Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 6790,
"created_at": "2021-07-29T14:32:00Z",
"last_comment_at": "2023-12-09T14:59:26Z",
"last_comment_author": "swankjesse"
},
{
"number": 7122,
"created_at": "2022-02-27T15:19:26Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 7362,
"created_at": "2022-06-30T19:43:27Z",
"last_comment_at": "2024-11-17T18:19:09Z",
"last_comment_author": "swankjesse"
},
{
"number": 7470,
"created_at": "2022-10-03T14:49:22Z",
"last_comment_at": "2025-07-26T13:36:02Z",
"last_comment_author": "yschimke"
},
{
"number": 7692,
"created_at": "2023-02-13T10:55:10Z",
"last_comment_at": "2023-02-13T11:32:20Z",
"last_comment_author": "yschimke"
},
{
"number": 7904,
"created_at": "2023-06-20T13:41:33Z",
"last_comment_at": "2023-06-24T16:36:06Z",
"last_comment_author": "yschimke"
},
{
"number": 7963,
"created_at": "2023-07-27T19:22:02Z",
"last_comment_at": "2024-08-05T00:26:05Z",
"last_comment_author": "Viacheslav-Romanov"
},
{
"number": 7989,
"created_at": "2023-08-21T06:57:57Z",
"last_comment_at": "2026-01-16T09:42:25Z",
"last_comment_author": "fbricon"
},
{
"number": 8014,
"created_at": "2023-09-07T09:01:34Z",
"last_comment_at": "2025-12-18T08:28:58Z",
"last_comment_author": "alex859"
},
{
"number": 8032,
"created_at": "2023-09-21T10:15:57Z",
"last_comment_at": "2023-10-22T15:36:10Z",
"last_comment_author": "MagicWang0907"
},
{
"number": 8037,
"created_at": "2023-09-26T13:16:26Z",
"last_comment_at": "2025-08-12T09:14:15Z",
"last_comment_author": "yschimke"
}
]
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/lysine-dev/okhttp",
"host": "github.com",
"name": "okhttp",
"owner": "lysine-dev"
},
"metrics": {
"overall": {
"key": "overall",
"band": "good",
"name": "Overall health",
"note": null,
"notes": [],
"value": 70,
"inputs": {
"security": 74,
"vitality": 58,
"community": 86,
"governance": 59,
"engineering": 78
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "moderate",
"name": "Vitality",
"value": 58,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "excellent",
"name": "Development activity",
"note": null,
"notes": [],
"value": 96,
"inputs": {
"commits_last_year": 385,
"human_commit_share": 0.53,
"days_since_last_push": 0,
"active_weeks_last_year": 47
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 0 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "push_recency",
"params": {
"days": 0
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "47/52 weeks with commits",
"points": 32.5,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 47
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "385 commits in the last year",
"points": 18,
"status": "met",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 385
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "30 commit(s) and 11 issue activity found in the last 90 days -- score normalized to 10",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "release_discipline",
"band": "critical",
"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": 1,
"inputs": {
"releases_count": 0
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "no releases published",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_releases_published",
"params": {}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "no releases",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_releases",
"params": {}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "no releases",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_releases",
"params": {}
}
],
"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": 0,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "last human commit 0 days ago",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_maintained",
"params": {
"days": 0
}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "excellent",
"name": "Community & Adoption",
"value": 86,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "excellent",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"forks": 9288,
"stars": 47015,
"watchers": 1616,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "47,015 stars",
"points": 60,
"status": "met",
"details": [
{
"code": "stars",
"params": {
"count": 47015
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "9,288 forks",
"points": 25,
"status": "met",
"details": [
{
"code": "forks",
"params": {
"count": 9288
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "1,616 watchers",
"points": 15,
"status": "met",
"details": [
{
"code": "watchers",
"params": {
"count": 1616
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "good",
"name": "Community health",
"note": null,
"notes": [],
"value": 70,
"inputs": {
"has_readme": true,
"has_license": true,
"has_contributing": true,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 22.5,
"status": "met",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "recognized license (Apache-2.0)",
"points": 22.5,
"status": "met",
"details": [
{
"code": "license_standard",
"params": {}
},
{
"code": "license_spdx",
"params": {
"spdx": "Apache-2.0"
}
}
],
"max_points": 22.5
},
{
"key": "contributing_guide",
"name": "CONTRIBUTING guide",
"detail": null,
"points": 18,
"status": "met",
"details": [],
"max_points": 18
},
{
"key": "code_of_conduct",
"name": "Code of conduct",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 13.5
},
{
"key": "issue_template",
"name": "Issue template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.2
},
{
"key": "pr_template",
"name": "PR template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 6.3
}
]
}
],
"description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
},
{
"key": "governance",
"band": "moderate",
"name": "Sustainability & Governance",
"value": 59,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "at_risk",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 42,
"inputs": {
"bus_factor": 1,
"contributors_sampled": 99,
"top_contributor_share": 0.568
},
"components": [
{
"key": "bus_factor",
"name": "Bus factor",
"detail": "1 contributor(s) cover half of all commits",
"points": 9,
"status": "partial",
"details": [
{
"code": "bus_factor",
"params": {
"count": 1
}
}
],
"max_points": 54
},
{
"key": "commit_distribution",
"name": "Commit distribution",
"detail": "top contributor authored 57% of commits",
"points": 9.7,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 57
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "99 contributors",
"points": 13.5,
"status": "met",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 99
}
}
],
"max_points": 13.5
},
{
"key": "openssf_scorecard_contributors",
"name": "OpenSSF Scorecard: Contributors",
"detail": "project has 25 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": 4109,
"open_issues": 85,
"closed_issues": 4203,
"issue_closed_ratio": 0.98,
"closed_unmerged_prs": 977
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "98% of issues closed",
"points": 45.8,
"status": "partial",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 98
}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "4109/5086 decided PRs merged",
"points": 30.9,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 4109,
"decided": 5086
}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "Found 17/20 approved changesets -- score normalized to 8",
"points": 12,
"status": "partial",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "moderate",
"name": "Ownership & stewardship",
"note": null,
"notes": [],
"value": 50,
"inputs": {
"followers": 108,
"owner_type": "Organization",
"is_verified": null,
"owner_login": "lysine-dev",
"public_repos": 4,
"account_age_days": 147
},
"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": "108 followers of lysine-dev",
"points": 14.6,
"status": "partial",
"details": [
{
"code": "owner_followers",
"params": {
"count": 108,
"login": "lysine-dev"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "4 public repos, account ~0 yr old",
"points": 5.9,
"status": "partial",
"details": [
{
"code": "public_repos",
"params": {
"count": 4
}
},
{
"code": "account_age_years",
"params": {
"years": 0
}
}
],
"max_points": 25
}
]
}
],
"description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
},
{
"key": "engineering",
"band": "good",
"name": "Engineering Quality",
"value": 78,
"weight": 0.2,
"metrics": [
{
"key": "engineering_practices",
"band": "good",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 70,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": true,
"has_linter_config": false,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "4 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 4
}
}
],
"max_points": 24
},
{
"key": "tests_present",
"name": "Tests present",
"detail": null,
"points": 24,
"status": "met",
"details": [],
"max_points": 24
},
{
"key": "linter_config",
"name": "Linter config",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"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": "25 out of 30 merged PRs checked by a CI test -- score normalized to 8",
"points": 16,
"status": "partial",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "excellent",
"name": "Documentation",
"note": null,
"notes": [],
"value": 90,
"inputs": {
"topics": [
"java",
"android",
"kotlin",
"graalvm"
],
"has_wiki": false,
"homepage": "https://lysine.dev/okhttp/",
"has_readme": true,
"has_docs_dir": true,
"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": 25,
"status": "met",
"details": [],
"max_points": 25
},
{
"key": "documentation_homepage_site",
"name": "Documentation / homepage site",
"detail": "https://lysine.dev/okhttp/",
"points": 15,
"status": "met",
"details": [],
"max_points": 15
},
{
"key": "repository_description",
"name": "Repository description",
"detail": null,
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "topics",
"name": "Topics",
"detail": "4 topics",
"points": 10,
"status": "met",
"details": [
{
"code": "topics_count",
"params": {
"count": 4
}
}
],
"max_points": 10
},
{
"key": "wiki",
"name": "Wiki",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
}
],
"description": "Are baseline engineering and documentation practices in place?"
},
{
"key": "security",
"band": "good",
"name": "Security",
"value": 74,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "moderate",
"name": "Security posture",
"note": "Excluded from scoring (no data or not applicable): Branch-Protection, Signed-Releases. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"branch_protection",
"signed_releases"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 67,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 16,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 2,
"scorecard_aggregate": 6.7
},
"components": [
{
"key": "binary_artifacts",
"name": "Binary-Artifacts",
"detail": "binaries present in source code",
"points": 6.8,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "branch_protection",
"name": "Branch-Protection",
"detail": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "25 out of 30 merged PRs checked by a CI test -- score normalized to 8",
"points": 2,
"status": "partial",
"details": [],
"max_points": 2.5
},
{
"key": "cii_best_practices",
"name": "CII-Best-Practices",
"detail": "no effort to earn an OpenSSF best practices badge detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 2.5
},
{
"key": "code_review",
"name": "Code-Review",
"detail": "Found 17/20 approved changesets -- score normalized to 8",
"points": 6,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 25 contributing companies or organizations",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "dangerous_workflow",
"name": "Dangerous-Workflow",
"detail": "no dangerous workflow patterns detected",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "dependency_update_tool",
"name": "Dependency-Update-Tool",
"detail": "update tool detected",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "fuzzing",
"name": "Fuzzing",
"detail": "project is not fuzzed",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "license",
"name": "License",
"detail": "license file detected",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "maintained",
"name": "Maintained",
"detail": "30 commit(s) and 11 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 not run on all commits -- score normalized to 6",
"points": 3,
"status": "partial",
"details": [],
"max_points": 5
},
{
"key": "security_policy",
"name": "Security-Policy",
"detail": "security policy file not detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "signed_releases",
"name": "Signed-Releases",
"detail": "no releases found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 7.5
},
{
"key": "token_permissions",
"name": "Token-Permissions",
"detail": "GitHub workflow tokens follow principle of least privilege",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "vulnerabilities",
"name": "Vulnerabilities",
"detail": "46 existing vulnerabilities detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "dependency_advisories",
"band": "excellent",
"name": "Dependency advisories",
"note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories, No advisories left outstanding. Remaining weights renormalized. Matched 289 resolved dependencies against OSV; 4 could not be assessed (no resolved version, an unsupported ecosystem, or beyond the reported package list). This repository publishes no package the index resolves, so the repository dependency graph was assessed instead. That graph mixes development and test pins with shipped dependencies, so only the declared runtime dependencies are scored; transitive findings are reported as context and excluded from the score. Reachability is not analyzed.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"indirect_dependencies_free_of_known_advisories",
"no_advisories_left_outstanding"
]
}
},
{
"code": "weights_renormalized",
"params": {}
},
{
"code": "advisories_scope_repository",
"params": {
"assessed": 289
}
},
{
"code": "advisories_unassessed",
"params": {
"count": 4
}
},
{
"code": "advisories_repo_graph_caveat",
"params": {}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 100,
"inputs": {
"source": "osv",
"advisories": 57,
"affected_packages": 26,
"assessed_packages": 289,
"unassessed_packages": 4,
"affected_by_severity": "critical 1, high 19, moderate 5, low 1",
"direct_affected_packages": 0
},
"components": [
{
"key": "direct_dependencies_free_of_known_advisories",
"name": "Direct dependencies free of known advisories",
"detail": "no direct dependency carries a known advisory",
"points": 35,
"status": "met",
"details": [
{
"code": "no_direct_advisories",
"params": {}
}
],
"max_points": 35
},
{
"key": "indirect_dependencies_free_of_known_advisories",
"name": "Indirect dependencies free of known advisories",
"detail": "transitive set not separable from development and test dependencies in this scope",
"points": 0,
"status": "excluded",
"details": [
{
"code": "advisories_scope_not_separable",
"params": {}
}
],
"max_points": 25
},
{
"key": "no_advisories_left_outstanding",
"name": "No advisories left outstanding",
"detail": "no advisory carries a publication date",
"points": 0,
"status": "excluded",
"details": [
{
"code": "advisories_no_publication_date",
"params": {}
}
],
"max_points": 40
}
]
},
{
"key": "malicious_dependencies",
"band": "excellent",
"name": "Malicious dependencies",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"source": "osv",
"meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
"packages": [],
"red_flag": false,
"assessed_packages": 289,
"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": 9
},
"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": 58,
"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.962,
"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": "51 of 53 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 51,
"sampled": 53
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "moderate",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 64,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [
"yarn.lock"
],
"has_dockerfile": false,
"typed_language": true,
"bootstrap_files": [],
"has_devcontainer": true,
"has_linter_config": false,
"typecheck_configs": [],
"agent_commit_share": 0,
"toolchain_manifests": [
"android-test-app/build.gradle.kts",
"android-test/build.gradle.kts",
"build-logic/build.gradle.kts",
"build.gradle.kts",
"container-tests/build.gradle.kts",
"maven-tests/pom.xml",
"mockwebserver-deprecated/build.gradle.kts",
"mockwebserver-junit4/build.gradle.kts",
"mockwebserver-junit5/build.gradle.kts",
"mockwebserver/build.gradle.kts",
"module-tests/build.gradle.kts",
"native-image-tests/build.gradle.kts",
"okcurl/build.gradle.kts",
"okhttp-bom/build.gradle.kts",
"okhttp-brotli/build.gradle.kts",
"okhttp-coroutines/build.gradle.kts",
"okhttp-dnsoverhttps/build.gradle.kts",
"okhttp-hpacktests/build.gradle.kts",
"okhttp-idna-mapping-table/build.gradle.kts",
"okhttp-java-net-cookiejar/build.gradle.kts",
"okhttp-logging-interceptor/build.gradle.kts",
"okhttp-osgi-tests/build.gradle.kts",
"okhttp-sse/build.gradle.kts",
"okhttp-testing-support/build.gradle.kts",
"okhttp-tls/build.gradle.kts",
"okhttp-urlconnection/build.gradle.kts",
"okhttp-zstd/build.gradle.kts",
"okhttp/build.gradle.kts",
"regression-test/build.gradle.kts",
"samples/compare/build.gradle.kts",
"samples/crawler/build.gradle.kts",
"samples/guide/build.gradle.kts",
"samples/simple-client/build.gradle.kts",
"samples/slack/build.gradle.kts",
"samples/static-server/build.gradle.kts",
"samples/tlssurvey/build.gradle.kts",
"samples/unixdomainsockets/build.gradle.kts"
],
"dependency_bot_commit_share": 0.47
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": "android-test-app/build.gradle.kts, android-test/build.gradle.kts, build-logic/build.gradle.kts (toolchain convention, no task runner)",
"points": 12.6,
"status": "partial",
"details": [
{
"code": "toolchain_convention",
"params": {
"files": "android-test-app/build.gradle.kts, android-test/build.gradle.kts, build-logic/build.gradle.kts"
}
}
],
"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": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": "Kotlin (statically typed)",
"points": 11,
"status": "met",
"details": [
{
"code": "statically_typed_language",
"params": {
"language": "Kotlin"
}
}
],
"max_points": 11
},
{
"key": "reproducible_environment",
"name": "Reproducible environment",
"detail": "devcontainer, lockfile",
"points": 10,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "devcontainer, lockfile"
}
}
],
"max_points": 10
},
{
"key": "demonstrated_agent_practice",
"name": "Demonstrated agent practice",
"detail": "no agent-authored commits among the last 100",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_agent_authored_commits",
"params": {
"sampled": 100
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "47 of the last 100 commits are automated dependency updates",
"points": 8,
"status": "met",
"details": [
{
"code": "dependency_bot_commits",
"params": {
"count": 47,
"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": 99,
"inputs": {
"primary_language": "Kotlin",
"largest_source_bytes": 152954,
"source_files_sampled": 624,
"oversized_source_files": 9
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "Kotlin (statically typed)",
"points": 45,
"status": "met",
"details": [
{
"code": "statically_typed_language",
"params": {
"language": "Kotlin"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "9/624 source files over 60KB",
"points": 54.2,
"status": "partial",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 624,
"oversized": 9
}
}
],
"max_points": 55
}
]
},
{
"key": "ai_interfaces",
"band": "at_risk",
"name": "Machine-readable interfaces",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"example_dirs": [
"recipes",
"sample",
"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": "recipes, sample, samples",
"points": 40,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "recipes, sample, 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": [
"Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token",
"Could not fetch maven package 'com.squareup.okhttp3:maven-tests' from its registry"
],
"report_type": "repository",
"generated_at": "2026-07-28T14:22:00.387058Z",
"schema_version": "0.27.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/l/lysine-dev/okhttp.svg",
"full_name": "lysine-dev/okhttp",
"license_state": "standard",
"license_spdx": "Apache-2.0"
}