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

godaddy / asherah-ffi

Application-layer envelope encryption with automatic key rotation. Rust core with bindings for Node.js, Python, .NET, Java, Ruby, and Go.

RustApache-2.0★ 0 estrellas⑂ 1 forkdesde sept 2025Ver en GitHub ↗

godaddy/asherah-ffi tiene un índice de salud de 70 sobre 100, lo que lo sitúa en la banda Bueno. Su puntuación más alta es Engineering Quality (96/100) y la más baja, Community & Adoption (40/100). Se actualizó por última vez hace 6 días. Una sola persona concentra la mayor parte del trabajo reciente.

70
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.

70
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

GoDaddyOrganización
228 seguidores215 repositorios públicosdesde feb 2012

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

Ecosistemas de paquetes

RegistroPaqueteVersiónDescargas / mesVersionesÚltima publicaciónEtiquetas
Packagistgodaddy/asherahv1.0.01019hace 37 díasencryptionkmsffienvelope-encryptionasherah
Gogithub.com/godaddy/asherah-ffi/asherah-gov1.0.0-14hace 37 días
crates.ioasherah1.0.07494hace 37 díasasherahencryptionkmssecretssecuritycryptographyconfigmemory-management
crates.ioasherah-ffi1.0.0163hace 37 díasasherahencryptionffikmsapi-bindingscryptographymemory-management

Métricas por categoría

Vitalidad

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

85Excelente · 22% del índice global
Cómo se puntúa
36/36Recencia de push — último push hace 6 días
17.3/36Cadencia de commits — 25/52 semanas con commits
18/18Volumen de commits — 667 commits en el último año
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
Datos de entrada utilizados
commits_last_year667
human_commit_share0,84
days_since_last_push6
active_weeks_last_year25
Cómo se puntúa
27/27Publica versiones — 100 versiones publicadas
36/36Recencia de las versiones — última versión hace 37 días
27/27Cadencia de publicación — una versión cada ~3,2 días
0/10OpenSSF Scorecard: Signed-Releases — Project has not signed or included provenance with any releases.
Datos de entrada utilizados
releases_count100
latest_release_tagv1.0.0
releases_from_tagsno
days_since_latest_release37
mean_days_between_releases3,2

Comunidad y Adopción

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

40En riesgo · 18% del índice global
Cómo se puntúa
0/60Estrellas — 0 estrellas
0/25Forks — 1 forks
0/15Observadores — 0 observadores
Datos de entrada utilizados
forks1
stars0
watchers0
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)
18/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_contributing
has_issue_templateno
has_code_of_conduct
has_pull_request_templateno
Cómo se puntúa
38.5/80Descargas mensuales — 775 descargas/mes en crates, go, packagist
0/20Dependientes en el registro — 0 paquetes dependen de él
Datos de entrada utilizados
packagesgodaddy/asherah, github.com/godaddy/asherah-ffi/asherah-go, asherah, asherah-ffi
dependents0
ecosystemscrates, go, packagist
total_downloads2361
monthly_downloads775

Sostenibilidad y Gobernanza

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

63Moderado · 24% del índice global
Cómo se puntúa
9/54Factor bus — la mitad de los commits recae en 1 contribuyente(s)
4.3/22.5Distribución de commits — el principal contribuyente firma el 81% de los commits
6.8/13.5Amplitud de contribuyentes — 5 contribuyentes
3/10OpenSSF Scorecard: Contributors — project has 1 contributing companies or organizations -- score normalized to 3
Datos de entrada utilizados
bus_factor1
contributors_sampled5
top_contributor_share0,808
Cómo se puntúa
37.4/46.8Resolución de issues — 80% de issues cerradas
34/38.3Aceptación de PR — 310/349 PR decididos fusionados
3/15OpenSSF Scorecard: Code-Review — Found 6/22 approved changesets -- score normalized to 2
Datos de entrada utilizados
merged_prs310
open_issues1
closed_issues4
issue_closed_ratio0,8
closed_unmerged_prs39
Cómo se puntúa
30/30Respaldo de la propiedad — propiedad de una organización
0/20Dominio verificado
17/25Alcance del propietario — 228 seguidores de godaddy
25/25Trayectoria — 215 repos públicos, cuenta de ~14 años
Datos de entrada utilizados
followers228
owner_typeOrganization
is_verified
owner_logingodaddy
public_repos215
account_age_days5287
Cómo se puntúa
25/25Publicado y resoluble — 4 paquete(s) en crates, go, packagist
35/35Recencia de publicación — última publicación hace 37 días
20/20Historial de versiones — 19 versiones en el registro
20/20No obsoleto — activo, ni obsoleto ni retirado
Datos de entrada utilizados
packagesgodaddy/asherah, github.com/godaddy/asherah-ffi/asherah-go, asherah, asherah-ffi
ecosystemscrates, go, packagist
any_deprecatedno
min_days_since_publish37

Calidad de Ingeniería

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

96Excelente · 20% del índice global
Cómo se puntúa
24/24Flujos de trabajo de CI — 19 flujo(s) de trabajo
24/24Pruebas presentes
16/16Configuración de linter — .php-cs-fixer.php, .rubocop.yml, phpstan.neon
9.6/9.6Hooks de pre-commit
6.4/6.4.editorconfig
20/20OpenSSF Scorecard: CI-Tests — 28 out of 28 merged PRs checked by a CI test -- score normalized to 10
Datos de entrada utilizados
has_ci
has_tests
has_editorconfig
has_linter_config
has_precommit_config

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://github.com/godaddy/asherah-ffi
10/10Descripción del repositorio
10/10Topics — 13 topics
0/10Wiki
Datos de entrada utilizados
topicscryptography, dotnet, encryption, envelope-encryption, ffi, go, java, key-rotation, nodejs, python, ruby, rust, security
has_wikino
homepagehttps://github.com/godaddy/asherah-ffi
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?

62Moderado · 16% del índice global
Cómo se puntúa
7.5/7.5Binary-Artifacts — no binaries found in the repo
2.2/7.5Branch-Protection — branch protection is not maximal on development and all release branches
2.5/2.5CI-Tests — 28 out of 28 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
1.5/7.5Code-Review — Found 6/22 approved changesets -- score normalized to 2
0.8/2.5Contributors — project has 1 contributing companies or organizations -- score normalized to 3
0/10Dangerous-Workflow — sin datos
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 3 issue activity found in the last 90 days -- score normalized to 10
0/5Packaging — sin datos
0/5Pinned-Dependencies — sin datos
5/5SAST — SAST tool is run on all commits
2/5Security-Policy — security policy file detected
0/7.5Signed-Releases — Project has not signed or included provenance with any releases.
0/7.5Token-Permissions — sin datos
7.5/7.5Vulnerabilities — 0 existing vulnerabilities detected
Datos de entrada utilizados
sourceopenssf_scorecard
checks_evaluated14
scorecard_versionv5.5.0
checks_inconclusive4
scorecard_aggregate6
Excluidos de la puntuación (sin datos o no aplicable): dangerous_workflow, packaging, pinned_dependencies, token_permissions. Los pesos restantes se han renormalizado.
Cómo se puntúa
11.4/35Dependencias directas libres de avisos conocidos — 4 afectados: openssl 0.10.78 (high 7.5), anyhow 1.0.102 (unknown), scc 2.4.0 (unknown), +1 más
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
advisories90
affected_packages23
assessed_packages708
unassessed_packages76
affected_by_severitycritical 3, high 4, moderate 5, unknown 11
direct_affected_packages4
Excluidos de la puntuación (sin datos o no aplicable): Dependencias indirectas libres de avisos conocidos. Los pesos restantes se han renormalizado. Se cotejaron 708 dependencias resueltas con OSV. 76 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.

90Excelente · 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 — 81 de 84 commits humanos declaran su intención (asunto estructurado o cuerpo explicativo)
Datos de entrada utilizados
has_llms_txtno
legible_history_share0,964
agent_instruction_filesAGENTS.md, CLAUDE.md
agent_instruction_max_bytes10.921
Cómo se puntúa
12.6/18Arranque con un solo comando — Cargo.toml, asherah-cobhan/Cargo.toml, asherah-cobhan/interop/go.mod (convención del toolchain, sin ejecutor de tareas)
22/22Pruebas automatizadas
11/11Configuración de lint / formato — .php-cs-fixer.php, .rubocop.yml, phpstan.neon
11/11Verificación estática de tipos — asherah-py/asherah/py.typed
10/10Entorno reproducible — Dockerfile, lockfile
10/10Práctica demostrada con agentes — 8 de los últimos 100 commits con autoría o crédito de agente
8/8Mantenimiento automatizado — 16 de los últimos 100 commits son actualizaciones automáticas de dependencias
0/10OpenSSF Scorecard: Pinned-Dependencies — sin datos
Datos de entrada utilizados
has_nixno
has_tests
lockfilesCargo.lock, go.sum, package-lock.json, packages.lock.json
has_dockerfile
typed_language
bootstrap_files
has_devcontainerno
has_linter_config
typecheck_configsasherah-py/asherah/py.typed
agent_commit_share0,08
toolchain_manifestsCargo.toml, asherah-cobhan/Cargo.toml, asherah-cobhan/interop/go.mod, asherah-config/Cargo.toml, asherah-dotnet/src/GoDaddy.Asherah.Encryption.Compat/GoDaddy.Asherah.Encryption.Compat.csproj, asherah-dotnet/src/GoDaddy.Asherah.Encryption/GoDaddy.Asherah.Encryption.csproj, asherah-dotnet/tests/GoDaddy.Asherah.Encryption.Compat.Tests/GoDaddy.Asherah.Encryption.Compat.Tests.csproj, asherah-dotnet/tests/GoDaddy.Asherah.Encryption.Tests/GoDaddy.Asherah.Encryption.Tests.csproj, asherah-ffi/Cargo.toml, asherah-go/go.mod, asherah-java/Cargo.toml, asherah-java/java/pom.xml, asherah-node/Cargo.toml, asherah-py/Cargo.toml, asherah-server/Cargo.toml, asherah/Cargo.toml, benchmarks/asherah-bench/Cargo.toml, benchmarks/dotnet-bench-canonical/dotnet-bench-canonical.csproj, benchmarks/dotnet-bench-newmetastore/dotnet-bench-newmetastore.csproj, benchmarks/dotnet-bench/dotnet-bench.csproj, benchmarks/go-bench/go.mod, benchmarks/go-wrapper/go.mod, benchmarks/grpc-bench/go.mod, benchmarks/java-bench-canonical/pom.xml, benchmarks/java-bench/pom.xml, benchmarks/native-bench/go-bench/go.mod, benchmarks/native-bench/rust-bench/Cargo.toml, fuzz/Cargo.toml, interop-grpc/client/Cargo.toml, interop/canonical-csharp/CanonicalCsharpProbe.csproj, interop/canonical-go/go.mod, interop/canonical-java/pom.xml, samples/dotnet/Sample.csproj, samples/go/go.mod, samples/rust/Cargo.toml
dependency_bot_commit_share0,16
Excluidos de la puntuación (sin datos o no aplicable): OpenSSF Scorecard: Pinned-Dependencies. Los pesos restantes se han renormalizado.
Cómo se puntúa
45/45Código verificable por tipos — Rust (tipado estático)
54.4/55Tamaños de archivo manejables — 4/352 archivos fuente de más de 60 KB
Datos de entrada utilizados
primary_languageRust
largest_source_bytes198.446
source_files_sampled352
oversized_source_files4
Cómo se puntúa
40/40Esquema de API (OpenAPI/GraphQL/proto) — asherah-server/proto/appencryption.proto, interop-grpc/client/proto/appencryption.proto
0/20Servidor MCP
40/40Ejemplos ejecutables — examples, samples
Datos de entrada utilizados
example_dirsexamples, samples
has_mcp_signalno
api_schema_filesasherah-server/proto/appencryption.proto, interop-grpc/client/proto/appencryption.proto

Datos clave

0estrellas de GitHub
5contribuidores
667commits en los últimos 12 meses
6días desde el último push
100versiones publicadas
1factor bus
1issues abiertas
crates.io, Go, npm, Packagist, PyPI, RubyGemsecosistemas de paquetes

Advertencias de recopilación de datos

  • Could not fetch crates package 'asherah-workspace' from its registry
  • Could not fetch crates package 'asherah-py' from its registry
  • Could not fetch crates package 'asherah-java' from its registry
  • Could not fetch crates package 'asherah-node' from its registry

Más detalle

OpenSSF Scorecard 6.0 / 10
6.0agregado

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 11:25 UTC

10Binary-Artifactsno binaries found in the repo
3Branch-Protectionbranch protection is not maximal on development and all release branches
10CI-Tests28 out of 28 merged PRs checked by a CI test -- score normalized to 10
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
2Code-ReviewFound 6/22 approved changesets -- score normalized to 2
3Contributorsproject has 1 contributing companies or organizations -- score normalized to 3
n/dDangerous-Workflowno workflows found
10Dependency-Update-Toolupdate tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
10Maintained30 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
n/dPackagingpackaging workflow not detected
n/dPinned-Dependenciesno dependencies found
10SASTSAST tool is run on all commits
4Security-Policysecurity policy file detected
0Signed-ReleasesProject has not signed or included provenance with any releases.
n/dToken-PermissionsNo tokens found
10Vulnerabilities0 existing vulnerabilities detected
Dependencias directas 105
RegistroPaqueteRestricción de versiónManifiesto
crates.ioasherah1.0.0asherah-cobhan/Cargo.toml
crates.ioasherah-config1.0.0asherah-cobhan/Cargo.toml
crates.iolog0.4asherah-cobhan/Cargo.toml
crates.ioserde_json1.0asherah-cobhan/Cargo.toml
crates.ioserde1.0asherah-cobhan/Cargo.toml
crates.iozeroize1.8asherah-cobhan/Cargo.toml
crates.ioanyhow1.0asherah-config/Cargo.toml
crates.ioserde1.0asherah-config/Cargo.toml
crates.ioserde_json1.0asherah-config/Cargo.toml
crates.ioasherah1.0.0asherah-config/Cargo.toml
crates.ioasherah1.0.0asherah-ffi/Cargo.toml
crates.ioasherah-cobhan1.0.0asherah-ffi/Cargo.toml
crates.ioasherah-config1.0.0asherah-ffi/Cargo.toml
crates.ioserde_json1.0asherah-ffi/Cargo.toml
crates.ioanyhow1.0asherah-ffi/Cargo.toml
crates.iotokio1asherah-ffi/Cargo.toml
crates.ioonce_cell1asherah-ffi/Cargo.toml
crates.ioparking_lot0.12asherah-ffi/Cargo.toml
crates.iolog0.4asherah-ffi/Cargo.toml
crates.iozeroize1.8asherah-ffi/Cargo.toml
Gogithub.com/ebitengine/puregov0.10.1asherah-go/go.mod
crates.iojni0.22asherah-java/Cargo.toml
crates.ioasherah1.0.0asherah-java/Cargo.toml
crates.ioasherah-config1.0.0asherah-java/Cargo.toml
crates.ioanyhow1.0asherah-java/Cargo.toml
crates.ioserde_json1.0asherah-java/Cargo.toml
crates.iotokio1asherah-java/Cargo.toml
crates.ioonce_cell1asherah-java/Cargo.toml
crates.iolog0.4asherah-java/Cargo.toml
crates.ioparking_lot0.12asherah-java/Cargo.toml
crates.iozeroize1.8asherah-java/Cargo.toml
crates.ionapi3asherah-node/Cargo.toml
crates.ionapi-derive3asherah-node/Cargo.toml
crates.ioserde1.0asherah-node/Cargo.toml
crates.ioserde_json1.0asherah-node/Cargo.toml
crates.ioanyhow1.0asherah-node/Cargo.toml
crates.ioasherah1.0.0asherah-node/Cargo.toml
crates.ioasherah-config1.0.0asherah-node/Cargo.toml
crates.iotokio1asherah-node/Cargo.toml
crates.ioonce_cell1asherah-node/Cargo.toml
crates.ioparking_lot0.12asherah-node/Cargo.toml
crates.iolru0.16asherah-node/Cargo.toml
crates.iolog0.4asherah-node/Cargo.toml
crates.iopyo30.29asherah-py/Cargo.toml
crates.ioasherah1.0.0asherah-py/Cargo.toml
crates.iotokio1asherah-py/Cargo.toml
crates.ioasherah-config1.0.0asherah-py/Cargo.toml
crates.ioserde_json1.0asherah-py/Cargo.toml
crates.ioanyhow1.0asherah-py/Cargo.toml
crates.ioonce_cell1.21asherah-py/Cargo.toml
crates.ioparking_lot0.12asherah-py/Cargo.toml
crates.iolru0.16asherah-py/Cargo.toml
crates.iolog0.4asherah-py/Cargo.toml
crates.iozeroize1asherah-py/Cargo.toml
crates.ioasherahasherah-server/Cargo.toml
crates.ioasherah-configasherah-server/Cargo.toml
crates.iotonic0.14asherah-server/Cargo.toml
crates.iotonic-prost0.14asherah-server/Cargo.toml
crates.ioprost0.14asherah-server/Cargo.toml
crates.iotokio1asherah-server/Cargo.toml
crates.iotokio-stream0.1asherah-server/Cargo.toml
crates.ioclap4asherah-server/Cargo.toml
crates.ioserde_json1asherah-server/Cargo.toml
crates.ioanyhow1asherah-server/Cargo.toml
crates.iolog0.4asherah-server/Cargo.toml
crates.ioenv_logger0.11asherah-server/Cargo.toml
crates.iorustix1.1asherah-server/Cargo.toml
crates.ioserde1.0asherah/Cargo.toml
crates.ioserde_json1.0asherah/Cargo.toml
crates.ioonce_cell1.21asherah/Cargo.toml
crates.ioparking_lot0.12asherah/Cargo.toml
crates.iorand0.9asherah/Cargo.toml
crates.iorand_chacha0.9asherah/Cargo.toml
crates.ioitoa1asherah/Cargo.toml
crates.ioanyhow1.0asherah/Cargo.toml
crates.ioasync-trait0.1asherah/Cargo.toml
crates.iolog0.4asherah/Cargo.toml
crates.ioserde_bytes0.11asherah/Cargo.toml
crates.ioblake20.10asherah/Cargo.toml
crates.iobase640.22asherah/Cargo.toml
crates.iosubtle2.5asherah/Cargo.toml
crates.iosignal-hook0.4asherah/Cargo.toml
crates.iolibc0.2asherah/Cargo.toml
crates.iowindows-sys0.59asherah/Cargo.toml
crates.iohardware-rust-crypto1.0asherah/Cargo.toml
crates.ioring0.17asherah/Cargo.toml
crates.ioscc3asherah/Cargo.toml
crates.iopercent-encoding2asherah/Cargo.toml
crates.iozeroize1.8asherah/Cargo.toml
crates.iohardware-enclave0.2.9asherah/Cargo.toml
crates.iorusqlite0.38asherah/Cargo.toml
crates.ioaws-config1asherah/Cargo.toml
crates.ioaws-types1asherah/Cargo.toml
crates.ioaws-sdk-kms1asherah/Cargo.toml
crates.ioaws-sdk-dynamodb1asherah/Cargo.toml
crates.ioaws-sdk-secretsmanager1asherah/Cargo.toml
crates.iotokio1asherah/Cargo.toml
crates.iomysql27asherah/Cargo.toml
crates.iopostgres0.19asherah/Cargo.toml
crates.iopostgres-native-tls0.5asherah/Cargo.toml
crates.ionative-tls0.2asherah/Cargo.toml
crates.ioopenssl0.10asherah/Cargo.toml
crates.ioreqwest0.12asherah/Cargo.toml
npmasherah^3.0.12interop/package.json
npmasherah-nodefile:../asherah-nodeinterop/package.json
Todas las dependencias 784

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

