Informe JSON sin procesar legible por máquina
{
"data": {
"repo": {
"topics": [],
"is_fork": false,
"size_kb": 698,
"has_wiki": false,
"homepage": null,
"languages": {
"Go": 273934,
"Makefile": 1423
},
"pushed_at": "2026-07-25T00:35:58Z",
"created_at": "2024-01-12T05:42:47Z",
"owner_type": "Organization",
"updated_at": "2026-07-20T12:08:54Z",
"description": "A Go ingester for GreptimeDB, which is compatible with GreptimeDB protocol and lightweight. ",
"is_archived": false,
"is_disabled": false,
"license_spdx": "Apache-2.0",
"default_branch": "main",
"license_spdx_raw": "Apache-2.0",
"primary_language": "Go",
"significant_languages": [
"Go"
]
},
"owner": {
"blog": "https://greptime.com",
"name": "Greptime",
"type": "Organization",
"login": "GreptimeTeam",
"company": null,
"location": null,
"followers": 294,
"avatar_url": "https://avatars.githubusercontent.com/u/103400677?v=4",
"created_at": "2022-04-11T03:34:18Z",
"is_verified": null,
"public_repos": 84,
"account_age_days": 1569
},
"license": {
"state": "standard",
"spdx_id": "Apache-2.0",
"raw_spdx": "Apache-2.0",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "v0.7.4",
"kind": "patch",
"published_at": "2026-07-20T12:09:08Z"
},
{
"tag": "v0.7.3",
"kind": "patch",
"published_at": "2026-07-10T08:27:50Z"
},
{
"tag": "v0.7.2",
"kind": "patch",
"published_at": "2026-04-21T12:51:35Z"
},
{
"tag": "v0.7.1",
"kind": "patch",
"published_at": "2026-03-23T10:52:14Z"
},
{
"tag": "v0.7.0",
"kind": "minor",
"published_at": "2026-03-23T08:01:16Z"
},
{
"tag": "v0.6.2",
"kind": "patch",
"published_at": "2025-06-26T10:05:13Z"
},
{
"tag": "v0.6.1",
"kind": "patch",
"published_at": "2025-04-02T11:36:42Z"
},
{
"tag": "v0.6.0",
"kind": "minor",
"published_at": "2024-12-13T10:17:18Z"
},
{
"tag": "v0.5.4",
"kind": "patch",
"published_at": "2024-11-19T08:33:22Z"
},
{
"tag": "v0.5.3",
"kind": "patch",
"published_at": "2024-10-12T04:07:17Z"
},
{
"tag": "v0.5.2",
"kind": "patch",
"published_at": "2024-09-11T11:02:54Z"
},
{
"tag": "v0.5.1",
"kind": "patch",
"published_at": "2024-08-15T02:54:49Z"
},
{
"tag": "v0.5.0",
"kind": "minor",
"published_at": "2024-04-30T07:02:15Z"
},
{
"tag": "v0.4.0",
"kind": "minor",
"published_at": "2024-03-06T07:47:51Z"
},
{
"tag": "v0.3.0",
"kind": "minor",
"published_at": "2024-02-27T08:47:54Z"
},
{
"tag": "v0.2.0",
"kind": "minor",
"published_at": "2024-02-26T06:43:44Z"
},
{
"tag": "v0.1.1",
"kind": "patch",
"published_at": "2024-02-06T09:23:21Z"
},
{
"tag": "v0.1.0",
"kind": "minor",
"published_at": "2024-02-01T03:33:36Z"
}
],
"recent_commits": [
{
"oid": "2633aebd7c64ce3c8cf7a088f62f9bfc99510647",
"body": "* feat: enable gRPC keepalive by default\n\nKeepalive was opt-in via WithKeepalive, so idle connections behind an LB\nor NAT could be silently dropped and only surface as an error at the next\nwrite (worst for idle streams). Enable it by default: 30s interval, 10s\ntimeout, PermitWithoutStream. GreptimeD\n[…]\norced by gRPC. Narrow build()'s comment to what the slice copy\nactually guarantees.\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>\n\n---------\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>",
"is_bot": false,
"headline": "feat: enable gRPC keepalive by default (#115)",
"author_name": "dennis zhuang",
"author_login": "killme2008",
"committed_at": "2026-07-20T12:07:25Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "dfea862adc23350cae1a491644ae466314eb06ea",
"body": "…(#112)\n\nBumps [github.com/opencontainers/runc](https://github.com/opencontainers/runc) from 1.2.8 to 1.3.6.\n- [Release notes](https://github.com/opencontainers/runc/releases)\n- [Changelog](https://github.com/opencontainers/runc/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/opencontainers/r\n[…]\nunc\n dependency-version: 1.3.6\n dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "build(deps): bump github.com/opencontainers/runc from 1.2.8 to 1.3.6 …",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-20T11:36:47Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "bca54a6533be0470d786f4a51bc07207a49a8137",
"body": "Bumps [golang.org/x/net](https://github.com/golang/net) from 0.38.0 to 0.55.0.\n- [Commits](https://github.com/golang/net/compare/v0.38.0...v0.55.0)\n\n---\nupdated-dependencies:\n- dependency-name: golang.org/x/net\n dependency-version: 0.55.0\n dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "build(deps): bump golang.org/x/net from 0.38.0 to 0.55.0 (#113)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-20T11:32:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9cb02a85f8de78cbe1906b2c224af10d7519d195",
"body": "Bumps [golang.org/x/net](https://github.com/golang/net) from 0.38.0 to 0.55.0.\n- [Commits](https://github.com/golang/net/compare/v0.38.0...v0.55.0)\n\n---\nupdated-dependencies:\n- dependency-name: golang.org/x/net\n dependency-version: 0.55.0\n dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "build(deps): bump golang.org/x/net in /examples/opentelemetry (#114)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-20T11:31:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "846a602e32a81bd135a2d58a5c2cc4a6afefe6e5",
"body": "* feat: multi-endpoint failover with health-aware selection\n\nResolve #103. Add health-aware endpoint failover for unary calls, mirroring\nthe TypeScript ingester (GreptimeTeam/greptimedb-ingester-ts#10).\n\n- loadbalancer: add Selector (with per-sequence exclude) and optional\n HealthReporter interface\n[…]\nf-by: Dennis Zhuang <killme2008@gmail.com>\n\n* fix: address failover review comments\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>\n\n---------\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>",
"is_bot": false,
"headline": "feat: add multi-endpoint failover (#111)",
"author_name": "dennis zhuang",
"author_login": "killme2008",
"committed_at": "2026-07-09T10:27:28Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "1552f1f23d3a79b6f0b8b2eaa4ed4179315958f6",
"body": "Signed-off-by: liyang <daviderli614@gmail.com>",
"is_bot": false,
"headline": "ci: delete dependabot (#106)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2026-05-11T08:29:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "beb43380eabe881ec36e1121c67368f3bebfb05e",
"body": "….0 (#93)\n\nBumps [go.opentelemetry.io/otel/metric](https://github.com/open-telemetry/opentelemetry-go) from 1.34.0 to 1.38.0.\n- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases)\n- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md)\n- [Com\n[…]\nirect:production\n update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "build(deps): bump go.opentelemetry.io/otel/metric from 1.34.0 to 1.38…",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-05-09T06:50:40Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "b032c0b651b0a039d2cea2d0f2967710ddc6d2ea",
"body": "…(#94)\n\nBumps [github.com/opencontainers/runc](https://github.com/opencontainers/runc) from 1.2.5 to 1.2.8.\n- [Release notes](https://github.com/opencontainers/runc/releases)\n- [Changelog](https://github.com/opencontainers/runc/blob/v1.2.8/CHANGELOG.md)\n- [Commits](https://github.com/opencontainers/\n[…]\nunc\n dependency-version: 1.2.8\n dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "build(deps): bump github.com/opencontainers/runc from 1.2.5 to 1.2.8 …",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-05-09T06:50:27Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "0bc0d088c685b8f3b8b3f616a4873229af155ee5",
"body": "* feat: supports multi endpoints\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>\n\n* fix: ipv6\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>\n\n* chore: examples/multi_endpoint/main.go\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>\n\n* chore: make Close idempotent\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>\n\n* fix: remove timezone in timestamp datatypes\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>\n\n---------\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>",
"is_bot": false,
"headline": "feat: supports multi endpoints and fix timestamp timezone (#101)",
"author_name": "dennis zhuang",
"author_login": "killme2008",
"committed_at": "2026-04-21T12:48:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "92dc62b9e1b2f4066196f70ce525aafe03f9dec9",
"body": "* chore: update github runner and golang version\n\nSigned-off-by: liyang <daviderli614@gmail.com>\n\n* update go version\n\nSigned-off-by: liyang <daviderli614@gmail.com>\n\n* fix ci\n\nSigned-off-by: liyang <daviderli614@gmail.com>\n\n* use golang lint cli\n\nSigned-off-by: liyang <daviderli614@gmail.com>\n\n* fi\n[…]\ncom>\n\n* fix ci\n\nSigned-off-by: liyang <daviderli614@gmail.com>\n\n* excludes examples directory\n\nSigned-off-by: liyang <daviderli614@gmail.com>\n\n---------\n\nSigned-off-by: liyang <daviderli614@gmail.com>",
"is_bot": false,
"headline": "chore: update github runner and golang version (#100)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2026-04-21T12:16:07Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "db0c0b1d118cb1488639b77f1066c53a79c6920a",
"body": "* fix: datetime type\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>\n\n* Update table/types/arrow_test.go\n\nCo-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>\n\n* chore: deprecate Datetime\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>\n\n* chore: year\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>\n\n---------\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>\nCo-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>",
"is_bot": false,
"headline": "fix: datetime type (#99)",
"author_name": "dennis zhuang",
"author_login": "killme2008",
"committed_at": "2026-04-21T04:17:53Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "870c74fa9a544f0ef4351e03a32cc8893ca2feb8",
"body": "…nation (#98)\n\n* fix: drain all server responses in bulk write Close to avoid premature termination\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>\n\n* feat: fail fast when receives server error in Writ\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>\n\n* chore: json encoding\n\nSigned-off-by: \n[…]\nse\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>\n\n* chore: apply suggestions\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>\n\n---------\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>",
"is_bot": false,
"headline": "fix: drain all responses in bulk write Close to avoid premature termi…",
"author_name": "dennis zhuang",
"author_login": "killme2008",
"committed_at": "2026-03-23T10:51:16Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "8c97b427aabcb531d4726b27eee5dce2a89a51d9",
"body": "* fix: improve error handling in bulk write and stream close\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>\n\n* chore: apply suggestions\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>\n\n---------\n\nSigned-off-by: Dennis Zhuang <killme2008@gmail.com>",
"is_bot": false,
"headline": "fix: improve error handling in bulk write and stream close (#97)",
"author_name": "dennis zhuang",
"author_login": "killme2008",
"committed_at": "2026-03-23T05:00:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "36da11ebf96eebc0cdb51c8ee8902ef11ae390f6",
"body": null,
"is_bot": false,
"headline": "feat: add bulk write API (#89)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2025-08-11T22:39:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6c330983a0ec5412648ffa9d70323fa26b0d186d",
"body": "Bumps [github.com/GreptimeTeam/greptime-proto](https://github.com/GreptimeTeam/greptime-proto) from 0.9.0 to 0.15.0.\n- [Release notes](https://github.com/GreptimeTeam/greptime-proto/releases)\n- [Commits](https://github.com/GreptimeTeam/greptime-proto/compare/v0.9.0...v0.15.0)\n\n---\nupdated-dependenci\n[…]\nirect:production\n update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "build(deps): bump github.com/GreptimeTeam/greptime-proto (#87)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2025-07-20T16:09:36Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "f370e086255a82f74e42bd1e926d8844d4539e13",
"body": null,
"is_bot": false,
"headline": "ci: check for updates once a week (#84)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2025-06-26T09:58:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "541d6e2cf0dab0c08e2ad63f40a81d636de6ba1b",
"body": "Signed-off-by: liyang <daviderli614@gmail.com>",
"is_bot": false,
"headline": "fix: labeler file path (#85)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2025-06-26T07:13:08Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "705c3a8ad9894513a729ff57f81f4f4a27107760",
"body": "* feat(client): add 'Close' method for gRPC connection\n\nSigned-off-by: liyang <daviderli614@gmail.com>\n\n* add close the client in client_test\n\nSigned-off-by: liyang <daviderli614@gmail.com>\n\n* fix ci\n\nSigned-off-by: liyang <daviderli614@gmail.com>\n\n* fix ci\n\nSigned-off-by: liyang <daviderli614@gmail\n[…]\nsxm@gmail.com>\n\n* Update client.go\n\n* update readme\n\nSigned-off-by: liyang <daviderli614@gmail.com>\n\n---------\n\nSigned-off-by: liyang <daviderli614@gmail.com>\nCo-authored-by: zyy17 <zyylsxm@gmail.com>",
"is_bot": false,
"headline": "feat(client): add `Close` method for gRPC connection (#77)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2025-06-26T03:51:51Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "d523626cc8c19b77b3eb539109043a226a9b4ae3",
"body": "Signed-off-by: liyang <daviderli614@gmail.com>",
"is_bot": false,
"headline": "ci: add pr labeling workflow (#75)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2025-06-26T03:32:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "28be6201249c406a65ec24f59cf37af23ab6c387",
"body": "…(#69)\n\nBumps [github.com/ory/dockertest/v3](https://github.com/ory/dockertest) from 3.11.0 to 3.12.0.\n- [Release notes](https://github.com/ory/dockertest/releases)\n- [Commits](https://github.com/ory/dockertest/compare/v3.11.0...v3.12.0)\n\n---\nupdated-dependencies:\n- dependency-name: github.com/ory/d\n[…]\nirect:production\n update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "build(deps): bump github.com/ory/dockertest/v3 from 3.11.0 to 3.12.0 …",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2025-06-09T06:57:19Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "e2717d1d5e03a35638f88a7c29385e5cfe924340",
"body": "* ci: add dependabot configuration\n\n* update config\n\n* add timezone note",
"is_bot": false,
"headline": "ci: add dependabot configuration (#66)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2025-06-05T02:14:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8920e3618f2ede530ced82ee25a546216b61a98e",
"body": "Bumps [golang.org/x/net](https://github.com/golang/net) from 0.29.0 to 0.38.0.\n- [Commits](https://github.com/golang/net/compare/v0.29.0...v0.38.0)\n\n---\nupdated-dependencies:\n- dependency-name: golang.org/x/net\n dependency-version: 0.38.0\n dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "build(deps): bump golang.org/x/net in /examples/opentelemetry (#65)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2025-06-05T02:11:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "541c4595eb9fadcf5f9389029eeca0cd6e1ae577",
"body": "Bumps [golang.org/x/net](https://github.com/golang/net) from 0.35.0 to 0.38.0.\n- [Commits](https://github.com/golang/net/compare/v0.35.0...v0.38.0)\n\n---\nupdated-dependencies:\n- dependency-name: golang.org/x/net\n dependency-version: 0.38.0\n dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "build(deps): bump golang.org/x/net from 0.35.0 to 0.38.0 (#64)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2025-06-05T01:59:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bdd7e29cc3fc1ef874f9d01a101b73333074c83f",
"body": "* test: use the latest version of GreptimeDB for testing\n\n* add json type test\n\n* parse datetime to microsecond\n\n* fix schema test\n\n* change 'Protocol' -> 'protocol'",
"is_bot": false,
"headline": "test: use the latest version of GreptimeDB for testing (#63)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2025-04-02T11:33:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3eec48debd7637b31fc1f8835ae046d9fcf526bd",
"body": "* chore: bump go package version\n\n* change go version\n\n* use NewClient instead of Dial",
"is_bot": false,
"headline": "chore: bump go package version (#62",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2025-03-05T07:07:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "da1df68e1fd607c2310dc96e3b87b99b74201754",
"body": "* chore: add more license title\n\n* refactor: rename license PHONY",
"is_bot": false,
"headline": "chore: add more license title (#61)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2025-02-17T06:57:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "66d7c5bf251b5be7a7094013666f46190f272900",
"body": "* ci: improve github action testing\n\n* chore: change license year\n\n* ci: modify the pr-title-checker condition\n\n* ci: Use shell command to check license header\n\n* chore: change PHONY name in Makefile\n\n* chore: add hawkeye config\n\n* fix: license checker failed\n\n* fix: license checker failed\n\n* fix: l\n[…]\nfix: license checker failed\n\n* fix: license checker failed\n\n* fix: license checker failed\n\n* fix: license checker failed\n\n* refactor: rename LICENSE to license-header.txt\n\n* refactor: apply suggestion",
"is_bot": false,
"headline": "ci: improve github action testing (#60)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2025-02-13T03:26:49Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "34c6c2360a43b0cc7f87ce8855ca0fda24c625ba",
"body": "* feat: support hints format\r\n\r\n* fix: license check failed",
"is_bot": false,
"headline": "feat: Support hints format writing (#59)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2025-02-08T03:42:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "380bca50d25750b470b4b233f0d8d48bba5dd785",
"body": "…#56)\n\n* feat: implement use the '-' mark to ignore writing values for field\r\n\r\n* refactor: ignore fields\r\n\r\n* chore: change the name from 'ignore' to 'skip'\r\n\r\n* refactor: Remove the ignorefields example and use simple unit test",
"is_bot": false,
"headline": "feat: implement use the '-' mark to ignore writing values for field (…",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2024-12-13T10:12:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6582ac8221ca7bcda4c73b27c9866a2f6c7c1935",
"body": "* refactor: add more example of writing json data\n\n* chore: log format\n\n* chore: log format",
"is_bot": false,
"headline": "refactor: add more example of writing json data (#55)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2024-12-03T02:59:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "dd2c374c919b8f2e02fba048c8bbfd6c5d7c3059",
"body": null,
"is_bot": false,
"headline": "refactor: modify example (#53)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2024-11-19T08:31:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c59df61cb514d7c3eff60a5fadd15806149735f0",
"body": "… (#52)",
"is_bot": false,
"headline": "refactor: move the json.Marshal into BuildJSON makes it easier to use…",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2024-11-13T03:33:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "acfc40fcea8dd094d1f5fe6f4309f612b81598fe",
"body": "* feat: support json type\r\n\r\n* feat: add readme\r\n\r\n* feat: add json type test\r\n\r\n* fix: ci failed\r\n\r\n* chore: revert package import",
"is_bot": false,
"headline": "feat: support json type (#51)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2024-11-12T03:59:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5a19d5ebc4e4beec5ccf02018f99e9247613bd63",
"body": "* feat: Supports gRPC write hints\r\n\r\n* chore: change table name\r\n\r\n* refactor: move to the context package\r\n\r\n* refactor: refactor the context package\r\n\r\n* refactor: init table\r\n\r\n* Update context/context.go\r\n\r\nCo-authored-by: zyy17 <zyylsxm@gmail.com>\r\n\r\n---------\r\n\r\nCo-authored-by: zyy17 <zyylsxm@gmail.com>",
"is_bot": false,
"headline": "feat: Supports gRPC write hints (#48)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2024-09-27T08:01:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fa4d6c033df5fc625af1602dc6a08fd3f8f68b51",
"body": "* feat: add opentelemetry usage example\r\n\r\n* chore: delete unuse code\r\n\r\n* chore: change opentelemetry readme\r\n\r\n* chore: install jaeger using docker\r\n\r\n* chore: change image\r\n\r\n* refactor: use newClient to initialize greptime client\r\n\r\n* refactor: refactor handle error",
"is_bot": false,
"headline": "feat: add opentelemetry usage example (#47)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2024-09-26T03:58:54Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d3f1530a9887fee12b0d3045fbbc7b87964f9271",
"body": "* feat: instrument grpc client with otel\r\n\r\n- instrument grpc client with otelgrpc\r\n- provide options to enable/disable telemetry\r\n- provide options to set otel Providers\r\n\r\n* chore: add header to new file\r\n\r\n* fix lint",
"is_bot": false,
"headline": "feat: instrument grpc client with otel (#39)",
"author_name": "xu0o0",
"author_login": "haoqixu",
"committed_at": "2024-09-18T16:21:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ffd0ff076b6d1ad43441e52d4a817747dcf0d6b2",
"body": null,
"is_bot": false,
"headline": "refactor: Merge the initialized NewClient (#46)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2024-09-11T10:42:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fa24df223b74d4bd19852d668bfc4217471a254c",
"body": "* feat: add health check interface\r\n\r\n* feat: add health check example",
"is_bot": false,
"headline": "feat: add health check interface (#45)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2024-09-11T06:43:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e3578dc266abe9d897ba61f7f842d351aac33770",
"body": null,
"is_bot": false,
"headline": "ci: add pr title checker (#42)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2024-09-09T03:39:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d054e6d4089bc6c1e5a67596fc1d9890b3d3e83a",
"body": null,
"is_bot": false,
"headline": "fix: dead document links (#41)",
"author_name": "Yiran",
"author_login": "nicecui",
"committed_at": "2024-09-06T08:48:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cf6fa669d2e46ca126a378b2b7a3e281b603d297",
"body": "* fix: write failed when value is zero\r\n\r\n* Update examples/object/README.md\r\n\r\nCo-authored-by: tison <wander4096@gmail.com>\r\n\r\n* refactor: filter value kind is null ptr\r\n\r\n* fix: omit tables length check\r\n\r\n* chore: write host val in example\r\n\r\n* refactor: rename nil table function\r\n\r\n---------\r\n\r\nCo-authored-by: tison <wander4096@gmail.com>",
"is_bot": false,
"headline": "fix: write failed when value is zero (#38)",
"author_name": "liyang",
"author_login": "daviderli614",
"committed_at": "2024-08-15T02:47:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a3ebb89677f9353eb523fe54e1b97275fc2a68a6",
"body": null,
"is_bot": false,
"headline": "fix: panic in CloseStream (#37)",
"author_name": "Yingwen",
"author_login": "evenyag",
"committed_at": "2024-06-15T10:45:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "11097663940c13f4ab69148e145cfb0be6caeb13",
"body": "…elds (#35)\n\n* bump: update version of proto and delete duration releated fields\r\n\r\n* delete duration related fields in types.go\r\n\r\n---------\r\n\r\nCo-authored-by: Greptime <noreply@greptime.com>",
"is_bot": false,
"headline": "bump: update version of greptime-proto and delete duration related fi…",
"author_name": "赵少风",
"author_login": "cure1024",
"committed_at": "2024-04-30T06:57:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "797915567a6ad752129413d0306f353c21a623fe",
"body": null,
"is_bot": false,
"headline": "test: add update record test case (#31)",
"author_name": "JetSquirrel",
"author_login": "JetSquirrel",
"committed_at": "2024-03-25T02:20:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3ce7b20e69878ef150df756dfbc95c59beecc0bc",
"body": null,
"is_bot": false,
"headline": "docs: Add More Examples (#32)",
"author_name": "JetSquirrel",
"author_login": "JetSquirrel",
"committed_at": "2024-03-25T02:19:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "17a025deb8dbfb4300f6cddec16e8c3c09eafa26",
"body": null,
"is_bot": false,
"headline": "fix some typos (#30)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-03-18T04:26:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "99663b971d41005fb8d1adf3a37d0b6c6b08c5e1",
"body": "* feat: support delete record\r\n\r\n* feat: replace WriteOp by Operation\r\n\r\n* fix code comment mistakes",
"is_bot": false,
"headline": "feat: support delete record (#29)",
"author_name": "JetSquirrel",
"author_login": "JetSquirrel",
"committed_at": "2024-03-18T03:01:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "08930f5fcbe12870298772999796dd4884139e8f",
"body": "* support secure\r\n\r\n* refactor options\r\n\r\n* docs\r\n\r\n* keepalive variable\r\n\r\n* rename UserAgentOption",
"is_bot": false,
"headline": "feat: support insecure (#26)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-03-06T07:45:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a16fc706528142f4aa894ef003ceb4c8de435ebe",
"body": "* use write object interface name\r\n\r\n* bump version",
"is_bot": false,
"headline": "refactor: use write object interface name (#24)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-02-27T08:38:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2da08294ac6dadff1dbcb2d8327b0ea4846d5105",
"body": "* merge client with streamClient\r\n\r\n* version and docs",
"is_bot": false,
"headline": "feat: merge client with streamClient (#23)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-02-26T06:34:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e963b15f907962a6159e943d0c9f01330dda50f6",
"body": null,
"is_bot": false,
"headline": "fix link in readme (#22)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-02-07T06:30:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ddd87b4c72a95aecc8d81c41b70c03b5cd48e23c",
"body": "* more docs\r\n\r\n* lisence",
"is_bot": false,
"headline": "docs: more docs (#21)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-02-07T06:15:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b3ab66a9828b346693fb3ab82984e7fa7cce7f71",
"body": "* client.Create\r\n\r\n* streamClient.Create\r\n\r\n* readme\r\n\r\n* example\r\n\r\n* lisence",
"is_bot": false,
"headline": "feat: Create directly without schema predefined (#19)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-02-06T09:22:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "34f2874b9ddbee3fc55ba303b9e2eb9bdc72ab75",
"body": "* more test cases\r\n\r\n* more test cases",
"is_bot": false,
"headline": "tests: more cases (#18)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-02-06T03:56:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8c75552f6e86dc35c0d5a8de79f06be1eb957ed8",
"body": "* parse values\r\n\r\n* fix test\r\n\r\n* parse value test\r\n\r\n* more test cases",
"is_bot": false,
"headline": "feat: Parse model (#17)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-02-05T10:30:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f4da83617cdcdf0e0efd5964e23821a42156363f",
"body": "* parse schema via reflect\r\n\r\n* test schema with tags\r\n\r\n* test schema with tags\r\n\r\n* more test cases",
"is_bot": false,
"headline": "feat: parse schema via reflect (#16)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-02-05T03:27:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "24d8f6e1e87b61e63e8db9ba8ead9665ae819294",
"body": "* refactor auth header\r\n\r\n* keeplive options",
"is_bot": false,
"headline": "feat: Keeplive Options (#14)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-02-02T11:30:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b66d47cc9dd117ecee222403b312f0ceec628f14",
"body": null,
"is_bot": false,
"headline": "code coverage (#12)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-02-01T03:31:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "18577145a916fb2fa194d9c2f535705dfbdd249a",
"body": null,
"is_bot": false,
"headline": "stream test (#11)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-02-01T01:53:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "40b60ef7a2f2cf887b91680f3b58de932f050da9",
"body": "* client test\r\n\r\n* client test done\r\n\r\n* more test cases",
"is_bot": false,
"headline": "test: client (#7)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-01-31T09:44:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9e6c4d713bf7976e4f8972fc921a3012c1adda5c",
"body": "* table & schema\r\n\r\n* row inserts request\r\n\r\n* support more data types\r\n\r\n* fix license",
"is_bot": false,
"headline": "table & schema (#5)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-01-30T06:45:29Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2c14895dab7f19274bd24318a48939ae957d4293",
"body": null,
"is_bot": false,
"headline": "update readme (#4)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-01-18T08:18:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3b16fe90ca3aa66c72c08ae61113c61360640798",
"body": "chore: tidy mod",
"is_bot": false,
"headline": "Merge pull request #2 from GreptimeTeam/tidy-mod",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-01-12T09:47:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fd551b7396479b158864d540ba6de9cf33a0f76d",
"body": null,
"is_bot": false,
"headline": "tidy mod",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-01-12T09:26:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3bf68ccf5a324d364db7e6024ec720d9aab9e297",
"body": "refactor: delete query logic",
"is_bot": false,
"headline": "Merge pull request #1 from GreptimeTeam/remove-query-logic",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-01-12T09:16:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d884943c9c407d3742691c5d60fbcefa0a49335f",
"body": null,
"is_bot": false,
"headline": "remove some test cases",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-01-12T09:12:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d7b855955e782388cb6236a728bc643bf82534aa",
"body": null,
"is_bot": false,
"headline": "delete query logic",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2024-01-12T08:55:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "098f37980d47a1216de98643d658799bdd6df12b",
"body": "* example\n\n* more docs\n\n* chore: docs",
"is_bot": false,
"headline": "docs: more docs with example (#100)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2023-11-23T11:24:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d3c2be31522bcd6ad1368150d3686372bf572dbd",
"body": "Bumps [github.com/docker/docker](https://github.com/docker/docker) from 20.10.24+incompatible to 24.0.7+incompatible.\r\n- [Release notes](https://github.com/docker/docker/releases)\r\n- [Commits](https://github.com/docker/docker/compare/v20.10.24...v24.0.7)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-n\n[…]\n: github.com/docker/docker\r\n dependency-type: indirect\r\n...\r\n\r\nSigned-off-by: dependabot[bot] <support@github.com>\r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "build(deps): bump github.com/docker/docker (#99)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2023-11-23T06:14:37Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "29e5c99416fe6b541612f80f7ad9573c0142f0df",
"body": "Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.55.0 to 1.56.3.\r\n- [Release notes](https://github.com/grpc/grpc-go/releases)\r\n- [Commits](https://github.com/grpc/grpc-go/compare/v1.55.0...v1.56.3)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: google.golang.org/grpc\r\n dependency-type: direct:production\r\n...\r\n\r\nSigned-off-by: dependabot[bot] <support@github.com>\r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "build(deps): bump google.golang.org/grpc from 1.55.0 to 1.56.3 (#98)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2023-10-26T07:28:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "07c1c9048ebb005cf5ef40c9917e4347e6387316",
"body": "Bumps [golang.org/x/net](https://github.com/golang/net) from 0.10.0 to 0.17.0.\r\n- [Commits](https://github.com/golang/net/compare/v0.10.0...v0.17.0)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: golang.org/x/net\r\n dependency-type: indirect\r\n...\r\n\r\nSigned-off-by: dependabot[bot] <support@github.com>\r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "build(deps): bump golang.org/x/net from 0.10.0 to 0.17.0 (#97)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2023-10-26T07:27:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a2d333f66e02e99468abb4b36b9953db5c36f4cf",
"body": "* feat: update greptime proto to v0.4.0\r\n\r\n* feat: update proto, and fix test",
"is_bot": false,
"headline": "feat: Update proto (#95)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2023-10-10T06:59:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d42f2ce512a39f8810b03d9273c98d2ae2585d56",
"body": "* feat: support prom api response error\r\n\r\n* fix: license check",
"is_bot": false,
"headline": "feat: support prom api response error (#93)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2023-08-22T05:43:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "841e5a5ac4d1b3d005e7e9ffef4425bd469198eb",
"body": null,
"is_bot": false,
"headline": "feat: support response header (#86)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2023-07-25T08:03:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2ccbdac50d22f729100b2022993d95a9a7e4d1d2",
"body": "Bumps [github.com/docker/docker](https://github.com/docker/docker) from 20.10.7+incompatible to 20.10.24+incompatible.\r\n- [Release notes](https://github.com/docker/docker/releases)\r\n- [Commits](https://github.com/docker/docker/compare/v20.10.7...v20.10.24)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency\n[…]\n: github.com/docker/docker\r\n dependency-type: indirect\r\n...\r\n\r\nSigned-off-by: dependabot[bot] <support@github.com>\r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "build(deps): bump github.com/docker/docker (#85)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2023-06-06T08:55:32Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "8b858ea28544f15123ddc6a03da1fd351591463d",
"body": "* feat: support []byte\r\n\r\n* ci: do not let codecov fail ci",
"is_bot": false,
"headline": "feat: support []byte (#84)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2023-06-06T08:50:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5ea991f349ec2842ac049e377f104801ec75e2ab",
"body": null,
"is_bot": false,
"headline": "docs: update readme to delete []byte support (#82)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2023-06-05T10:04:00Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "302ee7882359b66097b69d9aa274d3481fa3b5e1",
"body": "* example\r\n\r\n* feat: support more datatypes\r\n\r\n* feat: support InsertsRequest",
"is_bot": false,
"headline": "feat: support InsertsRequest (#81)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2023-06-05T09:40:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "373a210133be452778dab3347f522498855345af",
"body": "…#76)",
"is_bot": false,
"headline": "refactor: simplify type assertion and remove unnecessary conversion (…",
"author_name": "Zhizhen He",
"author_login": "hezhizhen",
"committed_at": "2023-05-01T13:39:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "76c13996efde4e7cb308964b79e8fdd8d33482a9",
"body": null,
"is_bot": false,
"headline": "feat: unmarshal response in Prometheus format (#75)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2023-04-27T07:10:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0bc841d99b75827452390bd8a2b8e3b69bd8ea16",
"body": "* feat: support instant promql\r\n\r\n* feat: promql request\r\n\r\n* refactor: use interface for query\r\n\r\n* chore: use struct instead of pointer",
"is_bot": false,
"headline": "feat: support instant promql (#74)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2023-04-26T13:28:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "877b71c6964344e50418c08df0f4428226099fd8",
"body": null,
"is_bot": false,
"headline": "chore: rename Addr to Host in Config (#73)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2023-04-24T02:11:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "367cdb66dec538a75d6f97ca5c925cc437550363",
"body": null,
"is_bot": false,
"headline": "doc: Example (#72)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2023-04-20T08:13:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9f62c5f877461815a2fc93c8fc8837eac8ec2746",
"body": null,
"is_bot": false,
"headline": "docs: Example in doc_test (#71)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2023-04-20T03:54:29Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c175a0fc55e838b24b10e3e5850ade40f0855ad2",
"body": null,
"is_bot": false,
"headline": "docs: update readme (#70)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2023-04-19T09:36:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "600f4fb69aee1fc375390081104e7aef64df2594",
"body": null,
"is_bot": false,
"headline": "test: cover more cases (#69)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2023-04-19T09:06:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "85d0248339a10bac9b3323e393de4b00a8602358",
"body": null,
"is_bot": false,
"headline": "feat: copyright (#68)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2023-04-19T07:57:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5d5fd3e30cb552d7e09329557272eecee8404ec6",
"body": null,
"is_bot": false,
"headline": "feat: helper function to constrain column type (#67)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2023-04-19T07:48:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bec100f36fb76b31fe029e42144e4337ee48745b",
"body": "* chore: upgrade dependencies\r\n\r\n* doc: example\r\n\r\n* feat: helper GetXxx method\r\n\r\n* doc: readme and Example output",
"is_bot": false,
"headline": "feat: Helper get function for series (#66)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2023-04-19T04:03:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0b1706b93f0b390ab2512427ce5635dceb30fc9d",
"body": null,
"is_bot": false,
"headline": "fix: remove useless Print (#65)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2023-04-18T11:48:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5e843bcc77b0365e60c579aecf622f0f10ba5f99",
"body": "* docs: godoc\r\n\r\n* doc: Example in doc_test",
"is_bot": false,
"headline": "docs: Documentation (#64)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2023-04-18T11:43:36Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c8c4cf22ab9e75e28e7a4fc1a1d4132f5fc1f9ad",
"body": "* refactor: remove sql package\r\n\r\n* docs: readme\r\n\r\n* refactor: hide mask struct",
"is_bot": false,
"headline": "refactor: remove sql package (#62)",
"author_name": "yuanbohan",
"author_login": "yuanbohan",
"committed_at": "2023-04-18T03:59:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9ae3a89eb7b1634ae6ca316f907ee80bba734add",
"body": "Bumps [github.com/docker/docker](https://github.com/docker/docker) from 20.10.7+incompatible to 20.10.24+incompatible.\r\n- [Release notes](https://github.com/docker/docker/releases)\r\n- [Commits](https://github.com/docker/docker/compare/v20.10.7...v20.10.24)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency\n[…]\n: github.com/docker/docker\r\n dependency-type: indirect\r\n...\r\n\r\nSigned-off-by: dependabot[bot] <support@github.com>\r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "build(deps): bump github.com/docker/docker (#60)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2023-04-10T07:33:03Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "3da5f2ffb0c1c1040024d0193c0ba29a30930051",
"body": "…(#58)\n\nBumps [github.com/opencontainers/runc](https://github.com/opencontainers/runc) from 1.1.2 to 1.1.5.\r\n- [Release notes](https://github.com/opencontainers/runc/releases)\r\n- [Changelog](https://github.com/opencontainers/runc/blob/v1.1.5/CHANGELOG.md)\r\n- [Commits](https://github.com/opencontaine\n[…]\nub.com/opencontainers/runc\r\n dependency-type: indirect\r\n...\r\n\r\nSigned-off-by: dependabot[bot] <support@github.com>\r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "build(deps): bump github.com/opencontainers/runc from 1.1.2 to 1.1.5 …",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2023-04-10T07:31:16Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "09137ce658a2885256b3f71beba5f780e11dc030",
"body": "* feat: add function to reach tags for Series\r\n\r\n* test: unit tests",
"is_bot": false,
"headline": "feat: add function to reach tags for Series (#59)",
"author_name": "Bohan Wu",
"author_login": "vinland-avalon",
"committed_at": "2023-04-03T06:06:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d9bbc8425ff78f0fd656b6d3de74f294894e698c",
"body": "* feat: health check\r\n\r\n* fix: query with empty data, deal with EOF",
"is_bot": false,
"headline": "fix: deal with empty data and EOF (#57)",
"author_name": "Bohan Wu",
"author_login": "vinland-avalon",
"committed_at": "2023-03-29T08:06:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "98fdbcbb2774256c66231d35a87ccddfd16c4d1c",
"body": "* feat: health check\r\n\r\n* feat: dbname rather than catalog+schema",
"is_bot": false,
"headline": "refactor: dbname (#56)",
"author_name": "Bohan Wu",
"author_login": "vinland-avalon",
"committed_at": "2023-03-29T06:05:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4180309badd187e9abeece59e29418258724cbee",
"body": "* feat: default catalog and database\r\n\r\n* test: add unittests\r\n\r\n* refactor: build header with config",
"is_bot": false,
"headline": "feat: default catalog and database (#53)",
"author_name": "Bohan Wu",
"author_login": "vinland-avalon",
"committed_at": "2023-03-27T02:27:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6e0e88934b1cc700e19cba95fa81730d0522fc20",
"body": "* refactor: unary call for Insert\r\n\r\n* feat: stream client with Send() and CloseAndRecv()\r\n\r\n* doc: README.md",
"is_bot": false,
"headline": "refactor: unary calls and stream calls (#52)",
"author_name": "Bohan Wu",
"author_login": "vinland-avalon",
"committed_at": "2023-03-24T08:11:54Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d4d913197484d6fd99294368e2bc1857c297dc5c",
"body": "* feat: auth by username and password\r\n\r\n* test: add unittests\r\n\r\n* feat: support PromQL\r\n\r\n* chore: CR\r\n\r\n* doc: README.md\r\n\r\n* doc: README.md",
"is_bot": false,
"headline": "feat: verify basic workflow in QA env (#49)",
"author_name": "Bohan Wu",
"author_login": "vinland-avalon",
"committed_at": "2023-03-24T02:45:10Z",
"body_truncated": false,
"is_coding_agent": false
}
],
"releases_count": 18,
"commits_last_year": 14,
"latest_release_at": "2026-07-20T12:09:08Z",
"latest_release_tag": "v0.7.4",
"releases_from_tags": false,
"days_since_last_push": 4,
"active_weeks_last_year": 6,
"days_since_latest_release": 8,
"mean_days_between_releases": 71.8
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": true,
"has_contributing": false,
"health_percentage": 75,
"has_issue_template": false,
"has_code_of_conduct": true,
"has_pull_request_template": true
},
"ecosystem": {
"packages": [
{
"name": "github.com/GreptimeTeam/greptimedb-ingester-go",
"exists": true,
"license": null,
"keywords": [],
"ecosystem": "go",
"matches_repo": true,
"registry_url": "https://pkg.go.dev/github.com/GreptimeTeam/greptimedb-ingester-go",
"is_deprecated": false,
"latest_version": "v0.7.4",
"repository_url": "https://github.com/GreptimeTeam/greptimedb-ingester-go",
"versions_count": 18,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": null,
"latest_published_at": "2026-07-20T12:07:25Z",
"latest_version_yanked": null,
"days_since_latest_publish": 8
}
]
},
"popularity": {
"forks": 7,
"stars": 16,
"watchers": 6,
"fork_history": {
"days": [
{
"date": "2024-03-13",
"count": 1
},
{
"date": "2024-04-09",
"count": 1
},
{
"date": "2024-08-14",
"count": 1
},
{
"date": "2024-08-20",
"count": 1
},
{
"date": "2024-09-06",
"count": 1
},
{
"date": "2025-12-02",
"count": 1
},
{
"date": "2026-04-27",
"count": 1
}
],
"complete": true,
"collected": 7,
"total_forks": 7
},
"star_history": null,
"open_issues_and_prs": 6
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [
"examples"
],
"has_llms_txt": false,
"has_dockerfile": false,
"has_mcp_signal": false,
"bootstrap_files": [
"Makefile"
],
"api_schema_files": [],
"has_devcontainer": false,
"typecheck_configs": [],
"toolchain_manifests": [
"examples/opentelemetry/go.mod",
"go.mod"
],
"largest_source_bytes": 60601,
"source_files_sampled": 45,
"oversized_source_files": 1,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"dependencies": {
"manifests": [
"go.mod"
],
"advisories": {
"error": null,
"scope": "repository_graph",
"source": "osv",
"findings": [
{
"name": "google.golang.org/grpc",
"direct": true,
"version": "v1.66.2",
"severity": "critical",
"ecosystem": "go",
"cvss_score": 9.1,
"advisory_ids": [
"GHSA-hrxh-6v49-42gf",
"GHSA-p77j-4mvh-x3m3",
"GO-2026-4762",
"GO-2026-6061"
],
"fixed_version": "1.82.1",
"advisory_count": 4,
"oldest_advisory_days": 132
},
{
"name": "google.golang.org/grpc",
"direct": true,
"version": "v1.70.0",
"severity": "critical",
"ecosystem": "go",
"cvss_score": 9.1,
"advisory_ids": [
"GHSA-hrxh-6v49-42gf",
"GHSA-p77j-4mvh-x3m3",
"GO-2026-4762",
"GO-2026-6061"
],
"fixed_version": "1.82.1",
"advisory_count": 4,
"oldest_advisory_days": 132
},
{
"name": "github.com/docker/cli",
"direct": false,
"version": "v28.0.1+incompatible",
"severity": "high",
"ecosystem": "go",
"cvss_score": null,
"advisory_ids": [
"GHSA-p436-gjf2-799p",
"GO-2026-4610"
],
"fixed_version": "29.2.0+incompatible",
"advisory_count": 2,
"oldest_advisory_days": 146
},
{
"name": "github.com/docker/docker",
"direct": false,
"version": "v28.0.1+incompatible",
"severity": "high",
"ecosystem": "go",
"cvss_score": 8.8,
"advisory_ids": [
"GHSA-pxq6-2prw-chj9",
"GHSA-rg2x-37c3-w2rh",
"GHSA-vp62-88p7-qqf5",
"GHSA-x744-4wpc-v9h2",
"GHSA-x86f-5xw2-fm2r",
"GO-2026-4883",
"GO-2026-4887",
"GO-2026-5617",
"GO-2026-5668",
"GO-2026-5746"
],
"fixed_version": "29.3.1",
"advisory_count": 10,
"oldest_advisory_days": 123
},
{
"name": "go.opentelemetry.io/otel",
"direct": false,
"version": "v1.38.0",
"severity": "high",
"ecosystem": "go",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-mh2q-q3fh-2475",
"GO-2026-5506"
],
"fixed_version": "1.41.0",
"advisory_count": 2,
"oldest_advisory_days": 112
},
{
"name": "go.opentelemetry.io/otel/sdk",
"direct": false,
"version": "v1.30.0",
"severity": "high",
"ecosystem": "go",
"cvss_score": 7,
"advisory_ids": [
"GHSA-9h8m-3fm2-qjrq",
"GHSA-hfvc-g4fc-pqhx",
"GO-2026-4394",
"GO-2026-5426"
],
"fixed_version": "1.43.0",
"advisory_count": 4,
"oldest_advisory_days": 176
},
{
"name": "github.com/go-viper/mapstructure/v2",
"direct": false,
"version": "v2.2.1",
"severity": "moderate",
"ecosystem": "go",
"cvss_score": 5.3,
"advisory_ids": [
"GHSA-2464-8j7c-4cjm",
"GHSA-fv92-fjc5-jj9h",
"GO-2025-3787",
"GO-2025-3900"
],
"fixed_version": "2.4.0",
"advisory_count": 4,
"oldest_advisory_days": 396
},
{
"name": "filippo.io/edwards25519",
"direct": false,
"version": "v1.1.0",
"severity": "low",
"ecosystem": "go",
"cvss_score": 3.7,
"advisory_ids": [
"GHSA-fw7p-63qq-7hpr",
"GO-2026-4503"
],
"fixed_version": "1.1.1",
"advisory_count": 2,
"oldest_advisory_days": 161
},
{
"name": "github.com/klauspost/compress",
"direct": false,
"version": "v1.17.9",
"severity": "unknown",
"ecosystem": "go",
"cvss_score": null,
"advisory_ids": [
"GO-2026-5841"
],
"fixed_version": "1.18.7",
"advisory_count": 1,
"oldest_advisory_days": 1
},
{
"name": "golang.org/x/net",
"direct": false,
"version": "v0.55.0",
"severity": "unknown",
"ecosystem": "go",
"cvss_score": null,
"advisory_ids": [
"GO-2026-5942"
],
"fixed_version": "0.56.0",
"advisory_count": 1,
"oldest_advisory_days": 14
},
{
"name": "golang.org/x/text",
"direct": false,
"version": "v0.37.0",
"severity": "unknown",
"ecosystem": "go",
"cvss_score": null,
"advisory_ids": [
"GO-2026-5970"
],
"fixed_version": "0.39.0",
"advisory_count": 1,
"oldest_advisory_days": 14
}
],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {
"low": 1,
"high": 4,
"unknown": 3,
"critical": 2,
"moderate": 1
},
"advisory_count": 35,
"affected_count": 11,
"assessed_count": 90,
"malicious_count": 0,
"assessed_package": null,
"unassessed_count": 0,
"direct_affected_count": 2
},
"ecosystems": [
"go"
],
"dependencies": [
{
"name": "github.com/GreptimeTeam/greptime-proto",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.15.0"
},
{
"name": "github.com/stoewer/go-strcase",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.3.0"
},
{
"name": "github.com/stretchr/testify",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.11.1"
},
{
"name": "go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.59.0"
},
{
"name": "go.opentelemetry.io/otel/metric",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.38.0"
},
{
"name": "go.opentelemetry.io/otel/trace",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.38.0"
},
{
"name": "google.golang.org/grpc",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.70.0"
},
{
"name": "gorm.io/driver/mysql",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.5.7"
},
{
"name": "gorm.io/gorm",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.25.12"
},
{
"name": "github.com/ory/dockertest/v3",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v3.12.0"
},
{
"name": "github.com/apache/arrow/go/v17",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v17.0.0"
}
],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "github.com/apache/arrow/go/v17",
"direct": true,
"version": "v17.0.0",
"ecosystem": "go"
},
{
"name": "github.com/greptimeteam/greptime-proto",
"direct": true,
"version": "v0.15.0",
"ecosystem": "go"
},
{
"name": "github.com/greptimeteam/greptime-proto",
"direct": true,
"version": "v0.7.0",
"ecosystem": "go"
},
{
"name": "github.com/ory/dockertest/v3",
"direct": true,
"version": "v3.12.0",
"ecosystem": "go"
},
{
"name": "github.com/stoewer/go-strcase",
"direct": true,
"version": "v1.3.0",
"ecosystem": "go"
},
{
"name": "github.com/stretchr/testify",
"direct": true,
"version": "v1.11.1",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc",
"direct": true,
"version": "v0.48.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc",
"direct": true,
"version": "v0.59.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/metric",
"direct": true,
"version": "v1.30.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/metric",
"direct": true,
"version": "v1.38.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/trace",
"direct": true,
"version": "v1.30.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/trace",
"direct": true,
"version": "v1.38.0",
"ecosystem": "go"
},
{
"name": "google.golang.org/grpc",
"direct": true,
"version": "v1.66.2",
"ecosystem": "go"
},
{
"name": "google.golang.org/grpc",
"direct": true,
"version": "v1.70.0",
"ecosystem": "go"
},
{
"name": "gorm.io/driver/mysql",
"direct": true,
"version": "v1.5.7",
"ecosystem": "go"
},
{
"name": "gorm.io/gorm",
"direct": true,
"version": "v1.25.12",
"ecosystem": "go"
},
{
"name": "dario.cat/mergo",
"direct": false,
"version": "v1.0.1",
"ecosystem": "go"
},
{
"name": "filippo.io/edwards25519",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/azure/go-ansiterm",
"direct": false,
"version": "v0.0.0-20250102033503-faa5f7b0171c",
"ecosystem": "go"
},
{
"name": "github.com/beorn7/perks",
"direct": false,
"version": "v1.0.1",
"ecosystem": "go"
},
{
"name": "github.com/cenkalti/backoff/v4",
"direct": false,
"version": "v4.3.0",
"ecosystem": "go"
},
{
"name": "github.com/cespare/xxhash/v2",
"direct": false,
"version": "v2.3.0",
"ecosystem": "go"
},
{
"name": "github.com/containerd/continuity",
"direct": false,
"version": "v0.4.5",
"ecosystem": "go"
},
{
"name": "github.com/davecgh/go-spew",
"direct": false,
"version": "v1.1.1",
"ecosystem": "go"
},
{
"name": "github.com/docker/cli",
"direct": false,
"version": "v28.0.1+incompatible",
"ecosystem": "go"
},
{
"name": "github.com/docker/docker",
"direct": false,
"version": "v28.0.1+incompatible",
"ecosystem": "go"
},
{
"name": "github.com/docker/go-connections",
"direct": false,
"version": "v0.5.0",
"ecosystem": "go"
},
{
"name": "github.com/docker/go-units",
"direct": false,
"version": "v0.5.0",
"ecosystem": "go"
},
{
"name": "github.com/go-logr/logr",
"direct": false,
"version": "v1.4.2",
"ecosystem": "go"
},
{
"name": "github.com/go-logr/logr",
"direct": false,
"version": "v1.4.3",
"ecosystem": "go"
},
{
"name": "github.com/go-logr/stdr",
"direct": false,
"version": "v1.2.2",
"ecosystem": "go"
},
{
"name": "github.com/go-sql-driver/mysql",
"direct": false,
"version": "v1.9.0",
"ecosystem": "go"
},
{
"name": "github.com/go-viper/mapstructure/v2",
"direct": false,
"version": "v2.2.1",
"ecosystem": "go"
},
{
"name": "github.com/goccy/go-json",
"direct": false,
"version": "v0.10.3",
"ecosystem": "go"
},
{
"name": "github.com/gogo/protobuf",
"direct": false,
"version": "v1.3.2",
"ecosystem": "go"
},
{
"name": "github.com/google/flatbuffers",
"direct": false,
"version": "v24.3.25+incompatible",
"ecosystem": "go"
},
{
"name": "github.com/google/shlex",
"direct": false,
"version": "v0.0.0-20191202100458-e7afc7fbc510",
"ecosystem": "go"
},
{
"name": "github.com/google/uuid",
"direct": false,
"version": "v1.6.0",
"ecosystem": "go"
},
{
"name": "github.com/greptimeteam/greptimedb-ingester-go",
"direct": false,
"version": "v0.5.3-0.20240918162118-d3f1530a9887",
"ecosystem": "go"
},
{
"name": "github.com/grpc-ecosystem/grpc-gateway/v2",
"direct": false,
"version": "v2.22.0",
"ecosystem": "go"
},
{
"name": "github.com/jinzhu/inflection",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/jinzhu/now",
"direct": false,
"version": "v1.1.5",
"ecosystem": "go"
},
{
"name": "github.com/klauspost/compress",
"direct": false,
"version": "v1.17.9",
"ecosystem": "go"
},
{
"name": "github.com/klauspost/cpuid/v2",
"direct": false,
"version": "v2.2.8",
"ecosystem": "go"
},
{
"name": "github.com/microsoft/go-winio",
"direct": false,
"version": "v0.6.2",
"ecosystem": "go"
},
{
"name": "github.com/moby/docker-image-spec",
"direct": false,
"version": "v1.3.1",
"ecosystem": "go"
},
{
"name": "github.com/moby/sys/user",
"direct": false,
"version": "v0.3.0",
"ecosystem": "go"
},
{
"name": "github.com/moby/term",
"direct": false,
"version": "v0.5.2",
"ecosystem": "go"
},
{
"name": "github.com/munnerz/goautoneg",
"direct": false,
"version": "v0.0.0-20191010083416-a7dc8b61c822",
"ecosystem": "go"
},
{
"name": "github.com/nvveen/gotty",
"direct": false,
"version": "v0.0.0-20120604004816-cd527374f1e5",
"ecosystem": "go"
},
{
"name": "github.com/opencontainers/go-digest",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/opencontainers/image-spec",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/opencontainers/runc",
"direct": false,
"version": "v1.3.6",
"ecosystem": "go"
},
{
"name": "github.com/pierrec/lz4/v4",
"direct": false,
"version": "v4.1.21",
"ecosystem": "go"
},
{
"name": "github.com/pkg/errors",
"direct": false,
"version": "v0.9.1",
"ecosystem": "go"
},
{
"name": "github.com/pmezard/go-difflib",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/prometheus/client_golang",
"direct": false,
"version": "v1.20.4",
"ecosystem": "go"
},
{
"name": "github.com/prometheus/client_model",
"direct": false,
"version": "v0.6.1",
"ecosystem": "go"
},
{
"name": "github.com/prometheus/common",
"direct": false,
"version": "v0.59.1",
"ecosystem": "go"
},
{
"name": "github.com/prometheus/procfs",
"direct": false,
"version": "v0.15.1",
"ecosystem": "go"
},
{
"name": "github.com/sirupsen/logrus",
"direct": false,
"version": "v1.9.3",
"ecosystem": "go"
},
{
"name": "github.com/xeipuuv/gojsonpointer",
"direct": false,
"version": "v0.0.0-20190905194746-02993c407bfb",
"ecosystem": "go"
},
{
"name": "github.com/xeipuuv/gojsonreference",
"direct": false,
"version": "v0.0.0-20180127040603-bd5ef7bd5415",
"ecosystem": "go"
},
{
"name": "github.com/xeipuuv/gojsonschema",
"direct": false,
"version": "v1.2.0",
"ecosystem": "go"
},
{
"name": "github.com/zeebo/xxh3",
"direct": false,
"version": "v1.0.2",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/auto/sdk",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel",
"direct": false,
"version": "v1.30.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel",
"direct": false,
"version": "v1.38.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc",
"direct": false,
"version": "v1.30.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/exporters/otlp/otlptrace",
"direct": false,
"version": "v1.30.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc",
"direct": false,
"version": "v1.30.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/exporters/prometheus",
"direct": false,
"version": "v0.52.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/sdk",
"direct": false,
"version": "v1.30.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/sdk/metric",
"direct": false,
"version": "v1.30.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/proto/otlp",
"direct": false,
"version": "v1.3.1",
"ecosystem": "go"
},
{
"name": "golang.org/x/exp",
"direct": false,
"version": "v0.0.0-20240222234643-814bf88cf225",
"ecosystem": "go"
},
{
"name": "golang.org/x/mod",
"direct": false,
"version": "v0.35.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/net",
"direct": false,
"version": "v0.55.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/sync",
"direct": false,
"version": "v0.20.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/sys",
"direct": false,
"version": "v0.45.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/telemetry",
"direct": false,
"version": "v0.0.0-20260409153401-be6f6cb8b1fa",
"ecosystem": "go"
},
{
"name": "golang.org/x/text",
"direct": false,
"version": "v0.37.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/tools",
"direct": false,
"version": "v0.44.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/xerrors",
"direct": false,
"version": "v0.0.0-20231012003039-104605ab7028",
"ecosystem": "go"
},
{
"name": "google.golang.org/genproto/googleapis/api",
"direct": false,
"version": "v0.0.0-20240903143218-8af14fe29dc1",
"ecosystem": "go"
},
{
"name": "google.golang.org/genproto/googleapis/rpc",
"direct": false,
"version": "v0.0.0-20240903143218-8af14fe29dc1",
"ecosystem": "go"
},
{
"name": "google.golang.org/genproto/googleapis/rpc",
"direct": false,
"version": "v0.0.0-20250227231956-55c901821b1e",
"ecosystem": "go"
},
{
"name": "google.golang.org/protobuf",
"direct": false,
"version": "v1.34.2",
"ecosystem": "go"
},
{
"name": "google.golang.org/protobuf",
"direct": false,
"version": "v1.36.5",
"ecosystem": "go"
},
{
"name": "gopkg.in/yaml.v3",
"direct": false,
"version": "v3.0.1",
"ecosystem": "go"
}
],
"collected": true,
"truncated": false,
"total_count": 90,
"direct_count": 16,
"indirect_count": 74
}
},
"maintainership": {
"issues": {
"open_prs": 2,
"merged_prs": 64,
"open_issues": 4,
"closed_ratio": 0.846,
"closed_issues": 22,
"closed_unmerged_prs": 25
},
"bus_factor": 2,
"bot_contributors": 1,
"top_contributors": [
{
"type": "User",
"login": "yuanbohan",
"commits": 54,
"avatar_url": "https://avatars.githubusercontent.com/u/4557527?v=4"
},
{
"type": "User",
"login": "vinland-avalon",
"commits": 28,
"avatar_url": "https://avatars.githubusercontent.com/u/79818743?v=4"
},
{
"type": "User",
"login": "daviderli614",
"commits": 24,
"avatar_url": "https://avatars.githubusercontent.com/u/64472425?v=4"
},
{
"type": "User",
"login": "killme2008",
"commits": 6,
"avatar_url": "https://avatars.githubusercontent.com/u/14142?v=4"
},
{
"type": "User",
"login": "JetSquirrel",
"commits": 3,
"avatar_url": "https://avatars.githubusercontent.com/u/20291255?v=4"
},
{
"type": "User",
"login": "evenyag",
"commits": 1,
"avatar_url": "https://avatars.githubusercontent.com/u/7058520?v=4"
},
{
"type": "User",
"login": "nicecui",
"commits": 1,
"avatar_url": "https://avatars.githubusercontent.com/u/10130959?v=4"
},
{
"type": "User",
"login": "hezhizhen",
"commits": 1,
"avatar_url": "https://avatars.githubusercontent.com/u/7611700?v=4"
},
{
"type": "User",
"login": "haoqixu",
"commits": 1,
"avatar_url": "https://avatars.githubusercontent.com/u/9400582?v=4"
},
{
"type": "User",
"login": "cure1024",
"commits": 1,
"avatar_url": "https://avatars.githubusercontent.com/u/85940882?v=4"
}
],
"contributors_sampled": 10,
"top_contributor_share": 0.45
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"ci.yaml",
"license.yaml",
"lint.yaml",
"pr-labeling.yaml",
"pr-title-checker.yaml"
],
"has_docs_dir": false,
"linter_configs": [
".golangci.yaml"
],
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [
"go.sum"
],
"scorecard": {
"checks": [
{
"name": "Binary-Artifacts",
"score": 10,
"reason": "no binaries found in the repo",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
},
{
"name": "Branch-Protection",
"score": null,
"reason": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
},
{
"name": "CI-Tests",
"score": 6,
"reason": "19 out of 30 merged PRs checked by a CI test -- score normalized to 6",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
},
{
"name": "CII-Best-Practices",
"score": 0,
"reason": "no effort to earn an OpenSSF best practices badge detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
},
{
"name": "Code-Review",
"score": 10,
"reason": "all changesets reviewed",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
},
{
"name": "Contributors",
"score": 10,
"reason": "project has 3 contributing companies or organizations -- score normalized to 10",
"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": 6,
"reason": "8 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 6",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
},
{
"name": "Packaging",
"score": null,
"reason": "packaging workflow not detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
},
{
"name": "Pinned-Dependencies",
"score": 0,
"reason": "dependency not pinned by hash detected -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
},
{
"name": "SAST",
"score": 0,
"reason": "SAST tool is not run on all commits -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
},
{
"name": "Security-Policy",
"score": 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": 0,
"reason": "detected GitHub workflow tokens with excessive permissions",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
},
{
"name": "Vulnerabilities",
"score": 0,
"reason": "17 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "2633aebd7c64ce3c8cf7a088f62f9bfc99510647",
"ran_at": "2026-07-29T03:32:49Z",
"aggregate_score": 5.1,
"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-25T00:36:00Z",
"oldest_open_prs": [
{
"number": 116,
"created_at": "2026-07-24T22:53:21Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 117,
"created_at": "2026-07-25T00:35:59Z",
"last_comment_at": null,
"last_comment_author": null
}
],
"last_merged_pr_at": "2026-07-20T12:07:25Z",
"ci_last_conclusion": "SUCCESS",
"oldest_open_issues": [
{
"number": 13,
"created_at": "2024-02-02T09:28:23Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 25,
"created_at": "2024-02-27T08:02:38Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 43,
"created_at": "2024-09-10T03:20:49Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 95,
"created_at": "2025-12-11T06:05:16Z",
"last_comment_at": null,
"last_comment_author": null
}
]
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/GreptimeTeam/greptimedb-ingester-go",
"host": "github.com",
"name": "greptimedb-ingester-go",
"owner": "GreptimeTeam"
},
"metrics": {
"overall": {
"key": "overall",
"band": "good",
"name": "Overall health",
"note": "The weighted overall 63 is calibrated to 71 on the published index scale (record calibration 2026-08-02).",
"notes": [
{
"code": "overall_calibration",
"params": {
"raw": 63,
"calibrated": 71,
"calibration": "2026-08-02"
}
}
],
"value": 71,
"inputs": {
"security": 50,
"vitality": 71,
"community": 50,
"governance": 76,
"calibration": "2026-08-02",
"engineering": 62,
"ai_readiness": 66,
"weighted_overall_raw": 63
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "good",
"name": "Vitality",
"value": 71,
"weight": 0.21,
"metrics": [
{
"key": "development_activity",
"band": "moderate",
"name": "Development activity",
"note": null,
"notes": [],
"value": 57,
"inputs": {
"commits_last_year": 14,
"human_commit_share": 0.85,
"days_since_last_push": 4,
"active_weeks_last_year": 6
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 4 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "push_recency",
"params": {
"days": 4
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "6/52 weeks with commits",
"points": 4.2,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 6
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "14 commits in the last year",
"points": 10.6,
"status": "partial",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 14
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "8 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 6",
"points": 6,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "release_discipline",
"band": "excellent",
"name": "Release discipline",
"note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"openssf_scorecard_signed_releases"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 92,
"inputs": {
"releases_count": 18,
"latest_release_tag": "v0.7.4",
"releases_from_tags": false,
"days_since_latest_release": 8,
"mean_days_between_releases": 71.8
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "18 releases published",
"points": 27,
"status": "met",
"details": [
{
"code": "releases_published",
"params": {
"count": 18
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 8 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 8
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~71.8 days",
"points": 19.8,
"status": "partial",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 71.8
}
}
],
"max_points": 27
},
{
"key": "openssf_scorecard_signed_releases",
"name": "OpenSSF Scorecard: Signed-Releases",
"detail": "no releases found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 10
}
]
},
{
"key": "abandonment",
"band": "exceptional",
"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": 13,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "last human commit 13 days ago",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_maintained",
"params": {
"days": 13
}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "moderate",
"name": "Community & Adoption",
"value": 50,
"weight": 0.17,
"metrics": [
{
"key": "popularity",
"band": "at_risk",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 30,
"inputs": {
"forks": 7,
"stars": 16,
"watchers": 6,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "16 stars",
"points": 19.1,
"status": "partial",
"details": [
{
"code": "stars",
"params": {
"count": 16
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "7 forks",
"points": 6.5,
"status": "partial",
"details": [
{
"code": "forks",
"params": {
"count": 7
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "6 watchers",
"points": 3.9,
"status": "partial",
"details": [
{
"code": "watchers",
"params": {
"count": 6
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "good",
"name": "Community health",
"note": null,
"notes": [],
"value": 72,
"inputs": {
"has_readme": true,
"has_license": true,
"readme_badges": null,
"has_contributing": false,
"has_issue_template": false,
"has_code_of_conduct": true,
"readme_badge_services": [],
"has_pull_request_template": true
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 22.5,
"status": "met",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "recognized license (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": 0,
"status": "missed",
"details": [],
"max_points": 18
},
{
"key": "code_of_conduct",
"name": "Code of conduct",
"detail": null,
"points": 13.5,
"status": "met",
"details": [],
"max_points": 13.5
},
{
"key": "issue_template",
"name": "Issue template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.2
},
{
"key": "pr_template",
"name": "PR template",
"detail": null,
"points": 6.3,
"status": "met",
"details": [],
"max_points": 6.3
}
]
}
],
"description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
},
{
"key": "governance",
"band": "good",
"name": "Sustainability & Governance",
"value": 76,
"weight": 0.23,
"metrics": [
{
"key": "maintainer_resilience",
"band": "moderate",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 61,
"inputs": {
"bus_factor": 2,
"contributors_sampled": 10,
"top_contributor_share": 0.45
},
"components": [
{
"key": "bus_factor",
"name": "Bus factor",
"detail": "2 contributor(s) cover half of all commits",
"points": 25.2,
"status": "partial",
"details": [
{
"code": "bus_factor",
"params": {
"count": 2
}
}
],
"max_points": 54
},
{
"key": "commit_distribution",
"name": "Commit distribution",
"detail": "top contributor authored 45% of commits",
"points": 12.4,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 45
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "10 contributors",
"points": 13.5,
"status": "met",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 10
}
}
],
"max_points": 13.5
},
{
"key": "openssf_scorecard_contributors",
"name": "OpenSSF Scorecard: Contributors",
"detail": "project has 3 contributing companies or organizations -- score normalized to 10",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "responsiveness",
"band": "excellent",
"name": "Issue & PR responsiveness",
"note": "Excluded from scoring (no data or not applicable): Newcomer PR acceptance. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"newcomer_pr_acceptance"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 83,
"inputs": {
"merged_prs": 64,
"open_issues": 4,
"closed_issues": 22,
"prs_merged_7d": null,
"prs_decided_7d": null,
"prs_merged_30d": null,
"prs_decided_30d": null,
"issue_closed_ratio": 0.846,
"closed_unmerged_prs": 25,
"first_time_authors_30d": null,
"first_time_prs_merged_30d": null,
"first_time_prs_decided_30d": null
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "85% of issues closed",
"points": 35.5,
"status": "partial",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 85
}
}
],
"max_points": 42
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "64/89 decided PRs merged",
"points": 21.6,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 64,
"decided": 89
}
}
],
"max_points": 30
},
{
"key": "newcomer_pr_acceptance",
"name": "Newcomer PR acceptance",
"detail": "no first-time contributor's PR decided in 30d",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_newcomer_prs",
"params": {
"days": 30
}
}
],
"max_points": 13
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "all changesets reviewed",
"points": 15,
"status": "met",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "good",
"name": "Ownership & stewardship",
"note": null,
"notes": [],
"value": 69,
"inputs": {
"followers": 294,
"owner_type": "Organization",
"is_verified": null,
"owner_login": "GreptimeTeam",
"public_repos": 84,
"account_age_days": 1569
},
"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": "294 followers of GreptimeTeam",
"points": 17.8,
"status": "partial",
"details": [
{
"code": "owner_followers",
"params": {
"count": 294,
"login": "GreptimeTeam"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "84 public repos, account ~4 yr old",
"points": 21.6,
"status": "partial",
"details": [
{
"code": "public_repos",
"params": {
"count": 84
}
},
{
"code": "account_age_years",
"params": {
"years": 4
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "exceptional",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"github.com/GreptimeTeam/greptimedb-ingester-go"
],
"ecosystems": "go",
"any_deprecated": false,
"min_days_since_publish": 8
},
"components": [
{
"key": "published_resolvable",
"name": "Published & resolvable",
"detail": "1 package(s) on go",
"points": 25,
"status": "met",
"details": [
{
"code": "packages_published",
"params": {
"count": 1,
"ecosystems": "go"
}
}
],
"max_points": 25
},
{
"key": "publish_recency",
"name": "Publish recency",
"detail": "latest publish 8 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 8
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "18 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 18
}
}
],
"max_points": 20
},
{
"key": "not_deprecated",
"name": "Not deprecated",
"detail": "active, not deprecated or yanked",
"points": 20,
"status": "met",
"details": [
{
"code": "package_not_deprecated",
"params": {}
}
],
"max_points": 20
}
]
}
],
"description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
},
{
"key": "engineering",
"band": "moderate",
"name": "Engineering Quality",
"value": 62,
"weight": 0.19,
"metrics": [
{
"key": "engineering_practices",
"band": "good",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 76,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "5 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 5
}
}
],
"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": ".golangci.yaml",
"points": 16,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": ".golangci.yaml"
}
}
],
"max_points": 16
},
{
"key": "pre_commit_hooks",
"name": "Pre-commit hooks",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 9.6
},
{
"key": "editorconfig",
"name": ".editorconfig",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 6.4
},
{
"key": "openssf_scorecard_ci_tests",
"name": "OpenSSF Scorecard: CI-Tests",
"detail": "19 out of 30 merged PRs checked by a CI test -- score normalized to 6",
"points": 12,
"status": "partial",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "weak",
"name": "Documentation",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"topics": [],
"has_wiki": false,
"homepage": null,
"has_readme": true,
"has_docs_dir": false,
"has_description": true
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 30,
"status": "met",
"details": [],
"max_points": 30
},
{
"key": "documentation_directory",
"name": "Documentation directory",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 25
},
{
"key": "documentation_homepage_site",
"name": "Documentation / homepage site",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "repository_description",
"name": "Repository description",
"detail": null,
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "topics",
"name": "Topics",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
},
{
"key": "wiki",
"name": "Wiki",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
}
],
"description": "Are baseline engineering and documentation practices in place?"
},
{
"key": "security",
"band": "moderate",
"name": "Security",
"value": 50,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "moderate",
"name": "Security posture",
"note": "Excluded from scoring (no data or not applicable): Branch-Protection, Packaging, Signed-Releases. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"branch_protection",
"packaging",
"signed_releases"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 51,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 15,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 3,
"scorecard_aggregate": 5.1
},
"components": [
{
"key": "binary_artifacts",
"name": "Binary-Artifacts",
"detail": "no binaries found in the repo",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "branch_protection",
"name": "Branch-Protection",
"detail": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "19 out of 30 merged PRs checked by a CI test -- score normalized to 6",
"points": 1.5,
"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": "all changesets reviewed",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 3 contributing companies or organizations -- score normalized to 10",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "dangerous_workflow",
"name": "Dangerous-Workflow",
"detail": "no dangerous workflow patterns detected",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "dependency_update_tool",
"name": "Dependency-Update-Tool",
"detail": "update tool detected",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "fuzzing",
"name": "Fuzzing",
"detail": "project is not fuzzed",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "license",
"name": "License",
"detail": "license file detected",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "maintained",
"name": "Maintained",
"detail": "8 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 6",
"points": 4.5,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "packaging",
"name": "Packaging",
"detail": "packaging workflow not detected",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 5
},
{
"key": "pinned_dependencies",
"name": "Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "sast",
"name": "SAST",
"detail": "SAST tool is not run on all commits -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "security_policy",
"name": "Security-Policy",
"detail": "security policy file 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": "detected GitHub workflow tokens with excessive permissions",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "vulnerabilities",
"name": "Vulnerabilities",
"detail": "17 existing vulnerabilities detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "dependency_advisories",
"band": "weak",
"name": "Dependency advisories",
"note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories. Remaining weights renormalized. Matched 90 resolved dependencies against OSV. 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"
]
}
},
{
"code": "weights_renormalized",
"params": {}
},
{
"code": "advisories_scope_repository",
"params": {
"assessed": 90
}
},
{
"code": "advisories_repo_graph_caveat",
"params": {}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 47,
"inputs": {
"source": "osv",
"advisories": 35,
"affected_packages": 11,
"assessed_packages": 90,
"unassessed_packages": 0,
"affected_by_severity": "critical 2, high 4, moderate 1, low 1, unknown 3",
"direct_affected_packages": 2
},
"components": [
{
"key": "direct_dependencies_free_of_known_advisories",
"name": "Direct dependencies free of known advisories",
"detail": "2 affected: google.golang.org/grpc v1.66.2 (critical 9.1), google.golang.org/grpc v1.70.0 (critical 9.1)",
"points": 7.8,
"status": "partial",
"details": [
{
"code": "advisories_affected",
"params": {
"count": 2,
"packages": "google.golang.org/grpc v1.66.2 (critical 9.1), google.golang.org/grpc v1.70.0 (critical 9.1)"
}
}
],
"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": "2 advisory-carrying package(s) unaddressed past 90 days; oldest published 132 days ago",
"points": 27.5,
"status": "partial",
"details": [
{
"code": "advisories_stale",
"params": {
"days": 90,
"count": 2,
"oldest": 132
}
}
],
"max_points": 40
}
]
},
{
"key": "malicious_dependencies",
"band": "exceptional",
"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": 90,
"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": "exceptional",
"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"
],
"commit_weight_rule": {
"min_commits": 50,
"min_commit_share": 0.1
},
"review_only_matches": 0,
"below_threshold_exposures": [],
"assessed_self_published_locations": 8
},
"components": [
{
"key": "policy_exposure_multiplier",
"name": "Policy exposure multiplier",
"detail": "no confirmed policy-scope location match",
"points": 100,
"status": "met",
"details": [
{
"code": "jurisdiction_no_match",
"params": {}
}
],
"max_points": 100
}
]
}
],
"description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
},
{
"key": "ai_readiness",
"band": "good",
"name": "AI Readiness",
"value": 66,
"weight": 0.04,
"metrics": [
{
"key": "ai_agent_context",
"band": "weak",
"name": "Agent context & guidance",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"has_llms_txt": false,
"legible_history_share": 0.965,
"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": "82 of 85 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 82,
"sampled": 85
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "excellent",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 82,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [
"go.sum"
],
"has_dockerfile": false,
"typed_language": true,
"bootstrap_files": [
"Makefile"
],
"has_devcontainer": false,
"has_linter_config": true,
"typecheck_configs": [],
"agent_commit_share": 0.01,
"toolchain_manifests": [
"examples/opentelemetry/go.mod",
"go.mod"
],
"dependency_bot_commit_share": 0.15
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": "Makefile",
"points": 18,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "Makefile"
}
}
],
"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": ".golangci.yaml",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": ".golangci.yaml"
}
}
],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": "Go (statically typed)",
"points": 11,
"status": "met",
"details": [
{
"code": "statically_typed_language",
"params": {
"language": "Go"
}
}
],
"max_points": 11
},
{
"key": "reproducible_environment",
"name": "Reproducible environment",
"detail": "lockfile",
"points": 10,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "lockfile"
}
}
],
"max_points": 10
},
{
"key": "demonstrated_agent_practice",
"name": "Demonstrated agent practice",
"detail": "1 of the last 100 commits agent-authored or agent-credited",
"points": 2,
"status": "partial",
"details": [
{
"code": "agent_authored_commits",
"params": {
"count": 1,
"sampled": 100
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "15 of the last 100 commits are automated dependency updates",
"points": 8,
"status": "met",
"details": [
{
"code": "dependency_bot_commits",
"params": {
"count": 15,
"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": "exceptional",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 99,
"inputs": {
"primary_language": "Go",
"largest_source_bytes": 60601,
"source_files_sampled": 45,
"oversized_source_files": 1
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "Go (statically typed)",
"points": 45,
"status": "met",
"details": [
{
"code": "statically_typed_language",
"params": {
"language": "Go"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "1/45 source files over 60KB",
"points": 53.8,
"status": "partial",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 45,
"oversized": 1
}
}
],
"max_points": 55
}
]
},
{
"key": "ai_interfaces",
"band": "weak",
"name": "Machine-readable interfaces",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"example_dirs": [
"examples"
],
"has_mcp_signal": false,
"api_schema_files": []
},
"components": [
{
"key": "api_schema_openapi_graphql_proto",
"name": "API schema (OpenAPI/GraphQL/proto)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 40
},
{
"key": "mcp_server",
"name": "MCP server",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 20
},
{
"key": "runnable_examples",
"name": "Runnable examples",
"detail": "examples",
"points": 40,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "examples"
}
}
],
"max_points": 40
}
]
}
],
"description": "How well is the repo equipped to be developed and maintained with AI coding agents? Carries a deliberately small weight: agent tooling is a real maintenance signal, but its absence must never gate the top of the scale (calibration saturates at raw 91, so 100/100 remains reachable with AI Readiness at zero)."
}
],
"classification": {
"labels": [
"library"
],
"scores": {
"library": 6
},
"primary": "library",
"evidence": [
{
"tier": "distribution",
"label": "library",
"source": "registry:go",
"weight": 6
}
],
"artifacts": [],
"confidence": "medium",
"host_extension": false,
"runs_as_process": false,
"consumed_by_code": true
},
"metrics_version": "2.3.1"
},
"warnings": [
"Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token"
],
"report_type": "repository",
"generated_at": "2026-07-29T03:33:10.112783Z",
"schema_version": "0.27.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/g/GreptimeTeam/greptimedb-ingester-go.svg",
"full_name": "GreptimeTeam/greptimedb-ingester-go",
"license_state": "standard",
"license_spdx": "Apache-2.0"
}