Registro público
Informe de salud del softwareesquema 0.27.0 · métricas 1.13.0 · 2026-07-27 18:03 UTC

lakekeeper / lakekeeper

Lakekeeper is an Apache-Licensed, secure, fast and easy to use Apache Iceberg REST Catalog written in Rust.

RustApache-2.0★ 1399 estrellas⑂ 151 forksdesde abr 2024Ver en GitHub ↗

lakekeeper/lakekeeper tiene un índice de salud de 74 sobre 100, lo que lo sitúa en la banda Bueno. Su puntuación más alta es Vitality (95/100) y la más baja, Sustainability & Governance (56/100). Se actualizó por última vez hoy. Una sola persona concentra la mayor parte del trabajo reciente.

74
global / 100
Bueno

Índice de salud del software

Las métricas se agrupan en categorías ponderadas sobre una escala de 1 a 100. El resultado global parte de su media; cuando la evidencia pública activa la Política de Jurisdicciones de Alto Riesgo, la calificación se ajusta y recibe el límite 49 (En riesgo). Preparación para IA queda fuera.

74
Excelente85-100Ejemplar; cumple prácticamente todos los criterios evaluados
Bueno70-84Saludable; carencias menores
Moderado50-69Aceptable con carencias notables; se recomienda revisión
En riesgo30-49Debilidades significativas; su adopción exige cautela
Crítico1-29Problemas graves (proyecto abandonado, un solo mantenedor, sin higiene)
VitalidadComunidad yAdopciónSostenibilidady GobernanzaCalidad deIngenieríaSeguridadPreparaciónpara IA

Perfil de puntuación

Cada eje es una categoría. La forma importa más que la media: un proyecto sano llena toda la figura, mientras que un perfil de picos y cráteres indica que la fortaleza en una dimensión enmascara el riesgo en otra.

Titularidad

LakekeeperOrganización
34 seguidores14 repositorios públicosdesde oct 2024

Este repositorio está respaldado por una organización: una custodia compartida y responsable que puede sobrevivir a cualquier mantenedor individual.

Métricas por categoría

Vitalidad

¿Está vivo el proyecto: se escribe código y se publican versiones?

95Excelente · 22% del índice global
Cómo se puntúa
36/36Recencia de push — último push hace 0 días
35.3/36Cadencia de commits — 51/52 semanas con commits
18/18Volumen de commits — 538 commits en el último año
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 10 issue activity found in the last 90 days -- score normalized to 10
Datos de entrada utilizados
commits_last_year538
human_commit_share0,95
days_since_last_push0
active_weeks_last_year51
Cómo se puntúa
27/27Publica versiones — 51 versiones publicadas
36/36Recencia de las versiones — última versión hace 26 días
27/27Cadencia de publicación — una versión cada ~10,2 días
0/10OpenSSF Scorecard: Signed-Releases — Project has not signed or included provenance with any releases.
Datos de entrada utilizados
releases_count51
latest_release_tagv0.13.1
releases_from_tagsno
days_since_latest_release26
mean_days_between_releases10,2

Comunidad y Adopción

¿Tiene el proyecto usuarios, descargas, atención y unas condiciones acogedoras para quienes contribuyen?

70Bueno · 18% del índice global
Cómo se puntúa
51/60Estrellas — 1399 estrellas
18.1/25Forks — 151 forks
5.3/15Observadores — 10 observadores
Datos de entrada utilizados
forks151
stars1399
watchers10
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Cómo se puntúa
22.5/22.5README
22.5/22.5Licencia — licencia reconocida (Apache-2.0)
0/18Guía CONTRIBUTING
13.5/13.5Código de conducta
0/7.2Plantilla de issues
0/6.3Plantilla de PR
Datos de entrada utilizados
has_readme
has_license
has_contributingno
has_issue_templateno
has_code_of_conduct
has_pull_request_templateno

Sostenibilidad y Gobernanza

¿Sobrevivirá el proyecto a sus personas: factor bus, capacidad de respuesta, quién lo respalda y mantenimiento del paquete?

56Moderado · 24% del índice global
Cómo se puntúa
9/54Factor bus — la mitad de los commits recae en 1 contribuyente(s)
6.6/22.5Distribución de commits — el principal contribuyente firma el 71% de los commits
13.5/13.5Amplitud de contribuyentes — 49 contribuyentes
10/10OpenSSF Scorecard: Contributors — project has 6 contributing companies or organizations
Datos de entrada utilizados
bus_factor1
contributors_sampled49
top_contributor_share0,708
Cómo se puntúa
37.3/46.8Resolución de issues — 80% de issues cerradas
33.5/38.3Aceptación de PR — 1283/1464 PR decididos fusionados
9/15OpenSSF Scorecard: Code-Review — Found 20/30 approved changesets -- score normalized to 6
Datos de entrada utilizados
merged_prs1283
open_issues85
closed_issues333
issue_closed_ratio0,797
closed_unmerged_prs181
Cómo se puntúa
30/30Respaldo de la propiedad — propiedad de una organización
0/20Dominio verificado
11.1/25Alcance del propietario — 34 seguidores de lakekeeper
12.2/25Trayectoria — 14 repos públicos, cuenta de ~1 años
Datos de entrada utilizados
followers34
owner_typeOrganization
is_verified
owner_loginlakekeeper
public_repos14
account_age_days664

Calidad de Ingeniería

¿Existen unas prácticas mínimas de ingeniería y documentación?

86Excelente · 20% del índice global
Cómo se puntúa
24/24Flujos de trabajo de CI — 15 flujo(s) de trabajo
24/24Pruebas presentes
16/16Configuración de linter — tox.ini
0/9.6Hooks de pre-commit
0/6.4.editorconfig
20/20OpenSSF Scorecard: CI-Tests — 22 out of 22 merged PRs checked by a CI test -- score normalized to 10
Datos de entrada utilizados
has_ci
has_tests
has_editorconfigno
has_linter_config
has_precommit_configno

Documentación

90Excelente
Cómo se puntúa
30/30README
25/25Directorio de documentación
15/15Sitio de documentación / página del proyecto — https://docs.lakekeeper.io
10/10Descripción del repositorio
10/10Topics — 7 topics
0/10Wiki
Datos de entrada utilizados
topicscatalog, data-lake, iceberg, lakehouse, rust, lakehouse-governance, open-lakehouse
has_wikino
homepagehttps://docs.lakekeeper.io
has_readme
has_docs_dir
has_description

Seguridad

¿Son sólidas las prácticas visibles de seguridad y de cadena de suministro, sin exposición jurisdiccional de alto riesgo sin resolver?

64Moderado · 16% del índice global
Cómo se puntúa
7.5/7.5Binary-Artifacts — no binaries found in the repo
6/7.5Branch-Protection — branch protection is not maximal on development and all release branches
2.5/2.5CI-Tests — 22 out of 22 merged PRs checked by a CI test -- score normalized to 10
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
4.5/7.5Code-Review — Found 20/30 approved changesets -- score normalized to 6
2.5/2.5Contributors — project has 6 contributing companies or organizations
10/10Dangerous-Workflow — no dangerous workflow patterns detected
7.5/7.5Dependency-Update-Tool — update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5Licencia — license file detected
7.5/7.5Maintained — 30 commit(s) and 10 issue activity found in the last 90 days -- score normalized to 10
5/5Packaging — packaging workflow detected
3.5/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 7
4.5/5SAST — SAST tool is not run on all commits -- score normalized to 9
0/5Security-Policy — security policy file not detected
0/7.5Signed-Releases — Project has not signed or included provenance with any releases.
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
1.5/7.5Vulnerabilities — 8 existing vulnerabilities detected
Datos de entrada utilizados
sourceopenssf_scorecard
checks_evaluated18
scorecard_versionv5.5.0
checks_inconclusive0
scorecard_aggregate6,2
Cómo se puntúa
14/35Dependencias directas libres de avisos conocidos — 1 afectados: quick-xml 0.40.1 (high 7.5)
0/25Dependencias indirectas libres de avisos conocidos — el conjunto transitivo no es separable de las dependencias de desarrollo y prueba en este alcance
40/40Sin avisos pendientes — ningún aviso lleva público más de 90 días
Datos de entrada utilizados
sourceosv
advisories9
affected_packages7
assessed_packages763
unassessed_packages22
affected_by_severityhigh 1, moderate 1, low 1, unknown 4
direct_affected_packages1
Excluidos de la puntuación (sin datos o no aplicable): Dependencias indirectas libres de avisos conocidos. Los pesos restantes se han renormalizado. Se cotejaron 763 dependencias resueltas con OSV. 22 no pudieron evaluarse: sin versión resuelta, ecosistema no admitido o fuera de la lista de paquetes informada. Este repositorio no publica ningún paquete que el índice resuelva, por lo que se evaluó en su lugar el grafo de dependencias del repositorio. Ese grafo mezcla fijaciones de desarrollo y prueba con las dependencias distribuidas, de modo que solo se puntúan las dependencias declaradas en tiempo de ejecución; los hallazgos transitivos se informan como contexto y quedan excluidos de la puntuación. No se analiza la alcanzabilidad.

Preparación para IA

¿Hasta qué punto está el repositorio preparado para desarrollarse y mantenerse con agentes de codificación de IA? Es una insignia independiente y experimental — peso 0,0, de modo que se presenta por separado y no afecta a la puntuación de salud global.

81Bueno · 0% del índice global
Cómo se puntúa
45/45Instrucciones para agentes — AGENTS.md, CLAUDE.md
0/15Documentación legible por máquinas (llms.txt)
40/40Historial de commits legible — 95 de 95 commits humanos declaran su intención (asunto estructurado o cuerpo explicativo)
Datos de entrada utilizados
has_llms_txtno
legible_history_share1
agent_instruction_filesAGENTS.md, CLAUDE.md
agent_instruction_max_bytes3751
Cómo se puntúa
18/18Arranque con un solo comando — examples/kafka-connect-iceberg-sink/Makefile, justfile, site/justfile, tests/migrations/justfile
22/22Pruebas automatizadas
11/11Configuración de lint / formato — tox.ini
11/11Verificación estática de tipos — Rust (tipado estático)
10/10Entorno reproducible — Dockerfile, lockfile
0/10Práctica demostrada con agentes — ningún commit con autoría de agente entre los últimos 100
8/8Mantenimiento automatizado — 5 de los últimos 100 commits son actualizaciones automáticas de dependencias
7/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 7
Datos de entrada utilizados
has_nixno
has_tests
lockfilesCargo.lock
has_dockerfile
typed_language
bootstrap_filesexamples/kafka-connect-iceberg-sink/Makefile, justfile, site/justfile, tests/migrations/justfile
has_devcontainerno
has_linter_config
typecheck_configs
agent_commit_share0
toolchain_manifestsCargo.toml, crates/authz-openfga/Cargo.toml, crates/iceberg-ext/Cargo.toml, crates/io/Cargo.toml, crates/lakekeeper-bin/Cargo.toml, crates/lakekeeper-events-kafka/Cargo.toml, crates/lakekeeper-events-nats/Cargo.toml, crates/lakekeeper-integration-tests/Cargo.toml, crates/lakekeeper-secrets-kv2/Cargo.toml, crates/lakekeeper-storage-postgres/Cargo.toml, crates/lakekeeper/Cargo.toml
dependency_bot_commit_share0,05
Cómo se puntúa
45/45Código verificable por tipos — Rust (tipado estático)
50.4/55Tamaños de archivo manejables — 28/332 archivos fuente de más de 60 KB
Datos de entrada utilizados
primary_languageRust
largest_source_bytes220.387
source_files_sampled332
oversized_source_files28
Cómo se puntúa
0/40Esquema de API (OpenAPI/GraphQL/proto)
0/20Servidor MCP
40/40Ejemplos ejecutables — examples, notebooks
Datos de entrada utilizados
example_dirsexamples, notebooks
has_mcp_signalno
api_schema_files

Datos clave

1399estrellas de GitHub
49contribuidores
538commits en los últimos 12 meses
0días desde el último push
51versiones publicadas
1factor bus
85issues abiertas
crates.io, PyPIecosistemas de paquetes

Advertencias de recopilación de datos

  • Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token
  • Could not fetch crates package 'lakekeeper-io' from its registry
  • Could not fetch crates package 'lakekeeper' from its registry
  • Could not fetch crates package 'iceberg-ext' from its registry
  • Could not fetch crates package 'lakekeeper-authz-openfga' from its registry
  • Could not fetch crates package 'lakekeeper-bin' from its registry
  • Could not fetch crates package 'lakekeeper-events-nats' from its registry
  • Could not fetch crates package 'lakekeeper-secrets-kv2' from its registry
  • Could not fetch crates package 'lakekeeper-events-kafka' from its registry

Más detalle

Historial de estrellas y forks 0 ★ / 151 ⇿
0Estrellas
151Forks
51Versiones

Cuándo se añadió cada estrella y fork, recopilado de GitHub y agrupado por día. El crecimiento acumulado se sitúa justo encima de las adiciones diarias que lo componen, de modo que ambos se leen en conjunto: la acumulación orgánica sostenida no se parece en nada a un pico abrupto y efímero. Cuando esa diferencia es medible, se informa como autenticidad del crecimiento.

025507510012515015042024-052025-062026-07
Mayor 0Menor 13Parche 38

Cada punto abarca 3 días.

OpenSSF Scorecard 6.2 / 10
6.2agregado

Evaluación de seguridad independiente y agnóstica en cuanto a herramientas, procedente del proyecto de código abierto OpenSSF Scorecard. Cada comprobación premia una práctica de seguridad, no la herramienta de un proveedor concreto. Las comprobaciones que Scorecard no pudo determinar se marcan como n/d y se excluyen de la puntuación de seguridad (nunca se cuentan como cero).Scorecard v5.5.0 · 2026-07-27 18:02 UTC

10Binary-Artifactsno binaries found in the repo
8Branch-Protectionbranch protection is not maximal on development and all release branches
10CI-Tests22 out of 22 merged PRs checked by a CI test -- score normalized to 10
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
6Code-ReviewFound 20/30 approved changesets -- score normalized to 6
10Contributorsproject has 6 contributing companies or organizations
10Dangerous-Workflowno dangerous workflow patterns detected
10Dependency-Update-Toolupdate tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
10Maintained30 commit(s) and 10 issue activity found in the last 90 days -- score normalized to 10
10Packagingpackaging workflow detected
7Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 7
9SASTSAST tool is not run on all commits -- score normalized to 9
0Security-Policysecurity policy file not detected
0Signed-ReleasesProject has not signed or included provenance with any releases.
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
2Vulnerabilities8 existing vulnerabilities detected
Dependencias directas 249
RegistroPaqueteRestricción de versiónManifiesto
crates.ioanyhowcrates/authz-openfga/Cargo.toml
crates.iochronocrates/authz-openfga/Cargo.toml
crates.iofigmentcrates/authz-openfga/Cargo.toml
crates.iofuturescrates/authz-openfga/Cargo.toml
crates.iohttpcrates/authz-openfga/Cargo.toml
crates.iolakekeepercrates/authz-openfga/Cargo.toml
crates.ioopenfga-client0.6crates/authz-openfga/Cargo.toml
crates.ioserdecrates/authz-openfga/Cargo.toml
crates.ioserde_jsoncrates/authz-openfga/Cargo.toml
crates.iostrumcrates/authz-openfga/Cargo.toml
crates.iostrum_macroscrates/authz-openfga/Cargo.toml
crates.iothiserrorcrates/authz-openfga/Cargo.toml
crates.iotracingcrates/authz-openfga/Cargo.toml
crates.iourlcrates/authz-openfga/Cargo.toml
crates.iourlencodingcrates/authz-openfga/Cargo.toml
crates.ioutoipacrates/authz-openfga/Cargo.toml
crates.iouuidcrates/authz-openfga/Cargo.toml
crates.ioveilcrates/authz-openfga/Cargo.toml
crates.ioaxumcrates/iceberg-ext/Cargo.toml
crates.ioheckcrates/iceberg-ext/Cargo.toml
crates.iohttpcrates/iceberg-ext/Cargo.toml
crates.ioicebergcrates/iceberg-ext/Cargo.toml
crates.iolakekeeper-iocrates/iceberg-ext/Cargo.toml
crates.iopasteycrates/iceberg-ext/Cargo.toml
crates.ioserdecrates/iceberg-ext/Cargo.toml
crates.ioserde_derivecrates/iceberg-ext/Cargo.toml
crates.ioserde_jsoncrates/iceberg-ext/Cargo.toml
crates.iostrum_macroscrates/iceberg-ext/Cargo.toml
crates.iothiserrorcrates/iceberg-ext/Cargo.toml
crates.iotracingcrates/iceberg-ext/Cargo.toml
crates.iotyped-buildercrates/iceberg-ext/Cargo.toml
crates.iourlcrates/iceberg-ext/Cargo.toml
crates.ioutoipacrates/iceberg-ext/Cargo.toml
crates.iouuidcrates/iceberg-ext/Cargo.toml
crates.iovaluablecrates/iceberg-ext/Cargo.toml
crates.ioxxhash-rustcrates/iceberg-ext/Cargo.toml
crates.ioanyhowcrates/io/Cargo.toml
crates.ioasync-streamcrates/io/Cargo.toml
crates.ioasync-traitcrates/io/Cargo.toml
crates.ioaws-configcrates/io/Cargo.toml
crates.ioaws-credential-typescrates/io/Cargo.toml
crates.ioaws-sdk-s3crates/io/Cargo.toml
crates.ioaws-smithy-asynccrates/io/Cargo.toml
crates.ioaws-smithy-http-clientcrates/io/Cargo.toml
crates.ioaws-smithy-runtime-apicrates/io/Cargo.toml
crates.ioaws-smithy-typescrates/io/Cargo.toml
crates.ioazure_corecrates/io/Cargo.toml
crates.ioazure_identitycrates/io/Cargo.toml
crates.ioazure_storagecrates/io/Cargo.toml
crates.ioazure_storage_blobscrates/io/Cargo.toml
crates.ioazure_storage_datalakecrates/io/Cargo.toml
crates.iobytescrates/io/Cargo.toml
crates.iochronocrates/io/Cargo.toml
crates.ioderive_morecrates/io/Cargo.toml
crates.iofuturescrates/io/Cargo.toml
crates.iogoogle-cloud-authcrates/io/Cargo.toml
crates.iogoogle-cloud-storagecrates/io/Cargo.toml
crates.iogoogle-cloud-tokencrates/io/Cargo.toml
crates.ioicebergcrates/io/Cargo.toml
crates.iomd5crates/io/Cargo.toml
crates.iomokacrates/io/Cargo.toml
crates.iopercent-encodingcrates/io/Cargo.toml
crates.ioreqwestcrates/io/Cargo.toml
crates.ioreqwest-middlewarecrates/io/Cargo.toml
crates.ioreqwest-retrycrates/io/Cargo.toml
crates.ioserdecrates/io/Cargo.toml
crates.iostrumcrates/io/Cargo.toml
crates.iostrum_macroscrates/io/Cargo.toml
crates.iothiserrorcrates/io/Cargo.toml
crates.iotimecrates/io/Cargo.toml
crates.iotokiocrates/io/Cargo.toml
crates.iotracingcrates/io/Cargo.toml
crates.iotryhardcrates/io/Cargo.toml
crates.iotyped-buildercrates/io/Cargo.toml
crates.iotypetagcrates/io/Cargo.toml
crates.iounicode-general-categorycrates/io/Cargo.toml
crates.iourlcrates/io/Cargo.toml
crates.iouuidcrates/io/Cargo.toml
crates.ioveilcrates/io/Cargo.toml
crates.iowebpki-root-certscrates/io/Cargo.toml
crates.ioanyhowcrates/lakekeeper-bin/Cargo.toml
crates.ioasync-traitcrates/lakekeeper-bin/Cargo.toml
crates.ioclap^4.5crates/lakekeeper-bin/Cargo.toml
crates.iofigmentcrates/lakekeeper-bin/Cargo.toml
crates.iohttpcrates/lakekeeper-bin/Cargo.toml
crates.iolakekeepercrates/lakekeeper-bin/Cargo.toml
crates.iolakekeeper-authz-openfgacrates/lakekeeper-bin/Cargo.toml
crates.iolakekeeper-consolecrates/lakekeeper-bin/Cargo.toml
crates.iolakekeeper-events-kafkacrates/lakekeeper-bin/Cargo.toml
crates.iolakekeeper-events-natscrates/lakekeeper-bin/Cargo.toml
crates.iolakekeeper-secrets-kv2crates/lakekeeper-bin/Cargo.toml
crates.iolakekeeper-storage-postgrescrates/lakekeeper-bin/Cargo.toml
crates.iolimescrates/lakekeeper-bin/Cargo.toml
crates.ioreqwestcrates/lakekeeper-bin/Cargo.toml
crates.ioserdecrates/lakekeeper-bin/Cargo.toml
crates.iotikv-jemallocatorcrates/lakekeeper-bin/Cargo.toml
crates.iotracing-subscribercrates/lakekeeper-bin/Cargo.toml
crates.ioanyhowcrates/lakekeeper-events-kafka/Cargo.toml
crates.ioasync-traitcrates/lakekeeper-events-kafka/Cargo.toml
crates.iocloudevents-sdkcrates/lakekeeper-events-kafka/Cargo.toml
crates.iofigmentcrates/lakekeeper-events-kafka/Cargo.toml
crates.iofigment_file_provider_adaptercrates/lakekeeper-events-kafka/Cargo.toml
crates.iolakekeepercrates/lakekeeper-events-kafka/Cargo.toml
crates.iordkafkacrates/lakekeeper-events-kafka/Cargo.toml
crates.ioserdecrates/lakekeeper-events-kafka/Cargo.toml
crates.iotracingcrates/lakekeeper-events-kafka/Cargo.toml
crates.iotyped-buildercrates/lakekeeper-events-kafka/Cargo.toml
crates.ioveilcrates/lakekeeper-events-kafka/Cargo.toml
crates.ioanyhowcrates/lakekeeper-events-nats/Cargo.toml
crates.ioasync-natscrates/lakekeeper-events-nats/Cargo.toml
crates.ioasync-traitcrates/lakekeeper-events-nats/Cargo.toml
crates.iocloudevents-sdkcrates/lakekeeper-events-nats/Cargo.toml
crates.iofigmentcrates/lakekeeper-events-nats/Cargo.toml
crates.iolakekeepercrates/lakekeeper-events-nats/Cargo.toml
crates.ioserdecrates/lakekeeper-events-nats/Cargo.toml
crates.ioserde_jsoncrates/lakekeeper-events-nats/Cargo.toml
crates.iotracingcrates/lakekeeper-events-nats/Cargo.toml
crates.iotyped-buildercrates/lakekeeper-events-nats/Cargo.toml
crates.iourlcrates/lakekeeper-events-nats/Cargo.toml
crates.ioveilcrates/lakekeeper-events-nats/Cargo.toml
crates.ioanyhowcrates/lakekeeper-integration-tests/Cargo.toml
crates.ioasync-channelcrates/lakekeeper-integration-tests/Cargo.toml
crates.iochronocrates/lakekeeper-integration-tests/Cargo.toml
crates.iofuturescrates/lakekeeper-integration-tests/Cargo.toml
crates.iohttpcrates/lakekeeper-integration-tests/Cargo.toml
crates.ioicebergcrates/lakekeeper-integration-tests/Cargo.toml
crates.ioiceberg-extcrates/lakekeeper-integration-tests/Cargo.toml
crates.ioitertoolscrates/lakekeeper-integration-tests/Cargo.toml
crates.iolakekeepercrates/lakekeeper-integration-tests/Cargo.toml
crates.iolakekeeper-iocrates/lakekeeper-integration-tests/Cargo.toml
crates.iolakekeeper-storage-postgrescrates/lakekeeper-integration-tests/Cargo.toml
crates.iomaplitcrates/lakekeeper-integration-tests/Cargo.toml
crates.iopasteycrates/lakekeeper-integration-tests/Cargo.toml
crates.ioserdecrates/lakekeeper-integration-tests/Cargo.toml
crates.ioserde_jsoncrates/lakekeeper-integration-tests/Cargo.toml
crates.iosqlxcrates/lakekeeper-integration-tests/Cargo.toml
crates.iostrumcrates/lakekeeper-integration-tests/Cargo.toml
crates.iotokiocrates/lakekeeper-integration-tests/Cargo.toml
crates.iotracingcrates/lakekeeper-integration-tests/Cargo.toml
crates.ioutoipacrates/lakekeeper-integration-tests/Cargo.toml
crates.iouuidcrates/lakekeeper-integration-tests/Cargo.toml
crates.ioanyhowcrates/lakekeeper-secrets-kv2/Cargo.toml
crates.ioasync-traitcrates/lakekeeper-secrets-kv2/Cargo.toml
crates.iofigmentcrates/lakekeeper-secrets-kv2/Cargo.toml
crates.ioiceberg-extcrates/lakekeeper-secrets-kv2/Cargo.toml
crates.iolakekeepercrates/lakekeeper-secrets-kv2/Cargo.toml
crates.ioserdecrates/lakekeeper-secrets-kv2/Cargo.toml
crates.iotokiocrates/lakekeeper-secrets-kv2/Cargo.toml
crates.iotracingcrates/lakekeeper-secrets-kv2/Cargo.toml
crates.iourlcrates/lakekeeper-secrets-kv2/Cargo.toml
crates.iouuidcrates/lakekeeper-secrets-kv2/Cargo.toml
crates.iovaultrs0.8crates/lakekeeper-secrets-kv2/Cargo.toml
crates.iovaultrs-login0.2.4crates/lakekeeper-secrets-kv2/Cargo.toml
crates.ioveilcrates/lakekeeper-secrets-kv2/Cargo.toml
crates.ioanyhowcrates/lakekeeper-storage-postgres/Cargo.toml
crates.ioasync-traitcrates/lakekeeper-storage-postgres/Cargo.toml
crates.iobase64crates/lakekeeper-storage-postgres/Cargo.toml
crates.iochronocrates/lakekeeper-storage-postgres/Cargo.toml
crates.iocrccrates/lakekeeper-storage-postgres/Cargo.toml
crates.ioderive_morecrates/lakekeeper-storage-postgres/Cargo.toml
crates.iofastrandcrates/lakekeeper-storage-postgres/Cargo.toml
crates.iofigmentcrates/lakekeeper-storage-postgres/Cargo.toml
crates.iofuturescrates/lakekeeper-storage-postgres/Cargo.toml
crates.iohttpcrates/lakekeeper-storage-postgres/Cargo.toml
crates.ioicebergcrates/lakekeeper-storage-postgres/Cargo.toml
crates.ioiceberg-extcrates/lakekeeper-storage-postgres/Cargo.toml
crates.ioiso8601crates/lakekeeper-storage-postgres/Cargo.toml
crates.ioitertoolscrates/lakekeeper-storage-postgres/Cargo.toml
crates.iolakekeepercrates/lakekeeper-storage-postgres/Cargo.toml
crates.iolakekeeper-iocrates/lakekeeper-storage-postgres/Cargo.toml
crates.iometricscrates/lakekeeper-storage-postgres/Cargo.toml
crates.ioserdecrates/lakekeeper-storage-postgres/Cargo.toml
crates.ioserde_jsoncrates/lakekeeper-storage-postgres/Cargo.toml
crates.iosqlxcrates/lakekeeper-storage-postgres/Cargo.toml
crates.iostrumcrates/lakekeeper-storage-postgres/Cargo.toml
crates.iotokiocrates/lakekeeper-storage-postgres/Cargo.toml
crates.iotracingcrates/lakekeeper-storage-postgres/Cargo.toml
crates.iothiserrorcrates/lakekeeper-storage-postgres/Cargo.toml
crates.iotryhardcrates/lakekeeper-storage-postgres/Cargo.toml
crates.iotyped-buildercrates/lakekeeper-storage-postgres/Cargo.toml
crates.iourlcrates/lakekeeper-storage-postgres/Cargo.toml
crates.iouuidcrates/lakekeeper-storage-postgres/Cargo.toml
crates.ioanyhowcrates/lakekeeper/Cargo.toml
crates.ioasync-traitcrates/lakekeeper/Cargo.toml
crates.ioaws-configcrates/lakekeeper/Cargo.toml
crates.ioaws-credential-typescrates/lakekeeper/Cargo.toml
crates.ioaws-sdk-stscrates/lakekeeper/Cargo.toml
crates.ioaws-sigv4crates/lakekeeper/Cargo.toml
crates.ioaws-smithy-runtime-apicrates/lakekeeper/Cargo.toml
crates.ioaxumcrates/lakekeeper/Cargo.toml
crates.ioaxum-extracrates/lakekeeper/Cargo.toml
crates.ioaxum-prometheuscrates/lakekeeper/Cargo.toml
crates.ioazure_corecrates/lakekeeper/Cargo.toml
crates.ioazure_storagecrates/lakekeeper/Cargo.toml
crates.ioazure_storage_blobscrates/lakekeeper/Cargo.toml
crates.iobase64crates/lakekeeper/Cargo.toml
crates.iochronocrates/lakekeeper/Cargo.toml
crates.iocloudevents-sdkcrates/lakekeeper/Cargo.toml
crates.ioderive_morecrates/lakekeeper/Cargo.toml
crates.iofastrandcrates/lakekeeper/Cargo.toml
crates.iofigmentcrates/lakekeeper/Cargo.toml
crates.ioflate2crates/lakekeeper/Cargo.toml
crates.iofuturescrates/lakekeeper/Cargo.toml
crates.iogoogle-cloud-authcrates/lakekeeper/Cargo.toml
crates.iogoogle-cloud-tokencrates/lakekeeper/Cargo.toml
crates.iohmaccrates/lakekeeper/Cargo.toml
crates.iohostnamecrates/lakekeeper/Cargo.toml
crates.iohttpcrates/lakekeeper/Cargo.toml
crates.iohttp-body-util~0.1crates/lakekeeper/Cargo.toml
crates.ioicebergcrates/lakekeeper/Cargo.toml
crates.ioiceberg-extcrates/lakekeeper/Cargo.toml
crates.ioiso8601crates/lakekeeper/Cargo.toml
crates.ioitertoolscrates/lakekeeper/Cargo.toml
crates.iok8s-openapicrates/lakekeeper/Cargo.toml
crates.iolakekeeper-iocrates/lakekeeper/Cargo.toml
crates.iolazy-regexcrates/lakekeeper/Cargo.toml
crates.iolimescrates/lakekeeper/Cargo.toml
crates.iomokacrates/lakekeeper/Cargo.toml
crates.iopasteycrates/lakekeeper/Cargo.toml
crates.iopercent-encodingcrates/lakekeeper/Cargo.toml
crates.ioquick-xmlcrates/lakekeeper/Cargo.toml
crates.ioreqwestcrates/lakekeeper/Cargo.toml
crates.iosemvercrates/lakekeeper/Cargo.toml
crates.ioserdecrates/lakekeeper/Cargo.toml
crates.ioserde_jsoncrates/lakekeeper/Cargo.toml
crates.ioserde_norwaycrates/lakekeeper/Cargo.toml
crates.ioserde_urlencodedcrates/lakekeeper/Cargo.toml
crates.iosha1crates/lakekeeper/Cargo.toml
crates.iosqlxcrates/lakekeeper/Cargo.toml
crates.iostrumcrates/lakekeeper/Cargo.toml
crates.iostrum_macroscrates/lakekeeper/Cargo.toml
crates.iothiserrorcrates/lakekeeper/Cargo.toml
crates.iotimecrates/lakekeeper/Cargo.toml
crates.iotokiocrates/lakekeeper/Cargo.toml
crates.iotokio-metricscrates/lakekeeper/Cargo.toml
crates.iotokio-utilcrates/lakekeeper/Cargo.toml
crates.iotowercrates/lakekeeper/Cargo.toml
crates.iotower-httpcrates/lakekeeper/Cargo.toml
crates.iotracingcrates/lakekeeper/Cargo.toml
crates.iotyped-buildercrates/lakekeeper/Cargo.toml
crates.iounicasecrates/lakekeeper/Cargo.toml
crates.iourlcrates/lakekeeper/Cargo.toml
crates.iourlencodingcrates/lakekeeper/Cargo.toml
crates.ioutoipacrates/lakekeeper/Cargo.toml
crates.ioutoipa-swagger-uicrates/lakekeeper/Cargo.toml
crates.iouuidcrates/lakekeeper/Cargo.toml
crates.iovaluablecrates/lakekeeper/Cargo.toml
crates.ioveilcrates/lakekeeper/Cargo.toml
crates.ioxxhash-rustcrates/lakekeeper/Cargo.toml
Todas las dependencias 785