RegistroPaqueteVersiónRelación
crates.ioanyhowdirecta
crates.ioanyhow1.0.102directa
crates.ioasherahdirecta
crates.ioasherah-cobhandirecta
crates.ioasherah-configdirecta
crates.ioasync-traitdirecta
crates.ioasync-trait0.1.89directa
crates.ioaws-configdirecta
crates.ioaws-config1.8.13directa
crates.ioaws-config1.8.15directa
crates.ioaws-sdk-dynamodbdirecta
crates.ioaws-sdk-dynamodb1.104.0directa
crates.ioaws-sdk-dynamodb1.108.0directa
crates.ioaws-sdk-kmsdirecta
crates.ioaws-sdk-kms1.103.0directa
crates.ioaws-sdk-kms1.99.0directa
crates.ioaws-sdk-secretsmanagerdirecta
crates.ioaws-sdk-secretsmanager1.99.0directa
crates.ioaws-typesdirecta
crates.ioaws-types1.3.11directa
crates.ioaws-types1.3.14directa
crates.iobase64directa
crates.iobase640.21.7directa
crates.iobase640.22.1directa
crates.ioblake2directa
crates.ioblake20.10.6directa
crates.ioclapdirecta
crates.ioclap4.6.1directa
crates.ioenv_loggerdirecta
crates.ioenv_logger0.11.10directa
crates.iohardware-enclavedirecta
crates.iohardware-enclave0.2.9directa
crates.iohardware-rust-cryptodirecta
crates.iohardware-rust-crypto1.0.1directa
crates.ioitoadirecta
crates.ioitoa1.0.17directa
crates.ioitoa1.0.18directa
crates.iojnidirecta
crates.iojni0.22.4directa
crates.iolibcdirecta
crates.iolibc0.2.183directa
crates.iolibc0.2.186directa
crates.iologdirecta
crates.iolog0.4.29directa
crates.iolog0.4.32directa
crates.iolrudirecta
crates.iolru0.16.3directa
crates.iolru0.16.4directa
crates.iomysqldirecta
crates.iomysql27.0.0directa
crates.ionapidirecta
crates.ionapi3.9.0directa
crates.ionapi-derivedirecta
crates.ionapi-derive3.5.6directa
crates.ionative-tlsdirecta
crates.ionative-tls0.2.18directa
crates.ioonce_celldirecta
crates.ioonce_cell1.21.3directa
crates.ioonce_cell1.21.4directa
crates.ioopenssldirecta
crates.ioopenssl0.10.78directa
crates.ioopenssl0.10.80directa
crates.ioparking_lotdirecta
crates.ioparking_lot0.12.5directa
crates.iopercent-encodingdirecta
crates.iopercent-encoding2.3.2directa
crates.iopostgresdirecta
crates.iopostgres0.19.12directa
crates.iopostgres0.19.13directa
crates.iopostgres-native-tlsdirecta
crates.iopostgres-native-tls0.5.2directa
crates.iopostgres-native-tls0.5.3directa
crates.ioprostdirecta
crates.ioprost0.14.4directa
crates.iopyo3directa
crates.iopyo30.29.0directa
crates.ioranddirecta
crates.iorand0.10.1directa
crates.iorand0.9.4directa
crates.iorand_chachadirecta
crates.iorand_chacha0.9.0directa
crates.ioreqwestdirecta
crates.ioreqwest0.12.28directa
crates.ioringdirecta
crates.ioring0.17.14directa
crates.iorusqlitedirecta
crates.iorusqlite0.38.0directa
crates.iorustixdirecta
crates.iorustix1.1.4directa
crates.iosccdirecta
crates.ioscc2.4.0directa
crates.ioscc3.7.2directa
crates.ioserdedirecta
crates.ioserde1.0.228directa
crates.ioserde_bytesdirecta
crates.ioserde_bytes0.11.19directa
crates.ioserde_jsondirecta
crates.ioserde_json1.0.149directa
crates.ioserde_json1.0.150directa
crates.iosignal-hookdirecta
crates.iosignal-hook0.4.3directa
crates.iosignal-hook0.4.4directa
crates.iosubtledirecta
crates.iosubtle2.6.1directa
crates.iotokiodirecta
crates.iotokio1.50.0directa
crates.iotokio1.52.3directa
crates.iotokio-streamdirecta
crates.iotokio-stream0.1.18directa
crates.iotonicdirecta
crates.iotonic0.14.6directa
crates.iotonic-prostdirecta
crates.iotonic-prost0.14.6directa
crates.iowindows-sysdirecta
crates.iowindows-sys0.52.0directa
crates.iowindows-sys0.59.0directa
crates.iowindows-sys0.61.2directa
crates.iozeroizedirecta
crates.iozeroize1.8.2directa
Gogithub.com/ebitengine/puregov0.10.0directa
Gogithub.com/ebitengine/puregov0.10.1directa
Gogithub.com/ebitengine/puregov0.9.0directa
npmasherah3.0.12directa
npmasherah3.0.16directa
npmasherah4.0.0-beta.1directa
npmasherahlatestdirecta
npmasherahnextdirecta
crates.ioadler22.0.1indirecta
crates.ioaead0.5.2indirecta
crates.ioaes0.8.4indirecta
crates.ioaes-gcm0.10.3indirecta
crates.ioaho-corasick1.1.4indirecta
crates.ioallocator-api20.2.21indirecta
crates.ioandroid_system_properties0.1.5indirecta
crates.ioanes0.1.6indirecta
crates.ioanstream1.0.0indirecta
crates.ioanstyle1.0.14indirecta
crates.ioanstyle-parse1.0.0indirecta
crates.ioanstyle-query1.1.5indirecta
crates.ioanstyle-wincon3.0.11indirecta
crates.ioarbitrary1.4.2indirecta
crates.ioastral-tokio-tar0.6.2indirecta
crates.ioasync-stream0.3.6indirecta
crates.ioasync-stream-impl0.3.6indirecta
crates.ioatomic-waker1.1.2indirecta
crates.ioautocfg1.5.0indirecta
crates.ioaws-credential-types1.2.11indirecta
crates.ioaws-credential-types1.2.14indirecta
crates.ioaws-lc-rs1.16.2indirecta
crates.ioaws-lc-sys0.39.0indirecta
crates.ioaws-lc-sys0.39.1indirecta
crates.ioaws-runtime1.6.0indirecta
crates.ioaws-runtime1.7.2indirecta
crates.ioaws-sdk-sso1.93.0indirecta
crates.ioaws-sdk-sso1.96.0indirecta
crates.ioaws-sdk-ssooidc1.95.0indirecta
crates.ioaws-sdk-ssooidc1.98.0indirecta
crates.ioaws-sdk-sts1.100.0indirecta
crates.ioaws-sdk-sts1.97.0indirecta
crates.ioaws-sigv41.3.8indirecta
crates.ioaws-sigv41.4.2indirecta
crates.ioaws-smithy-async1.2.11indirecta
crates.ioaws-smithy-async1.2.14indirecta
crates.ioaws-smithy-http0.63.3indirecta
crates.ioaws-smithy-http0.63.6indirecta
crates.ioaws-smithy-http-client1.1.12indirecta
crates.ioaws-smithy-http-client1.1.9indirecta
crates.ioaws-smithy-json0.62.3indirecta
crates.ioaws-smithy-json0.62.5indirecta
crates.ioaws-smithy-observability0.2.4indirecta
crates.ioaws-smithy-observability0.2.6indirecta
crates.ioaws-smithy-query0.60.13indirecta
crates.ioaws-smithy-query0.60.15indirecta
crates.ioaws-smithy-runtime1.10.0indirecta
crates.ioaws-smithy-runtime1.10.3indirecta
crates.ioaws-smithy-runtime-api1.11.3indirecta
crates.ioaws-smithy-runtime-api1.11.6indirecta
crates.ioaws-smithy-types1.4.3indirecta
crates.ioaws-smithy-types1.4.6indirecta
crates.ioaws-smithy-xml0.60.13indirecta
crates.ioaws-smithy-xml0.60.15indirecta
crates.ioaxum0.8.8indirecta
crates.ioaxum-core0.5.6indirecta
crates.iobase64-simd0.8.0indirecta
crates.iobitflags2.11.0indirecta
crates.ioblock-buffer0.10.4indirecta
crates.ioblock-buffer0.12.0indirecta
crates.iobollard0.20.2indirecta
crates.iobollard-buildkit-proto0.7.0indirecta
crates.iobollard-stubs1.52.1-rc.29.1.3indirecta
crates.iobstr1.12.1indirecta
crates.iobtoi0.5.0indirecta
crates.iobufstream0.1.4indirecta
crates.iobumpalo3.20.2indirecta
crates.iobytecount0.6.9indirecta
crates.iobyteorder1.5.0indirecta
crates.iobytes1.11.1indirecta
crates.iobytes-utils0.1.4indirecta
crates.iocast0.3.0indirecta
crates.iocc1.2.56indirecta
crates.iocc1.2.60indirecta
crates.iocfg-if1.0.4indirecta
crates.iocfg_aliases0.2.1indirecta
crates.iochacha200.10.0indirecta
crates.iochrono0.4.44indirecta
crates.iociborium0.2.2indirecta
crates.iociborium-io0.2.2indirecta
crates.iociborium-ll0.2.2indirecta
crates.iocipher0.4.4indirecta
crates.ioclap_builder4.6.0indirecta
crates.ioclap_derive4.6.1indirecta
crates.ioclap_lex1.1.0indirecta
crates.iocmake0.1.57indirecta
crates.iocmake0.1.58indirecta
crates.iocmov0.5.3indirecta
crates.iocolorchoice1.0.5indirecta
crates.iocombine4.6.7indirecta
crates.ioconsole0.16.3indirecta
crates.ioconst-oid0.10.2indirecta
crates.ioconvert_case0.10.0indirecta
crates.ioconvert_case0.11.0indirecta
crates.iocore-foundation0.10.1indirecta
crates.iocore-foundation-sys0.8.7indirecta
crates.iocpufeatures0.2.17indirecta
crates.iocpufeatures0.3.0indirecta
crates.iocrc32fast1.5.0indirecta
crates.iocriterionindirecta
crates.iocriterion0.5.1indirecta
crates.iocriterion-plot0.5.0indirecta
crates.iocrossbeam-deque0.8.6indirecta
crates.iocrossbeam-epoch0.9.18indirecta
crates.iocrossbeam-queue0.3.12indirecta
crates.iocrossbeam-utils0.8.21indirecta
crates.iocrunchy0.2.4indirecta
crates.iocrypto-common0.1.7indirecta
crates.iocrypto-common0.2.1indirecta
crates.ioctor1.0.6indirecta
crates.ioctr0.9.2indirecta
crates.ioctutils0.4.2indirecta
crates.iocucumberindirecta
crates.iocucumber0.22.1indirecta
crates.iocucumber-codegen0.22.1indirecta
crates.iocucumber-expressions0.5.0indirecta
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.ioderanged0.5.8indirecta
crates.ioderive_arbitrary1.4.2indirecta
crates.ioderive_more2.1.1indirecta
crates.ioderive_more-impl2.1.1indirecta
crates.ioderive_utils0.15.1indirecta
crates.iodigest0.10.7indirecta
crates.iodigest0.11.2indirecta
crates.iodisplaydoc0.2.5indirecta
crates.iodocker_credential1.3.2indirecta
crates.iodunce1.0.5indirecta
crates.iodyn-clone1.0.20indirecta
crates.ioeither1.15.0indirecta
crates.ioencode_unicode1.0.0indirecta
crates.ioenv_filter1.0.1indirecta
crates.ioequivalent1.0.2indirecta
crates.ioerrno0.3.14indirecta
crates.ioetcetera0.11.0indirecta
crates.iofallible-iterator0.2.0indirecta
crates.iofallible-iterator0.3.0indirecta
crates.iofallible-streaming-iterator0.1.9indirecta
crates.iofastrand2.3.0indirecta
crates.iofastrand2.4.1indirecta
crates.ioferroid2.0.0indirecta
crates.iofiletime0.2.27indirecta
crates.iofind-msvc-tools0.1.9indirecta
crates.iofixedbitset0.5.7indirecta
crates.ioflate21.1.9indirecta
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.iofs_extra1.3.0indirecta
crates.iofuturesindirecta
crates.iofutures0.3.32indirecta
crates.iofutures-channel0.3.32indirecta
crates.iofutures-core0.3.32indirecta
crates.iofutures-executor0.3.32indirecta
crates.iofutures-io0.3.32indirecta
crates.iofutures-macro0.3.32indirecta
crates.iofutures-sink0.3.32indirecta
crates.iofutures-task0.3.32indirecta
crates.iofutures-util0.3.32indirecta
crates.iogeneric-array0.14.7indirecta
crates.iogetrandom0.2.17indirecta
crates.iogetrandom0.3.4indirecta
crates.iogetrandom0.4.2indirecta
crates.ioghash0.5.1indirecta
crates.iogherkin0.15.0indirecta
crates.ioglob0.3.3indirecta
crates.ioglobset0.4.18indirecta
crates.ioglobwalk0.9.1indirecta
crates.ioh20.4.13indirecta
crates.iohalf2.7.1indirecta
crates.iohashbrown0.12.3indirecta
crates.iohashbrown0.15.5indirecta
crates.iohashbrown0.16.1indirecta
crates.iohashbrown0.17.0indirecta
crates.iohashlink0.11.0indirecta
crates.ioheck0.5.0indirecta
crates.iohermit-abi0.5.2indirecta
crates.iohex0.4.3indirecta
crates.iohmac0.12.1indirecta
crates.iohmac0.13.0indirecta
crates.iohome0.5.12indirecta
crates.iohttp0.2.12indirecta
crates.iohttp1.4.0indirecta
crates.iohttp-body0.4.6indirecta
crates.iohttp-body1.0.1indirecta
crates.iohttp-body-util0.1.3indirecta
crates.iohttparse1.10.1indirecta
crates.iohttpdate1.0.3indirecta
crates.iohumantime2.3.0indirecta
crates.iohybrid-array0.4.10indirecta
crates.iohyper1.8.1indirecta
crates.iohyper1.9.0indirecta
crates.iohyper-named-pipe0.1.0indirecta
crates.iohyper-rustls0.27.7indirecta
crates.iohyper-rustls0.27.8indirecta
crates.iohyper-timeout0.5.2indirecta
crates.iohyper-utilindirecta
crates.iohyper-util0.1.20indirecta
crates.iohyperlocal0.9.1indirecta
crates.ioiana-time-zone0.1.65indirecta
crates.ioiana-time-zone-haiku0.1.2indirecta
crates.ioicu_collections2.1.1indirecta
crates.ioicu_collections2.2.0indirecta
crates.ioicu_locale_core2.1.1indirecta
crates.ioicu_locale_core2.2.0indirecta
crates.ioicu_normalizer2.1.1indirecta
crates.ioicu_normalizer2.2.0indirecta
crates.ioicu_normalizer_data2.1.1indirecta
crates.ioicu_normalizer_data2.2.0indirecta
crates.ioicu_properties2.1.2indirecta
crates.ioicu_properties2.2.0indirecta
crates.ioicu_properties_data2.1.2indirecta
crates.ioicu_properties_data2.2.0indirecta
crates.ioicu_provider2.1.1indirecta
crates.ioicu_provider2.2.0indirecta
crates.ioid-arena2.3.0indirecta
crates.ioident_case1.0.1indirecta
crates.ioidna1.1.0indirecta
crates.ioidna_adapter1.2.1indirecta
crates.ioignore0.4.25indirecta
crates.ioindexmap1.9.3indirecta
crates.ioindexmap2.13.0indirecta
crates.ioindexmap2.14.0indirecta
crates.ioinflections1.1.1indirecta
crates.ioinout0.1.4indirecta
crates.ioinventory0.3.24indirecta
crates.ioio-enum1.2.1indirecta
crates.ioipnet2.12.0indirecta
crates.ioiri-string0.7.12indirecta
crates.iois-terminal0.4.17indirecta
crates.iois_terminal_polyfill1.70.2indirecta
crates.ioitertools0.10.5indirecta
crates.ioitertools0.14.0indirecta
crates.iojava-locator0.1.9indirecta
crates.iojiff0.2.23indirecta
crates.iojiff-static0.2.23indirecta
crates.iojni-macros0.22.4indirecta
crates.iojni-sys0.4.1indirecta
crates.iojni-sys-macros0.4.1indirecta
crates.iojobserver0.1.34indirecta
crates.iojs-sys0.3.91indirecta
crates.iojs-sys0.3.95indirecta
crates.ioleb128fmt0.1.0indirecta
crates.iolibfuzzer-sys0.4.12indirecta
crates.iolibloadingindirecta
crates.iolibloading0.8.9indirecta
crates.iolibloading0.9.0indirecta
crates.iolibredox0.1.14indirecta
crates.iolibredox0.1.16indirecta
crates.iolibsqlite3-sys0.36.0indirecta
crates.iolibz-sys1.1.25indirecta
crates.iolibz-sys1.1.28indirecta
crates.iolinked-hash-map0.5.6indirecta
crates.iolinux-raw-sys0.12.1indirecta
crates.iolitemap0.8.1indirecta
crates.iolitemap0.8.2indirecta
crates.iolock_api0.4.14indirecta
crates.iolru-slab0.1.2indirecta
crates.iomatchit0.8.4indirecta
crates.iomd-50.10.6indirecta
crates.iomd-50.11.0indirecta
crates.iomemchr2.8.0indirecta
crates.iomime0.3.17indirecta
crates.iominiz_oxide0.8.9indirecta
crates.iomio1.1.1indirecta
crates.iomio1.2.0indirecta
crates.iomultimap0.10.1indirecta
crates.iomysql-common-derive0.32.1indirecta
crates.iomysql_common0.36.2indirecta
crates.ionamed_pipe0.4.1indirecta
crates.ionapi-buildindirecta
crates.ionapi-build2.3.2indirecta
crates.ionapi-derive-backend5.0.4indirecta
crates.ionapi-sys3.2.1indirecta
crates.ionohash-hasher0.2.0indirecta
crates.ionom8.0.0indirecta
crates.ionom_locate5.0.0indirecta
crates.ionum0.4.3indirecta
crates.ionum-bigint0.4.6indirecta
crates.ionum-complex0.4.6indirecta
crates.ionum-conv0.2.0indirecta
crates.ionum-conv0.2.1indirecta
crates.ionum-integer0.1.46indirecta
crates.ionum-iter0.1.45indirecta
crates.ionum-rational0.4.2indirecta
crates.ionum-traits0.2.19indirecta
crates.ioobjc2-core-foundation0.3.2indirecta
crates.ioobjc2-system-configuration0.3.2indirecta
crates.ioonce_cell_polyfill1.70.2indirecta
crates.iooorandom11.1.5indirecta
crates.ioopaque-debug0.3.1indirecta
crates.ioopenssl-macros0.1.1indirecta
crates.ioopenssl-probe0.2.1indirecta
crates.ioopenssl-src300.5.5+3.5.5indirecta
crates.ioopenssl-src300.6.0+3.6.2indirecta
crates.ioopenssl-sys0.9.115indirecta
crates.ioopenssl-sys0.9.116indirecta
crates.iooutref0.5.2indirecta
crates.ioparking_lot_core0.9.12indirecta
crates.ioparse-display0.9.1indirecta
crates.ioparse-display-derive0.9.1indirecta
crates.iopeg0.6.3indirecta
crates.iopeg-macros0.6.3indirecta
crates.iopeg-runtime0.6.3indirecta
crates.iopem3.0.6indirecta
crates.iopetgraph0.8.3indirecta
crates.iophf0.13.1indirecta
crates.iophf_shared0.13.1indirecta
crates.iopin-project1.1.11indirecta
crates.iopin-project-internal1.1.11indirecta
crates.iopin-project-lite0.2.17indirecta
crates.iopin-utils0.1.0indirecta
crates.iopkg-config0.3.32indirecta
crates.iopkg-config0.3.33indirecta
crates.ioplain0.2.3indirecta
crates.ioplotters0.3.7indirecta
crates.ioplotters-backend0.3.7indirecta
crates.ioplotters-svg0.3.7indirecta
crates.iopolyval0.6.2indirecta
crates.ioportable-atomic1.13.1indirecta
crates.ioportable-atomic-util0.2.6indirecta
crates.iopostgres-protocol0.6.10indirecta
crates.iopostgres-protocol0.6.11indirecta
crates.iopostgres-types0.2.12indirecta
crates.iopostgres-types0.2.13indirecta
crates.iopotential_utf0.1.4indirecta
crates.iopotential_utf0.1.5indirecta
crates.iopowerfmt0.2.0indirecta
crates.ioppv-lite860.2.21indirecta
crates.ioprettyplease0.2.37indirecta
crates.ioproc-macro-crate3.5.0indirecta
crates.ioproc-macro-error-attr22.0.0indirecta
crates.ioproc-macro-error22.0.1indirecta
crates.ioproc-macro21.0.106indirecta
crates.ioproptestindirecta
crates.ioproptest1.11.0indirecta
crates.ioprost-build0.14.3indirecta
crates.ioprost-derive0.14.4indirecta
crates.ioprost-types0.14.3indirecta
crates.iopulldown-cmark0.13.3indirecta
crates.iopulldown-cmark-to-cmark22.0.0indirecta
crates.iopyo3-build-config0.29.0indirecta
crates.iopyo3-ffi0.29.0indirecta
crates.iopyo3-macros0.29.0indirecta
crates.iopyo3-macros-backend0.29.0indirecta
crates.ioquick-error1.2.3indirecta
crates.ioquinn0.11.9indirecta
crates.ioquinn-proto0.11.14indirecta
crates.ioquinn-udp0.5.14indirecta
crates.ioquote1.0.45indirecta
crates.ior-efi5.3.0indirecta
crates.ior-efi6.0.0indirecta
crates.iorand_core0.10.0indirecta
crates.iorand_core0.6.4indirecta
crates.iorand_core0.9.5indirecta
crates.iorand_xorshift0.4.0indirecta
crates.iorayon1.11.0indirecta
crates.iorayon-core1.13.0indirecta
crates.ioredox_syscall0.5.18indirecta
crates.ioredox_syscall0.7.4indirecta
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.iorsqlite-vfs0.1.0indirecta
crates.iorustc-hash2.1.2indirecta
crates.iorustc_version0.4.1indirecta
crates.iorustls0.23.37indirecta
crates.iorustls0.23.38indirecta
crates.iorustls-native-certs0.8.3indirecta
crates.iorustls-pki-types1.14.0indirecta
crates.iorustls-webpki0.103.13indirecta
crates.iorustversion1.0.22indirecta
crates.iorusty-fork0.3.1indirecta
crates.ioryu1.0.23indirecta
crates.iosaa5.6.0indirecta
crates.iosame-file1.0.6indirecta
crates.iosaturating0.1.0indirecta
crates.ioschannel0.1.29indirecta
crates.ioschemars0.9.0indirecta
crates.ioschemars1.2.1indirecta
crates.ioscopeguard1.2.0indirecta
crates.iosdd3.0.10indirecta
crates.iosdd4.8.6indirecta
crates.iosealed0.6.0indirecta
crates.iosecurity-framework3.7.0indirecta
crates.iosecurity-framework-sys2.17.0indirecta
crates.iosemver1.0.27indirecta
crates.iosemver1.0.28indirecta
crates.ioserde_core1.0.228indirecta
crates.ioserde_derive1.0.228indirecta
crates.ioserde_repr0.1.20indirecta
crates.ioserde_urlencoded0.7.1indirecta
crates.ioserde_with3.18.0indirecta
crates.ioserde_with_macros3.18.0indirecta
crates.ioserial_testindirecta
crates.ioserial_test3.5.0indirecta
crates.ioserial_test_derive3.5.0indirecta
crates.iosha10.10.6indirecta
crates.iosha20.10.9indirecta
crates.iosha20.11.0indirecta
crates.ioshlex1.3.0indirecta
crates.iosignal-hook-registry1.4.8indirecta
crates.iosimd-adler320.3.8indirecta
crates.iosimd-adler320.3.9indirecta
crates.iosimd_cesu81.1.1indirecta
crates.iosimdutf80.1.5indirecta
crates.iosiphasher1.0.2indirecta
crates.ioslab0.4.12indirecta
crates.iosmallvec1.15.1indirecta
crates.iosmart-default0.7.1indirecta
crates.iosmawk0.3.2indirecta
crates.iosocket20.6.3indirecta
crates.iosqlite-wasm-rs0.5.2indirecta
crates.iostable_deref_trait1.2.1indirecta
crates.iostringprep0.1.5indirecta
crates.iostrsim0.11.1indirecta
crates.iostructmeta0.3.0indirecta
crates.iostructmeta-derive0.3.0indirecta
crates.iosyn2.0.117indirecta
crates.iosync_wrapper1.0.2indirecta
crates.iosynstructure0.13.2indirecta
crates.iosynthez0.4.0indirecta
crates.iosynthez-codegen0.4.0indirecta
crates.iosynthez-core0.4.0indirecta
crates.iotarget-lexicon0.13.5indirecta
crates.iotempfileindirecta
crates.iotempfile3.27.0indirecta
crates.iotermcolor1.4.1indirecta
crates.ioterminal_size0.4.4indirecta
crates.iotestcontainersindirecta
crates.iotestcontainers0.27.3indirecta
crates.iotestcontainers-modulesindirecta
crates.iotestcontainers-modules0.15.0indirecta
crates.iotextwrap0.16.2indirecta
crates.iothiserror2.0.18indirecta
crates.iothiserror-impl2.0.18indirecta
crates.iotime0.3.47indirecta
crates.iotime-core0.1.8indirecta
crates.iotime-macros0.2.27indirecta
crates.iotinystr0.8.2indirecta
crates.iotinystr0.8.3indirecta
crates.iotinytemplate1.2.1indirecta
crates.iotinyvec1.10.0indirecta
crates.iotinyvec1.11.0indirecta
crates.iotinyvec_macros0.1.1indirecta
crates.iotokio-macros2.6.1indirecta
crates.iotokio-macros2.7.0indirecta
crates.iotokio-native-tls0.3.1indirecta
crates.iotokio-postgres0.7.16indirecta
crates.iotokio-postgres0.7.17indirecta
crates.iotokio-rustls0.26.4indirecta
crates.iotokio-util0.7.18indirecta
crates.iotoml_datetime1.0.0+spec-1.1.0indirecta
crates.iotoml_datetime1.1.1+spec-1.1.0indirecta
crates.iotoml_edit0.25.11+spec-1.1.0indirecta
crates.iotoml_edit0.25.4+spec-1.1.0indirecta
crates.iotoml_parser1.0.9+spec-1.1.0indirecta
crates.iotoml_parser1.1.2+spec-1.1.0indirecta
crates.iotonic-build0.14.6indirecta
crates.iotonic-prost-buildindirecta
crates.iotonic-prost-build0.14.6indirecta
crates.iotowerindirecta
crates.iotower0.5.3indirecta
crates.iotower-http0.6.8indirecta
crates.iotower-layer0.3.3indirecta
crates.iotower-service0.3.3indirecta
crates.iotracing0.1.44indirecta
crates.iotracing-attributes0.1.31indirecta
crates.iotracing-core0.1.36indirecta
crates.iotry-lock0.2.5indirecta
crates.iotwox-hash2.1.2indirecta
crates.iotyped-builder0.23.2indirecta
crates.iotyped-builder-macro0.23.2indirecta
crates.iotypenum1.19.0indirecta
crates.iounarray0.1.4indirecta
crates.iounicase2.9.0indirecta
crates.iounicode-bidi0.3.18indirecta
crates.iounicode-ident1.0.24indirecta
crates.iounicode-linebreak0.1.5indirecta
crates.iounicode-normalization0.1.25indirecta
crates.iounicode-properties0.1.4indirecta
crates.iounicode-segmentation1.13.2indirecta
crates.iounicode-width0.2.2indirecta
crates.iounicode-xid0.2.6indirecta
crates.iouniversal-hash0.5.1indirecta
crates.iountrusted0.9.0indirecta
crates.ioureq3.3.0indirecta
crates.ioureq-proto0.6.0indirecta
crates.iourl2.5.8indirecta
crates.iourlencoding2.1.3indirecta
crates.ioutf8-zero0.8.1indirecta
crates.ioutf8_iter1.0.4indirecta
crates.ioutf8parse0.2.2indirecta
crates.iouuid1.22.0indirecta
crates.iouuid1.23.0indirecta
crates.iovcpkg0.2.15indirecta
crates.ioversion_check0.9.5indirecta
crates.iovsimd0.8.0indirecta
crates.iowait-timeout0.2.1indirecta
crates.iowalkdir2.5.0indirecta
crates.iowant0.3.1indirecta
crates.iowasi0.11.1+wasi-snapshot-preview1indirecta
crates.iowasi0.14.7+wasi-0.2.4indirecta
crates.iowasip21.0.2+wasi-0.2.9indirecta
crates.iowasip30.4.0+wasi-0.3.0-rc-2026-01-06indirecta
crates.iowasite1.0.2indirecta
crates.iowasm-bindgen0.2.114indirecta
crates.iowasm-bindgen0.2.118indirecta
crates.iowasm-bindgen-futures0.4.68indirecta
crates.iowasm-bindgen-macro0.2.114indirecta
crates.iowasm-bindgen-macro0.2.118indirecta
crates.iowasm-bindgen-macro-support0.2.114indirecta
crates.iowasm-bindgen-macro-support0.2.118indirecta
crates.iowasm-bindgen-shared0.2.114indirecta
crates.iowasm-bindgen-shared0.2.118indirecta
crates.iowasm-encoder0.244.0indirecta
crates.iowasm-metadata0.244.0indirecta
crates.iowasmparser0.244.0indirecta
crates.ioweb-sys0.3.91indirecta
crates.ioweb-sys0.3.95indirecta
crates.ioweb-time1.1.0indirecta
crates.iowebpki-roots1.0.6indirecta
crates.iowhichindirecta
crates.iowhich8.0.3indirecta
crates.iowhoami2.1.1indirecta
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.iowindows0.58.0indirecta
crates.iowindows-core0.58.0indirecta
crates.iowindows-core0.62.2indirecta
crates.iowindows-implement0.58.0indirecta
crates.iowindows-implement0.60.2indirecta
crates.iowindows-interface0.58.0indirecta
crates.iowindows-interface0.59.3indirecta
crates.iowindows-link0.2.1indirecta
crates.iowindows-result0.2.0indirecta
crates.iowindows-result0.4.1indirecta
crates.iowindows-strings0.1.0indirecta
crates.iowindows-strings0.5.1indirecta
crates.iowindows-targets0.52.6indirecta
crates.iowindows_aarch64_gnullvm0.52.6indirecta
crates.iowindows_aarch64_msvc0.52.6indirecta
crates.iowindows_i686_gnu0.52.6indirecta
crates.iowindows_i686_gnullvm0.52.6indirecta
crates.iowindows_i686_msvc0.52.6indirecta
crates.iowindows_x86_64_gnu0.52.6indirecta
crates.iowindows_x86_64_gnullvm0.52.6indirecta
crates.iowindows_x86_64_msvc0.52.6indirecta
crates.iowinnow0.7.15indirecta
crates.iowinnow1.0.1indirecta
crates.iowit-bindgen0.51.0indirecta
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.2indirecta
crates.iowriteable0.6.3indirecta
crates.ioxattr1.6.1indirecta
crates.ioxmlparser0.13.6indirecta
crates.ioyoke0.8.1indirecta
crates.ioyoke0.8.2indirecta
crates.ioyoke-derive0.8.1indirecta
crates.ioyoke-derive0.8.2indirecta
crates.iozerocopy0.8.42indirecta
crates.iozerocopy0.8.48indirecta
crates.iozerocopy-derive0.8.42indirecta
crates.iozerocopy-derive0.8.48indirecta
crates.iozerofrom0.1.6indirecta
crates.iozerofrom0.1.7indirecta
crates.iozerofrom-derive0.1.6indirecta
crates.iozerofrom-derive0.1.7indirecta
crates.iozeroize_derive1.4.3indirecta
crates.iozerotrie0.2.3indirecta
crates.iozerotrie0.2.4indirecta
crates.iozerovec0.11.5indirecta
crates.iozerovec0.11.6indirecta
crates.iozerovec-derive0.11.2indirecta
crates.iozerovec-derive0.11.3indirecta
crates.iozmij1.0.21indirecta
Gogithub.com/awnumar/memcallv0.1.2indirecta
Gogithub.com/awnumar/memcallv0.4.0indirecta
Gogithub.com/awnumar/memguardv0.22.3indirecta
Gogithub.com/awnumar/memguardv0.22.5indirecta
Gogithub.com/aws/aws-sdk-gov1.44.265indirecta
Gogithub.com/aws/aws-sdk-gov1.55.8indirecta
Gogithub.com/goburrow/cachev0.1.4indirecta
Gogithub.com/godaddy/asherah/go/appencryptionv0.3.0indirecta
Gogithub.com/godaddy/asherah/go/appencryptionv0.9.0indirecta
Gogithub.com/godaddy/asherah/go/securememoryv0.1.4indirecta
Gogithub.com/godaddy/asherah/go/securememoryv0.1.7indirecta
Gogithub.com/jmespath/go-jmespathv0.4.0indirecta
Gogithub.com/pkg/errorsv0.9.1indirecta
Gogithub.com/rcrowley/go-metricsv0.0.0-20201227073835-cf1acfcdf475indirecta
Gogolang.org/x/cryptov0.45.0indirecta
Gogolang.org/x/cryptov0.48.0indirecta
Gogolang.org/x/netv0.48.0indirecta
Gogolang.org/x/sysv0.38.0indirecta
Gogolang.org/x/sysv0.39.0indirecta
Gogolang.org/x/sysv0.42.0indirecta
Gogolang.org/x/textv0.32.0indirecta
Gogoogle.golang.org/genproto/googleapis/rpcv0.0.0-20251202230838-ff82c1b0f217indirecta
Gogoogle.golang.org/grpcv1.79.3indirecta
Gogoogle.golang.org/protobufv1.36.11indirecta
Mavencom.godaddy.asherah:appencryptionindirecta
Mavencom.godaddy.asherah:appencryption0.3.3indirecta
Mavencom.godaddy.asherah:appencryption0.4.0indirecta
Mavenio.micrometer:micrometer-core1.17.0indirecta
Mavenorg.apache.maven.plugins:maven-compiler-plugin3.15.0indirecta
Mavenorg.apache.maven.plugins:maven-gpg-plugin3.2.8indirecta
Mavenorg.apache.maven.plugins:maven-javadoc-plugin3.12.0indirecta
Mavenorg.apache.maven.plugins:maven-shade-plugin3.6.0indirecta
Mavenorg.apache.maven.plugins:maven-source-plugin3.4.0indirecta
Mavenorg.apache.maven.plugins:maven-surefire-plugin3.5.6indirecta
Mavenorg.codehaus.mojo:exec-maven-plugin3.6.3indirecta
Mavenorg.json:json20240303indirecta
Mavenorg.junit.jupiter:junit-jupiter5.14.4indirecta
Mavenorg.openjdk.jmh:jmh-core1.37indirecta
Mavenorg.openjdk.jmh:jmh-generator-annprocess1.37indirecta
Mavenorg.slf4j:slf4j-api2.0.18indirecta
Mavenorg.slf4j:slf4j-simple2.0.18indirecta
Mavenorg.slf4j:slf4j-simple2.0.7indirecta
Mavenorg.sonatype.central:central-publishing-maven-plugin0.10.0indirecta
npm../asherah-node0.1.0indirecta
npm@napi-rs/cli2.18.4indirecta
npmnode-addon-api8.5.0indirecta
npmnode-addon-api8.6.0indirecta
npmtinybench6.0.0indirecta
NuGetBenchmarkDotNet0.15.8indirecta
NuGetGoDaddy.Asherah.AppEncryption0.11.0indirecta
NuGetGoDaddy.Asherah.AppEncryption0.2.10indirecta
NuGetGoDaddy.Asherah.SecureMemory0.5.0indirecta
NuGetMicrosoft.Extensions.Logging10.0.7indirecta
NuGetMicrosoft.Extensions.Logging.Abstractionsindirecta
NuGetNewtonsoft.Jsonindirecta
Packagistext-ffiindirecta
Packagistext-jsonindirecta
Packagistfriendsofphp/php-cs-fixerindirecta
Packagistphpindirecta
Packagistphpstan/phpstanindirecta
Packagistphpunit/phpunitindirecta
RubyGemsffiindirecta
RubyGemsloggerindirecta
RubyGemsminitest5.27.0indirecta
RubyGemsrake13.4.2indirecta
Avisos de dependencias 23

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

