Registro público
Informe de salud del softwareesquema 0.31.0 · métricas 2.5.0 · 2026-08-05 07:22 UTC

conan-io / conan

Conan - The open-source C and C++ package manager

PythonMIT★ 9469 estrellas⑂ 1117 forksdesde dic 2015Ver en GitHub ↗
TipoHerramienta de línea de comandosBibliotecacómo se determina

conan-io/conan tiene un índice de salud de 92 sobre 100, lo que lo sitúa en la banda Excelente. Su puntuación más alta es Vitality (99/100) y la más baja, AI Readiness (40/100). Se actualizó por última vez hoy. 2 personas concentran la mayor parte del trabajo reciente.

92
global / 100
Excelente

Índice de salud del software

Las métricas se agrupan en categorías ponderadas sobre una escala estandarizada de 1 a 100. El resultado global parte de su media ponderada, calibrada contra la distribución del registro público para que las bandas tengan significado percentil; cuando la evidencia pública activa la Política de Jurisdicciones de Alto Riesgo, la calificación se ajusta y recibe un límite «En riesgo» de 34.

92
Excepcional93-100El nivel más alto del registro (≈ el 5% superior); cumple prácticamente todos los criterios evaluados
Excelente80-92Sólido en todos los frentes; carencias menores
Bueno65-79Saludable; carencias limitadas y manejables
Moderado50-64Aceptable con carencias notables; se recomienda revisión
Débil35-49Debilidades sustanciales en varias áreas
En riesgo20-34Debilidades significativas; su adopción exige cautela
Crítico1-19Problemas 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.

El resultado global ponderado 78 se calibra a 92 en la escala publicada del índice (calibración del registro 2026-08-02).

Titularidad

Conan.ioOrganización
438 seguidores38 repositorios públicosdesde oct 2015

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
PyPIconan2.31.23.796.151366hace 0 díasc-c++packagelibrariesdevelopermanagerdependencytoolc++cpp

Métricas por categoría

Vitalidad

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

99Excepcional · 21% del índice global
Cómo se puntúa
36/36Recencia de push — último push hace 0 días
34.6/36Cadencia de commits — 50/52 semanas con commits
18/18Volumen de commits — 550 commits en el último año
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 21 issue activity found in the last 90 days -- score normalized to 10
Datos de entrada utilizados
commits_last_year550
human_commit_share1
days_since_last_push0
active_weeks_last_year50
Cómo se puntúa
27/27Publica versiones — 100 versiones publicadas
36/36Recencia de las versiones — última versión hace 0 días
27/27Cadencia de publicación — una versión cada ~14,7 días
8/10OpenSSF Scorecard: Signed-Releases — 5 out of the last 5 releases have a total of 5 signed artifacts.
Datos de entrada utilizados
releases_count100
latest_release_tag2.31.2
releases_from_tagsno
days_since_latest_release0
mean_days_between_releases14,7

Comunidad y Adopción

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

91Excelente · 17% del índice global
Cómo se puntúa
60/60Estrellas — 9469 estrellas
25/25Forks — 1117 forks
11.7/15Observadores — 128 observadores
Datos de entrada utilizados
forks1117
stars9469
watchers128
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Cómo se puntúa
22.5/22.5README
22.5/22.5Licencia — licencia reconocida (MIT)
18/18Guía CONTRIBUTING
0/13.5Código de conducta
0/7.2Plantilla de issues
6.3/6.3Plantilla de PR
Datos de entrada utilizados
has_readme
has_license
readme_badges0
has_contributing
has_issue_templateno
has_code_of_conductno
readme_badge_services
has_pull_request_template
Cómo se puntúa
80/80Descargas mensuales — 3.796.151 descargas/mes en pypi
0/20Dependientes en el registro — no lo informa este ecosistema
Datos de entrada utilizados
packagesconan
dependents
ecosystemspypi
total_downloads
monthly_downloads3.796.151
Excluidos de la puntuación (sin datos o no aplicable): Dependientes en el registro. Los pesos restantes se han renormalizado.

Sostenibilidad y Gobernanza

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

80Excelente · 23% del índice global
Cómo se puntúa
25.2/54Factor bus — la mitad de los commits recae en 2 contribuyente(s)
13/22.5Distribución de commits — el principal contribuyente firma el 42% de los commits
13.5/13.5Amplitud de contribuyentes — 100 contribuyentes
10/10OpenSSF Scorecard: Contributors — project has 28 contributing companies or organizations
Datos de entrada utilizados
bus_factor2
contributors_sampled100
top_contributor_share0,421
Cómo se puntúa
40.4/42Resolución de issues — 96% de issues cerradas
25.9/30Aceptación de PR — 6273/7256 PR decididos fusionados
13/13Newcomer PR acceptance — 1/1 PR de contribuyentes primerizos fusionados en 30 d
12/15OpenSSF Scorecard: Code-Review — Found 25/30 approved changesets -- score normalized to 8
Datos de entrada utilizados
merged_prs6273
open_issues460
closed_issues11.975
prs_merged_7d7
prs_decided_7d10
prs_merged_30d48
prs_decided_30d59
issue_closed_ratio0,963
closed_unmerged_prs983
first_time_authors_30d1
first_time_prs_merged_30d1
first_time_prs_decided_30d1
Cómo se puntúa
30/30Respaldo de la propiedad — propiedad de una organización
0/20Dominio verificado
19/25Alcance del propietario — 438 seguidores de conan-io
23.6/25Trayectoria — 38 repos públicos, cuenta de ~10 años
Datos de entrada utilizados
followers438
owner_typeOrganization
is_verified
owner_loginconan-io
public_repos38
account_age_days3941
Cómo se puntúa
25/25Publicado y resoluble — 1 paquete(s) en pypi
35/35Recencia de publicación — última publicación hace 0 días
20/20Historial de versiones — 366 versiones en el registro
20/20No obsoleto — activo, ni obsoleto ni retirado
Datos de entrada utilizados
packagesconan
ecosystemspypi
any_deprecatedno
min_days_since_publish0

Calidad de Ingeniería

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

69Bueno · 19% del índice global
Cómo se puntúa
24/24Flujos de trabajo de CI — 6 flujo(s) de trabajo
24/24Pruebas presentes
0/16Configuración de linter
0/9.6Hooks de pre-commit
6.4/6.4.editorconfig
18/20OpenSSF Scorecard: CI-Tests — 25 out of 26 merged PRs checked by a CI test -- score normalized to 9
Datos de entrada utilizados
has_ci
has_tests
has_editorconfig
has_linter_configno
has_precommit_configno
Cómo se puntúa
30/30README
0/25Directorio de documentación
15/15Sitio de documentación / página del proyecto — https://conan.io
10/10Descripción del repositorio
10/10Topics — 7 topics
0/10Wiki
Datos de entrada utilizados
topicspackage-manager, cpp, c, cplusplus, multi-platform, cmake, conan
has_wikino
homepagehttps://conan.io
has_readme
has_docs_dirno
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?

56Moderado · 16% del índice global
Cómo se puntúa
7.5/7.5Binary-Artifacts — no binaries found in the repo
0/7.5Branch-Protection — sin datos
2.2/2.5CI-Tests — 25 out of 26 merged PRs checked by a CI test -- score normalized to 9
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
6/7.5Code-Review — Found 25/30 approved changesets -- score normalized to 8
2.5/2.5Contributors — project has 28 contributing companies or organizations
10/10Dangerous-Workflow — no dangerous workflow patterns detected
0/7.5Dependency-Update-Tool — no update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5Licencia — license file detected
7.5/7.5Maintained — 30 commit(s) and 21 issue activity found in the last 90 days -- score normalized to 10
0/5Packaging — sin datos
0/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
0/5SAST — SAST tool is not run on all commits -- score normalized to 0
0/5Security-Policy — security policy file not detected
6/7.5Signed-Releases — 5 out of the last 5 releases have a total of 5 signed artifacts.
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
7.5/7.5Vulnerabilities — 0 existing vulnerabilities detected
Datos de entrada utilizados
sourceopenssf_scorecard
checks_evaluated16
scorecard_versionv5.5.0
checks_inconclusive2
scorecard_aggregate5,6
Excluidos de la puntuación (sin datos o no aplicable): branch_protection, packaging. Los pesos restantes se han renormalizado.

Preparación para IA

¿Hasta qué punto está el repositorio preparado para desarrollarse y mantenerse con agentes de codificación de IA? Tiene un peso deliberadamente pequeño (4%): las herramientas para agentes son una señal real de mantenimiento, pero un repositorio sin ninguna puede alcanzar igualmente 100/100.

40Débil · 4% del índice global
Cómo se puntúa
0/45Instrucciones para agentes — sin CLAUDE.md / AGENTS.md / reglas de editor
0/15Documentación legible por máquinas (llms.txt)
40/40Historial de commits legible — 85 de 100 commits humanos declaran su intención (asunto estructurado o cuerpo explicativo)
Datos de entrada utilizados
has_llms_txtno
legible_history_share0,85
agent_instruction_files
agent_instruction_max_bytes
Cómo se puntúa
0/18Arranque con un solo comando
22/22Pruebas automatizadas
0/11Configuración de lint / formato
0/11Verificación estática de tipos
10/10Entorno reproducible — Dockerfile
2/10Práctica demostrada con agentes — 1 de los últimos 100 commits con autoría o crédito de agente
0/8Mantenimiento automatizado — no se observan actualizaciones automáticas de dependencias
0/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
Datos de entrada utilizados
has_nixno
has_tests
lockfiles
has_dockerfile
typed_languageno
bootstrap_files
has_devcontainerno
has_linter_configno
typecheck_configs
agent_commit_share0,01
toolchain_manifests
dependency_bot_commit_share0
Cómo se puntúa
0/45Código verificable por tipos — Python sin configuración de verificación de tipos
54.7/55Tamaños de archivo manejables — 6/1078 archivos fuente de más de 60 KB
Datos de entrada utilizados
primary_languagePython
largest_source_bytes121.680
source_files_sampled1078
oversized_source_files6

Datos clave

9469estrellas de GitHub
100contribuidores
550commits en los últimos 12 meses
0días desde el último push
100versiones publicadas
2factor bus
460issues abiertas
PyPIecosistemas de paquetes

Advertencias de recopilación de datos

  • Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token
  • deps.dev does not index pypi:conan@2.31.2; advisories assessed against the repository dependency graph instead
  • No resolved dependencies carried a version and a supported ecosystem

Más detalle

Historial de estrellas y forks 0 ★ / 1117 ⇿
0Estrellas
1117Forks
97Versiones

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

Solo se muestra el historial más reciente: este repositorio supera la ventana de recopilación, por lo que no se captura el historial más antiguo.

0200400600800100012001117142017-082022-012026-07
Mayor 1Menor 41Parche 51

Cada punto abarca 9 días.

OpenSSF Scorecard 5.6 / 10
5.6agregado

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-08-05 07:22 UTC

10Binary-Artifactsno binaries found in the repo
n/dBranch-Protectioninternal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
9CI-Tests25 out of 26 merged PRs checked by a CI test -- score normalized to 9
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
8Code-ReviewFound 25/30 approved changesets -- score normalized to 8
10Contributorsproject has 28 contributing companies or organizations
10Dangerous-Workflowno dangerous workflow patterns detected
0Dependency-Update-Toolno update tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
10Maintained30 commit(s) and 21 issue activity found in the last 90 days -- score normalized to 10
n/dPackagingpackaging workflow not detected
0Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 0
0SASTSAST tool is not run on all commits -- score normalized to 0
0Security-Policysecurity policy file not detected
8Signed-Releases5 out of the last 5 releases have a total of 5 signed artifacts.
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
10Vulnerabilities0 existing vulnerabilities detected
Todas las dependencias 18

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

RegistroPaqueteVersiónRelación
PyPIbottleindirecta
PyPIcoloramaindirecta
PyPIdockerindirecta
PyPIfastenersindirecta
PyPIjinja2indirecta
PyPIparamikoindirecta
PyPIpatch-ngindirecta
PyPIpluginbaseindirecta
PyPIpyjwtindirecta
PyPIpytestindirecta
PyPIpytest-covindirecta
PyPIpytest-xdistindirecta
PyPIpython-dateutilindirecta
PyPIpyyamlindirecta
PyPIrequestsindirecta
PyPIsetuptoolsindirecta
PyPIurllib3indirecta
PyPIwebtestindirecta
Avisos de dependencias sin evaluar

El cotejo de avisos no pudo ejecutarse para este informe: No resolved dependencies carried a version and a supported ecosystem