Conjunto completo de dependencias resueltas según el grafo de dependencias de GitHub: 110 paquetes directos y 675 indirectos (transitivos). El cierre transitivo es completo cuando el repositorio incluye un lockfile.

RegistroPaqueteVersiónRelación
crates.ioanyhow1.0.103directa
crates.ioasync-channel1.9.0directa
crates.ioasync-channel2.5.0directa
crates.ioasync-nats0.46.0directa
crates.ioasync-stream0.3.6directa
crates.ioasync-trait0.1.89directa
crates.ioaws-config1.8.18directa
crates.ioaws-credential-types1.2.14directa
crates.ioaws-sdk-s31.135.0directa
crates.ioaws-sdk-sts1.106.0directa
crates.ioaws-sigv41.4.5directa
crates.ioaws-smithy-async1.2.14directa
crates.ioaws-smithy-http-client1.1.13directa
crates.ioaws-smithy-runtime-api1.12.3directa
crates.ioaws-smithy-types1.4.9directa
crates.ioaxum0.8.9directa
crates.ioaxum-extra0.12.6directa
crates.ioaxum-prometheus0.9.0directa
crates.ioazure_core0.21.0directa
crates.ioazure_identity0.21.0directa
crates.ioazure_storage0.21.0directa
crates.ioazure_storage_blobs0.21.0directa
crates.ioazure_storage_datalake0.21.0directa
crates.iobase640.13.1directa
crates.iobase640.22.1directa
crates.iobytes1.11.1directa
crates.iochrono0.4.45directa
crates.ioclapdirecta
crates.ioclap4.6.1directa
crates.iocloudevents-sdk0.9.0directa
crates.iocrc3.4.0directa
crates.ioderive_more2.1.1directa
crates.iofastrand1.9.0directa
crates.iofastrand2.4.1directa
crates.iofigment0.10.19directa
crates.iofigment_file_provider_adapter0.1.1directa
crates.ioflate21.1.9directa
crates.iofutures0.3.32directa
crates.ioheck0.5.0directa
crates.iohmac0.12.1directa
crates.iohmac0.13.0directa
crates.iohostname0.4.2directa
crates.iohttp0.2.12directa
crates.iohttp1.4.1directa
crates.iohttp-body-utildirecta
crates.iohttp-body-util0.1.3directa
crates.ioiceberg0.10.0directa
crates.ioiso86010.6.3directa
crates.ioitertools0.13.0directa
crates.ioitertools0.14.0directa
crates.iok8s-openapi0.28.0directa
crates.iolakekeeper-console0.21.0directa
crates.iolazy-regex3.6.0directa
crates.iolimes0.4.2directa
crates.iomaplit1.0.2directa
crates.iomd50.8.0directa
crates.iometrics0.24.6directa
crates.iomoka0.12.15directa
crates.ioopenfga-clientdirecta
crates.ioopenfga-client0.6.0directa
crates.iopastey0.2.3directa
crates.iopercent-encoding2.3.2directa
crates.ioquick-xml0.40.1directa
crates.ioquick-xml0.41.0directa
crates.iordkafka0.38.0directa
crates.ioreqwest0.12.28directa
crates.ioreqwest0.13.4directa
crates.ioreqwest-middleware0.4.2directa
crates.ioreqwest-retry0.8.0directa
crates.iosemver1.0.28directa
crates.ioserde1.0.228directa
crates.ioserde_derive1.0.228directa
crates.ioserde_json1.0.150directa
crates.ioserde_norway0.9.42directa
crates.ioserde_urlencoded0.7.1directa
crates.iosha10.10.6directa
crates.iosha10.11.0directa
crates.iosqlx0.9.0directa
crates.iostrum0.27.2directa
crates.iostrum_macros0.27.2directa
crates.iothiserror1.0.69directa
crates.iothiserror2.0.18directa
crates.iotikv-jemallocator0.6.1directa
crates.iotime0.3.47directa
crates.iotokio1.52.3directa
crates.iotokio-metrics0.4.9directa
crates.iotokio-util0.7.18directa
crates.iotower0.5.3directa
crates.iotower-http0.6.11directa
crates.iotracing0.1.44directa
crates.iotracing-subscriber0.3.23directa
crates.iotryhard0.5.2directa
crates.iotyped-builder0.20.1directa
crates.iotyped-builder0.23.2directa
crates.iotypetag0.2.22directa
crates.iounicase2.9.0directa
crates.iounicode-general-category1.1.0directa
crates.iourl2.5.8directa
crates.iourlencoding2.1.3directa
crates.ioutoipa5.5.0directa
crates.ioutoipa-swagger-ui9.0.2directa
crates.iouuid1.23.2directa
crates.iovaluable0.1.1directa
crates.iovaultrsdirecta
crates.iovaultrs0.8.0directa
crates.iovaultrs-logindirecta
crates.iovaultrs-login0.2.4directa
crates.ioveil0.2.0directa
crates.iowebpki-root-certs1.0.7directa
crates.ioxxhash-rust0.8.15directa
crates.ioadler22.0.1indirecta
crates.ioaead0.5.2indirecta
crates.ioaes0.8.4indirecta
crates.ioaes-gcm0.10.3indirecta
crates.ioahash0.8.12indirecta
crates.ioaho-corasick1.1.4indirecta
crates.ioalloc-no-stdlib2.0.4indirecta
crates.ioalloc-stdlib0.2.2indirecta
crates.ioallocator-api20.2.21indirecta
crates.ioandroid_system_properties0.1.5indirecta
crates.ioannotate-snippets0.12.16indirecta
crates.ioanstream1.0.0indirecta
crates.ioanstyle1.0.14indirecta
crates.ioanstyle-parse1.0.0indirecta
crates.ioanstyle-query1.1.5indirecta
crates.ioanstyle-wincon3.0.11indirecta
crates.ioapache-avro0.21.0indirecta
crates.ioarbitrary1.4.2indirecta
crates.ioarc-swap1.9.1indirecta
crates.ioarray-init2.1.0indirecta
crates.ioarraydeque0.5.1indirecta
crates.ioarrow-arith58.3.0indirecta
crates.ioarrow-array58.3.0indirecta
crates.ioarrow-buffer58.3.0indirecta
crates.ioarrow-cast58.3.0indirecta
crates.ioarrow-data58.3.0indirecta
crates.ioarrow-ipc58.3.0indirecta
crates.ioarrow-ord58.3.0indirecta
crates.ioarrow-schema58.3.0indirecta
crates.ioarrow-select58.3.0indirecta
crates.ioarrow-string58.3.0indirecta
crates.ioas-any0.3.2indirecta
crates.ioassert-json-diff2.0.2indirecta
crates.ioasync-compression0.4.42indirecta
crates.ioasync-io2.6.0indirecta
crates.ioasync-lock3.4.2indirecta
crates.ioasync-process2.5.0indirecta
crates.ioasync-signal0.2.14indirecta
crates.ioasync-stream-impl0.3.6indirecta
crates.ioasync-task4.7.1indirecta
crates.ioatoi2.0.0indirecta
crates.ioatomic0.6.1indirecta
crates.ioatomic-waker1.1.2indirecta
crates.ioautocfg1.5.1indirecta
crates.ioaws-lc-rs1.17.0indirecta
crates.ioaws-lc-sys0.41.0indirecta
crates.ioaws-runtime1.7.4indirecta
crates.ioaws-sdk-sso1.101.0indirecta
crates.ioaws-sdk-ssooidc1.103.0indirecta
crates.ioaws-smithy-checksums0.64.8indirecta
crates.ioaws-smithy-eventstream0.60.20indirecta
crates.ioaws-smithy-http0.63.6indirecta
crates.ioaws-smithy-json0.62.7indirecta
crates.ioaws-smithy-observability0.2.6indirecta
crates.ioaws-smithy-query0.60.15indirecta
crates.ioaws-smithy-runtime1.11.3indirecta
crates.ioaws-smithy-runtime-api-macros1.0.0indirecta
crates.ioaws-smithy-schema0.1.0indirecta
crates.ioaws-smithy-xml0.60.15indirecta
crates.ioaws-types1.3.16indirecta
crates.ioaxum-core0.5.6indirecta
crates.ioazure_svc_blobstorage0.21.0indirecta
crates.iobackon1.6.0indirecta
crates.iobase16ct0.2.0indirecta
crates.iobase64-simd0.8.0indirecta
crates.iobase64ct1.8.3indirecta
crates.iobigdecimal0.4.10indirecta
crates.iobimap0.6.3indirecta
crates.iobindgen0.72.1indirecta
crates.iobitflags1.3.2indirecta
crates.iobitflags2.13.0indirecta
crates.ioblock-buffer0.10.4indirecta
crates.ioblock-buffer0.12.0indirecta
crates.ioblocking1.6.2indirecta
crates.iobnum0.12.1indirecta
crates.iobon3.9.1indirecta
crates.iobon-macros3.9.1indirecta
crates.iobrotli8.0.3indirecta
crates.iobrotli-decompressor5.0.1indirecta
crates.iobs580.5.1indirecta
crates.iobstr1.12.1indirecta
crates.iobumpalo3.20.3indirecta
crates.iobytemuck1.25.0indirecta
crates.iobyteorder1.5.0indirecta
crates.iobytes-utils0.1.4indirecta
crates.iocc1.2.63indirecta
crates.iocexpr0.6.0indirecta
crates.iocfg-if1.0.4indirecta
crates.iocfg_aliases0.2.1indirecta
crates.iochacha200.10.0indirecta
crates.iocipher0.4.4indirecta
crates.ioclang-sys1.8.1indirecta
crates.ioclap_builder4.6.0indirecta
crates.ioclap_derive4.6.1indirecta
crates.ioclap_lex1.1.0indirecta
crates.iocmake0.1.58indirecta
crates.iocmov0.5.4indirecta
crates.iocolorchoice1.0.5indirecta
crates.iocombine4.6.7indirecta
crates.iocompression-codecs0.4.38indirecta
crates.iocompression-core0.4.32indirecta
crates.ioconcurrent-queue2.5.0indirecta
crates.ioconst-oid0.10.2indirecta
crates.ioconst-oid0.9.6indirecta
crates.ioconst-random0.1.18indirecta
crates.ioconst-random-macro0.1.16indirecta
crates.iocore-foundation0.10.1indirecta
crates.iocore-foundation0.9.4indirecta
crates.iocore-foundation-sys0.8.7indirecta
crates.iocpufeatures0.2.17indirecta
crates.iocpufeatures0.3.0indirecta
crates.iocrc-catalog2.5.0indirecta
crates.iocrc-fast1.10.0indirecta
crates.iocrc32fast1.5.0indirecta
crates.iocrossbeam-channel0.5.15indirecta
crates.iocrossbeam-epoch0.9.20indirecta
crates.iocrossbeam-queue0.3.12indirecta
crates.iocrossbeam-utils0.8.21indirecta
crates.iocrunchy0.2.4indirecta
crates.iocrypto-bigint0.5.5indirecta
crates.iocrypto-common0.1.7indirecta
crates.iocrypto-common0.2.2indirecta
crates.ioctr0.9.2indirecta
crates.ioctutils0.4.2indirecta
crates.iocurl-sys0.4.88+curl-8.20.0indirecta
crates.iocurve25519-dalek4.1.3indirecta
crates.iocurve25519-dalek-derive0.1.1indirecta
crates.iodarling0.20.11indirecta
crates.iodarling0.23.0indirecta
crates.iodarling_core0.20.11indirecta
crates.iodarling_core0.23.0indirecta
crates.iodarling_macro0.20.11indirecta
crates.iodarling_macro0.23.0indirecta
crates.iodata-encoding2.11.0indirecta
crates.iodefmt1.1.1indirecta
crates.iodefmt-macros1.1.1indirecta
crates.iodefmt-parser1.0.0indirecta
crates.iodelegate-attr0.3.0indirecta
crates.ioder0.7.10indirecta
crates.ioderanged0.5.8indirecta
crates.ioderive_arbitrary1.4.2indirecta
crates.ioderive_builder0.20.2indirecta
crates.ioderive_builder_core0.20.2indirecta
crates.ioderive_builder_macro0.20.2indirecta
crates.ioderive_more-impl2.1.1indirecta
crates.iodiff0.1.13indirecta
crates.iodigest0.10.7indirecta
crates.iodigest0.11.3indirecta
crates.iodirs6.0.0indirecta
crates.iodirs-sys0.5.0indirecta
crates.iodisplaydoc0.2.6indirecta
crates.iodissimilar1.0.11indirecta
crates.iodotenvy0.15.7indirecta
crates.iodowncast0.11.0indirecta
crates.ioduct0.13.7indirecta
crates.iodunce1.0.5indirecta
crates.iodyn-clone1.0.20indirecta
crates.ioecdsa0.16.9indirecta
crates.ioed255192.2.3indirecta
crates.ioed25519-dalek2.2.0indirecta
crates.ioeither1.16.0indirecta
crates.ioelliptic-curve0.13.8indirecta
crates.ioencoding_rs0.8.35indirecta
crates.ioencoding_rs_io0.1.7indirecta
crates.ioequivalent1.0.2indirecta
crates.ioerased-serde0.4.10indirecta
crates.ioerrno0.3.14indirecta
crates.ioetcetera0.11.0indirecta
crates.ioevent-listener2.5.3indirecta
crates.ioevent-listener5.4.1indirecta
crates.ioevent-listener-strategy0.5.4indirecta
crates.ioexpect-test1.5.1indirecta
crates.iofastnum0.7.4indirecta
crates.ioff0.13.1indirecta
crates.iofiat-crypto0.2.9indirecta
crates.iofind-msvc-tools0.1.9indirecta
crates.iofixedbitset0.5.7indirecta
crates.ioflatbuffers25.12.19indirecta
crates.ioflume0.12.0indirecta
crates.iofnv1.0.7indirecta
crates.iofoldhash0.1.5indirecta
crates.iofoldhash0.2.0indirecta
crates.ioforeign-types0.3.2indirecta
crates.ioforeign-types-shared0.1.1indirecta
crates.ioform_urlencoded1.2.2indirecta
crates.iofragile2.1.0indirecta
crates.iofs_extra1.3.0indirecta
crates.iofutures-channel0.3.32indirecta
crates.iofutures-core0.3.32indirecta
crates.iofutures-executor0.3.32indirecta
crates.iofutures-intrusive0.5.0indirecta
crates.iofutures-io0.3.32indirecta
crates.iofutures-lite1.13.0indirecta
crates.iofutures-lite2.6.1indirecta
crates.iofutures-macro0.3.32indirecta
crates.iofutures-sink0.3.32indirecta
crates.iofutures-task0.3.32indirecta
crates.iofutures-timer3.0.4indirecta
crates.iofutures-utilindirecta
crates.iofutures-util0.3.32indirecta
crates.iogcloud-auth1.2.0indirecta
crates.iogcloud-metadata1.0.2indirecta
crates.iogcloud-storage1.2.0indirecta
crates.iogeneric-array0.14.7indirecta
crates.iogetrandom0.1.16indirecta
crates.iogetrandom0.2.17indirecta
crates.iogetrandom0.3.4indirecta
crates.iogetrandom0.4.2indirecta
crates.ioghash0.5.1indirecta
crates.ioglob0.3.3indirecta
crates.iogloo-timers0.3.0indirecta
crates.iogranit-parser0.0.3indirecta
crates.iogroup0.13.0indirecta
crates.ioh20.4.14indirecta
crates.iohalf2.7.1indirecta
crates.iohashbrown0.12.3indirecta
crates.iohashbrown0.15.5indirecta
crates.iohashbrown0.16.1indirecta
crates.iohashbrown0.17.1indirecta
crates.iohashlink0.11.1indirecta
crates.ioheaders0.4.1indirecta
crates.ioheaders-core0.3.0indirecta
crates.iohermit-abi0.5.2indirecta
crates.iohex0.4.3indirecta
crates.iohkdf0.13.0indirecta
crates.iohome0.5.12indirecta
crates.iohttp-body0.4.6indirecta
crates.iohttp-body1.0.1indirecta
crates.iohttp-types2.12.0indirecta
crates.iohttparse1.10.1indirecta
crates.iohttpdate1.0.3indirecta
crates.iohybrid-array0.4.12indirecta
crates.iohyper1.10.1indirecta
crates.iohyper-rustls0.27.9indirecta
crates.iohyper-timeout0.5.2indirecta
crates.iohyper-tls0.6.0indirecta
crates.iohyper-util0.1.20indirecta
crates.ioiana-time-zone0.1.65indirecta
crates.ioiana-time-zone-haiku0.1.2indirecta
crates.ioicu_collections2.2.0indirecta
crates.ioicu_locale_core2.2.0indirecta
crates.ioicu_normalizer2.2.0indirecta
crates.ioicu_normalizer_data2.2.0indirecta
crates.ioicu_properties2.2.0indirecta
crates.ioicu_properties_data2.2.0indirecta
crates.ioicu_provider2.2.0indirecta
crates.ioid-arena2.3.0indirecta
crates.ioident_case1.0.1indirecta
crates.ioidna1.1.0indirecta
crates.ioidna_adapter1.2.2indirecta
crates.ioindexmap1.9.3indirecta
crates.ioindexmap2.14.0indirecta
crates.ioinfer0.2.3indirecta
crates.ioinlinable_string0.1.15indirecta
crates.ioinout0.1.4indirecta
crates.ioinstant0.1.13indirecta
crates.iointeger-encoding3.0.4indirecta
crates.ioinventory0.3.24indirecta
crates.ioipnet2.12.0indirecta
crates.iois_terminal_polyfill1.70.2indirecta
crates.ioitoa1.0.18indirecta
crates.iojiff0.2.32indirecta
crates.iojiff-static0.2.32indirecta
crates.iojni0.22.4indirecta
crates.iojni-macros0.22.4indirecta
crates.iojni-sys0.4.1indirecta
crates.iojni-sys-macros0.4.1indirecta
crates.iojobserver0.1.34indirecta
crates.iojs-sys0.3.99indirecta
crates.iojsonpath-rust1.0.5indirecta
crates.iojsonwebtoken10.4.0indirecta
crates.iojwks_client_rs0.6.1indirecta
crates.iokrb5-src0.3.4indirecta
crates.iokube4.0.0indirecta
crates.iokube-client4.0.0indirecta
crates.iokube-core4.0.0indirecta
crates.iolazy-regex-proc_macros3.6.0indirecta
crates.iolazy_static1.5.0indirecta
crates.ioleb128fmt0.1.0indirecta
crates.iolexical-core1.0.6indirecta
crates.iolexical-parse-float1.0.6indirecta
crates.iolexical-parse-integer1.0.6indirecta
crates.iolexical-util1.0.7indirecta
crates.iolexical-write-float1.0.6indirecta
crates.iolexical-write-integer1.0.6indirecta
crates.iolibc0.2.186indirecta
crates.iolibloading0.8.9indirecta
crates.iolibm0.2.16indirecta
crates.iolibredox0.1.17indirecta
crates.iolibsqlite3-sys0.37.0indirecta
crates.iolibz-sys1.1.29indirecta
crates.iolinux-raw-sys0.12.1indirecta
crates.iolitemap0.8.2indirecta
crates.iolock_api0.4.14indirecta
crates.iolog0.4.32indirecta
crates.iolru0.16.4indirecta
crates.iolru-slab0.1.2indirecta
crates.iolz4_flex0.13.1indirecta
crates.iomatchers0.2.0indirecta
crates.iomatchit0.8.4indirecta
crates.iomd-50.11.0indirecta
crates.iomemchr2.8.1indirecta
crates.iometrics-exporter-prometheus0.17.2indirecta
crates.iometrics-util0.20.4indirecta
crates.iomiddle0.4.0indirecta
crates.iomime0.3.17indirecta
crates.iomime_guess2.0.5indirecta
crates.iominimal-lexical0.2.1indirecta
crates.iominiz_oxide0.8.9indirecta
crates.iomio1.2.1indirecta
crates.iomockall0.14.0indirecta
crates.iomockall_derive0.14.0indirecta
crates.iomultimap0.10.1indirecta
crates.iomurmur30.5.2indirecta
crates.ionative-tls0.2.18indirecta
crates.ionkeys0.4.5indirecta
crates.ionohash-hasher0.2.0indirecta
crates.ionom7.1.3indirecta
crates.ionom8.0.0indirecta
crates.ionu-ansi-term0.50.3indirecta
crates.ionum-bigint0.4.6indirecta
crates.ionum-complex0.4.6indirecta
crates.ionum-conv0.2.2indirecta
crates.ionum-integer0.1.46indirecta
crates.ionum-traits0.2.19indirecta
crates.ionum_enum0.7.6indirecta
crates.ionum_enum_derive0.7.6indirecta
crates.iooauth24.4.2indirecta
crates.iooauth25.0.0indirecta
crates.ioonce_cell1.21.4indirecta
crates.ioonce_cell_polyfill1.70.2indirecta
crates.ioopaque-debug0.3.1indirecta
crates.ioopenssl0.10.80indirecta
crates.ioopenssl-macros0.1.1indirecta
crates.ioopenssl-probe0.1.6indirecta
crates.ioopenssl-probe0.2.1indirecta
crates.ioopenssl-src300.6.0+3.6.2indirecta
crates.ioopenssl-sys0.9.116indirecta
crates.iooption-ext0.2.0indirecta
crates.ioordered-float2.10.1indirecta
crates.ioordered-float4.6.0indirecta
crates.ioos_pipe1.2.3indirecta
crates.iooutref0.5.2indirecta
crates.iop2560.13.2indirecta
crates.ioparking2.2.1indirecta
crates.ioparking_lot0.12.5indirecta
crates.ioparking_lot_core0.9.12indirecta
crates.ioparquet58.3.0indirecta
crates.iopaste1.0.15indirecta
crates.iopath-clean1.0.1indirecta
crates.iopear0.2.9indirecta
crates.iopear_codegen0.2.9indirecta
crates.iopem3.0.6indirecta
crates.iopem-rfc74680.7.0indirecta
crates.iopest2.8.6indirecta
crates.iopest_derive2.8.6indirecta
crates.iopest_generator2.8.6indirecta
crates.iopest_meta2.8.6indirecta
crates.iopetgraph0.8.3indirecta
crates.iopin-project1.1.13indirecta
crates.iopin-project-internal1.1.13indirecta
crates.iopin-project-lite0.2.17indirecta
crates.iopin-utils0.1.0indirecta
crates.iopiper0.2.5indirecta
crates.iopkcs80.10.2indirecta
crates.iopkg-config0.3.33indirecta
crates.iopolling3.11.0indirecta
crates.iopolyval0.6.2indirecta
crates.ioportable-atomic1.13.1indirecta
crates.ioportable-atomic-util0.2.7indirecta
crates.iopotential_utf0.1.5indirecta
crates.iopowerfmt0.2.0indirecta
crates.ioppv-lite860.2.21indirecta
crates.iopredicates3.1.4indirecta
crates.iopredicates-core1.0.10indirecta
crates.iopredicates-tree1.0.13indirecta
crates.iopretty_assertions1.4.1indirecta
crates.ioprettyplease0.2.37indirecta
crates.ioprimeorder0.13.6indirecta
crates.ioproc-macro-crate3.5.0indirecta
crates.ioproc-macro21.0.106indirecta
crates.ioproc-macro2-diagnostics0.10.1indirecta
crates.ioprost0.14.4indirecta
crates.ioprost-build0.14.4indirecta
crates.ioprost-derive0.14.4indirecta
crates.ioprost-types0.14.4indirecta
crates.ioprost-wkt0.7.1indirecta
crates.ioprost-wkt-build0.7.1indirecta
crates.ioprost-wkt-types0.7.1indirecta
crates.ioprotobuf-src2.1.1+27.1indirecta
crates.ioquad-rand0.2.3indirecta
crates.ioquanta0.12.6indirecta
crates.ioquinn0.11.9indirecta
crates.ioquinn-proto0.11.15indirecta
crates.ioquinn-udp0.5.14indirecta
crates.ioquote1.0.45indirecta
crates.ior-efi5.3.0indirecta
crates.ior-efi6.0.0indirecta
crates.iorand0.10.1indirecta
crates.iorand0.7.3indirecta
crates.iorand0.8.6indirecta
crates.iorand0.9.4indirecta
crates.iorand_chacha0.2.2indirecta
crates.iorand_chacha0.3.1indirecta
crates.iorand_chacha0.9.0indirecta
crates.iorand_core0.10.1indirecta
crates.iorand_core0.5.1indirecta
crates.iorand_core0.6.4indirecta
crates.iorand_core0.9.5indirecta
crates.iorand_hc0.2.0indirecta
crates.iorand_xoshiro0.7.0indirecta
crates.iorapidhash4.4.1indirecta
crates.ioraw-cpuid11.6.0indirecta
crates.iordkafka-sys4.10.0+2.12.1indirecta
crates.ioredox_syscall0.5.18indirecta
crates.ioredox_users0.5.2indirecta
crates.ioref-cast1.0.25indirecta
crates.ioref-cast-impl1.0.25indirecta
crates.ioregex1.12.3indirecta
crates.ioregex-automata0.4.14indirecta
crates.ioregex-lite0.1.9indirecta
crates.ioregex-syntax0.8.10indirecta
crates.ioretry-policies0.5.2indirecta
crates.iorfc69790.4.0indirecta
crates.ioring0.17.14indirecta
crates.ioroaring0.11.4indirecta
crates.iorust-embed8.11.0indirecta
crates.iorust-embed-impl8.11.0indirecta
crates.iorust-embed-utils8.11.0indirecta
crates.iorustc-hash2.1.2indirecta
crates.iorustc_version0.4.1indirecta
crates.iorustify0.7.0indirecta
crates.iorustify_derive0.5.5indirecta
crates.iorustix1.1.4indirecta
crates.iorustls0.23.40indirecta
crates.iorustls-native-certs0.7.3indirecta
crates.iorustls-native-certs0.8.4indirecta
crates.iorustls-pemfile2.2.0indirecta
crates.iorustls-pki-types1.14.1indirecta
crates.iorustls-platform-verifier0.7.0indirecta
crates.iorustls-platform-verifier-android0.1.1indirecta
crates.iorustls-webpki0.103.13indirecta
crates.iorustversion1.0.22indirecta
crates.ioRustyXML0.3.0indirecta
crates.ioryu1.0.23indirecta
crates.iosame-file1.0.6indirecta
crates.iosasl2-sys0.1.22+2.1.28indirecta
crates.ioschannel0.1.29indirecta
crates.ioschemars0.9.0indirecta
crates.ioschemars1.2.1indirecta
crates.ioscopeguard1.2.0indirecta
crates.iosec10.7.3indirecta
crates.iosecrecy0.10.3indirecta
crates.iosecurity-framework2.11.1indirecta
crates.iosecurity-framework3.7.0indirecta
crates.iosecurity-framework-sys2.17.0indirecta
crates.ioseq-macro0.3.6indirecta
crates.ioserde-big-array0.5.1indirecta
crates.ioserde-saphyr0.0.27indirecta
crates.ioserde-value0.7.0indirecta
crates.ioserde_bytes0.11.19indirecta
crates.ioserde_core1.0.228indirecta
crates.ioserde_nanos0.1.4indirecta
crates.ioserde_path_to_error0.1.20indirecta
crates.ioserde_qs0.8.5indirecta
crates.ioserde_repr0.1.20indirecta
crates.ioserde_with3.21.0indirecta
crates.ioserde_with_macros3.21.0indirecta
crates.iosha1_smol1.0.1indirecta
crates.iosha20.10.9indirecta
crates.iosha20.11.0indirecta
crates.iosharded-slab0.1.7indirecta
crates.ioshared_child1.1.1indirecta
crates.ioshellexpand3.1.2indirecta
crates.ioshlex1.3.0indirecta
crates.ioshlex2.0.1indirecta
crates.iosigchld0.2.4indirecta
crates.iosignal-hook0.3.18indirecta
crates.iosignal-hook-registry1.4.8indirecta
crates.iosignatory0.27.1indirecta
crates.iosignature2.2.0indirecta
crates.iosimd-adler320.3.9indirecta
crates.iosimd_cesu81.1.1indirecta
crates.iosimdutf80.1.5indirecta
crates.iosimilar3.1.1indirecta
crates.iosimple_asn10.6.4indirecta
crates.iosketches-ddsketch0.3.1indirecta
crates.ioslab0.4.12indirecta
crates.iosmallvec1.15.1indirecta
crates.iosnafu0.8.9indirecta
crates.iosnafu-derive0.8.9indirecta
crates.iosnap1.1.1indirecta
crates.iosocket20.6.4indirecta
crates.iospin0.10.1indirecta
crates.iospin0.9.9indirecta
crates.iospki0.7.3indirecta
crates.iosqlx-core0.9.0indirecta
crates.iosqlx-macros0.9.0indirecta
crates.iosqlx-macros-core0.9.0indirecta
crates.iosqlx-mysql0.9.0indirecta
crates.iosqlx-postgres0.9.0indirecta
crates.iosqlx-sqlite0.9.0indirecta
crates.iostable_deref_trait1.2.1indirecta
crates.iostringprep0.1.5indirecta
crates.iostrsim0.11.1indirecta
crates.iosubtle2.6.1indirecta
crates.iosyn1.0.109indirecta
crates.iosyn2.0.117indirecta
crates.iosync_wrapper1.0.2indirecta
crates.iosynstructure0.12.6indirecta
crates.iosynstructure0.13.2indirecta
crates.iotagptr0.2.0indirecta
crates.iotempfile3.27.0indirecta
crates.iotermtree0.5.1indirecta
crates.iothiserror-impl1.0.69indirecta
crates.iothiserror-impl2.0.18indirecta
crates.iothread_local1.1.9indirecta
crates.iothrift0.17.0indirecta
crates.iotikv-jemalloc-sys0.6.1+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7indirecta
crates.iotime-core0.1.8indirecta
crates.iotime-macros0.2.27indirecta
crates.iotiny-keccak2.0.2indirecta
crates.iotinystr0.8.3indirecta
crates.iotinyvec1.11.0indirecta
crates.iotinyvec_macros0.1.1indirecta
crates.iotoken-source1.0.0indirecta
crates.iotokio-macros2.7.0indirecta
crates.iotokio-native-tls0.3.1indirecta
crates.iotokio-rustls0.26.4indirecta
crates.iotokio-stream0.1.18indirecta
crates.iotokio-websockets0.10.1indirecta
crates.iotoml_datetime1.1.1+spec-1.1.0indirecta
crates.iotoml_edit0.25.12+spec-1.1.0indirecta
crates.iotoml_parser1.1.2+spec-1.1.0indirecta
crates.iotonic0.14.6indirecta
crates.iotonic-prost0.14.6indirecta
crates.iotower-layer0.3.3indirecta
crates.iotower-service0.3.3indirecta
crates.iotracing-attributes0.1.31indirecta
crates.iotracing-core0.1.36indirecta
crates.iotracing-log0.2.0indirecta
crates.iotracing-serde0.2.0indirecta
crates.iotracing-test0.2.6indirecta
crates.iotracing-test-macro0.2.6indirecta
crates.iotrait-variant0.1.2indirecta
crates.iotry-lock0.2.5indirecta
crates.iotwox-hash2.1.2indirecta
crates.iotyped-builder-macro0.20.1indirecta
crates.iotyped-builder-macro0.23.2indirecta
crates.iotypeid1.0.3indirecta
crates.iotypenum1.20.1indirecta
crates.iotypetag-impl0.2.22indirecta
crates.ioucd-trie0.1.7indirecta
crates.iouncased0.9.10indirecta
crates.iounicode-bidi0.3.18indirecta
crates.iounicode-ident1.0.24indirecta
crates.iounicode-normalization0.1.25indirecta
crates.iounicode-properties0.1.4indirecta
crates.iounicode-width0.2.2indirecta
crates.iounicode-xid0.2.6indirecta
crates.iouniversal-hash0.5.1indirecta
crates.iounsafe-libyaml-norway0.2.15indirecta
crates.iountrusted0.7.1indirecta
crates.iountrusted0.9.0indirecta
crates.ioutf8_iter1.0.4indirecta
crates.ioutf8parse0.2.2indirecta
crates.ioutoipa-gen5.5.0indirecta
crates.iovaluable-derive0.1.1indirecta
crates.iovaluable-serde0.1.1indirecta
crates.iovcpkg0.2.15indirecta
crates.ioveil-macros0.2.0indirecta
crates.ioversion_check0.9.5indirecta
crates.iovsimd0.8.0indirecta
crates.iowaker-fn1.2.0indirecta
crates.iowalkdir2.5.0indirecta
crates.iowant0.3.1indirecta
crates.iowasi0.11.1+wasi-snapshot-preview1indirecta
crates.iowasi0.9.0+wasi-snapshot-preview1indirecta
crates.iowasip21.0.3+wasi-0.2.9indirecta
crates.iowasip30.4.0+wasi-0.3.0-rc-2026-01-06indirecta
crates.iowasm-bindgen0.2.122indirecta
crates.iowasm-bindgen-futures0.4.72indirecta
crates.iowasm-bindgen-macro0.2.122indirecta
crates.iowasm-bindgen-macro-support0.2.122indirecta
crates.iowasm-bindgen-shared0.2.122indirecta
crates.iowasm-encoder0.244.0indirecta
crates.iowasm-metadata0.244.0indirecta
crates.iowasm-streams0.4.2indirecta
crates.iowasmparser0.244.0indirecta
crates.iowasmtimer0.4.3indirecta
crates.ioweb-sys0.3.99indirecta
crates.ioweb-time1.1.0indirecta
crates.iowebpki-roots0.26.11indirecta
crates.iowebpki-roots1.0.7indirecta
crates.iowhoami2.1.2indirecta
crates.iowinapi0.3.9indirecta
crates.iowinapi-i686-pc-windows-gnu0.4.0indirecta
crates.iowinapi-util0.1.11indirecta
crates.iowinapi-x86_64-pc-windows-gnu0.4.0indirecta
crates.iowindows-core0.62.2indirecta
crates.iowindows-implement0.60.2indirecta
crates.iowindows-interface0.59.3indirecta
crates.iowindows-link0.2.1indirecta
crates.iowindows-result0.4.1indirecta
crates.iowindows-strings0.5.1indirecta
crates.iowindows-sys0.52.0indirecta
crates.iowindows-sys0.60.2indirecta
crates.iowindows-sys0.61.2indirecta
crates.iowindows-targets0.52.6indirecta
crates.iowindows-targets0.53.5indirecta
crates.iowindows_aarch64_gnullvm0.52.6indirecta
crates.iowindows_aarch64_gnullvm0.53.1indirecta
crates.iowindows_aarch64_msvc0.52.6indirecta
crates.iowindows_aarch64_msvc0.53.1indirecta
crates.iowindows_i686_gnu0.52.6indirecta
crates.iowindows_i686_gnu0.53.1indirecta
crates.iowindows_i686_gnullvm0.52.6indirecta
crates.iowindows_i686_gnullvm0.53.1indirecta
crates.iowindows_i686_msvc0.52.6indirecta
crates.iowindows_i686_msvc0.53.1indirecta
crates.iowindows_x86_64_gnu0.52.6indirecta
crates.iowindows_x86_64_gnu0.53.1indirecta
crates.iowindows_x86_64_gnullvm0.52.6indirecta
crates.iowindows_x86_64_gnullvm0.53.1indirecta
crates.iowindows_x86_64_msvc0.52.6indirecta
crates.iowindows_x86_64_msvc0.53.1indirecta
crates.iowinnow1.0.3indirecta
crates.iowit-bindgen0.51.0indirecta
crates.iowit-bindgen0.57.1indirecta
crates.iowit-bindgen-core0.51.0indirecta
crates.iowit-bindgen-rust0.51.0indirecta
crates.iowit-bindgen-rust-macro0.51.0indirecta
crates.iowit-component0.244.0indirecta
crates.iowit-parser0.244.0indirecta
crates.iowriteable0.6.3indirecta
crates.ioxmlparser0.13.6indirecta
crates.ioyansi1.0.1indirecta
crates.ioyoke0.8.3indirecta
crates.ioyoke-derive0.8.2indirecta
crates.iozerocopy0.8.50indirecta
crates.iozerocopy-derive0.8.50indirecta
crates.iozerofrom0.1.8indirecta
crates.iozerofrom-derive0.1.7indirecta
crates.iozeroize1.8.2indirecta
crates.iozeroize_derive1.4.3indirecta
crates.iozerotrie0.2.4indirecta
crates.iozerovec0.11.6indirecta
crates.iozerovec-derive0.11.3indirecta
crates.iozip3.0.0indirecta
crates.iozlib-rs0.6.3indirecta
crates.iozmij1.0.21indirecta
crates.iozopfli0.8.3indirecta
crates.iozstd0.13.3indirecta
crates.iozstd-safe7.2.4indirecta
crates.iozstd-sys2.0.16+zstd.1.5.7indirecta
PyPIattrsindirecta
PyPIauthlibindirecta
PyPIcachetoolsindirecta
PyPIconfluent-kafkaindirecta
PyPIfastavroindirecta
PyPIhttpxindirecta
PyPImarkdown-grid-tables0.6.0indirecta
PyPImkdocsindirecta
PyPImkdocs-autorefsindirecta
PyPImkdocs-exclude-search0.6.6indirecta
PyPImkdocs-material9.7.6indirecta
PyPImkdocs-material-extensions1.3.1indirecta
PyPImkdocs-monorepo-pluginindirecta
PyPIorjsonindirecta
PyPIpandasindirecta
PyPIpyarrowindirecta
PyPIpylanceindirecta
PyPIpytestindirecta
PyPIrequestsindirecta
PyPIurllib3indirecta
Avisos de dependencias 7