PaqueteVersiónRelaciónGravedadAvisosCorregido en
golang.org/x/cryptov0.45.0indirectacrítica270.52.0
golang.org/x/cryptov0.48.0indirectacrítica270.52.0
google.golang.org/grpcv1.79.3indirectacrítica11.82.1
openssl0.10.78directaalta30.10.80
postgres-protocol0.6.10indirectaalta20.6.12
postgres-protocol0.6.11indirectaalta20.6.12
quinn-proto0.11.14indirectaalta20.11.15
cmov0.5.3indirectamoderada10.5.4
golang.org/x/netv0.48.0indirectamoderada91.26.3
serde_with3.18.0indirectamoderada13.21.0
tokio-postgres0.7.16indirectamoderada10.7.18
tokio-postgres0.7.17indirectamoderada10.7.18
anyhow1.0.102directadesconocida11.0.103
scc2.4.0directadesconocida13.8.4
scc3.7.2directadesconocida13.8.4
crossbeam-epoch0.9.18indirectadesconocida10.9.20
github.com/aws/aws-sdk-gov1.44.265indirectadesconocida2
github.com/aws/aws-sdk-gov1.55.8indirectadesconocida2
golang.org/x/sysv0.38.0indirectadesconocida10.44.0
golang.org/x/sysv0.39.0indirectadesconocida10.44.0
golang.org/x/sysv0.42.0indirectadesconocida10.44.0
golang.org/x/textv0.32.0indirectadesconocida10.39.0
proc-macro-error22.0.1indirectadesconocida1

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": [
        "cryptography",
        "dotnet",
        "encryption",
        "envelope-encryption",
        "ffi",
        "go",
        "java",
        "key-rotation",
        "nodejs",
        "python",
        "ruby",
        "rust",
        "security"
      ],
      "is_fork": false,
      "size_kb": 49344,
      "has_wiki": false,
      "homepage": "https://github.com/godaddy/asherah-ffi",
      "languages": {
        "C": 103,
        "C#": 291295,
        "Go": 141534,
        "PHP": 133757,
        "Java": 190515,
        "Ruby": 97020,
        "Rust": 1775560,
        "Shell": 133459,
        "Python": 104338,
        "Gherkin": 2033,
        "Dockerfile": 4380,
        "JavaScript": 128261
      },
      "pushed_at": "2026-07-21T02:51:43Z",
      "created_at": "2025-09-30T18:32:43Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-16T09:32:26Z",
      "description": "Application-layer envelope encryption with automatic key rotation. Rust core with bindings for Node.js, Python, .NET, Java, Ruby, and Go.",
      "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": "https://godaddy.com/engineering/",
      "name": "GoDaddy",
      "type": "Organization",
      "login": "godaddy",
      "company": null,
      "location": "United States of America",
      "followers": 228,
      "avatar_url": "https://avatars.githubusercontent.com/u/1406546?v=4",
      "created_at": "2012-02-03T20:15:04Z",
      "is_verified": null,
      "public_repos": 215,
      "account_age_days": 5287
    },
    "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": "v1.0.0",
          "kind": "major",
          "published_at": "2026-06-19T20:17:42Z"
        },
        {
          "tag": "v0.6.115",
          "kind": "patch",
          "published_at": "2026-06-10T10:57:46Z"
        },
        {
          "tag": "v0.6.114",
          "kind": "patch",
          "published_at": "2026-06-10T10:55:04Z"
        },
        {
          "tag": "v0.6.113",
          "kind": "patch",
          "published_at": "2026-06-10T04:58:46Z"
        },
        {
          "tag": "v0.6.112",
          "kind": "patch",
          "published_at": "2026-06-09T14:56:21Z"
        },
        {
          "tag": "v0.6.111",
          "kind": "patch",
          "published_at": "2026-06-09T03:40:48Z"
        },
        {
          "tag": "v0.6.110",
          "kind": "patch",
          "published_at": "2026-06-05T17:41:12Z"
        },
        {
          "tag": "v0.6.109",
          "kind": "patch",
          "published_at": "2026-06-05T14:18:05Z"
        },
        {
          "tag": "v0.6.108",
          "kind": "patch",
          "published_at": "2026-06-03T08:59:01Z"
        },
        {
          "tag": "v0.6.107",
          "kind": "patch",
          "published_at": "2026-05-21T21:43:07Z"
        },
        {
          "tag": "v0.6.106",
          "kind": "patch",
          "published_at": "2026-05-21T05:48:47Z"
        },
        {
          "tag": "v0.6.105",
          "kind": "patch",
          "published_at": "2026-05-14T15:53:42Z"
        },
        {
          "tag": "v0.6.104",
          "kind": "patch",
          "published_at": "2026-05-14T14:43:35Z"
        },
        {
          "tag": "v0.6.103",
          "kind": "patch",
          "published_at": "2026-05-14T01:28:14Z"
        },
        {
          "tag": "v0.6.102",
          "kind": "patch",
          "published_at": "2026-05-13T22:37:51Z"
        },
        {
          "tag": "v0.6.101",
          "kind": "patch",
          "published_at": "2026-05-13T00:39:32Z"
        },
        {
          "tag": "v0.6.100",
          "kind": "patch",
          "published_at": "2026-05-12T23:23:35Z"
        },
        {
          "tag": "v0.6.99",
          "kind": "patch",
          "published_at": "2026-05-12T19:35:48Z"
        },
        {
          "tag": "v0.6.98",
          "kind": "patch",
          "published_at": "2026-05-09T22:58:44Z"
        },
        {
          "tag": "v0.6.97",
          "kind": "patch",
          "published_at": "2026-05-06T20:28:06Z"
        },
        {
          "tag": "v0.6.96",
          "kind": "patch",
          "published_at": "2026-05-01T16:02:15Z"
        },
        {
          "tag": "v0.6.95",
          "kind": "patch",
          "published_at": "2026-05-01T14:55:19Z"
        },
        {
          "tag": "v0.6.94",
          "kind": "patch",
          "published_at": "2026-05-01T13:25:43Z"
        },
        {
          "tag": "v0.6.93",
          "kind": "patch",
          "published_at": "2026-04-29T21:51:16Z"
        },
        {
          "tag": "v0.6.92",
          "kind": "patch",
          "published_at": "2026-04-29T01:47:21Z"
        },
        {
          "tag": "v0.6.91",
          "kind": "patch",
          "published_at": "2026-04-28T00:42:56Z"
        },
        {
          "tag": "v0.6.90",
          "kind": "patch",
          "published_at": "2026-04-10T16:34:24Z"
        },
        {
          "tag": "v0.6.89",
          "kind": "patch",
          "published_at": "2026-04-08T19:40:03Z"
        },
        {
          "tag": "v0.6.88",
          "kind": "patch",
          "published_at": "2026-04-08T01:04:23Z"
        },
        {
          "tag": "v0.6.87",
          "kind": "patch",
          "published_at": "2026-03-30T15:55:31Z"
        },
        {
          "tag": "v0.6.86",
          "kind": "patch",
          "published_at": "2026-03-30T12:24:11Z"
        },
        {
          "tag": "v0.6.85",
          "kind": "patch",
          "published_at": "2026-03-29T04:01:33Z"
        },
        {
          "tag": "v0.6.84",
          "kind": "patch",
          "published_at": "2026-03-29T02:30:18Z"
        },
        {
          "tag": "v0.6.83",
          "kind": "patch",
          "published_at": "2026-03-28T20:17:14Z"
        },
        {
          "tag": "v0.6.82",
          "kind": "patch",
          "published_at": "2026-03-28T19:29:53Z"
        },
        {
          "tag": "v0.6.81",
          "kind": "patch",
          "published_at": "2026-03-28T19:28:31Z"
        },
        {
          "tag": "v0.6.80",
          "kind": "patch",
          "published_at": "2026-03-28T18:12:09Z"
        },
        {
          "tag": "v0.6.79",
          "kind": "patch",
          "published_at": "2026-03-28T17:08:21Z"
        },
        {
          "tag": "v0.6.78",
          "kind": "patch",
          "published_at": "2026-03-28T15:02:11Z"
        },
        {
          "tag": "v0.6.77",
          "kind": "patch",
          "published_at": "2026-03-28T14:19:45Z"
        },
        {
          "tag": "v0.6.76",
          "kind": "patch",
          "published_at": "2026-03-28T12:11:47Z"
        },
        {
          "tag": "v0.6.75",
          "kind": "patch",
          "published_at": "2026-03-27T17:20:42Z"
        },
        {
          "tag": "v0.6.74",
          "kind": "patch",
          "published_at": "2026-03-27T15:39:07Z"
        },
        {
          "tag": "v0.6.73",
          "kind": "patch",
          "published_at": "2026-03-27T12:46:06Z"
        },
        {
          "tag": "v0.6.72",
          "kind": "patch",
          "published_at": "2026-03-27T10:45:03Z"
        },
        {
          "tag": "v0.6.71",
          "kind": "patch",
          "published_at": "2026-03-27T02:27:52Z"
        },
        {
          "tag": "v0.6.70",
          "kind": "patch",
          "published_at": "2026-03-26T21:29:53Z"
        },
        {
          "tag": "v0.6.69",
          "kind": "patch",
          "published_at": "2026-03-26T18:19:17Z"
        },
        {
          "tag": "v0.6.68",
          "kind": "patch",
          "published_at": "2026-03-26T15:56:41Z"
        },
        {
          "tag": "v0.6.67",
          "kind": "patch",
          "published_at": "2026-03-26T13:14:32Z"
        },
        {
          "tag": "v0.6.66",
          "kind": "patch",
          "published_at": "2026-03-25T17:02:56Z"
        },
        {
          "tag": "v0.6.65",
          "kind": "patch",
          "published_at": "2026-03-25T15:59:27Z"
        },
        {
          "tag": "v0.6.64",
          "kind": "patch",
          "published_at": "2026-03-25T10:46:46Z"
        },
        {
          "tag": "v0.6.63",
          "kind": "patch",
          "published_at": "2026-03-25T02:39:38Z"
        },
        {
          "tag": "v0.6.62",
          "kind": "patch",
          "published_at": "2026-03-24T23:41:03Z"
        },
        {
          "tag": "v0.6.61",
          "kind": "patch",
          "published_at": "2026-03-24T21:20:45Z"
        },
        {
          "tag": "v0.6.60",
          "kind": "patch",
          "published_at": "2026-03-24T19:58:19Z"
        },
        {
          "tag": "v0.6.59",
          "kind": "patch",
          "published_at": "2026-03-24T18:29:42Z"
        },
        {
          "tag": "v0.6.58",
          "kind": "patch",
          "published_at": "2026-03-24T16:18:03Z"
        },
        {
          "tag": "v0.6.57",
          "kind": "patch",
          "published_at": "2026-03-24T14:35:00Z"
        },
        {
          "tag": "v0.6.56",
          "kind": "patch",
          "published_at": "2026-03-24T13:11:07Z"
        },
        {
          "tag": "v0.6.55",
          "kind": "patch",
          "published_at": "2026-03-24T12:55:24Z"
        },
        {
          "tag": "v0.6.54",
          "kind": "patch",
          "published_at": "2026-03-24T12:53:34Z"
        },
        {
          "tag": "v0.6.53",
          "kind": "patch",
          "published_at": "2026-03-24T11:51:24Z"
        },
        {
          "tag": "v0.6.52",
          "kind": "patch",
          "published_at": "2026-03-24T11:39:30Z"
        },
        {
          "tag": "v0.6.51",
          "kind": "patch",
          "published_at": "2026-03-24T05:33:01Z"
        },
        {
          "tag": "v0.6.50",
          "kind": "patch",
          "published_at": "2026-03-24T05:02:12Z"
        },
        {
          "tag": "v0.6.49",
          "kind": "patch",
          "published_at": "2026-03-24T02:43:27Z"
        },
        {
          "tag": "v0.6.48",
          "kind": "patch",
          "published_at": "2026-03-24T01:30:22Z"
        },
        {
          "tag": "v0.6.47",
          "kind": "patch",
          "published_at": "2026-03-24T00:43:45Z"
        },
        {
          "tag": "v0.6.46",
          "kind": "patch",
          "published_at": "2026-03-23T19:38:08Z"
        },
        {
          "tag": "v0.6.45",
          "kind": "patch",
          "published_at": "2026-03-23T05:39:00Z"
        },
        {
          "tag": "v0.6.44",
          "kind": "patch",
          "published_at": "2026-03-19T16:24:56Z"
        },
        {
          "tag": "v0.6.43",
          "kind": "patch",
          "published_at": "2026-03-19T15:36:04Z"
        },
        {
          "tag": "v0.6.42",
          "kind": "patch",
          "published_at": "2026-03-19T13:20:13Z"
        },
        {
          "tag": "v0.6.41",
          "kind": "patch",
          "published_at": "2026-03-19T12:40:45Z"
        },
        {
          "tag": "v0.6.40",
          "kind": "patch",
          "published_at": "2026-03-18T16:02:58Z"
        },
        {
          "tag": "v0.6.39",
          "kind": "patch",
          "published_at": "2026-03-17T21:15:31Z"
        },
        {
          "tag": "v0.6.38",
          "kind": "patch",
          "published_at": "2026-03-17T20:24:47Z"
        },
        {
          "tag": "v0.6.37",
          "kind": "patch",
          "published_at": "2026-03-17T19:23:23Z"
        },
        {
          "tag": "v0.6.36",
          "kind": "patch",
          "published_at": "2026-03-17T19:16:15Z"
        },
        {
          "tag": "v0.6.35",
          "kind": "patch",
          "published_at": "2026-03-17T19:02:28Z"
        },
        {
          "tag": "v0.6.34",
          "kind": "patch",
          "published_at": "2026-03-17T18:57:32Z"
        },
        {
          "tag": "v0.6.33",
          "kind": "patch",
          "published_at": "2026-03-17T17:54:54Z"
        },
        {
          "tag": "v0.6.32",
          "kind": "patch",
          "published_at": "2026-03-15T17:35:51Z"
        },
        {
          "tag": "v0.6.31",
          "kind": "patch",
          "published_at": "2026-03-15T16:42:59Z"
        },
        {
          "tag": "v0.6.30",
          "kind": "patch",
          "published_at": "2026-03-15T14:39:58Z"
        },
        {
          "tag": "v0.6.29",
          "kind": "patch",
          "published_at": "2026-03-14T13:49:06Z"
        },
        {
          "tag": "v0.6.28",
          "kind": "patch",
          "published_at": "2026-03-14T01:41:30Z"
        },
        {
          "tag": "v0.6.27",
          "kind": "patch",
          "published_at": "2026-03-13T20:15:50Z"
        },
        {
          "tag": "v0.6.26",
          "kind": "patch",
          "published_at": "2026-03-13T18:20:43Z"
        },
        {
          "tag": "v0.6.25",
          "kind": "patch",
          "published_at": "2026-03-13T17:02:46Z"
        },
        {
          "tag": "v0.6.24",
          "kind": "patch",
          "published_at": "2026-03-13T12:01:57Z"
        },
        {
          "tag": "v0.6.23",
          "kind": "patch",
          "published_at": "2026-03-13T04:18:13Z"
        },
        {
          "tag": "v0.6.22",
          "kind": "patch",
          "published_at": "2026-03-13T04:12:47Z"
        },
        {
          "tag": "v0.6.21",
          "kind": "patch",
          "published_at": "2026-03-13T03:04:21Z"
        },
        {
          "tag": "v0.6.20",
          "kind": "patch",
          "published_at": "2026-03-13T01:32:56Z"
        },
        {
          "tag": "v0.6.19",
          "kind": "patch",
          "published_at": "2026-03-13T00:31:55Z"
        },
        {
          "tag": "v0.6.18",
          "kind": "patch",
          "published_at": "2026-03-13T00:25:44Z"
        },
        {
          "tag": "v0.6.17",
          "kind": "patch",
          "published_at": "2026-03-12T22:42:33Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "07a27b18afa522b7436d2cc35a85055e7333dc27",
          "body": "fix(dotnet): match AsherahBuffer C# struct to Rust ABI (3 fields, not 2)",
          "is_bot": false,
          "headline": "Merge pull request #352 from chief-micco/issue-349-nre-under-load",
          "author_name": "Micco",
          "author_login": "chief-micco",
          "committed_at": "2026-07-16T09:32:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "787fe34549f2a5bd078bb77ff4bbd61efcc104b7",
          "body": "Convert blocking Task.WaitAll to async Task.WhenAll and pass\nCancellationToken to Task.Run, Barrier.SignalAndWait, and Task.Delay.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(dotnet): resolve xUnit1031 and xUnit1051 analyzer warnings in tests",
          "author_name": "chief-micco",
          "author_login": "chief-micco",
          "committed_at": "2026-07-10T14:34:44Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "856c9a18280a5a5fed3b6b1d237b541d73b4eaa4",
          "body": "The C# `AsherahBuffer` struct declared only `data` and `len` (16 bytes on\n64-bit) while the Rust `#[repr(C)] struct AsherahBuffer` writes three\npointer-sized fields — `data`, `len`, `capacity` (24 bytes). Every\n`asherah_encrypt_to_json` / `asherah_decrypt_from_json` call therefore\noverflowed the cal\n[…]\nMultiThreadedSessionCacheTests` adds supplementary load coverage\n(concurrent GetSession + DecryptBytes) with short session/IK TTLs.\n\nFixes #349\n\nCo-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(dotnet): match AsherahBuffer C# struct to Rust ABI (3 fields, not 2)",
          "author_name": "chief-micco",
          "author_login": "chief-micco",
          "committed_at": "2026-07-03T07:26:59Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "6f8b8a3c31cfbc6d4f962968e8fd3f3c9b2dcd4e",
          "body": "GitHub Actions (bumped to latest, SHA-pinned):\n- actions/cache v5.0.5 → v6.0.0\n- actions/checkout v6.0.3 → v7.0.0\n- actions/setup-go v6.4.0 → v6.5.0\n- actions/setup-java v5.2.0 → v5.3.0\n- actions/setup-python v6.2.0 → v6.3.0\n- softprops/action-gh-release v3.0.0 → v3.0.1\n- ruby/setup-ruby v1.312.0 → \n[…]\n=1.9.4 (was unversioned pip install, now matches CI)\n\nRuby:\n- Pin minitest to 5.27.0 and rake to 13.4.2 in Gemfile (were ~> ranges)\n- Pin bundler:2.6.9 in scripts/test.sh (was unversioned gem install)",
          "is_bot": false,
          "headline": "ci: pin all unpinned dependency references (#348)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-06-24T13:22:53Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f1fef020ac6f6ede8b060d7f7d603113301ef739",
          "body": "…in (#344)\n\n* feat(asherah): default AES-256-GCM to hardware-rust-crypto, ring opt-in\n\nMake hardware-rust-crypto the default AEAD backend and gate ring behind an\nopt-in `ring-crypto` feature.\n\n- New mutually-exclusive features: `hardware-crypto` (default) and\n  `ring-crypto`; both backend deps are o\n[…]\n asherah's sanitizer job\nlikewise runs on x86_64.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(asherah): default AES-256-GCM to hardware-rust-crypto, ring opt-…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy",
          "committed_at": "2026-06-20T18:05:20Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "d4d5390d827255135f6f4259d33c72f5d78aee2d",
          "body": "Bumps [pyo3](https://github.com/pyo3/pyo3) from 0.28.3 to 0.29.0.\n- [Release notes](https://github.com/pyo3/pyo3/releases)\n- [Changelog](https://github.com/PyO3/pyo3/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/pyo3/pyo3/compare/v0.28.3...v0.29.0)\n\n---\nupdated-dependencies:\n- dependency-na\n[…]\nndency-version: 0.29.0\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump pyo3 from 0.28.3 to 0.29.0 (#338)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-20T03:20:31Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "af07fd16cdb790ca294928a748157d5e23c4b6e8",
          "body": "* Release 1.0.0: bump asherah crates + Python/Java bindings to 1.0.0\n\nBumps to 1.0.0:\n- the crates.io publish set: asherah, asherah-config, asherah-cobhan, asherah-ffi\n- the Python and Java binding crates: asherah-py, asherah-java\n\nLeft on their own independent version tracks (published from this mo\n[…]\nlready set, so it is never a crates.io artifact).\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Release 1.0.0 (#341)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy",
          "committed_at": "2026-06-19T20:17:34Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "c1a545b727c556c66154949a2ce90f1eac353669",
          "body": "* fix(core): make key schedule caching optional\n\n* fix(memory): use guarded hardware-enclave slab\n\n* fix(init): harden process before factory setup\n\n* fix(security): warn on CPU side-channel exposure\n\n* Harden FFI and binding security boundaries (#336)\n\n* fix(security): harden FFI and binding bounda\n[…]\ne hardening branch\n\n* Fix review and binding CI regressions\n\n* Move drift guard override logs out of sensitive paths\n\n* Fix sanitizer Miri hardening tests\n\n* Clamp key timestamp precision in factories",
          "is_bot": false,
          "headline": "Harden cache secret residency and CPU side-channel posture (#335)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-06-12T04:06:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d9ae650ca0bc0264b174afc9a386ab4a800aba13",
          "body": "…tes (#328)\n\nBumps the rust-minor group with 6 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [log](https://github.com/rust-lang/log) | `0.4.30` | `0.4.32` |\n| scc | `3.7.1` | `3.7.2` |\n| [hardware-enclave](https://github.com/godaddy/hardware-enclave) | `0.2.0` | `0.2.8` \n[…]\n version-update:semver-patch\n  dependency-group: rust-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump the rust-minor group across 1 directory with 6 upda…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-10T10:56:40Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "21d32386d07541b03fd525392cd492738b9a8d25",
          "body": "… (#326)\n\nBumps [io.micrometer:micrometer-core](https://github.com/micrometer-metrics/micrometer) from 1.16.5 to 1.17.0.\n- [Release notes](https://github.com/micrometer-metrics/micrometer/releases)\n- [Commits](https://github.com/micrometer-metrics/micrometer/compare/v1.16.5...v1.17.0)\n\n---\nupdated-d\n[…]\nirect:production\n  update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump io.micrometer:micrometer-core in /asherah-java/java…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-10T10:56:25Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "21474da4d683f5b53edb30294d11ef51cb28ef1c",
          "body": "Bumps [github.com/ebitengine/purego](https://github.com/ebitengine/purego) from 0.10.0 to 0.10.1.\n- [Release notes](https://github.com/ebitengine/purego/releases)\n- [Commits](https://github.com/ebitengine/purego/compare/v0.10.0...v0.10.1)\n\n---\nupdated-dependencies:\n- dependency-name: github.com/ebit\n[…]\nirect:production\n  update-type: version-update:semver-patch\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump github.com/ebitengine/purego in /asherah-go (#317)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-10T10:56:14Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a70e0fd79e9d07acdf4b80bdbe62186506b0e716",
          "body": "…(#316)\n\nBumps [org.apache.maven.plugins:maven-surefire-plugin](https://github.com/apache/maven-surefire) from 3.5.5 to 3.5.6.\n- [Release notes](https://github.com/apache/maven-surefire/releases)\n- [Commits](https://github.com/apache/maven-surefire/compare/surefire-3.5.5...surefire-3.5.6)\n\n---\nupdat\n[…]\nrect:development\n  update-type: version-update:semver-patch\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps-dev): bump org.apache.maven.plugins:maven-surefire-plugin …",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-10T10:56:00Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "280d81777f1e975adbd98dbd03a8e6d20b132504",
          "body": null,
          "is_bot": false,
          "headline": "Fix ruby version when bundling from git (#334)",
          "author_name": "Dalibor Nasevic",
          "author_login": "dnasevic-godaddy",
          "committed_at": "2026-06-10T10:52:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "56fdc507ff32f88f058ba0e4764af02409128b21",
          "body": null,
          "is_bot": false,
          "headline": "Promote .NET packages out of beta (and other chores) (#333)",
          "author_name": "Micco",
          "author_login": "chief-micco",
          "committed_at": "2026-06-10T04:56:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e260118acc3177f5196c4553dd726fb73b473de3",
          "body": "The v0.6.112 release had 5 jobs fail on transient GitHub Actions\ninfrastructure (runner reclamation / 'received a shutdown signal',\ncache-export 'not_found') — not on code. PyPI/Server/PHP failed while\nnpm/crates/cobhan/rubygems/nuget/maven succeeded; manual re-runs then fixed\nall 5 with no code cha\n[…]\nsh-dry-run-* jobs only build (never push), so the\npush-step wrappers need no ci.yml change; the only shared surface\n(download-musl-openssl.sh) is edited in place so publish + dry-run stay in\nlockstep.",
          "is_bot": false,
          "headline": "ci: add retry + auto-rerun resilience to the release pipeline (#332)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-06-09T18:02:35Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c713ebe1e6cfde90a7f4c052bc6060f014560fd6",
          "body": "T5 (#257) wrapped every sync encrypt/decrypt in py.detach to release the\nGIL across the native call, reasoning that a cache miss can block on the\nmetastore/KMS. But the warm path is a sub-microsecond in-memory AEAD op,\nand releasing+reacquiring the GIL around it collapses multi-threaded\nthroughput: \n[…]\ncrypt_bytes_async/\ndecrypt_bytes_async), which runs on the tokio runtime off the GIL.\n\nMirrors the Ruby fix (#330). Node needs no change — its T5 fix was\ndocs-only (sync path never released anything).",
          "is_bot": false,
          "headline": "fix(py): hold the GIL on sync encrypt/decrypt hot path (#331)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-06-09T14:55:42Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1032119f8c38b1f51f3da999a5196535005adf3a",
          "body": "…ression (#330)\n\n* Remove blocking: true from encrypt/decrypt FFI to fix performance regression\n\nThe GVL release/reacquire overhead of blocking: true dominates when\nencrypt/decrypt are sub-microsecond (warm key cache). Under multi-threaded\nruntime, this caused few times slower throughput vs the old \n[…]\nL, which is correct.\n\nComplements the sync encrypt/decrypt change on this branch.\n\n---------\n\nCo-authored-by: Dalibor Nasevic <dalibor.nasevic@gmail.com>\nCo-authored-by: Jay Gowdy <jgowdy@godaddy.com>",
          "is_bot": false,
          "headline": "Remove blocking: true from encrypt/decrypt FFI to fix performance reg…",
          "author_name": "Dalibor Nasevic",
          "author_login": "dnasevic-godaddy",
          "committed_at": "2026-06-09T14:45:08Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "807838e6cf4a1c67265bd3afbf7388f40a2b0ffa",
          "body": "Mark the four async KMS tests #[cfg_attr(miri, ignore)] — they exercise the tokio reactor / AWS config (FS), which Miri can't run under isolation, and contain no unsafe code. Restores the sanitizers job (red on main since #323). Also gate sanitizers on pull_request to main so regressions are caught pre-merge. Verified locally (all four Miri sub-commands exit 0) and on this PR (sanitizers green).",
          "is_bot": false,
          "headline": "Fix Miri sanitizers failure and gate sanitizers on PRs (#329)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-06-09T04:58:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9b95ec35c481b1ae6a0cf8f22ac188169f4f102e",
          "body": "Recover decrypts that would fail because a row's intermediate-key id doesn't match the decrypting session's region suffix, instead of erroring. AES-GCM authenticates every attempt, so a wrong key can never yield wrong plaintext.\n\n- Gate accepts the bare-core IK id for suffixed sessions (rescues rows\n[…]\nvice/product isolation boundary.\n- Config: recovery_region_suffixes / RecoveryRegionSuffixes, self_heal_recovered_keys / SelfHealRecoveredKeys, RECOVERY_REGION_SUFFIXES / SELF_HEAL_RECOVERED_KEYS env.",
          "is_bot": false,
          "headline": "Best-effort cross-region decrypt recovery with self-heal (#325)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-06-09T02:54:31Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "159cb9d57df69c90067e0e199c708fad1268cf69",
          "body": "Bump the asherah crate to publish the AwsKms Drop fix (#323) to crates.io.\nThe Rust crate is published at its Cargo.toml version and skipped if that\nversion is already on crates.io, so 0.1.2 -> 0.1.3 is required for the fix\nto reach downstream Rust consumers. Dependent workspace crates use caret\nrequirements (^0.1.x) that already accept 0.1.3.",
          "is_bot": false,
          "headline": "release: asherah 0.1.3 (#324)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-06-05T17:40:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7b876c4ae27de705ba7559531a90f617b6d90ee8",
          "body": "AwsKms::new_async always stores an owned Arc<Runtime>, and AwsKms had no\nDrop impl. Dropping a tokio Runtime performs a blocking shutdown of its\nworker/blocking pools, which panics with \"Cannot drop a runtime in a\ncontext where blocking is not allowed\" when it happens inside another\nruntime — exactl\n[…]\n a background thread via shutdown_background();\noutside a runtime the normal blocking drop is safe. Add a regression test\nthat builds AwsKms via new_async and drops it inside a #[tokio::test]\nruntime.",
          "is_bot": false,
          "headline": "fix(kms): shut down owned tokio runtime in background on drop (#323)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-06-05T16:48:26Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6a8f3c29ba55709131025950f18cc394f9ef025e",
          "body": "…#322)\n\ncreate_intermediate_key (sync + async) tried store-then-load_latest exactly\nonce. When expire_key_after_s is close to create_date_precision_s, a\nconcurrent first-encrypt burst can straddle the expiry boundary: a thread\nthat loses the store race then load_latest's an IK that has just expired,\n[…]\n2 in\npractice). Cold path only; the valid-IK hot path is unchanged.\n\nVerified: fmt, clippy -D warnings, scripts/test.sh --unit, and 40x stress of\nconcurrent_rotation_multiple_cycles all green locally.",
          "is_bot": false,
          "headline": "Fix flaky IK creation race under tight expiry (concurrent_rotation) (…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-06-05T15:38:25Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f570805ba1f5faab1f054f6c3656e7ccc2e920a2",
          "body": "* Fix CI to run all Ruby tests\n\n* Set Ruby version to 0.0.0.dev for git-sourced usage to clearly show it's a dev build\n\n* Publish to RubyGems\n\n* Remove unnecessary permissions\n\n* Install bundler in test.sh when missing\n\n* Enable bundler-cache in ruby/setup-ruby CI step for faster runs\n\n* Update inst\n[…]\nfore\nthe version bump on any real failure so a version is never silently skipped.\n\n---------\n\nCo-authored-by: Dalibor Nasevic <dalibor.nasevic@gmail.com>\nCo-authored-by: Jay Gowdy <jgowdy@godaddy.com>",
          "is_bot": false,
          "headline": "Run all Ruby tests in CI and publish to RubyGems (#321)",
          "author_name": "Dalibor Nasevic",
          "author_login": "dnasevic-godaddy",
          "committed_at": "2026-06-05T14:09:56Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "516fef33734618a4930486e2cd18ea44418931e5",
          "body": "Add blocking: true to asherah_set_log_hook, asherah_clear_log_hook,\nasherah_set_metrics_hook, and asherah_clear_metrics_hook FFI declarations.\n\nThese functions may drop the old AsyncLogSink/AsyncMetricsSink, whose Drop\nimpl joins the async dispatcher worker thread. That worker thread needs the\nGVL t\n[…]\ness.\n\nObserved as hooks_test.rb hanging after 5 tests (when teardown's\nclear_*_hook races with an in-flight callback on the worker thread).\n\nCo-authored-by: Dalibor Nasevic <dalibor.nasevic@gmail.com>",
          "is_bot": false,
          "headline": "Fix GVL deadlock in Ruby hook set/clear FFI calls (#320)",
          "author_name": "Dalibor Nasevic",
          "author_login": "dnasevic-godaddy",
          "committed_at": "2026-06-04T15:55:04Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "30a0e91d1eaedb8170de7a8ffed3a1ef4680e7cf",
          "body": "* Bump hardware-enclave to 0.2.0\n\n* ci: re-trigger after fmt fix",
          "is_bot": false,
          "headline": "Bump hardware-enclave to 0.2.0",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-06-03T19:05:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e6c4f3805b20a793d754a2261f9eda31517f7aa3",
          "body": "* Replace asherah memguard/memcall with hardware-enclave memory primitives\n\nDeletes ~1900 lines of bespoke memory protection code that was ported\nto hardware-enclave v0.1.3, replacing it with a direct dependency on\nthe canonical implementation.\n\nDeleted (implementations now in hardware-enclave):\n- a\n[…]\nirtualLock/VirtualProtect are available in memory-only builds on Windows.\nTemporary [patch.crates-io] until 0.1.5 is published.\n\n* Remove [patch.crates-io]: hardware-enclave 0.1.5 is live on crates.io",
          "is_bot": false,
          "headline": "Replace asherah memguard/memcall with hardware-enclave memory primitives",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-06-03T08:26:34Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b096a8cac8da53f6afb76db4558092685b03a2d8",
          "body": "Previously publish-crates.yml only ran on a GitHub release or a manual\nworkflow_dispatch, so a merged version bump did not reach crates.io without a\nhuman trigger. Add a push:main trigger (paths-filtered to Cargo.toml / this\nworkflow) and make publishing idempotent: each crate is published only when\n[…]\ne or more crates publishes exactly those. release and\nworkflow_dispatch (with the dry-run input) remain as alternative triggers.\ncargo publish stays the ultimate guard against an accidental overwrite.",
          "is_bot": false,
          "headline": "ci: auto-publish crates on merge to main (idempotent) (#314)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-06-03T08:04:41Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "57de727d03ca246b904c461445b885a8af990d01",
          "body": "Bumps [astral-tokio-tar](https://github.com/astral-sh/tokio-tar) from 0.6.1 to 0.6.2.\n- [Release notes](https://github.com/astral-sh/tokio-tar/releases)\n- [Changelog](https://github.com/astral-sh/tokio-tar/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/astral-sh/tokio-tar/compare/v0.6.1...v0\n[…]\ntar\n  dependency-version: 0.6.2\n  dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump astral-tokio-tar from 0.6.1 to 0.6.2 (#309)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-03T07:15:21Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "513ef9a1b174a24af568b9f22fc6c9e586ec1788",
          "body": "….1.1 (#312)\n\nVersion bump so the new async surface from #311 (MultiKms async overrides,\nPublicSession async store/load + the StorerAsync/LoaderAsync user traits) can\nbe published to crates.io. The three dependent crates are bumped in lockstep\nand their internal version requirements updated to 0.1.2/0.5.2 so the\npublish-crates workflow publishes all four cleanly (crates.io rejects\nre-publishing an unchanged version).\n\nNo code changes — versions and inter-crate requirements only.",
          "is_bot": false,
          "headline": "Release: asherah 0.1.2 (async API), config 0.1.2, cobhan 0.5.2, ffi 0…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-06-03T07:01:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5e4e503c570a09a0385385fcfae615bb67103b34",
          "body": "…ync store/load) (#311)\n\n* Complete the async API surface for direct async-Rust consumption\n\nAsync (tokio) consumers — e.g. an axum server — must avoid the sync API,\nwhich bridges to the async AWS SDK via block_in_place(rt.block_on(..)): that\npanics on a current-thread runtime and blocks a worker th\n[…]\nc/load_async futures:\n  the surface exists for multi-threaded async servers, so the futures must\n  stay Send; this catches a non-Send-capture regression here instead of at\n  a downstream tokio::spawn.",
          "is_bot": false,
          "headline": "Complete the async API surface (MultiKms async overrides + session as…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-06-03T06:20:31Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3daff5d7c48f86859faca9bc64ebbb2a29ba8d3e",
          "body": "The Rust crates (asherah, asherah-config, asherah-ffi, asherah-cobhan)\nwere hand-published to crates.io on 2026-05-12. The repo had publish\nworkflows for npm/PyPI/NuGet/Maven/RubyGems but none for crates.io.\n\nThis adds .github/workflows/publish-crates.yml to automate future\nreleases, publishing the crates in dependency order:\nasherah -> asherah-config -> asherah-cobhan -> asherah-ffi.\n\nCo-authored-by: Jay Gowdy <jay@godaddy.com>",
          "is_bot": false,
          "headline": "Add crates.io publish workflow (#310)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-06-02T20:34:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7750684983c1fe2d5409f96f9bdebd109d9fb23a",
          "body": "…297)\n\nBumps org.slf4j:slf4j-simple from 2.0.17 to 2.0.18.\n\n---\nupdated-dependencies:\n- dependency-name: org.slf4j:slf4j-simple\n  dependency-version: 2.0.18\n  dependency-type: direct:development\n  update-type: version-update:semver-patch\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps-dev): bump org.slf4j:slf4j-simple in /asherah-java/java (#…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-05-27T01:46:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "261bc05bf45ba5ea4b76b052a3f5260c2bd50f52",
          "body": "…tes (#308)\n\nBumps the rust-minor group with 6 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [serde_json](https://github.com/serde-rs/json) | `1.0.149` | `1.0.150` |\n| [log](https://github.com/rust-lang/log) | `0.4.29` | `0.4.30` |\n| scc | `3.7.0` | `3.7.1` |\n| [openssl]\n[…]\n version-update:semver-patch\n  dependency-group: rust-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump the rust-minor group across 1 directory with 7 upda…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-05-27T01:27:31Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "460b2cca21a89fc0c5ff09b05e6db82ed6b8d114",
          "body": "… (#307)\n\nBumps the actions group with 6 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [ruby/setup-ruby](https://github.com/ruby/setup-ruby) | `1.307.0` | `1.310.0` |\n| [taiki-e/install-action](https://github.com/taiki-e/install-action) | `2.77.6` | `2.79.8` |\n| [docker/\n[…]\npe: version-update:semver-minor\n  dependency-group: actions\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump the actions group across 1 directory with 6 updates…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-05-27T01:27:18Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e79ba784b38712040837952c22113ed83f85d1d7",
          "body": "Bumps org.slf4j:slf4j-api from 2.0.17 to 2.0.18.\n\n---\nupdated-dependencies:\n- dependency-name: org.slf4j:slf4j-api\n  dependency-version: 2.0.18\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump org.slf4j:slf4j-api in /asherah-java/java (#298)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-05-27T01:27:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "af77ca8930460deed11774c440286cc11dee1f7f",
          "body": "* Add Ruby PHP and FFI foreign DRR tests\n\n* Clarify binding migration compatibility",
          "is_bot": false,
          "headline": "Clarify binding migration compatibility (#306)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-21T21:41:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "47d188c963e0206c2acba5ec65863a7bf8de8cad",
          "body": null,
          "is_bot": false,
          "headline": "Add Ruby PHP and FFI foreign DRR tests (#305)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-21T05:45:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bc99dc347a19482e49cb870c0102f173b266d86b",
          "body": null,
          "is_bot": false,
          "headline": "Add Node and Go foreign DRR session tests (#303)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-21T05:40:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "90ccca1306fb2dd16b00f07d7b66af307d15b92e",
          "body": null,
          "is_bot": false,
          "headline": "Add Java and .NET foreign DRR session tests (#304)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-21T05:34:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "30a8b1b88ed83628be0a8eea78cdafbff5736acb",
          "body": null,
          "is_bot": false,
          "headline": "Fix Python SessionFactory explicit config (#302)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-21T05:27:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fc91be99f8fcd0ef1e6fc1b3cdf7c54af931e9f8",
          "body": null,
          "is_bot": false,
          "headline": "java: fallback native extraction dirs for SELinux/noexec (#296)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-14T15:53:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dba0068a7693a4787d04f04af701ce6ae299c49a",
          "body": null,
          "is_bot": false,
          "headline": "ci(maven): keep java publishes on 0.50.x track (#295)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-14T14:16:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5b3a463296cd971167f1732e971110a9efdff362",
          "body": null,
          "is_bot": false,
          "headline": "docs(java): clarify compat vs jni API migration (#294)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-14T02:39:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ce209a3d79659be08fe57350e5e85e538936c123",
          "body": null,
          "is_bot": false,
          "headline": "java: map compat JDBC pool settings to native config (#293)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-14T01:27:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "345023379caca4b3fd33b4c78bfea20e40b4c3be",
          "body": null,
          "is_bot": false,
          "headline": "ci: auto-create asherah-go release tag (#292)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-13T23:55:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8ea56bbba8140e5dadcea9550afc7b643e57c26e",
          "body": null,
          "is_bot": false,
          "headline": "Align Java coordinates/docs and auto-publish Central on release (#291)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-13T22:35:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1b5c9eadf5f8ec978dc82a2a6723751feda86e85",
          "body": "* Fix Maven Central credentials settings generation\n\n* Publish GPG key to keyservers before Central deploy\n\n* Add timeouts to keyserver publication step",
          "is_bot": false,
          "headline": "Fix Maven Central credential + keyserver handling (#290)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-13T21:56:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "26019a55d3fa846bd51b5ce9334565962691d7c0",
          "body": null,
          "is_bot": false,
          "headline": "Configure Java publish for Maven Central namespace (#289)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-13T21:08:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d20d8272516b97da44df7bd4806408d632afce4a",
          "body": "chore: document crates.io publishing metadata",
          "is_bot": false,
          "headline": "Merge pull request #288 from godaddy/recover/published-crates-work",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-13T00:37:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "56d6eb7a0ac32808d98ded1ff354137806ce6b24",
          "body": null,
          "is_bot": false,
          "headline": "chore: mark language binding crates private",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-13T00:01:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6eae904cc311fce3cd13700d142119be79e9d203",
          "body": null,
          "is_bot": false,
          "headline": "docs: trim published crates whitespace",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-12T23:57:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2852831eb9829b68ae946d83da484043da1ad9f8",
          "body": null,
          "is_bot": false,
          "headline": "Clarify: language binding crates NOT published to crates.io",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-12T23:57:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "436b1a414231b2cc73520cf13c533b9e77349b28",
          "body": null,
          "is_bot": false,
          "headline": "Clarify crate hierarchy: asherah for Rust, asherah-ffi for bindings",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-12T23:57:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c21cb4c53705e122da8e3cfd08d3049ba3fd374a",
          "body": "- Add version specs to all internal dependencies\n- Fix invalid \"ffi\" category (use \"api-bindings\")\n- Prepare for publishing language bindings\n\nPublished: asherah, asherah-config, asherah-cobhan, asherah-ffi\nPending: asherah-node, asherah-py, asherah-java (rate limited)\n\nCo-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Add version requirements for crates.io publishing",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-12T23:57:53Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "f8dd3096b5da53b203d47da3ac1fc4dda67306b1",
          "body": "…s-98bed8d410\n\nchore(deps): bump the actions group with 2 updates",
          "is_bot": false,
          "headline": "Merge pull request #286 from godaddy/dependabot/github_actions/action…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-12T23:54:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f94a693dc02b68e5c4548d08932585ed59bf1102",
          "body": "…5f277f\n\nchore(deps): bump tokio from 1.52.2 to 1.52.3 in the rust-minor group",
          "is_bot": false,
          "headline": "Merge pull request #285 from godaddy/dependabot/cargo/rust-minor-d7fe…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-12T23:54:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c67a1e5681e1e819c6e45c5b748b07d72996f561",
          "body": null,
          "is_bot": false,
          "headline": "fix(php): publish after native release assets",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-12T22:51:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cabedd004ede3e91f9746ca20c5275780b83c42e",
          "body": "Bumps the actions group with 2 updates: [ruby/setup-ruby](https://github.com/ruby/setup-ruby) and [taiki-e/install-action](https://github.com/taiki-e/install-action).\n\n\nUpdates `ruby/setup-ruby` from 1.306.0 to 1.307.0\n- [Release notes](https://github.com/ruby/setup-ruby/releases)\n- [Changelog](http\n[…]\naction\n  dependency-version: 2.77.6\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: actions\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump the actions group with 2 updates",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-05-12T07:44:40Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f9a39974a1cf1584c468b47ba4a8c28d0f93394a",
          "body": "Bumps the rust-minor group with 1 update: [tokio](https://github.com/tokio-rs/tokio).\n\n\nUpdates `tokio` from 1.52.2 to 1.52.3\n- [Release notes](https://github.com/tokio-rs/tokio/releases)\n- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.52.2...tokio-1.52.3)\n\n---\nupdated-dependencies:\n- \n[…]\nkio\n  dependency-version: 1.52.3\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: rust-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump tokio from 1.52.2 to 1.52.3 in the rust-minor group",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-05-12T07:44:20Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0a37bb80fe4ce9c98637729ddd58deffc6fa839e",
          "body": "* feat(php): add DataRowRecord typed API alongside string methods\n\nAdd strongly-typed DataRowRecord class for encrypted data while keeping\nthe simple string-based API methods. Both APIs are fully supported:\n\nString API (simple):\n- encryptString()/decryptString() - returns/accepts JSON strings\n- encr\n[…]\ne typed API\n\nBoth APIs match patterns from other language bindings. Use string API\nfor simplicity or typed API when metadata inspection is needed.\n\n* fix(php): apply code style fixes for DataRowRecord",
          "is_bot": false,
          "headline": "feat(php): add DataRowRecord typed API alongside string methods (#284)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-12T00:15:11Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "79057782fe3711c7b188778b7a4e290dd9c8e25d",
          "body": null,
          "is_bot": false,
          "headline": "docs(php): update README for Packagist availability (#283)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-11T20:25:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d065c2baf60c4655dad550339ba9e7e78c89c637",
          "body": "…es (#282)\n\n* fix(metastore): insert into by_key before updating latest to prevent data race\n\nMiri detected a data race in concurrent_store_load_latest_invariant where\nload_latest could observe a `created` timestamp in the `latest` map before\nthe corresponding key was inserted into `by_key`.\n\nRace s\n[…]\nsitor with iter_sync() (closure returns bool to continue).\nMigrate all call sites in cache.rs, metastore.rs, and session_cache.rs.\n\n---------\n\nCo-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(deps): upgrade scc 2→3 to resolve Miri and ThreadSanitizer failur…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-09T22:15:09Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "cc4557fe1b284418f997bebbd9b3f2d0b23cfba7",
          "body": "… (#255)\n\nBumps the actions group with 2 updates in the / directory: [taiki-e/install-action](https://github.com/taiki-e/install-action) and [github/codeql-action](https://github.com/github/codeql-action).\n\n\nUpdates `taiki-e/install-action` from 2.75.23 to 2.77.1\n- [Release notes](https://github.com\n[…]\npe: version-update:semver-minor\n  dependency-group: actions\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump the actions group across 1 directory with 2 updates…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-05-09T01:49:32Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ead5cb0a1380bcc54f658bd345028a9dd73d3a94",
          "body": "Bumps [astral-tokio-tar](https://github.com/astral-sh/tokio-tar) from 0.6.0 to 0.6.1.\n- [Release notes](https://github.com/astral-sh/tokio-tar/releases)\n- [Changelog](https://github.com/astral-sh/tokio-tar/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/astral-sh/tokio-tar/compare/v0.6.0...v0\n[…]\ntar\n  dependency-version: 0.6.1\n  dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump astral-tokio-tar from 0.6.0 to 0.6.1 (#259)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-05-09T01:49:29Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "bc45e565015ca15bb1179acc4a04e7714d0afb59",
          "body": "Bumps [openssl](https://github.com/rust-openssl/rust-openssl) from 0.10.78 to 0.10.79.\n- [Release notes](https://github.com/rust-openssl/rust-openssl/releases)\n- [Commits](https://github.com/rust-openssl/rust-openssl/compare/openssl-v0.10.78...openssl-v0.10.79)\n\n---\nupdated-dependencies:\n- dependenc\n[…]\ndency-version: 0.10.79\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump openssl from 0.10.78 to 0.10.79 (#260)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-05-09T01:49:26Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1c35e0810000e0c4a1dd7c00ca43259000c63fe1",
          "body": "…tes (#270)\n\nBumps the rust-minor group with 8 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [tokio](https://github.com/tokio-rs/tokio) | `1.52.1` | `1.52.2` |\n| [openssl](https://github.com/rust-openssl/rust-openssl) | `0.10.78` | `0.10.79` |\n| [napi](https://github.com\n[…]\n version-update:semver-patch\n  dependency-group: rust-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump the rust-minor group across 1 directory with 8 upda…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-05-09T01:49:18Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3afef7342ae389874ba5fa1037a3a77d8ccb2438",
          "body": "…data race (#281)\n\nMiri detected a data race in concurrent_store_load_latest_invariant where\nload_latest could observe a `created` timestamp in the `latest` map before\nthe corresponding key was inserted into `by_key`.\n\nRace scenario with wrong order:\n  T1: store(k, 100): update latest[k] = 100\n  T2:\n[…]\nreads the timestamp.\n\nThis was caught by the sanitizers job added in #279 which now runs Miri on\nconcurrent tests including cache_concurrent.\n\nCo-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(metastore): insert into by_key before updating latest to prevent …",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-09T01:24:30Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "47a043b317636d8651196a1cb103d43d5d019c9f",
          "body": "Adds asherah/features/rotation_parity.feature with two scenarios:\n- Rust decrypts both pre- and post-rotation DRRs encrypted by Node\n- Node decrypts both pre- and post-rotation DRRs encrypted by Rust\n\ngen.js takes an optional ExpireAfter argument (CLI position 7) so\nboth languages can configure shor\n[…]\nep impls for\nencrypt-with-expire (both languages), wait-for-rotation, and the\npre/post decrypt asserts. The IK-strictly-newer assertion compares\ndrr.key.parent_key_meta.created across the two bundles.",
          "is_bot": false,
          "headline": "test(cucumber): cross-language rotation parity scenarios (#280)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-08T21:15:15Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1b61ecaf6a8272dc08447bfc55bc71d8cf23ad85",
          "body": "…tize] (#279)\n\nThe existing sanitizers job runs ASAN + Miri + Valgrind on\n`asherah --lib` and `asherah-cobhan --lib` only. The rotation\nintegration tests — which use atomics, single-flight CAS in\nSimpleKeyCache::try_claim_reload_*, and barrier-synchronized\nmulti-thread bursts — never ran under any s\n[…]\nable) or fall back to\nthe existing sanitizer Docker image. --test-threads=1 keeps wall-clock\nrotation expectations from racing each other.\n\n[sanitize] tag triggers the gated sanitizers job on this PR.",
          "is_bot": false,
          "headline": "ci(sanitizers): run rotation tests under ASAN + ThreadSanitizer [sani…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-08T20:34:36Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6d9ff343ae49da0e36c7d5bc8512fb6a383953b9",
          "body": "asherah-ruby had zero rotation tests. rotation_test.rb mirrors the\nasherah-node, asherah-py, asherah-java, asherah-dotnet, and\nasherah-go rotation suites:\n\n- test_sync_rotation_across_expiry: Asherah.encrypt rotates IK\n  across expiry; both DRRs round-trip.\n- test_async_rotation_across_expiry: encry\n[…]\ncrypts.\n\nHermetic config: Metastore=memory + KMS=test-debug-static, ExpireAfter\n+ CheckInterval = 1. Verifies the precision clamp from #272\npropagates through ruby-ffi.\n\nAll 4 tests pass via minitest.",
          "is_bot": false,
          "headline": "test(ruby): rotation, revocation, sync↔async interop tests (#277)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-08T19:53:21Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b4904c3e6cf8b66e30015125e12c8c044b750bb5",
          "body": "asherah-php had zero rotation tests. RotationTest mirrors the other\nbinding suites (PHP has no async API — sync only):\n\n- testSyncRotationAcrossExpiry: encryptString rotates IK across expiry.\n- testMultipleRotationCycles: 3 sequential rotation cycles.\n- testHistoricalDrrsDecryptAfterRotation: 5 pre-\n[…]\nion.\n\nHermetic: Metastore=memory + KMS=test-debug-static, ExpireAfter +\nCheckInterval = 1. Verifies the precision clamp from #272 propagates\nthrough PHP FFI marshalling.\n\nAll 3 tests pass via PHPUnit.",
          "is_bot": false,
          "headline": "test(php): rotation tests for asherah-php (#278)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-08T19:48:05Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8dae7414d66d0346da8437ad952d6cec061c16fc",
          "body": "asherah-go had zero rotation tests. rotation_test.go mirrors the\nother binding suites (Go has no separate async API — goroutines +\nsync calls cover concurrent use):\n\n- TestSyncRotationAcrossExpiry: EncryptString rotates IK across expiry.\n- TestMultipleRotationCycles: 3 sequential rotation cycles; ev\n[…]\ntore=memory, KMS=test-debug-static, ExpireAfter\n+ CheckInterval = 1s. Verifies the precision clamp from #272\npropagates correctly through purego's loadlibrary/dlsym FFI.\n\nAll 3 tests pass via go test.",
          "is_bot": false,
          "headline": "test(go): rotation, concurrent rotation tests for asherah-go (#276)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-08T19:47:52Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2bd0624ab61769f3b81f042c419830f2291b74b7",
          "body": "asherah-dotnet had zero rotation tests. RotationTests mirrors\nasherah-node, asherah-py, and asherah-java coverage:\n\n- SyncRotationAcrossExpiry: AsherahApi.EncryptString rotates IK across\n  expiry; both DRRs round-trip.\n- AsyncRotationAcrossExpiry: EncryptAsync/DecryptAsync (Task) rotate\n  the same w\n[…]\nKind.Memory + KmsKind.TestDebugStatic.\nVerifies the precision clamp from #272 propagates correctly through\nthe .NET P/Invoke (cobhan FFI) marshalling.\n\nAll 4 tests pass on both net8 and net10 targets.",
          "is_bot": false,
          "headline": "test(dotnet): rotation, revocation, sync↔async interop tests (#275)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-08T19:47:41Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "07aca05a1047f4ecd85f1f77a2132f549fa3e8d9",
          "body": "asherah-java had zero rotation tests. AsherahRotationTest mirrors\nthe Node and Python coverage:\n\n- syncRotationAcrossExpiry: Asherah.encryptString rotates IK across expiry.\n- asyncRotationAcrossExpiry: encryptAsync/decryptAsync (CompletableFuture)\n  rotate the same way.\n- syncAsyncInteropAfterRotati\n[…]\n DRR still decrypts.\n\nHermetic config: metastore='memory', kms='test-debug-static'.\nVerifies the precision clamp from #272 propagates through JNI.\n\nAll 4 tests pass via mvn -Dtest=AsherahRotationTest.",
          "is_bot": false,
          "headline": "test(java): rotation, revocation, sync↔async interop tests (#274)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-08T19:47:27Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "cb93def85c894fd27d96e9e9a944b622f21e55d7",
          "body": "…py (#273)\n\nasherah-py had zero rotation/revocation tests — test_roundtrip.py\nonly checked happy-path encrypt/decrypt. Mirrors the asherah-node\ntest/rotation.js coverage:\n\n- test_sync_rotation_across_expiry: sync encrypt rotates IK across\n  expiry, both DRRs round-trip.\n- test_async_rotation_across_\n[…]\nest-debug-static'.\nVerifies the precision clamp landed in #272 propagates correctly\nthrough PyO3 / pyproject FFI.\n\nAll 4 tests pass locally with the fresh asherah-py build (maturin\ndevelop --release).",
          "is_bot": false,
          "headline": "test(py): rotation, revocation, sync↔async interop tests for asherah-…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-08T19:15:23Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e348bfcacf73612abe7be39f9d7f6079174e817a",
          "body": "…ode rotation tests (#272)\n\n* fix(config): auto-clamp create_date_precision_s to short expiries\n\nFootgun discovered by tests/rotation_timing_edges.rs: when an operator\nsets `expire_after` < the default precision (60s), the engine cannot\nrotate the IK within a precision window and `encrypt` fails the\n[…]\ntputs and falling back to the\nartifact-staged `npm/asherah.node` (or platform subdir). This\nensures the test always exercises the binary built from the current\nsource, not whatever's published on npm.",
          "is_bot": false,
          "headline": "fix(config): auto-clamp create_date_precision_s to short expiries + N…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-08T17:33:22Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "01b263f9a80c8f27bf435c2a6a7597bad27734b8",
          "body": "…on (#271)\n\nTwo clusters of edge cases that previously had no coverage.\n\n## Time-precision boundary\n\n`Session::new_key_timestamp` rounds new-key timestamps to\n`create_date_precision_s`-aligned buckets. The interaction with\n`expire_key_after_s` and the metastore's `(id, created)` primary\nkey produced\n[…]\ntion.\n- old_drr_decrypts_via_exact_sk_meta_after_rotation: forces a cold\n  SK cache to confirm decrypt walks IK→exact-SK-meta rather than\n  load_latest.\n\n7 tests, all pass. cargo clippy --tests clean.",
          "is_bot": false,
          "headline": "test(rotation): time-precision boundary + simultaneous SK+IK expirati…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-08T05:35:02Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "97a444b677c91020a950b3711eeaa58e8fbd72fe",
          "body": "…ath (#269)\n\n`PublicSession::encrypt_async` / `decrypt_async` go through a parallel\nimplementation at session.rs:1054-1340 with its own\nget_or_load_system_key_async, load_intermediate_key_async,\nload_latest_or_create_intermediate_key_async, and\ncreate_intermediate_key_async — distinct code from the \n[…]\n covering all\n  combinations of sync/async encrypt × sync/async decrypt across a\n  rotation boundary)\n- async_ik_cache_ttl_reload\n- async_cascading_revocations\n\nAll 8 pass; cargo clippy --tests clean.",
          "is_bot": false,
          "headline": "test(async): rotation, revocation, race-loss coverage for the async p…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-08T04:29:09Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1029d2b887391a522aae6a5b55bea82037b4fccf",
          "body": "…ant (#268)\n\nThe single property that distinguishes a working envelope-encryption\nlibrary from a broken one is: any DRR ever returned by encrypt() must\ndecrypt to its original plaintext at any later point, regardless of\nintervening rotations / revocations / cache TTL events.\n\nHand-written tests exer\n[…]\netic execution; same shape as\n  the existing rotation/revocation tests.\n- Adds proptest 1.5 as a dev-dependency.\n\nAll 48 random traces + the explicit-trace smoke test pass.\ncargo clippy --tests clean.",
          "is_bot": false,
          "headline": "test(rotation): property-based test for the every-DRR-decrypts invari…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-08T03:35:10Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "76d636e164937a4671e1b6a0a6b8b99e3afd21e5",
          "body": "…B (#267)\n\n`tests/revocation.rs` exercises revocation against `InMemoryMetastore`.\n`tests/integration_containers.rs` had rotation parity for Postgres,\nMySQL, and DynamoDB but no revocation parity. This closes that gap by\nadding three tests that mark an IK row revoked in the real backend\n(production \n[…]\native-roots\nissue that blocks DDB tests on this macOS dev box also blocks the\npre-existing dynamodb_static_key_rotation locally — DDB tests run in\nthe CI Linux integration-tests job on ubuntu-latest).",
          "is_bot": false,
          "headline": "test(integration): DB-backed revocation parity for PG, MySQL, DynamoD…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-08T02:41:49Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b704b2aaf387faf869822d59ae115aef80d9f896",
          "body": "Add four integration test files filling gaps surfaced during a review of\ntest coverage around the highest-risk moments in the engine — the\nexpiration / rotation / revocation boundaries.\n\n- concurrent_rotation.rs (3 tests): N-thread barrier-synchronized\n  rotation bursts on a single hot partition. As\n[…]\nhe current master key\n  (asserted via a fresh factory + v2-only KMS to bypass the SK\n  cache's plaintext snapshot), and bulk pre/post round-trip.\n\nAll 18 new tests pass; cargo clippy --tests is clean.",
          "is_bot": false,
          "headline": "test: cover key expiration, rotation, and revocation gaps (#266)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-08T01:44:17Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a0f98998f138a4ef8e50ad72337d710e134db2d2",
          "body": null,
          "is_bot": false,
          "headline": "Add root Composer package metadata (#265)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-07T19:25:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "16650dc185887172a7b95718b01e432cec76a4f2",
          "body": "* Explore PHP FFI Composer binding\n\n* docs: add PHP production binding ExecPlan\n\n* Implement PHP binding production hardening slice\n\n* docs: clarify PHP native staging model\n\n* Continue PHP binding production hardening\n\n* Harden PHP session cache parity\n\n* Add PHP AWS opt-in integration coverage\n\n* \n[…]\nheader generation\n\n* Fix PHP CI artifact loading\n\n* Resolve PHP native artifact path in CI\n\n* Prefer PHP FFI artifact in CI\n\n* Fix PHP source dry-run artifact path\n\n* Fix PHP source dry-run chmod path",
          "is_bot": false,
          "headline": "Explore PHP FFI Composer binding (#261)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-07T18:23:54Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6eaeff4bbc7eb6f375398b73f753721cf85ca877",
          "body": "* fix(kms): make static and test-debug-static exact synonyms\n\nThe hotfix at 9049fa4 made KMS=static reject empty StaticMasterKeyHex\nand added KMS=test-debug-static as a separate kind that auto-supplies\nthe publicly known test key. That diverged the two identifiers and\nbroke interop with the canonica\n[…]\nfter\nthe variant is confirmed. The new shape keeps the same coverage\n(KmsConfig::Static expected; key_hex equals TEST_DEBUG_STATIC_MASTER_KEY_HEX)\nwithout materialising the secret in any failure path.",
          "is_bot": false,
          "headline": "fix(kms): make static and test-debug-static exact synonyms (#262)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-07T16:57:17Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5c544646540a99161bb1e75339223ba50ba81ef0",
          "body": "…s (#264)\n\nThree drop-in compatibility regressions vs the canonical\ngithub.com/godaddy/asherah Go reference server, surfaced by a PHP\nconsumer migrating from the Go binary to asherah-server, plus\ndocumentation work to make the gRPC use case discoverable on par with\nthe in-process language bindings.\n\n[…]\nverage:\n- asherah-server: 14 lib + 9 bin + 12 e2e + 22 integration + 11 unit_tests\n  = 68 tests, all green\n- asherah crate (mysql features): 68 tests, all green\n- workspace clippy --all-targets: clean",
          "is_bot": false,
          "headline": "docs(server): comprehensive gRPC-sidecar README + drop-in compat fixe…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-07T15:13:59Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b47bd39187e37a26affceae254fc96b8b136031b",
          "body": "fix(server): honor ASHERAH_VERBOSE over RUST_LOG; accept ASHERAH_SOCKET alias",
          "is_bot": false,
          "headline": "Merge pull request #263 from godaddy/fix/grpc-server-logging-compat",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy",
          "committed_at": "2026-05-07T02:40:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "645772ee1dabefc6b245e994218896af39bd4053",
          "body": "…ET alias\n\nThree issues surfaced by a consumer reporting \"no logs from the gRPC\nserver\" running with RUST_LOG=asherah_server=debug ASHERAH_VERBOSE=true\nand ASHERAH_SOCKET=unix:///sock/asherah.sock:\n\n1. ASHERAH_VERBOSE was a no-op when RUST_LOG was set, because\n   env_logger's default_filter_or only \n[…]\npath; 6 new e2e tests\nspawning the binary (3 socket-alias, 3 log-emission, including a\nregression test for the exact consumer config). Total 68 asherah-server\ntests, all green; workspace clippy clean.",
          "is_bot": false,
          "headline": "fix(server): honor ASHERAH_VERBOSE over RUST_LOG; accept ASHERAH_SOCK…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-07T01:26:55Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "487045e1eb5fff734875251c4b7cd23e87638ae4",
          "body": "* fix(builders): reject empty STATIC_MASTER_KEY_HEX for KMS=static\n\nKmsConfig::Static { key_hex: \"\" } previously fell through to the public\ntest key (the ASCII bytes of \"thisIsAStaticMasterKeyForTesting\"). With\nKMS=static being the default when no env var is set, an unconfigured\ndeployment silently \n[…]\nnaming the parity with .NET's ZeroizePlaintext, Go's Zeroize.\ndecrypt() Javadoc spells out the JVM heap residency contract.\n\nasherah-node/npm/index.js + index.d.ts: new public clearPlaintext\n(Buffer …",
          "is_bot": false,
          "headline": "fix: address 2026-05-05 review findings (B+S tier) (#257)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-06T22:15:26Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6ab862ccee043287fa834a066ce86d91122b29f8",
          "body": "* fix(builders): reject empty STATIC_MASTER_KEY_HEX for KMS=static\n\nKmsConfig::Static { key_hex: \"\" } previously fell through to the public\ntest key (the ASCII bytes of \"thisIsAStaticMasterKeyForTesting\"). With\nKMS=static being the default when no env var is set, an unconfigured\ndeployment silently \n[…]\n Connection reset by peer` even after retries. Add two community\n   mirror fallbacks (zigmirror.hryx.net, pkg.machengine.org) so\n   the script tries 3 independent infrastructures × 2 attempts\n   each.",
          "is_bot": false,
          "headline": "Hotfix: critical correctness and security fixes (#258)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-06T19:13:13Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "613ee7f49b05712cd5d2effcbefcbd39ceaf743c",
          "body": "* chore: address actionable CodeQL standard findings\n\nReal fixes for CodeQL maintainability/reliability findings; false\npositives are left alone (interface-method \"unused parameter\" findings,\nintentional FFI-boundary catches that already document why).\n\n* asherah-node/test/e2e-aws.js — drop unused `\n[…]\nofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com>\n\n---------\n\nCo-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore: address actionable CodeQL standard findings (#254)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-04T22:22:58Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "3fffb25edbcb0d7aac8fec2c70045df6ff173d9d",
          "body": "Cherry-pick of the substantive change from AI auto-fix #250. \\`:latest\\`\nsilently shifts whenever HashiCorp publishes a new release, which can\nbreak our integration test in ways unrelated to the code under test.\nPin to 1.15.0 — the same version we've been transitively running.\n\nThe other two changes\n[…]\nadding 'do not\nuse in production' comments to test-only key generation) are dropped:\nthey trade clear, obviously-deterministic test code for a noisier\npseudo-random-looking literal with the same role.",
          "is_bot": false,
          "headline": "test(kms): pin hashicorp/vault test image to 1.15.0 (#253)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-04T20:26:31Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a8c5df21be68370c7dec5cdea878c1a464d5629a",
          "body": "…#252)\n\nThree small robustness fixes to asherah-server, cherry-picked from a\nGitHub AI code-review suggestion:\n\n1. parse_region_map: trim each key and value before insertion, and warn\n   (instead of silently dropping) when the key is empty. Without\n   trimming, an entry like \"REGION1 = ARN1\" would i\n[…]\n\nThe two #[cfg(not(unix))] arms touched by the original suggestion are\nleft alone — they're dead branches because the server unconditionally\nuses tokio::net::UnixListener, which only compiles on Unix.",
          "is_bot": false,
          "headline": "fix(server): trim region-map entries; surface socket-removal errors (…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-04T20:26:27Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "70a1da283a310828ae90fab743076bc455629484",
          "body": "…e (#246)\n\nTwo small test-quality fixes prompted by a GitHub AI code review:\n\n1. AsherahConfigTest used \"prod\" for both productId and the\n   awsProfileName under test, which would make a failure log ambiguous.\n   Use \"test-profile\" for the profile-name fixture.\n\n2. The reviewer asked for ~30 new Ash\n[…]\nontract once\n   (omits null entries, emits string/int/bool/map values, escapes\n   control and quote chars). Existing AsherahConfigTest already proves\n   AsherahConfig wires fields through to JsonUtil.",
          "is_bot": false,
          "headline": "test(java): cover JsonUtil null-omission directly; rename test fixtur…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-04T20:26:23Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "255dd7d7e5fece478c6828cf55ec2fe6ec9e00a3",
          "body": "… (#245)\n\nCodeQL flagged 12 call sites where Path.Combine could silently drop\nearlier arguments if a later argument were absolute. In every case here,\nthe trailing arguments are either string literals (\\\"Cargo.toml\\\",\n\\\"target\\\", \\\"debug\\\"), or values already gated by Path.IsPathRooted\n(benchmarks/d\n[…]\n-path footgun, so the\nanalyzer goes quiet and future callers can't accidentally trip it.\n\nTests: scripts/test.sh --bindings --binding=dotnet\n       (122 + 30 tests, both net8.0 and net10.0, all green)",
          "is_bot": false,
          "headline": "fix(dotnet): use Path.Join over Path.Combine to avoid silent arg drop…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-04T18:18:01Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ba696af46b566d19800655b2202d8a72773ee638",
          "body": "Two small hygiene fixes for CI annotations:\n\n1. Set FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true on every mlugg/setup-zig\n   step (ci.yml x4, publish-npm.yml, release-cobhan.yml). The action's\n   v2.2.1 release and main branch still declare 'using: node20', so\n   pinning a newer SHA is not an option. The\n[…]\n.yml (binding-tests), benchmark-setup.yml, and codeql.yml. The\n   asherah Go module lives in asherah-go/, so the default repo-root\n   lookup fails and emits a \"Dependencies file is not found\" warning.",
          "is_bot": false,
          "headline": "chore(ci): silence Node 20 deprecation and Go cache warnings (#244)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-04T17:03:24Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f4e6423ec59a8ed99a12f8876c07d8358d9a9181",
          "body": "Disable default features on aws-sdk-kms, aws-sdk-dynamodb, and\naws-sdk-secretsmanager and re-enable only \"default-https-client\" and\n\"rt-tokio\". The dropped default feature is \"rustls\", which transitively\nenabled aws-smithy-runtime's tls-rustls -> aws-smithy-http-client's\nlegacy-rustls-ring path: rus\n[…]\nstls 0.21.12, rustls-webpki 0.101.7,\nhyper 0.14.32, hyper-rustls 0.24.2, h2 0.3.27, tokio-rustls 0.24.1, sct.\n\nCloses Dependabot alerts #49, #50, #51, #52, #64, #65 (rustls-webpki\n0.101.7 transitive).",
          "is_bot": false,
          "headline": "chore(deps): drop legacy-rustls feature from AWS SDK crates (#243)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-04T16:42:41Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3a4b37935eaaa81af93e5a549256c3c18123c50f",
          "body": "…s (#242)\n\nLockfile-only updates to address Dependabot alerts:\n\nCargo.lock:\n- rustls-webpki 0.103.11 -> 0.103.13 (GHSA-82j2-j2ch-gfr8 high,\n  GHSA-xgp8-3hg3-c2mh + GHSA-965h-392x-2mh5 low)\n\nfuzz/Cargo.lock:\n- openssl 0.10.75 -> 0.10.78 (GHSA-pqf5-4pqq-29f5, GHSA-8c75-8mhr-p7r9,\n  GHSA-hppc-g8h3-xhp3\n[…]\nsitive rustls-webpki 0.101.7 (via rustls 0.21 from\naws-smithy-http-client legacy-rustls feature) cannot be upgraded - rustls\n0.21 is end-of-line and 0.101.x has no further patches. Tracked separately.",
          "is_bot": false,
          "headline": "chore(deps): bump rustls-webpki, openssl, rand for security advisorie…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-04T15:26:32Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "fe1e8b2b2e8d2e521b6ae3f0ccb3067751447ff8",
          "body": "…n split (#241)\n\nWhen both DynamoDBRegion and DynamoDBSigningRegion were set with\ndifferent values, asherah-config previously collapsed them with\n.or() and used a single value as the SDK Region. The SDK then drove\n*both* endpoint URL resolution and SigV4 signing from that one value,\nsilently routing\n[…]\n's a separate design concern and changing it\nwould alter behavior for existing AWS-KMS deployments.\n\nUpdates the asherah-go production-setup doc to describe the precise\nendpoint resolution precedence.",
          "is_bot": false,
          "headline": "fix(metastore-dynamodb): honor DynamoDBSigningRegion vs DynamoDBRegio…",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-05-01T14:54:48Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5ac6e7792fb9c6fd78e76582587f64d05bcd21f6",
          "body": null,
          "is_bot": false,
          "headline": "Dotnet beta polish (#240)",
          "author_name": "Micco",
          "author_login": "chief-micco",
          "committed_at": "2026-05-01T13:21:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3b0b4482d8e54059c21ea4f15c1bd38633792709",
          "body": "Exposes the existing asherah-config aws_profile_name field through the\ngRPC sidecar so operators can select an AWS shared-credentials profile\nfor KMS, DynamoDB, and Secrets Manager clients. Brings the sidecar to\nparity with the .NET, Node, Python, Java, Ruby, and Go bindings.\n\nWhen unset, the standard AWS credential chain (including AWS_PROFILE)\napplies, matching prior behavior.",
          "is_bot": false,
          "headline": "feat(server): add --aws-profile-name to asherah-server CLI (#239)",
          "author_name": "Jay Gowdy",
          "author_login": "jgowdy-godaddy",
          "committed_at": "2026-04-30T20:25:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 100,
      "commits_last_year": 667,
      "latest_release_at": "2026-06-19T20:17:42Z",
      "latest_release_tag": "v1.0.0",
      "releases_from_tags": false,
      "days_since_last_push": 6,
      "active_weeks_last_year": 25,
      "days_since_latest_release": 37,
      "mean_days_between_releases": 3.2
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 75,
      "has_issue_template": false,
      "has_code_of_conduct": true,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": [
        {
          "name": "godaddy/asherah",
          "exists": true,
          "license": "Apache-2.0",
          "keywords": [
            "encryption",
            "kms",
            "ffi",
            "envelope-encryption",
            "asherah"
          ],
          "ecosystem": "packagist",
          "matches_repo": true,
          "registry_url": "https://packagist.org/packages/godaddy/asherah",
          "is_deprecated": false,
          "latest_version": "v1.0.0",
          "repository_url": "https://github.com/godaddy/asherah-ffi",
          "versions_count": 19,
          "total_downloads": 66,
          "dependents_count": 0,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": 10,
          "first_published_at": null,
          "latest_published_at": "2026-06-19T20:17:34Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 37
        },
        {
          "name": "github.com/godaddy/asherah-ffi/asherah-go",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "go",
          "matches_repo": true,
          "registry_url": "https://pkg.go.dev/github.com/godaddy/asherah-ffi/asherah-go",
          "is_deprecated": false,
          "latest_version": "v1.0.0",
          "repository_url": "https://github.com/godaddy/asherah-ffi",
          "versions_count": 14,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-06-19T20:17:34Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 37
        },
        {
          "name": "asherah",
          "exists": true,
          "license": "Apache-2.0",
          "keywords": [
            "asherah",
            "encryption",
            "kms",
            "secrets",
            "security",
            "cryptography",
            "config",
            "memory-management"
          ],
          "ecosystem": "crates",
          "matches_repo": true,
          "registry_url": "https://crates.io/crates/asherah",
          "is_deprecated": false,
          "latest_version": "1.0.0",
          "repository_url": "https://github.com/godaddy/asherah-ffi",
          "versions_count": 4,
          "total_downloads": 2247,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": 749,
          "first_published_at": "2026-05-12T19:14:28.913545Z",
          "latest_published_at": "2026-06-19T20:19:00.460536Z",
          "latest_version_yanked": false,
          "days_since_latest_publish": 37
        },
        {
          "name": "asherah-ffi",
          "exists": true,
          "license": "Apache-2.0",
          "keywords": [
            "asherah",
            "encryption",
            "ffi",
            "kms",
            "api-bindings",
            "cryptography",
            "memory-management"
          ],
          "ecosystem": "crates",
          "matches_repo": true,
          "registry_url": "https://crates.io/crates/asherah-ffi",
          "is_deprecated": false,
          "latest_version": "1.0.0",
          "repository_url": "https://github.com/godaddy/asherah-ffi",
          "versions_count": 3,
          "total_downloads": 48,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": 16,
          "first_published_at": "2026-05-12T19:15:18.371529Z",
          "latest_published_at": "2026-06-19T20:22:43.828047Z",
          "latest_version_yanked": false,
          "days_since_latest_publish": 37
        }
      ]
    },
    "popularity": {
      "forks": 1,
      "stars": 0,
      "watchers": 0,
      "fork_history": {
        "days": [
          {
            "date": "2026-03-16",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 1,
        "total_forks": 1
      },
      "star_history": {
        "days": [],
        "complete": true,
        "collected": 0,
        "total_stars": 0,
        "collected_at": null
      },
      "open_issues_and_prs": 11
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "examples",
        "samples"
      ],
      "has_llms_txt": false,
      "has_dockerfile": true,
      "has_mcp_signal": false,
      "bootstrap_files": [],
      "api_schema_files": [
        "asherah-server/proto/appencryption.proto",
        "interop-grpc/client/proto/appencryption.proto"
      ],
      "has_devcontainer": false,
      "typecheck_configs": [
        "asherah-py/asherah/py.typed"
      ],
      "toolchain_manifests": [
        "Cargo.toml",
        "asherah-cobhan/Cargo.toml",
        "asherah-cobhan/interop/go.mod",
        "asherah-config/Cargo.toml",
        "asherah-dotnet/src/GoDaddy.Asherah.Encryption.Compat/GoDaddy.Asherah.Encryption.Compat.csproj",
        "asherah-dotnet/src/GoDaddy.Asherah.Encryption/GoDaddy.Asherah.Encryption.csproj",
        "asherah-dotnet/tests/GoDaddy.Asherah.Encryption.Compat.Tests/GoDaddy.Asherah.Encryption.Compat.Tests.csproj",
        "asherah-dotnet/tests/GoDaddy.Asherah.Encryption.Tests/GoDaddy.Asherah.Encryption.Tests.csproj",
        "asherah-ffi/Cargo.toml",
        "asherah-go/go.mod",
        "asherah-java/Cargo.toml",
        "asherah-java/java/pom.xml",
        "asherah-node/Cargo.toml",
        "asherah-py/Cargo.toml",
        "asherah-server/Cargo.toml",
        "asherah/Cargo.toml",
        "benchmarks/asherah-bench/Cargo.toml",
        "benchmarks/dotnet-bench-canonical/dotnet-bench-canonical.csproj",
        "benchmarks/dotnet-bench-newmetastore/dotnet-bench-newmetastore.csproj",
        "benchmarks/dotnet-bench/dotnet-bench.csproj",
        "benchmarks/go-bench/go.mod",
        "benchmarks/go-wrapper/go.mod",
        "benchmarks/grpc-bench/go.mod",
        "benchmarks/java-bench-canonical/pom.xml",
        "benchmarks/java-bench/pom.xml",
        "benchmarks/native-bench/go-bench/go.mod",
        "benchmarks/native-bench/rust-bench/Cargo.toml",
        "fuzz/Cargo.toml",
        "interop-grpc/client/Cargo.toml",
        "interop/canonical-csharp/CanonicalCsharpProbe.csproj",
        "interop/canonical-go/go.mod",
        "interop/canonical-java/pom.xml",
        "samples/dotnet/Sample.csproj",
        "samples/go/go.mod",
        "samples/rust/Cargo.toml"
      ],
      "largest_source_bytes": 198446,
      "source_files_sampled": 352,
      "oversized_source_files": 4,
      "agent_instruction_files": [
        "AGENTS.md",
        "CLAUDE.md"
      ],
      "agent_instruction_max_bytes": 10921
    },
    "dependencies": {
      "manifests": [
        "Cargo.toml",
        "asherah-cobhan/Cargo.toml",
        "asherah-config/Cargo.toml",
        "asherah-ffi/Cargo.toml",
        "asherah-go/go.mod",
        "asherah-java/Cargo.toml",
        "asherah-node/Cargo.toml",
        "asherah-node/package.json",
        "asherah-php/composer.json",
        "asherah-py/Cargo.toml",
        "asherah-py/pyproject.toml",
        "asherah-ruby/Gemfile",
        "asherah-server/Cargo.toml",
        "asherah/Cargo.toml",
        "composer.json",
        "fuzz/Cargo.toml",
        "interop/package.json"
      ],
      "advisories": {
        "error": null,
        "scope": "repository_graph",
        "source": "osv",
        "findings": [
          {
            "name": "golang.org/x/crypto",
            "direct": false,
            "version": "v0.45.0",
            "severity": "critical",
            "ecosystem": "go",
            "cvss_score": 10,
            "advisory_ids": [
              "GHSA-45gg-vh54-h5m9",
              "GHSA-5cgq-3rg8-m6cv",
              "GHSA-78mq-xcr3-xm33",
              "GHSA-89gr-r52h-f8rx",
              "GHSA-9m57-25v3-79x9",
              "GHSA-f5wc-c3c7-36mc",
              "GHSA-jppx-rxg9-jmrx",
              "GHSA-q4h4-gmj2-qvw2",
              "GHSA-qpw4-5x99-6vjp",
              "GHSA-rm3j-f69w-wqmq"
            ],
            "fixed_version": "0.52.0",
            "advisory_count": 27,
            "oldest_advisory_days": 66
          },
          {
            "name": "golang.org/x/crypto",
            "direct": false,
            "version": "v0.48.0",
            "severity": "critical",
            "ecosystem": "go",
            "cvss_score": 10,
            "advisory_ids": [
              "GHSA-45gg-vh54-h5m9",
              "GHSA-5cgq-3rg8-m6cv",
              "GHSA-78mq-xcr3-xm33",
              "GHSA-89gr-r52h-f8rx",
              "GHSA-9m57-25v3-79x9",
              "GHSA-f5wc-c3c7-36mc",
              "GHSA-jppx-rxg9-jmrx",
              "GHSA-q4h4-gmj2-qvw2",
              "GHSA-qpw4-5x99-6vjp",
              "GHSA-rm3j-f69w-wqmq"
            ],
            "fixed_version": "0.52.0",
            "advisory_count": 27,
            "oldest_advisory_days": 66
          },
          {
            "name": "google.golang.org/grpc",
            "direct": false,
            "version": "v1.79.3",
            "severity": "critical",
            "ecosystem": "go",
            "cvss_score": 9.1,
            "advisory_ids": [
              "GHSA-hrxh-6v49-42gf"
            ],
            "fixed_version": "1.82.1",
            "advisory_count": 1,
            "oldest_advisory_days": 5
          },
          {
            "name": "openssl",
            "direct": true,
            "version": "0.10.78",
            "severity": "high",
            "ecosystem": "crates",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-phqj-4mhp-q6mq",
              "GHSA-xp3w-r5p5-63rr",
              "GHSA-xv59-967r-8726"
            ],
            "fixed_version": "0.10.80",
            "advisory_count": 3,
            "oldest_advisory_days": 82
          },
          {
            "name": "postgres-protocol",
            "direct": false,
            "version": "0.6.10",
            "severity": "high",
            "ecosystem": "crates",
            "cvss_score": 7.5,
            "advisory_ids": [
              "RUSTSEC-2026-0179",
              "RUSTSEC-2026-0180"
            ],
            "fixed_version": "0.6.12",
            "advisory_count": 2,
            "oldest_advisory_days": 44
          },
          {
            "name": "postgres-protocol",
            "direct": false,
            "version": "0.6.11",
            "severity": "high",
            "ecosystem": "crates",
            "cvss_score": 7.5,
            "advisory_ids": [
              "RUSTSEC-2026-0179",
              "RUSTSEC-2026-0180"
            ],
            "fixed_version": "0.6.12",
            "advisory_count": 2,
            "oldest_advisory_days": 44
          },
          {
            "name": "quinn-proto",
            "direct": false,
            "version": "0.11.14",
            "severity": "high",
            "ecosystem": "crates",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-4w2j-m93h-cj5j",
              "RUSTSEC-2026-0185"
            ],
            "fixed_version": "0.11.15",
            "advisory_count": 2,
            "oldest_advisory_days": 34
          },
          {
            "name": "cmov",
            "direct": false,
            "version": "0.5.3",
            "severity": "moderate",
            "ecosystem": "crates",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-3rjw-m598-pq24"
            ],
            "fixed_version": "0.5.4",
            "advisory_count": 1,
            "oldest_advisory_days": 24
          },
          {
            "name": "golang.org/x/net",
            "direct": false,
            "version": "v0.48.0",
            "severity": "moderate",
            "ecosystem": "go",
            "cvss_score": 6.5,
            "advisory_ids": [
              "GHSA-5cv4-jp36-h3mw",
              "GO-2026-4918",
              "GO-2026-5025",
              "GO-2026-5026",
              "GO-2026-5027",
              "GO-2026-5028",
              "GO-2026-5029",
              "GO-2026-5030",
              "GO-2026-5942"
            ],
            "fixed_version": "1.26.3",
            "advisory_count": 9,
            "oldest_advisory_days": 80
          },
          {
            "name": "serde_with",
            "direct": false,
            "version": "3.18.0",
            "severity": "moderate",
            "ecosystem": "crates",
            "cvss_score": 4,
            "advisory_ids": [
              "GHSA-7gcf-g7xr-8hxj"
            ],
            "fixed_version": "3.21.0",
            "advisory_count": 1,
            "oldest_advisory_days": 11
          },
          {
            "name": "tokio-postgres",
            "direct": false,
            "version": "0.7.16",
            "severity": "moderate",
            "ecosystem": "crates",
            "cvss_score": 5.3,
            "advisory_ids": [
              "RUSTSEC-2026-0178"
            ],
            "fixed_version": "0.7.18",
            "advisory_count": 1,
            "oldest_advisory_days": 44
          },
          {
            "name": "tokio-postgres",
            "direct": false,
            "version": "0.7.17",
            "severity": "moderate",
            "ecosystem": "crates",
            "cvss_score": 5.3,
            "advisory_ids": [
              "RUSTSEC-2026-0178"
            ],
            "fixed_version": "0.7.18",
            "advisory_count": 1,
            "oldest_advisory_days": 44
          },
          {
            "name": "anyhow",
            "direct": true,
            "version": "1.0.102",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2026-0190"
            ],
            "fixed_version": "1.0.103",
            "advisory_count": 1,
            "oldest_advisory_days": 31
          },
          {
            "name": "scc",
            "direct": true,
            "version": "2.4.0",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2026-0205"
            ],
            "fixed_version": "3.8.4",
            "advisory_count": 1,
            "oldest_advisory_days": 20
          },
          {
            "name": "scc",
            "direct": true,
            "version": "3.7.2",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2026-0205"
            ],
            "fixed_version": "3.8.4",
            "advisory_count": 1,
            "oldest_advisory_days": 20
          },
          {
            "name": "crossbeam-epoch",
            "direct": false,
            "version": "0.9.18",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2026-0204"
            ],
            "fixed_version": "0.9.20",
            "advisory_count": 1,
            "oldest_advisory_days": 20
          },
          {
            "name": "github.com/aws/aws-sdk-go",
            "direct": false,
            "version": "v1.44.265",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2022-0635",
              "GO-2022-0646"
            ],
            "fixed_version": null,
            "advisory_count": 2,
            "oldest_advisory_days": 1626
          },
          {
            "name": "github.com/aws/aws-sdk-go",
            "direct": false,
            "version": "v1.55.8",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2022-0635",
              "GO-2022-0646"
            ],
            "fixed_version": null,
            "advisory_count": 2,
            "oldest_advisory_days": 1626
          },
          {
            "name": "golang.org/x/sys",
            "direct": false,
            "version": "v0.38.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5024"
            ],
            "fixed_version": "0.44.0",
            "advisory_count": 1,
            "oldest_advisory_days": 65
          },
          {
            "name": "golang.org/x/sys",
            "direct": false,
            "version": "v0.39.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5024"
            ],
            "fixed_version": "0.44.0",
            "advisory_count": 1,
            "oldest_advisory_days": 65
          },
          {
            "name": "golang.org/x/sys",
            "direct": false,
            "version": "v0.42.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5024"
            ],
            "fixed_version": "0.44.0",
            "advisory_count": 1,
            "oldest_advisory_days": 65
          },
          {
            "name": "golang.org/x/text",
            "direct": false,
            "version": "v0.32.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5970"
            ],
            "fixed_version": "0.39.0",
            "advisory_count": 1,
            "oldest_advisory_days": 12
          },
          {
            "name": "proc-macro-error2",
            "direct": false,
            "version": "2.0.1",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2026-0173"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 49
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "high": 4,
          "unknown": 11,
          "critical": 3,
          "moderate": 5
        },
        "advisory_count": 90,
        "affected_count": 23,
        "assessed_count": 708,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 76,
        "direct_affected_count": 4
      },
      "ecosystems": [
        "crates",
        "go",
        "npm",
        "packagist",
        "pypi",
        "rubygems"
      ],
      "dependencies": [
        {
          "name": "asherah",
          "manifest": "asherah-cobhan/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0.0"
        },
        {
          "name": "asherah-config",
          "manifest": "asherah-cobhan/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0.0"
        },
        {
          "name": "log",
          "manifest": "asherah-cobhan/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.4"
        },
        {
          "name": "serde_json",
          "manifest": "asherah-cobhan/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "serde",
          "manifest": "asherah-cobhan/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "zeroize",
          "manifest": "asherah-cobhan/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.8"
        },
        {
          "name": "anyhow",
          "manifest": "asherah-config/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "serde",
          "manifest": "asherah-config/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "serde_json",
          "manifest": "asherah-config/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "asherah",
          "manifest": "asherah-config/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0.0"
        },
        {
          "name": "asherah",
          "manifest": "asherah-ffi/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0.0"
        },
        {
          "name": "asherah-cobhan",
          "manifest": "asherah-ffi/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0.0"
        },
        {
          "name": "asherah-config",
          "manifest": "asherah-ffi/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0.0"
        },
        {
          "name": "serde_json",
          "manifest": "asherah-ffi/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "anyhow",
          "manifest": "asherah-ffi/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "tokio",
          "manifest": "asherah-ffi/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1"
        },
        {
          "name": "once_cell",
          "manifest": "asherah-ffi/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1"
        },
        {
          "name": "parking_lot",
          "manifest": "asherah-ffi/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.12"
        },
        {
          "name": "log",
          "manifest": "asherah-ffi/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.4"
        },
        {
          "name": "zeroize",
          "manifest": "asherah-ffi/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.8"
        },
        {
          "name": "github.com/ebitengine/purego",
          "manifest": "asherah-go/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.10.1"
        },
        {
          "name": "jni",
          "manifest": "asherah-java/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.22"
        },
        {
          "name": "asherah",
          "manifest": "asherah-java/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0.0"
        },
        {
          "name": "asherah-config",
          "manifest": "asherah-java/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0.0"
        },
        {
          "name": "anyhow",
          "manifest": "asherah-java/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "serde_json",
          "manifest": "asherah-java/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "tokio",
          "manifest": "asherah-java/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1"
        },
        {
          "name": "once_cell",
          "manifest": "asherah-java/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1"
        },
        {
          "name": "log",
          "manifest": "asherah-java/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.4"
        },
        {
          "name": "parking_lot",
          "manifest": "asherah-java/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.12"
        },
        {
          "name": "zeroize",
          "manifest": "asherah-java/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.8"
        },
        {
          "name": "napi",
          "manifest": "asherah-node/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "3"
        },
        {
          "name": "napi-derive",
          "manifest": "asherah-node/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "3"
        },
        {
          "name": "serde",
          "manifest": "asherah-node/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "serde_json",
          "manifest": "asherah-node/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "anyhow",
          "manifest": "asherah-node/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "asherah",
          "manifest": "asherah-node/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0.0"
        },
        {
          "name": "asherah-config",
          "manifest": "asherah-node/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0.0"
        },
        {
          "name": "tokio",
          "manifest": "asherah-node/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1"
        },
        {
          "name": "once_cell",
          "manifest": "asherah-node/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1"
        },
        {
          "name": "parking_lot",
          "manifest": "asherah-node/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.12"
        },
        {
          "name": "lru",
          "manifest": "asherah-node/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.16"
        },
        {
          "name": "log",
          "manifest": "asherah-node/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.4"
        },
        {
          "name": "pyo3",
          "manifest": "asherah-py/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.29"
        },
        {
          "name": "asherah",
          "manifest": "asherah-py/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0.0"
        },
        {
          "name": "tokio",
          "manifest": "asherah-py/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1"
        },
        {
          "name": "asherah-config",
          "manifest": "asherah-py/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0.0"
        },
        {
          "name": "serde_json",
          "manifest": "asherah-py/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "anyhow",
          "manifest": "asherah-py/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "once_cell",
          "manifest": "asherah-py/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.21"
        },
        {
          "name": "parking_lot",
          "manifest": "asherah-py/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.12"
        },
        {
          "name": "lru",
          "manifest": "asherah-py/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.16"
        },
        {
          "name": "log",
          "manifest": "asherah-py/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.4"
        },
        {
          "name": "zeroize",
          "manifest": "asherah-py/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1"
        },
        {
          "name": "asherah",
          "manifest": "asherah-server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "asherah-config",
          "manifest": "asherah-server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "tonic",
          "manifest": "asherah-server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.14"
        },
        {
          "name": "tonic-prost",
          "manifest": "asherah-server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.14"
        },
        {
          "name": "prost",
          "manifest": "asherah-server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.14"
        },
        {
          "name": "tokio",
          "manifest": "asherah-server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1"
        },
        {
          "name": "tokio-stream",
          "manifest": "asherah-server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.1"
        },
        {
          "name": "clap",
          "manifest": "asherah-server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "4"
        },
        {
          "name": "serde_json",
          "manifest": "asherah-server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1"
        },
        {
          "name": "anyhow",
          "manifest": "asherah-server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1"
        },
        {
          "name": "log",
          "manifest": "asherah-server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.4"
        },
        {
          "name": "env_logger",
          "manifest": "asherah-server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.11"
        },
        {
          "name": "rustix",
          "manifest": "asherah-server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.1"
        },
        {
          "name": "serde",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "serde_json",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "once_cell",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.21"
        },
        {
          "name": "parking_lot",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.12"
        },
        {
          "name": "rand",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.9"
        },
        {
          "name": "rand_chacha",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.9"
        },
        {
          "name": "itoa",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1"
        },
        {
          "name": "anyhow",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "async-trait",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.1"
        },
        {
          "name": "log",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.4"
        },
        {
          "name": "serde_bytes",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.11"
        },
        {
          "name": "blake2",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.10"
        },
        {
          "name": "base64",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.22"
        },
        {
          "name": "subtle",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "2.5"
        },
        {
          "name": "signal-hook",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.4"
        },
        {
          "name": "libc",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.2"
        },
        {
          "name": "windows-sys",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.59"
        },
        {
          "name": "hardware-rust-crypto",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "ring",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.17"
        },
        {
          "name": "scc",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "3"
        },
        {
          "name": "percent-encoding",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "2"
        },
        {
          "name": "zeroize",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.8"
        },
        {
          "name": "hardware-enclave",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.2.9"
        },
        {
          "name": "rusqlite",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.38"
        },
        {
          "name": "aws-config",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1"
        },
        {
          "name": "aws-types",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1"
        },
        {
          "name": "aws-sdk-kms",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1"
        },
        {
          "name": "aws-sdk-dynamodb",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1"
        },
        {
          "name": "aws-sdk-secretsmanager",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1"
        },
        {
          "name": "tokio",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1"
        },
        {
          "name": "mysql",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "27"
        },
        {
          "name": "postgres",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.19"
        },
        {
          "name": "postgres-native-tls",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.5"
        },
        {
          "name": "native-tls",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.2"
        },
        {
          "name": "openssl",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.10"
        },
        {
          "name": "reqwest",
          "manifest": "asherah/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.12"
        },
        {
          "name": "asherah",
          "manifest": "interop/package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.0.12"
        },
        {
          "name": "asherah-node",
          "manifest": "interop/package.json",
          "ecosystem": "npm",
          "version_constraint": "file:../asherah-node"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "anyhow",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "anyhow",
            "direct": true,
            "version": "1.0.102",
            "ecosystem": "crates"
          },
          {
            "name": "asherah",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "asherah-cobhan",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "asherah-config",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "async-trait",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "async-trait",
            "direct": true,
            "version": "0.1.89",
            "ecosystem": "crates"
          },
          {
            "name": "aws-config",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "aws-config",
            "direct": true,
            "version": "1.8.13",
            "ecosystem": "crates"
          },
          {
            "name": "aws-config",
            "direct": true,
            "version": "1.8.15",
            "ecosystem": "crates"
          },
          {
            "name": "aws-sdk-dynamodb",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "aws-sdk-dynamodb",
            "direct": true,
            "version": "1.104.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-sdk-dynamodb",
            "direct": true,
            "version": "1.108.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-sdk-kms",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "aws-sdk-kms",
            "direct": true,
            "version": "1.103.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-sdk-kms",
            "direct": true,
            "version": "1.99.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-sdk-secretsmanager",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "aws-sdk-secretsmanager",
            "direct": true,
            "version": "1.99.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-types",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "aws-types",
            "direct": true,
            "version": "1.3.11",
            "ecosystem": "crates"
          },
          {
            "name": "aws-types",
            "direct": true,
            "version": "1.3.14",
            "ecosystem": "crates"
          },
          {
            "name": "base64",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "base64",
            "direct": true,
            "version": "0.21.7",
            "ecosystem": "crates"
          },
          {
            "name": "base64",
            "direct": true,
            "version": "0.22.1",
            "ecosystem": "crates"
          },
          {
            "name": "blake2",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "blake2",
            "direct": true,
            "version": "0.10.6",
            "ecosystem": "crates"
          },
          {
            "name": "clap",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "clap",
            "direct": true,
            "version": "4.6.1",
            "ecosystem": "crates"
          },
          {
            "name": "env_logger",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "env_logger",
            "direct": true,
            "version": "0.11.10",
            "ecosystem": "crates"
          },
          {
            "name": "hardware-enclave",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "hardware-enclave",
            "direct": true,
            "version": "0.2.9",
            "ecosystem": "crates"
          },
          {
            "name": "hardware-rust-crypto",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "hardware-rust-crypto",
            "direct": true,
            "version": "1.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "itoa",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "itoa",
            "direct": true,
            "version": "1.0.17",
            "ecosystem": "crates"
          },
          {
            "name": "itoa",
            "direct": true,
            "version": "1.0.18",
            "ecosystem": "crates"
          },
          {
            "name": "jni",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "jni",
            "direct": true,
            "version": "0.22.4",
            "ecosystem": "crates"
          },
          {
            "name": "libc",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "libc",
            "direct": true,
            "version": "0.2.183",
            "ecosystem": "crates"
          },
          {
            "name": "libc",
            "direct": true,
            "version": "0.2.186",
            "ecosystem": "crates"
          },
          {
            "name": "log",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "log",
            "direct": true,
            "version": "0.4.29",
            "ecosystem": "crates"
          },
          {
            "name": "log",
            "direct": true,
            "version": "0.4.32",
            "ecosystem": "crates"
          },
          {
            "name": "lru",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "lru",
            "direct": true,
            "version": "0.16.3",
            "ecosystem": "crates"
          },
          {
            "name": "lru",
            "direct": true,
            "version": "0.16.4",
            "ecosystem": "crates"
          },
          {
            "name": "mysql",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "mysql",
            "direct": true,
            "version": "27.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "napi",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "napi",
            "direct": true,
            "version": "3.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "napi-derive",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "napi-derive",
            "direct": true,
            "version": "3.5.6",
            "ecosystem": "crates"
          },
          {
            "name": "native-tls",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "native-tls",
            "direct": true,
            "version": "0.2.18",
            "ecosystem": "crates"
          },
          {
            "name": "once_cell",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "once_cell",
            "direct": true,
            "version": "1.21.3",
            "ecosystem": "crates"
          },
          {
            "name": "once_cell",
            "direct": true,
            "version": "1.21.4",
            "ecosystem": "crates"
          },
          {
            "name": "openssl",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "openssl",
            "direct": true,
            "version": "0.10.78",
            "ecosystem": "crates"
          },
          {
            "name": "openssl",
            "direct": true,
            "version": "0.10.80",
            "ecosystem": "crates"
          },
          {
            "name": "parking_lot",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "parking_lot",
            "direct": true,
            "version": "0.12.5",
            "ecosystem": "crates"
          },
          {
            "name": "percent-encoding",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "percent-encoding",
            "direct": true,
            "version": "2.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "postgres",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "postgres",
            "direct": true,
            "version": "0.19.12",
            "ecosystem": "crates"
          },
          {
            "name": "postgres",
            "direct": true,
            "version": "0.19.13",
            "ecosystem": "crates"
          },
          {
            "name": "postgres-native-tls",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "postgres-native-tls",
            "direct": true,
            "version": "0.5.2",
            "ecosystem": "crates"
          },
          {
            "name": "postgres-native-tls",
            "direct": true,
            "version": "0.5.3",
            "ecosystem": "crates"
          },
          {
            "name": "prost",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "prost",
            "direct": true,
            "version": "0.14.4",
            "ecosystem": "crates"
          },
          {
            "name": "pyo3",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "pyo3",
            "direct": true,
            "version": "0.29.0",
            "ecosystem": "crates"
          },
          {
            "name": "rand",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "rand",
            "direct": true,
            "version": "0.10.1",
            "ecosystem": "crates"
          },
          {
            "name": "rand",
            "direct": true,
            "version": "0.9.4",
            "ecosystem": "crates"
          },
          {
            "name": "rand_chacha",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "rand_chacha",
            "direct": true,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "reqwest",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "reqwest",
            "direct": true,
            "version": "0.12.28",
            "ecosystem": "crates"
          },
          {
            "name": "ring",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "ring",
            "direct": true,
            "version": "0.17.14",
            "ecosystem": "crates"
          },
          {
            "name": "rusqlite",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "rusqlite",
            "direct": true,
            "version": "0.38.0",
            "ecosystem": "crates"
          },
          {
            "name": "rustix",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "rustix",
            "direct": true,
            "version": "1.1.4",
            "ecosystem": "crates"
          },
          {
            "name": "scc",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "scc",
            "direct": true,
            "version": "2.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "scc",
            "direct": true,
            "version": "3.7.2",
            "ecosystem": "crates"
          },
          {
            "name": "serde",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "serde",
            "direct": true,
            "version": "1.0.228",
            "ecosystem": "crates"
          },
          {
            "name": "serde_bytes",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "serde_bytes",
            "direct": true,
            "version": "0.11.19",
            "ecosystem": "crates"
          },
          {
            "name": "serde_json",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "serde_json",
            "direct": true,
            "version": "1.0.149",
            "ecosystem": "crates"
          },
          {
            "name": "serde_json",
            "direct": true,
            "version": "1.0.150",
            "ecosystem": "crates"
          },
          {
            "name": "signal-hook",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "signal-hook",
            "direct": true,
            "version": "0.4.3",
            "ecosystem": "crates"
          },
          {
            "name": "signal-hook",
            "direct": true,
            "version": "0.4.4",
            "ecosystem": "crates"
          },
          {
            "name": "subtle",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "subtle",
            "direct": true,
            "version": "2.6.1",
            "ecosystem": "crates"
          },
          {
            "name": "tokio",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "tokio",
            "direct": true,
            "version": "1.50.0",
            "ecosystem": "crates"
          },
          {
            "name": "tokio",
            "direct": true,
            "version": "1.52.3",
            "ecosystem": "crates"
          },
          {
            "name": "tokio-stream",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "tokio-stream",
            "direct": true,
            "version": "0.1.18",
            "ecosystem": "crates"
          },
          {
            "name": "tonic",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "tonic",
            "direct": true,
            "version": "0.14.6",
            "ecosystem": "crates"
          },
          {
            "name": "tonic-prost",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "tonic-prost",
            "direct": true,
            "version": "0.14.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows-sys",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "windows-sys",
            "direct": true,
            "version": "0.52.0",
            "ecosystem": "crates"
          },
          {
            "name": "windows-sys",
            "direct": true,
            "version": "0.59.0",
            "ecosystem": "crates"
          },
          {
            "name": "windows-sys",
            "direct": true,
            "version": "0.61.2",
            "ecosystem": "crates"
          },
          {
            "name": "zeroize",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "zeroize",
            "direct": true,
            "version": "1.8.2",
            "ecosystem": "crates"
          },
          {
            "name": "github.com/ebitengine/purego",
            "direct": true,
            "version": "v0.10.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/ebitengine/purego",
            "direct": true,
            "version": "v0.10.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/ebitengine/purego",
            "direct": true,
            "version": "v0.9.0",
            "ecosystem": "go"
          },
          {
            "name": "asherah",
            "direct": true,
            "version": "3.0.12",
            "ecosystem": "npm"
          },
          {
            "name": "asherah",
            "direct": true,
            "version": "3.0.16",
            "ecosystem": "npm"
          },
          {
            "name": "asherah",
            "direct": true,
            "version": "4.0.0-beta.1",
            "ecosystem": "npm"
          },
          {
            "name": "asherah",
            "direct": true,
            "version": "latest",
            "ecosystem": "npm"
          },
          {
            "name": "asherah",
            "direct": true,
            "version": "next",
            "ecosystem": "npm"
          },
          {
            "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": "aho-corasick",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "crates"
          },
          {
            "name": "allocator-api2",
            "direct": false,
            "version": "0.2.21",
            "ecosystem": "crates"
          },
          {
            "name": "android_system_properties",
            "direct": false,
            "version": "0.1.5",
            "ecosystem": "crates"
          },
          {
            "name": "anes",
            "direct": false,
            "version": "0.1.6",
            "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": "arbitrary",
            "direct": false,
            "version": "1.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "astral-tokio-tar",
            "direct": false,
            "version": "0.6.2",
            "ecosystem": "crates"
          },
          {
            "name": "async-stream",
            "direct": false,
            "version": "0.3.6",
            "ecosystem": "crates"
          },
          {
            "name": "async-stream-impl",
            "direct": false,
            "version": "0.3.6",
            "ecosystem": "crates"
          },
          {
            "name": "atomic-waker",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "autocfg",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-credential-types",
            "direct": false,
            "version": "1.2.11",
            "ecosystem": "crates"
          },
          {
            "name": "aws-credential-types",
            "direct": false,
            "version": "1.2.14",
            "ecosystem": "crates"
          },
          {
            "name": "aws-lc-rs",
            "direct": false,
            "version": "1.16.2",
            "ecosystem": "crates"
          },
          {
            "name": "aws-lc-sys",
            "direct": false,
            "version": "0.39.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-lc-sys",
            "direct": false,
            "version": "0.39.1",
            "ecosystem": "crates"
          },
          {
            "name": "aws-runtime",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-runtime",
            "direct": false,
            "version": "1.7.2",
            "ecosystem": "crates"
          },
          {
            "name": "aws-sdk-sso",
            "direct": false,
            "version": "1.93.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-sdk-sso",
            "direct": false,
            "version": "1.96.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-sdk-ssooidc",
            "direct": false,
            "version": "1.95.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-sdk-ssooidc",
            "direct": false,
            "version": "1.98.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-sdk-sts",
            "direct": false,
            "version": "1.100.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-sdk-sts",
            "direct": false,
            "version": "1.97.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-sigv4",
            "direct": false,
            "version": "1.3.8",
            "ecosystem": "crates"
          },
          {
            "name": "aws-sigv4",
            "direct": false,
            "version": "1.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-async",
            "direct": false,
            "version": "1.2.11",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-async",
            "direct": false,
            "version": "1.2.14",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-http",
            "direct": false,
            "version": "0.63.3",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-http",
            "direct": false,
            "version": "0.63.6",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-http-client",
            "direct": false,
            "version": "1.1.12",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-http-client",
            "direct": false,
            "version": "1.1.9",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-json",
            "direct": false,
            "version": "0.62.3",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-json",
            "direct": false,
            "version": "0.62.5",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-observability",
            "direct": false,
            "version": "0.2.4",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-observability",
            "direct": false,
            "version": "0.2.6",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-query",
            "direct": false,
            "version": "0.60.13",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-query",
            "direct": false,
            "version": "0.60.15",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-runtime",
            "direct": false,
            "version": "1.10.0",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-runtime",
            "direct": false,
            "version": "1.10.3",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-runtime-api",
            "direct": false,
            "version": "1.11.3",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-runtime-api",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-types",
            "direct": false,
            "version": "1.4.3",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-types",
            "direct": false,
            "version": "1.4.6",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-xml",
            "direct": false,
            "version": "0.60.13",
            "ecosystem": "crates"
          },
          {
            "name": "aws-smithy-xml",
            "direct": false,
            "version": "0.60.15",
            "ecosystem": "crates"
          },
          {
            "name": "axum",
            "direct": false,
            "version": "0.8.8",
            "ecosystem": "crates"
          },
          {
            "name": "axum-core",
            "direct": false,
            "version": "0.5.6",
            "ecosystem": "crates"
          },
          {
            "name": "base64-simd",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "crates"
          },
          {
            "name": "bitflags",
            "direct": false,
            "version": "2.11.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": "bollard",
            "direct": false,
            "version": "0.20.2",
            "ecosystem": "crates"
          },
          {
            "name": "bollard-buildkit-proto",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "crates"
          },
          {
            "name": "bollard-stubs",
            "direct": false,
            "version": "1.52.1-rc.29.1.3",
            "ecosystem": "crates"
          },
          {
            "name": "bstr",
            "direct": false,
            "version": "1.12.1",
            "ecosystem": "crates"
          },
          {
            "name": "btoi",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "bufstream",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "crates"
          },
          {
            "name": "bumpalo",
            "direct": false,
            "version": "3.20.2",
            "ecosystem": "crates"
          },
          {
            "name": "bytecount",
            "direct": false,
            "version": "0.6.9",
            "ecosystem": "crates"
          },
          {
            "name": "byteorder",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "bytes",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "crates"
          },
          {
            "name": "bytes-utils",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "crates"
          },
          {
            "name": "cast",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "cc",
            "direct": false,
            "version": "1.2.56",
            "ecosystem": "crates"
          },
          {
            "name": "cc",
            "direct": false,
            "version": "1.2.60",
            "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": "chrono",
            "direct": false,
            "version": "0.4.44",
            "ecosystem": "crates"
          },
          {
            "name": "ciborium",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "ciborium-io",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "ciborium-ll",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "cipher",
            "direct": false,
            "version": "0.4.4",
            "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.57",
            "ecosystem": "crates"
          },
          {
            "name": "cmake",
            "direct": false,
            "version": "0.1.58",
            "ecosystem": "crates"
          },
          {
            "name": "cmov",
            "direct": false,
            "version": "0.5.3",
            "ecosystem": "crates"
          },
          {
            "name": "colorchoice",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "crates"
          },
          {
            "name": "combine",
            "direct": false,
            "version": "4.6.7",
            "ecosystem": "crates"
          },
          {
            "name": "console",
            "direct": false,
            "version": "0.16.3",
            "ecosystem": "crates"
          },
          {
            "name": "const-oid",
            "direct": false,
            "version": "0.10.2",
            "ecosystem": "crates"
          },
          {
            "name": "convert_case",
            "direct": false,
            "version": "0.10.0",
            "ecosystem": "crates"
          },
          {
            "name": "convert_case",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "core-foundation",
            "direct": false,
            "version": "0.10.1",
            "ecosystem": "crates"
          },
          {
            "name": "core-foundation-sys",
            "direct": false,
            "version": "0.8.7",
            "ecosystem": "crates"
          },
          {
            "name": "cpufeatures",
            "direct": false,
            "version": "0.2.17",
            "ecosystem": "crates"
          },
          {
            "name": "cpufeatures",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "crc32fast",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "criterion",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "criterion",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "crates"
          },
          {
            "name": "criterion-plot",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "crossbeam-deque",
            "direct": false,
            "version": "0.8.6",
            "ecosystem": "crates"
          },
          {
            "name": "crossbeam-epoch",
            "direct": false,
            "version": "0.9.18",
            "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-common",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "crates"
          },
          {
            "name": "crypto-common",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "ctor",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "crates"
          },
          {
            "name": "ctr",
            "direct": false,
            "version": "0.9.2",
            "ecosystem": "crates"
          },
          {
            "name": "ctutils",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "cucumber",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "cucumber",
            "direct": false,
            "version": "0.22.1",
            "ecosystem": "crates"
          },
          {
            "name": "cucumber-codegen",
            "direct": false,
            "version": "0.22.1",
            "ecosystem": "crates"
          },
          {
            "name": "cucumber-expressions",
            "direct": false,
            "version": "0.5.0",
            "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": "deranged",
            "direct": false,
            "version": "0.5.8",
            "ecosystem": "crates"
          },
          {
            "name": "derive_arbitrary",
            "direct": false,
            "version": "1.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "derive_more",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "derive_more-impl",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "derive_utils",
            "direct": false,
            "version": "0.15.1",
            "ecosystem": "crates"
          },
          {
            "name": "digest",
            "direct": false,
            "version": "0.10.7",
            "ecosystem": "crates"
          },
          {
            "name": "digest",
            "direct": false,
            "version": "0.11.2",
            "ecosystem": "crates"
          },
          {
            "name": "displaydoc",
            "direct": false,
            "version": "0.2.5",
            "ecosystem": "crates"
          },
          {
            "name": "docker_credential",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "dunce",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "crates"
          },
          {
            "name": "dyn-clone",
            "direct": false,
            "version": "1.0.20",
            "ecosystem": "crates"
          },
          {
            "name": "either",
            "direct": false,
            "version": "1.15.0",
            "ecosystem": "crates"
          },
          {
            "name": "encode_unicode",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "env_filter",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "equivalent",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "crates"
          },
          {
            "name": "errno",
            "direct": false,
            "version": "0.3.14",
            "ecosystem": "crates"
          },
          {
            "name": "etcetera",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "fallible-iterator",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "fallible-iterator",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "fallible-streaming-iterator",
            "direct": false,
            "version": "0.1.9",
            "ecosystem": "crates"
          },
          {
            "name": "fastrand",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "fastrand",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "ferroid",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "filetime",
            "direct": false,
            "version": "0.2.27",
            "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": "flate2",
            "direct": false,
            "version": "1.1.9",
            "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": "fs_extra",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "futures",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "futures",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-channel",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-core",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-executor",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-io",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-macro",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-sink",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-task",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-util",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "generic-array",
            "direct": false,
            "version": "0.14.7",
            "ecosystem": "crates"
          },
          {
            "name": "getrandom",
            "direct": false,
            "version": "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": "gherkin",
            "direct": false,
            "version": "0.15.0",
            "ecosystem": "crates"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "0.3.3",
            "ecosystem": "crates"
          },
          {
            "name": "globset",
            "direct": false,
            "version": "0.4.18",
            "ecosystem": "crates"
          },
          {
            "name": "globwalk",
            "direct": false,
            "version": "0.9.1",
            "ecosystem": "crates"
          },
          {
            "name": "h2",
            "direct": false,
            "version": "0.4.13",
            "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.0",
            "ecosystem": "crates"
          },
          {
            "name": "hashlink",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "heck",
            "direct": false,
            "version": "0.5.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": "hmac",
            "direct": false,
            "version": "0.12.1",
            "ecosystem": "crates"
          },
          {
            "name": "hmac",
            "direct": false,
            "version": "0.13.0",
            "ecosystem": "crates"
          },
          {
            "name": "home",
            "direct": false,
            "version": "0.5.12",
            "ecosystem": "crates"
          },
          {
            "name": "http",
            "direct": false,
            "version": "0.2.12",
            "ecosystem": "crates"
          },
          {
            "name": "http",
            "direct": false,
            "version": "1.4.0",
            "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-body-util",
            "direct": false,
            "version": "0.1.3",
            "ecosystem": "crates"
          },
          {
            "name": "httparse",
            "direct": false,
            "version": "1.10.1",
            "ecosystem": "crates"
          },
          {
            "name": "httpdate",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "crates"
          },
          {
            "name": "humantime",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "hybrid-array",
            "direct": false,
            "version": "0.4.10",
            "ecosystem": "crates"
          },
          {
            "name": "hyper",
            "direct": false,
            "version": "1.8.1",
            "ecosystem": "crates"
          },
          {
            "name": "hyper",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "hyper-named-pipe",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "hyper-rustls",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "crates"
          },
          {
            "name": "hyper-rustls",
            "direct": false,
            "version": "0.27.8",
            "ecosystem": "crates"
          },
          {
            "name": "hyper-timeout",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "crates"
          },
          {
            "name": "hyper-util",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "hyper-util",
            "direct": false,
            "version": "0.1.20",
            "ecosystem": "crates"
          },
          {
            "name": "hyperlocal",
            "direct": false,
            "version": "0.9.1",
            "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.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "icu_collections",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "icu_locale_core",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "icu_locale_core",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "icu_normalizer",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "icu_normalizer",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "icu_normalizer_data",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "icu_normalizer_data",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "icu_properties",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "icu_properties",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "icu_properties_data",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "icu_properties_data",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "icu_provider",
            "direct": false,
            "version": "2.1.1",
            "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.1",
            "ecosystem": "crates"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "0.4.25",
            "ecosystem": "crates"
          },
          {
            "name": "indexmap",
            "direct": false,
            "version": "1.9.3",
            "ecosystem": "crates"
          },
          {
            "name": "indexmap",
            "direct": false,
            "version": "2.13.0",
            "ecosystem": "crates"
          },
          {
            "name": "indexmap",
            "direct": false,
            "version": "2.14.0",
            "ecosystem": "crates"
          },
          {
            "name": "inflections",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "inout",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "crates"
          },
          {
            "name": "inventory",
            "direct": false,
            "version": "0.3.24",
            "ecosystem": "crates"
          },
          {
            "name": "io-enum",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "ipnet",
            "direct": false,
            "version": "2.12.0",
            "ecosystem": "crates"
          },
          {
            "name": "iri-string",
            "direct": false,
            "version": "0.7.12",
            "ecosystem": "crates"
          },
          {
            "name": "is-terminal",
            "direct": false,
            "version": "0.4.17",
            "ecosystem": "crates"
          },
          {
            "name": "is_terminal_polyfill",
            "direct": false,
            "version": "1.70.2",
            "ecosystem": "crates"
          },
          {
            "name": "itertools",
            "direct": false,
            "version": "0.10.5",
            "ecosystem": "crates"
          },
          {
            "name": "itertools",
            "direct": false,
            "version": "0.14.0",
            "ecosystem": "crates"
          },
          {
            "name": "java-locator",
            "direct": false,
            "version": "0.1.9",
            "ecosystem": "crates"
          },
          {
            "name": "jiff",
            "direct": false,
            "version": "0.2.23",
            "ecosystem": "crates"
          },
          {
            "name": "jiff-static",
            "direct": false,
            "version": "0.2.23",
            "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.91",
            "ecosystem": "crates"
          },
          {
            "name": "js-sys",
            "direct": false,
            "version": "0.3.95",
            "ecosystem": "crates"
          },
          {
            "name": "leb128fmt",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "libfuzzer-sys",
            "direct": false,
            "version": "0.4.12",
            "ecosystem": "crates"
          },
          {
            "name": "libloading",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "libloading",
            "direct": false,
            "version": "0.8.9",
            "ecosystem": "crates"
          },
          {
            "name": "libloading",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "libredox",
            "direct": false,
            "version": "0.1.14",
            "ecosystem": "crates"
          },
          {
            "name": "libredox",
            "direct": false,
            "version": "0.1.16",
            "ecosystem": "crates"
          },
          {
            "name": "libsqlite3-sys",
            "direct": false,
            "version": "0.36.0",
            "ecosystem": "crates"
          },
          {
            "name": "libz-sys",
            "direct": false,
            "version": "1.1.25",
            "ecosystem": "crates"
          },
          {
            "name": "libz-sys",
            "direct": false,
            "version": "1.1.28",
            "ecosystem": "crates"
          },
          {
            "name": "linked-hash-map",
            "direct": false,
            "version": "0.5.6",
            "ecosystem": "crates"
          },
          {
            "name": "linux-raw-sys",
            "direct": false,
            "version": "0.12.1",
            "ecosystem": "crates"
          },
          {
            "name": "litemap",
            "direct": false,
            "version": "0.8.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": "lru-slab",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "matchit",
            "direct": false,
            "version": "0.8.4",
            "ecosystem": "crates"
          },
          {
            "name": "md-5",
            "direct": false,
            "version": "0.10.6",
            "ecosystem": "crates"
          },
          {
            "name": "md-5",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "memchr",
            "direct": false,
            "version": "2.8.0",
            "ecosystem": "crates"
          },
          {
            "name": "mime",
            "direct": false,
            "version": "0.3.17",
            "ecosystem": "crates"
          },
          {
            "name": "miniz_oxide",
            "direct": false,
            "version": "0.8.9",
            "ecosystem": "crates"
          },
          {
            "name": "mio",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "mio",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "multimap",
            "direct": false,
            "version": "0.10.1",
            "ecosystem": "crates"
          },
          {
            "name": "mysql-common-derive",
            "direct": false,
            "version": "0.32.1",
            "ecosystem": "crates"
          },
          {
            "name": "mysql_common",
            "direct": false,
            "version": "0.36.2",
            "ecosystem": "crates"
          },
          {
            "name": "named_pipe",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "napi-build",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "napi-build",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "napi-derive-backend",
            "direct": false,
            "version": "5.0.4",
            "ecosystem": "crates"
          },
          {
            "name": "napi-sys",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "nohash-hasher",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "nom",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "nom_locate",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "num",
            "direct": false,
            "version": "0.4.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.0",
            "ecosystem": "crates"
          },
          {
            "name": "num-conv",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "num-integer",
            "direct": false,
            "version": "0.1.46",
            "ecosystem": "crates"
          },
          {
            "name": "num-iter",
            "direct": false,
            "version": "0.1.45",
            "ecosystem": "crates"
          },
          {
            "name": "num-rational",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "num-traits",
            "direct": false,
            "version": "0.2.19",
            "ecosystem": "crates"
          },
          {
            "name": "objc2-core-foundation",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "objc2-system-configuration",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "once_cell_polyfill",
            "direct": false,
            "version": "1.70.2",
            "ecosystem": "crates"
          },
          {
            "name": "oorandom",
            "direct": false,
            "version": "11.1.5",
            "ecosystem": "crates"
          },
          {
            "name": "opaque-debug",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "crates"
          },
          {
            "name": "openssl-macros",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "openssl-probe",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "openssl-src",
            "direct": false,
            "version": "300.5.5+3.5.5",
            "ecosystem": "crates"
          },
          {
            "name": "openssl-src",
            "direct": false,
            "version": "300.6.0+3.6.2",
            "ecosystem": "crates"
          },
          {
            "name": "openssl-sys",
            "direct": false,
            "version": "0.9.115",
            "ecosystem": "crates"
          },
          {
            "name": "openssl-sys",
            "direct": false,
            "version": "0.9.116",
            "ecosystem": "crates"
          },
          {
            "name": "outref",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "crates"
          },
          {
            "name": "parking_lot_core",
            "direct": false,
            "version": "0.9.12",
            "ecosystem": "crates"
          },
          {
            "name": "parse-display",
            "direct": false,
            "version": "0.9.1",
            "ecosystem": "crates"
          },
          {
            "name": "parse-display-derive",
            "direct": false,
            "version": "0.9.1",
            "ecosystem": "crates"
          },
          {
            "name": "peg",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "crates"
          },
          {
            "name": "peg-macros",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "crates"
          },
          {
            "name": "peg-runtime",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "crates"
          },
          {
            "name": "pem",
            "direct": false,
            "version": "3.0.6",
            "ecosystem": "crates"
          },
          {
            "name": "petgraph",
            "direct": false,
            "version": "0.8.3",
            "ecosystem": "crates"
          },
          {
            "name": "phf",
            "direct": false,
            "version": "0.13.1",
            "ecosystem": "crates"
          },
          {
            "name": "phf_shared",
            "direct": false,
            "version": "0.13.1",
            "ecosystem": "crates"
          },
          {
            "name": "pin-project",
            "direct": false,
            "version": "1.1.11",
            "ecosystem": "crates"
          },
          {
            "name": "pin-project-internal",
            "direct": false,
            "version": "1.1.11",
            "ecosystem": "crates"
          },
          {
            "name": "pin-project-lite",
            "direct": false,
            "version": "0.2.17",
            "ecosystem": "crates"
          },
          {
            "name": "pin-utils",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "pkg-config",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "pkg-config",
            "direct": false,
            "version": "0.3.33",
            "ecosystem": "crates"
          },
          {
            "name": "plain",
            "direct": false,
            "version": "0.2.3",
            "ecosystem": "crates"
          },
          {
            "name": "plotters",
            "direct": false,
            "version": "0.3.7",
            "ecosystem": "crates"
          },
          {
            "name": "plotters-backend",
            "direct": false,
            "version": "0.3.7",
            "ecosystem": "crates"
          },
          {
            "name": "plotters-svg",
            "direct": false,
            "version": "0.3.7",
            "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.6",
            "ecosystem": "crates"
          },
          {
            "name": "postgres-protocol",
            "direct": false,
            "version": "0.6.10",
            "ecosystem": "crates"
          },
          {
            "name": "postgres-protocol",
            "direct": false,
            "version": "0.6.11",
            "ecosystem": "crates"
          },
          {
            "name": "postgres-types",
            "direct": false,
            "version": "0.2.12",
            "ecosystem": "crates"
          },
          {
            "name": "postgres-types",
            "direct": false,
            "version": "0.2.13",
            "ecosystem": "crates"
          },
          {
            "name": "potential_utf",
            "direct": false,
            "version": "0.1.4",
            "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": "prettyplease",
            "direct": false,
            "version": "0.2.37",
            "ecosystem": "crates"
          },
          {
            "name": "proc-macro-crate",
            "direct": false,
            "version": "3.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "proc-macro-error-attr2",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "proc-macro-error2",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "proc-macro2",
            "direct": false,
            "version": "1.0.106",
            "ecosystem": "crates"
          },
          {
            "name": "proptest",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "proptest",
            "direct": false,
            "version": "1.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "prost-build",
            "direct": false,
            "version": "0.14.3",
            "ecosystem": "crates"
          },
          {
            "name": "prost-derive",
            "direct": false,
            "version": "0.14.4",
            "ecosystem": "crates"
          },
          {
            "name": "prost-types",
            "direct": false,
            "version": "0.14.3",
            "ecosystem": "crates"
          },
          {
            "name": "pulldown-cmark",
            "direct": false,
            "version": "0.13.3",
            "ecosystem": "crates"
          },
          {
            "name": "pulldown-cmark-to-cmark",
            "direct": false,
            "version": "22.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "pyo3-build-config",
            "direct": false,
            "version": "0.29.0",
            "ecosystem": "crates"
          },
          {
            "name": "pyo3-ffi",
            "direct": false,
            "version": "0.29.0",
            "ecosystem": "crates"
          },
          {
            "name": "pyo3-macros",
            "direct": false,
            "version": "0.29.0",
            "ecosystem": "crates"
          },
          {
            "name": "pyo3-macros-backend",
            "direct": false,
            "version": "0.29.0",
            "ecosystem": "crates"
          },
          {
            "name": "quick-error",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "crates"
          },
          {
            "name": "quinn",
            "direct": false,
            "version": "0.11.9",
            "ecosystem": "crates"
          },
          {
            "name": "quinn-proto",
            "direct": false,
            "version": "0.11.14",
            "ecosystem": "crates"
          },
          {
            "name": "quinn-udp",
            "direct": false,
            "version": "0.5.14",
            "ecosystem": "crates"
          },
          {
            "name": "quote",
            "direct": false,
            "version": "1.0.45",
            "ecosystem": "crates"
          },
          {
            "name": "r-efi",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "r-efi",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "rand_core",
            "direct": false,
            "version": "0.10.0",
            "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_xorshift",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "rayon",
            "direct": false,
            "version": "1.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "rayon-core",
            "direct": false,
            "version": "1.13.0",
            "ecosystem": "crates"
          },
          {
            "name": "redox_syscall",
            "direct": false,
            "version": "0.5.18",
            "ecosystem": "crates"
          },
          {
            "name": "redox_syscall",
            "direct": false,
            "version": "0.7.4",
            "ecosystem": "crates"
          },
          {
            "name": "ref-cast",
            "direct": false,
            "version": "1.0.25",
            "ecosystem": "crates"
          },
          {
            "name": "ref-cast-impl",
            "direct": false,
            "version": "1.0.25",
            "ecosystem": "crates"
          },
          {
            "name": "regex",
            "direct": false,
            "version": "1.12.3",
            "ecosystem": "crates"
          },
          {
            "name": "regex-automata",
            "direct": false,
            "version": "0.4.14",
            "ecosystem": "crates"
          },
          {
            "name": "regex-lite",
            "direct": false,
            "version": "0.1.9",
            "ecosystem": "crates"
          },
          {
            "name": "regex-syntax",
            "direct": false,
            "version": "0.8.10",
            "ecosystem": "crates"
          },
          {
            "name": "rsqlite-vfs",
            "direct": false,
            "version": "0.1.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": "rustls",
            "direct": false,
            "version": "0.23.37",
            "ecosystem": "crates"
          },
          {
            "name": "rustls",
            "direct": false,
            "version": "0.23.38",
            "ecosystem": "crates"
          },
          {
            "name": "rustls-native-certs",
            "direct": false,
            "version": "0.8.3",
            "ecosystem": "crates"
          },
          {
            "name": "rustls-pki-types",
            "direct": false,
            "version": "1.14.0",
            "ecosystem": "crates"
          },
          {
            "name": "rustls-webpki",
            "direct": false,
            "version": "0.103.13",
            "ecosystem": "crates"
          },
          {
            "name": "rustversion",
            "direct": false,
            "version": "1.0.22",
            "ecosystem": "crates"
          },
          {
            "name": "rusty-fork",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "crates"
          },
          {
            "name": "ryu",
            "direct": false,
            "version": "1.0.23",
            "ecosystem": "crates"
          },
          {
            "name": "saa",
            "direct": false,
            "version": "5.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "same-file",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "crates"
          },
          {
            "name": "saturating",
            "direct": false,
            "version": "0.1.0",
            "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": "sdd",
            "direct": false,
            "version": "3.0.10",
            "ecosystem": "crates"
          },
          {
            "name": "sdd",
            "direct": false,
            "version": "4.8.6",
            "ecosystem": "crates"
          },
          {
            "name": "sealed",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "security-framework",
            "direct": false,
            "version": "3.7.0",
            "ecosystem": "crates"
          },
          {
            "name": "security-framework-sys",
            "direct": false,
            "version": "2.17.0",
            "ecosystem": "crates"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "1.0.27",
            "ecosystem": "crates"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "1.0.28",
            "ecosystem": "crates"
          },
          {
            "name": "serde_core",
            "direct": false,
            "version": "1.0.228",
            "ecosystem": "crates"
          },
          {
            "name": "serde_derive",
            "direct": false,
            "version": "1.0.228",
            "ecosystem": "crates"
          },
          {
            "name": "serde_repr",
            "direct": false,
            "version": "0.1.20",
            "ecosystem": "crates"
          },
          {
            "name": "serde_urlencoded",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "crates"
          },
          {
            "name": "serde_with",
            "direct": false,
            "version": "3.18.0",
            "ecosystem": "crates"
          },
          {
            "name": "serde_with_macros",
            "direct": false,
            "version": "3.18.0",
            "ecosystem": "crates"
          },
          {
            "name": "serial_test",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "serial_test",
            "direct": false,
            "version": "3.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "serial_test_derive",
            "direct": false,
            "version": "3.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "sha1",
            "direct": false,
            "version": "0.10.6",
            "ecosystem": "crates"
          },
          {
            "name": "sha2",
            "direct": false,
            "version": "0.10.9",
            "ecosystem": "crates"
          },
          {
            "name": "sha2",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "shlex",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "signal-hook-registry",
            "direct": false,
            "version": "1.4.8",
            "ecosystem": "crates"
          },
          {
            "name": "simd-adler32",
            "direct": false,
            "version": "0.3.8",
            "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": "siphasher",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "crates"
          },
          {
            "name": "slab",
            "direct": false,
            "version": "0.4.12",
            "ecosystem": "crates"
          },
          {
            "name": "smallvec",
            "direct": false,
            "version": "1.15.1",
            "ecosystem": "crates"
          },
          {
            "name": "smart-default",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "crates"
          },
          {
            "name": "smawk",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "socket2",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "crates"
          },
          {
            "name": "sqlite-wasm-rs",
            "direct": false,
            "version": "0.5.2",
            "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": "structmeta",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "structmeta-derive",
            "direct": false,
            "version": "0.3.0",
            "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.13.2",
            "ecosystem": "crates"
          },
          {
            "name": "synthez",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "synthez-codegen",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "synthez-core",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "target-lexicon",
            "direct": false,
            "version": "0.13.5",
            "ecosystem": "crates"
          },
          {
            "name": "tempfile",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "tempfile",
            "direct": false,
            "version": "3.27.0",
            "ecosystem": "crates"
          },
          {
            "name": "termcolor",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "terminal_size",
            "direct": false,
            "version": "0.4.4",
            "ecosystem": "crates"
          },
          {
            "name": "testcontainers",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "testcontainers",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "crates"
          },
          {
            "name": "testcontainers-modules",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "testcontainers-modules",
            "direct": false,
            "version": "0.15.0",
            "ecosystem": "crates"
          },
          {
            "name": "textwrap",
            "direct": false,
            "version": "0.16.2",
            "ecosystem": "crates"
          },
          {
            "name": "thiserror",
            "direct": false,
            "version": "2.0.18",
            "ecosystem": "crates"
          },
          {
            "name": "thiserror-impl",
            "direct": false,
            "version": "2.0.18",
            "ecosystem": "crates"
          },
          {
            "name": "time",
            "direct": false,
            "version": "0.3.47",
            "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": "tinystr",
            "direct": false,
            "version": "0.8.2",
            "ecosystem": "crates"
          },
          {
            "name": "tinystr",
            "direct": false,
            "version": "0.8.3",
            "ecosystem": "crates"
          },
          {
            "name": "tinytemplate",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "tinyvec",
            "direct": false,
            "version": "1.10.0",
            "ecosystem": "crates"
          },
          {
            "name": "tinyvec",
            "direct": false,
            "version": "1.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "tinyvec_macros",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "tokio-macros",
            "direct": false,
            "version": "2.6.1",
            "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-postgres",
            "direct": false,
            "version": "0.7.16",
            "ecosystem": "crates"
          },
          {
            "name": "tokio-postgres",
            "direct": false,
            "version": "0.7.17",
            "ecosystem": "crates"
          },
          {
            "name": "tokio-rustls",
            "direct": false,
            "version": "0.26.4",
            "ecosystem": "crates"
          },
          {
            "name": "tokio-util",
            "direct": false,
            "version": "0.7.18",
            "ecosystem": "crates"
          },
          {
            "name": "toml_datetime",
            "direct": false,
            "version": "1.0.0+spec-1.1.0",
            "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.11+spec-1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "toml_edit",
            "direct": false,
            "version": "0.25.4+spec-1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "toml_parser",
            "direct": false,
            "version": "1.0.9+spec-1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "toml_parser",
            "direct": false,
            "version": "1.1.2+spec-1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "tonic-build",
            "direct": false,
            "version": "0.14.6",
            "ecosystem": "crates"
          },
          {
            "name": "tonic-prost-build",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "tonic-prost-build",
            "direct": false,
            "version": "0.14.6",
            "ecosystem": "crates"
          },
          {
            "name": "tower",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "tower",
            "direct": false,
            "version": "0.5.3",
            "ecosystem": "crates"
          },
          {
            "name": "tower-http",
            "direct": false,
            "version": "0.6.8",
            "ecosystem": "crates"
          },
          {
            "name": "tower-layer",
            "direct": false,
            "version": "0.3.3",
            "ecosystem": "crates"
          },
          {
            "name": "tower-service",
            "direct": false,
            "version": "0.3.3",
            "ecosystem": "crates"
          },
          {
            "name": "tracing",
            "direct": false,
            "version": "0.1.44",
            "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": "try-lock",
            "direct": false,
            "version": "0.2.5",
            "ecosystem": "crates"
          },
          {
            "name": "twox-hash",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "typed-builder",
            "direct": false,
            "version": "0.23.2",
            "ecosystem": "crates"
          },
          {
            "name": "typed-builder-macro",
            "direct": false,
            "version": "0.23.2",
            "ecosystem": "crates"
          },
          {
            "name": "typenum",
            "direct": false,
            "version": "1.19.0",
            "ecosystem": "crates"
          },
          {
            "name": "unarray",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "crates"
          },
          {
            "name": "unicase",
            "direct": false,
            "version": "2.9.0",
            "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-linebreak",
            "direct": false,
            "version": "0.1.5",
            "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-segmentation",
            "direct": false,
            "version": "1.13.2",
            "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": "untrusted",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "ureq",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "ureq-proto",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "url",
            "direct": false,
            "version": "2.5.8",
            "ecosystem": "crates"
          },
          {
            "name": "urlencoding",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "crates"
          },
          {
            "name": "utf8-zero",
            "direct": false,
            "version": "0.8.1",
            "ecosystem": "crates"
          },
          {
            "name": "utf8_iter",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "crates"
          },
          {
            "name": "utf8parse",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "uuid",
            "direct": false,
            "version": "1.22.0",
            "ecosystem": "crates"
          },
          {
            "name": "uuid",
            "direct": false,
            "version": "1.23.0",
            "ecosystem": "crates"
          },
          {
            "name": "vcpkg",
            "direct": false,
            "version": "0.2.15",
            "ecosystem": "crates"
          },
          {
            "name": "version_check",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "crates"
          },
          {
            "name": "vsimd",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "crates"
          },
          {
            "name": "wait-timeout",
            "direct": false,
            "version": "0.2.1",
            "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.14.7+wasi-0.2.4",
            "ecosystem": "crates"
          },
          {
            "name": "wasip2",
            "direct": false,
            "version": "1.0.2+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": "wasite",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen",
            "direct": false,
            "version": "0.2.114",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen",
            "direct": false,
            "version": "0.2.118",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-futures",
            "direct": false,
            "version": "0.4.68",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-macro",
            "direct": false,
            "version": "0.2.114",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-macro",
            "direct": false,
            "version": "0.2.118",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-macro-support",
            "direct": false,
            "version": "0.2.114",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-macro-support",
            "direct": false,
            "version": "0.2.118",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-shared",
            "direct": false,
            "version": "0.2.114",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-shared",
            "direct": false,
            "version": "0.2.118",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-encoder",
            "direct": false,
            "version": "0.244.0",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-metadata",
            "direct": false,
            "version": "0.244.0",
            "ecosystem": "crates"
          },
          {
            "name": "wasmparser",
            "direct": false,
            "version": "0.244.0",
            "ecosystem": "crates"
          },
          {
            "name": "web-sys",
            "direct": false,
            "version": "0.3.91",
            "ecosystem": "crates"
          },
          {
            "name": "web-sys",
            "direct": false,
            "version": "0.3.95",
            "ecosystem": "crates"
          },
          {
            "name": "web-time",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "webpki-roots",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "crates"
          },
          {
            "name": "which",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "which",
            "direct": false,
            "version": "8.0.3",
            "ecosystem": "crates"
          },
          {
            "name": "whoami",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "winapi",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "crates"
          },
          {
            "name": "winapi-i686-pc-windows-gnu",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "winapi-util",
            "direct": false,
            "version": "0.1.11",
            "ecosystem": "crates"
          },
          {
            "name": "winapi-x86_64-pc-windows-gnu",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "windows",
            "direct": false,
            "version": "0.58.0",
            "ecosystem": "crates"
          },
          {
            "name": "windows-core",
            "direct": false,
            "version": "0.58.0",
            "ecosystem": "crates"
          },
          {
            "name": "windows-core",
            "direct": false,
            "version": "0.62.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows-implement",
            "direct": false,
            "version": "0.58.0",
            "ecosystem": "crates"
          },
          {
            "name": "windows-implement",
            "direct": false,
            "version": "0.60.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows-interface",
            "direct": false,
            "version": "0.58.0",
            "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.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "windows-result",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows-strings",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "windows-strings",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows-targets",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_aarch64_gnullvm",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_aarch64_msvc",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_i686_gnu",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_i686_gnullvm",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_i686_msvc",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_x86_64_gnu",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_x86_64_gnullvm",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_x86_64_msvc",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "winnow",
            "direct": false,
            "version": "0.7.15",
            "ecosystem": "crates"
          },
          {
            "name": "winnow",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "wit-bindgen",
            "direct": false,
            "version": "0.51.0",
            "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.2",
            "ecosystem": "crates"
          },
          {
            "name": "writeable",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "crates"
          },
          {
            "name": "xattr",
            "direct": false,
            "version": "1.6.1",
            "ecosystem": "crates"
          },
          {
            "name": "xmlparser",
            "direct": false,
            "version": "0.13.6",
            "ecosystem": "crates"
          },
          {
            "name": "yoke",
            "direct": false,
            "version": "0.8.1",
            "ecosystem": "crates"
          },
          {
            "name": "yoke",
            "direct": false,
            "version": "0.8.2",
            "ecosystem": "crates"
          },
          {
            "name": "yoke-derive",
            "direct": false,
            "version": "0.8.1",
            "ecosystem": "crates"
          },
          {
            "name": "yoke-derive",
            "direct": false,
            "version": "0.8.2",
            "ecosystem": "crates"
          },
          {
            "name": "zerocopy",
            "direct": false,
            "version": "0.8.42",
            "ecosystem": "crates"
          },
          {
            "name": "zerocopy",
            "direct": false,
            "version": "0.8.48",
            "ecosystem": "crates"
          },
          {
            "name": "zerocopy-derive",
            "direct": false,
            "version": "0.8.42",
            "ecosystem": "crates"
          },
          {
            "name": "zerocopy-derive",
            "direct": false,
            "version": "0.8.48",
            "ecosystem": "crates"
          },
          {
            "name": "zerofrom",
            "direct": false,
            "version": "0.1.6",
            "ecosystem": "crates"
          },
          {
            "name": "zerofrom",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "crates"
          },
          {
            "name": "zerofrom-derive",
            "direct": false,
            "version": "0.1.6",
            "ecosystem": "crates"
          },
          {
            "name": "zerofrom-derive",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "crates"
          },
          {
            "name": "zeroize_derive",
            "direct": false,
            "version": "1.4.3",
            "ecosystem": "crates"
          },
          {
            "name": "zerotrie",
            "direct": false,
            "version": "0.2.3",
            "ecosystem": "crates"
          },
          {
            "name": "zerotrie",
            "direct": false,
            "version": "0.2.4",
            "ecosystem": "crates"
          },
          {
            "name": "zerovec",
            "direct": false,
            "version": "0.11.5",
            "ecosystem": "crates"
          },
          {
            "name": "zerovec",
            "direct": false,
            "version": "0.11.6",
            "ecosystem": "crates"
          },
          {
            "name": "zerovec-derive",
            "direct": false,
            "version": "0.11.2",
            "ecosystem": "crates"
          },
          {
            "name": "zerovec-derive",
            "direct": false,
            "version": "0.11.3",
            "ecosystem": "crates"
          },
          {
            "name": "zmij",
            "direct": false,
            "version": "1.0.21",
            "ecosystem": "crates"
          },
          {
            "name": "github.com/awnumar/memcall",
            "direct": false,
            "version": "v0.1.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/awnumar/memcall",
            "direct": false,
            "version": "v0.4.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/awnumar/memguard",
            "direct": false,
            "version": "v0.22.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/awnumar/memguard",
            "direct": false,
            "version": "v0.22.5",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go",
            "direct": false,
            "version": "v1.44.265",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go",
            "direct": false,
            "version": "v1.55.8",
            "ecosystem": "go"
          },
          {
            "name": "github.com/goburrow/cache",
            "direct": false,
            "version": "v0.1.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/godaddy/asherah/go/appencryption",
            "direct": false,
            "version": "v0.3.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/godaddy/asherah/go/appencryption",
            "direct": false,
            "version": "v0.9.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/godaddy/asherah/go/securememory",
            "direct": false,
            "version": "v0.1.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/godaddy/asherah/go/securememory",
            "direct": false,
            "version": "v0.1.7",
            "ecosystem": "go"
          },
          {
            "name": "github.com/jmespath/go-jmespath",
            "direct": false,
            "version": "v0.4.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/pkg/errors",
            "direct": false,
            "version": "v0.9.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/rcrowley/go-metrics",
            "direct": false,
            "version": "v0.0.0-20201227073835-cf1acfcdf475",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/crypto",
            "direct": false,
            "version": "v0.45.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/crypto",
            "direct": false,
            "version": "v0.48.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/net",
            "direct": false,
            "version": "v0.48.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sys",
            "direct": false,
            "version": "v0.38.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sys",
            "direct": false,
            "version": "v0.39.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sys",
            "direct": false,
            "version": "v0.42.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/text",
            "direct": false,
            "version": "v0.32.0",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/genproto/googleapis/rpc",
            "direct": false,
            "version": "v0.0.0-20251202230838-ff82c1b0f217",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/grpc",
            "direct": false,
            "version": "v1.79.3",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/protobuf",
            "direct": false,
            "version": "v1.36.11",
            "ecosystem": "go"
          },
          {
            "name": "com.godaddy.asherah:appencryption",
            "direct": false,
            "version": null,
            "ecosystem": "maven"
          },
          {
            "name": "com.godaddy.asherah:appencryption",
            "direct": false,
            "version": "0.3.3",
            "ecosystem": "maven"
          },
          {
            "name": "com.godaddy.asherah:appencryption",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "maven"
          },
          {
            "name": "io.micrometer:micrometer-core",
            "direct": false,
            "version": "1.17.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven.plugins:maven-compiler-plugin",
            "direct": false,
            "version": "3.15.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven.plugins:maven-gpg-plugin",
            "direct": false,
            "version": "3.2.8",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven.plugins:maven-javadoc-plugin",
            "direct": false,
            "version": "3.12.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven.plugins:maven-shade-plugin",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven.plugins:maven-source-plugin",
            "direct": false,
            "version": "3.4.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven.plugins:maven-surefire-plugin",
            "direct": false,
            "version": "3.5.6",
            "ecosystem": "maven"
          },
          {
            "name": "org.codehaus.mojo:exec-maven-plugin",
            "direct": false,
            "version": "3.6.3",
            "ecosystem": "maven"
          },
          {
            "name": "org.json:json",
            "direct": false,
            "version": "20240303",
            "ecosystem": "maven"
          },
          {
            "name": "org.junit.jupiter:junit-jupiter",
            "direct": false,
            "version": "5.14.4",
            "ecosystem": "maven"
          },
          {
            "name": "org.openjdk.jmh:jmh-core",
            "direct": false,
            "version": "1.37",
            "ecosystem": "maven"
          },
          {
            "name": "org.openjdk.jmh:jmh-generator-annprocess",
            "direct": false,
            "version": "1.37",
            "ecosystem": "maven"
          },
          {
            "name": "org.slf4j:slf4j-api",
            "direct": false,
            "version": "2.0.18",
            "ecosystem": "maven"
          },
          {
            "name": "org.slf4j:slf4j-simple",
            "direct": false,
            "version": "2.0.18",
            "ecosystem": "maven"
          },
          {
            "name": "org.slf4j:slf4j-simple",
            "direct": false,
            "version": "2.0.7",
            "ecosystem": "maven"
          },
          {
            "name": "org.sonatype.central:central-publishing-maven-plugin",
            "direct": false,
            "version": "0.10.0",
            "ecosystem": "maven"
          },
          {
            "name": "../asherah-node",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/cli",
            "direct": false,
            "version": "2.18.4",
            "ecosystem": "npm"
          },
          {
            "name": "node-addon-api",
            "direct": false,
            "version": "8.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-addon-api",
            "direct": false,
            "version": "8.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "tinybench",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "BenchmarkDotNet",
            "direct": false,
            "version": "0.15.8",
            "ecosystem": "nuget"
          },
          {
            "name": "GoDaddy.Asherah.AppEncryption",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "nuget"
          },
          {
            "name": "GoDaddy.Asherah.AppEncryption",
            "direct": false,
            "version": "0.2.10",
            "ecosystem": "nuget"
          },
          {
            "name": "GoDaddy.Asherah.SecureMemory",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "nuget"
          },
          {
            "name": "Microsoft.Extensions.Logging",
            "direct": false,
            "version": "10.0.7",
            "ecosystem": "nuget"
          },
          {
            "name": "Microsoft.Extensions.Logging.Abstractions",
            "direct": false,
            "version": null,
            "ecosystem": "nuget"
          },
          {
            "name": "Newtonsoft.Json",
            "direct": false,
            "version": null,
            "ecosystem": "nuget"
          },
          {
            "name": "ext-ffi",
            "direct": false,
            "version": null,
            "ecosystem": "packagist"
          },
          {
            "name": "ext-json",
            "direct": false,
            "version": null,
            "ecosystem": "packagist"
          },
          {
            "name": "friendsofphp/php-cs-fixer",
            "direct": false,
            "version": null,
            "ecosystem": "packagist"
          },
          {
            "name": "php",
            "direct": false,
            "version": null,
            "ecosystem": "packagist"
          },
          {
            "name": "phpstan/phpstan",
            "direct": false,
            "version": null,
            "ecosystem": "packagist"
          },
          {
            "name": "phpunit/phpunit",
            "direct": false,
            "version": null,
            "ecosystem": "packagist"
          },
          {
            "name": "ffi",
            "direct": false,
            "version": null,
            "ecosystem": "rubygems"
          },
          {
            "name": "logger",
            "direct": false,
            "version": null,
            "ecosystem": "rubygems"
          },
          {
            "name": "minitest",
            "direct": false,
            "version": "5.27.0",
            "ecosystem": "rubygems"
          },
          {
            "name": "rake",
            "direct": false,
            "version": "13.4.2",
            "ecosystem": "rubygems"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 784,
        "direct_count": 127,
        "indirect_count": 657
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 10,
        "merged_prs": 310,
        "open_issues": 1,
        "closed_ratio": 0.8,
        "closed_issues": 4,
        "closed_unmerged_prs": 39
      },
      "bus_factor": 1,
      "bot_contributors": 1,
      "top_contributors": [
        {
          "type": "User",
          "login": "jgowdy-godaddy",
          "commits": 508,
          "avatar_url": "https://avatars.githubusercontent.com/u/130084966?v=4"
        },
        {
          "type": "User",
          "login": "jgowdy",
          "commits": 98,
          "avatar_url": "https://avatars.githubusercontent.com/u/1331960?v=4"
        },
        {
          "type": "User",
          "login": "chief-micco",
          "commits": 12,
          "avatar_url": "https://avatars.githubusercontent.com/u/194434024?v=4"
        },
        {
          "type": "User",
          "login": "scourtney-godaddy",
          "commits": 7,
          "avatar_url": "https://avatars.githubusercontent.com/u/109175789?v=4"
        },
        {
          "type": "User",
          "login": "dnasevic-godaddy",
          "commits": 4,
          "avatar_url": "https://avatars.githubusercontent.com/u/84343272?v=4"
        }
      ],
      "contributors_sampled": 5,
      "top_contributor_share": 0.808
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "auto-rerun-failed-publish.yml",
        "benchmark-cold.yml",
        "benchmark-hot.yml",
        "benchmark-memory.yml",
        "benchmark-setup.yml",
        "benchmark-warm.yml",
        "ci.yml",
        "codeql.yml",
        "php-aws-integration.yml",
        "publish-crates.yml",
        "publish-maven.yml",
        "publish-npm.yml",
        "publish-nuget.yml",
        "publish-php.yml",
        "publish-pypi.yml",
        "publish-rubygems.yml",
        "publish-server.yml",
        "release-cobhan.yml",
        "test-runner.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [
        ".php-cs-fixer.php",
        ".rubocop.yml",
        "phpstan.neon"
      ],
      "has_editorconfig": true,
      "has_linter_config": true,
      "has_precommit_config": true
    },
    "security_signals": {
      "lockfiles": [
        "Cargo.lock",
        "go.sum",
        "package-lock.json",
        "packages.lock.json"
      ],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 10,
            "reason": "no binaries found in the repo",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": 3,
            "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": "28 out of 28 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": 2,
            "reason": "Found 6/22 approved changesets -- score normalized to 2",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 3,
            "reason": "project has 1 contributing companies or organizations -- score normalized to 3",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": null,
            "reason": "no workflows found",
            "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 3 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": null,
            "reason": "packaging workflow not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": null,
            "reason": "no dependencies found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 10,
            "reason": "SAST tool is run on all commits",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 4,
            "reason": "security policy file 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": null,
            "reason": "No tokens found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 10,
            "reason": "0 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "07a27b18afa522b7436d2cc35a85055e7333dc27",
        "ran_at": "2026-07-27T11:25:02Z",
        "aggregate_score": 6,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": true,
      "has_security_policy": true,
      "has_dependabot_config": true
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-07-25T06:33:25Z",
      "oldest_open_prs": [
        {
          "number": 343,
          "created_at": "2026-06-20T03:17:10Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 345,
          "created_at": "2026-06-23T02:43:23Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 353,
          "created_at": "2026-07-04T05:49:59Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 355,
          "created_at": "2026-07-10T19:04:27Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 356,
          "created_at": "2026-07-10T19:08:59Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 357,
          "created_at": "2026-07-10T19:59:25Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 360,
          "created_at": "2026-07-15T23:24:38Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 362,
          "created_at": "2026-07-21T02:43:32Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 363,
          "created_at": "2026-07-21T02:48:06Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 364,
          "created_at": "2026-07-21T02:51:44Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ],
      "last_merged_pr_at": "2026-07-16T09:32:07Z",
      "ci_last_conclusion": "FAILURE",
      "oldest_open_issues": [
        {
          "number": 361,
          "created_at": "2026-07-16T15:32:48Z",
          "last_comment_at": "2026-07-17T14:28:51Z",
          "last_comment_author": "chief-micco"
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/godaddy/asherah-ffi",
    "host": "github.com",
    "name": "asherah-ffi",
    "owner": "godaddy"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "good",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 70,
      "inputs": {
        "security": 62,
        "vitality": 85,
        "community": 40,
        "governance": 63,
        "engineering": 96
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "excellent",
        "name": "Vitality",
        "value": 85,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "good",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 81,
            "inputs": {
              "commits_last_year": 667,
              "human_commit_share": 0.84,
              "days_since_last_push": 6,
              "active_weeks_last_year": 25
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 6 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 6
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "25/52 weeks with commits",
                "points": 17.3,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 25
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "667 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 667
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 3 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": 100,
              "latest_release_tag": "v1.0.0",
              "releases_from_tags": false,
              "days_since_latest_release": 37,
              "mean_days_between_releases": 3.2
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "100 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 100
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 37 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 37
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~3.2 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 3.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": 11,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "last human commit 11 days ago",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_maintained",
                    "params": {
                      "days": 11
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "at_risk",
        "name": "Community & Adoption",
        "value": 40,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "critical",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 1,
            "inputs": {
              "forks": 1,
              "stars": 0,
              "watchers": 0,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "0 stars",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "1 forks",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "0 watchers",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "excellent",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 85,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": true,
              "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": 18,
                "status": "met",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 13.5,
                "status": "met",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.3
              }
            ]
          },
          {
            "key": "ecosystem_adoption",
            "band": "at_risk",
            "name": "Ecosystem adoption (downloads)",
            "note": null,
            "notes": [],
            "value": 38,
            "inputs": {
              "packages": [
                "godaddy/asherah",
                "github.com/godaddy/asherah-ffi/asherah-go",
                "asherah",
                "asherah-ffi"
              ],
              "dependents": 0,
              "ecosystems": "crates, go, packagist",
              "total_downloads": 2361,
              "monthly_downloads": 775
            },
            "components": [
              {
                "key": "monthly_downloads",
                "name": "Monthly downloads",
                "detail": "775 downloads/month across crates, go, packagist",
                "points": 38.5,
                "status": "partial",
                "details": [
                  {
                    "code": "downloads_monthly",
                    "params": {
                      "count": 775,
                      "ecosystems": "crates, go, packagist"
                    }
                  }
                ],
                "max_points": 80
              },
              {
                "key": "registry_dependents",
                "name": "Registry dependents",
                "detail": "0 packages depend on it",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "registry_dependents",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "moderate",
        "name": "Sustainability & Governance",
        "value": 63,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "critical",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 23,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 5,
              "top_contributor_share": 0.808
            },
            "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 81% of commits",
                "points": 4.3,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 81
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "5 contributors",
                "points": 6.8,
                "status": "partial",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 5
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 1 contributing companies or organizations -- score normalized to 3",
                "points": 3,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "good",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 74,
            "inputs": {
              "merged_prs": 310,
              "open_issues": 1,
              "closed_issues": 4,
              "issue_closed_ratio": 0.8,
              "closed_unmerged_prs": 39
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "80% of issues closed",
                "points": 37.4,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 80
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "310/349 decided PRs merged",
                "points": 34,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 310,
                      "decided": 349
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 6/22 approved changesets -- score normalized to 2",
                "points": 3,
                "status": "partial",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "good",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 72,
            "inputs": {
              "followers": 228,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "godaddy",
              "public_repos": 215,
              "account_age_days": 5287
            },
            "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": "228 followers of godaddy",
                "points": 17,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 228,
                      "login": "godaddy"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "215 public repos, account ~14 yr old",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 215
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 14
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "excellent",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "godaddy/asherah",
                "github.com/godaddy/asherah-ffi/asherah-go",
                "asherah",
                "asherah-ffi"
              ],
              "ecosystems": "crates, go, packagist",
              "any_deprecated": false,
              "min_days_since_publish": 37
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "4 package(s) on crates, go, packagist",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 4,
                      "ecosystems": "crates, go, packagist"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 37 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 37
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "19 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 19
                    }
                  }
                ],
                "max_points": 20
              },
              {
                "key": "not_deprecated",
                "name": "Not deprecated",
                "detail": "active, not deprecated or yanked",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "package_not_deprecated",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "excellent",
        "name": "Engineering Quality",
        "value": 96,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "excellent",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": true,
              "has_linter_config": true,
              "has_precommit_config": true
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "19 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 19
                    }
                  }
                ],
                "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": ".php-cs-fixer.php, .rubocop.yml, phpstan.neon",
                "points": 16,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".php-cs-fixer.php, .rubocop.yml, phpstan.neon"
                    }
                  }
                ],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 9.6,
                "status": "met",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 6.4,
                "status": "met",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "28 out of 28 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": [
                "cryptography",
                "dotnet",
                "encryption",
                "envelope-encryption",
                "ffi",
                "go",
                "java",
                "key-rotation",
                "nodejs",
                "python",
                "ruby",
                "rust",
                "security"
              ],
              "has_wiki": false,
              "homepage": "https://github.com/godaddy/asherah-ffi",
              "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://github.com/godaddy/asherah-ffi",
                "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": "13 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 13
                    }
                  }
                ],
                "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": 62,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "moderate",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Dangerous-Workflow, Packaging, Pinned-Dependencies, Token-Permissions. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "dangerous_workflow",
                    "packaging",
                    "pinned_dependencies",
                    "token_permissions"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 60,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 14,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 4,
              "scorecard_aggregate": 6
            },
            "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": 2.2,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "28 out of 28 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 6/22 approved changesets -- score normalized to 2",
                "points": 1.5,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 1 contributing companies or organizations -- score normalized to 3",
                "points": 0.8,
                "status": "partial",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no workflows found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "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 3 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 not detected",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "no dependencies found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is run on all commits",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file detected",
                "points": 2,
                "status": "partial",
                "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": "No tokens found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "0 existing vulnerabilities detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "moderate",
            "name": "Dependency advisories",
            "note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories. Remaining weights renormalized. Matched 708 resolved dependencies against OSV; 76 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": 708
                }
              },
              {
                "code": "advisories_unassessed",
                "params": {
                  "count": 76
                }
              },
              {
                "code": "advisories_repo_graph_caveat",
                "params": {}
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 69,
            "inputs": {
              "source": "osv",
              "advisories": 90,
              "affected_packages": 23,
              "assessed_packages": 708,
              "unassessed_packages": 76,
              "affected_by_severity": "critical 3, high 4, moderate 5, unknown 11",
              "direct_affected_packages": 4
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "4 affected: openssl 0.10.78 (high 7.5), anyhow 1.0.102 (unknown), scc 2.4.0 (unknown), +1 more",
                "points": 11.4,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_affected",
                    "params": {
                      "count": 4,
                      "packages": "openssl 0.10.78 (high 7.5), anyhow 1.0.102 (unknown), scc 2.4.0 (unknown)"
                    }
                  },
                  {
                    "code": "advisories_affected_more",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "indirect_dependencies_free_of_known_advisories",
                "name": "Indirect dependencies free of known advisories",
                "detail": "transitive set not separable from development and test dependencies in this scope",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_scope_not_separable",
                    "params": {}
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "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": 708,
              "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": 6
            },
            "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": "excellent",
        "name": "AI Readiness",
        "value": 90,
        "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": 0.964,
              "agent_instruction_files": [
                "AGENTS.md",
                "CLAUDE.md"
              ],
              "agent_instruction_max_bytes": 10921
            },
            "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": "81 of 84 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 81,
                      "sampled": 84
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "excellent",
            "name": "Verify loop (build / test / typecheck)",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Pinned-Dependencies. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_pinned_dependencies"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 94,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "Cargo.lock",
                "go.sum",
                "package-lock.json",
                "packages.lock.json"
              ],
              "has_dockerfile": true,
              "typed_language": true,
              "bootstrap_files": [],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [
                "asherah-py/asherah/py.typed"
              ],
              "agent_commit_share": 0.08,
              "toolchain_manifests": [
                "Cargo.toml",
                "asherah-cobhan/Cargo.toml",
                "asherah-cobhan/interop/go.mod",
                "asherah-config/Cargo.toml",
                "asherah-dotnet/src/GoDaddy.Asherah.Encryption.Compat/GoDaddy.Asherah.Encryption.Compat.csproj",
                "asherah-dotnet/src/GoDaddy.Asherah.Encryption/GoDaddy.Asherah.Encryption.csproj",
                "asherah-dotnet/tests/GoDaddy.Asherah.Encryption.Compat.Tests/GoDaddy.Asherah.Encryption.Compat.Tests.csproj",
                "asherah-dotnet/tests/GoDaddy.Asherah.Encryption.Tests/GoDaddy.Asherah.Encryption.Tests.csproj",
                "asherah-ffi/Cargo.toml",
                "asherah-go/go.mod",
                "asherah-java/Cargo.toml",
                "asherah-java/java/pom.xml",
                "asherah-node/Cargo.toml",
                "asherah-py/Cargo.toml",
                "asherah-server/Cargo.toml",
                "asherah/Cargo.toml",
                "benchmarks/asherah-bench/Cargo.toml",
                "benchmarks/dotnet-bench-canonical/dotnet-bench-canonical.csproj",
                "benchmarks/dotnet-bench-newmetastore/dotnet-bench-newmetastore.csproj",
                "benchmarks/dotnet-bench/dotnet-bench.csproj",
                "benchmarks/go-bench/go.mod",
                "benchmarks/go-wrapper/go.mod",
                "benchmarks/grpc-bench/go.mod",
                "benchmarks/java-bench-canonical/pom.xml",
                "benchmarks/java-bench/pom.xml",
                "benchmarks/native-bench/go-bench/go.mod",
                "benchmarks/native-bench/rust-bench/Cargo.toml",
                "fuzz/Cargo.toml",
                "interop-grpc/client/Cargo.toml",
                "interop/canonical-csharp/CanonicalCsharpProbe.csproj",
                "interop/canonical-go/go.mod",
                "interop/canonical-java/pom.xml",
                "samples/dotnet/Sample.csproj",
                "samples/go/go.mod",
                "samples/rust/Cargo.toml"
              ],
              "dependency_bot_commit_share": 0.16
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "Cargo.toml, asherah-cobhan/Cargo.toml, asherah-cobhan/interop/go.mod (toolchain convention, no task runner)",
                "points": 12.6,
                "status": "partial",
                "details": [
                  {
                    "code": "toolchain_convention",
                    "params": {
                      "files": "Cargo.toml, asherah-cobhan/Cargo.toml, asherah-cobhan/interop/go.mod"
                    }
                  }
                ],
                "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": ".php-cs-fixer.php, .rubocop.yml, phpstan.neon",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".php-cs-fixer.php, .rubocop.yml, phpstan.neon"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "asherah-py/asherah/py.typed",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "asherah-py/asherah/py.typed"
                    }
                  }
                ],
                "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": "8 of the last 100 commits agent-authored or agent-credited",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "agent_authored_commits",
                    "params": {
                      "count": 8,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "16 of the last 100 commits are automated dependency updates",
                "points": 8,
                "status": "met",
                "details": [
                  {
                    "code": "dependency_bot_commits",
                    "params": {
                      "count": 16,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "no dependencies found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "excellent",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 99,
            "inputs": {
              "primary_language": "Rust",
              "largest_source_bytes": 198446,
              "source_files_sampled": 352,
              "oversized_source_files": 4
            },
            "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": "4/352 source files over 60KB",
                "points": 54.4,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 352,
                      "oversized": 4
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "good",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 80,
            "inputs": {
              "example_dirs": [
                "examples",
                "samples"
              ],
              "has_mcp_signal": false,
              "api_schema_files": [
                "asherah-server/proto/appencryption.proto",
                "interop-grpc/client/proto/appencryption.proto"
              ]
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": "asherah-server/proto/appencryption.proto, interop-grpc/client/proto/appencryption.proto",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "asherah-server/proto/appencryption.proto, interop-grpc/client/proto/appencryption.proto"
                    }
                  }
                ],
                "max_points": 40
              },
              {
                "key": "mcp_server",
                "name": "MCP server",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": "examples, samples",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "examples, samples"
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [
    "Could not fetch crates package 'asherah-workspace' from its registry",
    "Could not fetch crates package 'asherah-py' from its registry",
    "Could not fetch crates package 'asherah-java' from its registry",
    "Could not fetch crates package 'asherah-node' from its registry"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-27T11:25:20.892180Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/g/godaddy/asherah-ffi.svg",
  "full_name": "godaddy/asherah-ffi",
  "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 agregadasPackagist, Go, crates.io.