Informe JSON sin procesar legible por máquina
{
  "data": {
    "icon": {
      "bytes": 7070,
      "width": 71,
      "height": 74,
      "rejected": [],
      "collected": true,
      "media_type": "image/png",
      "source_url": "https://conan.io/favicon.png?v=1",
      "source_type": "homepage",
      "content_hash": "5d8a57a237420b07ea8540d04c0046dc98de4d699737b48229e553c9216af2bd",
      "candidates_considered": 1
    },
    "repo": {
      "topics": [
        "package-manager",
        "cpp",
        "c",
        "cplusplus",
        "multi-platform",
        "cmake",
        "conan"
      ],
      "is_fork": false,
      "size_kb": 35724,
      "has_wiki": false,
      "homepage": "https://conan.io",
      "languages": {
        "Python": 7704724,
        "Dockerfile": 326
      },
      "pushed_at": "2026-08-04T19:09:17Z",
      "created_at": "2015-12-01T13:17:02Z",
      "owner_type": "Organization",
      "updated_at": "2026-08-04T19:05:49Z",
      "description": "Conan - The open-source C and C++ package manager",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "MIT",
      "default_branch": "develop2",
      "license_spdx_raw": "MIT",
      "primary_language": "Python",
      "significant_languages": [
        "Python"
      ]
    },
    "owner": {
      "blog": "https://conan.io",
      "name": "Conan.io",
      "type": "Organization",
      "login": "conan-io",
      "company": null,
      "location": null,
      "followers": 438,
      "avatar_url": "https://avatars.githubusercontent.com/u/15212165?v=4",
      "created_at": "2015-10-20T10:58:44Z",
      "is_verified": null,
      "public_repos": 38,
      "account_age_days": 3941
    },
    "license": {
      "state": "standard",
      "spdx_id": "MIT",
      "raw_spdx": "MIT",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "2.31.2",
          "kind": "patch",
          "published_at": "2026-08-04T19:10:26Z"
        },
        {
          "tag": "2.31.1",
          "kind": "patch",
          "published_at": "2026-07-24T11:54:53Z"
        },
        {
          "tag": "2.31.0",
          "kind": "minor",
          "published_at": "2026-07-23T15:25:17Z"
        },
        {
          "tag": "2.30.0",
          "kind": "minor",
          "published_at": "2026-06-29T14:36:27Z"
        },
        {
          "tag": "2.29.1",
          "kind": "patch",
          "published_at": "2026-06-12T10:55:57Z"
        },
        {
          "tag": "2.29.0",
          "kind": "minor",
          "published_at": "2026-05-28T16:27:51Z"
        },
        {
          "tag": "2.28.1",
          "kind": "patch",
          "published_at": "2026-04-30T11:24:30Z"
        },
        {
          "tag": "2.28.0",
          "kind": "minor",
          "published_at": "2026-04-28T14:30:22Z"
        },
        {
          "tag": "2.27.1",
          "kind": "patch",
          "published_at": "2026-04-13T10:20:23Z"
        },
        {
          "tag": "2.27.0",
          "kind": "minor",
          "published_at": "2026-03-25T15:06:55Z"
        },
        {
          "tag": "2.26.2",
          "kind": "patch",
          "published_at": "2026-03-05T09:31:13Z"
        },
        {
          "tag": "2.26.1",
          "kind": "patch",
          "published_at": "2026-02-27T13:16:47Z"
        },
        {
          "tag": "2.26.0",
          "kind": "minor",
          "published_at": "2026-02-25T17:30:27Z"
        },
        {
          "tag": "2.25.2",
          "kind": "patch",
          "published_at": "2026-02-04T09:06:24Z"
        },
        {
          "tag": "2.25.1",
          "kind": "patch",
          "published_at": "2026-01-29T15:33:53Z"
        },
        {
          "tag": "2.25.0",
          "kind": "minor",
          "published_at": "2026-01-28T06:15:17Z"
        },
        {
          "tag": "2.24.0",
          "kind": "minor",
          "published_at": "2025-12-15T13:48:06Z"
        },
        {
          "tag": "2.23.0",
          "kind": "minor",
          "published_at": "2025-11-25T17:43:05Z"
        },
        {
          "tag": "2.22.2",
          "kind": "patch",
          "published_at": "2025-11-07T16:15:38Z"
        },
        {
          "tag": "2.22.1",
          "kind": "patch",
          "published_at": "2025-10-30T07:23:27Z"
        },
        {
          "tag": "2.22.0",
          "kind": "minor",
          "published_at": "2025-10-29T14:25:43Z"
        },
        {
          "tag": "2.21.0",
          "kind": "minor",
          "published_at": "2025-09-29T16:24:40Z"
        },
        {
          "tag": "2.20.1",
          "kind": "patch",
          "published_at": "2025-09-04T06:09:43Z"
        },
        {
          "tag": "2.20.0",
          "kind": "minor",
          "published_at": "2025-09-01T14:36:11Z"
        },
        {
          "tag": "2.19.1",
          "kind": "patch",
          "published_at": "2025-07-30T07:21:08Z"
        },
        {
          "tag": "2.19.0",
          "kind": "minor",
          "published_at": "2025-07-23T16:12:42Z"
        },
        {
          "tag": "2.18.1",
          "kind": "patch",
          "published_at": "2025-07-04T07:07:54Z"
        },
        {
          "tag": "2.18.0",
          "kind": "minor",
          "published_at": "2025-06-30T14:25:39Z"
        },
        {
          "tag": "2.17.1",
          "kind": "patch",
          "published_at": "2025-06-23T09:33:43Z"
        },
        {
          "tag": "2.17.0",
          "kind": "minor",
          "published_at": "2025-05-28T17:35:39Z"
        },
        {
          "tag": "2.16.1",
          "kind": "patch",
          "published_at": "2025-04-29T12:21:27Z"
        },
        {
          "tag": "2.16.0",
          "kind": "minor",
          "published_at": "2025-04-29T06:34:35Z"
        },
        {
          "tag": "2.15.1",
          "kind": "patch",
          "published_at": "2025-04-14T12:55:18Z"
        },
        {
          "tag": "2.15.0",
          "kind": "minor",
          "published_at": "2025-03-31T12:47:06Z"
        },
        {
          "tag": "2.14.0",
          "kind": "minor",
          "published_at": "2025-03-12T12:26:19Z"
        },
        {
          "tag": "2.13.0",
          "kind": "minor",
          "published_at": "2025-02-26T09:12:09Z"
        },
        {
          "tag": "2.12.2",
          "kind": "patch",
          "published_at": "2025-02-12T15:04:30Z"
        },
        {
          "tag": "2.12.1",
          "kind": "patch",
          "published_at": "2025-01-28T11:41:58Z"
        },
        {
          "tag": "2.12.0",
          "kind": "minor",
          "published_at": "2025-01-27T16:37:28Z"
        },
        {
          "tag": "2.11.0",
          "kind": "minor",
          "published_at": "2024-12-18T20:30:02Z"
        },
        {
          "tag": "2.10.3",
          "kind": "patch",
          "published_at": "2024-12-18T08:22:20Z"
        },
        {
          "tag": "2.10.2",
          "kind": "patch",
          "published_at": "2024-12-10T13:19:46Z"
        },
        {
          "tag": "2.10.1",
          "kind": "patch",
          "published_at": "2024-12-04T14:33:26Z"
        },
        {
          "tag": "2.10.0",
          "kind": "minor",
          "published_at": "2024-12-03T13:01:17Z"
        },
        {
          "tag": "1.66.0",
          "kind": "minor",
          "published_at": "2024-12-02T17:38:32Z"
        },
        {
          "tag": "2.9.3",
          "kind": "patch",
          "published_at": "2024-11-21T10:16:46Z"
        },
        {
          "tag": "2.9.2",
          "kind": "patch",
          "published_at": "2024-11-07T11:46:01Z"
        },
        {
          "tag": "2.9.1",
          "kind": "patch",
          "published_at": "2024-10-30T12:44:22Z"
        },
        {
          "tag": "2.9.0",
          "kind": "minor",
          "published_at": "2024-10-29T16:22:09Z"
        },
        {
          "tag": "2.8.1",
          "kind": "patch",
          "published_at": "2024-10-17T09:37:09Z"
        },
        {
          "tag": "2.8.0",
          "kind": "minor",
          "published_at": "2024-09-30T14:49:12Z"
        },
        {
          "tag": "2.7.1",
          "kind": "patch",
          "published_at": "2024-09-11T10:32:24Z"
        },
        {
          "tag": "2.7.0",
          "kind": "minor",
          "published_at": "2024-08-28T16:45:34Z"
        },
        {
          "tag": "1.65.0",
          "kind": "minor",
          "published_at": "2024-08-12T14:56:49Z"
        },
        {
          "tag": "2.6.0",
          "kind": "minor",
          "published_at": "2024-08-01T05:57:01Z"
        },
        {
          "tag": "2.5.0",
          "kind": "minor",
          "published_at": "2024-07-03T15:57:35Z"
        },
        {
          "tag": "2.4.1",
          "kind": "patch",
          "published_at": "2024-06-10T13:08:54Z"
        },
        {
          "tag": "2.4.0",
          "kind": "minor",
          "published_at": "2024-06-05T14:02:14Z"
        },
        {
          "tag": "2.3.2",
          "kind": "patch",
          "published_at": "2024-05-28T09:10:08Z"
        },
        {
          "tag": "2.3.1",
          "kind": "patch",
          "published_at": "2024-05-16T17:40:45Z"
        },
        {
          "tag": "1.64.1",
          "kind": "patch",
          "published_at": "2024-05-14T09:38:24Z"
        },
        {
          "tag": "2.3.0",
          "kind": "minor",
          "published_at": "2024-05-06T16:43:30Z"
        },
        {
          "tag": "2.2.3",
          "kind": "patch",
          "published_at": "2024-04-17T15:51:50Z"
        },
        {
          "tag": "1.64.0",
          "kind": "minor",
          "published_at": "2024-04-04T14:13:09Z"
        },
        {
          "tag": "2.2.2",
          "kind": "patch",
          "published_at": "2024-03-25T15:15:38Z"
        },
        {
          "tag": "2.2.1",
          "kind": "patch",
          "published_at": "2024-03-20T17:52:42Z"
        },
        {
          "tag": "2.2.0",
          "kind": "minor",
          "published_at": "2024-03-20T14:26:35Z"
        },
        {
          "tag": "2.1.0",
          "kind": "minor",
          "published_at": "2024-02-15T17:59:05Z"
        },
        {
          "tag": "1.63.0",
          "kind": "minor",
          "published_at": "2024-02-12T16:57:24Z"
        },
        {
          "tag": "2.0.17",
          "kind": "patch",
          "published_at": "2024-01-10T15:33:12Z"
        },
        {
          "tag": "2.0.16",
          "kind": "patch",
          "published_at": "2023-12-21T10:50:06Z"
        },
        {
          "tag": "2.0.15",
          "kind": "patch",
          "published_at": "2023-12-20T16:54:21Z"
        },
        {
          "tag": "2.0.14",
          "kind": "patch",
          "published_at": "2023-11-14T13:57:40Z"
        },
        {
          "tag": "1.62.0",
          "kind": "minor",
          "published_at": "2023-11-14T13:51:55Z"
        },
        {
          "tag": "2.0.13",
          "kind": "patch",
          "published_at": "2023-09-28T10:27:54Z"
        },
        {
          "tag": "2.0.12",
          "kind": "patch",
          "published_at": "2023-09-26T16:36:36Z"
        },
        {
          "tag": "2.0.11",
          "kind": "patch",
          "published_at": "2023-09-18T07:56:52Z"
        },
        {
          "tag": "1.61.0",
          "kind": "minor",
          "published_at": "2023-09-13T10:58:07Z"
        },
        {
          "tag": "2.0.10",
          "kind": "patch",
          "published_at": "2023-08-29T13:04:49Z"
        },
        {
          "tag": "1.60.2",
          "kind": "patch",
          "published_at": "2023-07-26T10:49:03Z"
        },
        {
          "tag": "2.0.9",
          "kind": "patch",
          "published_at": "2023-07-19T19:21:47Z"
        },
        {
          "tag": "2.0.8",
          "kind": "patch",
          "published_at": "2023-07-13T11:36:12Z"
        },
        {
          "tag": "2.0.7",
          "kind": "patch",
          "published_at": "2023-06-21T11:09:06Z"
        },
        {
          "tag": "1.60.1",
          "kind": "patch",
          "published_at": "2023-05-30T14:17:49Z"
        },
        {
          "tag": "2.0.6",
          "kind": "patch",
          "published_at": "2023-05-26T11:30:54Z"
        },
        {
          "tag": "2.0.5",
          "kind": "patch",
          "published_at": "2023-05-18T13:48:57Z"
        },
        {
          "tag": "1.60.0",
          "kind": "minor",
          "published_at": "2023-05-11T15:27:51Z"
        },
        {
          "tag": "2.0.4",
          "kind": "patch",
          "published_at": "2023-04-11T14:41:48Z"
        },
        {
          "tag": "2.0.3",
          "kind": "patch",
          "published_at": "2023-04-03T13:44:36Z"
        },
        {
          "tag": "2.0.2",
          "kind": "patch",
          "published_at": "2023-03-15T12:01:54Z"
        },
        {
          "tag": "2.0.1",
          "kind": "patch",
          "published_at": "2023-03-03T09:18:42Z"
        },
        {
          "tag": "2.0.0",
          "kind": "major",
          "published_at": "2023-02-22T09:09:07Z"
        },
        {
          "tag": "2.0.0-beta10",
          "kind": "prerelease",
          "published_at": "2023-02-16T16:38:38Z"
        },
        {
          "tag": "1.59.0",
          "kind": "minor",
          "published_at": "2023-02-16T16:31:19Z"
        },
        {
          "tag": "2.0.0-beta9",
          "kind": "prerelease",
          "published_at": "2023-01-31T14:47:44Z"
        },
        {
          "tag": "1.58.0",
          "kind": "minor",
          "published_at": "2023-01-30T20:15:51Z"
        },
        {
          "tag": "2.0.0-beta8",
          "kind": "prerelease",
          "published_at": "2023-01-12T12:31:06Z"
        },
        {
          "tag": "1.57.0",
          "kind": "minor",
          "published_at": "2023-01-12T06:57:46Z"
        },
        {
          "tag": "2.0.0-beta7",
          "kind": "prerelease",
          "published_at": "2022-12-22T16:19:45Z"
        },
        {
          "tag": "1.56.0",
          "kind": "minor",
          "published_at": "2022-12-21T08:53:24Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "d5f74dc0b2da2a457f039c900577fcdcf9a59b81",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'release/2.31' into develop2",
          "author_name": "Carlos Zoido",
          "author_login": "czoido",
          "committed_at": "2026-08-04T19:05:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5b94bfbc49fbaf8e65c7c95dce4f1485c58ef6f2",
          "body": "…nd-trip for ``conan upload -l=to_upload.json`` without re-preparing the artifacts  (#20237)\n\n* Ensure we can round-trip a --dry-run in conan upload\n\nUpdate tests\n\nAssert same remote\n\nBetter approach\n\nOne test, clear comand layer\n\nCleaup\n\nCleaup\n\nDo not document this new experimental approach for now\n\nCleanup tests\n\n* Bump version to 2.31.2\n\n* fix msvc runner (#20236)\n\n* fix msvc runner\n\n* try VCTools\n\n* fix\n\n* cond 2025\n\n* wip\n\n---------\n\nCo-authored-by: James <james@conan.io>",
          "is_bot": false,
          "headline": "``conan upload .. --dry-run -f=json > to_upload.json`` now allows rou…",
          "author_name": "Abril Rincón Blanco",
          "author_login": "AbrilRBS",
          "committed_at": "2026-08-04T18:01:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e4fa669dedd725eab9963b47ba528f78a0fcff96",
          "body": "* fix msvc runner\n\n* try VCTools\n\n* fix\n\n* cond 2025\n\n* wip",
          "is_bot": false,
          "headline": "fix msvc runner (#20236)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-08-04T17:07:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2e4d0d33dee2540f6bf987dea1891bbc7285dad2",
          "body": "* remove vigenere cypher\n\n* fix test\n\n* add migration\n\n* wip",
          "is_bot": false,
          "headline": "remove vigenere cypher (#20227)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-08-04T14:12:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0076d4b1e3ea2e226831a9484ad99971bccb0b47",
          "body": "… (#20229)\n\nFix ascii",
          "is_bot": false,
          "headline": "Fix filename parsing in conan report diff html report, add dark theme…",
          "author_name": "Abril Rincón Blanco",
          "author_login": "AbrilRBS",
          "committed_at": "2026-08-04T11:07:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "478f44fb26763654672871606c26a5200afc19e4",
          "body": "* compiler executables UX\n\n* test for GnuToolchain",
          "is_bot": false,
          "headline": "compiler executables UX (#20219)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-29T11:28:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ef344560dbef88844b104c6e11b8bc456e37a1fc",
          "body": "* Fix develop2, imrpove performance·\n\n* simplify diff",
          "is_bot": false,
          "headline": "Improve copy performance on patterns (#20226)",
          "author_name": "Abril Rincón Blanco",
          "author_login": "AbrilRBS",
          "committed_at": "2026-07-29T10:28:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1191d329c57ad88e430b70994ff9afc537275f10",
          "body": "* Update build_order_html\n\n* move normalization to js\n\n* add comments\n\n* remove external fonts | remove special symbols\n\n* remove build-order legacy support\n\n* Update conan/cli/formatters/graph/build_order_html.py\n\nCo-authored-by: Abril Rincón Blanco <5364255+AbrilRBS@users.noreply.github.com>\n\n---------\n\nCo-authored-by: James <memsharded@gmail.com>\nCo-authored-by: Abril Rincón Blanco <5364255+AbrilRBS@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Complete update of the graph build-order HTML formatter (#20174)",
          "author_name": "Ernesto de Gracia Herranz",
          "author_login": "ErniGH",
          "committed_at": "2026-07-29T09:53:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "12e0cf9e71ca10044eec16dabecff86b6b11057a",
          "body": "* Populate download cache on upload\n\n* tests for no population if no conf is priovided\n\n* Adress reviews",
          "is_bot": false,
          "headline": "Populate download cache on upload (#20163)",
          "author_name": "Abril Rincón Blanco",
          "author_login": "AbrilRBS",
          "committed_at": "2026-07-28T11:43:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c2bbb4d1be08f1c30e2da2e9f55f49b09ffbcbfd",
          "body": null,
          "is_bot": false,
          "headline": "allow copy() multiple patterns (#20217)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-28T08:01:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2f42555355d9f2df844f93c18cd63efddf181a1d",
          "body": "* fix UX for conan lock updgrade-config\n\n* review",
          "is_bot": false,
          "headline": "fix UX for conan lock upgrade-config (#20208)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-27T12:29:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f34a3549f5d34231a54d2269caf2713357381de2",
          "body": null,
          "is_bot": false,
          "headline": "conan editable add --ref (#20218)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-27T11:50:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "29ad6fad9672a2326372af9dc29021244266c46e",
          "body": "…te add fails with a duplicate error in a non --force operation (#20210)\n\n* Ensure local recipe index cache files are not removed when adding an already existing remote in a non --force operation\n\n* Simplify diff",
          "is_bot": false,
          "headline": "Ensure local recipe index cache folder is not removed when conan remo…",
          "author_name": "Abril Rincón Blanco",
          "author_login": "AbrilRBS",
          "committed_at": "2026-07-27T09:58:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "38e58445779d25ce7780b44564520c93cc6e6dbd",
          "body": null,
          "is_bot": false,
          "headline": "fixing CMakeConfigDeps host+build (#20198)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-27T09:44:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "34b51002122544d4d195baf336917f0f2d645eae",
          "body": "This property allows to change the generated module name and avoid\ncollisions with Qbs naming. An example of such collision is the\n\"protobuf\" module - the Qbs module and Conan runtime library both\nshare the same name; currently, Qbs renames the runtime to \"protobuflib\".",
          "is_bot": false,
          "headline": "qbs: add support for the qbs_file_name property (#20215)",
          "author_name": "Ivan Komissarov",
          "author_login": "ABBAPOH",
          "committed_at": "2026-07-27T09:44:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "117a52edf8c3b266f36e088e546dbb447122dc7d",
          "body": null,
          "is_bot": false,
          "headline": "allow conan run [tool_requires] (#20214)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-27T09:10:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "db1ebb70cd3d3636448ffffd64d64984ce66a117",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'release/2.31' into develop2",
          "author_name": "Carlos Zoido",
          "author_login": "czoido",
          "committed_at": "2026-07-24T11:56:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1ada23602e937f6391bf1c7891e650e830fbd190",
          "body": "* Remove deprecated behaviours slated for Conan 2.32\n\n* Remove legacy output\n\n* Fix tests\n\n* Fix tests\n\n* Fix tests\n\n* Fix tests\n\n* Make recipe default\n\n* Fix tests\n\n* Update conan/internal/model/version_range.py\n\n* Remove for\n\n* Update conan/cli/printers/graph.py\n\n---------\n\nCo-authored-by: Carlos Zoido <mrgalleta@gmail.com>",
          "is_bot": false,
          "headline": "Remove deprecated behaviours slated for removal in Conan 2.32 (#20207)",
          "author_name": "Abril Rincón Blanco",
          "author_login": "AbrilRBS",
          "committed_at": "2026-07-24T11:14:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8fc592758974872e3b3d6d0f9920d97ee82db533",
          "body": "* test potential regression\n\n* simpler test\n\n* fix\n\n* bump version\n\n* trigger CI",
          "is_bot": false,
          "headline": "Fix replace_in_file false \"pattern not found\" on no-op replace (#20211)",
          "author_name": "Carlos Zoido",
          "author_login": "czoido",
          "committed_at": "2026-07-24T10:41:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "638dbef19a0ac8f7627ad8e8cba411e60624e19d",
          "body": null,
          "is_bot": false,
          "headline": "Conan 2.32.0-dev",
          "author_name": "Carlos Zoido",
          "author_login": "czoido",
          "committed_at": "2026-07-23T15:25:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f9ce9761bc2597dd85ff201e05cf28085395ab0e",
          "body": "* replace_in_file with regex\n\n* no precompiled regex\n\n* simplify \"found\"",
          "is_bot": false,
          "headline": "replace_in_file with regex (#20194)",
          "author_name": "Ernesto de Gracia Herranz",
          "author_login": "ErniGH",
          "committed_at": "2026-07-23T13:47:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f1da81cc5310e381750a32d8fda3cb032bbdba17",
          "body": null,
          "is_bot": false,
          "headline": "Conan 2.31.0",
          "author_name": "Carlos Zoido",
          "author_login": "czoido",
          "committed_at": "2026-07-23T12:06:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "22db22c78f085cf7e7b7e81c3a21d0304b2dd91c",
          "body": "* Workspace not incubating anymore\n\n* review",
          "is_bot": false,
          "headline": "Workspace not incubating anymore (#20202)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-23T12:05:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9aa6ea704573e858f3892812dd849f7751191630",
          "body": "…0203)\n\nupdate",
          "is_bot": false,
          "headline": "Fix broken audit page URLs (audit.conan.io/* -> conan.io/audit/*) (#2…",
          "author_name": "Carlos Zoido",
          "author_login": "czoido",
          "committed_at": "2026-07-23T12:02:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "170e7b58bb75042e026f4389ad9af462efaa6173",
          "body": "* change workspace load_conanfile and python_requires\n\n* wip\n\n* review\n\n* add test for workspace ediable py-requires",
          "is_bot": false,
          "headline": "change workspace load_conanfile and python_requires (#20176)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-23T11:35:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1b0b9101bb20cf766a6da427b879ecc2fe2bc012",
          "body": "…ge lists (#20197)\n\n* fix upload with empty uploads from pattern, to make it equal to package lists\n\n* cleanups\n\n* improve msg\n\n* trigger CI\n\n---------\n\nCo-authored-by: Carlos Zoido <mrgalleta@gmail.com>",
          "is_bot": false,
          "headline": "fix upload with empty uploads from pattern, to make it equal to packa…",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-23T09:47:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "128e5dd07a5d95778e1a4cebb530941010af7f84",
          "body": "* Update docs for new and audit subapis\n\n* Adress reviews\n\n* Fix refs\n\n* Don't excesively document conan new",
          "is_bot": false,
          "headline": "Update docs for new and audit subapis (#20190)",
          "author_name": "Abril Rincón Blanco",
          "author_login": "AbrilRBS",
          "committed_at": "2026-07-23T09:47:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7065353af5f7388ff8bca35f3bd05b84dba43d6b",
          "body": "* add $runcovtest to activate covtest\n\n* make test fail\n\n* trigger CI\n\n* break another test\n\n* revert changes and make another macosx functional fail\n\n* recover multiline\n\n* revert test changes\n\n* some fixes\n\n* trigger CI",
          "is_bot": false,
          "headline": "Use $runcovtest to activate covtest (#20182)",
          "author_name": "Carlos Zoido",
          "author_login": "czoido",
          "committed_at": "2026-07-22T14:14:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "147ad65f6e6c9c5af1dd93870219b38a41d21e96",
          "body": "* wip\n\n* fix",
          "is_bot": false,
          "headline": "Feature/simplify requires (#20193)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-22T13:53:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "85407ba1d273281e257b85e007d8201975616ec7",
          "body": "…f they exist when root `pkg_config_name=\"none\"` (#20169)\n\n* Add default_components or all the components when root pkg_config_name='none'. Add some integration tests\n\n* Added extra assert\n\n* wip\n\n* Removed warning",
          "is_bot": false,
          "headline": "[PkgConfigDeps] Requires `default_components` or all the components i…",
          "author_name": "Francisco Ramírez",
          "author_login": "franramirez688",
          "committed_at": "2026-07-22T13:53:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1669bf4550000cc6f4fddc418371e295fcf3ddf2",
          "body": "* add test\n\n* trigger CI\n\n* add fix",
          "is_bot": false,
          "headline": "Test for AutotoolsDeps msvc LINK/Automake collision (#20192)",
          "author_name": "Carlos Zoido",
          "author_login": "czoido",
          "committed_at": "2026-07-22T09:24:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fc5ee647c7d23ffd109cb967b67747fbc077ffb9",
          "body": "…opagation of dependencies (#20171)\n\n* change hard error for cpp_info.requires to warning\n\n* review, use cpp_info.not_required\n\n* add test for PkgConfig.fill_cpp_info with env-vars from profile (#18130)\n\n* add test for PkgConfig.fill_cpp_info with env-vars from profile\n\n* failing test\n\n* review, mak\n[…]\nnoreply.github.com>\n\n* rename to ignored_requires\n\n---------\n\nCo-authored-by: Abril Rincón Blanco <5364255+AbrilRBS@users.noreply.github.com>\nCo-authored-by: Francisco Ramírez <franchuti688@gmail.com>",
          "is_bot": false,
          "headline": "Define new ``cpp_info.not_required`` attribute to avoid downstream pr…",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-22T05:36:47Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "de081d70edbd2e9ae9660f2957eba162c927362b",
          "body": "* wip\n\n* wip\n\n* fix test",
          "is_bot": false,
          "headline": "Fix/autotools windows2 (#20130)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-22T05:22:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "36cb504eb451a5ae6e32237311901bba8d5b6ba0",
          "body": "* new virtualenv handlers\n\n* fix test linux\n\n* review, internal copy\n\n* wip\n\n* wip\n\n* wip\n\n* test only windows\n\n* review\n\n* fix other test\n\n* docstring\n\n* Apply suggestion from @AbrilRBS\n\nCo-authored-by: Abril Rincón Blanco <5364255+AbrilRBS@users.noreply.github.com>\n\n---------\n\nCo-authored-by: Francisco Ramírez <franchuti688@gmail.com>\nCo-authored-by: Abril Rincón Blanco <5364255+AbrilRBS@users.noreply.github.com>",
          "is_bot": false,
          "headline": "new VirtualRunEnv(win_copy_folder) handler (#18638)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-21T13:01:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3faf17b055cd1d059685d33bacd78df10d4b286c",
          "body": "* improve package step output\n\n* wip\n\n* wip",
          "is_bot": false,
          "headline": "improve package step output (#20134)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-21T10:10:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "45577bb2e2ca927029dfc65bd045974a7765852a",
          "body": null,
          "is_bot": false,
          "headline": "fix Premake for vs2026 (#20189)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-21T08:49:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b57cfe3b29f87871eef61fa75473e75b2c660372",
          "body": null,
          "is_bot": false,
          "headline": "warn with config-install after config-install-pkg (#20188)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-20T14:35:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f5a4a612e3b9f0ddc9a5cc69060ec6ef0b945b5c",
          "body": "* Add gcc 14.4 and 15.3 support\n\n* Add intel-cc 2025.2 and 2026.1 support\n\n* Missing 2025.3 too",
          "is_bot": false,
          "headline": "Add support for missing compiler versions (#20184)",
          "author_name": "Abril Rincón Blanco",
          "author_login": "AbrilRBS",
          "committed_at": "2026-07-20T09:52:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0209cad9aaed9b2d3657ba5a1548d3aee94dae46",
          "body": "* adding micro modes\n\n* revies\n\n* more checks",
          "is_bot": false,
          "headline": "adding micro modes (#20102)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-20T09:28:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b9123379490ca8d713c62a33453713497827254d",
          "body": "* add test for PkgConfig.fill_cpp_info with env-vars from profile\n\n* failing test\n\n* review, make it fail\n\n* generate() time",
          "is_bot": false,
          "headline": "add test for PkgConfig.fill_cpp_info with env-vars from profile (#18130)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-17T12:30:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ea318dfeaea2501aee4bafbaa507d2ebab300a8f",
          "body": "* covtest predict\n\n* wip\n\n* test\n\n* wip\n\n* wip\n\n* Potential fix for pull request finding 'CodeQL / Workflow does not contain permissions'\n\nCo-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>\n\n* fix test\n\n* Update .github/workflows/main.yml\n\n[…]\nuti688@gmail.com>\n\n---------\n\nCo-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>\nCo-authored-by: Francisco Ramírez <franchuti688@gmail.com>",
          "is_bot": false,
          "headline": "covtest predict (#20098)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-17T09:49:53Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "6f821cc3bde357a6538bb9bbba13be55fe0f05c6",
          "body": "* recover test\n\n* fix ci\n\n* update test to new settings\n\n* wip",
          "is_bot": false,
          "headline": "Recover `test_xcodebuild_test_different_sdk` test (#20180)",
          "author_name": "Carlos Zoido",
          "author_login": "czoido",
          "committed_at": "2026-07-17T09:49:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "42cac1e5cd447f0827080f7c5cc37e6153017dd0",
          "body": "* add docker runner mount error message\n\n* wip\n\n* wip\n\n* wip\n\n* wip",
          "is_bot": false,
          "headline": "Raise an exception when layout() fails in the Docker runner (#20154)",
          "author_name": "David Sánchez Falero",
          "author_login": "davidsanfal",
          "committed_at": "2026-07-17T07:27:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "71d30b434553292c081386b55d6c1ec73c25aa4b",
          "body": "…rpath flag) (#20179)\n\n* fix test_autotools_relocatable_libs_darwin_downloaded\n\n* wip",
          "is_bot": false,
          "headline": "fix test_autotools_relocatable_libs_darwin_downloaded (Fix Autotools …",
          "author_name": "David Sánchez Falero",
          "author_login": "davidsanfal",
          "committed_at": "2026-07-16T16:56:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c83063170651adce1a3352a9f78994e59501cd33",
          "body": "* wip\n\n* fix",
          "is_bot": false,
          "headline": "improve coverage (#20173)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-15T00:25:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cc1762e5767934556fe968b990b484eb87094102",
          "body": null,
          "is_bot": false,
          "headline": "avoid shadows by Options.xxx class methods (#20172)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-14T17:21:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2683823c00462ab1dd752cb292b7e318ff3530be",
          "body": "* Add NO_SONAME support to CMakeConfigDeps\n\n* test functional CMakeConfigDeps no-soname\n\n* simplify test\n\n* removed wrong test\n\n* wip",
          "is_bot": false,
          "headline": "[feature][cmake] Add NO_SONAME support to CMakeConfigDeps (#20168)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-13T21:28:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "375aa530d60093bddcc6552ded3dd146feb10d6d",
          "body": null,
          "is_bot": false,
          "headline": "fix search pattern (#20136)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-13T14:36:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cfc041f8731f0503f9d5ae9b3313e87b2626eeca",
          "body": "* Assert invalid parameters in ConanFile.run() method\n\n* Light tests and clarify message\n\n* fix test\n\n---------\n\nCo-authored-by: memsharded <james@conan.io>",
          "is_bot": false,
          "headline": "Assert invalid parameters in ConanFile.run() method (#20156)",
          "author_name": "PerseoGI",
          "author_login": "perseoGI",
          "committed_at": "2026-07-13T13:05:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3a390111c75ab8b77568ecfa77df3b53f0aae651",
          "body": "… (#20152)\n\n* Use non-deprecated flag for newer emcc versions\n\n* Fix comment\n\n* add unit test\n\n---------\n\nCo-authored-by: memsharded <james@conan.io>",
          "is_bot": false,
          "headline": "Fix deprecation warning when building with emscripten 6.0.1 or higher…",
          "author_name": "RobinTF",
          "author_login": "RobinTF",
          "committed_at": "2026-07-13T12:01:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "51eaa2f8e72104369b5dc8bccf035bfc618ba0ff",
          "body": "* fix profile patterns sorting\n\n* fix unit test",
          "is_bot": false,
          "headline": "fix profile patterns sorting (#20164)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-13T05:06:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "13078328db24c0275cfd8a2b141c456b0b87bdf7",
          "body": "* ConanFileDependencies.from_node: fix for non-applying replace_requires\n\n* Add test\n\n* review and new test\n\n---------\n\nCo-authored-by: Abril Rincón Blanco <5364255+AbrilRBS@users.noreply.github.com>\nCo-authored-by: James <james@conan.io>",
          "is_bot": false,
          "headline": "[bugfix][graph] fix for non-applying replace_requires (#20146)",
          "author_name": "Jan Grieb",
          "author_login": "jngrb",
          "committed_at": "2026-07-10T08:52:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b2ff1e6420d807e2f4b3d10f4d8a163d2c6cb1e3",
          "body": "…ved unused tests (#20161)\n\n* some cmake preset and tests\n\n* wip\n\n* remove CMake 3.19 testing\n\n* cmake 4.3\n\n* fix CPS tests",
          "is_bot": false,
          "headline": "Install CMake 4.3, uninstall CMake 3.19, minor presets refactor, remo…",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-10T06:02:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0276d37c86371b1fbe453798a139d377d3766c25",
          "body": null,
          "is_bot": false,
          "headline": "fix coverage",
          "author_name": "memsharded",
          "author_login": "memsharded",
          "committed_at": "2026-07-09T09:40:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "404bdd09b97869343806a1dbc2eda8443357b08e",
          "body": null,
          "is_bot": false,
          "headline": "fix coverage windows (#20159)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-07-09T08:42:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e36a7f8a931e390ec91a643618310772137bb89d",
          "body": "* Add .tar.zst support to unzip()\n\n* Added .tzst extension and use single .endswith invokation",
          "is_bot": false,
          "headline": "Add .tar.zst support to unzip() (#20140)",
          "author_name": "PerseoGI",
          "author_login": "perseoGI",
          "committed_at": "2026-07-08T09:20:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2ff55f61500d39e4e0d9e152c4386535ad8c3ee9",
          "body": null,
          "is_bot": false,
          "headline": "Fix early return in workspace complete (#20150)",
          "author_name": "Abril Rincón Blanco",
          "author_login": "AbrilRBS",
          "committed_at": "2026-07-08T09:08:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "59eaa2a4ee8ffd9c1633538d5deb8db5cf3937b4",
          "body": "* Fix replaced requirement not being an exact match\n\n* More tests",
          "is_bot": false,
          "headline": "Fix replaced requirement not being an exact match (#20139)",
          "author_name": "Abril Rincón Blanco",
          "author_login": "AbrilRBS",
          "committed_at": "2026-07-08T07:46:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "22a3761d9bdd3acdd330d8d7943177b82921ffa4",
          "body": "…S) (#20127)\n\nCMakeToolchain: add tools.build:asmflags to populate CMAKE_ASM_FLAGS\n\nMirror the existing tools.build:cflags/cxxflags handling for assembly: add the tools.build:asmflags conf and CMakeToolchain.extra_asmflags, written to CONAN_ASM_FLAGS and mapped to CMAKE_ASM_FLAGS_INIT (global and per-config).",
          "is_bot": false,
          "headline": "Add `tools.build:asmflags` consumed by CMakeToolchain (CMAKE_ASM_FLAG…",
          "author_name": "Bartosz Szostak",
          "author_login": "szostaba",
          "committed_at": "2026-06-30T13:53:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "79cfd257948fe351eed375fc331b2b38b00e8497",
          "body": null,
          "is_bot": false,
          "headline": "Conan 2.31.0-dev",
          "author_name": "Carlos Zoido",
          "author_login": "czoido",
          "committed_at": "2026-06-29T14:37:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9b6b3171152efec5fc05849d1261fca93beea832",
          "body": null,
          "is_bot": false,
          "headline": "Conan 2.30.0",
          "author_name": "Carlos Zoido",
          "author_login": "czoido",
          "committed_at": "2026-06-29T13:44:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b4d645be291ab4227042f332fb0d6f701091f6c1",
          "body": "…trait (#20073)\n\n* transitive_headers chained diamond test\n\n* Guard transitive_{libs,headers} propagation on chained value\n\n* Check for transitive traits where necessary\n\n* Static chain test broken by transitive shared\n\n* transitive_libs should not be propagated\n\n* Policy for transitive_header propa\n[…]\nr fix\n\n* Add fixed check for one of the new test cases\n\n* Better namin g\n\n* More tests for the test\n\n* More checks for transitive headers\n\n* Fixed transitive_headers trait\n\n* More checks, just in case",
          "is_bot": false,
          "headline": "Version-based policy for fixed propagation of ``transitive_headers`` …",
          "author_name": "Abril Rincón Blanco",
          "author_login": "AbrilRBS",
          "committed_at": "2026-06-29T13:11:10Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b24ddd44c7796dd38ab0f89190723804b974a8cc",
          "body": "…ompatibility (#20122)\n\n* revert\n\n* trigger CI",
          "is_bot": false,
          "headline": "Revert classmethod fixtures: use self instead of cls for Python 3.7 c…",
          "author_name": "Carlos Zoido",
          "author_login": "czoido",
          "committed_at": "2026-06-26T15:39:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c7d87383763dc9ed64e7fe8940de873522a8b386",
          "body": "missing test",
          "is_bot": false,
          "headline": "Correct `@classmethod` + `@pytest.fixture` decorator order 2 (#20120)",
          "author_name": "Carlos Zoido",
          "author_login": "czoido",
          "committed_at": "2026-06-26T12:47:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0821c4a16a893f8902d1afd325a133a2900180e2",
          "body": "* fix\n\n* wip",
          "is_bot": false,
          "headline": "Correct `@classmethod` + `@pytest.fixture` decorator order (#20116)",
          "author_name": "Carlos Zoido",
          "author_login": "czoido",
          "committed_at": "2026-06-26T11:17:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "713b59376ee177fe0f58d68326ddb0b704711e76",
          "body": "* MesonToolchain: add extra_variables and exe_wrapper attribute\n\n* Remove exe_wrapper property and related tests\n\n* Applied GH suggestions",
          "is_bot": false,
          "headline": "MesonToolchain: add extra_variables and exe_wrapper property (#20032)",
          "author_name": "PerseoGI",
          "author_login": "perseoGI",
          "committed_at": "2026-06-26T10:50:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2e0affd22d9ce31cc682ffd2feaec9c520020750",
          "body": null,
          "is_bot": false,
          "headline": "fix TestRestApi test",
          "author_name": "memsharded",
          "author_login": "memsharded",
          "committed_at": "2026-06-26T08:10:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b20cdc50f34dac81763fa7913f3c5007afb9ccf9",
          "body": "* spdx expresion on sbom\n\n* simplify regex\n\n* simplify check\n\n* fix",
          "is_bot": false,
          "headline": "SPDX expression on SBOM (#20112)",
          "author_name": "Ernesto de Gracia Herranz",
          "author_login": "ErniGH",
          "committed_at": "2026-06-25T10:18:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "69007ed9fbcd868c3724f3a44bcc760a72c9b1ec",
          "body": "* autotools/gnu asflags\n\n* wip\n\n* review",
          "is_bot": false,
          "headline": "autotools/gnu asflags (#20078)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-06-25T08:44:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a0124992155da9ab71bbe8d2714d0ed299c5c5f3",
          "body": "* Fix git dirty check for revision_mode=scm\n\n* Check whole git repository for dirtyness.\n  For the commit hash retrieved, the whole repository is already taken into consideration.\n  This solves the inconsistency between the commit hash retrieval and dirty check.\n* Improve error message.\n\n* test\n\n* fix test\n\n---------\n\nCo-authored-by: James <james@conan.io>",
          "is_bot": false,
          "headline": "Fix git dirty check for revision_mode=scm (#18630)",
          "author_name": "Alexander Krabler",
          "author_login": "aagor",
          "committed_at": "2026-06-25T07:55:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "621a7a996231d0278ecb53ebda52d0ffccb34231",
          "body": null,
          "is_bot": false,
          "headline": "fix some warnings and test folder (#20111)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-06-24T20:08:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8a443e7609c8c16d05b1670ce28be2aef84c28e3",
          "body": null,
          "is_bot": false,
          "headline": "test for CMakeConfigDeps compile only headers transitive (#20105)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-06-24T09:21:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e975acb4984811b9290c2a10abaef09cb3d8f019",
          "body": "…dependencies properties to the CMakeDeps generator (#20066)\n\n[feature] Add support cmake_extra_interface_libs and cmake_extra_dependencies properties to the CMakeDeps generator",
          "is_bot": false,
          "headline": "[feature] Add support for cmake_extra_interface_libs and cmake_extra_…",
          "author_name": "Daniel",
          "author_login": "danimtb",
          "committed_at": "2026-06-24T09:17:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9281b23e64d19823c4c5959a0d8009c48f8dcef0",
          "body": "* relativize cpp_info.location for editable layouts\n\n* fix\n\n* fix\n\n* review\n\n* fix deployers with absolute paths",
          "is_bot": false,
          "headline": "relativize cpp_info.location for editable layouts (#20088)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-06-24T09:05:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "68dba86238b771ecee2c321de31096102b2823bc",
          "body": "* new modeling of msys2 environments\n\n* wip\n\n* wip",
          "is_bot": false,
          "headline": "new modeling of msys2 environments (#20074)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-06-24T09:01:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "597462e14408282891f55b17925a637674b61267",
          "body": "* Lockfile API\n\n* Update conan/api/subapi/lockfile.py\n\nCo-authored-by: Abril Rincón Blanco <5364255+AbrilRBS@users.noreply.github.com>\n\n* Update conan/api/subapi/lockfile.py\n\nCo-authored-by: Abril Rincón Blanco <5364255+AbrilRBS@users.noreply.github.com>\n\n---------\n\nCo-authored-by: Abril Rincón Blanco <5364255+AbrilRBS@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Lockfile API (#20104)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-06-24T08:01:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3136c6fa9c8defe1a66793ef1cb3ddab634ecd7b",
          "body": "… libc6:i386) (#20047)\n\n* architecture suffix for multiarch apt package\n\n* wip\n\n* wip\n\n* wip",
          "is_bot": false,
          "headline": "Explicit architecture suffix for multiarch on the build machine (e.g.…",
          "author_name": "David Sánchez Falero",
          "author_login": "davidsanfal",
          "committed_at": "2026-06-23T15:10:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "38bb27a358585c9342746905206a0746d686b843",
          "body": "* wip\n\n* wip\n\n* fix tests\n\n* wip\n\n* fix workspace info when py-requires and packages() (#20064)\n\n* fix\n\n* wip\n\n* wip\n\n* wip\n\n* wip\n\n* wip\n\n* wip\n\n* wip\n\n* review\n\n* fix test",
          "is_bot": false,
          "headline": "Ux/conan output generate (#20085)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-06-22T15:02:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dd2d683c6d334877cac38ebd4c280647d5652957",
          "body": "* Generalize use of tools.build:compilers, buildenv and add known default compilers\n\n* Extend intel compiler support to other toolchains\n\n* Add GnuToolchain support and avoid calculating intel compiler when not needed\n\n* Do not expose intel_cc_compilers\n\n* Remove premake support for the moment\n\n* Enable virtualrunenv on IntelCC and simplify tests\n\n* Windows test approach\n\n* Fix tests\n\n* Use icx-cl on windows and avoid setting libc runtime",
          "is_bot": false,
          "headline": "IntelCC: extend support to different toolchains (#20075)",
          "author_name": "PerseoGI",
          "author_login": "perseoGI",
          "committed_at": "2026-06-22T09:17:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e8047151787349868b92da97e0584cdf5ea92b3d",
          "body": "* Update audit register page\n\n* fix test",
          "is_bot": false,
          "headline": "Update audit register page (#20093)",
          "author_name": "Abril Rincón Blanco",
          "author_login": "AbrilRBS",
          "committed_at": "2026-06-22T06:15:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "45769dcd39cbbbd47618001430ffff25ab7a3790",
          "body": null,
          "is_bot": false,
          "headline": "fix input absolute paths (#20092)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-06-18T14:23:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2d577fc15c91d6f9fc11badd3a295f88bf645457",
          "body": "Titles, icons, and show always all trait values",
          "is_bot": false,
          "headline": "Update HTML outputs from Conan (#20087)",
          "author_name": "Abril Rincón Blanco",
          "author_login": "AbrilRBS",
          "committed_at": "2026-06-17T11:45:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9e4e4a794538102c05cd8e8848bd79e905217aa2",
          "body": "* poc for preparing multi-file\n\n* fix\n\n* wip\n\n* reverted\n\n* Using all the variables explicitly\n\n* Use reference instead\n\n* Use reference instead\n\n* Update test/functional/toolchains/cmake/cmakeconfigdeps/test_cmakeconfigdeps_new.py\n\nCo-authored-by: James <memsharded@gmail.com>\n\n---------\n\nCo-authored-by: memsharded <james@conan.io>\nCo-authored-by: James <memsharded@gmail.com>",
          "is_bot": false,
          "headline": "[POC] Preparing multi-file CMakeConfigDeps (Part 1) (#20036)",
          "author_name": "Francisco Ramírez",
          "author_login": "franramirez688",
          "committed_at": "2026-06-16T14:38:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "38a5ff6bf06f99e4464605a2c745021372d504a4",
          "body": "* Added support for bazel 9.x\n\n* wip\n\n* Added conf to load the rules\n\n* Adapted BazelDeps to support 9.x without conf\n\n* Update conan/internal/model/conf.py\n\nCo-authored-by: Carlos Zoido <mrgalleta@gmail.com>\n\n* renamed\n\n* Implemented include file\n\n* wip\n\n* fixme\n\n---------\n\nCo-authored-by: Carlos Zoido <mrgalleta@gmail.com>",
          "is_bot": false,
          "headline": "[Bazel] Add support for 9.x LTS version. (#20042)",
          "author_name": "Francisco Ramírez",
          "author_login": "franramirez688",
          "committed_at": "2026-06-16T10:44:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "86dfd0052388d9df253f6ed75768d1fd0147d387",
          "body": "* wip\n\n* wip\n\n* fix tests\n\n* wip\n\n* fix workspace info when py-requires and packages() (#20064)\n\n* fix",
          "is_bot": false,
          "headline": "ConanOutput remove scopes, make it explicit (#19941)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-06-16T09:46:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3e81702ea6a4c84b693578b69713d8d46388fd40",
          "body": "* config install keep permission bits\n\n* fix workspace with py-requires and packages()\n\n* Revert \"fix workspace with py-requires and packages()\"\n\nThis reverts commit f3345c947f5d1587b685c715bbd05363a16c9cb9.\n\n* fix bug in ConanProxy caching of revisions (#20061)\n\n* review",
          "is_bot": false,
          "headline": "config install keep permission bits (#20059)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-06-16T09:00:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7d3f9cdaf37c851247a01c1cb21db8840eee81dc",
          "body": null,
          "is_bot": false,
          "headline": "conf unset tilde (#20084)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-06-15T10:48:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f50d38006b38a0466f41d95748e722f50bd6921f",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'release/2.29' into develop2",
          "author_name": "Carlos Zoido",
          "author_login": "czoido",
          "committed_at": "2026-06-12T10:50:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b57015c99d82424f056e21b3919de596d03dabd8",
          "body": "…red (#20082)",
          "is_bot": false,
          "headline": "Handle special case where only one possible option is defined for sha…",
          "author_name": "PerseoGI",
          "author_login": "perseoGI",
          "committed_at": "2026-06-12T09:46:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "11ecc1960d0710bb933134f9a298bc454ac0664e",
          "body": null,
          "is_bot": false,
          "headline": "fix workspace info when py-requires and packages() (#20064)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-06-11T14:28:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4d9ee1da048c94e3b3a5fd57ff6fb36bbb99bc81",
          "body": null,
          "is_bot": false,
          "headline": "new feature build_system_requirements() (#20070)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-06-11T08:08:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "db0c9cbe49f9b0dee79bc8e6d5bff1e8560dd1e4",
          "body": "* Add oneapi to Linux CI and enable functional test\n\n* Updated tests\n\n* Fix intel_oneapi conftest\n\n* Apply suggestion from @franramirez688\n\n* adding autotools test, fixes conf, add IntelCC to AutotoolsToolchain\n\n* windows2025 runner (#19980)\n\n* windows2025 runner\n\n* wip\n\n* wip\n\n* wip\n\n* fix\n\n* wip\n\n\n[…]\nuthored-by: James <james@conan.io>\n\n---------\n\nCo-authored-by: Francisco Ramírez <franchuti688@gmail.com>\nCo-authored-by: memsharded <james@conan.io>\nCo-authored-by: Carlos Zoido <mrgalleta@gmail.com>",
          "is_bot": false,
          "headline": "Add oneapi to Linux CI and enable functional test (#20053)",
          "author_name": "PerseoGI",
          "author_login": "perseoGI",
          "committed_at": "2026-06-10T08:31:28Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2a4ef294e49fe783c44bdc1a77fb5db49dfd2f43",
          "body": "* improvements to tools defs in tests\n\n* wip\n\n* wip",
          "is_bot": false,
          "headline": "improvements to tools defs in tests (#20067)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-06-09T14:36:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "605570e9ea1600f6b0b9b80c9ce38f76d0bc1aac",
          "body": "…nd extension (#20040)\n\n* allowing replace_requires unset\n\n* wip\n\n* wip\n\n* wip",
          "is_bot": false,
          "headline": "Allow [replace_requires/tool_requires] unset in profile composition a…",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-06-09T08:09:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "23351d838cb8352a6e60369e7002ca1ebe640af6",
          "body": "…… (#20062)\n\n* Fix importlib find for case where extension is defined in libs and you have a foo.dll and foo.dll.lib\n\n* More cases for windows shared importlib",
          "is_bot": false,
          "headline": "Fix importlib find for case where extension is defined in libs and yo…",
          "author_name": "Abril Rincón Blanco",
          "author_login": "AbrilRBS",
          "committed_at": "2026-06-08T14:03:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d26715e288ef92a3e2ea3bd7ecca45f4b2944cbb",
          "body": null,
          "is_bot": false,
          "headline": "fix bug in ConanProxy caching of revisions (#20061)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-06-08T05:36:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "34a11c1f3fadbaba3d50e8317290131eb660cabc",
          "body": "This reverts commit f3345c947f5d1587b685c715bbd05363a16c9cb9.",
          "is_bot": false,
          "headline": "Revert \"fix workspace with py-requires and packages()\"",
          "author_name": "memsharded",
          "author_login": "memsharded",
          "committed_at": "2026-06-07T22:21:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f3345c947f5d1587b685c715bbd05363a16c9cb9",
          "body": null,
          "is_bot": false,
          "headline": "fix workspace with py-requires and packages()",
          "author_name": "memsharded",
          "author_login": "memsharded",
          "committed_at": "2026-06-07T22:15:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6bae52dbe8263cf16f651f872b15d30738405b36",
          "body": null,
          "is_bot": false,
          "headline": "improve message broken global.conf jinja (#20056)",
          "author_name": "James",
          "author_login": "memsharded",
          "committed_at": "2026-06-04T14:38:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "17853d3d6db8a357c17005ce5e5e1757eb040cc2",
          "body": "* use macos-26\n\n* fix dir\n\n* fix sdk_version\n\n* add suffix\n\n* wip\n\n* use 6.6.0\n\n* update conftest\n\n* wip",
          "is_bot": false,
          "headline": "Try macos-26 runner (#20037)",
          "author_name": "Carlos Zoido",
          "author_login": "czoido",
          "committed_at": "2026-06-04T13:44:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 100,
      "commits_last_year": 550,
      "latest_release_at": "2026-08-04T19:10:26Z",
      "latest_release_tag": "2.31.2",
      "releases_from_tags": false,
      "days_since_last_push": 0,
      "active_weeks_last_year": 50,
      "days_since_latest_release": 0,
      "mean_days_between_releases": 14.7
    },
    "artifacts": {
      "collected": true,
      "structure": [],
      "declarations": [
        {
          "name": "conan",
          "path": "setup.py",
          "tokens": [
            "pypi.console_scripts"
          ],
          "ecosystem": "pypi"
        }
      ]
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "readme_badges": {
        "hosts": [],
        "total": 0,
        "header": 0,
        "collected": true,
        "has_inspect_badge": false
      },
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 62,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": true
    },
    "ecosystem": {
      "packages": [
        {
          "name": "conan",
          "exists": true,
          "license": "MIT",
          "keywords": [
            "C/C++",
            "package",
            "libraries",
            "developer",
            "manager",
            "dependency",
            "tool",
            "c",
            "c++",
            "cpp",
            "Development Status :: 5 - Production/Stable",
            "Intended Audience :: Developers",
            "License :: OSI Approved :: MIT License",
            "Programming Language :: Python :: 3",
            "Programming Language :: Python :: 3.10",
            "Programming Language :: Python :: 3.11",
            "Programming Language :: Python :: 3.12",
            "Programming Language :: Python :: 3.13",
            "Programming Language :: Python :: 3.7",
            "Programming Language :: Python :: 3.8",
            "Programming Language :: Python :: 3.9",
            "Topic :: Software Development :: Build Tools"
          ],
          "ecosystem": "pypi",
          "categories": [],
          "matches_repo": true,
          "registry_url": "https://pypi.org/project/conan/",
          "declared_type": null,
          "is_deprecated": false,
          "latest_version": "2.31.2",
          "repository_url": "https://github.com/conan-io/conan",
          "versions_count": 366,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": 3796151,
          "first_published_at": "2016-11-08T13:15:40.501372Z",
          "latest_published_at": "2026-08-04T19:10:50.334860Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 0
        }
      ]
    },
    "popularity": {
      "forks": 1117,
      "stars": 9469,
      "watchers": 128,
      "fork_history": {
        "days": [
          {
            "date": "2017-08-02",
            "count": 2
          },
          {
            "date": "2017-08-06",
            "count": 1
          },
          {
            "date": "2017-08-08",
            "count": 1
          },
          {
            "date": "2017-08-18",
            "count": 2
          },
          {
            "date": "2017-08-24",
            "count": 1
          },
          {
            "date": "2017-08-30",
            "count": 1
          },
          {
            "date": "2017-09-04",
            "count": 1
          },
          {
            "date": "2017-09-06",
            "count": 1
          },
          {
            "date": "2017-09-09",
            "count": 2
          },
          {
            "date": "2017-09-13",
            "count": 1
          },
          {
            "date": "2017-09-23",
            "count": 1
          },
          {
            "date": "2017-09-26",
            "count": 1
          },
          {
            "date": "2017-10-05",
            "count": 1
          },
          {
            "date": "2017-10-08",
            "count": 2
          },
          {
            "date": "2017-10-09",
            "count": 1
          },
          {
            "date": "2017-10-11",
            "count": 2
          },
          {
            "date": "2017-10-12",
            "count": 1
          },
          {
            "date": "2017-10-17",
            "count": 1
          },
          {
            "date": "2017-10-31",
            "count": 1
          },
          {
            "date": "2017-11-10",
            "count": 1
          },
          {
            "date": "2017-11-16",
            "count": 1
          },
          {
            "date": "2017-11-17",
            "count": 1
          },
          {
            "date": "2017-11-20",
            "count": 1
          },
          {
            "date": "2017-11-21",
            "count": 2
          },
          {
            "date": "2017-11-27",
            "count": 1
          },
          {
            "date": "2017-11-28",
            "count": 1
          },
          {
            "date": "2017-11-30",
            "count": 1
          },
          {
            "date": "2017-12-03",
            "count": 1
          },
          {
            "date": "2017-12-06",
            "count": 2
          },
          {
            "date": "2017-12-23",
            "count": 1
          },
          {
            "date": "2017-12-25",
            "count": 1
          },
          {
            "date": "2018-01-14",
            "count": 1
          },
          {
            "date": "2018-01-15",
            "count": 1
          },
          {
            "date": "2018-01-18",
            "count": 1
          },
          {
            "date": "2018-01-23",
            "count": 1
          },
          {
            "date": "2018-02-02",
            "count": 1
          },
          {
            "date": "2018-02-07",
            "count": 1
          },
          {
            "date": "2018-02-09",
            "count": 1
          },
          {
            "date": "2018-02-18",
            "count": 1
          },
          {
            "date": "2018-02-22",
            "count": 2
          },
          {
            "date": "2018-02-23",
            "count": 1
          },
          {
            "date": "2018-02-24",
            "count": 1
          },
          {
            "date": "2018-03-01",
            "count": 1
          },
          {
            "date": "2018-03-08",
            "count": 1
          },
          {
            "date": "2018-03-10",
            "count": 1
          },
          {
            "date": "2018-03-15",
            "count": 1
          },
          {
            "date": "2018-04-02",
            "count": 1
          },
          {
            "date": "2018-04-10",
            "count": 1
          },
          {
            "date": "2018-04-11",
            "count": 1
          },
          {
            "date": "2018-04-12",
            "count": 1
          },
          {
            "date": "2018-04-17",
            "count": 1
          },
          {
            "date": "2018-05-04",
            "count": 1
          },
          {
            "date": "2018-05-08",
            "count": 2
          },
          {
            "date": "2018-05-11",
            "count": 2
          },
          {
            "date": "2018-05-15",
            "count": 2
          },
          {
            "date": "2018-05-16",
            "count": 1
          },
          {
            "date": "2018-05-19",
            "count": 1
          },
          {
            "date": "2018-05-24",
            "count": 1
          },
          {
            "date": "2018-05-25",
            "count": 1
          },
          {
            "date": "2018-06-04",
            "count": 1
          },
          {
            "date": "2018-06-05",
            "count": 2
          },
          {
            "date": "2018-06-08",
            "count": 1
          },
          {
            "date": "2018-06-12",
            "count": 1
          },
          {
            "date": "2018-06-13",
            "count": 1
          },
          {
            "date": "2018-06-15",
            "count": 1
          },
          {
            "date": "2018-06-17",
            "count": 1
          },
          {
            "date": "2018-06-18",
            "count": 1
          },
          {
            "date": "2018-06-25",
            "count": 1
          },
          {
            "date": "2018-06-27",
            "count": 1
          },
          {
            "date": "2018-06-29",
            "count": 1
          },
          {
            "date": "2018-07-01",
            "count": 1
          },
          {
            "date": "2018-07-10",
            "count": 1
          },
          {
            "date": "2018-07-11",
            "count": 1
          },
          {
            "date": "2018-07-12",
            "count": 1
          },
          {
            "date": "2018-07-19",
            "count": 1
          },
          {
            "date": "2018-07-20",
            "count": 1
          },
          {
            "date": "2018-07-21",
            "count": 1
          },
          {
            "date": "2018-07-23",
            "count": 1
          },
          {
            "date": "2018-07-27",
            "count": 1
          },
          {
            "date": "2018-07-30",
            "count": 1
          },
          {
            "date": "2018-08-17",
            "count": 1
          },
          {
            "date": "2018-08-29",
            "count": 2
          },
          {
            "date": "2018-09-05",
            "count": 1
          },
          {
            "date": "2018-09-10",
            "count": 1
          },
          {
            "date": "2018-09-13",
            "count": 1
          },
          {
            "date": "2018-09-20",
            "count": 1
          },
          {
            "date": "2018-09-21",
            "count": 1
          },
          {
            "date": "2018-09-27",
            "count": 1
          },
          {
            "date": "2018-09-29",
            "count": 1
          },
          {
            "date": "2018-10-01",
            "count": 1
          },
          {
            "date": "2018-10-03",
            "count": 1
          },
          {
            "date": "2018-10-09",
            "count": 1
          },
          {
            "date": "2018-10-12",
            "count": 1
          },
          {
            "date": "2018-10-26",
            "count": 1
          },
          {
            "date": "2018-10-27",
            "count": 1
          },
          {
            "date": "2018-10-28",
            "count": 1
          },
          {
            "date": "2018-10-31",
            "count": 1
          },
          {
            "date": "2018-11-01",
            "count": 1
          },
          {
            "date": "2018-11-10",
            "count": 1
          },
          {
            "date": "2018-11-15",
            "count": 1
          },
          {
            "date": "2018-11-18",
            "count": 1
          },
          {
            "date": "2018-11-20",
            "count": 1
          },
          {
            "date": "2018-11-22",
            "count": 2
          },
          {
            "date": "2018-11-23",
            "count": 1
          },
          {
            "date": "2018-11-26",
            "count": 2
          },
          {
            "date": "2018-11-27",
            "count": 1
          },
          {
            "date": "2018-12-02",
            "count": 1
          },
          {
            "date": "2018-12-04",
            "count": 2
          },
          {
            "date": "2018-12-05",
            "count": 1
          },
          {
            "date": "2018-12-07",
            "count": 1
          },
          {
            "date": "2018-12-09",
            "count": 1
          },
          {
            "date": "2018-12-12",
            "count": 1
          },
          {
            "date": "2018-12-26",
            "count": 1
          },
          {
            "date": "2018-12-30",
            "count": 1
          },
          {
            "date": "2019-01-04",
            "count": 1
          },
          {
            "date": "2019-01-09",
            "count": 1
          },
          {
            "date": "2019-01-11",
            "count": 1
          },
          {
            "date": "2019-01-16",
            "count": 1
          },
          {
            "date": "2019-01-17",
            "count": 1
          },
          {
            "date": "2019-01-19",
            "count": 1
          },
          {
            "date": "2019-01-23",
            "count": 2
          },
          {
            "date": "2019-01-24",
            "count": 1
          },
          {
            "date": "2019-01-25",
            "count": 1
          },
          {
            "date": "2019-01-26",
            "count": 1
          },
          {
            "date": "2019-01-27",
            "count": 1
          },
          {
            "date": "2019-01-31",
            "count": 1
          },
          {
            "date": "2019-02-12",
            "count": 1
          },
          {
            "date": "2019-02-15",
            "count": 1
          },
          {
            "date": "2019-02-16",
            "count": 1
          },
          {
            "date": "2019-02-17",
            "count": 1
          },
          {
            "date": "2019-02-19",
            "count": 1
          },
          {
            "date": "2019-02-21",
            "count": 1
          },
          {
            "date": "2019-02-22",
            "count": 1
          },
          {
            "date": "2019-02-28",
            "count": 1
          },
          {
            "date": "2019-03-04",
            "count": 1
          },
          {
            "date": "2019-03-05",
            "count": 1
          },
          {
            "date": "2019-03-07",
            "count": 1
          },
          {
            "date": "2019-03-09",
            "count": 1
          },
          {
            "date": "2019-03-11",
            "count": 1
          },
          {
            "date": "2019-03-15",
            "count": 1
          },
          {
            "date": "2019-03-23",
            "count": 1
          },
          {
            "date": "2019-03-25",
            "count": 1
          },
          {
            "date": "2019-03-26",
            "count": 2
          },
          {
            "date": "2019-04-02",
            "count": 1
          },
          {
            "date": "2019-04-04",
            "count": 1
          },
          {
            "date": "2019-04-06",
            "count": 1
          },
          {
            "date": "2019-04-07",
            "count": 1
          },
          {
            "date": "2019-04-09",
            "count": 2
          },
          {
            "date": "2019-04-15",
            "count": 1
          },
          {
            "date": "2019-04-21",
            "count": 1
          },
          {
            "date": "2019-04-23",
            "count": 2
          },
          {
            "date": "2019-04-24",
            "count": 1
          },
          {
            "date": "2019-04-25",
            "count": 2
          },
          {
            "date": "2019-04-28",
            "count": 1
          },
          {
            "date": "2019-05-10",
            "count": 2
          },
          {
            "date": "2019-05-13",
            "count": 1
          },
          {
            "date": "2019-05-16",
            "count": 2
          },
          {
            "date": "2019-05-17",
            "count": 1
          },
          {
            "date": "2019-05-22",
            "count": 1
          },
          {
            "date": "2019-05-29",
            "count": 2
          },
          {
            "date": "2019-06-03",
            "count": 1
          },
          {
            "date": "2019-06-04",
            "count": 1
          },
          {
            "date": "2019-06-07",
            "count": 1
          },
          {
            "date": "2019-06-14",
            "count": 2
          },
          {
            "date": "2019-06-19",
            "count": 1
          },
          {
            "date": "2019-06-26",
            "count": 1
          },
          {
            "date": "2019-07-01",
            "count": 1
          },
          {
            "date": "2019-07-12",
            "count": 2
          },
          {
            "date": "2019-07-22",
            "count": 1
          },
          {
            "date": "2019-07-31",
            "count": 1
          },
          {
            "date": "2019-08-01",
            "count": 1
          },
          {
            "date": "2019-08-02",
            "count": 1
          },
          {
            "date": "2019-08-07",
            "count": 2
          },
          {
            "date": "2019-08-15",
            "count": 1
          },
          {
            "date": "2019-08-16",
            "count": 2
          },
          {
            "date": "2019-08-17",
            "count": 1
          },
          {
            "date": "2019-08-19",
            "count": 1
          },
          {
            "date": "2019-08-20",
            "count": 2
          },
          {
            "date": "2019-08-22",
            "count": 1
          },
          {
            "date": "2019-08-27",
            "count": 1
          },
          {
            "date": "2019-08-28",
            "count": 1
          },
          {
            "date": "2019-08-30",
            "count": 1
          },
          {
            "date": "2019-09-03",
            "count": 2
          },
          {
            "date": "2019-09-12",
            "count": 1
          },
          {
            "date": "2019-09-13",
            "count": 1
          },
          {
            "date": "2019-09-17",
            "count": 1
          },
          {
            "date": "2019-09-20",
            "count": 1
          },
          {
            "date": "2019-09-21",
            "count": 2
          },
          {
            "date": "2019-09-23",
            "count": 1
          },
          {
            "date": "2019-09-25",
            "count": 1
          },
          {
            "date": "2019-10-02",
            "count": 2
          },
          {
            "date": "2019-10-03",
            "count": 1
          },
          {
            "date": "2019-10-04",
            "count": 1
          },
          {
            "date": "2019-10-09",
            "count": 3
          },
          {
            "date": "2019-10-11",
            "count": 1
          },
          {
            "date": "2019-10-13",
            "count": 1
          },
          {
            "date": "2019-10-14",
            "count": 1
          },
          {
            "date": "2019-10-16",
            "count": 1
          },
          {
            "date": "2019-10-17",
            "count": 1
          },
          {
            "date": "2019-10-22",
            "count": 2
          },
          {
            "date": "2019-10-23",
            "count": 1
          },
          {
            "date": "2019-10-25",
            "count": 2
          },
          {
            "date": "2019-10-27",
            "count": 1
          },
          {
            "date": "2019-10-29",
            "count": 1
          },
          {
            "date": "2019-10-31",
            "count": 1
          },
          {
            "date": "2019-11-03",
            "count": 1
          },
          {
            "date": "2019-11-05",
            "count": 1
          },
          {
            "date": "2019-11-06",
            "count": 1
          },
          {
            "date": "2019-11-11",
            "count": 1
          },
          {
            "date": "2019-11-12",
            "count": 1
          },
          {
            "date": "2019-11-14",
            "count": 1
          },
          {
            "date": "2019-11-18",
            "count": 1
          },
          {
            "date": "2019-11-19",
            "count": 1
          },
          {
            "date": "2019-11-22",
            "count": 1
          },
          {
            "date": "2019-11-27",
            "count": 1
          },
          {
            "date": "2019-11-29",
            "count": 1
          },
          {
            "date": "2019-11-30",
            "count": 1
          },
          {
            "date": "2019-12-03",
            "count": 1
          },
          {
            "date": "2019-12-17",
            "count": 1
          },
          {
            "date": "2019-12-18",
            "count": 1
          },
          {
            "date": "2019-12-20",
            "count": 1
          },
          {
            "date": "2019-12-23",
            "count": 2
          },
          {
            "date": "2019-12-26",
            "count": 1
          },
          {
            "date": "2019-12-27",
            "count": 1
          },
          {
            "date": "2019-12-31",
            "count": 1
          },
          {
            "date": "2020-01-03",
            "count": 1
          },
          {
            "date": "2020-01-04",
            "count": 2
          },
          {
            "date": "2020-01-07",
            "count": 1
          },
          {
            "date": "2020-01-10",
            "count": 2
          },
          {
            "date": "2020-01-12",
            "count": 1
          },
          {
            "date": "2020-01-20",
            "count": 2
          },
          {
            "date": "2020-01-22",
            "count": 2
          },
          {
            "date": "2020-01-29",
            "count": 1
          },
          {
            "date": "2020-01-31",
            "count": 1
          },
          {
            "date": "2020-02-10",
            "count": 1
          },
          {
            "date": "2020-02-11",
            "count": 1
          },
          {
            "date": "2020-02-14",
            "count": 2
          },
          {
            "date": "2020-02-15",
            "count": 1
          },
          {
            "date": "2020-02-16",
            "count": 1
          },
          {
            "date": "2020-02-18",
            "count": 1
          },
          {
            "date": "2020-02-20",
            "count": 1
          },
          {
            "date": "2020-02-29",
            "count": 1
          },
          {
            "date": "2020-03-07",
            "count": 1
          },
          {
            "date": "2020-03-09",
            "count": 1
          },
          {
            "date": "2020-03-10",
            "count": 1
          },
          {
            "date": "2020-03-11",
            "count": 1
          },
          {
            "date": "2020-03-12",
            "count": 1
          },
          {
            "date": "2020-03-13",
            "count": 1
          },
          {
            "date": "2020-03-17",
            "count": 1
          },
          {
            "date": "2020-03-20",
            "count": 1
          },
          {
            "date": "2020-03-21",
            "count": 1
          },
          {
            "date": "2020-03-23",
            "count": 1
          },
          {
            "date": "2020-03-26",
            "count": 4
          },
          {
            "date": "2020-03-29",
            "count": 1
          },
          {
            "date": "2020-03-31",
            "count": 1
          },
          {
            "date": "2020-04-02",
            "count": 1
          },
          {
            "date": "2020-04-06",
            "count": 1
          },
          {
            "date": "2020-04-14",
            "count": 1
          },
          {
            "date": "2020-04-17",
            "count": 1
          },
          {
            "date": "2020-04-26",
            "count": 1
          },
          {
            "date": "2020-05-03",
            "count": 1
          },
          {
            "date": "2020-05-04",
            "count": 1
          },
          {
            "date": "2020-05-06",
            "count": 1
          },
          {
            "date": "2020-05-07",
            "count": 1
          },
          {
            "date": "2020-05-11",
            "count": 1
          },
          {
            "date": "2020-05-12",
            "count": 2
          },
          {
            "date": "2020-05-14",
            "count": 1
          },
          {
            "date": "2020-05-15",
            "count": 1
          },
          {
            "date": "2020-05-16",
            "count": 1
          },
          {
            "date": "2020-05-18",
            "count": 1
          },
          {
            "date": "2020-05-19",
            "count": 1
          },
          {
            "date": "2020-05-21",
            "count": 1
          },
          {
            "date": "2020-05-22",
            "count": 1
          },
          {
            "date": "2020-05-23",
            "count": 1
          },
          {
            "date": "2020-05-25",
            "count": 1
          },
          {
            "date": "2020-05-26",
            "count": 1
          },
          {
            "date": "2020-05-27",
            "count": 2
          },
          {
            "date": "2020-05-30",
            "count": 2
          },
          {
            "date": "2020-06-04",
            "count": 1
          },
          {
            "date": "2020-06-05",
            "count": 2
          },
          {
            "date": "2020-06-08",
            "count": 1
          },
          {
            "date": "2020-06-14",
            "count": 1
          },
          {
            "date": "2020-06-16",
            "count": 1
          },
          {
            "date": "2020-06-23",
            "count": 1
          },
          {
            "date": "2020-06-26",
            "count": 1
          },
          {
            "date": "2020-06-30",
            "count": 1
          },
          {
            "date": "2020-07-03",
            "count": 1
          },
          {
            "date": "2020-07-06",
            "count": 1
          },
          {
            "date": "2020-07-11",
            "count": 1
          },
          {
            "date": "2020-07-14",
            "count": 1
          },
          {
            "date": "2020-07-24",
            "count": 1
          },
          {
            "date": "2020-07-27",
            "count": 2
          },
          {
            "date": "2020-07-28",
            "count": 3
          },
          {
            "date": "2020-07-30",
            "count": 1
          },
          {
            "date": "2020-08-03",
            "count": 1
          },
          {
            "date": "2020-08-04",
            "count": 1
          },
          {
            "date": "2020-08-05",
            "count": 1
          },
          {
            "date": "2020-08-11",
            "count": 1
          },
          {
            "date": "2020-08-12",
            "count": 2
          },
          {
            "date": "2020-08-17",
            "count": 1
          },
          {
            "date": "2020-08-19",
            "count": 1
          },
          {
            "date": "2020-08-22",
            "count": 1
          },
          {
            "date": "2020-08-25",
            "count": 2
          },
          {
            "date": "2020-08-26",
            "count": 1
          },
          {
            "date": "2020-09-02",
            "count": 1
          },
          {
            "date": "2020-09-03",
            "count": 1
          },
          {
            "date": "2020-09-08",
            "count": 2
          },
          {
            "date": "2020-09-10",
            "count": 2
          },
          {
            "date": "2020-09-21",
            "count": 1
          },
          {
            "date": "2020-09-22",
            "count": 1
          },
          {
            "date": "2020-09-23",
            "count": 1
          },
          {
            "date": "2020-09-28",
            "count": 1
          },
          {
            "date": "2020-09-30",
            "count": 1
          },
          {
            "date": "2020-10-01",
            "count": 2
          },
          {
            "date": "2020-10-03",
            "count": 1
          },
          {
            "date": "2020-10-04",
            "count": 1
          },
          {
            "date": "2020-10-06",
            "count": 3
          },
          {
            "date": "2020-10-07",
            "count": 1
          },
          {
            "date": "2020-10-11",
            "count": 2
          },
          {
            "date": "2020-10-13",
            "count": 1
          },
          {
            "date": "2020-10-15",
            "count": 1
          },
          {
            "date": "2020-10-16",
            "count": 1
          },
          {
            "date": "2020-10-18",
            "count": 1
          },
          {
            "date": "2020-10-20",
            "count": 2
          },
          {
            "date": "2020-10-24",
            "count": 1
          },
          {
            "date": "2020-10-26",
            "count": 1
          },
          {
            "date": "2020-10-29",
            "count": 1
          },
          {
            "date": "2020-10-31",
            "count": 1
          },
          {
            "date": "2020-11-09",
            "count": 1
          },
          {
            "date": "2020-11-13",
            "count": 2
          },
          {
            "date": "2020-11-18",
            "count": 1
          },
          {
            "date": "2020-11-26",
            "count": 1
          },
          {
            "date": "2020-11-29",
            "count": 1
          },
          {
            "date": "2020-12-04",
            "count": 1
          },
          {
            "date": "2020-12-07",
            "count": 3
          },
          {
            "date": "2020-12-10",
            "count": 1
          },
          {
            "date": "2020-12-16",
            "count": 1
          },
          {
            "date": "2020-12-28",
            "count": 2
          },
          {
            "date": "2020-12-30",
            "count": 1
          },
          {
            "date": "2021-01-11",
            "count": 2
          },
          {
            "date": "2021-01-13",
            "count": 1
          },
          {
            "date": "2021-01-22",
            "count": 2
          },
          {
            "date": "2021-02-04",
            "count": 1
          },
          {
            "date": "2021-02-09",
            "count": 2
          },
          {
            "date": "2021-02-11",
            "count": 1
          },
          {
            "date": "2021-02-21",
            "count": 2
          },
          {
            "date": "2021-02-25",
            "count": 1
          },
          {
            "date": "2021-03-11",
            "count": 1
          },
          {
            "date": "2021-03-13",
            "count": 1
          },
          {
            "date": "2021-03-14",
            "count": 3
          },
          {
            "date": "2021-03-19",
            "count": 1
          },
          {
            "date": "2021-03-24",
            "count": 1
          },
          {
            "date": "2021-03-26",
            "count": 1
          },
          {
            "date": "2021-03-29",
            "count": 1
          },
          {
            "date": "2021-04-15",
            "count": 2
          },
          {
            "date": "2021-04-17",
            "count": 2
          },
          {
            "date": "2021-04-24",
            "count": 1
          },
          {
            "date": "2021-04-27",
            "count": 1
          },
          {
            "date": "2021-04-28",
            "count": 1
          },
          {
            "date": "2021-05-02",
            "count": 1
          },
          {
            "date": "2021-05-16",
            "count": 1
          },
          {
            "date": "2021-05-18",
            "count": 2
          },
          {
            "date": "2021-05-25",
            "count": 1
          },
          {
            "date": "2021-05-29",
            "count": 1
          },
          {
            "date": "2021-06-01",
            "count": 3
          },
          {
            "date": "2021-06-14",
            "count": 1
          },
          {
            "date": "2021-06-22",
            "count": 1
          },
          {
            "date": "2021-06-24",
            "count": 1
          },
          {
            "date": "2021-06-26",
            "count": 1
          },
          {
            "date": "2021-06-29",
            "count": 1
          },
          {
            "date": "2021-07-03",
            "count": 1
          },
          {
            "date": "2021-07-10",
            "count": 1
          },
          {
            "date": "2021-07-15",
            "count": 1
          },
          {
            "date": "2021-07-16",
            "count": 1
          },
          {
            "date": "2021-07-17",
            "count": 1
          },
          {
            "date": "2021-07-26",
            "count": 1
          },
          {
            "date": "2021-08-02",
            "count": 1
          },
          {
            "date": "2021-08-03",
            "count": 2
          },
          {
            "date": "2021-08-10",
            "count": 1
          },
          {
            "date": "2021-08-20",
            "count": 2
          },
          {
            "date": "2021-08-23",
            "count": 1
          },
          {
            "date": "2021-08-27",
            "count": 1
          },
          {
            "date": "2021-08-28",
            "count": 1
          },
          {
            "date": "2021-08-29",
            "count": 1
          },
          {
            "date": "2021-09-01",
            "count": 1
          },
          {
            "date": "2021-09-05",
            "count": 3
          },
          {
            "date": "2021-09-09",
            "count": 1
          },
          {
            "date": "2021-09-17",
            "count": 1
          },
          {
            "date": "2021-09-23",
            "count": 1
          },
          {
            "date": "2021-09-25",
            "count": 1
          },
          {
            "date": "2021-09-27",
            "count": 1
          },
          {
            "date": "2021-10-01",
            "count": 2
          },
          {
            "date": "2021-10-05",
            "count": 1
          },
          {
            "date": "2021-10-06",
            "count": 2
          },
          {
            "date": "2021-10-09",
            "count": 1
          },
          {
            "date": "2021-10-11",
            "count": 1
          },
          {
            "date": "2021-10-20",
            "count": 1
          },
          {
            "date": "2021-10-28",
            "count": 2
          },
          {
            "date": "2021-11-02",
            "count": 1
          },
          {
            "date": "2021-11-03",
            "count": 1
          },
          {
            "date": "2021-11-04",
            "count": 1
          },
          {
            "date": "2021-11-06",
            "count": 1
          },
          {
            "date": "2021-11-09",
            "count": 1
          },
          {
            "date": "2021-11-10",
            "count": 1
          },
          {
            "date": "2021-11-11",
            "count": 1
          },
          {
            "date": "2021-11-13",
            "count": 1
          },
          {
            "date": "2021-11-17",
            "count": 1
          },
          {
            "date": "2021-11-19",
            "count": 1
          },
          {
            "date": "2021-11-24",
            "count": 1
          },
          {
            "date": "2021-11-26",
            "count": 1
          },
          {
            "date": "2021-11-29",
            "count": 1
          },
          {
            "date": "2021-12-07",
            "count": 1
          },
          {
            "date": "2021-12-11",
            "count": 1
          },
          {
            "date": "2021-12-15",
            "count": 2
          },
          {
            "date": "2021-12-17",
            "count": 1
          },
          {
            "date": "2021-12-18",
            "count": 3
          },
          {
            "date": "2021-12-22",
            "count": 1
          },
          {
            "date": "2021-12-28",
            "count": 1
          },
          {
            "date": "2022-01-06",
            "count": 1
          },
          {
            "date": "2022-01-08",
            "count": 1
          },
          {
            "date": "2022-01-12",
            "count": 1
          },
          {
            "date": "2022-01-13",
            "count": 1
          },
          {
            "date": "2022-01-14",
            "count": 1
          },
          {
            "date": "2022-01-16",
            "count": 1
          },
          {
            "date": "2022-01-17",
            "count": 2
          },
          {
            "date": "2022-01-18",
            "count": 1
          },
          {
            "date": "2022-01-20",
            "count": 2
          },
          {
            "date": "2022-01-21",
            "count": 1
          },
          {
            "date": "2022-01-24",
            "count": 1
          },
          {
            "date": "2022-01-25",
            "count": 1
          },
          {
            "date": "2022-01-27",
            "count": 1
          },
          {
            "date": "2022-01-31",
            "count": 1
          },
          {
            "date": "2022-02-01",
            "count": 1
          },
          {
            "date": "2022-02-02",
            "count": 2
          },
          {
            "date": "2022-02-07",
            "count": 1
          },
          {
            "date": "2022-02-08",
            "count": 1
          },
          {
            "date": "2022-02-16",
            "count": 1
          },
          {
            "date": "2022-02-28",
            "count": 1
          },
          {
            "date": "2022-03-06",
            "count": 1
          },
          {
            "date": "2022-03-07",
            "count": 3
          },
          {
            "date": "2022-03-08",
            "count": 1
          },
          {
            "date": "2022-03-10",
            "count": 1
          },
          {
            "date": "2022-03-15",
            "count": 1
          },
          {
            "date": "2022-03-16",
            "count": 1
          },
          {
            "date": "2022-03-17",
            "count": 1
          },
          {
            "date": "2022-03-18",
            "count": 2
          },
          {
            "date": "2022-03-19",
            "count": 1
          },
          {
            "date": "2022-03-21",
            "count": 1
          },
          {
            "date": "2022-03-22",
            "count": 1
          },
          {
            "date": "2022-03-29",
            "count": 1
          },
          {
            "date": "2022-03-31",
            "count": 1
          },
          {
            "date": "2022-04-07",
            "count": 1
          },
          {
            "date": "2022-04-22",
            "count": 1
          },
          {
            "date": "2022-04-23",
            "count": 2
          },
          {
            "date": "2022-04-28",
            "count": 1
          },
          {
            "date": "2022-05-06",
            "count": 1
          },
          {
            "date": "2022-05-09",
            "count": 1
          },
          {
            "date": "2022-05-10",
            "count": 3
          },
          {
            "date": "2022-05-11",
            "count": 1
          },
          {
            "date": "2022-05-24",
            "count": 2
          },
          {
            "date": "2022-05-26",
            "count": 1
          },
          {
            "date": "2022-06-02",
            "count": 1
          },
          {
            "date": "2022-06-09",
            "count": 1
          },
          {
            "date": "2022-06-14",
            "count": 1
          },
          {
            "date": "2022-06-17",
            "count": 1
          },
          {
            "date": "2022-06-19",
            "count": 1
          },
          {
            "date": "2022-06-22",
            "count": 1
          },
          {
            "date": "2022-06-29",
            "count": 1
          },
          {
            "date": "2022-07-03",
            "count": 1
          },
          {
            "date": "2022-07-07",
            "count": 1
          },
          {
            "date": "2022-07-12",
            "count": 2
          },
          {
            "date": "2022-07-14",
            "count": 1
          },
          {
            "date": "2022-07-15",
            "count": 1
          },
          {
            "date": "2022-07-26",
            "count": 1
          },
          {
            "date": "2022-07-30",
            "count": 1
          },
          {
            "date": "2022-07-31",
            "count": 1
          },
          {
            "date": "2022-08-02",
            "count": 1
          },
          {
            "date": "2022-08-03",
            "count": 1
          },
          {
            "date": "2022-08-06",
            "count": 1
          },
          {
            "date": "2022-08-07",
            "count": 1
          },
          {
            "date": "2022-08-09",
            "count": 1
          },
          {
            "date": "2022-08-12",
            "count": 1
          },
          {
            "date": "2022-08-17",
            "count": 2
          },
          {
            "date": "2022-08-18",
            "count": 1
          },
          {
            "date": "2022-08-27",
            "count": 1
          },
          {
            "date": "2022-08-30",
            "count": 2
          },
          {
            "date": "2022-08-31",
            "count": 1
          },
          {
            "date": "2022-09-09",
            "count": 1
          },
          {
            "date": "2022-09-12",
            "count": 2
          },
          {
            "date": "2022-09-15",
            "count": 2
          },
          {
            "date": "2022-09-16",
            "count": 1
          },
          {
            "date": "2022-09-18",
            "count": 1
          },
          {
            "date": "2022-09-22",
            "count": 1
          },
          {
            "date": "2022-09-23",
            "count": 1
          },
          {
            "date": "2022-09-29",
            "count": 2
          },
          {
            "date": "2022-09-30",
            "count": 1
          },
          {
            "date": "2022-10-09",
            "count": 1
          },
          {
            "date": "2022-10-11",
            "count": 1
          },
          {
            "date": "2022-10-13",
            "count": 1
          },
          {
            "date": "2022-10-20",
            "count": 1
          },
          {
            "date": "2022-10-21",
            "count": 1
          },
          {
            "date": "2022-10-22",
            "count": 1
          },
          {
            "date": "2022-10-26",
            "count": 1
          },
          {
            "date": "2022-11-05",
            "count": 1
          },
          {
            "date": "2022-11-07",
            "count": 1
          },
          {
            "date": "2022-11-09",
            "count": 1
          },
          {
            "date": "2022-11-18",
            "count": 2
          },
          {
            "date": "2022-11-23",
            "count": 1
          },
          {
            "date": "2022-11-24",
            "count": 2
          },
          {
            "date": "2022-12-03",
            "count": 1
          },
          {
            "date": "2022-12-07",
            "count": 1
          },
          {
            "date": "2022-12-12",
            "count": 1
          },
          {
            "date": "2022-12-16",
            "count": 1
          },
          {
            "date": "2022-12-21",
            "count": 1
          },
          {
            "date": "2022-12-23",
            "count": 1
          },
          {
            "date": "2023-01-02",
            "count": 1
          },
          {
            "date": "2023-01-04",
            "count": 2
          },
          {
            "date": "2023-01-06",
            "count": 1
          },
          {
            "date": "2023-01-08",
            "count": 1
          },
          {
            "date": "2023-01-11",
            "count": 1
          },
          {
            "date": "2023-01-21",
            "count": 1
          },
          {
            "date": "2023-01-23",
            "count": 1
          },
          {
            "date": "2023-01-24",
            "count": 1
          },
          {
            "date": "2023-01-25",
            "count": 1
          },
          {
            "date": "2023-01-31",
            "count": 2
          },
          {
            "date": "2023-02-09",
            "count": 1
          },
          {
            "date": "2023-02-12",
            "count": 1
          },
          {
            "date": "2023-02-14",
            "count": 1
          },
          {
            "date": "2023-02-22",
            "count": 2
          },
          {
            "date": "2023-02-23",
            "count": 2
          },
          {
            "date": "2023-02-24",
            "count": 1
          },
          {
            "date": "2023-02-28",
            "count": 2
          },
          {
            "date": "2023-03-01",
            "count": 1
          },
          {
            "date": "2023-03-05",
            "count": 1
          },
          {
            "date": "2023-03-06",
            "count": 1
          },
          {
            "date": "2023-03-08",
            "count": 1
          },
          {
            "date": "2023-03-09",
            "count": 2
          },
          {
            "date": "2023-03-11",
            "count": 1
          },
          {
            "date": "2023-03-13",
            "count": 1
          },
          {
            "date": "2023-03-18",
            "count": 1
          },
          {
            "date": "2023-03-21",
            "count": 2
          },
          {
            "date": "2023-03-22",
            "count": 1
          },
          {
            "date": "2023-03-29",
            "count": 1
          },
          {
            "date": "2023-04-05",
            "count": 1
          },
          {
            "date": "2023-04-25",
            "count": 2
          },
          {
            "date": "2023-04-26",
            "count": 1
          },
          {
            "date": "2023-04-27",
            "count": 1
          },
          {
            "date": "2023-04-28",
            "count": 1
          },
          {
            "date": "2023-05-03",
            "count": 1
          },
          {
            "date": "2023-05-08",
            "count": 1
          },
          {
            "date": "2023-05-22",
            "count": 2
          },
          {
            "date": "2023-05-29",
            "count": 2
          },
          {
            "date": "2023-06-01",
            "count": 1
          },
          {
            "date": "2023-06-02",
            "count": 1
          },
          {
            "date": "2023-06-07",
            "count": 1
          },
          {
            "date": "2023-06-08",
            "count": 1
          },
          {
            "date": "2023-06-09",
            "count": 1
          },
          {
            "date": "2023-06-10",
            "count": 1
          },
          {
            "date": "2023-06-13",
            "count": 1
          },
          {
            "date": "2023-06-19",
            "count": 2
          },
          {
            "date": "2023-06-20",
            "count": 1
          },
          {
            "date": "2023-06-22",
            "count": 1
          },
          {
            "date": "2023-06-25",
            "count": 1
          },
          {
            "date": "2023-07-05",
            "count": 1
          },
          {
            "date": "2023-07-08",
            "count": 2
          },
          {
            "date": "2023-07-10",
            "count": 1
          },
          {
            "date": "2023-07-13",
            "count": 2
          },
          {
            "date": "2023-07-15",
            "count": 2
          },
          {
            "date": "2023-07-16",
            "count": 1
          },
          {
            "date": "2023-07-18",
            "count": 1
          },
          {
            "date": "2023-07-24",
            "count": 1
          },
          {
            "date": "2023-08-04",
            "count": 1
          },
          {
            "date": "2023-08-09",
            "count": 1
          },
          {
            "date": "2023-08-14",
            "count": 1
          },
          {
            "date": "2023-08-17",
            "count": 1
          },
          {
            "date": "2023-08-19",
            "count": 1
          },
          {
            "date": "2023-08-21",
            "count": 1
          },
          {
            "date": "2023-09-06",
            "count": 1
          },
          {
            "date": "2023-09-08",
            "count": 1
          },
          {
            "date": "2023-09-11",
            "count": 1
          },
          {
            "date": "2023-09-15",
            "count": 2
          },
          {
            "date": "2023-09-19",
            "count": 1
          },
          {
            "date": "2023-09-20",
            "count": 1
          },
          {
            "date": "2023-09-21",
            "count": 2
          },
          {
            "date": "2023-09-22",
            "count": 1
          },
          {
            "date": "2023-09-24",
            "count": 1
          },
          {
            "date": "2023-09-25",
            "count": 1
          },
          {
            "date": "2023-09-26",
            "count": 1
          },
          {
            "date": "2023-09-27",
            "count": 1
          },
          {
            "date": "2023-10-01",
            "count": 1
          },
          {
            "date": "2023-10-04",
            "count": 1
          },
          {
            "date": "2023-10-12",
            "count": 1
          },
          {
            "date": "2023-10-17",
            "count": 1
          },
          {
            "date": "2023-10-18",
            "count": 1
          },
          {
            "date": "2023-10-24",
            "count": 1
          },
          {
            "date": "2023-10-26",
            "count": 1
          },
          {
            "date": "2023-10-28",
            "count": 1
          },
          {
            "date": "2023-10-29",
            "count": 1
          },
          {
            "date": "2023-10-31",
            "count": 1
          },
          {
            "date": "2023-11-04",
            "count": 1
          },
          {
            "date": "2023-11-16",
            "count": 1
          },
          {
            "date": "2023-11-17",
            "count": 1
          },
          {
            "date": "2023-11-18",
            "count": 1
          },
          {
            "date": "2023-11-20",
            "count": 1
          },
          {
            "date": "2023-11-30",
            "count": 2
          },
          {
            "date": "2023-12-04",
            "count": 1
          },
          {
            "date": "2023-12-07",
            "count": 1
          },
          {
            "date": "2023-12-09",
            "count": 1
          },
          {
            "date": "2023-12-11",
            "count": 1
          },
          {
            "date": "2023-12-12",
            "count": 1
          },
          {
            "date": "2023-12-22",
            "count": 1
          },
          {
            "date": "2023-12-28",
            "count": 1
          },
          {
            "date": "2024-01-05",
            "count": 1
          },
          {
            "date": "2024-01-06",
            "count": 1
          },
          {
            "date": "2024-01-09",
            "count": 2
          },
          {
            "date": "2024-01-22",
            "count": 1
          },
          {
            "date": "2024-01-25",
            "count": 1
          },
          {
            "date": "2024-01-27",
            "count": 8
          },
          {
            "date": "2024-01-28",
            "count": 2
          },
          {
            "date": "2024-01-30",
            "count": 1
          },
          {
            "date": "2024-01-31",
            "count": 2
          },
          {
            "date": "2024-02-05",
            "count": 1
          },
          {
            "date": "2024-02-06",
            "count": 1
          },
          {
            "date": "2024-02-12",
            "count": 1
          },
          {
            "date": "2024-02-13",
            "count": 1
          },
          {
            "date": "2024-02-14",
            "count": 1
          },
          {
            "date": "2024-02-26",
            "count": 1
          },
          {
            "date": "2024-02-27",
            "count": 1
          },
          {
            "date": "2024-03-01",
            "count": 1
          },
          {
            "date": "2024-03-14",
            "count": 1
          },
          {
            "date": "2024-03-18",
            "count": 1
          },
          {
            "date": "2024-03-19",
            "count": 1
          },
          {
            "date": "2024-03-20",
            "count": 1
          },
          {
            "date": "2024-03-21",
            "count": 1
          },
          {
            "date": "2024-03-22",
            "count": 1
          },
          {
            "date": "2024-03-26",
            "count": 2
          },
          {
            "date": "2024-03-28",
            "count": 1
          },
          {
            "date": "2024-03-29",
            "count": 1
          },
          {
            "date": "2024-03-30",
            "count": 1
          },
          {
            "date": "2024-04-03",
            "count": 1
          },
          {
            "date": "2024-04-04",
            "count": 1
          },
          {
            "date": "2024-04-17",
            "count": 1
          },
          {
            "date": "2024-04-22",
            "count": 2
          },
          {
            "date": "2024-05-02",
            "count": 1
          },
          {
            "date": "2024-05-08",
            "count": 1
          },
          {
            "date": "2024-05-09",
            "count": 1
          },
          {
            "date": "2024-05-13",
            "count": 1
          },
          {
            "date": "2024-05-16",
            "count": 2
          },
          {
            "date": "2024-05-22",
            "count": 1
          },
          {
            "date": "2024-05-23",
            "count": 2
          },
          {
            "date": "2024-05-24",
            "count": 1
          },
          {
            "date": "2024-05-31",
            "count": 1
          },
          {
            "date": "2024-06-02",
            "count": 1
          },
          {
            "date": "2024-06-04",
            "count": 1
          },
          {
            "date": "2024-06-06",
            "count": 1
          },
          {
            "date": "2024-06-08",
            "count": 1
          },
          {
            "date": "2024-06-13",
            "count": 1
          },
          {
            "date": "2024-06-20",
            "count": 1
          },
          {
            "date": "2024-06-25",
            "count": 2
          },
          {
            "date": "2024-07-09",
            "count": 1
          },
          {
            "date": "2024-07-15",
            "count": 1
          },
          {
            "date": "2024-07-18",
            "count": 1
          },
          {
            "date": "2024-07-20",
            "count": 1
          },
          {
            "date": "2024-07-22",
            "count": 1
          },
          {
            "date": "2024-07-24",
            "count": 1
          },
          {
            "date": "2024-07-26",
            "count": 1
          },
          {
            "date": "2024-07-31",
            "count": 1
          },
          {
            "date": "2024-08-01",
            "count": 1
          },
          {
            "date": "2024-08-03",
            "count": 2
          },
          {
            "date": "2024-08-13",
            "count": 1
          },
          {
            "date": "2024-08-15",
            "count": 1
          },
          {
            "date": "2024-08-26",
            "count": 1
          },
          {
            "date": "2024-08-27",
            "count": 1
          },
          {
            "date": "2024-09-01",
            "count": 1
          },
          {
            "date": "2024-09-04",
            "count": 2
          },
          {
            "date": "2024-09-05",
            "count": 1
          },
          {
            "date": "2024-09-07",
            "count": 1
          },
          {
            "date": "2024-09-09",
            "count": 1
          },
          {
            "date": "2024-09-12",
            "count": 1
          },
          {
            "date": "2024-09-15",
            "count": 1
          },
          {
            "date": "2024-09-16",
            "count": 1
          },
          {
            "date": "2024-09-17",
            "count": 1
          },
          {
            "date": "2024-09-23",
            "count": 1
          },
          {
            "date": "2024-09-24",
            "count": 1
          },
          {
            "date": "2024-09-27",
            "count": 1
          },
          {
            "date": "2024-10-04",
            "count": 1
          },
          {
            "date": "2024-10-08",
            "count": 1
          },
          {
            "date": "2024-10-09",
            "count": 1
          },
          {
            "date": "2024-10-11",
            "count": 1
          },
          {
            "date": "2024-10-14",
            "count": 1
          },
          {
            "date": "2024-10-23",
            "count": 1
          },
          {
            "date": "2024-11-13",
            "count": 1
          },
          {
            "date": "2024-11-20",
            "count": 2
          },
          {
            "date": "2024-11-23",
            "count": 3
          },
          {
            "date": "2024-11-25",
            "count": 1
          },
          {
            "date": "2024-11-28",
            "count": 1
          },
          {
            "date": "2024-12-15",
            "count": 1
          },
          {
            "date": "2024-12-16",
            "count": 2
          },
          {
            "date": "2024-12-27",
            "count": 1
          },
          {
            "date": "2024-12-30",
            "count": 1
          },
          {
            "date": "2024-12-31",
            "count": 1
          },
          {
            "date": "2025-01-01",
            "count": 1
          },
          {
            "date": "2025-01-14",
            "count": 1
          },
          {
            "date": "2025-01-15",
            "count": 1
          },
          {
            "date": "2025-01-17",
            "count": 1
          },
          {
            "date": "2025-01-20",
            "count": 1
          },
          {
            "date": "2025-01-23",
            "count": 1
          },
          {
            "date": "2025-01-26",
            "count": 1
          },
          {
            "date": "2025-01-30",
            "count": 1
          },
          {
            "date": "2025-02-06",
            "count": 1
          },
          {
            "date": "2025-02-07",
            "count": 1
          },
          {
            "date": "2025-02-11",
            "count": 1
          },
          {
            "date": "2025-02-13",
            "count": 1
          },
          {
            "date": "2025-02-14",
            "count": 1
          },
          {
            "date": "2025-02-19",
            "count": 3
          },
          {
            "date": "2025-02-25",
            "count": 1
          },
          {
            "date": "2025-02-27",
            "count": 1
          },
          {
            "date": "2025-03-01",
            "count": 1
          },
          {
            "date": "2025-03-04",
            "count": 1
          },
          {
            "date": "2025-03-06",
            "count": 1
          },
          {
            "date": "2025-03-10",
            "count": 1
          },
          {
            "date": "2025-03-11",
            "count": 1
          },
          {
            "date": "2025-03-15",
            "count": 1
          },
          {
            "date": "2025-03-17",
            "count": 2
          },
          {
            "date": "2025-03-20",
            "count": 2
          },
          {
            "date": "2025-03-25",
            "count": 1
          },
          {
            "date": "2025-03-26",
            "count": 1
          },
          {
            "date": "2025-03-29",
            "count": 1
          },
          {
            "date": "2025-04-02",
            "count": 1
          },
          {
            "date": "2025-04-08",
            "count": 1
          },
          {
            "date": "2025-04-10",
            "count": 1
          },
          {
            "date": "2025-04-11",
            "count": 1
          },
          {
            "date": "2025-04-18",
            "count": 1
          },
          {
            "date": "2025-04-22",
            "count": 1
          },
          {
            "date": "2025-04-25",
            "count": 2
          },
          {
            "date": "2025-05-01",
            "count": 2
          },
          {
            "date": "2025-05-10",
            "count": 1
          },
          {
            "date": "2025-05-12",
            "count": 2
          },
          {
            "date": "2025-05-15",
            "count": 2
          },
          {
            "date": "2025-05-24",
            "count": 1
          },
          {
            "date": "2025-05-28",
            "count": 1
          },
          {
            "date": "2025-06-01",
            "count": 1
          },
          {
            "date": "2025-06-03",
            "count": 1
          },
          {
            "date": "2025-06-04",
            "count": 1
          },
          {
            "date": "2025-06-08",
            "count": 1
          },
          {
            "date": "2025-06-10",
            "count": 1
          },
          {
            "date": "2025-06-12",
            "count": 1
          },
          {
            "date": "2025-06-19",
            "count": 1
          },
          {
            "date": "2025-06-23",
            "count": 1
          },
          {
            "date": "2025-06-27",
            "count": 1
          },
          {
            "date": "2025-06-30",
            "count": 1
          },
          {
            "date": "2025-07-02",
            "count": 2
          },
          {
            "date": "2025-07-03",
            "count": 1
          },
          {
            "date": "2025-07-04",
            "count": 1
          },
          {
            "date": "2025-07-06",
            "count": 1
          },
          {
            "date": "2025-07-08",
            "count": 1
          },
          {
            "date": "2025-07-11",
            "count": 1
          },
          {
            "date": "2025-07-22",
            "count": 1
          },
          {
            "date": "2025-07-25",
            "count": 2
          },
          {
            "date": "2025-07-27",
            "count": 1
          },
          {
            "date": "2025-08-06",
            "count": 1
          },
          {
            "date": "2025-08-11",
            "count": 2
          },
          {
            "date": "2025-08-12",
            "count": 1
          },
          {
            "date": "2025-08-15",
            "count": 1
          },
          {
            "date": "2025-08-18",
            "count": 1
          },
          {
            "date": "2025-08-21",
            "count": 1
          },
          {
            "date": "2025-08-22",
            "count": 1
          },
          {
            "date": "2025-08-24",
            "count": 1
          },
          {
            "date": "2025-09-01",
            "count": 1
          },
          {
            "date": "2025-09-04",
            "count": 1
          },
          {
            "date": "2025-09-22",
            "count": 1
          },
          {
            "date": "2025-09-23",
            "count": 1
          },
          {
            "date": "2025-09-26",
            "count": 1
          },
          {
            "date": "2025-10-07",
            "count": 1
          },
          {
            "date": "2025-10-11",
            "count": 2
          },
          {
            "date": "2025-10-13",
            "count": 1
          },
          {
            "date": "2025-10-15",
            "count": 1
          },
          {
            "date": "2025-10-17",
            "count": 1
          },
          {
            "date": "2025-10-20",
            "count": 1
          },
          {
            "date": "2025-10-21",
            "count": 2
          },
          {
            "date": "2025-11-01",
            "count": 1
          },
          {
            "date": "2025-11-12",
            "count": 1
          },
          {
            "date": "2025-11-17",
            "count": 1
          },
          {
            "date": "2025-11-18",
            "count": 1
          },
          {
            "date": "2025-11-22",
            "count": 1
          },
          {
            "date": "2025-11-24",
            "count": 1
          },
          {
            "date": "2025-11-30",
            "count": 1
          },
          {
            "date": "2025-12-01",
            "count": 1
          },
          {
            "date": "2025-12-02",
            "count": 1
          },
          {
            "date": "2025-12-05",
            "count": 1
          },
          {
            "date": "2025-12-06",
            "count": 1
          },
          {
            "date": "2025-12-15",
            "count": 1
          },
          {
            "date": "2025-12-23",
            "count": 1
          },
          {
            "date": "2025-12-29",
            "count": 1
          },
          {
            "date": "2026-01-04",
            "count": 1
          },
          {
            "date": "2026-01-06",
            "count": 1
          },
          {
            "date": "2026-01-07",
            "count": 1
          },
          {
            "date": "2026-01-16",
            "count": 1
          },
          {
            "date": "2026-01-26",
            "count": 1
          },
          {
            "date": "2026-01-29",
            "count": 2
          },
          {
            "date": "2026-01-30",
            "count": 2
          },
          {
            "date": "2026-02-02",
            "count": 2
          },
          {
            "date": "2026-02-03",
            "count": 1
          },
          {
            "date": "2026-02-16",
            "count": 2
          },
          {
            "date": "2026-02-17",
            "count": 1
          },
          {
            "date": "2026-02-21",
            "count": 1
          },
          {
            "date": "2026-02-25",
            "count": 1
          },
          {
            "date": "2026-02-26",
            "count": 2
          },
          {
            "date": "2026-02-28",
            "count": 1
          },
          {
            "date": "2026-03-02",
            "count": 1
          },
          {
            "date": "2026-03-06",
            "count": 1
          },
          {
            "date": "2026-03-10",
            "count": 1
          },
          {
            "date": "2026-03-17",
            "count": 1
          },
          {
            "date": "2026-03-18",
            "count": 1
          },
          {
            "date": "2026-03-26",
            "count": 1
          },
          {
            "date": "2026-03-31",
            "count": 1
          },
          {
            "date": "2026-04-09",
            "count": 1
          },
          {
            "date": "2026-04-16",
            "count": 1
          },
          {
            "date": "2026-04-19",
            "count": 1
          },
          {
            "date": "2026-04-22",
            "count": 1
          },
          {
            "date": "2026-04-27",
            "count": 1
          },
          {
            "date": "2026-04-28",
            "count": 1
          },
          {
            "date": "2026-04-29",
            "count": 2
          },
          {
            "date": "2026-05-03",
            "count": 1
          },
          {
            "date": "2026-05-10",
            "count": 1
          },
          {
            "date": "2026-05-17",
            "count": 1
          },
          {
            "date": "2026-05-22",
            "count": 1
          },
          {
            "date": "2026-05-27",
            "count": 1
          },
          {
            "date": "2026-06-01",
            "count": 1
          },
          {
            "date": "2026-06-06",
            "count": 1
          },
          {
            "date": "2026-06-15",
            "count": 1
          },
          {
            "date": "2026-06-19",
            "count": 1
          },
          {
            "date": "2026-06-26",
            "count": 1
          },
          {
            "date": "2026-06-29",
            "count": 1
          },
          {
            "date": "2026-07-02",
            "count": 2
          },
          {
            "date": "2026-07-03",
            "count": 1
          },
          {
            "date": "2026-07-24",
            "count": 1
          },
          {
            "date": "2026-07-30",
            "count": 1
          }
        ],
        "complete": false,
        "collected": 1000,
        "total_forks": 1117
      },
      "star_history": null,
      "open_issues_and_prs": 519
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [],
      "has_llms_txt": false,
      "has_dockerfile": true,
      "has_mcp_signal": false,
      "bootstrap_files": [],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [],
      "toolchain_manifests": [],
      "largest_source_bytes": 121680,
      "source_files_sampled": 1078,
      "oversized_source_files": 6,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "conans/requirements.txt",
        "conans/requirements_dev.txt",
        "conans/requirements_runner.txt",
        "conans/requirements_server.txt",
        "pyproject.toml",
        "setup.cfg",
        "setup.py"
      ],
      "advisories": {
        "error": "No resolved dependencies carried a version and a supported ecosystem",
        "scope": "repository_graph",
        "source": null,
        "findings": [],
        "collected": false,
        "malicious": [],
        "truncated": false,
        "by_severity": {},
        "advisory_count": 0,
        "affected_count": 0,
        "assessed_count": 0,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 18,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "pypi"
      ],
      "dependencies": [],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "bottle",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "colorama",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "docker",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "fasteners",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "jinja2",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "paramiko",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "patch-ng",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pluginbase",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pyjwt",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pytest",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-cov",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-xdist",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "python-dateutil",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "pyyaml",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "requests",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "setuptools",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "urllib3",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "webtest",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 18,
        "direct_count": 0,
        "indirect_count": 18
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 59,
        "merged_prs": 6273,
        "open_issues": 460,
        "closed_ratio": 0.963,
        "closed_issues": 11975,
        "closed_unmerged_prs": 983
      },
      "bus_factor": 2,
      "bot_contributors": 0,
      "top_contributors": [
        {
          "type": "User",
          "login": "memsharded",
          "commits": 3952,
          "avatar_url": "https://avatars.githubusercontent.com/u/15367152?v=4"
        },
        {
          "type": "User",
          "login": "lasote",
          "commits": 1689,
          "avatar_url": "https://avatars.githubusercontent.com/u/3807515?v=4"
        },
        {
          "type": "User",
          "login": "czoido",
          "commits": 955,
          "avatar_url": "https://avatars.githubusercontent.com/u/5045666?v=4"
        },
        {
          "type": "User",
          "login": "AbrilRBS",
          "commits": 515,
          "avatar_url": "https://avatars.githubusercontent.com/u/5364255?v=4"
        },
        {
          "type": "User",
          "login": "jgsogo",
          "commits": 469,
          "avatar_url": "https://avatars.githubusercontent.com/u/1406456?v=4"
        },
        {
          "type": "User",
          "login": "danimtb",
          "commits": 376,
          "avatar_url": "https://avatars.githubusercontent.com/u/10808592?v=4"
        },
        {
          "type": "User",
          "login": "franramirez688",
          "commits": 299,
          "avatar_url": "https://avatars.githubusercontent.com/u/4571041?v=4"
        },
        {
          "type": "User",
          "login": "SSE4",
          "commits": 175,
          "avatar_url": "https://avatars.githubusercontent.com/u/870236?v=4"
        },
        {
          "type": "User",
          "login": "uilianries",
          "commits": 170,
          "avatar_url": "https://avatars.githubusercontent.com/u/4870173?v=4"
        },
        {
          "type": "User",
          "login": "perseoGI",
          "commits": 128,
          "avatar_url": "https://avatars.githubusercontent.com/u/26503843?v=4"
        }
      ],
      "contributors_sampled": 100,
      "top_contributor_share": 0.421
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "artifactory-tests.yml",
        "build-binaries.yml",
        "linux-tests.yml",
        "main.yml",
        "osx-tests.yml",
        "win-tests.yml"
      ],
      "has_docs_dir": false,
      "linter_configs": [],
      "has_editorconfig": true,
      "has_linter_config": false,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 10,
            "reason": "no binaries found in the repo",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": null,
            "reason": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 9,
            "reason": "25 out of 26 merged PRs checked by a CI test -- score normalized to 9",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
          },
          {
            "name": "CII-Best-Practices",
            "score": 0,
            "reason": "no effort to earn an OpenSSF best practices badge detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
          },
          {
            "name": "Code-Review",
            "score": 8,
            "reason": "Found 25/30 approved changesets -- score normalized to 8",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 10,
            "reason": "project has 28 contributing companies or organizations",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 0,
            "reason": "no 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 21 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": 0,
            "reason": "dependency not pinned by hash detected -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 0,
            "reason": "SAST tool is not run on all commits -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 0,
            "reason": "security policy file not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": 8,
            "reason": "5 out of the last 5 releases have a total of 5 signed artifacts.",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": 0,
            "reason": "detected GitHub workflow tokens with excessive permissions",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 10,
            "reason": "0 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "d5f74dc0b2da2a457f039c900577fcdcf9a59b81",
        "ran_at": "2026-08-05T07:22:28Z",
        "aggregate_score": 5.6,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": false,
      "has_dependabot_config": false
    },
    "contribution_flow": {
      "collected": true,
      "recent_prs": {
        "merged_7d": 7,
        "decided_7d": 10,
        "merged_30d": 48,
        "authors_30d": 10,
        "decided_30d": 59,
        "sample_size": 60,
        "window_days": 30,
        "sample_exhausted": false,
        "authors_probed_30d": 10,
        "newcomer_merged_30d": 1,
        "bot_prs_excluded_30d": 0,
        "newcomer_authors_30d": 1,
        "newcomer_decided_30d": 1
      },
      "ci_last_run_at": "2026-08-05T04:05:07Z",
      "oldest_open_prs": [
        {
          "number": 10261,
          "created_at": "2022-01-03T12:15:12Z",
          "last_comment_at": "2025-12-10T09:02:53Z",
          "last_comment_author": "araffin"
        },
        {
          "number": 11564,
          "created_at": "2022-07-02T11:50:10Z",
          "last_comment_at": "2022-07-10T19:25:35Z",
          "last_comment_author": "tonyseek"
        },
        {
          "number": 11713,
          "created_at": "2022-07-27T07:45:21Z",
          "last_comment_at": "2022-07-27T07:45:26Z",
          "last_comment_author": "CLAassistant"
        },
        {
          "number": 12970,
          "created_at": "2023-01-25T03:13:55Z",
          "last_comment_at": "2026-04-14T21:06:23Z",
          "last_comment_author": "memsharded"
        },
        {
          "number": 13592,
          "created_at": "2023-04-01T22:44:16Z",
          "last_comment_at": "2023-05-27T12:58:29Z",
          "last_comment_author": "SSE4"
        },
        {
          "number": 14163,
          "created_at": "2023-06-23T19:26:43Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 14387,
          "created_at": "2023-07-28T12:46:55Z",
          "last_comment_at": "2023-09-26T15:34:00Z",
          "last_comment_author": "CLAassistant"
        },
        {
          "number": 14428,
          "created_at": "2023-08-04T21:33:17Z",
          "last_comment_at": "2023-08-15T05:23:28Z",
          "last_comment_author": "domin144"
        },
        {
          "number": 14746,
          "created_at": "2023-09-15T07:38:37Z",
          "last_comment_at": "2023-10-16T15:58:02Z",
          "last_comment_author": "thorsten-klein"
        },
        {
          "number": 15269,
          "created_at": "2023-12-13T19:32:21Z",
          "last_comment_at": "2024-03-13T23:49:34Z",
          "last_comment_author": "iskunk"
        },
        {
          "number": 17331,
          "created_at": "2024-11-18T00:17:25Z",
          "last_comment_at": "2024-11-29T17:29:49Z",
          "last_comment_author": "memsharded"
        },
        {
          "number": 17357,
          "created_at": "2024-11-21T09:14:37Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 17718,
          "created_at": "2025-02-06T12:56:26Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 17786,
          "created_at": "2025-02-14T21:45:46Z",
          "last_comment_at": "2025-09-01T10:41:37Z",
          "last_comment_author": "perseoGI"
        },
        {
          "number": 18044,
          "created_at": "2025-03-28T22:59:45Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 18098,
          "created_at": "2025-04-08T12:22:50Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 18138,
          "created_at": "2025-04-16T12:00:49Z",
          "last_comment_at": "2025-04-21T11:17:07Z",
          "last_comment_author": "memsharded"
        },
        {
          "number": 18253,
          "created_at": "2025-05-07T08:46:48Z",
          "last_comment_at": "2025-11-11T14:48:01Z",
          "last_comment_author": "kammce"
        },
        {
          "number": 18388,
          "created_at": "2025-05-30T10:19:39Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 18506,
          "created_at": "2025-06-20T10:35:47Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ],
      "last_merged_pr_at": "2026-08-04T18:01:12Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": [
        {
          "number": 847,
          "created_at": "2017-01-09T01:52:31Z",
          "last_comment_at": "2025-11-04T20:53:45Z",
          "last_comment_author": "robinchrist"
        },
        {
          "number": 2817,
          "created_at": "2018-04-27T11:16:52Z",
          "last_comment_at": "2019-01-17T09:16:10Z",
          "last_comment_author": "SSE4"
        },
        {
          "number": 3570,
          "created_at": "2018-09-18T23:15:23Z",
          "last_comment_at": "2018-11-28T15:26:34Z",
          "last_comment_author": "jgsogo"
        },
        {
          "number": 4480,
          "created_at": "2019-02-06T18:22:19Z",
          "last_comment_at": "2026-07-31T09:13:29Z",
          "last_comment_author": "jcar87"
        },
        {
          "number": 5209,
          "created_at": "2019-05-23T11:43:46Z",
          "last_comment_at": "2026-06-24T17:07:20Z",
          "last_comment_author": "memsharded"
        },
        {
          "number": 5463,
          "created_at": "2019-07-09T10:07:07Z",
          "last_comment_at": "2020-05-14T21:54:14Z",
          "last_comment_author": "Johnnyxy"
        },
        {
          "number": 5513,
          "created_at": "2019-07-18T13:46:05Z",
          "last_comment_at": "2023-10-25T13:28:54Z",
          "last_comment_author": "memsharded"
        },
        {
          "number": 6244,
          "created_at": "2019-12-16T20:52:52Z",
          "last_comment_at": "2025-03-27T12:38:44Z",
          "last_comment_author": "saladuit"
        },
        {
          "number": 6530,
          "created_at": "2020-02-12T00:00:36Z",
          "last_comment_at": "2025-01-23T17:47:30Z",
          "last_comment_author": "memsharded"
        },
        {
          "number": 6732,
          "created_at": "2020-03-25T12:23:34Z",
          "last_comment_at": "2026-06-24T17:07:47Z",
          "last_comment_author": "memsharded"
        },
        {
          "number": 6851,
          "created_at": "2020-04-14T12:19:17Z",
          "last_comment_at": "2023-12-31T00:16:09Z",
          "last_comment_author": "memsharded"
        },
        {
          "number": 7431,
          "created_at": "2020-07-27T15:52:12Z",
          "last_comment_at": "2023-08-08T06:01:16Z",
          "last_comment_author": "AndersGnistrup"
        },
        {
          "number": 8591,
          "created_at": "2021-03-03T07:50:40Z",
          "last_comment_at": "2021-03-05T17:00:42Z",
          "last_comment_author": "danimtb"
        },
        {
          "number": 8626,
          "created_at": "2021-03-10T16:28:47Z",
          "last_comment_at": "2025-10-16T17:28:36Z",
          "last_comment_author": "memsharded"
        },
        {
          "number": 8711,
          "created_at": "2021-03-26T15:04:43Z",
          "last_comment_at": "2021-04-08T22:21:55Z",
          "last_comment_author": "johschmitz"
        },
        {
          "number": 8905,
          "created_at": "2021-04-30T21:06:17Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 8921,
          "created_at": "2021-05-05T13:58:19Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 9097,
          "created_at": "2021-06-14T06:48:00Z",
          "last_comment_at": "2025-07-11T18:42:02Z",
          "last_comment_author": "jasal82"
        },
        {
          "number": 9243,
          "created_at": "2021-07-08T15:58:54Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 9494,
          "created_at": "2021-08-27T20:16:31Z",
          "last_comment_at": "2022-03-09T14:36:54Z",
          "last_comment_author": "njeisecke"
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/conan-io/conan",
    "host": "github.com",
    "name": "conan",
    "owner": "conan-io"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "excellent",
      "name": "Overall health",
      "note": "The weighted overall 78 is calibrated to 92 on the published index scale (record calibration 2026-08-02).",
      "notes": [
        {
          "code": "overall_calibration",
          "params": {
            "raw": 78,
            "calibrated": 92,
            "calibration": "2026-08-02"
          }
        }
      ],
      "value": 92,
      "inputs": {
        "security": 56,
        "vitality": 99,
        "community": 91,
        "governance": 80,
        "calibration": "2026-08-02",
        "engineering": 69,
        "ai_readiness": 40,
        "weighted_overall_raw": 78
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "exceptional",
        "name": "Vitality",
        "value": 99,
        "weight": 0.21,
        "metrics": [
          {
            "key": "development_activity",
            "band": "exceptional",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 99,
            "inputs": {
              "commits_last_year": 550,
              "human_commit_share": 1,
              "days_since_last_push": 0,
              "active_weeks_last_year": 50
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 0 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "50/52 weeks with commits",
                "points": 34.6,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 50
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "550 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 550
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 21 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "exceptional",
            "name": "Release discipline",
            "note": null,
            "notes": [],
            "value": 98,
            "inputs": {
              "releases_count": 100,
              "latest_release_tag": "2.31.2",
              "releases_from_tags": false,
              "days_since_latest_release": 0,
              "mean_days_between_releases": 14.7
            },
            "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 0 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~14.7 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 14.7
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "5 out of the last 5 releases have a total of 5 signed artifacts.",
                "points": 8,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "exceptional",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "maintained",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": null,
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": 0,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "last human commit 0 days ago",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_maintained",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "excellent",
        "name": "Community & Adoption",
        "value": 91,
        "weight": 0.17,
        "metrics": [
          {
            "key": "popularity",
            "band": "exceptional",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 97,
            "inputs": {
              "forks": 1117,
              "stars": 9469,
              "watchers": 128,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "9,469 stars",
                "points": 60,
                "status": "met",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 9469
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "1,117 forks",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 1117
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "128 watchers",
                "points": 11.7,
                "status": "partial",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 128
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "good",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 77,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "readme_badges": 0,
              "has_contributing": true,
              "has_issue_template": false,
              "has_code_of_conduct": false,
              "readme_badge_services": [],
              "has_pull_request_template": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "recognized license (MIT)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "MIT"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 18,
                "status": "met",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 6.3,
                "status": "met",
                "details": [],
                "max_points": 6.3
              }
            ]
          },
          {
            "key": "ecosystem_adoption",
            "band": "exceptional",
            "name": "Ecosystem adoption (downloads)",
            "note": "Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "registry_dependents"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "packages": [
                "conan"
              ],
              "dependents": null,
              "ecosystems": "pypi",
              "total_downloads": null,
              "monthly_downloads": 3796151
            },
            "components": [
              {
                "key": "monthly_downloads",
                "name": "Monthly downloads",
                "detail": "3,796,151 downloads/month across pypi",
                "points": 80,
                "status": "met",
                "details": [
                  {
                    "code": "downloads_monthly",
                    "params": {
                      "count": 3796151,
                      "ecosystems": "pypi"
                    }
                  }
                ],
                "max_points": 80
              },
              {
                "key": "registry_dependents",
                "name": "Registry dependents",
                "detail": "not reported by this ecosystem",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "not_reported_by_this_ecosystem",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "excellent",
        "name": "Sustainability & Governance",
        "value": 80,
        "weight": 0.23,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "moderate",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 62,
            "inputs": {
              "bus_factor": 2,
              "contributors_sampled": 100,
              "top_contributor_share": 0.421
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "2 contributor(s) cover half of all commits",
                "points": 25.2,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 2
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 42% of commits",
                "points": 13,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 42
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "100 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 100
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 28 contributing companies or organizations",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "excellent",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 91,
            "inputs": {
              "merged_prs": 6273,
              "open_issues": 460,
              "closed_issues": 11975,
              "prs_merged_7d": 7,
              "prs_decided_7d": 10,
              "prs_merged_30d": 48,
              "prs_decided_30d": 59,
              "issue_closed_ratio": 0.963,
              "closed_unmerged_prs": 983,
              "first_time_authors_30d": 1,
              "first_time_prs_merged_30d": 1,
              "first_time_prs_decided_30d": 1
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "96% of issues closed",
                "points": 40.4,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 96
                    }
                  }
                ],
                "max_points": 42
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "6273/7256 decided PRs merged",
                "points": 25.9,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 6273,
                      "decided": 7256
                    }
                  }
                ],
                "max_points": 30
              },
              {
                "key": "newcomer_pr_acceptance",
                "name": "Newcomer PR acceptance",
                "detail": "1/1 first-time contributors' PRs merged in 30d",
                "points": 13,
                "status": "met",
                "details": [
                  {
                    "code": "newcomer_prs_merged",
                    "params": {
                      "days": 30,
                      "merged": 1,
                      "decided": 1
                    }
                  }
                ],
                "max_points": 13
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 25/30 approved changesets -- score normalized to 8",
                "points": 12,
                "status": "partial",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "good",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 73,
            "inputs": {
              "followers": 438,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "conan-io",
              "public_repos": 38,
              "account_age_days": 3941
            },
            "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": "438 followers of conan-io",
                "points": 19,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 438,
                      "login": "conan-io"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "38 public repos, account ~10 yr old",
                "points": 23.6,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 38
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 10
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "exceptional",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "conan"
              ],
              "ecosystems": "pypi",
              "any_deprecated": false,
              "min_days_since_publish": 0
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "1 package(s) on pypi",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 1,
                      "ecosystems": "pypi"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 0 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "366 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 366
                    }
                  }
                ],
                "max_points": 20
              },
              {
                "key": "not_deprecated",
                "name": "Not deprecated",
                "detail": "active, not deprecated or yanked",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "package_not_deprecated",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "good",
        "name": "Engineering Quality",
        "value": 69,
        "weight": 0.19,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "good",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 72,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": true,
              "has_linter_config": false,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "6 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 6
                    }
                  }
                ],
                "max_points": 24
              },
              {
                "key": "tests_present",
                "name": "Tests present",
                "detail": null,
                "points": 24,
                "status": "met",
                "details": [],
                "max_points": 24
              },
              {
                "key": "linter_config",
                "name": "Linter config",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 6.4,
                "status": "met",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "25 out of 26 merged PRs checked by a CI test -- score normalized to 9",
                "points": 18,
                "status": "partial",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "good",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 65,
            "inputs": {
              "topics": [
                "package-manager",
                "cpp",
                "c",
                "cplusplus",
                "multi-platform",
                "cmake",
                "conan"
              ],
              "has_wiki": false,
              "homepage": "https://conan.io",
              "has_readme": true,
              "has_docs_dir": false,
              "has_description": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 30,
                "status": "met",
                "details": [],
                "max_points": 30
              },
              {
                "key": "documentation_directory",
                "name": "Documentation directory",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": "https://conan.io",
                "points": 15,
                "status": "met",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": "7 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 7
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "moderate",
        "name": "Security",
        "value": 56,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "moderate",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Branch-Protection, Packaging. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "branch_protection",
                    "packaging"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 56,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 16,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 2,
              "scorecard_aggregate": 5.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": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "25 out of 26 merged PRs checked by a CI test -- score normalized to 9",
                "points": 2.2,
                "status": "partial",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "cii_best_practices",
                "name": "CII-Best-Practices",
                "detail": "no effort to earn an OpenSSF best practices badge detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "code_review",
                "name": "Code-Review",
                "detail": "Found 25/30 approved changesets -- score normalized to 8",
                "points": 6,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 28 contributing companies or organizations",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "no update tool detected",
                "points": 0,
                "status": "missed",
                "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 21 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": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is not run on all commits -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file not detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "5 out of the last 5 releases have a total of 5 signed artifacts.",
                "points": 6,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "detected GitHub workflow tokens with excessive permissions",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "0 existing vulnerabilities detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "exceptional",
            "name": "High-Risk Jurisdiction Exposure",
            "note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
            "notes": [
              {
                "code": "jurisdiction_evidence_limits",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": false,
              "exposures": [],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "commit_weight_rule": {
                "min_commits": 50,
                "min_commit_share": 0.1
              },
              "review_only_matches": 0,
              "below_threshold_exposures": [],
              "assessed_self_published_locations": 16
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "weak",
        "name": "AI Readiness",
        "value": 40,
        "weight": 0.04,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "weak",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 0.85,
              "agent_instruction_files": [],
              "agent_instruction_max_bytes": null
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "no CLAUDE.md / AGENTS.md / editor rules",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_instructions",
                    "params": {}
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "85 of 100 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 85,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "at_risk",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 34,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [],
              "has_dockerfile": true,
              "typed_language": false,
              "bootstrap_files": [],
              "has_devcontainer": false,
              "has_linter_config": false,
              "typecheck_configs": [],
              "agent_commit_share": 0.01,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 18
              },
              {
                "key": "automated_tests",
                "name": "Automated tests",
                "detail": null,
                "points": 22,
                "status": "met",
                "details": [],
                "max_points": 22
              },
              {
                "key": "lint_format_config",
                "name": "Lint / format config",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "Dockerfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "Dockerfile"
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "1 of the last 100 commits agent-authored or agent-credited",
                "points": 2,
                "status": "partial",
                "details": [
                  {
                    "code": "agent_authored_commits",
                    "params": {
                      "count": 1,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "no automated dependency updates observed",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_dependency_automation",
                    "params": {}
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "moderate",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 55,
            "inputs": {
              "primary_language": "Python",
              "largest_source_bytes": 121680,
              "source_files_sampled": 1078,
              "oversized_source_files": 6
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "Python without a type-check config",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_typecheck_config_language",
                    "params": {
                      "language": "Python"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "6/1078 source files over 60KB",
                "points": 54.7,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 1078,
                      "oversized": 6
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? Carries a deliberately small weight: agent tooling is a real maintenance signal, but its absence must never gate the top of the scale (calibration saturates at raw 91, so 100/100 remains reachable with AI Readiness at zero)."
      }
    ],
    "classification": {
      "top": [
        "library",
        "application"
      ],
      "labels": [
        "cli",
        "library"
      ],
      "scores": {
        "cli": 10,
        "library": 6
      },
      "primary": "cli",
      "evidence": [
        {
          "tier": "declared",
          "label": "cli",
          "source": "pypi.console_scripts",
          "weight": 10
        },
        {
          "tier": "distribution",
          "label": "library",
          "source": "registry:pypi",
          "weight": 6
        }
      ],
      "artifacts": [
        {
          "path": "setup.py",
          "labels": [
            "cli"
          ],
          "ecosystem": "pypi"
        }
      ],
      "confidence": "high",
      "host_extension": false,
      "runs_as_process": true,
      "consumed_by_code": true
    },
    "metrics_version": "2.5.0"
  },
  "warnings": [
    "Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token",
    "deps.dev does not index pypi:conan@2.31.2; advisories assessed against the repository dependency graph instead",
    "No resolved dependencies carried a version and a supported ecosystem"
  ],
  "report_type": "repository",
  "generated_at": "2026-08-05T07:22:56.901483Z",
  "schema_version": "0.31.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/c/conan-io/conan.svg",
  "full_name": "conan-io/conan",
  "license_state": "standard",
  "license_spdx": "MIT"
}

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 v2.5.0, esquema v0.31.0 — metodología completa · wiki de métricas.

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