Este repositorio no publica ningún paquete que el índice resuelva, así que se evaluó su propio grafo de dependencias — 763 paquetes, que incluyen también fijaciones de desarrollo y prueba que nunca se distribuyen: 7 tienen avisos conocidos, de los cuales 1 son directas. 22 no pudieron evaluarse: sin versión resuelta, ecosistema no admitido, o fuera de la lista de paquetes informada.

PaqueteVersiónRelaciónGravedadAvisosCorregido en
quick-xml0.40.1directaalta20.41.0
thrift0.17.0indirectamoderada10.23.0
rand0.7.3indirectabaja20.10.1
http-types2.12.0indirectadesconocida1
instant0.1.13indirectadesconocida1
paste1.0.15indirectadesconocida1
rustls-pemfile2.2.0indirectadesconocida1

Un aviso significa que la versión registrada en el grafo de dependencias cae dentro del rango afectado de un aviso. No se analiza la alcanzabilidad, y el grafo incluye fijaciones de desarrollo y prueba: un hallazgo puede referirse al utillaje y no al software distribuido.

Informe JSON sin procesar legible por máquina
{
  "data": {
    "repo": {
      "topics": [
        "catalog",
        "data-lake",
        "iceberg",
        "lakehouse",
        "rust",
        "lakehouse-governance",
        "open-lakehouse"
      ],
      "is_fork": false,
      "size_kb": 26897,
      "has_wiki": false,
      "homepage": "https://docs.lakekeeper.io",
      "languages": {
        "CSS": 53341,
        "HTML": 35972,
        "Just": 16907,
        "Rust": 6469173,
        "Shell": 19107,
        "Python": 228331,
        "PLpgSQL": 24482,
        "Dockerfile": 6281,
        "JavaScript": 22474,
        "Open Policy Agent": 89574
      },
      "pushed_at": "2026-07-27T10:12:38Z",
      "created_at": "2024-04-05T17:42:07Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-27T07:24:42Z",
      "description": "Lakekeeper is an Apache-Licensed, secure, fast and easy to use Apache Iceberg REST Catalog written in Rust.",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "Apache-2.0",
      "default_branch": "main",
      "license_spdx_raw": "Apache-2.0",
      "primary_language": "Rust",
      "significant_languages": [
        "Rust"
      ]
    },
    "owner": {
      "blog": "http://lakekeeper.io",
      "name": "Lakekeeper",
      "type": "Organization",
      "login": "lakekeeper",
      "company": null,
      "location": "Germany",
      "followers": 34,
      "avatar_url": "https://avatars.githubusercontent.com/u/183464583?v=4",
      "created_at": "2024-10-01T06:08:05Z",
      "is_verified": null,
      "public_repos": 14,
      "account_age_days": 664
    },
    "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.13.1",
          "kind": "patch",
          "published_at": "2026-06-30T21:11:08Z"
        },
        {
          "tag": "v0.13.0",
          "kind": "minor",
          "published_at": "2026-06-30T07:17:56Z"
        },
        {
          "tag": "v0.12.4",
          "kind": "patch",
          "published_at": "2026-06-17T14:09:38Z"
        },
        {
          "tag": "v0.12.3",
          "kind": "patch",
          "published_at": "2026-05-26T13:26:22Z"
        },
        {
          "tag": "v0.11.6",
          "kind": "patch",
          "published_at": "2026-05-10T14:45:06Z"
        },
        {
          "tag": "v0.12.2",
          "kind": "patch",
          "published_at": "2026-05-10T06:31:19Z"
        },
        {
          "tag": "v0.12.1",
          "kind": "patch",
          "published_at": "2026-05-05T06:04:35Z"
        },
        {
          "tag": "v0.12.0",
          "kind": "minor",
          "published_at": "2026-04-03T08:28:01Z"
        },
        {
          "tag": "v0.11.5",
          "kind": "patch",
          "published_at": "2026-04-02T17:54:29Z"
        },
        {
          "tag": "v0.11.4",
          "kind": "patch",
          "published_at": "2026-03-30T17:40:29Z"
        },
        {
          "tag": "v0.11.3",
          "kind": "patch",
          "published_at": "2026-03-14T11:21:42Z"
        },
        {
          "tag": "v0.11.2",
          "kind": "patch",
          "published_at": "2026-01-30T13:16:26Z"
        },
        {
          "tag": "v0.11.1",
          "kind": "patch",
          "published_at": "2026-01-06T20:45:45Z"
        },
        {
          "tag": "v0.11.0",
          "kind": "minor",
          "published_at": "2026-01-01T16:51:19Z"
        },
        {
          "tag": "v0.10.4",
          "kind": "patch",
          "published_at": "2025-10-29T07:04:46Z"
        },
        {
          "tag": "v0.10.3",
          "kind": "patch",
          "published_at": "2025-10-15T11:11:19Z"
        },
        {
          "tag": "v0.10.2",
          "kind": "patch",
          "published_at": "2025-10-06T11:37:18Z"
        },
        {
          "tag": "v0.10.1",
          "kind": "patch",
          "published_at": "2025-10-05T14:00:44Z"
        },
        {
          "tag": "v0.10.0",
          "kind": "minor",
          "published_at": "2025-09-29T18:54:09Z"
        },
        {
          "tag": "v0.9.5",
          "kind": "patch",
          "published_at": "2025-08-14T14:48:57Z"
        },
        {
          "tag": "v0.9.4",
          "kind": "patch",
          "published_at": "2025-08-06T17:45:31Z"
        },
        {
          "tag": "v0.9.3",
          "kind": "patch",
          "published_at": "2025-07-18T10:32:01Z"
        },
        {
          "tag": "v0.9.2",
          "kind": "patch",
          "published_at": "2025-07-03T17:43:38Z"
        },
        {
          "tag": "v0.9.1",
          "kind": "patch",
          "published_at": "2025-06-19T08:46:35Z"
        },
        {
          "tag": "v0.9.0",
          "kind": "minor",
          "published_at": "2025-06-17T18:25:12Z"
        },
        {
          "tag": "v0.8.5",
          "kind": "patch",
          "published_at": "2025-05-09T11:40:52Z"
        },
        {
          "tag": "v0.8.4",
          "kind": "patch",
          "published_at": "2025-05-02T15:57:42Z"
        },
        {
          "tag": "v0.8.3",
          "kind": "patch",
          "published_at": "2025-04-18T08:50:18Z"
        },
        {
          "tag": "v0.8.2",
          "kind": "patch",
          "published_at": "2025-04-17T15:08:59Z"
        },
        {
          "tag": "v0.8.1",
          "kind": "patch",
          "published_at": "2025-04-13T15:34:57Z"
        },
        {
          "tag": "v0.8.0",
          "kind": "minor",
          "published_at": "2025-04-08T11:36:42Z"
        },
        {
          "tag": "v0.7.4",
          "kind": "patch",
          "published_at": "2025-03-20T21:20:13Z"
        },
        {
          "tag": "v0.7.3",
          "kind": "patch",
          "published_at": "2025-03-04T15:15:04Z"
        },
        {
          "tag": "v0.7.2",
          "kind": "patch",
          "published_at": "2025-02-27T14:34:47Z"
        },
        {
          "tag": "v0.7.1",
          "kind": "patch",
          "published_at": "2025-02-26T11:54:23Z"
        },
        {
          "tag": "v0.7.0",
          "kind": "minor",
          "published_at": "2025-02-24T09:40:28Z"
        },
        {
          "tag": "v0.6.2",
          "kind": "patch",
          "published_at": "2025-01-30T17:53:40Z"
        },
        {
          "tag": "v0.6.1",
          "kind": "patch",
          "published_at": "2025-01-27T12:29:42Z"
        },
        {
          "tag": "v0.6.0",
          "kind": "minor",
          "published_at": "2025-01-07T16:59:30Z"
        },
        {
          "tag": "v0.5.2",
          "kind": "patch",
          "published_at": "2024-12-17T11:24:15Z"
        },
        {
          "tag": "v0.5.1",
          "kind": "patch",
          "published_at": "2024-12-12T18:28:17Z"
        },
        {
          "tag": "v0.5.0",
          "kind": "minor",
          "published_at": "2024-12-06T20:59:11Z"
        },
        {
          "tag": "v0.4.3",
          "kind": "patch",
          "published_at": "2024-11-13T18:34:24Z"
        },
        {
          "tag": "v0.4.2",
          "kind": "patch",
          "published_at": "2024-10-28T22:38:39Z"
        },
        {
          "tag": "v0.4.1",
          "kind": "patch",
          "published_at": "2024-10-15T19:56:54Z"
        },
        {
          "tag": "v0.4.0",
          "kind": "minor",
          "published_at": "2024-10-03T12:32:57Z"
        },
        {
          "tag": "v0.3.0",
          "kind": "minor",
          "published_at": "2024-08-26T18:16:52Z"
        },
        {
          "tag": "v0.2.1",
          "kind": "patch",
          "published_at": "2024-07-29T13:59:15Z"
        },
        {
          "tag": "v0.2.0",
          "kind": "minor",
          "published_at": "2024-07-26T16:11:54Z"
        },
        {
          "tag": "v0.1.0",
          "kind": "minor",
          "published_at": "2024-06-17T19:41:05Z"
        },
        {
          "tag": "v0.0.1",
          "kind": "patch",
          "published_at": "2024-06-15T21:47:15Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "4cc77d3bf2a61d6693a22181baa6a92ee7ff0ab5",
          "body": "Add a `DeterminingFactor::SystemAuthority { source, reason }` variant so an\nauthorizer can record in the audit trail that an authorization was determined\nby a built-in/system authority tier — e.g. a recovery mechanism that lets a\nprivileged system role act despite a policy that would otherwise forbid it —\nrather than by a normal authored policy. The variant is authorizer-agnostic:\nany authorizer-specific detail lives in opaque `source`/`reason` strings.",
          "is_bot": false,
          "headline": "feat(authz): record system-authority provenance in audit events (#1912)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-07-27T07:24:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8c29d1045323f6732ee4d3389304493db0f26865",
          "body": "Automated sync of documentation files from lakekeeper-plus:\n- management-open-api-plus.yaml: updated\n- lakekeeper.cedarschema: no changes\n- enterprise-release-notes.md: no changes\n\nSource commit: 574b211d4d149a48ee8df1eac5259b1347e2a048\n\nCo-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(docs): Sync documentation from enterprise repo (#1911)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-07-25T15:29:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6a435157ad5baad3a3ee3ae8af03f31459cef340",
          "body": "…n (#1901)\n\nTable commit authorization now conveys which branch/tag refs a commit\ntargets and which kinds of updates it contains, so an authorizer can\nmake per-ref decisions (e.g. protect `main`) and require table-wide\nauthority for changes beyond a branch-ref move.\n\n- Add `TableUpdateKind`, a typed\n[…]\nh data.\n- Populate them at the table commit site from the request's updates.\n\nThe OpenFGA authorizer matches `Commit { .. }` and is unaffected; the\nnew signal is inert until an authorizer consumes it.",
          "is_bot": false,
          "headline": "feat(authz): carry target refs and update kinds in table commit actio…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-07-25T15:28:46Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8d89d2b9089008db81788b9ff220967d8407d63b",
          "body": "Automated sync of documentation files from lakekeeper-plus:\n- management-open-api-plus.yaml: updated\n- lakekeeper.cedarschema: no changes\n- enterprise-release-notes.md: updated\n\nSource commit: b99b7ce86b50dffc42d627b4cbe3f9fb9e7ee90b\n\nCo-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(docs): Sync documentation from enterprise repo (#1907)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-07-24T13:17:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "46c8b5b042972eb1a6fe05dfd10d83ed5496469d",
          "body": null,
          "is_bot": false,
          "headline": "chore(test-utils): let the test builder set admission_roles (#1909)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-07-23T22:36:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "706562d1ab29a2c5b06005ebdac4c65af7ffcfcf",
          "body": "Automated sync of documentation files from lakekeeper-plus:\n- management-open-api-plus.yaml: updated\n- lakekeeper.cedarschema: updated\n- enterprise-release-notes.md: updated\n\nSource commit: 0c5528f3db7515661d37eafc57c4b889d6ba41eb",
          "is_bot": false,
          "headline": "chore(docs): Sync documentation from enterprise repo (#1887)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-07-21T16:51:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "81d0eb9185c4bfb936a2f1332832c6fa583a4ce8",
          "body": null,
          "is_bot": false,
          "headline": "chore(docs): document INSECURE_ALLOW_UNAUTHENTICATED",
          "author_name": "Christian Thiel",
          "author_login": "c-thiel",
          "committed_at": "2026-07-21T11:31:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "45b94b417b522d09bd3e77bbf17673ff76837b01",
          "body": "…#1894)\n\nAdd support for Alibaba OSS Cloud Credential and Alibaba OSS S3-Compatible storage. This is a beta.\n---------\n\nCo-authored-by: Christian <christian@vakamo.com>\nCo-authored-by: brgr-s <stephan@hansetag.com>",
          "is_bot": false,
          "headline": "feat(storage): add Alibaba Cloud OSS credential and storage support (…",
          "author_name": "yoogo",
          "author_login": "yoogoc",
          "committed_at": "2026-07-21T09:32:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "54595da790291f07455be6ccc5541d77dcbf1f08",
          "body": "…chemas (#1897)\n\nIceberg schemas were persisted as one opaque JSONB blob per table/view, so\nindividual columns weren't queryable or addressable and every read paid a\nfull-schema JSON parse. Column-level governance (tags, policies) needs each\nfield to be a first-class, referenceable row.\n\nStore schem\n[…]\nejecting new JSONB writes, and drops the NOT NULL\nconstraint atomically. Schema DDL works immediately after the migration; the\nlegacy JSONB column stays one release as a fallback and is dropped later.",
          "is_bot": false,
          "headline": "feat(storage): normalized first-class column store for table & view s…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-07-20T17:51:12Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3629ce5506669193eac8f320bd2174f5c338f92d",
          "body": "…905)",
          "is_bot": false,
          "headline": "fix(ci): unmask and harden kube-auth username subject-source test (#1…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-07-20T12:09:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4673ab65ccca521706f6e74f59eb0f3a5f0acdc8",
          "body": "…t (#1904)",
          "is_bot": false,
          "headline": "fix(ci): poll pod phase instead of `kubectl run -it` in kube-auth tes…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-07-20T08:33:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bbc4d2d584d89b475f659f96d4a6780c3bceb97d",
          "body": "…e-notes signup (#1903)\n\nAdd a shared \"Client Authentication\" page for the generic-tables clients\ncovering all four OAuth2 strategies — StaticToken, ClientCredentials,\nDeviceCodeFlow (RFC 8628), and AuthorizationCodeFlow + PKCE (RFC 7636) —\nwith Python/Java content tabs, a strategy-choosing table, a\n[…]\nle unattended jobs use ClientCredentials.\n\nExpand the Python client page with per-backend storage configuration\n(S3, Azure ADLS, GCS) and worked examples (Lance, Delta, Vortex, Paimon,\ndataset, HDF5).",
          "is_bot": false,
          "headline": "chore(docs): generic-tables client auth, storage backends, and releas…",
          "author_name": "Viktor Kessler",
          "author_login": "v-kessler",
          "committed_at": "2026-07-20T06:54:39Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7eda16a8146260b15f4e2c62cf574d2788170c8b",
          "body": null,
          "is_bot": false,
          "headline": "chore(ci): authenticate and sideload images in kube-auth test (#1902)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-07-17T15:18:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b85e853871ffdcbd49e5417e5c21da45773ee665",
          "body": "Wires two new UI config env vars into the console config:\n- LAKEKEEPER__UI__OPENID_POST_LOGOUT_REDIRECT_URL\n- LAKEKEEPER__UI__OPENID_POST_LOGOUT_REDIRECT_DISABLED\n\nAlso sets Cache-Control (+ weak ETag / 304 revalidation) on served UI\nassets so the DuckDB WASM and hashed bundles are cached by the browser\ninstead of re-downloaded on every load. index.html stays no-cache.\n\n---------\n\nCo-authored-by: Christian <christian@vakamo.com>",
          "is_bot": false,
          "headline": "feat: post-logout redirect env vars + static-asset cache headers (#1890)",
          "author_name": "Viktor Kessler",
          "author_login": "v-kessler",
          "committed_at": "2026-07-17T13:10:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "caa1b0568967a903db32e0eea9073506645f66d8",
          "body": "* iceberg-rust fork rev bump",
          "is_bot": false,
          "headline": "chore: iceberg-rust fork version bump (#1900)",
          "author_name": "brgr-s",
          "author_login": "brgr-s",
          "committed_at": "2026-07-16T18:22:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6a855b15207d5c4955ebb7aca45b4734074cefe5",
          "body": "… (#1899)\n\nAdd LAKEKEEPER__KUBERNETES_AUTHENTICATION_SUBJECT_SOURCE to select whether a\nKubernetes service account's Lakekeeper user ID derives from the token's\n`uid` (default, unchanged) or `username`\n(`system:serviceaccount:<namespace>:<name>`). The username form is stable\nacross clusters, so role\n[…]\nracted with grep/sed (compact JSON,\n  no jq in curlimages/curl).\n- Reword the k8s-openapi workspace comment: the version is selected by the\n  lakekeeper crate, not overridable by downstream consumers.",
          "is_bot": false,
          "headline": "feat(authn): configurable Kubernetes subject source (uid or username)…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-07-16T10:36:27Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "385d0b5d80f2844ca4e320030b8d5cbe6e187311",
          "body": "Kubernetes service-account identities appear as `kubernetes~<uid>`, not\n`k8s~<namespace>~<service-account-name>`. The subject is the service\naccount's Kubernetes `uid` (from the TokenReview API); the\n`system:serviceaccount:<ns>:<name>` string is stored as the display name.\n\nAlso corrects the INSTANCE_ADMINS examples, which used the username form,\nand notes that UIDs differ per cluster.",
          "is_bot": false,
          "headline": "fix(docs): correct Kubernetes user identity format",
          "author_name": "Christian Thiel",
          "author_login": "c-thiel",
          "committed_at": "2026-07-15T12:10:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "34dea9651fa526a1bc0aeb8fde05fbc70a49c394",
          "body": "Roles carry a provider namespace in their identity (`provider~source_id`).\nRoles resolved from a configured role provider (LDAP/Entra/Okta/token) are\nmaintained by provider sync, so mutating them through the management API\ncreates drift the next sync silently clobbers.\n\nAdd an `Authorizer::managed_r\n[…]\n\n\nNo behavior change without a role provider — the default set is empty, so\nOSS, AllowAll and OpenFGA are unaffected. The enterprise Cedar authorizer\npopulates the set (separate change). No migration.",
          "is_bot": false,
          "headline": "feat(authz): reject role writes in provider-managed namespaces (#1891)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-07-15T07:03:25Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0974828ba7df3f1cbe42336e5db9e1ed0e0feab6",
          "body": "Update crossbeam-epoch 0.9.18 -> 0.9.20 to resolve RUSTSEC-2026-0204",
          "is_bot": false,
          "headline": "chore(deps): bump crossbeam-epoch to fix RUSTSEC-2026-0204 (#1895)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-07-14T20:15:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b8add6baa7719a4b5fe35d3fb0d9d73e20113210",
          "body": null,
          "is_bot": false,
          "headline": "chore: Release as 0.14.0",
          "author_name": "Christian Thiel",
          "author_login": "c-thiel",
          "committed_at": "2026-07-11T06:56:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cab29ec67643a3df977db803b4dada89a53fd9c4",
          "body": null,
          "is_bot": false,
          "headline": "chore(docs): Okta Role Provider",
          "author_name": "Christian Thiel",
          "author_login": "c-thiel",
          "committed_at": "2026-07-11T06:55:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4c645cc99c4450921454baacbc6dfd5a2f3066d1",
          "body": null,
          "is_bot": false,
          "headline": "chore(docs): Improve entra role provider table layout",
          "author_name": "Christian Thiel",
          "author_login": "c-thiel",
          "committed_at": "2026-07-07T06:10:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f6b7a2df899bbb2c4f8e1e5f309c7fb9158ad1cb",
          "body": "Emit Select only for intermediate referenced-by views (where it gates\nDEFINER chain traversal); the target view's Select was always discarded\nby interpret_authz_results_for_load_view but still cost an authorizer\nevaluation and logged a misleading SelectView decision. Target is now\nidentified by ident to stay in lockstep with the consumer.",
          "is_bot": false,
          "headline": "fix(authz): stop evaluating discarded Select on target view load (#1886)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-07-02T15:06:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cf6489295a4b129057363296cb6dbb17c8ebcae7",
          "body": "Rename the tabular-expiration task queue to \"soft_deletion\" so the public\nAPI, config, and docs reflect what it actually does. Fully backward\ncompatible — pre-rename rows, API paths, and env vars keep working.\n\n- Queue name is now `soft_deletion`; `tabular_expiration` is retained as a\n  legacy read \n[…]\nick_task now ORDER BYs scheduled_for (deterministic, oldest-due-first),\n  required once the queue match became a set.\n- No DB migration: the transition is handled entirely with code-level\n  dual-read.",
          "is_bot": false,
          "headline": "feat(tasks): rename tabular_expiration queue to soft_deletion (#1881)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-07-02T15:00:31Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "38b49cd018557f3cf300d314cdb785351336ab33",
          "body": null,
          "is_bot": false,
          "headline": "chore(docs): Add 0.13.x docs to site",
          "author_name": "Christian Thiel",
          "author_login": "c-thiel",
          "committed_at": "2026-07-02T14:44:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3e7e6d2a8ea2f7c53694594a659f47ace8c8ecad",
          "body": "Emit Select only for intermediate referenced-by views (where it gates\nDEFINER chain traversal); the target view's Select was always discarded\nby interpret_authz_results_for_load_view but still cost an authorizer\nevaluation and logged a misleading SelectView decision. Target is now\nidentified by ident to stay in lockstep with the consumer.\n\n---------\n\nCo-authored-by: Christian Thiel <christian@vakamo.com>",
          "is_bot": false,
          "headline": "docs: ui branding (#1883)",
          "author_name": "Viktor Kessler",
          "author_login": "v-kessler",
          "committed_at": "2026-07-02T13:04:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d12eb6ee6045448acf4298158cc8346c1148a060",
          "body": "Automated sync of documentation files from lakekeeper-plus:\n- management-open-api-plus.yaml: updated\n- lakekeeper.cedarschema: no changes\n- enterprise-release-notes.md: updated\n\nSource commit: b77fdc145ee63fc3f849f31a02ed254674926274\n\nCo-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(docs): Sync documentation from enterprise repo (#1884)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-07-02T13:03:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "00745c714a6a208726367b179595a22456aee729",
          "body": "quick-xml <0.41 has two DoS advisories: O(N²) attribute-name parsing\n(RUSTSEC-2026-0194) and unbounded NsReader namespace-declaration\nallocation (RUSTSEC-2026-0195).\n\nThe exploitable path is the S3 remote-signer, which deserializes the\nclient-supplied DeleteObjects XML body via quick_xml::de::from_s\n[…]\nre 0.21 fork (ADLS), which parses Azure storage API\nresponses — not attacker input — so it is not reachable. Ignore both\nadvisories in deny.toml with that justification until the fork bumps\nquick-xml.",
          "is_bot": false,
          "headline": "fix(deps): bump quick-xml to 0.41 (RUSTSEC-2026-0194/0195) (#1885)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-07-02T12:32:46Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "982d7237e8c59158ace6ed70c15c5d512967115b",
          "body": null,
          "is_bot": false,
          "headline": "chore(ci): Release as 0.13.2",
          "author_name": "Christian Thiel",
          "author_login": "c-thiel",
          "committed_at": "2026-07-01T16:47:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "382d951db43a51e20f66da395e5f674b5e4d55cf",
          "body": null,
          "is_bot": false,
          "headline": "chore(docs): Add 0.13.1 release notes",
          "author_name": "Christian Thiel",
          "author_login": "c-thiel",
          "committed_at": "2026-07-01T16:28:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b5cf82d6076a6931d3d019b353e6b2756de2d92f",
          "body": null,
          "is_bot": false,
          "headline": "chore(ci): Fix setup-regal action changed organisation (#1880)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-07-01T06:26:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1f6a1fb6ee0ef78d5cb0ca5a96837ee579a03f1c",
          "body": null,
          "is_bot": false,
          "headline": "chore(main): release 0.13.1 (#1879)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-30T21:09:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ac1094a52e51da586c60a27159f9720784eb66e7",
          "body": "…client_id",
          "is_bot": false,
          "headline": "fix(UI): Update Console to 0.19.0 / remove leading slash for default …",
          "author_name": "Christian Thiel",
          "author_login": "c-thiel",
          "committed_at": "2026-06-30T19:27:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2d7aec8138c87b903b1c68673564b7a5f7de92c2",
          "body": null,
          "is_bot": false,
          "headline": "chore(main): release 0.13.0 (#1782)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-30T07:17:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "16b57fd3b15f9218b1b54397b73c40cf4822f741",
          "body": "anyhow <1.0.103 has a soundness bug: Error::downcast_mut() violates\nRust's borrow rules on errors created via Error::context(), allowing\nconstruction of an improper mutable reference (potential UB). Bump the\nlockfile to the patched 1.0.103.",
          "is_bot": false,
          "headline": "fix(deps): update anyhow to 1.0.103 (RUSTSEC-2026-0190)",
          "author_name": "Christian Thiel",
          "author_login": "c-thiel",
          "committed_at": "2026-06-30T05:42:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f9832d100002b01cf638aab19ce48feeedf1b240",
          "body": null,
          "is_bot": false,
          "headline": "chore(release): track all workspace crates in release-please config",
          "author_name": "Christian Thiel",
          "author_login": "c-thiel",
          "committed_at": "2026-06-30T05:20:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d12dfba0c20634d914abfd60c15586949fe138cc",
          "body": "Three doc-comment fixes in the role-membership management API; these\ndescriptions feed the generated OpenAPI spec (and the downstream plus\nspec), so they directly affect generated clients and SDK authors.\n\n- Pagination: the SDK-author note told clients to stop on\n  `next_page_token`, but the seriali\n[…]\nt or transitive.\n- RoleMember / RoleMemberRef claimed to be echoed by \"add/remove\n  confirmations\", but DELETE returns 204 with no body — only add echoes\n  the members. Reworded to \"add confirmation\".",
          "is_bot": false,
          "headline": "docs(roles): correct role-membership API doc inaccuracies (#1877)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-29T14:06:41Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c1189d4eb09c3569d8cbc5bf3328884e09964b3d",
          "body": "Automated sync of documentation files from lakekeeper-plus:\n- management-open-api-plus.yaml: updated\n- lakekeeper.cedarschema: updated\n- enterprise-release-notes.md: no changes\n\nSource commit: 097fe4df2cf6e4f3b2acc9d3ee494dfc6780a015\n\nCo-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(docs): Sync documentation from enterprise repo (#1845)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-29T13:05:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "87fc710240f8ae8f05f5611fe110d7006c3197d6",
          "body": "…on cap (#1876)\n\n`get_scheduled_project_ids` paginated `list_tasks` and only stopped when\n`next_page_token` came back `None`. But `list_tasks` echoes the supplied\npage token back on an empty terminal page (so callers can resume the same\ncursor later), so the token is never `None` once pagination has\n[…]\nsk scheduled.\n\nStop paginating when a page comes back empty, not only when the token is\nabsent. Extracts the decision into `has_more_task_pages` with a unit test\ncovering the empty-terminal-page case.",
          "is_bot": false,
          "headline": "fix(tasks): stop post-migration cleanup hook spinning to the paginati…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-29T12:20:52Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5526be42d4884d7045a2d2c3fb1bfa5dcd723061",
          "body": null,
          "is_bot": false,
          "headline": "chore(ui): Update console 0.18.3 (#1875)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-29T06:52:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9c3e50dd774b48d90e85ef6b484cc8ff98c3116f",
          "body": "…on guidance\n\nrelease-notes.md: the \"Authorizer-independent role membership\" entry claimed\nmembership is \"managed in the catalog itself ... regardless of the configured\nauthorizer.\" That's wrong — the ManagesRoleAssignments facet keeps membership\nedges single-source-of-truth in the authorizer's own \n[…]\nold same-release\nbug fixes into their feature, one line per multi-PR feature, de-emphasise\ninternal-authorizer-only changes for OSS readers, and don't re-announce PRs\nalready shipped in a rel-* patch.",
          "is_bot": false,
          "headline": "docs(release): fix v0.13.0 role-membership note; add changelog-curati…",
          "author_name": "Christian Thiel",
          "author_login": "c-thiel",
          "committed_at": "2026-06-28T17:07:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e732aebaaea1fa3be4feea033222cd919525d559",
          "body": "Updates embedded UI console v0.18.1 → v0.18.2\n(console-components v0.14.1 → v0.14.2).\n\n- LoQE surfaces a blocked object-storage fetch as a clear\n  CORS/credentials error instead of an opaque failure",
          "is_bot": false,
          "headline": "feat(deps): bump console to v0.18.2 (#1872)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-28T12:36:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7ba4d4438492f799d9bdd7a5d72ebe592cc546ee",
          "body": "A task that failed on its only attempt returned no error anywhere via the\nManagement API (`attempts: []`, no message), making maintenance failures\nundebuggable without server-log access. Surface the current attempt's\nmessage and persist a useful one.\n\n- Add an optional top-level `message` to GetTask\n[…]\nvisible in the API to\n  task-detail viewers — including cloud operators who cannot read logs. The\n  full chain is still emitted to the tracing logs as before.\n- Regenerate the management OpenAPI spec.",
          "is_bot": false,
          "headline": "feat(tasks): surface failure message in task details (#1873)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-28T11:01:36Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "228ebe1f9cf43fb5fdaecb4616ea525cf5a0679e",
          "body": "Updates embedded UI console from v0.15.1 to v0.18.1 (console-components\nv0.9.0 → v0.12.0). User-visible changes:\n\nNew\n- Files tab / storage explorer for S3, ADLS and GCS with DuckDB-powered\n  parquet/avro/csv preview, JSON/text preview, download and copy-path\n  (DuckDB WASM vendored for airgapped de\n[…]\n listing datasets\n- Hide system lakekeeper.* properties behind a toggle\n- Snapshot metrics fall back to added-* instead of showing a fake 0\n- Home logo aspect ratio; Roles-tab flash on Identities load",
          "is_bot": false,
          "headline": "feat(deps): bump console to v0.18.1 (#1871)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-27T16:50:23Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f146ada3de150a4108f8ad771a3102b3b873622f",
          "body": "…#1863)\n\nEvent listeners (added in #1075) fire after a transaction commits but before\nthe response is returned to the client, so a slow or misbehaving listener\nsilently adds to API latency with no visibility.\n\nThis instruments the shared `dispatch_event!` macro — covering every event type\nin one pla\n[…]\nin_all` does not spawn), so\na recorded duration is each listener's contribution to response latency, not its\nisolated execution time.\n\n---------\n\nCo-authored-by: Christian Thiel <christian@vakamo.com>",
          "is_bot": false,
          "headline": "feat(events): add timing instrumentation to event listener dispatch (…",
          "author_name": "Rupam Golui",
          "author_login": "Itz-Agasta",
          "committed_at": "2026-06-27T12:54:51Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "656bb901fdef217682b24a5e0ab94a1ca2473202",
          "body": null,
          "is_bot": false,
          "headline": "chore(docs): Add EntraID-Graph Role Provider docs (#1870)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-27T10:33:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ef9ff3a8c25ce5d85e8a2b5e570df27148bddde1",
          "body": null,
          "is_bot": false,
          "headline": "chore(docs): Admission Gate kebab-case",
          "author_name": "Christian Thiel",
          "author_login": "c-thiel",
          "committed_at": "2026-06-26T15:43:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8e971e37eecaa3c16655c116b4713a37ea42bd0c",
          "body": null,
          "is_bot": false,
          "headline": "chore(docs): Update Admission Gates JSON body docs",
          "author_name": "Christian Thiel",
          "author_login": "c-thiel",
          "committed_at": "2026-06-26T14:10:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "198efeb786d9a3064863c678c0f184b32789b7fa",
          "body": null,
          "is_bot": false,
          "headline": "chore(readme): Update Overview Image (#1868)",
          "author_name": "Viktor Kessler",
          "author_login": "v-kessler",
          "committed_at": "2026-06-26T13:41:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9147ec00c86f50109dbba03a031490538f87f5a8",
          "body": "Admission gates run post-authentication and may need to relay the caller's\ntoken to an external service (e.g. a control-plane that authorizes per the\nuser's own identity). The token is deliberately not on `RequestMetadata` —\nthat struct is cloned, debugged, and folded into audit events, so a raw\nbea\n[…]\nCopy` (cheap to forward to each gate). The\nin-repo fixture gates and tests are updated, with a new test asserting the\ntoken is threaded through and that a token-needing gate rejects when it is\nabsent.",
          "is_bot": false,
          "headline": "feat(authn): pass the caller's bearer token to admission gates (#1869)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-26T13:40:34Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "047807e9446ea873503c7584ce4676c1809bd098",
          "body": "SeaweedFS 4.36 authorizes sts:AssumeRole through the role's trust policy, so the\nstorage credential no longer needs the Admin action that earlier versions\nrequired to vend credentials. Drop it from the example and CI identities,\nleaving Read/List/Write/Tagging.\n\nThe CI created its bucket with `aws s\n[…]\nand the\nnon-admin identity suffices.\n\nDrop the -s3.iam.readOnly=false override too: it only enables the IAM write API,\nwhich the examples never call, and AssumeRole works on the default read-only IAM.",
          "is_bot": false,
          "headline": "chore(examples): use SeaweedFS 4.36 and drop the Admin action (#1867)",
          "author_name": "Chris Lu",
          "author_login": "chrislusf",
          "committed_at": "2026-06-25T14:59:27Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b92c9020710da87447957c11c72caf95d6c223e5",
          "body": "`AdmissionGate::admit` now returns `Admission` instead of `()`, carrying\noptional `resolved_roles` a gate resolved while admitting the request — so a\ngate that calls an external entitlement service can return the principal's\nroles in the same round-trip it uses for the allow/deny decision, rather th\n[…]\nyload with `admit()` / `with_roles()` constructors\n- `RequestMetadata::admission_roles` (+ setter/getter), reusing `TokenRoles`\n- middleware writes the resolved roles onto the request after gates pass",
          "is_bot": false,
          "headline": "feat(authn): let admission gates contribute resolved roles (#1866)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-24T09:57:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a00d59766fd09043d556af2ba1d4af9eae5e39b0",
          "body": "Introduce an `AdmissionGate` extension point: a coarse, per-request check\nrun in the auth middleware after the actor and instance-admin status are\nresolved, but before the request reaches any handler. Gates are held as an\nordered `AdmissionGates` list (first rejection wins, short-circuits) and are\ne\n[…]\nmissionGates`)\n- threaded through `ServeConfiguration` -> `RouterArgs` -> `AuthMiddlewareState`\n- invoked in `auth_middleware_fn` before `next.run`\n- add `ErrorModel::service_unavailable` (503) helper",
          "is_bot": false,
          "headline": "feat(authn): add pluggable post-authentication admission gates (#1865)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-24T07:15:43Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a58e40171f9572647973b7b270f84deaa7e7cef1",
          "body": "…rino & Starburst (#1864)\n\n* docs: Mention support for Azure & GCS vended credentials for Trino & Starburst\n* docs: Remove \"native\" from Trino & Starburst file system configs\n\n---------\n\nCo-authored-by: Christian <christian@vakamo.com>",
          "is_bot": false,
          "headline": "chore(docs): Mention support for Azure & GCS vended credentials for T…",
          "author_name": "Marius Grama",
          "author_login": "findinpath",
          "committed_at": "2026-06-22T12:23:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "89277d7b625d0183e383c886a361d9b0708f7eec",
          "body": "Cover the LAKEKEEPER__ROLE_PROVIDER_CHAIN__PERSIST_TOKEN_ROLES option\n(per-IdP behaviour, login-freshness, project scoping) and clarify that\nlakekeeper_role_provider_up is emitted only for external-backed (LDAP)\nproviders — alert with `== 0 or absent(...)`.",
          "is_bot": false,
          "headline": "docs(authz): document persist_token_roles for definer views",
          "author_name": "Christian Thiel",
          "author_login": "c-thiel",
          "committed_at": "2026-06-22T10:04:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d8de0db84e2427a15b66ba45867b782d5be40092",
          "body": "…se (#1861)\n\nGuard against running an older binary against a database that a newer\nLakekeeper has already migrated.\n\ncheck_migration_status only checked one direction (are the binary's\nmigrations applied?), so an older binary — whose migrations are a subset\nof what's applied — reported Complete and \n[…]\nun `serve --force-start` to start anyway (emergency\nrollback, accepting the risk of schema incompatibility).\n\nThe migrate command already aborted on this via VersionMissing; this\nbrings serve in line.",
          "is_bot": false,
          "headline": "feat(migrations): refuse to start against a newer (downgraded) databa…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-21T18:07:30Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c492020154fdf8e18933b349ffbb2ba0835c8d45",
          "body": "…pired (#1862)\n\nConditional `loadTable` (If-None-Match) returned `304 Not Modified` whenever\nthe table metadata was unchanged — even after the vended storage credentials in\nthe cached response had expired. Clients that reuse the cached body (e.g. the\nIceberg Java client) kept using dead credentials.\n[…]\nhat don't parse (e.g.\npre-upgrade bare-hash values) simply trigger a reload. The real credential\nexpiry is still sent to clients via `expiration-time`, so out-of-band\ncredential refresh is unaffected.",
          "is_bot": false,
          "headline": "fix(tables): don't return 304 on loadTable once vended credentials ex…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-21T15:40:50Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b6a4b1d58a86995d99717b84f11dab8144a55118",
          "body": "…d/requested_source_id\n\nThe destination-aware CatalogRoleAction::UpdateSourceSystem action surfaces the\nrebind destination as action context so policy-based authorizers can gate it.\nRename those keys:\n\n  target_provider_id -> requested_provider_id\n  target_source_id   -> requested_source_id\n\n`target\n[…]\neSystemTarget::To case; the Any base-capability\nmarker carries no context.\n\nPre-release rename — these keys were added in the same unreleased cycle and no\nreleased authorizer depends on the old names.",
          "is_bot": false,
          "headline": "chore(authz): rename role-rebind context keys to requested_provider_i…",
          "author_name": "Christian Thiel",
          "author_login": "c-thiel",
          "committed_at": "2026-06-19T13:30:52Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9af0a3f141dd27e6de7067a4117c76a6651f34dd",
          "body": "…1860)\n\nThe Drop/Delete catalog actions previously carried no information about how\ndestructive a deletion is, so policy-based authorizers could not distinguish\na recoverable drop from one that bypasses warehouse soft-deletion or wipes a\nwhole namespace subtree.\n\nAdd context fields to the operationa\n[…]\ndit logs.\nThe OpenFGA authorizer maps these variants to the same relations as before,\nso its behavior is unchanged; the new context is consumed by policy-based\nauthorizers (Cedar).\n\n* address comments",
          "is_bot": false,
          "headline": "feat(authz): carry force/purge/recursive context on delete actions (#…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-19T10:49:08Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b86ccd5340d536ee443e89b60494c55dc4cf3114",
          "body": "… limit (#1857)\n\nApplying the full-hierarchy storage layout in the integration tests\nsurfaced PackedPolicyTooLarge failures on the real-AWS `spark_aws_sts`\njobs. AWS STS enforces a small, undocumented limit on the *packed*\n(compressed) size of the inline session policy — separate from, and much\ntigh\n[…]\n  covered by test_special_char_locations.py.\n\nAdds tests pinning the single-wildcard ARN form and guarding the plaintext\npolicy size.\n\n---------\n\nCo-authored-by: Christian Thiel <christian@vakamo.com>",
          "is_bot": false,
          "headline": "fix(s3): keep AWS STS vended-credential policy within the packed-size…",
          "author_name": "brgr-s",
          "author_login": "brgr-s",
          "committed_at": "2026-06-19T06:02:05Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "01e62ef943483efa1c98d3b80afe7376eb07c5d1",
          "body": "Pulls in console-components v0.7.0 → v0.9.0:\n\n- OneLake / Microsoft Fabric storage backend in warehouse create\n  (client-credentials + system-identity auth, workspace/lakehouse IDs,\n  private-endpoint / authority-host options)\n- Generic tables (Lance/Delta/Vortex) unified with Iceberg under one\n  Ta\n[…]\nitor; \"Change Deletion\" renamed to\n  \"Catalog Settings\" (deletion profile + format policy in one update)\n- Per-queue maintenance summary in TaskManager (last/next run,\n  run-now / reschedule / cancel)",
          "is_bot": false,
          "headline": "feat(ui): bump console to v0.15.1 (#1855)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-17T14:23:20Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "acd19e4dad991446ec1f9eeb8aa62f15a44e3843",
          "body": "…1853)\n\nThe `default` storage layout now places tabulars directly under the warehouse\nbase location (`<base>/<tabular-uuid>`) instead of nesting them under the\ndirect-parent namespace (`<base>/<parent-ns-uuid>/<tabular-uuid>`).\n\nStorage paths are assigned once at creation time and never recomputed, \n[…]\nt occur.\n\nBREAKING CHANGE: the default storage layout for newly created namespaces\nchanged from <base>/<parent-namespace-uuid>/<tabular-uuid> to\n<base>/<tabular-uuid>.\n\n* fix tests\n\n* address comments",
          "is_bot": false,
          "headline": "feat!: flat ({uuid}-only) layout is the new default storage layout (#…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-17T14:22:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5b02770cb17fb3b782a61102bb52e55b0fec7c0f",
          "body": null,
          "is_bot": false,
          "headline": "chore(docs): Add OneLake availablilty note",
          "author_name": "Christian Thiel",
          "author_login": "c-thiel",
          "committed_at": "2026-06-17T14:05:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2b7720036db53795a615fa236705181c3236bc60",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>\nCo-authored-by: Christian <christian@vakamo.com>",
          "is_bot": true,
          "headline": "chore(deps): update busybox docker tag to v1.38.0 (#1808)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-17T11:23:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5cc1433324b0017b099279f6769eeba210768997",
          "body": "Re-pointing a role's source system (`PUT /role/{id}/source-system`) changes its\n`RoleIdent` (provider_id/source_id) but left the in-process caches untouched. That\nident is cached per row in every assignee's USER_ASSIGNMENTS closure\n(`AssignedRole.role_ident`) and in the role's ROLE_MEMBERS entry. Ex\n[…]\neshness stays bounded by TTL as before.\n\nAdds `source_system_rebind_evicts_user_assignment_and_member_closures`, asserting both\nclosures reflect the new ident (and return fresh `Arc`s) after a rebind.",
          "is_bot": false,
          "headline": "fix(roles): evict membership caches on role source-system rebind (#1849)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-17T11:22:41Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c43933421f1ee84a90ebcaa576aec27cf7d8e3b9",
          "body": "…#1840)\n\n* switch to azure sdk fork\n\n* format custom host into proper url\n\n* bump azure sdk fork rev\n\nignore missing x-ms-request-id header\n\n* bump azure sdk fork rev\n\n* bump azure sdk fork rev\n\n* Drop unneeded SAS permissions\n\n\"Normal\" Blob/DFS endpoints support restricted SAS permissions for\ndirec\n[…]\ne profile 7/?\n\n* fabric storage profile 8/?: nits\n\n* fabric storage profile 9/?: more nits\n\n* fabric storage profile 10/? -> rename to onelake storage profile\n\n* fabric storage profile 11/?: more nits",
          "is_bot": false,
          "headline": "feat: Support Private Endpoints and Onelake/Fabric Storage Accounts (…",
          "author_name": "brgr-s",
          "author_login": "brgr-s",
          "committed_at": "2026-06-16T13:34:11Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e02fbc05eae37d52404a261014c88541c8012b3d",
          "body": "…tion (#1848)\n\nRebinding a role's external identity (`PUT /role/{id}/source-system`) was\nauthorized by the generic `CatalogRoleAction::Update` — the same permission as\nediting a name/description. A rebind redirects which external group's members a\nprovider sync flows into the role, so it now uses a \n[…]\nariant and `RoleAction` is\nno longer `Copy`; downstream authorizer implementations must handle\n`UpdateSourceSystem`, and the rebind now requires membership-control permission\nrather than plain update.",
          "is_bot": false,
          "headline": "feat(authz): gate role source-system rebind as a destination-aware ac…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-16T11:01:21Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "dc137bc1074c2361476d87a7544045e56688f231",
          "body": "* chore(ci): free disk space before Docker image builds\n\nThe docker_build reusable workflow and release.yml's build-docker job build\nfull images on hosted runners and intermittently fail with \"no space left on\ndevice\" (#1821, #1841). Add jlumbroso/free-disk-space (SHA-pinned) before the\nbuild to reclaim unused preinstalled toolchains (Android/.NET/Haskell/swap),\nkeeping Docker images and skipping the slow apt purge.",
          "is_bot": false,
          "headline": "chore(ci): free disk space before Docker image builds (#1842)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-16T09:47:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cca7bce586e1685df23fc45a104c78af2ef23a01",
          "body": "…nts (#1844)\n\n* feat(authz)!: surface contributing policies in authorization audit events\n\nWiden the authorizer batch API to return per-decision diagnostics so audit\nevents can record *which* policies determined an authorization outcome, not\njust allow/deny.\n\n- Add authorizer-agnostic `Authorization\n[…]\nallowed\n\nThe tabular _vec methods were the last producers of MustUse<Vec<bool>>;\nonce they switched to Vec<AuthorizationDecision> the impl became unreachable\nand its doc comment misleading. Remove it.",
          "is_bot": false,
          "headline": "feat(authz): surface contributing policies in authorization audit eve…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-16T09:23:42Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "de8fc08fd1544a17e38d8787de0d1a277a62c24d",
          "body": "… (#1847)\n\nWhen a warehouse is configured with `aws-kms-key-arn`, advertise\n`s3.sse.type=kms` / `s3.sse.key=<arn>` to clients so their own writes\n(vended credentials / remote signing) encrypt with the configured key,\ninstead of relying solely on S3 bucket-default encryption. Emitted in all\nthree cli\n[…]\nough vended credentials\nand asserts every object is `aws:kms`-encrypted with the configured key.\nWires the suite into CI and forwards the KMS bucket/key secrets to the\nintegration-test docker-compose.",
          "is_bot": false,
          "headline": "feat(s3): vend SSE-KMS config to clients for KMS-encrypted warehouses…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-15T13:55:36Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "53c90af3deda3fa193e7a7a1f94f6cabcc395880",
          "body": "engineerd/setup-kind@v0.6.2 broke main CI when its mutable tag was force-moved\nto a commit missing the action entrypoint (dist/main/index.js). Replace it with\nthe maintained, SHA-pinned helm/kind-action, keeping kind v0.24.0 /\nkindest/node:v1.31.0 and cluster name `kind` so behavior is unchanged. Also\npre-pull the node image with retry to absorb Docker Hub pull flakiness.",
          "is_bot": false,
          "headline": "ci: replace unmaintained setup-kind with helm/kind-action (#1846)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-13T13:22:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "119db7460a11ac5e4186f202cc29ecb3c9f8c510",
          "body": "…d resurrection race) (#1843)\n\nEvery in-process cache invalidated entries with a bare moka `invalidate()`,\nwhich runs in a different lock domain than the single-flight read-through\nloader. A loader that read the DB just before a delete/revocation committed\ncould re-insert its stale snapshot *after* \n[…]\nce only; cross-replica revocation lag (<=TTL) is\nunchanged.\n\nAdds deterministic race regression tests (a revocation racing an in-flight\nloader must win) for user-assignments, role-members and secrets.",
          "is_bot": false,
          "headline": "fix(cache): serialize invalidation with the read-through loader (by-i…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-13T11:25:01Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "211d1a1382db53ba50826156ab1e1d19b559816f",
          "body": "…e (#1841)\n\nThe user-assignments cache allocated a fresh `Arc<RoleIdent>` and\n`Arc<ProjectId>` for every (user, role) row, so a role or project held by\nN users kept N copies of its identity in memory. This grew with user count\nand could dominate the cache's footprint for large fleets, while the\nentr\n[…]\n. `moka` keeps it sharded and\n  lock-free under concurrent loads.\n- Adds `lakekeeper_cache_size` gauges under cache_type `shared_role_idents`\n  and `shared_project_ids` to confirm dedup in production.",
          "is_bot": false,
          "headline": "feat(cache): dedup role/project identity in the user-assignments cach…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-12T17:36:34Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8c5da57323fca8503ebe8aa2a4b4cadbc23a6507",
          "body": "feat(roles): role-membership management API (users + nested roles)\n\nA role member is either a user or another role. Adds management v1 endpoints to\nadd/remove members, list a role's direct and transitive members and member-of\nsets, and list a user's direct/transitive roles. Both authorizer backends \n[…]\noft-deleted users.\n\nIncludes the regenerated OpenAPI spec, OpenFGA model updates, a migration\n(endpoint enum values, nullable users.name, user search/pagination indexes), and\nunit + integration tests.",
          "is_bot": false,
          "headline": "feat(roles): role-membership management API (#1829)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-11T10:00:36Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d2ff38feae0abccde9cd780ee20eb27ba8884590",
          "body": "…-file jobs",
          "is_bot": false,
          "headline": "docs(maintenance): note encrypted tables are skipped by expire/orphan…",
          "author_name": "Christian Thiel",
          "author_login": "c-thiel",
          "committed_at": "2026-06-11T07:59:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "791650571da769679a2037102a9737eb4fc84cfa",
          "body": "Expose Lakekeeper's own read/write connection pools so client-side pool\nsaturation — previously invisible — can be monitored and alerted on.\npostgres_exporter only sees the database server's connection slots; a\nclient pool can saturate while the server still has free slots.\n\nNew Prometheus metrics (\n[…]\nhen sqlx\nreturns PoolTimedOut (covers transaction acquisition — the path catalog\nreads/writes use — not ad-hoc direct-pool queries).\n\nDocumented under \"Connection Pool (client-side)\" in monitoring.md.",
          "is_bot": false,
          "headline": "feat(metrics): add client-side Postgres connection-pool metrics (#1838)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-11T06:56:52Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1b97d536c0f8c47cbcee57bf35cd282f12cd04c9",
          "body": "… (#1837)\n\nW4 — TTL jitter: each catalog cache entry now expires after a small\ndownward-only random fraction of its configured TTL (90-100%, via a shared\n`JitteredTtl` expiry), desynchronizing cross-replica expiry so replicas that\nwarmed the same hot key don't re-derive it on the same TTL boundary (\n[…]\nhe namespace by-id read-through —\nexistence now comes from the load itself, not solely a post-insert cache\nre-read, so an eviction racing the insert can't report not-found for a\nnamespace that exists.",
          "is_bot": false,
          "headline": "feat(cache): jitter cache TTLs and add role-membership fan-out metric…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-10T13:41:25Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "eb6983fc6ae45442ed7b15f9e3764ae981139cfc",
          "body": "…mins (#1828)",
          "is_bot": false,
          "headline": "feat(warehouse): add managed-by ownership to lock spec to instance ad…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-10T12:38:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a39e606924eeb63c69c453882892d279cda85c9a",
          "body": "Concurrent identical misses on the in-process caches previously each ran\ntheir own backend load — a per-replica thundering herd against the DB and,\nfor storage credentials, the rate-limited cloud STS/SAS endpoints. Add\nrequest coalescing (single-flight) to every hot read-through so concurrent\nmisses\n[…]\ns, which must not be published to other requests.\n\nDocs:\n\n    configuration.md: clarify the STC capacity ceiling is per cloud provider,\n    and document the previously-undocumented role-members cache.",
          "is_bot": false,
          "headline": "feat(cache): single-flight the hot cache read-throughs (#1833)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-10T12:12:20Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a992861985457b2cfea4fef33b0da732c26a9611",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>\nCo-authored-by: Christian <christian@vakamo.com>",
          "is_bot": true,
          "headline": "chore(deps): update github-actions to fd2f5e3 (#1834)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-10T11:54:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5e9da34b131d2f78c6c3f8d7cee301d788c7be36",
          "body": "…r (#1836)\n\nThe REST spec keeps the Iceberg-standard `default: false` on the dropTable\n`purgeRequested` parameter, but Lakekeeper treats an omitted flag as\npurge=true for managed tables. The rendered API docs therefore implied a\nbehaviour that doesn't match the server (reported in #1832).\n\nAmend the\n[…]\nthe schema default\nstandard-compliant. The change is applied via a new\n`clarify-table-purge-default-rest-openapi` justfile recipe so it survives\nre-downloads of the upstream Apache spec.\n\nCloses #1832",
          "is_bot": false,
          "headline": "docs(openapi): clarify purgeRequested default vs. Lakekeeper behaviou…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-10T09:11:06Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "45c8db0e657615cd64394a3fb9de3cdd125f4524",
          "body": "delete_batch fanned out up to 100 concurrent connections per call to a single\nstorage host. On CI runners this exhausts ephemeral ports/SNAT and surfaces as\nTCP connect timeouts (os error 110, \"retry policy expired\") that flakily fail\nADLS/GCS integration tests. Azure-side metrics show no throttling\n[…]\nLS and GCS delete_batch concurrency from 100 to 16, matching the bounded\nconcurrency object_store uses for bulk deletes (10). S3 is unchanged — it uses\nthe native batch-delete API with adaptive retry.",
          "is_bot": false,
          "headline": "fix(io): bound batch-delete concurrency to avoid connection exhaustion",
          "author_name": "Christian Thiel",
          "author_login": "c-thiel",
          "committed_at": "2026-06-10T09:09:18Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ee1c26298aaeaa8dc8df53ab0764ed49d48fe52d",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>\nCo-authored-by: Christian <christian@vakamo.com>",
          "is_bot": true,
          "headline": "chore(deps): update rust crate similar to v3 (#1694)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-10T07:43:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dac3ef8144afc85a6d5d774ee43fc3d4553e209c",
          "body": "…gnore (#1835)\n\nRUSTSEC-2026-0174 flags unsound ASCII handling in http-types' typed\nauth::Authorization/WwwAuthenticate. We are not affected: the only path to\nhttp-types is azure_core 0.21 (ADLS), which uses it solely for Method/StatusCode\nand never those auth types, so the code is unreachable. Ignore it with that\njustification (unmaintained crate, no upgrade available).",
          "is_bot": false,
          "headline": "chore(deny): ignore unreachable http-types advisory; drop stale rsa i…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-10T07:21:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "886254954d8de533111656e9c9cfe84bc6e32348",
          "body": "Deleting a role removed it from ROLE_CACHE (via the role_deleted event)\nbut never evicted the per-user effective-roles cache\n(USER_ASSIGNMENTS_CACHE) or the role's own member-list cache\n(ROLE_MEMBERS_CACHE). The DB delete cascades the\nrole_assignment/role_membership rows, but delete_roles returns on\n[…]\nlete_user eviction.\n\nNo parent eviction: ROLE_MEMBERS_CACHE stores a role's direct\nuser-assignees only, never its member-roles, so a parent's cached entry\ncannot go stale when a child role is deleted.",
          "is_bot": false,
          "headline": "fix(authz): evict role-assignment caches when deleting a role (#1830)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-08T14:45:53Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5a14d571438c06618787c0ce8a084129bf46e805",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): update github-actions (#1805)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-08T14:41:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3ff40360c203842e15b5483bfe924a1e8a193f5c",
          "body": "… (#1827)\n\nADLS and GCS fetch a bearer token from the provider's OAuth endpoint\n(login.microsoftonline.com / oauth2.googleapis.com) during credential and\nclient setup. That token-fetch path is not covered by the data-plane retry\npolicy (ADLS FixedRetryOptions) or retry middleware (GCS reqwest-retry)\n[…]\nst retries\n(exponential backoff, count 2, jitter) scoped to the io integration tests, so\nthe connection burst is bounded and residual transient blips pass on re-run.\nPure logic tests keep retries = 0.",
          "is_bot": false,
          "headline": "fix(io): retry transient failures when acquiring storage OAuth tokens…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-08T06:50:19Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8c7b4c021518160aae5c5fbd73240199fad2e1e4",
          "body": "…sets (#1826)\n\nLanding page (site/overrides/home.html):\n- Restructure \"Our Features\" into five grouped, de-duplicated capability\n  boxes; add Centralized & Open Access Control, Row & Column-Level\n  Security, Dynamic Catalog Management, Iceberg & Generic Tables,\n  Rust-Native Performance and Producti\n[…]\nclosed bold headings.\n- Rename \"Enterprise\" -> \"Lakekeeper Plus\" in configuration, nav and release\n  notes; use \"Vault-compatible\" wording in customize.\n- Clarify Postgres >= 15 compatibility wording.",
          "is_bot": false,
          "headline": "docs: refresh landing page, restructure API docs, lighten per-page as…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-07T12:28:51Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c6f13277a7f49b8a4c6c078367c3cc64f072bace",
          "body": "…ng (#1824)\n\nLays the catalog/authz groundwork for the role-membership management API\n(REST surface lands separately) and ships two standalone correctness fixes.\n\nFoundation (no public endpoints yet):\n- Authz actions CatalogRoleAction::{ManageRoleAssignments,ReadRoleAssignments}\n  and CatalogUserAct\n[…]\ned user is no longer listed as a role member.\n- Provider sync refuses the reserved `system`/`lakekeeper` providers, preventing\n  an external provider from injecting members into catalog-managed roles.",
          "is_bot": false,
          "headline": "feat(roles): role-membership backend foundation + consistency hardeni…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-07T11:51:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "18339d44d1cd7aecde0d4d7dce36ed82df2a9230",
          "body": "Automated sync of documentation files from lakekeeper-plus:\n- management-open-api-plus.yaml: no changes\n- lakekeeper.cedarschema: no changes\n- enterprise-release-notes.md: updated\n\nSource commit: 9215f06d57f71de0455dd46011dbc00f30143cdf\n\nCo-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(docs): Sync documentation from enterprise repo (#1825)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-07T09:47:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cc0d455b25c45676dbfe7e44eeddca64599428f0",
          "body": "New \"Docs Link Check\" workflow runs on every PR: fail on broken anchors in the\nnightly docs (mkdocs validates anchors per-page; released versions are frozen\nsnapshots and are skipped) and run lychee over the assembled site for file/asset\nexistence — resolving the cross-unit and shared-asset paths th\n[…]\nchors, lychee\n  with --root-dir, no --include-fragments, excluding the doubled nightly/docs orphan)\n- site/mkdocs.yml: tune link validation (anchors warn; cross-unit not_found /\n  absolute_links info)",
          "is_bot": false,
          "headline": "chore(docs): add a per-PR docs link-check gate (#1823)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-06T09:59:36Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "699d43af122add45e1baef11d3803287d404c3ad",
          "body": "Automated sync of documentation files from lakekeeper-plus:\n- management-open-api-plus.yaml: updated\n- lakekeeper.cedarschema: updated\n- enterprise-release-notes.md: updated\n\nSource commit: 94d6bd23705fb2b75ecaba207963102d8ae2c99f\n\nCo-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(docs): Sync documentation from enterprise repo (#1818)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-06T09:57:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "eb154b14ba0e51b10451088e7daaefb6e8676d11",
          "body": "…uirement (#1821)\n\nAdd an About → Enterprise Release Notes page that surfaces the curated\nLakekeeper Enterprise release notes on the public docs site, with a nav entry\nand a cross-link from the OSS release-notes page. The page is mirrored from the\nenterprise repo's RELEASE_NOTES.md by the existing d\n[…]\n schema), so list it\nin the \"Required User attributes\" tip and add it (as []) to both example entity\nfiles, matching tests/cedar/entities.json. Omitting it causes a schema\nvalidation error on startup.",
          "is_bot": false,
          "headline": "docs: publish enterprise release notes; fix Cedar global_role_ids req…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-05T15:10:00Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "dc7eede89585ef91e008be92d62d08c3ea303a9e",
          "body": "…s (#1820)\n\nIceberg 1.11.0 renamed the S3 remote-signing config keys from the\nS3-namespaced s3.signer.uri/s3.signer.endpoint (S3V4RestSignerClient) to\nthe generic signer.uri/signer.endpoint (RESTCatalogProperties). The old\nkeys are deprecated and removed in 1.12.0; clients >=1.11 log a\ndeprecation w\n[…]\ne signing\nis enabled. Clients >=1.11 read the new keys (no warning), while older\nclients keep using s3.signer.*. The sign endpoint and protocol are\nunchanged — this is purely a config-property rename.",
          "is_bot": false,
          "headline": "feat(storage): emit Iceberg 1.11 signer.uri/signer.endpoint propertie…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-05T13:58:31Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1440e1d1a372ce5a5bb1f7e93352a4e913c19420",
          "body": "Reject a role->role membership edge that would make any nesting chain\ndeeper than LAKEKEEPER__ROLE__MAX_NESTING_DEPTH (default 10), enforced\ninside the existing locked add_role_members transaction alongside the\ncycle check. Surfaced as the typed RoleMembershipDepthExceeded error\n(HTTP 409). Reads (t\n[…]\ntry as cycle prevention. role_membership\nedges are written exclusively by add_role_members, so bounding it fully\nbounds nesting depth; the user-sync path assigns only users (leaves) and\nis unaffected.",
          "is_bot": false,
          "headline": "feat(roles): bound role-in-role nesting depth at write time (#1819)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-05T11:41:21Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "47489d8a7f1ef6c086c0ae997da86d696fa3a71e",
          "body": "Hierarchical/recursive catalog roles: a role can be a direct member of\nanother role, and a user's effective roles resolve transitively through\nthe membership graph. Backend/DB layer only — no public REST/OpenAPI/SDK\nsurface yet.\n\n- New `role_membership(parent_role_id, member_role_id)` edge table: PK\n[…]\nnly in the\n  catalog path). Parse failures narrowed into `ParseOpenFgaEntityError`;\n  facet errors precisely typed (`AddRoleAssignmentsError`,\n  `ListRoleAssignmentsError`, `MalformedRoleAssignment`).",
          "is_bot": false,
          "headline": "feat(roles): backend support for role-in-role membership (#1816)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-05T08:43:08Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "eac89493f0a8297aa7490f5df8beb2d054ec73fc",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): update dependency mkdocs-material to v9.7.6 (#1804)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-05T08:36:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "92435c174ae4316d6975a1030f3c8546320d632c",
          "body": "…book (#1817)\n\nReplace the raw-changelog embed on the docs-site Release Notes page\n(site/docs/about/release-notes.md) with curated, customer-facing notes for\nv0.12.0–v0.12.3, and add a maintainer runbook (.github/RELEASING.md) plus an\nAGENTS.md authoring rule.\n\nRelease notes are summarised from PR d\n[…]\nons at release by following the\nchangelog's PR links; CHANGELOG.md stays the mechanical release-please index.\nTechnical details (config keys, env vars, cache-metric names) verified against\nthe source.",
          "is_bot": false,
          "headline": "docs(release-notes): curate site Release Notes page + add release run…",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-05T07:14:26Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5e89416dd7fd26bdc7008f347ee05e2b53b58080",
          "body": "The two ADLS integration tests (test_large_files_adls,\ntest_batch_delete_many_items_some_nonexistant_adls) were flaky in CI,\nalways failing with \"retry policy expired and the request will no longer\nbe retried\" on \"tcp connect error: Connection timed out (os error 110)\".\n\nRoot cause: the reqwest clie\n[…]\ne policy before any retry could fire.\n\nAdd a 10s connect_timeout so connect attempts fail fast, and raise the\nretry budget to 30s so a few retries fit within it and a transient blip\nhas time to clear.",
          "is_bot": false,
          "headline": "fix(io): make ADLS retry budget span connect timeouts (#1815)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-04T15:27:26Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "600c3fab9d11181813a4ae5eed7511636b9edce3",
          "body": "Two new workspace crates own the cloud-events publisher backends; the\ncore `lakekeeper` crate keeps only the `CloudEventBackend` trait, the\nin-process `TracingPublisher`, and the audit backend. Same pattern as\nthe storage-postgres split (#1812).\n\n### New crates\n\n- `lakekeeper-events-nats`\n  - `NatsB\n[…]\nfkaConfig>`\n  leak from core config.\n- The vendored `cloudevents-binding-rdkafka` is now isolated to the\n  kafka crate — the \"upstream PR or keep vendored\" decision no longer\n  pollutes the main tree.",
          "is_bot": false,
          "headline": "chore(events)!: split nats + kafka backends into separate crates (#1814)",
          "author_name": "Christian",
          "author_login": "c-thiel",
          "committed_at": "2026-06-04T09:59:06Z",
          "body_truncated": true,
          "is_coding_agent": false
        }
      ],
      "releases_count": 51,
      "commits_last_year": 538,
      "latest_release_at": "2026-06-30T21:11:08Z",
      "latest_release_tag": "v0.13.1",
      "releases_from_tags": false,
      "days_since_last_push": 0,
      "active_weeks_last_year": 51,
      "days_since_latest_release": 26,
      "mean_days_between_releases": 10.2
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": false,
      "health_percentage": 62,
      "has_issue_template": false,
      "has_code_of_conduct": true,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": []
    },
    "popularity": {
      "forks": 151,
      "stars": 1399,
      "watchers": 10,
      "fork_history": {
        "days": [
          {
            "date": "2024-05-15",
            "count": 1
          },
          {
            "date": "2024-06-06",
            "count": 1
          },
          {
            "date": "2024-06-17",
            "count": 1
          },
          {
            "date": "2024-06-19",
            "count": 1
          },
          {
            "date": "2024-07-29",
            "count": 1
          },
          {
            "date": "2024-08-14",
            "count": 1
          },
          {
            "date": "2024-08-16",
            "count": 1
          },
          {
            "date": "2024-08-30",
            "count": 1
          },
          {
            "date": "2024-09-20",
            "count": 1
          },
          {
            "date": "2024-09-29",
            "count": 1
          },
          {
            "date": "2024-10-14",
            "count": 1
          },
          {
            "date": "2024-10-23",
            "count": 1
          },
          {
            "date": "2024-11-08",
            "count": 1
          },
          {
            "date": "2024-11-27",
            "count": 1
          },
          {
            "date": "2024-12-03",
            "count": 1
          },
          {
            "date": "2024-12-04",
            "count": 1
          },
          {
            "date": "2024-12-12",
            "count": 1
          },
          {
            "date": "2024-12-14",
            "count": 1
          },
          {
            "date": "2024-12-15",
            "count": 1
          },
          {
            "date": "2025-01-23",
            "count": 1
          },
          {
            "date": "2025-01-24",
            "count": 2
          },
          {
            "date": "2025-02-10",
            "count": 1
          },
          {
            "date": "2025-02-14",
            "count": 1
          },
          {
            "date": "2025-02-26",
            "count": 1
          },
          {
            "date": "2025-03-13",
            "count": 2
          },
          {
            "date": "2025-03-14",
            "count": 1
          },
          {
            "date": "2025-03-17",
            "count": 1
          },
          {
            "date": "2025-03-19",
            "count": 1
          },
          {
            "date": "2025-03-25",
            "count": 1
          },
          {
            "date": "2025-03-29",
            "count": 1
          },
          {
            "date": "2025-04-05",
            "count": 1
          },
          {
            "date": "2025-04-06",
            "count": 1
          },
          {
            "date": "2025-04-11",
            "count": 1
          },
          {
            "date": "2025-04-15",
            "count": 1
          },
          {
            "date": "2025-04-16",
            "count": 3
          },
          {
            "date": "2025-04-29",
            "count": 1
          },
          {
            "date": "2025-04-30",
            "count": 1
          },
          {
            "date": "2025-05-02",
            "count": 1
          },
          {
            "date": "2025-05-06",
            "count": 1
          },
          {
            "date": "2025-05-07",
            "count": 1
          },
          {
            "date": "2025-05-11",
            "count": 1
          },
          {
            "date": "2025-05-18",
            "count": 1
          },
          {
            "date": "2025-05-22",
            "count": 1
          },
          {
            "date": "2025-05-24",
            "count": 1
          },
          {
            "date": "2025-05-28",
            "count": 1
          },
          {
            "date": "2025-05-29",
            "count": 1
          },
          {
            "date": "2025-06-01",
            "count": 1
          },
          {
            "date": "2025-06-04",
            "count": 1
          },
          {
            "date": "2025-06-09",
            "count": 1
          },
          {
            "date": "2025-06-11",
            "count": 3
          },
          {
            "date": "2025-06-12",
            "count": 2
          },
          {
            "date": "2025-06-13",
            "count": 1
          },
          {
            "date": "2025-06-15",
            "count": 2
          },
          {
            "date": "2025-06-22",
            "count": 1
          },
          {
            "date": "2025-06-24",
            "count": 1
          },
          {
            "date": "2025-06-26",
            "count": 1
          },
          {
            "date": "2025-06-29",
            "count": 1
          },
          {
            "date": "2025-07-07",
            "count": 1
          },
          {
            "date": "2025-07-08",
            "count": 1
          },
          {
            "date": "2025-07-14",
            "count": 1
          },
          {
            "date": "2025-07-17",
            "count": 1
          },
          {
            "date": "2025-07-23",
            "count": 2
          },
          {
            "date": "2025-08-05",
            "count": 2
          },
          {
            "date": "2025-08-06",
            "count": 1
          },
          {
            "date": "2025-08-07",
            "count": 1
          },
          {
            "date": "2025-08-09",
            "count": 1
          },
          {
            "date": "2025-08-11",
            "count": 2
          },
          {
            "date": "2025-08-21",
            "count": 2
          },
          {
            "date": "2025-09-08",
            "count": 1
          },
          {
            "date": "2025-09-17",
            "count": 1
          },
          {
            "date": "2025-09-26",
            "count": 1
          },
          {
            "date": "2025-09-29",
            "count": 1
          },
          {
            "date": "2025-10-10",
            "count": 2
          },
          {
            "date": "2025-10-15",
            "count": 1
          },
          {
            "date": "2025-10-21",
            "count": 1
          },
          {
            "date": "2025-10-23",
            "count": 1
          },
          {
            "date": "2025-10-26",
            "count": 1
          },
          {
            "date": "2025-11-08",
            "count": 1
          },
          {
            "date": "2025-11-09",
            "count": 1
          },
          {
            "date": "2025-11-11",
            "count": 1
          },
          {
            "date": "2025-11-17",
            "count": 1
          },
          {
            "date": "2025-11-20",
            "count": 1
          },
          {
            "date": "2025-11-21",
            "count": 1
          },
          {
            "date": "2025-11-24",
            "count": 1
          },
          {
            "date": "2025-11-28",
            "count": 1
          },
          {
            "date": "2025-11-29",
            "count": 2
          },
          {
            "date": "2025-12-01",
            "count": 2
          },
          {
            "date": "2025-12-03",
            "count": 1
          },
          {
            "date": "2025-12-05",
            "count": 3
          },
          {
            "date": "2025-12-09",
            "count": 1
          },
          {
            "date": "2025-12-22",
            "count": 1
          },
          {
            "date": "2025-12-23",
            "count": 1
          },
          {
            "date": "2025-12-25",
            "count": 1
          },
          {
            "date": "2025-12-28",
            "count": 1
          },
          {
            "date": "2025-12-29",
            "count": 1
          },
          {
            "date": "2026-01-21",
            "count": 1
          },
          {
            "date": "2026-01-30",
            "count": 1
          },
          {
            "date": "2026-02-01",
            "count": 1
          },
          {
            "date": "2026-02-11",
            "count": 1
          },
          {
            "date": "2026-02-14",
            "count": 1
          },
          {
            "date": "2026-02-26",
            "count": 1
          },
          {
            "date": "2026-03-06",
            "count": 2
          },
          {
            "date": "2026-03-11",
            "count": 1
          },
          {
            "date": "2026-03-22",
            "count": 1
          },
          {
            "date": "2026-03-24",
            "count": 1
          },
          {
            "date": "2026-03-28",
            "count": 2
          },
          {
            "date": "2026-04-05",
            "count": 1
          },
          {
            "date": "2026-04-11",
            "count": 1
          },
          {
            "date": "2026-04-30",
            "count": 1
          },
          {
            "date": "2026-05-07",
            "count": 1
          },
          {
            "date": "2026-05-19",
            "count": 3
          },
          {
            "date": "2026-05-20",
            "count": 1
          },
          {
            "date": "2026-05-23",
            "count": 2
          },
          {
            "date": "2026-06-02",
            "count": 1
          },
          {
            "date": "2026-06-05",
            "count": 1
          },
          {
            "date": "2026-06-07",
            "count": 1
          },
          {
            "date": "2026-06-08",
            "count": 2
          },
          {
            "date": "2026-06-18",
            "count": 1
          },
          {
            "date": "2026-06-19",
            "count": 1
          },
          {
            "date": "2026-06-23",
            "count": 1
          },
          {
            "date": "2026-07-03",
            "count": 1
          },
          {
            "date": "2026-07-04",
            "count": 1
          },
          {
            "date": "2026-07-09",
            "count": 1
          },
          {
            "date": "2026-07-19",
            "count": 1
          },
          {
            "date": "2026-07-22",
            "count": 1
          },
          {
            "date": "2026-07-24",
            "count": 2
          }
        ],
        "complete": true,
        "collected": 150,
        "total_forks": 151
      },
      "star_history": null,
      "open_issues_and_prs": 100
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "examples",
        "notebooks"
      ],
      "has_llms_txt": false,
      "has_dockerfile": true,
      "has_mcp_signal": false,
      "bootstrap_files": [
        "examples/kafka-connect-iceberg-sink/Makefile",
        "justfile",
        "site/justfile",
        "tests/migrations/justfile"
      ],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [],
      "toolchain_manifests": [
        "Cargo.toml",
        "crates/authz-openfga/Cargo.toml",
        "crates/iceberg-ext/Cargo.toml",
        "crates/io/Cargo.toml",
        "crates/lakekeeper-bin/Cargo.toml",
        "crates/lakekeeper-events-kafka/Cargo.toml",
        "crates/lakekeeper-events-nats/Cargo.toml",
        "crates/lakekeeper-integration-tests/Cargo.toml",
        "crates/lakekeeper-secrets-kv2/Cargo.toml",
        "crates/lakekeeper-storage-postgres/Cargo.toml",
        "crates/lakekeeper/Cargo.toml"
      ],
      "largest_source_bytes": 220387,
      "source_files_sampled": 332,
      "oversized_source_files": 28,
      "agent_instruction_files": [
        "AGENTS.md",
        "CLAUDE.md"
      ],
      "agent_instruction_max_bytes": 3751
    },
    "dependencies": {
      "manifests": [
        "Cargo.toml",
        "site/requirements.txt"
      ],
      "advisories": {
        "error": null,
        "scope": "repository_graph",
        "source": "osv",
        "findings": [
          {
            "name": "quick-xml",
            "direct": true,
            "version": "0.40.1",
            "severity": "high",
            "ecosystem": "crates",
            "cvss_score": 7.5,
            "advisory_ids": [
              "RUSTSEC-2026-0194",
              "RUSTSEC-2026-0195"
            ],
            "fixed_version": "0.41.0",
            "advisory_count": 2,
            "oldest_advisory_days": 28
          },
          {
            "name": "thrift",
            "direct": false,
            "version": "0.17.0",
            "severity": "moderate",
            "ecosystem": "crates",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-2f9f-gq7v-9h6m"
            ],
            "fixed_version": "0.23.0",
            "advisory_count": 1,
            "oldest_advisory_days": 83
          },
          {
            "name": "rand",
            "direct": false,
            "version": "0.7.3",
            "severity": "low",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "GHSA-cq8v-f236-94qc",
              "RUSTSEC-2026-0097"
            ],
            "fixed_version": "0.10.1",
            "advisory_count": 2,
            "oldest_advisory_days": 109
          },
          {
            "name": "http-types",
            "direct": false,
            "version": "2.12.0",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2026-0174"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 138
          },
          {
            "name": "instant",
            "direct": false,
            "version": "0.1.13",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2024-0384"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 694
          },
          {
            "name": "paste",
            "direct": false,
            "version": "1.0.15",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2024-0436"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 658
          },
          {
            "name": "rustls-pemfile",
            "direct": false,
            "version": "2.2.0",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2025-0134"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 241
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "low": 1,
          "high": 1,
          "unknown": 4,
          "moderate": 1
        },
        "advisory_count": 9,
        "affected_count": 7,
        "assessed_count": 763,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 22,
        "direct_affected_count": 1
      },
      "ecosystems": [
        "crates",
        "pypi"
      ],
      "dependencies": [
        {
          "name": "anyhow",
          "manifest": "crates/authz-openfga/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "chrono",
          "manifest": "crates/authz-openfga/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "figment",
          "manifest": "crates/authz-openfga/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "futures",
          "manifest": "crates/authz-openfga/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "http",
          "manifest": "crates/authz-openfga/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "lakekeeper",
          "manifest": "crates/authz-openfga/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "openfga-client",
          "manifest": "crates/authz-openfga/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.6"
        },
        {
          "name": "serde",
          "manifest": "crates/authz-openfga/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "serde_json",
          "manifest": "crates/authz-openfga/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "strum",
          "manifest": "crates/authz-openfga/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "strum_macros",
          "manifest": "crates/authz-openfga/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "thiserror",
          "manifest": "crates/authz-openfga/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tracing",
          "manifest": "crates/authz-openfga/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "url",
          "manifest": "crates/authz-openfga/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "urlencoding",
          "manifest": "crates/authz-openfga/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "utoipa",
          "manifest": "crates/authz-openfga/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "uuid",
          "manifest": "crates/authz-openfga/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "veil",
          "manifest": "crates/authz-openfga/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "axum",
          "manifest": "crates/iceberg-ext/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "heck",
          "manifest": "crates/iceberg-ext/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "http",
          "manifest": "crates/iceberg-ext/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "iceberg",
          "manifest": "crates/iceberg-ext/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "lakekeeper-io",
          "manifest": "crates/iceberg-ext/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "pastey",
          "manifest": "crates/iceberg-ext/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "serde",
          "manifest": "crates/iceberg-ext/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "serde_derive",
          "manifest": "crates/iceberg-ext/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "serde_json",
          "manifest": "crates/iceberg-ext/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "strum_macros",
          "manifest": "crates/iceberg-ext/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "thiserror",
          "manifest": "crates/iceberg-ext/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tracing",
          "manifest": "crates/iceberg-ext/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "typed-builder",
          "manifest": "crates/iceberg-ext/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "url",
          "manifest": "crates/iceberg-ext/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "utoipa",
          "manifest": "crates/iceberg-ext/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "uuid",
          "manifest": "crates/iceberg-ext/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "valuable",
          "manifest": "crates/iceberg-ext/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "xxhash-rust",
          "manifest": "crates/iceberg-ext/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "anyhow",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "async-stream",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "async-trait",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "aws-config",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "aws-credential-types",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "aws-sdk-s3",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "aws-smithy-async",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "aws-smithy-http-client",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "aws-smithy-runtime-api",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "aws-smithy-types",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "azure_core",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "azure_identity",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "azure_storage",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "azure_storage_blobs",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "azure_storage_datalake",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "bytes",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "chrono",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "derive_more",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "futures",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "google-cloud-auth",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "google-cloud-storage",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "google-cloud-token",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "iceberg",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "md5",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "moka",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "percent-encoding",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "reqwest",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "reqwest-middleware",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "reqwest-retry",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "serde",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "strum",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "strum_macros",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "thiserror",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "time",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tokio",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tracing",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tryhard",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "typed-builder",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "typetag",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "unicode-general-category",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "url",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "uuid",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "veil",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "webpki-root-certs",
          "manifest": "crates/io/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "anyhow",
          "manifest": "crates/lakekeeper-bin/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "async-trait",
          "manifest": "crates/lakekeeper-bin/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "clap",
          "manifest": "crates/lakekeeper-bin/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "^4.5"
        },
        {
          "name": "figment",
          "manifest": "crates/lakekeeper-bin/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "http",
          "manifest": "crates/lakekeeper-bin/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "lakekeeper",
          "manifest": "crates/lakekeeper-bin/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "lakekeeper-authz-openfga",
          "manifest": "crates/lakekeeper-bin/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "lakekeeper-console",
          "manifest": "crates/lakekeeper-bin/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "lakekeeper-events-kafka",
          "manifest": "crates/lakekeeper-bin/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "lakekeeper-events-nats",
          "manifest": "crates/lakekeeper-bin/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "lakekeeper-secrets-kv2",
          "manifest": "crates/lakekeeper-bin/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "lakekeeper-storage-postgres",
          "manifest": "crates/lakekeeper-bin/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "limes",
          "manifest": "crates/lakekeeper-bin/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "reqwest",
          "manifest": "crates/lakekeeper-bin/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "serde",
          "manifest": "crates/lakekeeper-bin/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tikv-jemallocator",
          "manifest": "crates/lakekeeper-bin/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tracing-subscriber",
          "manifest": "crates/lakekeeper-bin/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "anyhow",
          "manifest": "crates/lakekeeper-events-kafka/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "async-trait",
          "manifest": "crates/lakekeeper-events-kafka/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "cloudevents-sdk",
          "manifest": "crates/lakekeeper-events-kafka/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "figment",
          "manifest": "crates/lakekeeper-events-kafka/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "figment_file_provider_adapter",
          "manifest": "crates/lakekeeper-events-kafka/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "lakekeeper",
          "manifest": "crates/lakekeeper-events-kafka/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "rdkafka",
          "manifest": "crates/lakekeeper-events-kafka/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "serde",
          "manifest": "crates/lakekeeper-events-kafka/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tracing",
          "manifest": "crates/lakekeeper-events-kafka/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "typed-builder",
          "manifest": "crates/lakekeeper-events-kafka/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "veil",
          "manifest": "crates/lakekeeper-events-kafka/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "anyhow",
          "manifest": "crates/lakekeeper-events-nats/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "async-nats",
          "manifest": "crates/lakekeeper-events-nats/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "async-trait",
          "manifest": "crates/lakekeeper-events-nats/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "cloudevents-sdk",
          "manifest": "crates/lakekeeper-events-nats/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "figment",
          "manifest": "crates/lakekeeper-events-nats/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "lakekeeper",
          "manifest": "crates/lakekeeper-events-nats/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "serde",
          "manifest": "crates/lakekeeper-events-nats/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "serde_json",
          "manifest": "crates/lakekeeper-events-nats/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tracing",
          "manifest": "crates/lakekeeper-events-nats/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "typed-builder",
          "manifest": "crates/lakekeeper-events-nats/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "url",
          "manifest": "crates/lakekeeper-events-nats/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "veil",
          "manifest": "crates/lakekeeper-events-nats/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "anyhow",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "async-channel",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "chrono",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "futures",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "http",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "iceberg",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "iceberg-ext",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "itertools",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "lakekeeper",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "lakekeeper-io",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "lakekeeper-storage-postgres",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "maplit",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "pastey",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "serde",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "serde_json",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "sqlx",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "strum",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tokio",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tracing",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "utoipa",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "uuid",
          "manifest": "crates/lakekeeper-integration-tests/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "anyhow",
          "manifest": "crates/lakekeeper-secrets-kv2/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "async-trait",
          "manifest": "crates/lakekeeper-secrets-kv2/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "figment",
          "manifest": "crates/lakekeeper-secrets-kv2/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "iceberg-ext",
          "manifest": "crates/lakekeeper-secrets-kv2/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "lakekeeper",
          "manifest": "crates/lakekeeper-secrets-kv2/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "serde",
          "manifest": "crates/lakekeeper-secrets-kv2/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tokio",
          "manifest": "crates/lakekeeper-secrets-kv2/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tracing",
          "manifest": "crates/lakekeeper-secrets-kv2/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "url",
          "manifest": "crates/lakekeeper-secrets-kv2/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "uuid",
          "manifest": "crates/lakekeeper-secrets-kv2/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "vaultrs",
          "manifest": "crates/lakekeeper-secrets-kv2/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.8"
        },
        {
          "name": "vaultrs-login",
          "manifest": "crates/lakekeeper-secrets-kv2/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.2.4"
        },
        {
          "name": "veil",
          "manifest": "crates/lakekeeper-secrets-kv2/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "anyhow",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "async-trait",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "base64",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "chrono",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "crc",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "derive_more",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "fastrand",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "figment",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "futures",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "http",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "iceberg",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "iceberg-ext",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "iso8601",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "itertools",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "lakekeeper",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "lakekeeper-io",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "metrics",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "serde",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "serde_json",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "sqlx",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "strum",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tokio",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tracing",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "thiserror",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tryhard",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "typed-builder",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "url",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "uuid",
          "manifest": "crates/lakekeeper-storage-postgres/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "anyhow",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "async-trait",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "aws-config",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "aws-credential-types",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "aws-sdk-sts",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "aws-sigv4",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "aws-smithy-runtime-api",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "axum",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "axum-extra",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "axum-prometheus",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "azure_core",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "azure_storage",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "azure_storage_blobs",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "base64",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "chrono",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "cloudevents-sdk",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "derive_more",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "fastrand",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "figment",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "flate2",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "futures",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "google-cloud-auth",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "google-cloud-token",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "hmac",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "hostname",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "http",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "http-body-util",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "~0.1"
        },
        {
          "name": "iceberg",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "iceberg-ext",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "iso8601",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "itertools",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "k8s-openapi",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "lakekeeper-io",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "lazy-regex",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "limes",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "moka",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "pastey",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "percent-encoding",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "quick-xml",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "reqwest",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "semver",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "serde",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "serde_json",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "serde_norway",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "serde_urlencoded",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "sha1",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "sqlx",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "strum",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "strum_macros",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "thiserror",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "time",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tokio",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tokio-metrics",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tokio-util",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tower",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tower-http",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tracing",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "typed-builder",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "unicase",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "url",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "urlencoding",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "utoipa",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "utoipa-swagger-ui",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "uuid",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "valuable",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "veil",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "xxhash-rust",
          "manifest": "crates/lakekeeper/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "anyhow",
            "direct": true,
            "version": "1.0.103",
            "ecosystem": "crates"
          },
          {
            "name": "async-channel",
            "direct": true,
            "version": "1.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "async-channel",
            "direct": true,
            "version": "2.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "async-nats",
            "direct": true,
            "version": "0.46.0",
            "ecosystem": "crates"
          },
          {
            "name": "async-stream",
            "direct": true,
            "version": "0.3.6",
            "ecosystem": "crates"
          },
          {
            "name": "async-trait",
            "direct": true,
            "version": "0.1.89",
            "ecosystem": "crates"
          },
          {
            "name": "aws-config",
            "direct": true,
            "version": "1.8.18",
            "ecosystem": "crates"
          },
          {
            "name": "aws-credential-types",
            "direct": true,
            "version": "1.2.14",
            "ecosystem": "crates"
          },
          {
            "name": "aws-sdk-s3",
            "direct": true,
            "version": "1.135.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-sdk-sts",
            "direct": true,
            "version": "1.106.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-sigv4",
            "direct": true,
            "version": "1.4.5",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-async",
            "direct": true,
            "version": "1.2.14",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-http-client",
            "direct": true,
            "version": "1.1.13",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-runtime-api",
            "direct": true,
            "version": "1.12.3",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-types",
            "direct": true,
            "version": "1.4.9",
            "ecosystem": "crates"
          },
          {
            "name": "axum",
            "direct": true,
            "version": "0.8.9",
            "ecosystem": "crates"
          },
          {
            "name": "axum-extra",
            "direct": true,
            "version": "0.12.6",
            "ecosystem": "crates"
          },
          {
            "name": "axum-prometheus",
            "direct": true,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "azure_core",
            "direct": true,
            "version": "0.21.0",
            "ecosystem": "crates"
          },
          {
            "name": "azure_identity",
            "direct": true,
            "version": "0.21.0",
            "ecosystem": "crates"
          },
          {
            "name": "azure_storage",
            "direct": true,
            "version": "0.21.0",
            "ecosystem": "crates"
          },
          {
            "name": "azure_storage_blobs",
            "direct": true,
            "version": "0.21.0",
            "ecosystem": "crates"
          },
          {
            "name": "azure_storage_datalake",
            "direct": true,
            "version": "0.21.0",
            "ecosystem": "crates"
          },
          {
            "name": "base64",
            "direct": true,
            "version": "0.13.1",
            "ecosystem": "crates"
          },
          {
            "name": "base64",
            "direct": true,
            "version": "0.22.1",
            "ecosystem": "crates"
          },
          {
            "name": "bytes",
            "direct": true,
            "version": "1.11.1",
            "ecosystem": "crates"
          },
          {
            "name": "chrono",
            "direct": true,
            "version": "0.4.45",
            "ecosystem": "crates"
          },
          {
            "name": "clap",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "clap",
            "direct": true,
            "version": "4.6.1",
            "ecosystem": "crates"
          },
          {
            "name": "cloudevents-sdk",
            "direct": true,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "crc",
            "direct": true,
            "version": "3.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "derive_more",
            "direct": true,
            "version": "2.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "fastrand",
            "direct": true,
            "version": "1.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "fastrand",
            "direct": true,
            "version": "2.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "figment",
            "direct": true,
            "version": "0.10.19",
            "ecosystem": "crates"
          },
          {
            "name": "figment_file_provider_adapter",
            "direct": true,
            "version": "0.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "flate2",
            "direct": true,
            "version": "1.1.9",
            "ecosystem": "crates"
          },
          {
            "name": "futures",
            "direct": true,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "heck",
            "direct": true,
            "version": "0.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "hmac",
            "direct": true,
            "version": "0.12.1",
            "ecosystem": "crates"
          },
          {
            "name": "hmac",
            "direct": true,
            "version": "0.13.0",
            "ecosystem": "crates"
          },
          {
            "name": "hostname",
            "direct": true,
            "version": "0.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "http",
            "direct": true,
            "version": "0.2.12",
            "ecosystem": "crates"
          },
          {
            "name": "http",
            "direct": true,
            "version": "1.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "http-body-util",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "http-body-util",
            "direct": true,
            "version": "0.1.3",
            "ecosystem": "crates"
          },
          {
            "name": "iceberg",
            "direct": true,
            "version": "0.10.0",
            "ecosystem": "crates"
          },
          {
            "name": "iso8601",
            "direct": true,
            "version": "0.6.3",
            "ecosystem": "crates"
          },
          {
            "name": "itertools",
            "direct": true,
            "version": "0.13.0",
            "ecosystem": "crates"
          },
          {
            "name": "itertools",
            "direct": true,
            "version": "0.14.0",
            "ecosystem": "crates"
          },
          {
            "name": "k8s-openapi",
            "direct": true,
            "version": "0.28.0",
            "ecosystem": "crates"
          },
          {
            "name": "lakekeeper-console",
            "direct": true,
            "version": "0.21.0",
            "ecosystem": "crates"
          },
          {
            "name": "lazy-regex",
            "direct": true,
            "version": "3.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "limes",
            "direct": true,
            "version": "0.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "maplit",
            "direct": true,
            "version": "1.0.2",
            "ecosystem": "crates"
          },
          {
            "name": "md5",
            "direct": true,
            "version": "0.8.0",
            "ecosystem": "crates"
          },
          {
            "name": "metrics",
            "direct": true,
            "version": "0.24.6",
            "ecosystem": "crates"
          },
          {
            "name": "moka",
            "direct": true,
            "version": "0.12.15",
            "ecosystem": "crates"
          },
          {
            "name": "openfga-client",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "openfga-client",
            "direct": true,
            "version": "0.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "pastey",
            "direct": true,
            "version": "0.2.3",
            "ecosystem": "crates"
          },
          {
            "name": "percent-encoding",
            "direct": true,
            "version": "2.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "quick-xml",
            "direct": true,
            "version": "0.40.1",
            "ecosystem": "crates"
          },
          {
            "name": "quick-xml",
            "direct": true,
            "version": "0.41.0",
            "ecosystem": "crates"
          },
          {
            "name": "rdkafka",
            "direct": true,
            "version": "0.38.0",
            "ecosystem": "crates"
          },
          {
            "name": "reqwest",
            "direct": true,
            "version": "0.12.28",
            "ecosystem": "crates"
          },
          {
            "name": "reqwest",
            "direct": true,
            "version": "0.13.4",
            "ecosystem": "crates"
          },
          {
            "name": "reqwest-middleware",
            "direct": true,
            "version": "0.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "reqwest-retry",
            "direct": true,
            "version": "0.8.0",
            "ecosystem": "crates"
          },
          {
            "name": "semver",
            "direct": true,
            "version": "1.0.28",
            "ecosystem": "crates"
          },
          {
            "name": "serde",
            "direct": true,
            "version": "1.0.228",
            "ecosystem": "crates"
          },
          {
            "name": "serde_derive",
            "direct": true,
            "version": "1.0.228",
            "ecosystem": "crates"
          },
          {
            "name": "serde_json",
            "direct": true,
            "version": "1.0.150",
            "ecosystem": "crates"
          },
          {
            "name": "serde_norway",
            "direct": true,
            "version": "0.9.42",
            "ecosystem": "crates"
          },
          {
            "name": "serde_urlencoded",
            "direct": true,
            "version": "0.7.1",
            "ecosystem": "crates"
          },
          {
            "name": "sha1",
            "direct": true,
            "version": "0.10.6",
            "ecosystem": "crates"
          },
          {
            "name": "sha1",
            "direct": true,
            "version": "0.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "sqlx",
            "direct": true,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "strum",
            "direct": true,
            "version": "0.27.2",
            "ecosystem": "crates"
          },
          {
            "name": "strum_macros",
            "direct": true,
            "version": "0.27.2",
            "ecosystem": "crates"
          },
          {
            "name": "thiserror",
            "direct": true,
            "version": "1.0.69",
            "ecosystem": "crates"
          },
          {
            "name": "thiserror",
            "direct": true,
            "version": "2.0.18",
            "ecosystem": "crates"
          },
          {
            "name": "tikv-jemallocator",
            "direct": true,
            "version": "0.6.1",
            "ecosystem": "crates"
          },
          {
            "name": "time",
            "direct": true,
            "version": "0.3.47",
            "ecosystem": "crates"
          },
          {
            "name": "tokio",
            "direct": true,
            "version": "1.52.3",
            "ecosystem": "crates"
          },
          {
            "name": "tokio-metrics",
            "direct": true,
            "version": "0.4.9",
            "ecosystem": "crates"
          },
          {
            "name": "tokio-util",
            "direct": true,
            "version": "0.7.18",
            "ecosystem": "crates"
          },
          {
            "name": "tower",
            "direct": true,
            "version": "0.5.3",
            "ecosystem": "crates"
          },
          {
            "name": "tower-http",
            "direct": true,
            "version": "0.6.11",
            "ecosystem": "crates"
          },
          {
            "name": "tracing",
            "direct": true,
            "version": "0.1.44",
            "ecosystem": "crates"
          },
          {
            "name": "tracing-subscriber",
            "direct": true,
            "version": "0.3.23",
            "ecosystem": "crates"
          },
          {
            "name": "tryhard",
            "direct": true,
            "version": "0.5.2",
            "ecosystem": "crates"
          },
          {
            "name": "typed-builder",
            "direct": true,
            "version": "0.20.1",
            "ecosystem": "crates"
          },
          {
            "name": "typed-builder",
            "direct": true,
            "version": "0.23.2",
            "ecosystem": "crates"
          },
          {
            "name": "typetag",
            "direct": true,
            "version": "0.2.22",
            "ecosystem": "crates"
          },
          {
            "name": "unicase",
            "direct": true,
            "version": "2.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "unicode-general-category",
            "direct": true,
            "version": "1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "url",
            "direct": true,
            "version": "2.5.8",
            "ecosystem": "crates"
          },
          {
            "name": "urlencoding",
            "direct": true,
            "version": "2.1.3",
            "ecosystem": "crates"
          },
          {
            "name": "utoipa",
            "direct": true,
            "version": "5.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "utoipa-swagger-ui",
            "direct": true,
            "version": "9.0.2",
            "ecosystem": "crates"
          },
          {
            "name": "uuid",
            "direct": true,
            "version": "1.23.2",
            "ecosystem": "crates"
          },
          {
            "name": "valuable",
            "direct": true,
            "version": "0.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "vaultrs",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "vaultrs",
            "direct": true,
            "version": "0.8.0",
            "ecosystem": "crates"
          },
          {
            "name": "vaultrs-login",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "vaultrs-login",
            "direct": true,
            "version": "0.2.4",
            "ecosystem": "crates"
          },
          {
            "name": "veil",
            "direct": true,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "webpki-root-certs",
            "direct": true,
            "version": "1.0.7",
            "ecosystem": "crates"
          },
          {
            "name": "xxhash-rust",
            "direct": true,
            "version": "0.8.15",
            "ecosystem": "crates"
          },
          {
            "name": "adler2",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "aead",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "crates"
          },
          {
            "name": "aes",
            "direct": false,
            "version": "0.8.4",
            "ecosystem": "crates"
          },
          {
            "name": "aes-gcm",
            "direct": false,
            "version": "0.10.3",
            "ecosystem": "crates"
          },
          {
            "name": "ahash",
            "direct": false,
            "version": "0.8.12",
            "ecosystem": "crates"
          },
          {
            "name": "aho-corasick",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "crates"
          },
          {
            "name": "alloc-no-stdlib",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "crates"
          },
          {
            "name": "alloc-stdlib",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "allocator-api2",
            "direct": false,
            "version": "0.2.21",
            "ecosystem": "crates"
          },
          {
            "name": "android_system_properties",
            "direct": false,
            "version": "0.1.5",
            "ecosystem": "crates"
          },
          {
            "name": "annotate-snippets",
            "direct": false,
            "version": "0.12.16",
            "ecosystem": "crates"
          },
          {
            "name": "anstream",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "anstyle",
            "direct": false,
            "version": "1.0.14",
            "ecosystem": "crates"
          },
          {
            "name": "anstyle-parse",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "anstyle-query",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "crates"
          },
          {
            "name": "anstyle-wincon",
            "direct": false,
            "version": "3.0.11",
            "ecosystem": "crates"
          },
          {
            "name": "apache-avro",
            "direct": false,
            "version": "0.21.0",
            "ecosystem": "crates"
          },
          {
            "name": "arbitrary",
            "direct": false,
            "version": "1.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "arc-swap",
            "direct": false,
            "version": "1.9.1",
            "ecosystem": "crates"
          },
          {
            "name": "array-init",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "arraydeque",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-arith",
            "direct": false,
            "version": "58.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-array",
            "direct": false,
            "version": "58.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-buffer",
            "direct": false,
            "version": "58.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-cast",
            "direct": false,
            "version": "58.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-data",
            "direct": false,
            "version": "58.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-ipc",
            "direct": false,
            "version": "58.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-ord",
            "direct": false,
            "version": "58.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-schema",
            "direct": false,
            "version": "58.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-select",
            "direct": false,
            "version": "58.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-string",
            "direct": false,
            "version": "58.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "as-any",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "assert-json-diff",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "crates"
          },
          {
            "name": "async-compression",
            "direct": false,
            "version": "0.4.42",
            "ecosystem": "crates"
          },
          {
            "name": "async-io",
            "direct": false,
            "version": "2.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "async-lock",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "async-process",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "async-signal",
            "direct": false,
            "version": "0.2.14",
            "ecosystem": "crates"
          },
          {
            "name": "async-stream-impl",
            "direct": false,
            "version": "0.3.6",
            "ecosystem": "crates"
          },
          {
            "name": "async-task",
            "direct": false,
            "version": "4.7.1",
            "ecosystem": "crates"
          },
          {
            "name": "atoi",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "atomic",
            "direct": false,
            "version": "0.6.1",
            "ecosystem": "crates"
          },
          {
            "name": "atomic-waker",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "autocfg",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "crates"
          },
          {
            "name": "aws-lc-rs",
            "direct": false,
            "version": "1.17.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-lc-sys",
            "direct": false,
            "version": "0.41.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-runtime",
            "direct": false,
            "version": "1.7.4",
            "ecosystem": "crates"
          },
          {
            "name": "aws-sdk-sso",
            "direct": false,
            "version": "1.101.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-sdk-ssooidc",
            "direct": false,
            "version": "1.103.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-checksums",
            "direct": false,
            "version": "0.64.8",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-eventstream",
            "direct": false,
            "version": "0.60.20",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-http",
            "direct": false,
            "version": "0.63.6",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-json",
            "direct": false,
            "version": "0.62.7",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-observability",
            "direct": false,
            "version": "0.2.6",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-query",
            "direct": false,
            "version": "0.60.15",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-runtime",
            "direct": false,
            "version": "1.11.3",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-runtime-api-macros",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-schema",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-xml",
            "direct": false,
            "version": "0.60.15",
            "ecosystem": "crates"
          },
          {
            "name": "aws-types",
            "direct": false,
            "version": "1.3.16",
            "ecosystem": "crates"
          },
          {
            "name": "axum-core",
            "direct": false,
            "version": "0.5.6",
            "ecosystem": "crates"
          },
          {
            "name": "azure_svc_blobstorage",
            "direct": false,
            "version": "0.21.0",
            "ecosystem": "crates"
          },
          {
            "name": "backon",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "base16ct",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "base64-simd",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "crates"
          },
          {
            "name": "base64ct",
            "direct": false,
            "version": "1.8.3",
            "ecosystem": "crates"
          },
          {
            "name": "bigdecimal",
            "direct": false,
            "version": "0.4.10",
            "ecosystem": "crates"
          },
          {
            "name": "bimap",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "crates"
          },
          {
            "name": "bindgen",
            "direct": false,
            "version": "0.72.1",
            "ecosystem": "crates"
          },
          {
            "name": "bitflags",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "bitflags",
            "direct": false,
            "version": "2.13.0",
            "ecosystem": "crates"
          },
          {
            "name": "block-buffer",
            "direct": false,
            "version": "0.10.4",
            "ecosystem": "crates"
          },
          {
            "name": "block-buffer",
            "direct": false,
            "version": "0.12.0",
            "ecosystem": "crates"
          },
          {
            "name": "blocking",
            "direct": false,
            "version": "1.6.2",
            "ecosystem": "crates"
          },
          {
            "name": "bnum",
            "direct": false,
            "version": "0.12.1",
            "ecosystem": "crates"
          },
          {
            "name": "bon",
            "direct": false,
            "version": "3.9.1",
            "ecosystem": "crates"
          },
          {
            "name": "bon-macros",
            "direct": false,
            "version": "3.9.1",
            "ecosystem": "crates"
          },
          {
            "name": "brotli",
            "direct": false,
            "version": "8.0.3",
            "ecosystem": "crates"
          },
          {
            "name": "brotli-decompressor",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "bs58",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "crates"
          },
          {
            "name": "bstr",
            "direct": false,
            "version": "1.12.1",
            "ecosystem": "crates"
          },
          {
            "name": "bumpalo",
            "direct": false,
            "version": "3.20.3",
            "ecosystem": "crates"
          },
          {
            "name": "bytemuck",
            "direct": false,
            "version": "1.25.0",
            "ecosystem": "crates"
          },
          {
            "name": "byteorder",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "bytes-utils",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "crates"
          },
          {
            "name": "cc",
            "direct": false,
            "version": "1.2.63",
            "ecosystem": "crates"
          },
          {
            "name": "cexpr",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "cfg-if",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "crates"
          },
          {
            "name": "cfg_aliases",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "chacha20",
            "direct": false,
            "version": "0.10.0",
            "ecosystem": "crates"
          },
          {
            "name": "cipher",
            "direct": false,
            "version": "0.4.4",
            "ecosystem": "crates"
          },
          {
            "name": "clang-sys",
            "direct": false,
            "version": "1.8.1",
            "ecosystem": "crates"
          },
          {
            "name": "clap_builder",
            "direct": false,
            "version": "4.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "clap_derive",
            "direct": false,
            "version": "4.6.1",
            "ecosystem": "crates"
          },
          {
            "name": "clap_lex",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "cmake",
            "direct": false,
            "version": "0.1.58",
            "ecosystem": "crates"
          },
          {
            "name": "cmov",
            "direct": false,
            "version": "0.5.4",
            "ecosystem": "crates"
          },
          {
            "name": "colorchoice",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "crates"
          },
          {
            "name": "combine",
            "direct": false,
            "version": "4.6.7",
            "ecosystem": "crates"
          },
          {
            "name": "compression-codecs",
            "direct": false,
            "version": "0.4.38",
            "ecosystem": "crates"
          },
          {
            "name": "compression-core",
            "direct": false,
            "version": "0.4.32",
            "ecosystem": "crates"
          },
          {
            "name": "concurrent-queue",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "const-oid",
            "direct": false,
            "version": "0.10.2",
            "ecosystem": "crates"
          },
          {
            "name": "const-oid",
            "direct": false,
            "version": "0.9.6",
            "ecosystem": "crates"
          },
          {
            "name": "const-random",
            "direct": false,
            "version": "0.1.18",
            "ecosystem": "crates"
          },
          {
            "name": "const-random-macro",
            "direct": false,
            "version": "0.1.16",
            "ecosystem": "crates"
          },
          {
            "name": "core-foundation",
            "direct": false,
            "version": "0.10.1",
            "ecosystem": "crates"
          },
          {
            "name": "core-foundation",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "crates"
          },
          {
            "name": "core-foundation-sys",
            "direct": false,
            "version": "0.8.7",
            "ecosystem": "crates"
          },
          {
            "name": "cpufeatures",
            "direct": false,
            "version": "0.2.17",
            "ecosystem": "crates"
          },
          {
            "name": "cpufeatures",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "crc-catalog",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "crc-fast",
            "direct": false,
            "version": "1.10.0",
            "ecosystem": "crates"
          },
          {
            "name": "crc32fast",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "crossbeam-channel",
            "direct": false,
            "version": "0.5.15",
            "ecosystem": "crates"
          },
          {
            "name": "crossbeam-epoch",
            "direct": false,
            "version": "0.9.20",
            "ecosystem": "crates"
          },
          {
            "name": "crossbeam-queue",
            "direct": false,
            "version": "0.3.12",
            "ecosystem": "crates"
          },
          {
            "name": "crossbeam-utils",
            "direct": false,
            "version": "0.8.21",
            "ecosystem": "crates"
          },
          {
            "name": "crunchy",
            "direct": false,
            "version": "0.2.4",
            "ecosystem": "crates"
          },
          {
            "name": "crypto-bigint",
            "direct": false,
            "version": "0.5.5",
            "ecosystem": "crates"
          },
          {
            "name": "crypto-common",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "crates"
          },
          {
            "name": "crypto-common",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "ctr",
            "direct": false,
            "version": "0.9.2",
            "ecosystem": "crates"
          },
          {
            "name": "ctutils",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "curl-sys",
            "direct": false,
            "version": "0.4.88+curl-8.20.0",
            "ecosystem": "crates"
          },
          {
            "name": "curve25519-dalek",
            "direct": false,
            "version": "4.1.3",
            "ecosystem": "crates"
          },
          {
            "name": "curve25519-dalek-derive",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "darling",
            "direct": false,
            "version": "0.20.11",
            "ecosystem": "crates"
          },
          {
            "name": "darling",
            "direct": false,
            "version": "0.23.0",
            "ecosystem": "crates"
          },
          {
            "name": "darling_core",
            "direct": false,
            "version": "0.20.11",
            "ecosystem": "crates"
          },
          {
            "name": "darling_core",
            "direct": false,
            "version": "0.23.0",
            "ecosystem": "crates"
          },
          {
            "name": "darling_macro",
            "direct": false,
            "version": "0.20.11",
            "ecosystem": "crates"
          },
          {
            "name": "darling_macro",
            "direct": false,
            "version": "0.23.0",
            "ecosystem": "crates"
          },
          {
            "name": "data-encoding",
            "direct": false,
            "version": "2.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "defmt",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "defmt-macros",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "defmt-parser",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "delegate-attr",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "der",
            "direct": false,
            "version": "0.7.10",
            "ecosystem": "crates"
          },
          {
            "name": "deranged",
            "direct": false,
            "version": "0.5.8",
            "ecosystem": "crates"
          },
          {
            "name": "derive_arbitrary",
            "direct": false,
            "version": "1.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "derive_builder",
            "direct": false,
            "version": "0.20.2",
            "ecosystem": "crates"
          },
          {
            "name": "derive_builder_core",
            "direct": false,
            "version": "0.20.2",
            "ecosystem": "crates"
          },
          {
            "name": "derive_builder_macro",
            "direct": false,
            "version": "0.20.2",
            "ecosystem": "crates"
          },
          {
            "name": "derive_more-impl",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "diff",
            "direct": false,
            "version": "0.1.13",
            "ecosystem": "crates"
          },
          {
            "name": "digest",
            "direct": false,
            "version": "0.10.7",
            "ecosystem": "crates"
          },
          {
            "name": "digest",
            "direct": false,
            "version": "0.11.3",
            "ecosystem": "crates"
          },
          {
            "name": "dirs",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "dirs-sys",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "displaydoc",
            "direct": false,
            "version": "0.2.6",
            "ecosystem": "crates"
          },
          {
            "name": "dissimilar",
            "direct": false,
            "version": "1.0.11",
            "ecosystem": "crates"
          },
          {
            "name": "dotenvy",
            "direct": false,
            "version": "0.15.7",
            "ecosystem": "crates"
          },
          {
            "name": "downcast",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "duct",
            "direct": false,
            "version": "0.13.7",
            "ecosystem": "crates"
          },
          {
            "name": "dunce",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "crates"
          },
          {
            "name": "dyn-clone",
            "direct": false,
            "version": "1.0.20",
            "ecosystem": "crates"
          },
          {
            "name": "ecdsa",
            "direct": false,
            "version": "0.16.9",
            "ecosystem": "crates"
          },
          {
            "name": "ed25519",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "crates"
          },
          {
            "name": "ed25519-dalek",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "either",
            "direct": false,
            "version": "1.16.0",
            "ecosystem": "crates"
          },
          {
            "name": "elliptic-curve",
            "direct": false,
            "version": "0.13.8",
            "ecosystem": "crates"
          },
          {
            "name": "encoding_rs",
            "direct": false,
            "version": "0.8.35",
            "ecosystem": "crates"
          },
          {
            "name": "encoding_rs_io",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "crates"
          },
          {
            "name": "equivalent",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "crates"
          },
          {
            "name": "erased-serde",
            "direct": false,
            "version": "0.4.10",
            "ecosystem": "crates"
          },
          {
            "name": "errno",
            "direct": false,
            "version": "0.3.14",
            "ecosystem": "crates"
          },
          {
            "name": "etcetera",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "event-listener",
            "direct": false,
            "version": "2.5.3",
            "ecosystem": "crates"
          },
          {
            "name": "event-listener",
            "direct": false,
            "version": "5.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "event-listener-strategy",
            "direct": false,
            "version": "0.5.4",
            "ecosystem": "crates"
          },
          {
            "name": "expect-test",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "crates"
          },
          {
            "name": "fastnum",
            "direct": false,
            "version": "0.7.4",
            "ecosystem": "crates"
          },
          {
            "name": "ff",
            "direct": false,
            "version": "0.13.1",
            "ecosystem": "crates"
          },
          {
            "name": "fiat-crypto",
            "direct": false,
            "version": "0.2.9",
            "ecosystem": "crates"
          },
          {
            "name": "find-msvc-tools",
            "direct": false,
            "version": "0.1.9",
            "ecosystem": "crates"
          },
          {
            "name": "fixedbitset",
            "direct": false,
            "version": "0.5.7",
            "ecosystem": "crates"
          },
          {
            "name": "flatbuffers",
            "direct": false,
            "version": "25.12.19",
            "ecosystem": "crates"
          },
          {
            "name": "flume",
            "direct": false,
            "version": "0.12.0",
            "ecosystem": "crates"
          },
          {
            "name": "fnv",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "crates"
          },
          {
            "name": "foldhash",
            "direct": false,
            "version": "0.1.5",
            "ecosystem": "crates"
          },
          {
            "name": "foldhash",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "foreign-types",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "foreign-types-shared",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "form_urlencoded",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "fragile",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "fs_extra",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "futures-channel",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-core",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-executor",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-intrusive",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "futures-io",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-lite",
            "direct": false,
            "version": "1.13.0",
            "ecosystem": "crates"
          },
          {
            "name": "futures-lite",
            "direct": false,
            "version": "2.6.1",
            "ecosystem": "crates"
          },
          {
            "name": "futures-macro",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-sink",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-task",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-timer",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "crates"
          },
          {
            "name": "futures-util",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "futures-util",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "gcloud-auth",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "gcloud-metadata",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "crates"
          },
          {
            "name": "gcloud-storage",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "generic-array",
            "direct": false,
            "version": "0.14.7",
            "ecosystem": "crates"
          },
          {
            "name": "getrandom",
            "direct": false,
            "version": "0.1.16",
            "ecosystem": "crates"
          },
          {
            "name": "getrandom",
            "direct": false,
            "version": "0.2.17",
            "ecosystem": "crates"
          },
          {
            "name": "getrandom",
            "direct": false,
            "version": "0.3.4",
            "ecosystem": "crates"
          },
          {
            "name": "getrandom",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "ghash",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "crates"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "0.3.3",
            "ecosystem": "crates"
          },
          {
            "name": "gloo-timers",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "granit-parser",
            "direct": false,
            "version": "0.0.3",
            "ecosystem": "crates"
          },
          {
            "name": "group",
            "direct": false,
            "version": "0.13.0",
            "ecosystem": "crates"
          },
          {
            "name": "h2",
            "direct": false,
            "version": "0.4.14",
            "ecosystem": "crates"
          },
          {
            "name": "half",
            "direct": false,
            "version": "2.7.1",
            "ecosystem": "crates"
          },
          {
            "name": "hashbrown",
            "direct": false,
            "version": "0.12.3",
            "ecosystem": "crates"
          },
          {
            "name": "hashbrown",
            "direct": false,
            "version": "0.15.5",
            "ecosystem": "crates"
          },
          {
            "name": "hashbrown",
            "direct": false,
            "version": "0.16.1",
            "ecosystem": "crates"
          },
          {
            "name": "hashbrown",
            "direct": false,
            "version": "0.17.1",
            "ecosystem": "crates"
          },
          {
            "name": "hashlink",
            "direct": false,
            "version": "0.11.1",
            "ecosystem": "crates"
          },
          {
            "name": "headers",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "headers-core",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "hermit-abi",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "crates"
          },
          {
            "name": "hex",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "crates"
          },
          {
            "name": "hkdf",
            "direct": false,
            "version": "0.13.0",
            "ecosystem": "crates"
          },
          {
            "name": "home",
            "direct": false,
            "version": "0.5.12",
            "ecosystem": "crates"
          },
          {
            "name": "http-body",
            "direct": false,
            "version": "0.4.6",
            "ecosystem": "crates"
          },
          {
            "name": "http-body",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "http-types",
            "direct": false,
            "version": "2.12.0",
            "ecosystem": "crates"
          },
          {
            "name": "httparse",
            "direct": false,
            "version": "1.10.1",
            "ecosystem": "crates"
          },
          {
            "name": "httpdate",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "crates"
          },
          {
            "name": "hybrid-array",
            "direct": false,
            "version": "0.4.12",
            "ecosystem": "crates"
          },
          {
            "name": "hyper",
            "direct": false,
            "version": "1.10.1",
            "ecosystem": "crates"
          },
          {
            "name": "hyper-rustls",
            "direct": false,
            "version": "0.27.9",
            "ecosystem": "crates"
          },
          {
            "name": "hyper-timeout",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "crates"
          },
          {
            "name": "hyper-tls",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "hyper-util",
            "direct": false,
            "version": "0.1.20",
            "ecosystem": "crates"
          },
          {
            "name": "iana-time-zone",
            "direct": false,
            "version": "0.1.65",
            "ecosystem": "crates"
          },
          {
            "name": "iana-time-zone-haiku",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "icu_collections",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "icu_locale_core",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "icu_normalizer",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "icu_normalizer_data",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "icu_properties",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "icu_properties_data",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "icu_provider",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "id-arena",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "ident_case",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "idna",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "idna_adapter",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "indexmap",
            "direct": false,
            "version": "1.9.3",
            "ecosystem": "crates"
          },
          {
            "name": "indexmap",
            "direct": false,
            "version": "2.14.0",
            "ecosystem": "crates"
          },
          {
            "name": "infer",
            "direct": false,
            "version": "0.2.3",
            "ecosystem": "crates"
          },
          {
            "name": "inlinable_string",
            "direct": false,
            "version": "0.1.15",
            "ecosystem": "crates"
          },
          {
            "name": "inout",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "crates"
          },
          {
            "name": "instant",
            "direct": false,
            "version": "0.1.13",
            "ecosystem": "crates"
          },
          {
            "name": "integer-encoding",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "crates"
          },
          {
            "name": "inventory",
            "direct": false,
            "version": "0.3.24",
            "ecosystem": "crates"
          },
          {
            "name": "ipnet",
            "direct": false,
            "version": "2.12.0",
            "ecosystem": "crates"
          },
          {
            "name": "is_terminal_polyfill",
            "direct": false,
            "version": "1.70.2",
            "ecosystem": "crates"
          },
          {
            "name": "itoa",
            "direct": false,
            "version": "1.0.18",
            "ecosystem": "crates"
          },
          {
            "name": "jiff",
            "direct": false,
            "version": "0.2.32",
            "ecosystem": "crates"
          },
          {
            "name": "jiff-static",
            "direct": false,
            "version": "0.2.32",
            "ecosystem": "crates"
          },
          {
            "name": "jni",
            "direct": false,
            "version": "0.22.4",
            "ecosystem": "crates"
          },
          {
            "name": "jni-macros",
            "direct": false,
            "version": "0.22.4",
            "ecosystem": "crates"
          },
          {
            "name": "jni-sys",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "jni-sys-macros",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "jobserver",
            "direct": false,
            "version": "0.1.34",
            "ecosystem": "crates"
          },
          {
            "name": "js-sys",
            "direct": false,
            "version": "0.3.99",
            "ecosystem": "crates"
          },
          {
            "name": "jsonpath-rust",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "crates"
          },
          {
            "name": "jsonwebtoken",
            "direct": false,
            "version": "10.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "jwks_client_rs",
            "direct": false,
            "version": "0.6.1",
            "ecosystem": "crates"
          },
          {
            "name": "krb5-src",
            "direct": false,
            "version": "0.3.4",
            "ecosystem": "crates"
          },
          {
            "name": "kube",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "kube-client",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "kube-core",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "lazy-regex-proc_macros",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "lazy_static",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "leb128fmt",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "lexical-core",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "crates"
          },
          {
            "name": "lexical-parse-float",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "crates"
          },
          {
            "name": "lexical-parse-integer",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "crates"
          },
          {
            "name": "lexical-util",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "crates"
          },
          {
            "name": "lexical-write-float",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "crates"
          },
          {
            "name": "lexical-write-integer",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "crates"
          },
          {
            "name": "libc",
            "direct": false,
            "version": "0.2.186",
            "ecosystem": "crates"
          },
          {
            "name": "libloading",
            "direct": false,
            "version": "0.8.9",
            "ecosystem": "crates"
          },
          {
            "name": "libm",
            "direct": false,
            "version": "0.2.16",
            "ecosystem": "crates"
          },
          {
            "name": "libredox",
            "direct": false,
            "version": "0.1.17",
            "ecosystem": "crates"
          },
          {
            "name": "libsqlite3-sys",
            "direct": false,
            "version": "0.37.0",
            "ecosystem": "crates"
          },
          {
            "name": "libz-sys",
            "direct": false,
            "version": "1.1.29",
            "ecosystem": "crates"
          },
          {
            "name": "linux-raw-sys",
            "direct": false,
            "version": "0.12.1",
            "ecosystem": "crates"
          },
          {
            "name": "litemap",
            "direct": false,
            "version": "0.8.2",
            "ecosystem": "crates"
          },
          {
            "name": "lock_api",
            "direct": false,
            "version": "0.4.14",
            "ecosystem": "crates"
          },
          {
            "name": "log",
            "direct": false,
            "version": "0.4.32",
            "ecosystem": "crates"
          },
          {
            "name": "lru",
            "direct": false,
            "version": "0.16.4",
            "ecosystem": "crates"
          },
          {
            "name": "lru-slab",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "lz4_flex",
            "direct": false,
            "version": "0.13.1",
            "ecosystem": "crates"
          },
          {
            "name": "matchers",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "matchit",
            "direct": false,
            "version": "0.8.4",
            "ecosystem": "crates"
          },
          {
            "name": "md-5",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "memchr",
            "direct": false,
            "version": "2.8.1",
            "ecosystem": "crates"
          },
          {
            "name": "metrics-exporter-prometheus",
            "direct": false,
            "version": "0.17.2",
            "ecosystem": "crates"
          },
          {
            "name": "metrics-util",
            "direct": false,
            "version": "0.20.4",
            "ecosystem": "crates"
          },
          {
            "name": "middle",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "mime",
            "direct": false,
            "version": "0.3.17",
            "ecosystem": "crates"
          },
          {
            "name": "mime_guess",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "crates"
          },
          {
            "name": "minimal-lexical",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "miniz_oxide",
            "direct": false,
            "version": "0.8.9",
            "ecosystem": "crates"
          },
          {
            "name": "mio",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "mockall",
            "direct": false,
            "version": "0.14.0",
            "ecosystem": "crates"
          },
          {
            "name": "mockall_derive",
            "direct": false,
            "version": "0.14.0",
            "ecosystem": "crates"
          },
          {
            "name": "multimap",
            "direct": false,
            "version": "0.10.1",
            "ecosystem": "crates"
          },
          {
            "name": "murmur3",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "crates"
          },
          {
            "name": "native-tls",
            "direct": false,
            "version": "0.2.18",
            "ecosystem": "crates"
          },
          {
            "name": "nkeys",
            "direct": false,
            "version": "0.4.5",
            "ecosystem": "crates"
          },
          {
            "name": "nohash-hasher",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "nom",
            "direct": false,
            "version": "7.1.3",
            "ecosystem": "crates"
          },
          {
            "name": "nom",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "nu-ansi-term",
            "direct": false,
            "version": "0.50.3",
            "ecosystem": "crates"
          },
          {
            "name": "num-bigint",
            "direct": false,
            "version": "0.4.6",
            "ecosystem": "crates"
          },
          {
            "name": "num-complex",
            "direct": false,
            "version": "0.4.6",
            "ecosystem": "crates"
          },
          {
            "name": "num-conv",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "num-integer",
            "direct": false,
            "version": "0.1.46",
            "ecosystem": "crates"
          },
          {
            "name": "num-traits",
            "direct": false,
            "version": "0.2.19",
            "ecosystem": "crates"
          },
          {
            "name": "num_enum",
            "direct": false,
            "version": "0.7.6",
            "ecosystem": "crates"
          },
          {
            "name": "num_enum_derive",
            "direct": false,
            "version": "0.7.6",
            "ecosystem": "crates"
          },
          {
            "name": "oauth2",
            "direct": false,
            "version": "4.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "oauth2",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "once_cell",
            "direct": false,
            "version": "1.21.4",
            "ecosystem": "crates"
          },
          {
            "name": "once_cell_polyfill",
            "direct": false,
            "version": "1.70.2",
            "ecosystem": "crates"
          },
          {
            "name": "opaque-debug",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "crates"
          },
          {
            "name": "openssl",
            "direct": false,
            "version": "0.10.80",
            "ecosystem": "crates"
          },
          {
            "name": "openssl-macros",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "openssl-probe",
            "direct": false,
            "version": "0.1.6",
            "ecosystem": "crates"
          },
          {
            "name": "openssl-probe",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "openssl-src",
            "direct": false,
            "version": "300.6.0+3.6.2",
            "ecosystem": "crates"
          },
          {
            "name": "openssl-sys",
            "direct": false,
            "version": "0.9.116",
            "ecosystem": "crates"
          },
          {
            "name": "option-ext",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "ordered-float",
            "direct": false,
            "version": "2.10.1",
            "ecosystem": "crates"
          },
          {
            "name": "ordered-float",
            "direct": false,
            "version": "4.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "os_pipe",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "crates"
          },
          {
            "name": "outref",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "crates"
          },
          {
            "name": "p256",
            "direct": false,
            "version": "0.13.2",
            "ecosystem": "crates"
          },
          {
            "name": "parking",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "parking_lot",
            "direct": false,
            "version": "0.12.5",
            "ecosystem": "crates"
          },
          {
            "name": "parking_lot_core",
            "direct": false,
            "version": "0.9.12",
            "ecosystem": "crates"
          },
          {
            "name": "parquet",
            "direct": false,
            "version": "58.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "paste",
            "direct": false,
            "version": "1.0.15",
            "ecosystem": "crates"
          },
          {
            "name": "path-clean",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "pear",
            "direct": false,
            "version": "0.2.9",
            "ecosystem": "crates"
          },
          {
            "name": "pear_codegen",
            "direct": false,
            "version": "0.2.9",
            "ecosystem": "crates"
          },
          {
            "name": "pem",
            "direct": false,
            "version": "3.0.6",
            "ecosystem": "crates"
          },
          {
            "name": "pem-rfc7468",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "crates"
          },
          {
            "name": "pest",
            "direct": false,
            "version": "2.8.6",
            "ecosystem": "crates"
          },
          {
            "name": "pest_derive",
            "direct": false,
            "version": "2.8.6",
            "ecosystem": "crates"
          },
          {
            "name": "pest_generator",
            "direct": false,
            "version": "2.8.6",
            "ecosystem": "crates"
          },
          {
            "name": "pest_meta",
            "direct": false,
            "version": "2.8.6",
            "ecosystem": "crates"
          },
          {
            "name": "petgraph",
            "direct": false,
            "version": "0.8.3",
            "ecosystem": "crates"
          },
          {
            "name": "pin-project",
            "direct": false,
            "version": "1.1.13",
            "ecosystem": "crates"
          },
          {
            "name": "pin-project-internal",
            "direct": false,
            "version": "1.1.13",
            "ecosystem": "crates"
          },
          {
            "name": "pin-project-lite",
            "direct": false,
            "version": "0.2.17",
            "ecosystem": "crates"
          },
          {
            "name": "pin-utils",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "piper",
            "direct": false,
            "version": "0.2.5",
            "ecosystem": "crates"
          },
          {
            "name": "pkcs8",
            "direct": false,
            "version": "0.10.2",
            "ecosystem": "crates"
          },
          {
            "name": "pkg-config",
            "direct": false,
            "version": "0.3.33",
            "ecosystem": "crates"
          },
          {
            "name": "polling",
            "direct": false,
            "version": "3.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "polyval",
            "direct": false,
            "version": "0.6.2",
            "ecosystem": "crates"
          },
          {
            "name": "portable-atomic",
            "direct": false,
            "version": "1.13.1",
            "ecosystem": "crates"
          },
          {
            "name": "portable-atomic-util",
            "direct": false,
            "version": "0.2.7",
            "ecosystem": "crates"
          },
          {
            "name": "potential_utf",
            "direct": false,
            "version": "0.1.5",
            "ecosystem": "crates"
          },
          {
            "name": "powerfmt",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "ppv-lite86",
            "direct": false,
            "version": "0.2.21",
            "ecosystem": "crates"
          },
          {
            "name": "predicates",
            "direct": false,
            "version": "3.1.4",
            "ecosystem": "crates"
          },
          {
            "name": "predicates-core",
            "direct": false,
            "version": "1.0.10",
            "ecosystem": "crates"
          },
          {
            "name": "predicates-tree",
            "direct": false,
            "version": "1.0.13",
            "ecosystem": "crates"
          },
          {
            "name": "pretty_assertions",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "prettyplease",
            "direct": false,
            "version": "0.2.37",
            "ecosystem": "crates"
          },
          {
            "name": "primeorder",
            "direct": false,
            "version": "0.13.6",
            "ecosystem": "crates"
          },
          {
            "name": "proc-macro-crate",
            "direct": false,
            "version": "3.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "proc-macro2",
            "direct": false,
            "version": "1.0.106",
            "ecosystem": "crates"
          },
          {
            "name": "proc-macro2-diagnostics",
            "direct": false,
            "version": "0.10.1",
            "ecosystem": "crates"
          },
          {
            "name": "prost",
            "direct": false,
            "version": "0.14.4",
            "ecosystem": "crates"
          },
          {
            "name": "prost-build",
            "direct": false,
            "version": "0.14.4",
            "ecosystem": "crates"
          },
          {
            "name": "prost-derive",
            "direct": false,
            "version": "0.14.4",
            "ecosystem": "crates"
          },
          {
            "name": "prost-types",
            "direct": false,
            "version": "0.14.4",
            "ecosystem": "crates"
          },
          {
            "name": "prost-wkt",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "crates"
          },
          {
            "name": "prost-wkt-build",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "crates"
          },
          {
            "name": "prost-wkt-types",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "crates"
          },
          {
            "name": "protobuf-src",
            "direct": false,
            "version": "2.1.1+27.1",
            "ecosystem": "crates"
          },
          {
            "name": "quad-rand",
            "direct": false,
            "version": "0.2.3",
            "ecosystem": "crates"
          },
          {
            "name": "quanta",
            "direct": false,
            "version": "0.12.6",
            "ecosystem": "crates"
          },
          {
            "name": "quinn",
            "direct": false,
            "version": "0.11.9",
            "ecosystem": "crates"
          },
          {
            "name": "quinn-proto",
            "direct": false,
            "version": "0.11.15",
            "ecosystem": "crates"
          },
          {
            "name": "quinn-udp",
            "direct": false,
            "version": "0.5.14",
            "ecosystem": "crates"
          },
          {
            "name": "quote",
            "direct": false,
            "version": "1.0.45",
            "ecosystem": "crates"
          },
          {
            "name": "r-efi",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "r-efi",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "rand",
            "direct": false,
            "version": "0.10.1",
            "ecosystem": "crates"
          },
          {
            "name": "rand",
            "direct": false,
            "version": "0.7.3",
            "ecosystem": "crates"
          },
          {
            "name": "rand",
            "direct": false,
            "version": "0.8.6",
            "ecosystem": "crates"
          },
          {
            "name": "rand",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "crates"
          },
          {
            "name": "rand_chacha",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "rand_chacha",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "crates"
          },
          {
            "name": "rand_chacha",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "rand_core",
            "direct": false,
            "version": "0.10.1",
            "ecosystem": "crates"
          },
          {
            "name": "rand_core",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "crates"
          },
          {
            "name": "rand_core",
            "direct": false,
            "version": "0.6.4",
            "ecosystem": "crates"
          },
          {
            "name": "rand_core",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "crates"
          },
          {
            "name": "rand_hc",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "rand_xoshiro",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "crates"
          },
          {
            "name": "rapidhash",
            "direct": false,
            "version": "4.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "raw-cpuid",
            "direct": false,
            "version": "11.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "rdkafka-sys",
            "direct": false,
            "version": "4.10.0+2.12.1",
            "ecosystem": "crates"
          },
          {
            "name": "redox_syscall",
            "direct": false,
            "version": "0.5.18",
            "ecosystem": "crates"
          },
          {
            "name": "redox_users",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "crates"
          },
          {
            "name": "ref-cast",
            "direct": false,
            "version": "1.0.25",
            "ecosystem": "crates"
          },
          {
            "name": "ref-cast-impl",
            "direct": false,
            "version": "1.0.25",
            "ecosystem": "crates"
          },
          {
            "name": "regex",
            "direct": false,
            "version": "1.12.3",
            "ecosystem": "crates"
          },
          {
            "name": "regex-automata",
            "direct": false,
            "version": "0.4.14",
            "ecosystem": "crates"
          },
          {
            "name": "regex-lite",
            "direct": false,
            "version": "0.1.9",
            "ecosystem": "crates"
          },
          {
            "name": "regex-syntax",
            "direct": false,
            "version": "0.8.10",
            "ecosystem": "crates"
          },
          {
            "name": "retry-policies",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "crates"
          },
          {
            "name": "rfc6979",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "ring",
            "direct": false,
            "version": "0.17.14",
            "ecosystem": "crates"
          },
          {
            "name": "roaring",
            "direct": false,
            "version": "0.11.4",
            "ecosystem": "crates"
          },
          {
            "name": "rust-embed",
            "direct": false,
            "version": "8.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "rust-embed-impl",
            "direct": false,
            "version": "8.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "rust-embed-utils",
            "direct": false,
            "version": "8.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "rustc-hash",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "rustc_version",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "rustify",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "crates"
          },
          {
            "name": "rustify_derive",
            "direct": false,
            "version": "0.5.5",
            "ecosystem": "crates"
          },
          {
            "name": "rustix",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "crates"
          },
          {
            "name": "rustls",
            "direct": false,
            "version": "0.23.40",
            "ecosystem": "crates"
          },
          {
            "name": "rustls-native-certs",
            "direct": false,
            "version": "0.7.3",
            "ecosystem": "crates"
          },
          {
            "name": "rustls-native-certs",
            "direct": false,
            "version": "0.8.4",
            "ecosystem": "crates"
          },
          {
            "name": "rustls-pemfile",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "rustls-pki-types",
            "direct": false,
            "version": "1.14.1",
            "ecosystem": "crates"
          },
          {
            "name": "rustls-platform-verifier",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "crates"
          },
          {
            "name": "rustls-platform-verifier-android",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "rustls-webpki",
            "direct": false,
            "version": "0.103.13",
            "ecosystem": "crates"
          },
          {
            "name": "rustversion",
            "direct": false,
            "version": "1.0.22",
            "ecosystem": "crates"
          },
          {
            "name": "RustyXML",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "ryu",
            "direct": false,
            "version": "1.0.23",
            "ecosystem": "crates"
          },
          {
            "name": "same-file",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "crates"
          },
          {
            "name": "sasl2-sys",
            "direct": false,
            "version": "0.1.22+2.1.28",
            "ecosystem": "crates"
          },
          {
            "name": "schannel",
            "direct": false,
            "version": "0.1.29",
            "ecosystem": "crates"
          },
          {
            "name": "schemars",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "schemars",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "scopeguard",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "sec1",
            "direct": false,
            "version": "0.7.3",
            "ecosystem": "crates"
          },
          {
            "name": "secrecy",
            "direct": false,
            "version": "0.10.3",
            "ecosystem": "crates"
          },
          {
            "name": "security-framework",
            "direct": false,
            "version": "2.11.1",
            "ecosystem": "crates"
          },
          {
            "name": "security-framework",
            "direct": false,
            "version": "3.7.0",
            "ecosystem": "crates"
          },
          {
            "name": "security-framework-sys",
            "direct": false,
            "version": "2.17.0",
            "ecosystem": "crates"
          },
          {
            "name": "seq-macro",
            "direct": false,
            "version": "0.3.6",
            "ecosystem": "crates"
          },
          {
            "name": "serde-big-array",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "crates"
          },
          {
            "name": "serde-saphyr",
            "direct": false,
            "version": "0.0.27",
            "ecosystem": "crates"
          },
          {
            "name": "serde-value",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "crates"
          },
          {
            "name": "serde_bytes",
            "direct": false,
            "version": "0.11.19",
            "ecosystem": "crates"
          },
          {
            "name": "serde_core",
            "direct": false,
            "version": "1.0.228",
            "ecosystem": "crates"
          },
          {
            "name": "serde_nanos",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "crates"
          },
          {
            "name": "serde_path_to_error",
            "direct": false,
            "version": "0.1.20",
            "ecosystem": "crates"
          },
          {
            "name": "serde_qs",
            "direct": false,
            "version": "0.8.5",
            "ecosystem": "crates"
          },
          {
            "name": "serde_repr",
            "direct": false,
            "version": "0.1.20",
            "ecosystem": "crates"
          },
          {
            "name": "serde_with",
            "direct": false,
            "version": "3.21.0",
            "ecosystem": "crates"
          },
          {
            "name": "serde_with_macros",
            "direct": false,
            "version": "3.21.0",
            "ecosystem": "crates"
          },
          {
            "name": "sha1_smol",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "sha2",
            "direct": false,
            "version": "0.10.9",
            "ecosystem": "crates"
          },
          {
            "name": "sha2",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "sharded-slab",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "crates"
          },
          {
            "name": "shared_child",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "shellexpand",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "shlex",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "shlex",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "sigchld",
            "direct": false,
            "version": "0.2.4",
            "ecosystem": "crates"
          },
          {
            "name": "signal-hook",
            "direct": false,
            "version": "0.3.18",
            "ecosystem": "crates"
          },
          {
            "name": "signal-hook-registry",
            "direct": false,
            "version": "1.4.8",
            "ecosystem": "crates"
          },
          {
            "name": "signatory",
            "direct": false,
            "version": "0.27.1",
            "ecosystem": "crates"
          },
          {
            "name": "signature",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "simd-adler32",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "crates"
          },
          {
            "name": "simd_cesu8",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "simdutf8",
            "direct": false,
            "version": "0.1.5",
            "ecosystem": "crates"
          },
          {
            "name": "similar",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "simple_asn1",
            "direct": false,
            "version": "0.6.4",
            "ecosystem": "crates"
          },
          {
            "name": "sketches-ddsketch",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "crates"
          },
          {
            "name": "slab",
            "direct": false,
            "version": "0.4.12",
            "ecosystem": "crates"
          },
          {
            "name": "smallvec",
            "direct": false,
            "version": "1.15.1",
            "ecosystem": "crates"
          },
          {
            "name": "snafu",
            "direct": false,
            "version": "0.8.9",
            "ecosystem": "crates"
          },
          {
            "name": "snafu-derive",
            "direct": false,
            "version": "0.8.9",
            "ecosystem": "crates"
          },
          {
            "name": "snap",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "socket2",
            "direct": false,
            "version": "0.6.4",
            "ecosystem": "crates"
          },
          {
            "name": "spin",
            "direct": false,
            "version": "0.10.1",
            "ecosystem": "crates"
          },
          {
            "name": "spin",
            "direct": false,
            "version": "0.9.9",
            "ecosystem": "crates"
          },
          {
            "name": "spki",
            "direct": false,
            "version": "0.7.3",
            "ecosystem": "crates"
          },
          {
            "name": "sqlx-core",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "sqlx-macros",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "sqlx-macros-core",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "sqlx-mysql",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "sqlx-postgres",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "sqlx-sqlite",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "stable_deref_trait",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "stringprep",
            "direct": false,
            "version": "0.1.5",
            "ecosystem": "crates"
          },
          {
            "name": "strsim",
            "direct": false,
            "version": "0.11.1",
            "ecosystem": "crates"
          },
          {
            "name": "subtle",
            "direct": false,
            "version": "2.6.1",
            "ecosystem": "crates"
          },
          {
            "name": "syn",
            "direct": false,
            "version": "1.0.109",
            "ecosystem": "crates"
          },
          {
            "name": "syn",
            "direct": false,
            "version": "2.0.117",
            "ecosystem": "crates"
          },
          {
            "name": "sync_wrapper",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "crates"
          },
          {
            "name": "synstructure",
            "direct": false,
            "version": "0.12.6",
            "ecosystem": "crates"
          },
          {
            "name": "synstructure",
            "direct": false,
            "version": "0.13.2",
            "ecosystem": "crates"
          },
          {
            "name": "tagptr",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "tempfile",
            "direct": false,
            "version": "3.27.0",
            "ecosystem": "crates"
          },
          {
            "name": "termtree",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "crates"
          },
          {
            "name": "thiserror-impl",
            "direct": false,
            "version": "1.0.69",
            "ecosystem": "crates"
          },
          {
            "name": "thiserror-impl",
            "direct": false,
            "version": "2.0.18",
            "ecosystem": "crates"
          },
          {
            "name": "thread_local",
            "direct": false,
            "version": "1.1.9",
            "ecosystem": "crates"
          },
          {
            "name": "thrift",
            "direct": false,
            "version": "0.17.0",
            "ecosystem": "crates"
          },
          {
            "name": "tikv-jemalloc-sys",
            "direct": false,
            "version": "0.6.1+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7",
            "ecosystem": "crates"
          },
          {
            "name": "time-core",
            "direct": false,
            "version": "0.1.8",
            "ecosystem": "crates"
          },
          {
            "name": "time-macros",
            "direct": false,
            "version": "0.2.27",
            "ecosystem": "crates"
          },
          {
            "name": "tiny-keccak",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "crates"
          },
          {
            "name": "tinystr",
            "direct": false,
            "version": "0.8.3",
            "ecosystem": "crates"
          },
          {
            "name": "tinyvec",
            "direct": false,
            "version": "1.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "tinyvec_macros",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "token-source",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "tokio-macros",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "crates"
          },
          {
            "name": "tokio-native-tls",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "crates"
          },
          {
            "name": "tokio-rustls",
            "direct": false,
            "version": "0.26.4",
            "ecosystem": "crates"
          },
          {
            "name": "tokio-stream",
            "direct": false,
            "version": "0.1.18",
            "ecosystem": "crates"
          },
          {
            "name": "tokio-websockets",
            "direct": false,
            "version": "0.10.1",
            "ecosystem": "crates"
          },
          {
            "name": "toml_datetime",
            "direct": false,
            "version": "1.1.1+spec-1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "toml_edit",
            "direct": false,
            "version": "0.25.12+spec-1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "toml_parser",
            "direct": false,
            "version": "1.1.2+spec-1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "tonic",
            "direct": false,
            "version": "0.14.6",
            "ecosystem": "crates"
          },
          {
            "name": "tonic-prost",
            "direct": false,
            "version": "0.14.6",
            "ecosystem": "crates"
          },
          {
            "name": "tower-layer",
            "direct": false,
            "version": "0.3.3",
            "ecosystem": "crates"
          },
          {
            "name": "tower-service",
            "direct": false,
            "version": "0.3.3",
            "ecosystem": "crates"
          },
          {
            "name": "tracing-attributes",
            "direct": false,
            "version": "0.1.31",
            "ecosystem": "crates"
          },
          {
            "name": "tracing-core",
            "direct": false,
            "version": "0.1.36",
            "ecosystem": "crates"
          },
          {
            "name": "tracing-log",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "tracing-serde",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "tracing-test",
            "direct": false,
            "version": "0.2.6",
            "ecosystem": "crates"
          },
          {
            "name": "tracing-test-macro",
            "direct": false,
            "version": "0.2.6",
            "ecosystem": "crates"
          },
          {
            "name": "trait-variant",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "try-lock",
            "direct": false,
            "version": "0.2.5",
            "ecosystem": "crates"
          },
          {
            "name": "twox-hash",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "typed-builder-macro",
            "direct": false,
            "version": "0.20.1",
            "ecosystem": "crates"
          },
          {
            "name": "typed-builder-macro",
            "direct": false,
            "version": "0.23.2",
            "ecosystem": "crates"
          },
          {
            "name": "typeid",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "crates"
          },
          {
            "name": "typenum",
            "direct": false,
            "version": "1.20.1",
            "ecosystem": "crates"
          },
          {
            "name": "typetag-impl",
            "direct": false,
            "version": "0.2.22",
            "ecosystem": "crates"
          },
          {
            "name": "ucd-trie",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "crates"
          },
          {
            "name": "uncased",
            "direct": false,
            "version": "0.9.10",
            "ecosystem": "crates"
          },
          {
            "name": "unicode-bidi",
            "direct": false,
            "version": "0.3.18",
            "ecosystem": "crates"
          },
          {
            "name": "unicode-ident",
            "direct": false,
            "version": "1.0.24",
            "ecosystem": "crates"
          },
          {
            "name": "unicode-normalization",
            "direct": false,
            "version": "0.1.25",
            "ecosystem": "crates"
          },
          {
            "name": "unicode-properties",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "crates"
          },
          {
            "name": "unicode-width",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "unicode-xid",
            "direct": false,
            "version": "0.2.6",
            "ecosystem": "crates"
          },
          {
            "name": "universal-hash",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "crates"
          },
          {
            "name": "unsafe-libyaml-norway",
            "direct": false,
            "version": "0.2.15",
            "ecosystem": "crates"
          },
          {
            "name": "untrusted",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "crates"
          },
          {
            "name": "untrusted",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "utf8_iter",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "crates"
          },
          {
            "name": "utf8parse",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "utoipa-gen",
            "direct": false,
            "version": "5.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "valuable-derive",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "valuable-serde",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "vcpkg",
            "direct": false,
            "version": "0.2.15",
            "ecosystem": "crates"
          },
          {
            "name": "veil-macros",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "version_check",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "crates"
          },
          {
            "name": "vsimd",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "crates"
          },
          {
            "name": "waker-fn",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "walkdir",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "want",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "crates"
          },
          {
            "name": "wasi",
            "direct": false,
            "version": "0.11.1+wasi-snapshot-preview1",
            "ecosystem": "crates"
          },
          {
            "name": "wasi",
            "direct": false,
            "version": "0.9.0+wasi-snapshot-preview1",
            "ecosystem": "crates"
          },
          {
            "name": "wasip2",
            "direct": false,
            "version": "1.0.3+wasi-0.2.9",
            "ecosystem": "crates"
          },
          {
            "name": "wasip3",
            "direct": false,
            "version": "0.4.0+wasi-0.3.0-rc-2026-01-06",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen",
            "direct": false,
            "version": "0.2.122",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-futures",
            "direct": false,
            "version": "0.4.72",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-macro",
            "direct": false,
            "version": "0.2.122",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-macro-support",
            "direct": false,
            "version": "0.2.122",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-shared",
            "direct": false,
            "version": "0.2.122",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-encoder",
            "direct": false,
            "version": "0.244.0",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-metadata",
            "direct": false,
            "version": "0.244.0",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-streams",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "wasmparser",
            "direct": false,
            "version": "0.244.0",
            "ecosystem": "crates"
          },
          {
            "name": "wasmtimer",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "crates"
          },
          {
            "name": "web-sys",
            "direct": false,
            "version": "0.3.99",
            "ecosystem": "crates"
          },
          {
            "name": "web-time",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "webpki-roots",
            "direct": false,
            "version": "0.26.11",
            "ecosystem": "crates"
          },
          {
            "name": "webpki-roots",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "crates"
          },
          {
            "name": "whoami",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "winapi",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "crates"
          },
          {
            "name": "winapi-i686-pc-windows-gnu",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "winapi-util",
            "direct": false,
            "version": "0.1.11",
            "ecosystem": "crates"
          },
          {
            "name": "winapi-x86_64-pc-windows-gnu",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "windows-core",
            "direct": false,
            "version": "0.62.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows-implement",
            "direct": false,
            "version": "0.60.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows-interface",
            "direct": false,
            "version": "0.59.3",
            "ecosystem": "crates"
          },
          {
            "name": "windows-link",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows-result",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows-strings",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows-sys",
            "direct": false,
            "version": "0.52.0",
            "ecosystem": "crates"
          },
          {
            "name": "windows-sys",
            "direct": false,
            "version": "0.60.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows-sys",
            "direct": false,
            "version": "0.61.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows-targets",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows-targets",
            "direct": false,
            "version": "0.53.5",
            "ecosystem": "crates"
          },
          {
            "name": "windows_aarch64_gnullvm",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_aarch64_gnullvm",
            "direct": false,
            "version": "0.53.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows_aarch64_msvc",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_aarch64_msvc",
            "direct": false,
            "version": "0.53.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows_i686_gnu",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_i686_gnu",
            "direct": false,
            "version": "0.53.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows_i686_gnullvm",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_i686_gnullvm",
            "direct": false,
            "version": "0.53.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows_i686_msvc",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_i686_msvc",
            "direct": false,
            "version": "0.53.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows_x86_64_gnu",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_x86_64_gnu",
            "direct": false,
            "version": "0.53.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows_x86_64_gnullvm",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_x86_64_gnullvm",
            "direct": false,
            "version": "0.53.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows_x86_64_msvc",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_x86_64_msvc",
            "direct": false,
            "version": "0.53.1",
            "ecosystem": "crates"
          },
          {
            "name": "winnow",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "crates"
          },
          {
            "name": "wit-bindgen",
            "direct": false,
            "version": "0.51.0",
            "ecosystem": "crates"
          },
          {
            "name": "wit-bindgen",
            "direct": false,
            "version": "0.57.1",
            "ecosystem": "crates"
          },
          {
            "name": "wit-bindgen-core",
            "direct": false,
            "version": "0.51.0",
            "ecosystem": "crates"
          },
          {
            "name": "wit-bindgen-rust",
            "direct": false,
            "version": "0.51.0",
            "ecosystem": "crates"
          },
          {
            "name": "wit-bindgen-rust-macro",
            "direct": false,
            "version": "0.51.0",
            "ecosystem": "crates"
          },
          {
            "name": "wit-component",
            "direct": false,
            "version": "0.244.0",
            "ecosystem": "crates"
          },
          {
            "name": "wit-parser",
            "direct": false,
            "version": "0.244.0",
            "ecosystem": "crates"
          },
          {
            "name": "writeable",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "crates"
          },
          {
            "name": "xmlparser",
            "direct": false,
            "version": "0.13.6",
            "ecosystem": "crates"
          },
          {
            "name": "yansi",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "yoke",
            "direct": false,
            "version": "0.8.3",
            "ecosystem": "crates"
          },
          {
            "name": "yoke-derive",
            "direct": false,
            "version": "0.8.2",
            "ecosystem": "crates"
          },
          {
            "name": "zerocopy",
            "direct": false,
            "version": "0.8.50",
            "ecosystem": "crates"
          },
          {
            "name": "zerocopy-derive",
            "direct": false,
            "version": "0.8.50",
            "ecosystem": "crates"
          },
          {
            "name": "zerofrom",
            "direct": false,
            "version": "0.1.8",
            "ecosystem": "crates"
          },
          {
            "name": "zerofrom-derive",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "crates"
          },
          {
            "name": "zeroize",
            "direct": false,
            "version": "1.8.2",
            "ecosystem": "crates"
          },
          {
            "name": "zeroize_derive",
            "direct": false,
            "version": "1.4.3",
            "ecosystem": "crates"
          },
          {
            "name": "zerotrie",
            "direct": false,
            "version": "0.2.4",
            "ecosystem": "crates"
          },
          {
            "name": "zerovec",
            "direct": false,
            "version": "0.11.6",
            "ecosystem": "crates"
          },
          {
            "name": "zerovec-derive",
            "direct": false,
            "version": "0.11.3",
            "ecosystem": "crates"
          },
          {
            "name": "zip",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "zlib-rs",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "crates"
          },
          {
            "name": "zmij",
            "direct": false,
            "version": "1.0.21",
            "ecosystem": "crates"
          },
          {
            "name": "zopfli",
            "direct": false,
            "version": "0.8.3",
            "ecosystem": "crates"
          },
          {
            "name": "zstd",
            "direct": false,
            "version": "0.13.3",
            "ecosystem": "crates"
          },
          {
            "name": "zstd-safe",
            "direct": false,
            "version": "7.2.4",
            "ecosystem": "crates"
          },
          {
            "name": "zstd-sys",
            "direct": false,
            "version": "2.0.16+zstd.1.5.7",
            "ecosystem": "crates"
          },
          {
            "name": "attrs",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "authlib",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "cachetools",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "confluent-kafka",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "fastavro",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "httpx",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "markdown-grid-tables",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "mkdocs",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "mkdocs-autorefs",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "mkdocs-exclude-search",
            "direct": false,
            "version": "0.6.6",
            "ecosystem": "pypi"
          },
          {
            "name": "mkdocs-material",
            "direct": false,
            "version": "9.7.6",
            "ecosystem": "pypi"
          },
          {
            "name": "mkdocs-material-extensions",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "mkdocs-monorepo-plugin",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "orjson",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pandas",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pyarrow",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pylance",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pytest",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "requests",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "urllib3",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 785,
        "direct_count": 110,
        "indirect_count": 675
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 15,
        "merged_prs": 1283,
        "open_issues": 85,
        "closed_ratio": 0.797,
        "closed_issues": 333,
        "closed_unmerged_prs": 181
      },
      "bus_factor": 1,
      "bot_contributors": 1,
      "top_contributors": [
        {
          "type": "User",
          "login": "c-thiel",
          "commits": 741,
          "avatar_url": "https://avatars.githubusercontent.com/u/12560027?v=4"
        },
        {
          "type": "User",
          "login": "twuebi",
          "commits": 163,
          "avatar_url": "https://avatars.githubusercontent.com/u/23434860?v=4"
        },
        {
          "type": "User",
          "login": "mooori",
          "commits": 26,
          "avatar_url": "https://avatars.githubusercontent.com/u/32731489?v=4"
        },
        {
          "type": "User",
          "login": "v-kessler",
          "commits": 26,
          "avatar_url": "https://avatars.githubusercontent.com/u/19665800?v=4"
        },
        {
          "type": "User",
          "login": "brgr-s",
          "commits": 19,
          "avatar_url": "https://avatars.githubusercontent.com/u/5279144?v=4"
        },
        {
          "type": "User",
          "login": "Midor",
          "commits": 10,
          "avatar_url": "https://avatars.githubusercontent.com/u/1916120?v=4"
        },
        {
          "type": "User",
          "login": "romusz",
          "commits": 4,
          "avatar_url": "https://avatars.githubusercontent.com/u/854559?v=4"
        },
        {
          "type": "User",
          "login": "chrislusf",
          "commits": 3,
          "avatar_url": "https://avatars.githubusercontent.com/u/1543151?v=4"
        },
        {
          "type": "User",
          "login": "rwwwx",
          "commits": 3,
          "avatar_url": "https://avatars.githubusercontent.com/u/87382371?v=4"
        },
        {
          "type": "User",
          "login": "davidblewett",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/141716?v=4"
        }
      ],
      "contributors_sampled": 49,
      "top_contributor_share": 0.708
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "authz.yml",
        "docker_build.yml",
        "docs_linkcheck.yml",
        "integration_test_formats.yml",
        "integration_test_matrix.yml",
        "integration_test_workflow.yml",
        "kube-auth.yml",
        "lint-pr.yml",
        "migrations.yml",
        "release.yml",
        "seaweedfs.yml",
        "security_audit.yml",
        "site.yml",
        "test-examples.yml",
        "unittests.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [
        "tox.ini"
      ],
      "has_editorconfig": false,
      "has_linter_config": true,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "Cargo.lock"
      ],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 10,
            "reason": "no binaries found in the repo",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": 8,
            "reason": "branch protection is not maximal on development and all release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 10,
            "reason": "22 out of 22 merged PRs checked by a CI test -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
          },
          {
            "name": "CII-Best-Practices",
            "score": 0,
            "reason": "no effort to earn an OpenSSF best practices badge detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
          },
          {
            "name": "Code-Review",
            "score": 6,
            "reason": "Found 20/30 approved changesets -- score normalized to 6",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 10,
            "reason": "project has 6 contributing companies or organizations",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 10,
            "reason": "update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 10,
            "reason": "30 commit(s) and 10 issue activity found in the last 90 days -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": 10,
            "reason": "packaging workflow detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 7,
            "reason": "dependency not pinned by hash detected -- score normalized to 7",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 9,
            "reason": "SAST tool is not run on all commits -- score normalized to 9",
            "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": 0,
            "reason": "Project has not signed or included provenance with any releases.",
            "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": 2,
            "reason": "8 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "4cc77d3bf2a61d6693a22181baa6a92ee7ff0ab5",
        "ran_at": "2026-07-27T18:02:31Z",
        "aggregate_score": 6.2,
        "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-27T07:45:43Z",
      "oldest_open_prs": [
        {
          "number": 1039,
          "created_at": "2025-04-22T12:42:38Z",
          "last_comment_at": "2026-06-01T17:22:36Z",
          "last_comment_author": "c-thiel"
        },
        {
          "number": 1195,
          "created_at": "2025-06-22T03:58:11Z",
          "last_comment_at": "2026-04-01T08:44:04Z",
          "last_comment_author": "brgr-s"
        },
        {
          "number": 1206,
          "created_at": "2025-06-24T10:42:41Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1266,
          "created_at": "2025-07-30T22:50:07Z",
          "last_comment_at": "2025-08-23T16:39:25Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 1537,
          "created_at": "2025-12-09T17:48:49Z",
          "last_comment_at": "2025-12-09T18:12:22Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 1676,
          "created_at": "2026-03-24T10:38:29Z",
          "last_comment_at": "2026-03-24T12:24:48Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 1806,
          "created_at": "2026-06-02T07:59:44Z",
          "last_comment_at": "2026-07-24T21:04:31Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 1807,
          "created_at": "2026-06-02T08:05:12Z",
          "last_comment_at": "2026-07-25T15:43:43Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 1831,
          "created_at": "2026-06-08T14:54:02Z",
          "last_comment_at": "2026-06-10T09:13:02Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 1839,
          "created_at": "2026-06-11T01:37:55Z",
          "last_comment_at": "2026-07-26T09:54:03Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 1858,
          "created_at": "2026-06-17T23:05:15Z",
          "last_comment_at": "2026-07-18T19:16:26Z",
          "last_comment_author": "dadavidtseng"
        },
        {
          "number": 1882,
          "created_at": "2026-07-01T16:29:00Z",
          "last_comment_at": "2026-07-27T07:31:01Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 1889,
          "created_at": "2026-07-04T04:52:30Z",
          "last_comment_at": "2026-07-20T16:03:29Z",
          "last_comment_author": "c-thiel"
        },
        {
          "number": 1910,
          "created_at": "2026-07-24T13:54:52Z",
          "last_comment_at": "2026-07-24T14:10:39Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 1914,
          "created_at": "2026-07-26T20:52:11Z",
          "last_comment_at": "2026-07-27T10:30:30Z",
          "last_comment_author": "github-actions"
        }
      ],
      "last_merged_pr_at": "2026-07-27T07:24:19Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": [
        {
          "number": 9,
          "created_at": "2024-05-14T16:05:12Z",
          "last_comment_at": "2025-05-17T11:55:43Z",
          "last_comment_author": "HerrMuellerluedenscheid"
        },
        {
          "number": 45,
          "created_at": "2024-05-29T18:06:49Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 63,
          "created_at": "2024-06-07T08:06:44Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 104,
          "created_at": "2024-06-15T20:59:36Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 152,
          "created_at": "2024-07-04T10:18:52Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 159,
          "created_at": "2024-07-12T11:51:51Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 213,
          "created_at": "2024-07-26T18:59:22Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 218,
          "created_at": "2024-07-27T10:36:49Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 228,
          "created_at": "2024-08-01T20:43:22Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 238,
          "created_at": "2024-08-06T11:49:51Z",
          "last_comment_at": "2024-08-30T09:20:24Z",
          "last_comment_author": "c-thiel"
        },
        {
          "number": 239,
          "created_at": "2024-08-06T19:46:39Z",
          "last_comment_at": "2026-06-03T23:44:30Z",
          "last_comment_author": "christianLencsak7"
        },
        {
          "number": 258,
          "created_at": "2024-08-12T16:43:12Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 263,
          "created_at": "2024-08-13T08:07:59Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 266,
          "created_at": "2024-08-13T09:46:08Z",
          "last_comment_at": "2025-01-27T14:33:03Z",
          "last_comment_author": "c-thiel"
        },
        {
          "number": 306,
          "created_at": "2024-08-28T13:19:55Z",
          "last_comment_at": "2025-08-08T20:49:25Z",
          "last_comment_author": "ndrluis"
        },
        {
          "number": 308,
          "created_at": "2024-08-28T13:48:42Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 312,
          "created_at": "2024-08-29T15:21:52Z",
          "last_comment_at": "2024-09-04T19:27:10Z",
          "last_comment_author": "derekperkins"
        },
        {
          "number": 323,
          "created_at": "2024-09-05T11:41:35Z",
          "last_comment_at": "2024-10-29T17:22:51Z",
          "last_comment_author": "c-thiel"
        },
        {
          "number": 349,
          "created_at": "2024-09-18T07:24:12Z",
          "last_comment_at": "2025-08-02T17:22:03Z",
          "last_comment_author": "mooori"
        },
        {
          "number": 350,
          "created_at": "2024-09-18T07:24:39Z",
          "last_comment_at": "2024-11-24T15:17:34Z",
          "last_comment_author": "twuebi"
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/lakekeeper/lakekeeper",
    "host": "github.com",
    "name": "lakekeeper",
    "owner": "lakekeeper"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "good",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 74,
      "inputs": {
        "security": 64,
        "vitality": 95,
        "community": 70,
        "governance": 56,
        "engineering": 86
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "excellent",
        "name": "Vitality",
        "value": 95,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "excellent",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 99,
            "inputs": {
              "commits_last_year": 538,
              "human_commit_share": 0.95,
              "days_since_last_push": 0,
              "active_weeks_last_year": 51
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 0 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "51/52 weeks with commits",
                "points": 35.3,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 51
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "538 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 538
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 10 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "excellent",
            "name": "Release discipline",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "releases_count": 51,
              "latest_release_tag": "v0.13.1",
              "releases_from_tags": false,
              "days_since_latest_release": 26,
              "mean_days_between_releases": 10.2
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "51 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 51
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 26 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 26
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~10.2 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 10.2
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "Project has not signed or included provenance with any releases.",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "excellent",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "maintained",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": null,
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": 0,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "last human commit 0 days ago",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_maintained",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "good",
        "name": "Community & Adoption",
        "value": 70,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "good",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 74,
            "inputs": {
              "forks": 151,
              "stars": 1399,
              "watchers": 10,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "1,399 stars",
                "points": 51,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 1399
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "151 forks",
                "points": 18.1,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 151
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "10 watchers",
                "points": 5.3,
                "status": "partial",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 10
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "moderate",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 65,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": false,
              "has_issue_template": false,
              "has_code_of_conduct": true,
              "has_pull_request_template": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "recognized license (Apache-2.0)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "Apache-2.0"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 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": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.3
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "moderate",
        "name": "Sustainability & Governance",
        "value": 56,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "at_risk",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 39,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 49,
              "top_contributor_share": 0.708
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "1 contributor(s) cover half of all commits",
                "points": 9,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 71% of commits",
                "points": 6.6,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 71
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "49 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 49
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 6 contributing companies or organizations",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "good",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 80,
            "inputs": {
              "merged_prs": 1283,
              "open_issues": 85,
              "closed_issues": 333,
              "issue_closed_ratio": 0.797,
              "closed_unmerged_prs": 181
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "80% of issues closed",
                "points": 37.3,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 80
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "1283/1464 decided PRs merged",
                "points": 33.5,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 1283,
                      "decided": 1464
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 20/30 approved changesets -- score normalized to 6",
                "points": 9,
                "status": "partial",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "moderate",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 53,
            "inputs": {
              "followers": 34,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "lakekeeper",
              "public_repos": 14,
              "account_age_days": 664
            },
            "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": "34 followers of lakekeeper",
                "points": 11.1,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 34,
                      "login": "lakekeeper"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "14 public repos, account ~1 yr old",
                "points": 12.2,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 14
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 1
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "excellent",
        "name": "Engineering Quality",
        "value": 86,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "good",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 84,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": true,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "15 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 15
                    }
                  }
                ],
                "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": "tox.ini",
                "points": 16,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "tox.ini"
                    }
                  }
                ],
                "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": "22 out of 22 merged PRs checked by a CI test -- score normalized to 10",
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "excellent",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "topics": [
                "catalog",
                "data-lake",
                "iceberg",
                "lakehouse",
                "rust",
                "lakehouse-governance",
                "open-lakehouse"
              ],
              "has_wiki": false,
              "homepage": "https://docs.lakekeeper.io",
              "has_readme": true,
              "has_docs_dir": true,
              "has_description": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 30,
                "status": "met",
                "details": [],
                "max_points": 30
              },
              {
                "key": "documentation_directory",
                "name": "Documentation directory",
                "detail": null,
                "points": 25,
                "status": "met",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": "https://docs.lakekeeper.io",
                "points": 15,
                "status": "met",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": "7 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 7
                    }
                  }
                ],
                "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": 64,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "moderate",
            "name": "Security posture",
            "note": null,
            "notes": [],
            "value": 62,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 18,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 0,
              "scorecard_aggregate": 6.2
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "branch protection is not maximal on development and all release branches",
                "points": 6,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "22 out of 22 merged PRs checked by a CI test -- score normalized to 10",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "cii_best_practices",
                "name": "CII-Best-Practices",
                "detail": "no effort to earn an OpenSSF best practices badge detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "code_review",
                "name": "Code-Review",
                "detail": "Found 20/30 approved changesets -- score normalized to 6",
                "points": 4.5,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 6 contributing companies or organizations",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "update tool detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "30 commit(s) and 10 issue activity found in the last 90 days -- score normalized to 10",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 7",
                "points": 3.5,
                "status": "partial",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is not run on all commits -- score normalized to 9",
                "points": 4.5,
                "status": "partial",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file not detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "Project has not signed or included provenance with any releases.",
                "points": 0,
                "status": "missed",
                "details": [],
                "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": "8 existing vulnerabilities detected",
                "points": 1.5,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "good",
            "name": "Dependency advisories",
            "note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories. Remaining weights renormalized. Matched 763 resolved dependencies against OSV; 22 could not be assessed (no resolved version, an unsupported ecosystem, or beyond the reported package list). This repository publishes no package the index resolves, so the repository dependency graph was assessed instead. That graph mixes development and test pins with shipped dependencies, so only the declared runtime dependencies are scored; transitive findings are reported as context and excluded from the score. Reachability is not analyzed.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "indirect_dependencies_free_of_known_advisories"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "advisories_scope_repository",
                "params": {
                  "assessed": 763
                }
              },
              {
                "code": "advisories_unassessed",
                "params": {
                  "count": 22
                }
              },
              {
                "code": "advisories_repo_graph_caveat",
                "params": {}
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 72,
            "inputs": {
              "source": "osv",
              "advisories": 9,
              "affected_packages": 7,
              "assessed_packages": 763,
              "unassessed_packages": 22,
              "affected_by_severity": "high 1, moderate 1, low 1, unknown 4",
              "direct_affected_packages": 1
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "1 affected: quick-xml 0.40.1 (high 7.5)",
                "points": 14,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_affected",
                    "params": {
                      "count": 1,
                      "packages": "quick-xml 0.40.1 (high 7.5)"
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "indirect_dependencies_free_of_known_advisories",
                "name": "Indirect dependencies free of known advisories",
                "detail": "transitive set not separable from development and test dependencies in this scope",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_scope_not_separable",
                    "params": {}
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "no advisory has been public longer than 90 days",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "advisories_none_stale",
                    "params": {
                      "days": 90
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "malicious_dependencies",
            "band": "excellent",
            "name": "Malicious dependencies",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "source": "osv",
              "meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
              "packages": [],
              "red_flag": false,
              "assessed_packages": 763,
              "malicious_packages": 0,
              "direct_malicious_packages": 0,
              "withdrawn_malicious_packages": 0,
              "installable_malicious_packages": 0
            },
            "components": [
              {
                "key": "no_dependency_reported_as_a_malicious_package",
                "name": "No dependency reported as a malicious package",
                "detail": "no dependency is reported as a malicious package",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "no_malicious_dependencies",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "excellent",
            "name": "High-Risk Jurisdiction Exposure",
            "note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
            "notes": [
              {
                "code": "jurisdiction_evidence_limits",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": false,
              "exposures": [],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 7
            },
            "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": 81,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "excellent",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 85,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 1,
              "agent_instruction_files": [
                "AGENTS.md",
                "CLAUDE.md"
              ],
              "agent_instruction_max_bytes": 3751
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "AGENTS.md, CLAUDE.md",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "AGENTS.md, CLAUDE.md"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "95 of 95 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 95,
                      "sampled": 95
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "excellent",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 87,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "Cargo.lock"
              ],
              "has_dockerfile": true,
              "typed_language": true,
              "bootstrap_files": [
                "examples/kafka-connect-iceberg-sink/Makefile",
                "justfile",
                "site/justfile",
                "tests/migrations/justfile"
              ],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [],
              "agent_commit_share": 0,
              "toolchain_manifests": [
                "Cargo.toml",
                "crates/authz-openfga/Cargo.toml",
                "crates/iceberg-ext/Cargo.toml",
                "crates/io/Cargo.toml",
                "crates/lakekeeper-bin/Cargo.toml",
                "crates/lakekeeper-events-kafka/Cargo.toml",
                "crates/lakekeeper-events-nats/Cargo.toml",
                "crates/lakekeeper-integration-tests/Cargo.toml",
                "crates/lakekeeper-secrets-kv2/Cargo.toml",
                "crates/lakekeeper-storage-postgres/Cargo.toml",
                "crates/lakekeeper/Cargo.toml"
              ],
              "dependency_bot_commit_share": 0.05
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "examples/kafka-connect-iceberg-sink/Makefile, justfile, site/justfile, tests/migrations/justfile",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "examples/kafka-connect-iceberg-sink/Makefile, justfile, site/justfile, tests/migrations/justfile"
                    }
                  }
                ],
                "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": "tox.ini",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "tox.ini"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "Rust (statically typed)",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "Rust"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "Dockerfile, lockfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "Dockerfile, lockfile"
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "no agent-authored commits among the last 100",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_authored_commits",
                    "params": {
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "5 of the last 100 commits are automated dependency updates",
                "points": 8,
                "status": "met",
                "details": [
                  {
                    "code": "dependency_bot_commits",
                    "params": {
                      "count": 5,
                      "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 7",
                "points": 7,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "excellent",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 95,
            "inputs": {
              "primary_language": "Rust",
              "largest_source_bytes": 220387,
              "source_files_sampled": 332,
              "oversized_source_files": 28
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "Rust (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "Rust"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "28/332 source files over 60KB",
                "points": 50.4,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 332,
                      "oversized": 28
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "at_risk",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "example_dirs": [
                "examples",
                "notebooks"
              ],
              "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, notebooks",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "examples, notebooks"
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [
    "Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token",
    "Could not fetch crates package 'lakekeeper-io' from its registry",
    "Could not fetch crates package 'lakekeeper' from its registry",
    "Could not fetch crates package 'iceberg-ext' from its registry",
    "Could not fetch crates package 'lakekeeper-authz-openfga' from its registry",
    "Could not fetch crates package 'lakekeeper-bin' from its registry",
    "Could not fetch crates package 'lakekeeper-events-nats' from its registry",
    "Could not fetch crates package 'lakekeeper-secrets-kv2' from its registry",
    "Could not fetch crates package 'lakekeeper-events-kafka' from its registry"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-27T18:03:01.324338Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/l/lakekeeper/lakekeeper.svg",
  "full_name": "lakekeeper/lakekeeper",
  "license_state": "standard",
  "license_spdx": "Apache-2.0"
}

Las puntuaciones son señales, no garantías. Reflejan prácticas públicamente visibles en GitHub; no son una auditoría de código ni una garantía de seguridad.

Los datos ausentes se excluyen y los pesos se renormalizan; nunca se puntúan como cero. La metodología es versionada y abierta: métricas v1.13.0, esquema v0.27.0 — metodología completa · wiki de métricas.

Cómo se sitúa un resultado dentro del registro general: estadísticas agregadas.