Öffentliches Register
Software-GesundheitsberichtSchema 0.26.0 · Metriken 1.13.0 · 2026-07-22 00:41 UTC

predis / predis

A flexible and feature-complete Redis/Valkey client for PHP.

PHPMIT★ 7.774 Sterne⑂ 997 Forksseit Nov. 2009Auf GitHub ansehen ↗

predis/predis erreicht einen Gesundheitsindex von 37 von 100 und liegt damit im Bereich Gefährdet. Am stärksten schneidet es bei Vitality (92/100) ab, am schwächsten bei Security (36/100). Zuletzt heute aktualisiert. Ein einzelner Mitwirkender trägt den Großteil der jüngsten Arbeit.

37
gesamt / 100
Gefährdet

Software-Gesundheitsindex

Metriken werden auf einer Skala von 1–100 in gewichtete Kategorien gruppiert. Der Gesamtwert beginnt als ihr Mittel; sobald öffentliche Evidenz die Richtlinie für Hochrisikojurisdiktionen auslöst, wird die Bewertung angepasst und erhält die Obergrenze 49 (Gefährdet). AI Readiness liegt außerhalb.

37
Exzellent85-100Vorbildlich; erfüllt im Wesentlichen alle geprüften Kriterien
Gut70-84Gesund; geringfügige Lücken
Mittel50-69Akzeptabel mit deutlichen Lücken; Überprüfung empfohlen
Gefährdet30-49Erhebliche Schwächen; eine Übernahme erfordert Vorsicht
Kritisch1-29Schwerwiegende Probleme (aufgegeben, nur ein Maintainer, keine Hygiene)
VitalitätCommunity &VerbreitungNachhaltigkeit &GovernanceEngineering-QualitätSicherheitAI Readiness

Bewertungsprofil

Jede Achse ist eine Kategorie. Die Form zählt mehr als der Durchschnitt — ein gesundes Projekt füllt die gesamte Fläche, während ein Profil aus Spitzen und Kratern bedeutet, dass Stärke in einer Dimension Risiken in einer anderen verdeckt.

Die Richtlinie für Hochrisikojurisdiktionen wendet einen Multiplikator von 50 % auf die gewichtete Gesamtgesundheit an und begrenzt sie auf die Obergrenze Gefährdet von 49.

Eigentümerschaft

PredisOrganisation
18 Follower1 öffentliches Reposeit Aug. 2020

Dieses Repository wird von einer Organisation getragen — geteilte, rechenschaftspflichtige Trägerschaft, die jeden einzelnen Maintainer überdauern kann.

Paket-Ökosysteme

RegistryPaketVersionDownloads / MonatVersionenZuletzt veröffentlichtTags
Packagistpredis/predisv3.5.16.787.15356vor 40 Tagennosqlredispredis

Metriken nach Kategorie

Vitalität

Lebt das Projekt — wird Code geschrieben und werden Releases ausgeliefert?

92Exzellent · 22 % des Gesamtindex
Wie die Bewertung erfolgt
36/36Push-Aktualität — letzter Push vor 0 Tagen
23.5/36Commit-Rhythmus — 34/52 Wochen mit Commits
17.8/18Commit-Volumen — 96 Commits im letzten Jahr
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 6 issue activity found in the last 90 days -- score normalized to 10
Verwendete Eingangsdaten
commits_last_year96
human_commit_share0,98
days_since_last_push0
active_weeks_last_year34

Release-Disziplin

100Exzellent
Wie die Bewertung erfolgt
27/27Liefert Releases aus — 63 Releases veröffentlicht
36/36Release-Aktualität — letztes Release vor 40 Tagen
27/27Release-Rhythmus — ein Release etwa alle 43,4 Tage
0/10OpenSSF Scorecard: Signed-Releases — keine Daten
Verwendete Eingangsdaten
releases_count63
latest_release_tagv3.5.1
releases_from_tagsnein
days_since_latest_release40
mean_days_between_releases43,4
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): OpenSSF Scorecard: Signed-Releases. Die verbleibenden Gewichte wurden renormalisiert.

Community & Verbreitung

Hat das Projekt Nutzer, Downloads, Aufmerksamkeit und ein einladendes Umfeld für Beitragende?

87Exzellent · 18 % des Gesamtindex
Wie die Bewertung erfolgt
60/60Stars — 7.774 Stars
25/25Forks — 997 Forks
12.8/15Watcher — 201 Watcher
Verwendete Eingangsdaten
forks997
stars7.774
watchers201
growth_stateorganic
growth_factor_pct100
Wie die Bewertung erfolgt
22.5/22.5README
22.5/22.5Lizenz — anerkannte Lizenz (MIT)
0/18CONTRIBUTING-Leitfaden
13.5/13.5Verhaltenskodex
0/7.2Issue-Vorlage
0/6.3PR-Vorlage
Verwendete Eingangsdaten
has_readmeja
has_licenseja
has_contributingnein
has_issue_templatenein
has_code_of_conductja
has_pull_request_templatenein
Wie die Bewertung erfolgt
80/80Downloads pro Monat — 6.787.153 Downloads/Monat über packagist
20/20Abhängige in der Registry — 2.842 Pakete hängen davon ab
Verwendete Eingangsdaten
packagespredis/predis
dependents2.842
ecosystemspackagist
total_downloads329.944.714
monthly_downloads6.787.153

Nachhaltigkeit & Governance

Überdauert das Projekt die Menschen, die es tragen — Bus-Faktor, Reaktionsfähigkeit, Trägerschaft und Paketpflege?

66Mittel · 24 % des Gesamtindex
Wie die Bewertung erfolgt
9/54Bus-Faktor — 1 Beitragende decken die Hälfte aller Commits ab
6.1/22.5Commit-Verteilung — wichtigste beitragende Person verfasste 73 % der Commits
13.5/13.5Breite der Beitragenden — 98 Beitragende
10/10OpenSSF Scorecard: Contributors — project has 49 contributing companies or organizations
Verwendete Eingangsdaten
bus_factor1
contributors_sampled98
top_contributor_share0,73
Wie die Bewertung erfolgt
46/46.8Issue-Lösungsquote — 98 % der Issues geschlossen
27.5/38.3PR-Annahme — 547/762 entschiedene PRs gemergt
12/15OpenSSF Scorecard: Code-Review — Found 21/26 approved changesets -- score normalized to 8
Verwendete Eingangsdaten
merged_prs547
open_issues15
closed_issues918
issue_closed_ratio0,984
closed_unmerged_prs215
Wie die Bewertung erfolgt
30/30Organisatorische Trägerschaft — im Besitz einer Organisation
0/20Verifizierte Domain
9.2/25Reichweite des Inhabers — 18 Follower von predis
14.1/25Kontohistorie — 1 öffentliche Repos, Kontoalter ca. 5 Jahre
Verwendete Eingangsdaten
followers18
owner_typeOrganization
is_verified
owner_loginpredis
public_repos1
account_age_days2.170

Paketpflege

100Exzellent
Wie die Bewertung erfolgt
25/25Veröffentlicht & auflösbar — 1 Paket(e) auf packagist
35/35Veröffentlichungsaktualität — letzte Veröffentlichung vor 40 Tagen
20/20Versionshistorie — 56 veröffentlichte Versionen
20/20Nicht veraltet — aktiv, nicht veraltet oder zurückgezogen
Verwendete Eingangsdaten
packagespredis/predis
ecosystemspackagist
any_deprecatednein
min_days_since_publish40

Engineering-Qualität

Sind grundlegende Engineering- und Dokumentationspraktiken vorhanden?

84Gut · 20 % des Gesamtindex
Wie die Bewertung erfolgt
24/24CI-Workflows — 4 Workflow(s)
24/24Tests vorhanden
16/16Linter-Konfiguration — .php-cs-fixer.dist.php
0/9.6Pre-Commit-Hooks
6.4/6.4.editorconfig
20/20OpenSSF Scorecard: CI-Tests — 26 out of 26 merged PRs checked by a CI test -- score normalized to 10
Verwendete Eingangsdaten
has_cija
has_testsja
has_editorconfigja
has_linter_configja
has_precommit_confignein
Wie die Bewertung erfolgt
30/30README
0/25Dokumentationsverzeichnis
15/15Dokumentations-/Homepage-Site — https://github.com/predis/predis/wiki
10/10Repository-Beschreibung
10/10Topics — 5 Topics
10/10Wiki
Verwendete Eingangsdaten
topicspredis, redis, redis-sentinel, redis-cluster, php
has_wikija
homepagehttps://github.com/predis/predis/wiki
has_readmeja
has_docs_dirnein
has_descriptionja

Sicherheit

Sind die sichtbaren Sicherheits- und Lieferkettenpraktiken belastbar, ohne ungeklärte Exposition gegenüber Hochrisikojurisdiktionen?

36Gefährdet · 16 % des Gesamtindex

Sicherheitslage

36Gefährdet
Wie die Bewertung erfolgt
7.5/7.5Binary-Artifacts — no binaries found in the repo
4.5/7.5Branch-Protection — branch protection is not maximal on development and all release branches
2.5/2.5CI-Tests — 26 out of 26 merged PRs checked by a CI test -- score normalized to 10
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
6/7.5Code-Review — Found 21/26 approved changesets -- score normalized to 8
2.5/2.5Contributors — project has 49 contributing companies or organizations
0/10Dangerous-Workflow — keine Daten
7.5/7.5Dependency-Update-Tool — update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5Lizenz — license file detected
7.5/7.5Maintained — 30 commit(s) and 6 issue activity found in the last 90 days -- score normalized to 10
0/5Packaging — keine Daten
0/5Pinned-Dependencies — keine Daten
2.5/5SAST — SAST tool is not run on all commits -- score normalized to 5
0/5Security-Policy — security policy file not detected
0/7.5Signed-Releases — keine Daten
0/7.5Token-Permissions — keine Daten
7.5/7.5Vulnerabilities — 0 existing vulnerabilities detected
Verwendete Eingangsdaten
sourceopenssf_scorecard
checks_evaluated13
scorecard_versionv5.5.0
checks_inconclusive5
scorecard_aggregate7,2
high_risk_jurisdiction_cap49
high_risk_jurisdiction_multiplier50
security_posture_after_multiplier36
security_posture_before_jurisdiction72
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): dangerous_workflow, packaging, pinned_dependencies, signed_releases, token_permissions. Die verbleibenden Gewichte wurden renormalisiert. Die Richtlinie für Hochrisikojurisdiktionen wendet einen Multiplikator von 50 % an und begrenzt die Sicherheitslage auf die Obergrenze Gefährdet von 49.

AI Readiness

Wie gut ist das Repository dafür ausgestattet, mit KI-Coding-Agenten entwickelt und gepflegt zu werden? Ein unabhängiges, experimentelles Badge — Gewicht 0,0, es wird eigenständig ausgewiesen und verändert den Gesamt-Gesundheitswert nicht.

49Gefährdet · 0 % des Gesamtindex
Wie die Bewertung erfolgt
0/45Agentenanweisungen — keine CLAUDE.md / AGENTS.md / Editor-Regeln
0/15Maschinenlesbare Doku (llms.txt)
40/40Lesbare Commit-Historie — 79 von 98 menschlichen Commits benennen ihre Absicht (strukturierter Betreff oder erläuternder Text)
Verwendete Eingangsdaten
has_llms_txtnein
legible_history_share0,806
agent_instruction_files
agent_instruction_max_bytes
Wie die Bewertung erfolgt
0/18Bootstrap mit einem Befehl
22/22Automatisierte Tests
11/11Lint-/Format-Konfiguration — .php-cs-fixer.dist.php
0/11Statische Typprüfung
10/10Reproduzierbare Umgebung — Dockerfile
0/10Belegte Agentenpraxis — keine von Agenten verfassten Commits unter den letzten 100
8/8Automatisierte Wartung — 2 der letzten 100 Commits sind automatisierte Abhängigkeits-Updates
0/10OpenSSF Scorecard: Pinned-Dependencies — keine Daten
Verwendete Eingangsdaten
has_nixnein
has_testsja
lockfiles
has_dockerfileja
typed_languagenein
bootstrap_files
has_devcontainernein
has_linter_configja
typecheck_configs
agent_commit_share0
toolchain_manifests
dependency_bot_commit_share0,02
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): OpenSSF Scorecard: Pinned-Dependencies. Die verbleibenden Gewichte wurden renormalisiert.
Wie die Bewertung erfolgt
0/45Typprüfbarer Code — PHP ohne Typprüfungs-Konfiguration
54.9/55Handhabbare Dateigrößen — 2/1.281 Quelldateien über 60 KB
Verwendete Eingangsdaten
primary_languagePHP
largest_source_bytes78.934
source_files_sampled1.281
oversized_source_files2
Wie die Bewertung erfolgt
0/40API-Schema (OpenAPI/GraphQL/proto)
0/20MCP-Server
40/40Lauffähige Beispiele — examples
Verwendete Eingangsdaten
example_dirsexamples
has_mcp_signalnein
api_schema_files

Eckdaten

7.774GitHub-Sterne
98Mitwirkende
96Commits, letzte 12 Monate
0Tage seit letztem Push
63Releases
1Bus-Faktor
15offene Issues
PackagistPaket-Ökosysteme

Warnungen zur Datenerhebung

  • No resolved dependencies carried a version and a supported ecosystem

Weitere Details

Stern- und Fork-Verlauf 7.774 ★ / 997 ⇿
7.774Sterne
997Forks
63Releases

Wann jeder Stern und Fork hinzugefügt wurde, von GitHub erfasst und nach Tagen gruppiert. Das kumulierte Wachstum steht direkt über den täglichen Zugängen, aus denen es besteht, sodass beide gegeneinander lesbar sind: stetiger organischer Zuwachs sieht ganz anders aus als ein abrupter, kurzlebiger Ausschlag. Wo dieser Unterschied messbar ist, wird er als Wachstumsauthentizität ausgewiesen.

Es wird nur die jüngste Historie angezeigt — dieses Repository überschreitet das Erfassungsfenster, sodass die früheste Historie nicht erfasst wird.

02.0004.0006.0008.0007.774979272010-042018-052026-07
Major 3Minor 13Patch 42

Jeder Punkt umfasst 15 Tage.

OpenSSF Scorecard 7.2 / 10
7.2Gesamtwert

Unabhängige, werkzeugneutrale Sicherheitsbewertung durch das quelloffene OpenSSF Scorecard. Jede Prüfung honoriert eine Sicherheits-Praxis, nicht das Werkzeug eines bestimmten Anbieters. Prüfungen, die Scorecard nicht ermitteln konnte, sind mit k. A. markiert und vom Sicherheitswert ausgeschlossen (nie als null gezählt).Scorecard v5.5.0 · 2026-07-22 00:41 UTC

10Binary-Artifactsno binaries found in the repo
6Branch-Protectionbranch protection is not maximal on development and all release branches
10CI-Tests26 out of 26 merged PRs checked by a CI test -- score normalized to 10
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
8Code-ReviewFound 21/26 approved changesets -- score normalized to 8
10Contributorsproject has 49 contributing companies or organizations
k. A.Dangerous-Workflowno workflows found
10Dependency-Update-Toolupdate tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
10Maintained30 commit(s) and 6 issue activity found in the last 90 days -- score normalized to 10
k. A.Packagingpackaging workflow not detected
k. A.Pinned-Dependenciesno dependencies found
5SASTSAST tool is not run on all commits -- score normalized to 5
0Security-Policysecurity policy file not detected
k. A.Signed-Releasesno releases found
k. A.Token-PermissionsNo tokens found
10Vulnerabilities0 existing vulnerabilities detected
Direkte Abhängigkeiten 1
RegistryPaketVersionsvorgabeManifest
Packagistpsr/http-message^1.0|^2.0composer.json
Alle Abhängigkeiten 6

Vollständig aufgelöster Abhängigkeitssatz aus dem GitHub-Abhängigkeitsgraphen: 1 direkte und 5 indirekte (transitive) Pakete. Die transitive Hülle ist vollständig, wenn das Repository eine Lockfile eincheckt.

RegistryPaketVersionBeziehung
Packagistpsr/http-messagedirekt
Packagistfriendsofphp/php-cs-fixerindirekt
Packagistphpindirekt
Packagistphpstan/phpstanindirekt
Packagistphpunit/phpcovindirekt
Packagistphpunit/phpunitindirekt
Abhängigkeits-Advisories nicht bewertet

Der Advisory-Abgleich konnte für diesen Bericht nicht ausgeführt werden: No resolved dependencies carried a version and a supported ecosystem

JSON-Rohbericht maschinenlesbar
{
  "data": {
    "repo": {
      "topics": [
        "predis",
        "redis",
        "redis-sentinel",
        "redis-cluster",
        "php"
      ],
      "is_fork": false,
      "size_kb": 9597,
      "has_wiki": true,
      "homepage": "https://github.com/predis/predis/wiki",
      "languages": {
        "PHP": 4117368
      },
      "pushed_at": "2026-07-21T12:02:36Z",
      "created_at": "2009-11-07T11:27:33Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-21T16:10:58Z",
      "description": "A flexible and feature-complete Redis/Valkey client for PHP.",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "MIT",
      "default_branch": "main",
      "license_spdx_raw": "MIT",
      "primary_language": "PHP",
      "significant_languages": [
        "PHP"
      ]
    },
    "owner": {
      "blog": null,
      "name": "Predis",
      "type": "Organization",
      "login": "predis",
      "company": null,
      "location": null,
      "followers": 18,
      "avatar_url": "https://avatars.githubusercontent.com/u/69525311?v=4",
      "created_at": "2020-08-11T16:01:06Z",
      "is_verified": null,
      "public_repos": 1,
      "account_age_days": 2170
    },
    "license": {
      "state": "standard",
      "spdx_id": "MIT",
      "raw_spdx": "MIT",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "v3.5.1",
          "kind": "patch",
          "published_at": "2026-06-11T16:58:32Z"
        },
        {
          "tag": "v3.5.0",
          "kind": "minor",
          "published_at": "2026-06-02T19:26:56Z"
        },
        {
          "tag": "v3.4.2",
          "kind": "patch",
          "published_at": "2026-03-09T20:34:02Z"
        },
        {
          "tag": "v3.4.1",
          "kind": "patch",
          "published_at": "2026-02-23T19:51:52Z"
        },
        {
          "tag": "v3.4.0",
          "kind": "minor",
          "published_at": "2026-02-11T17:30:54Z"
        },
        {
          "tag": "v3.3.0",
          "kind": "minor",
          "published_at": "2025-11-24T17:49:22Z"
        },
        {
          "tag": "v2.4.1",
          "kind": "patch",
          "published_at": "2025-11-12T18:01:03Z"
        },
        {
          "tag": "v3.2.0",
          "kind": "minor",
          "published_at": "2025-08-06T06:42:48Z"
        },
        {
          "tag": "v3.1.0",
          "kind": "minor",
          "published_at": "2025-07-22T15:38:28Z"
        },
        {
          "tag": "v3.0.1",
          "kind": "patch",
          "published_at": "2025-05-16T18:31:42Z"
        },
        {
          "tag": "v3.0.0",
          "kind": "major",
          "published_at": "2025-05-02T23:20:45Z"
        },
        {
          "tag": "v2.4.0",
          "kind": "minor",
          "published_at": "2025-04-30T15:16:52Z"
        },
        {
          "tag": "v3.0.0-RC1",
          "kind": "prerelease",
          "published_at": "2025-04-17T15:53:25Z"
        },
        {
          "tag": "v2.4.0-RC1",
          "kind": "prerelease",
          "published_at": "2025-03-24T17:08:15Z"
        },
        {
          "tag": "v2.3.0",
          "kind": "minor",
          "published_at": "2024-11-21T20:01:38Z"
        },
        {
          "tag": "v3.0.0-alpha1",
          "kind": "prerelease",
          "published_at": "2024-01-19T17:00:04Z"
        },
        {
          "tag": "v2.2.2",
          "kind": "patch",
          "published_at": "2023-09-13T16:44:42Z"
        },
        {
          "tag": "v2.2.1",
          "kind": "patch",
          "published_at": "2023-08-15T23:02:49Z"
        },
        {
          "tag": "v2.2.0",
          "kind": "minor",
          "published_at": "2023-06-14T10:38:43Z"
        },
        {
          "tag": "v2.2.0-RC1",
          "kind": "prerelease",
          "published_at": "2023-05-09T17:46:56Z"
        },
        {
          "tag": "v2.1.2",
          "kind": "patch",
          "published_at": "2023-03-02T18:36:09Z"
        },
        {
          "tag": "v2.1.1",
          "kind": "patch",
          "published_at": "2023-01-17T21:00:23Z"
        },
        {
          "tag": "v2.1.0",
          "kind": "minor",
          "published_at": "2023-01-16T23:35:37Z"
        },
        {
          "tag": "v2.0.3",
          "kind": "patch",
          "published_at": "2022-10-11T16:53:29Z"
        },
        {
          "tag": "v2.0.2",
          "kind": "patch",
          "published_at": "2022-09-06T14:38:36Z"
        },
        {
          "tag": "v2.0.1",
          "kind": "patch",
          "published_at": "2022-09-04T21:58:07Z"
        },
        {
          "tag": "v2.0.0",
          "kind": "major",
          "published_at": "2022-06-08T13:15:40Z"
        },
        {
          "tag": "v2.0.0-beta.1",
          "kind": "prerelease",
          "published_at": "2022-05-26T18:49:26Z"
        },
        {
          "tag": "v1.1.10",
          "kind": "patch",
          "published_at": "2022-01-05T17:47:07Z"
        },
        {
          "tag": "v1.1.9",
          "kind": "patch",
          "published_at": "2021-10-05T19:03:05Z"
        },
        {
          "tag": "v1.1.8",
          "kind": "patch",
          "published_at": "2021-09-29T17:49:30Z"
        },
        {
          "tag": "v1.1.7",
          "kind": "patch",
          "published_at": "2021-04-04T19:50:07Z"
        },
        {
          "tag": "v1.1.6",
          "kind": "patch",
          "published_at": "2020-09-11T19:46:51Z"
        },
        {
          "tag": "v1.1.5",
          "kind": "patch",
          "published_at": "2020-09-10T14:50:38Z"
        },
        {
          "tag": "v1.1.4",
          "kind": "patch",
          "published_at": "2020-08-31T10:25:25Z"
        },
        {
          "tag": "v1.1.3",
          "kind": "patch",
          "published_at": "2020-08-18T21:02:05Z"
        },
        {
          "tag": "v1.1.2",
          "kind": "patch",
          "published_at": "2020-08-11T17:35:31Z"
        },
        {
          "tag": "v1.1.1",
          "kind": "patch",
          "published_at": "2016-06-17T08:45:24Z"
        },
        {
          "tag": "v1.1.0",
          "kind": "minor",
          "published_at": "2016-06-02T08:34:58Z"
        },
        {
          "tag": "v1.0.4",
          "kind": "patch",
          "published_at": "2016-05-30T15:34:34Z"
        },
        {
          "tag": "v1.0.3",
          "kind": "patch",
          "published_at": "2015-07-30T18:54:57Z"
        },
        {
          "tag": "v1.0.2",
          "kind": "patch",
          "published_at": "2015-07-30T10:28:06Z"
        },
        {
          "tag": "v1.0.1",
          "kind": "patch",
          "published_at": "2015-07-30T10:34:58Z"
        },
        {
          "tag": "v1.0.0",
          "kind": "major",
          "published_at": "2016-06-01T14:19:13Z"
        },
        {
          "tag": "v0.8.7",
          "kind": "patch",
          "published_at": "2014-08-01T10:11:35Z"
        },
        {
          "tag": "v0.8.6",
          "kind": "patch",
          "published_at": "2014-07-15T10:03:01Z"
        },
        {
          "tag": "v0.8.5",
          "kind": "patch",
          "published_at": "2014-01-16T14:30:29Z"
        },
        {
          "tag": "v0.8.4",
          "kind": "patch",
          "published_at": "2013-07-27T09:48:21Z"
        },
        {
          "tag": "v0.8.3",
          "kind": "patch",
          "published_at": "2014-07-16T10:11:15Z"
        },
        {
          "tag": "v0.8.2",
          "kind": "patch",
          "published_at": "2014-07-16T10:12:21Z"
        },
        {
          "tag": "v0.8.1",
          "kind": "patch",
          "published_at": "2014-07-16T10:09:11Z"
        },
        {
          "tag": "v0.8.0",
          "kind": "minor",
          "published_at": "2014-07-16T10:05:16Z"
        },
        {
          "tag": "v0.7.3",
          "kind": "patch",
          "published_at": "2014-07-16T10:04:15Z"
        },
        {
          "tag": "v0.7.2",
          "kind": "patch",
          "published_at": "2014-07-16T10:03:29Z"
        },
        {
          "tag": "v0.7.1",
          "kind": "patch",
          "published_at": "2014-07-16T10:02:43Z"
        },
        {
          "tag": "v0.7.0",
          "kind": "minor",
          "published_at": "2014-07-16T10:01:05Z"
        },
        {
          "tag": "v0.6.6",
          "kind": "patch",
          "published_at": "2014-07-16T09:55:59Z"
        },
        {
          "tag": "v0.6.5",
          "kind": "patch",
          "published_at": "2014-07-16T09:54:54Z"
        },
        {
          "tag": "v0.6.4",
          "kind": "patch",
          "published_at": "2014-07-16T09:53:59Z"
        },
        {
          "tag": "v0.6.3",
          "kind": "patch",
          "published_at": "2014-07-16T09:52:40Z"
        },
        {
          "tag": "v0.6.2",
          "kind": "patch",
          "published_at": "2014-07-16T09:50:37Z"
        },
        {
          "tag": "v0.6.1",
          "kind": "patch",
          "published_at": "2014-07-16T09:48:53Z"
        },
        {
          "tag": "v0.6.0",
          "kind": "minor",
          "published_at": "2014-07-16T09:47:42Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "eafa3ff2bf1a60c3d525d95411b6f376c5ac0308",
          "body": null,
          "is_bot": false,
          "headline": "Added testing for HNSW vector type with RERANK argument (#1707)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-07-21T08:20:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bc08b36094117a49588247930808131138ec9b59",
          "body": null,
          "is_bot": false,
          "headline": "Added support for TS.QUERYLABELS command (#1706)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-07-21T08:20:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "96c634ef909ff6fdd04f88a39367c83d7bde8932",
          "body": null,
          "is_bot": false,
          "headline": "Added support for FT.ALIASLIST command (#1705)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-07-21T08:00:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bc406c7f552bf67bf3ed4b0b7b5c1befcf67edd8",
          "body": "…E commands (#1704)",
          "is_bot": false,
          "headline": "Added support for EXCLUDEEMPTY argument for TS.MRANGE and TS.MREVRANG…",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-07-21T07:59:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "66ce62657d950f20891d59939e41270c09fa879a",
          "body": "* Added explicit testing for FT.SEARCH timeout policies\n\n* Fixed assertion\n\n* Fixed tests",
          "is_bot": false,
          "headline": "Added explicit testing for FT.SEARCH timeout policies (#1703)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-07-20T07:39:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b1e40f4250c2d216c5ac8cb17d8af5a03ec656af",
          "body": "* Added support for TS.READ command\n\n* Added more testing and cluster support",
          "is_bot": false,
          "headline": "Added support for TS.READ command (#1702)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-07-20T07:27:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "93022049642d4cff05094255b78c50cd33fea6c1",
          "body": "* Added support for SDIFFCARD and SUNIONCARD command\n\n* Fixed broken test\n\n* Fixed failing tests",
          "is_bot": false,
          "headline": "Added support for SDIFFCARD and SUNIONCARD command (#1700)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-07-17T07:36:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d7bc1c47485d044dcd46a6482f2d57db62889a52",
          "body": "* Added support for new COLLECT reducer for FT.AGGREGATE\n\n* Added tests cleanup\n\n* Updated CHANGELOG.md",
          "is_bot": false,
          "headline": "Added support for new COLLECT reducer for FT.AGGREGATE (#1699)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-07-15T08:26:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1d7f035ec06719a9d307f9c1a88bb8a78254fba8",
          "body": null,
          "is_bot": false,
          "headline": "update changelog",
          "author_name": "Till Krüss",
          "author_login": "tillkruss",
          "committed_at": "2026-07-06T14:06:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f97b473fe1e26a92a0bf9001192e6c3785233888",
          "body": null,
          "is_bot": false,
          "headline": "Fix annotation of `cmsincrby` (#1698)",
          "author_name": "Kyle",
          "author_login": "kylekatarnls",
          "committed_at": "2026-07-06T14:05:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7bd54263487f571754f555d7d04da78e247bb8ca",
          "body": "Bumps the github-actions group with 3 updates: [actions/checkout](https://github.com/actions/checkout), [rojopolis/spellcheck-github-actions](https://github.com/rojopolis/spellcheck-github-actions) and [hoverkraft-tech/compose-action](https://github.com/hoverkraft-tech/compose-action).\n\n\nUpdates `ac\n[…]\nsion-update:semver-major\n  dependency-group: github-actions\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Bump the github-actions group with 3 updates (#1697)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-02T15:48:21Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "efb3958fb7bc4d4752d9c669717fb75acf3a5aca",
          "body": "…ration test (#1695)\n\n* Added support for new TS commands\n\n* Fixed version constraints\n\n* Codestyle fixes\n\n* Remvoed TS.BGET command",
          "is_bot": false,
          "headline": "Added support for new TS commands + Indonesian language support integ…",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-06-25T18:11:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "09b8ce59dd8a6fb8ac25c5455d56f2ce54515e39",
          "body": null,
          "is_bot": false,
          "headline": "Fixed Sentinel does not wipe servers on exception caused (#1694)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-06-22T17:55:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b6b7f0d4e09a79bfa58db3043b7e821463830e06",
          "body": "* Make ZMSCORE command Prefixable and add to a ClusterStrategy\n\n* Updated CHANGELOG.md\n\n* Codestyle fixes",
          "is_bot": false,
          "headline": "Make ZMSCORE command Prefixable and add to a ClusterStrategy (#1692)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-06-18T14:50:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a1ede6c5e81921c0d22ab73cacf1c1bd86e3c925",
          "body": null,
          "is_bot": false,
          "headline": "Fixed workflow permissions warnings  (#1690)",
          "author_name": "Copilot",
          "author_login": "Copilot",
          "committed_at": "2026-06-15T17:34:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d55b3072fa0518066100c210a26630ea3c627ebb",
          "body": null,
          "is_bot": false,
          "headline": "Correct pack/unpack PHPDoc types, clean up UNLINK test typing (#1689)",
          "author_name": "Copilot",
          "author_login": "Copilot",
          "committed_at": "2026-06-15T17:32:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a43cfd723c74d17790dd0895993c535660ac9424",
          "body": null,
          "is_bot": false,
          "headline": "Add Dependabot configuration (#1663)",
          "author_name": "Till Krüss",
          "author_login": "tillkruss",
          "committed_at": "2026-06-15T17:01:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5c996db191ee2d9bafe651f454b1fca16754271b",
          "body": null,
          "is_bot": false,
          "headline": "tag v3.5.1",
          "author_name": "Till Krüss",
          "author_login": "tillkruss",
          "committed_at": "2026-06-11T16:56:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fc345603a4cb5b4172b8eb416fd4f710a58b7395",
          "body": "* Allow  to accept an array of keys as a single argument\n\n* fix signature\n\n* update changelog",
          "is_bot": false,
          "headline": "Fix UNLINK missing single-array argument normalization (#1687)",
          "author_name": "Adrian Brajkovic",
          "author_login": "Brajk19",
          "committed_at": "2026-06-11T08:01:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "98180048d0f9fb3331acf78f0599dbd310163401",
          "body": "* Expose pipeline API via ClientInterface\n\n* Updated CHANGELOG.md\n\n* move @method\n\n---------\n\nCo-authored-by: Till Krüss <tillkruss@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Expose pipeline API via ClientInterface (#1686)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-06-10T07:48:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8cc4319c06924c8ff0c5c7eec4243a19e3be32f1",
          "body": null,
          "is_bot": false,
          "headline": "Prepare 3.5.0 (#1682)",
          "author_name": "Till Krüss",
          "author_login": "tillkruss",
          "committed_at": "2026-06-02T19:25:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "84c77ea460e974745c9a753e2ea518983a5f7767",
          "body": null,
          "is_bot": true,
          "headline": "Bump the github-actions group with 5 updates (#1683)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-02T17:32:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3da5d996bd2839f229db41d71f86db2a080a1ea9",
          "body": null,
          "is_bot": false,
          "headline": "move file",
          "author_name": "Till Krüss",
          "author_login": "tillkruss",
          "committed_at": "2026-06-02T17:20:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5d1d9fdf11bd2e74b998b79f6016e376ed483218",
          "body": null,
          "is_bot": false,
          "headline": "Add dependabot configuration for GitHub Actions and Composer",
          "author_name": "Till Krüss",
          "author_login": "tillkruss",
          "committed_at": "2026-06-02T17:18:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "135b405eae3b7f29716e6031865d558dfc110b1f",
          "body": null,
          "is_bot": false,
          "headline": "Added support for UNLINK command (#1680)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-06-02T16:28:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1611b33e4adfe468457e8a65f7dbfdcadab0f645",
          "body": null,
          "is_bot": false,
          "headline": "Updated 8.8 GA test image (#1679)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-06-02T16:28:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "37ed2dcd77a4a770af446d6db27505b6d15bfb04",
          "body": "* Updated INCREX command arguments\n\n* Updated test image\n\n* Updated CHANGELOG.md\n\n* Updated test image",
          "is_bot": false,
          "headline": "Updated INCREX arguments (#1677)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-05-22T09:17:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d6f91964e01a54f732b463c463d871c691155054",
          "body": "* Added support for new array commands\n\n* Updated test image, fixed tests\n\n* Updated CHANGELOG.md\n\n* Removed ARLASTITEMS from ClusterStrategy testing\n\n* Fixed broken tests\n\n* Fixed broken test\n\n* Updated 8.8-RC1 image\n\n* Fixed Vector Set tests",
          "is_bot": false,
          "headline": "Added support for new array commands (#1672)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-05-19T09:19:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "afc803549194e0a7a45cecdca76cb4f959f9b4a8",
          "body": "* Revert GCRA command support\n\n* Updated test image\n\n* Fixed flacky test",
          "is_bot": false,
          "headline": "Revert GCRA command support (#1673)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-05-19T08:36:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b2d1397fc653fa7c990b82626a309f8006c0ba96",
          "body": "* Fixed SENTINEL SLAVES RESP3 incompatible response\n\n* Updated CHANGELOG.md\n\n* Revert relay-incompatible annotations",
          "is_bot": false,
          "headline": "Fixed SENTINEL SLAVES RESP3 incompatible response (#1676)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-05-14T06:56:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f12e6694b54e7f918ab3b37712b1d185b541cdc4",
          "body": "* Added support for INCREX command\n\n* Fixed RESP2 and RESP3 incompatibility\n\n* Removed non-printable characters\n\n* Codestyle fixes",
          "is_bot": false,
          "headline": "Added support for INCREX command (#1674)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-05-13T08:11:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "268449ae692b4114c4acb933ad3f0c2a824aa08a",
          "body": "* Added testing for subkey notification channels\n\n* Updated CHANGELOG.md\n\n* Codestyle fixes\n\n* Added test cleanup\n\n* Added relay-incompatible label",
          "is_bot": false,
          "headline": "Added testing for subkey notification channels (#1671)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-04-29T19:29:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "52286f8164f2dd89738f7f215ebaa8bb06e4831a",
          "body": "* Added support for multiple aggregators for TS range commands\n\n* Updated CHANGELOG.md",
          "is_bot": false,
          "headline": "Added support for multiple aggregators for TS range commands (#1670)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-04-23T07:26:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6c3909e67537880a98ab785e23eac70de2b85f10",
          "body": "* Added test coverage with new COUNT aggregator\n\n* Updated CHANGELOG.md\n\n* Changed version constraint\n\n* Fixed broken test\n\n* Marked as relay-resp3",
          "is_bot": false,
          "headline": "Added new COUNT aggregator for Sorted Set commands (#1668)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-04-22T07:47:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "622f4df2b66ce4ce5557f672ce186c270e19f986",
          "body": "* Renamed GCRA parameters to match latest API\n\n* Added support for XNACK command\n\n* Updated test image\n\n* Updated test image\n\n* Updated version requirements\n\n* Fixed broken test\n\n* Updated CHANGELOG.md\n\n* Updated CHANGELOG.md",
          "is_bot": false,
          "headline": "Added XNACK support (#1666)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-04-22T07:30:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ae4a706b01d0519adfbbdcc69e03f84db89763fa",
          "body": "…xception (#1665)\n\n* Fixed Sentinel retry to narrow retryable exceptions to CommunicationException\n\n* Update CHANGELOG.md",
          "is_bot": false,
          "headline": "Fixed Sentinel retry to narrow retryable exceptions to CommunicationE…",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-04-20T07:10:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "54bb3009312d457accaf37c6e001f92f0f732a13",
          "body": "* Renamed GCRA parameters to match latest API\n\n* Updated test image\n\n* Updated version requirements\n\n* Fixed broken test\n\n* Updated CHANGELOG.md",
          "is_bot": false,
          "headline": "Updated arguments name for GCRA command (#1667)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-04-20T07:09:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5024c7a662fd30f88c6f02253e8560635a815f4b",
          "body": "* Fixed ZRANGE to include 6.2 arguments\n\n* Removed duplicated arguments entry",
          "is_bot": false,
          "headline": "Fixed ZRANGE to include 6.2 arguments (#1662)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-04-06T07:59:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3fc01fed581750c9f59b7f777ed05be102e93245",
          "body": null,
          "is_bot": false,
          "headline": "Added FPHA argument for JSON.SET command (#1661)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-04-03T09:50:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4c56d5d290fb879b31e43ee4f10817dacd5c2f7b",
          "body": "…in a gap (#1660)",
          "is_bot": false,
          "headline": "Fix SlotMap::offsetUnset() corrupting mappings when unsetting a slot …",
          "author_name": "messikiller",
          "author_login": "messikiller",
          "committed_at": "2026-03-25T09:36:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7a4fa99d1368c69ad3465942066c91b85bade9ab",
          "body": "* Added support for GCRA command\n\n* Codestyle fixes\n\n* Updated test image",
          "is_bot": false,
          "headline": "Added support for GCRA command (#1657)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-03-24T11:50:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bb37322a241b63e8543d1c23186828c62202db7c",
          "body": "…iCache support) (#1656)\n\n* feature: Added support for READONLY responses from AWS Elastic Cache\n\n* chore: improve -READONLY handler comment and add changelog entry (#1656)\n\n* tests: add unit test demonstrating ServerException behavior with READONLY error",
          "is_bot": false,
          "headline": "Handle -READONLY as a redirection signal for Redis Cluster (AWS Elast…",
          "author_name": "Kevin Rojas",
          "author_login": "NivekNK",
          "committed_at": "2026-03-23T07:00:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1c4219cf88708cbe54c4302322160f2edd847a40",
          "body": "…(#1654)\n\nCo-authored-by: tillkruss <665029+tillkruss@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Include command name in unsupported container command error messages …",
          "author_name": "Copilot",
          "author_login": "Copilot",
          "committed_at": "2026-03-18T01:09:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "383623eb05cf36e63f75f995a65cfd67827c6124",
          "body": null,
          "is_bot": false,
          "headline": "bump dev version",
          "author_name": "Till Krüss",
          "author_login": "tillkruss",
          "committed_at": "2026-03-09T20:34:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2033429520d8997a7815a2485f56abe6d2d0e075",
          "body": null,
          "is_bot": false,
          "headline": "tag v3.4.2",
          "author_name": "Till Krüss",
          "author_login": "tillkruss",
          "committed_at": "2026-03-09T20:33:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "87390e73814772ff42a76cdffeeb24296aa5abae",
          "body": null,
          "is_bot": false,
          "headline": "Use `static` closures (#1652)",
          "author_name": "Till Krüss",
          "author_login": "tillkruss",
          "committed_at": "2026-03-09T20:30:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f57dfcbeea54351084fd11b262b8cce9ad4c27a7",
          "body": null,
          "is_bot": false,
          "headline": "Format changelog entry [skip ci]",
          "author_name": "Till Krüss",
          "author_login": "tillkruss",
          "committed_at": "2026-03-09T20:04:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7388d911535bff78fee714138b0462d98c196c01",
          "body": "* Add driver_info option for CLIENT SETINFO upstream reporting\n\n* Use null default for upstreamDriver and ternary operator\n\n* Remove redundant null initialization\n\n* fix: remove trailing newline from VERSION file\n\n* fix: update copyright year to 2026 in DriverInfo files\n\n* refactor: rename driver_info to upstream_driver\n\n* fix: code style issues\n\n* docs: update CHANGELOG to reflect upstream_driver rename",
          "is_bot": false,
          "headline": "Add upstream_driver option for CLIENT SETINFO upstream reporting (#1645)",
          "author_name": "Vasil Chomakov",
          "author_login": "vchomakov",
          "committed_at": "2026-03-05T15:05:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d0f6671a6049dc14f6a7233fb63ff507755b76fe",
          "body": "* Fix sentinel discovery methods not catching StreamInitException\n\nThe getMaster(), getSlaves(), and updateSentinels() methods only catch\nConnectionException when connecting to Sentinel nodes. StreamInitException\n(thrown by stream_socket_client() failures) extends PredisException directly,\nnot Conne\n[…]\n)\n- Add CHANGELOG.md entry for #1650\n\n* Codestlye fixes\n\n---------\n\nCo-authored-by: Wolfgang Kerschbaumer <wolfgang.kerschbaumer@bergfex.at>\nCo-authored-by: vladvildanov <vladyslav.vildanov@redis.com>",
          "is_bot": false,
          "headline": "Fix sentinel discovery methods not catching StreamInitException (#1650)",
          "author_name": "Wolfgang Kerschbaumer",
          "author_login": "wkerschbaumer",
          "committed_at": "2026-03-05T15:01:40Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "274cb866bdde785da266610383b1d67dff5b5dc9",
          "body": "…649)",
          "is_bot": false,
          "headline": "Fixed Sentinel `getParameters()` executed on string configuration (#1…",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-02-26T19:01:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0850f2f36ee179f0ff96c92c750e1366c6cd754c",
          "body": null,
          "is_bot": false,
          "headline": "Prepare v3.4.1 release (#1647)",
          "author_name": "Till Krüss",
          "author_login": "tillkruss",
          "committed_at": "2026-02-23T19:51:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "581c5659bd5032359be34bfc2093172ccad7366f",
          "body": null,
          "is_bot": false,
          "headline": "update year in headers",
          "author_name": "Till Krüss",
          "author_login": "tillkruss",
          "committed_at": "2026-02-23T19:48:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4a5be21d6278ea7516848b73ada14eff56655ce4",
          "body": "* Make LMPOP and BLMPOP commands prefixable\n\n* Update CHANGELOG",
          "is_bot": false,
          "headline": "Make LMPOP and BLMPOP commands prefixable (#1646)",
          "author_name": "predakanga",
          "author_login": "predakanga",
          "committed_at": "2026-02-23T08:31:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7fd23dbcb93b5d1c68e5796df58cca8874e0a070",
          "body": "…#1642)",
          "is_bot": false,
          "headline": "Removed static from callables because it's deprecated since PHP 8.2 (…",
          "author_name": "Thomas Stägemann",
          "author_login": "staegi",
          "committed_at": "2026-02-20T09:05:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dd0713b5157c7c224397af83e8fbd5dab7cc86c5",
          "body": null,
          "is_bot": false,
          "headline": "Fix typo (#1640)",
          "author_name": "Amir Hossein Shokri",
          "author_login": "amirhshokri",
          "committed_at": "2026-02-17T17:12:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4b527ba96124f76ffa48d66d58e0cb2c345a2283",
          "body": null,
          "is_bot": false,
          "headline": "Make HTTL and HPTTL commands Prefixable (#1639)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-02-17T17:12:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6c9de258be4c43acc934655871d48c10f0364219",
          "body": "…entinel (#1636)\n\n* Fixed getParameter() call on array + added integration testing with Sentinel\n\n* Added sentinel.conf\n\n* Updated CHANGELOG.md\n\n* Added handling of ParametersInterface",
          "is_bot": false,
          "headline": "Fixed getParameter() call on array + added integration testing with S…",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-02-13T09:30:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1183f5732e6b10efd33f64984a96726eaecb59aa",
          "body": null,
          "is_bot": false,
          "headline": "fix changelog date",
          "author_name": "Till Krüss",
          "author_login": "tillkruss",
          "committed_at": "2026-02-11T17:30:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "83dbdbeb43d7fc773cc6c8d8402d394d2fbd821a",
          "body": null,
          "is_bot": false,
          "headline": "prepare v3.4.0",
          "author_name": "Till Krüss",
          "author_login": "tillkruss",
          "committed_at": "2026-02-11T17:28:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5d85628a117470c90f72b3280cb686b0a7f97ff2",
          "body": "* Add normalizeVariadic to RPUSHX and LPUSHX commands\n\nRPUSHX and LPUSHX commands were missing the setArguments method\nwith normalizeVariadic call, unlike their RPUSH and LPUSH counterparts.\nThis caused errors when passing values as a single array argument\n(e.g. $client->rpushx('key', ['val1', 'val2\n[…]\n #1504\n\n* Update CHANGELOG.md with RPUSHX/LPUSHX variadic fix (#1633)\n\n* Fix variadic arguments normalization for [L|R]PUSHX\n\n---------\n\nCo-authored-by: Till Krüss <tillkruss@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Add normalizeVariadic to RPUSHX and LPUSHX commands (#1633)",
          "author_name": "Denis",
          "author_login": "QDenka",
          "committed_at": "2026-02-11T17:07:39Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8b9f882a438b9ec19f5e6a41c9a98b0ee192767b",
          "body": null,
          "is_bot": false,
          "headline": "Added testing with Redis 8.6 GA (#1634)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-02-11T17:00:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e851ed6cebfb1a1d01958fdb5f65da73a78a3158",
          "body": "* Added augment commands support\n\n* Added support for Redis 8.6\n\n* Codestyle changes and test fixes\n\n* Fixed hybdrid tests\n\n* Updated CHANGELOG.md and composer.json\n\n* Fixed XINFO tests\n\n* Added support for idempontent stream API\n\n* Update CHANGELOG.md\n\n* Updated expected exported files\n\n* Removed agentic files\n\n* Removed .augment entry",
          "is_bot": false,
          "headline": "Added support for idempotent stream API (#1632)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-02-09T08:25:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "861bde010a3bc02e8b033d653a4a27bee4294949",
          "body": "* Added testing with SSL authentication using CN\n\n* Update CHANGELOG.md\n\n* Codestyle changes\n\n* Fixed broken tests\n\n* Fixed hybdrid tests\n\n* Fixed SSL tests\n\n* Fixed array merging\n\n* Updated README.md\n\n* Updated spelling list\n\n* Added support for HOTKEYS container command\n\n* Added ignoring for PHPUnit package\n\n* Update CHANGELOG.md, codestyle fixes, mark tests as relay-incompatible\n\n* Added RESP3 test, fixed response parsing\n\n* Removed redundant tests\n\n* Added cluster test\n\n* Fix assertion",
          "is_bot": false,
          "headline": "Added support for HOTKEYS container command (#1630)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-02-05T08:48:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "53504469d7c34cea3ec14dd52b25654e616ea59d",
          "body": "* Added testing with SSL authentication using CN\n\n* Update CHANGELOG.md\n\n* Codestyle changes\n\n* Fixed broken tests\n\n* Fixed hybdrid tests\n\n* Fixed SSL tests\n\n* Fixed array merging\n\n* Updated README.md\n\n* Updated spelling list\n\n* Added testing with TimeSeries NaN values\n\n* Updated CHANGELOG.md\n\n* Fixed incorrect annotation\n\n* Added support for Redis 8.6\n\n* Codestyle changes and test fixes\n\n* Fixed hybdrid tests\n\n* Updated CHANGELOG.md and composer.json\n\n* Fixed XINFO tests",
          "is_bot": false,
          "headline": "Added testing with TimeSeries NaN values (#1628)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-02-04T09:29:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d8a99ef674cac1fd5054127bc034beaf200382f3",
          "body": "* Added testing with SSL authentication using CN\n\n* Update CHANGELOG.md\n\n* Codestyle changes\n\n* Fixed broken tests\n\n* Fixed hybdrid tests\n\n* Fixed SSL tests\n\n* Fixed array merging\n\n* Updated README.md\n\n* Updated spelling list\n\n* Added support for Redis 8.6\n\n* Codestyle changes and test fixes\n\n* Fixed hybdrid tests\n\n* Updated CHANGELOG.md and composer.json\n\n* Fixed XINFO tests",
          "is_bot": false,
          "headline": "Added testing with SSL authentication using CN (#1627)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-02-04T09:18:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a24a7be9b4321b60c069c95190213ca8d883a082",
          "body": "* Added support for Redis 8.6\n\n* Codestyle changes and test fixes\n\n* Fixed hybdrid tests\n\n* Updated CHANGELOG.md and composer.json\n\n* Fixed XINFO tests",
          "is_bot": false,
          "headline": "Added support for Redis 8.6 (#1631)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-02-04T08:49:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "95e802430d4458b2a99316e747ae0ad81cd321ba",
          "body": "* Added testing with SSL connection\n\n* Update CHANGELOG.md\n\n* Revert changes\n\n* Codestyle fixes\n\n* Add version restriction\n\n* Fixed issue with connecting to SSL port to check redis version\n\n* Mark tests as relay-incompatible\n\n* Codestyle fixes",
          "is_bot": false,
          "headline": "Added testing with SSL connection (#1624)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-01-20T15:45:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0703c3cae6721a037292a9f571d2cbce1b39f5aa",
          "body": "* Added support for VRANGE command\n\n* Update CHANGELOG.md\n\n* Codestyle fixes\n\n* Codestyle fixes",
          "is_bot": false,
          "headline": "Added support for VRANGE command (#1623)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-01-19T08:50:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7c7cf901523d6ce738c8b83406da5f45d0f7e6c8",
          "body": "* Improve connection handshake by pipelining commands\n\n* Added exceptions handling for Redis < 6.0\n\n* Updated CHANGELOG.md",
          "is_bot": false,
          "headline": "Improve connection handshake by pipelining commands (#1622)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2026-01-08T11:56:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b211afd755aa4a892e3ae778e3b085b975f8c90e",
          "body": "* Make ZRANDMEMBER prefixable\n\n* Update CHANGELOG.md\n\n---------\n\nCo-authored-by: Vladyslav Vildanov <117659936+vladvildanov@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Make ZRANDMEMBER prefixable (#1621)",
          "author_name": "Markus Reinhold",
          "author_login": "marein",
          "committed_at": "2025-12-23T11:27:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "980326d5d8d65419d827d64ee39fdc38e146fb0e",
          "body": "* Initial work on retries\n\n* Added retry class and test coverage\n\n* Added support for standalone and cluster\n\n* Make TimeoutException instance of CommunicationException\n\n* Added pipeline, trasnaction, replication support\n\n* Fixed broken test\n\n* Marked test as relay-incompatible\n\n* Marked test as rel\n[…]\nration test case with mocked retry\n\n* Changed client initialisation in tests\n\n* Marked test as relay-incompatible\n\n---------\n\nCo-authored-by: Pavlo Yatsukhnenko <yatsukhnenko@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Added retry support (#1616)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2025-12-23T08:40:46Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0ae180c9421305c2709abcd6ad2d4507bd2763e8",
          "body": "run tests against relay nightly for faster testing",
          "is_bot": false,
          "headline": "Enable more Relay tests (#1617)",
          "author_name": "Pavlo Yatsukhnenko",
          "author_login": "yatsukhnenko",
          "committed_at": "2025-11-28T00:18:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "98c853a689038698ba9d3a9949bdb0c174fb2706",
          "body": null,
          "is_bot": false,
          "headline": "fixed param annotation (#1614)",
          "author_name": "Andrew Ivchenkov",
          "author_login": "aivchen",
          "committed_at": "2025-11-25T17:04:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "153097374b39a2f737fe700ebcd725642526cdec",
          "body": null,
          "is_bot": false,
          "headline": "Prepare v3.3.0 release (#1612)",
          "author_name": "Till Krüss",
          "author_login": "tillkruss",
          "committed_at": "2025-11-24T17:48:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6ef87493ca2d528eec172c2d3be52894f3c88104",
          "body": null,
          "is_bot": false,
          "headline": "Added testing with 8.4-GA (#1611)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2025-11-19T16:30:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "80430b4cde6f2f4c013cd21814b32571d8a4c820",
          "body": "* Added new CAS/CAD functionallity\n\n* Updated CHANGELOG.md\n\n* Codestyle fixes\n\n* Fixed version constraint\n\n* Marked feature as experimental\n\n* Updated version constraints, added missing annotations",
          "is_bot": false,
          "headline": "Added new experimental CAS/CAD functionallity (#1609)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2025-11-12T08:14:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d0f37f0bac1a22b2faf01a8e92d9227fc18d8243",
          "body": "* Added temporary XREADGROUP_CLAIM command\n\n* Updated CHANGELOG.md\n\n* Added deprecation annotation",
          "is_bot": false,
          "headline": "Added temporary XREADGROUP_CLAIM command (#1608)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2025-11-12T07:14:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f11e85504768feb02a16a7bf137d7e39a05890dd",
          "body": "* Added basic structures and test coverage\n\n* Added most of the test coverage\n\n* Added more test coverage\n\n* Codestyle fixes\n\n* Fixed static analysis\n\n* ANother static analysis fix\n\n* Codestyle fixes\n\n* Fixed version constraints\n\n* Added missing annotations\n\n* Use class context\n\n* Added more test coverage\n\n* Codestyle fixes\n\n* Added experimental mentioning",
          "is_bot": false,
          "headline": "Added experimental support for FT.HYBRID (#1607)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2025-11-11T13:31:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ce853ecec2d891aa9905fcba750975e230d6c4f4",
          "body": "* Added support for MSET command\n\n* Codestyle fixes",
          "is_bot": false,
          "headline": "Added support for MSET command (#1610)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2025-11-11T12:49:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f4dcf6ce5768366da0cab83fb1bde3ceb118b10c",
          "body": "* Added testing with 8.4-RC1-pre.2\n\n* Updated CHANGELOG.md",
          "is_bot": false,
          "headline": "Added testing with 8.4-RC1-pre.2 (#1605)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2025-11-03T14:49:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "72a95b3d75d649ee2ffdbddfc7a504355c37a959",
          "body": "* Added testing with 8.4-RC1-pre image\n\n* Updated CHANGELOG.md",
          "is_bot": false,
          "headline": "Added testing with 8.4-RC1-pre image (#1602)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2025-10-27T16:47:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "62f4ebcc377177d0c6bfda837b7841e779666b64",
          "body": null,
          "is_bot": false,
          "headline": "Add AUTH command to Relay connection tests (#1601)",
          "author_name": "Pavlo Yatsukhnenko",
          "author_login": "yatsukhnenko",
          "committed_at": "2025-10-20T17:34:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f26a13c8f4e9749b7e4d8fa3704ca7ed4908f922",
          "body": null,
          "is_bot": false,
          "headline": "Improve Relay compatibility (#1599)",
          "author_name": "Pavlo Yatsukhnenko",
          "author_login": "yatsukhnenko",
          "committed_at": "2025-10-20T14:52:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "44e4546ccd77e3ee9c1db50069469aa5931321ff",
          "body": null,
          "is_bot": false,
          "headline": "add remaining `@group relay-fixme`",
          "author_name": "Till Krüss",
          "author_login": "tillkruss",
          "committed_at": "2025-10-17T20:09:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "da7b1cedb7436f223989c18d2d730374e1754f87",
          "body": null,
          "is_bot": false,
          "headline": "Improve Relay compatibility (#1597)",
          "author_name": "Pavlo Yatsukhnenko",
          "author_login": "yatsukhnenko",
          "committed_at": "2025-10-17T20:03:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fd1a0fc2783399fb14091fd57da545c9e98e176d",
          "body": null,
          "is_bot": false,
          "headline": "Added testing with 8.4-M01 (#1593)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2025-10-17T17:42:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7a15da293bde198fda24699c04876ab8c0b59b0d",
          "body": null,
          "is_bot": false,
          "headline": "Added prefixable interface for HEXPIRE, HEXPIRETIME (#1592)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2025-10-17T17:27:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d9dfefd247f3de0ec5f33e56c3cc19f23fdae4b8",
          "body": null,
          "is_bot": false,
          "headline": "Fix typos (#1579)",
          "author_name": "Viktor Szépe",
          "author_login": "szepeviktor",
          "committed_at": "2025-10-03T23:22:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8a0c70baa584cc5d111ebed65810c6b4aa990ad3",
          "body": null,
          "is_bot": false,
          "headline": "Added testing with 8.2.1-pre (#1588)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2025-08-15T16:13:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "053cb4b6ac7fb1f469ead96a78d059bc0458e408",
          "body": "* Refactor pipeline data writing depends on connection type\n\n* Updated CHANGELOG.md",
          "is_bot": false,
          "headline": "Refactor pipeline data writing depends on connection type (#1586)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2025-08-13T06:59:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0f4bc7653c2e046850a03c2aa11873c15a97e2a2",
          "body": "* Fix stream commands cluster support\n\n* Update CHANGELOG.md",
          "is_bot": false,
          "headline": "Fix stream commands cluster support (#1587)",
          "author_name": "Róbert Kelčák",
          "author_login": "RobiNN1",
          "committed_at": "2025-08-12T10:33:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9e9deec4dfd3ebf65d32eb368f498c646ba2ecd8",
          "body": "* Tag v3.2.0\n\n* Updated 8.2 test image",
          "is_bot": false,
          "headline": "Tag v3.2.0 (#1585)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2025-08-06T06:41:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c1845d96ccbceb1269387d1c294fd7e4876f6307",
          "body": "* Added test coverage for updated Vamana\n\n* Updated CHANGELOG.md\n\n* Increased timeouts\n\n* Removed assertion cause Relay removes total field\n\n* Added realy-resp3 group\n\n* Revert assertions",
          "is_bot": false,
          "headline": "Added test coverage for updated Vamana (#1584)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2025-08-03T19:20:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8f18de1c12ef5be211d625b4cf8c77e19fe27483",
          "body": null,
          "is_bot": false,
          "headline": "Updates 8.2 test image to rc2 (#1583)",
          "author_name": "Elena Kolevska",
          "author_login": "elena-kolevska",
          "committed_at": "2025-08-01T19:42:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6d37dc45b04fd498b41712744e2f6325caf97214",
          "body": "* Added new stream commands, extended existing ones\n\n* updated the changelog\n\n* fixed linter errors\n\n* fixed regressions\n\n* more linter fixes\n\n* XADD fix\n\n* lint fix\n\n* Update CHANGELOG.md\n\n* update interfaces, address PR comments\n\n* fixed linter errors\n\n* fixed xdelex return type\n\n* updated new command signatures\n\n---------\n\nCo-authored-by: Till Krüss <tillkruss@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Added new stream commands, extended existing ones (#1580)",
          "author_name": "Hristo Temelski",
          "author_login": "htemelski-oss",
          "committed_at": "2025-07-29T09:59:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1c96f704fcd5b3d23296a281c0a4a361601428c0",
          "body": "* Added missing VSIM argument\n\n* Updated CHANGELOG.md",
          "is_bot": false,
          "headline": "Added missing VSIM argument (#1582)",
          "author_name": "Vladyslav Vildanov",
          "author_login": "vladvildanov",
          "committed_at": "2025-07-28T12:57:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b10cf7c96a585a5d19eb08354af9a0aa062833fe",
          "body": null,
          "is_bot": false,
          "headline": "back to dev version",
          "author_name": "Till Krüss",
          "author_login": "tillkruss",
          "committed_at": "2025-07-22T15:38:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "202e0c5322b906ec4c761c0cefebad6d0959a699",
          "body": null,
          "is_bot": false,
          "headline": "bump version",
          "author_name": "Till Krüss",
          "author_login": "tillkruss",
          "committed_at": "2025-07-22T15:37:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6387da61d4f647d7eee7259d928cb0ca4abe1aec",
          "body": null,
          "is_bot": false,
          "headline": "bump dev version",
          "author_name": "Till Krüss",
          "author_login": "tillkruss",
          "committed_at": "2025-07-22T15:33:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "97bce0062d74dfc9978b5ab5879e0e113797ebfa",
          "body": null,
          "is_bot": false,
          "headline": "cleanup changelog",
          "author_name": "Till Krüss",
          "author_login": "tillkruss",
          "committed_at": "2025-07-22T15:31:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 63,
      "commits_last_year": 96,
      "latest_release_at": "2026-06-11T16:58:32Z",
      "latest_release_tag": "v3.5.1",
      "releases_from_tags": false,
      "days_since_last_push": 0,
      "active_weeks_last_year": 34,
      "days_since_latest_release": 40,
      "mean_days_between_releases": 43.4
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": false,
      "health_percentage": 62,
      "has_issue_template": false,
      "has_code_of_conduct": true,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": [
        {
          "name": "predis/predis",
          "exists": true,
          "license": "MIT",
          "keywords": [
            "nosql",
            "redis",
            "predis"
          ],
          "ecosystem": "packagist",
          "matches_repo": true,
          "registry_url": "https://packagist.org/packages/predis/predis",
          "is_deprecated": false,
          "latest_version": "v3.5.1",
          "repository_url": "https://github.com/predis/predis",
          "versions_count": 56,
          "total_downloads": 329944714,
          "dependents_count": 2842,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": 6787153,
          "first_published_at": null,
          "latest_published_at": "2026-06-11T16:56:53Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 40
        }
      ]
    },
    "popularity": {
      "forks": 997,
      "stars": 7774,
      "watchers": 201,
      "fork_history": {
        "days": [
          {
            "date": "2010-04-07",
            "count": 1
          },
          {
            "date": "2010-08-31",
            "count": 1
          },
          {
            "date": "2010-10-18",
            "count": 1
          },
          {
            "date": "2010-12-16",
            "count": 1
          },
          {
            "date": "2011-01-12",
            "count": 1
          },
          {
            "date": "2011-04-06",
            "count": 2
          },
          {
            "date": "2011-05-17",
            "count": 1
          },
          {
            "date": "2011-06-04",
            "count": 1
          },
          {
            "date": "2011-07-31",
            "count": 1
          },
          {
            "date": "2011-09-29",
            "count": 1
          },
          {
            "date": "2011-10-21",
            "count": 1
          },
          {
            "date": "2011-11-13",
            "count": 1
          },
          {
            "date": "2011-12-01",
            "count": 1
          },
          {
            "date": "2011-12-14",
            "count": 1
          },
          {
            "date": "2012-01-05",
            "count": 1
          },
          {
            "date": "2012-01-17",
            "count": 1
          },
          {
            "date": "2012-02-19",
            "count": 1
          },
          {
            "date": "2012-02-20",
            "count": 1
          },
          {
            "date": "2012-02-27",
            "count": 1
          },
          {
            "date": "2012-03-09",
            "count": 1
          },
          {
            "date": "2012-04-02",
            "count": 1
          },
          {
            "date": "2012-04-05",
            "count": 1
          },
          {
            "date": "2012-04-19",
            "count": 1
          },
          {
            "date": "2012-04-26",
            "count": 1
          },
          {
            "date": "2012-05-22",
            "count": 1
          },
          {
            "date": "2012-06-01",
            "count": 1
          },
          {
            "date": "2012-06-06",
            "count": 1
          },
          {
            "date": "2012-06-25",
            "count": 2
          },
          {
            "date": "2012-07-09",
            "count": 1
          },
          {
            "date": "2012-07-31",
            "count": 1
          },
          {
            "date": "2012-08-02",
            "count": 1
          },
          {
            "date": "2012-09-03",
            "count": 2
          },
          {
            "date": "2012-09-07",
            "count": 2
          },
          {
            "date": "2012-09-19",
            "count": 1
          },
          {
            "date": "2012-10-11",
            "count": 1
          },
          {
            "date": "2012-10-21",
            "count": 1
          },
          {
            "date": "2012-10-24",
            "count": 3
          },
          {
            "date": "2012-11-07",
            "count": 1
          },
          {
            "date": "2012-11-14",
            "count": 1
          },
          {
            "date": "2012-11-16",
            "count": 1
          },
          {
            "date": "2012-11-22",
            "count": 1
          },
          {
            "date": "2012-12-06",
            "count": 1
          },
          {
            "date": "2012-12-07",
            "count": 1
          },
          {
            "date": "2012-12-14",
            "count": 1
          },
          {
            "date": "2012-12-17",
            "count": 1
          },
          {
            "date": "2012-12-19",
            "count": 1
          },
          {
            "date": "2013-01-05",
            "count": 1
          },
          {
            "date": "2013-01-09",
            "count": 1
          },
          {
            "date": "2013-01-22",
            "count": 1
          },
          {
            "date": "2013-02-02",
            "count": 1
          },
          {
            "date": "2013-02-14",
            "count": 1
          },
          {
            "date": "2013-02-28",
            "count": 1
          },
          {
            "date": "2013-03-04",
            "count": 1
          },
          {
            "date": "2013-03-06",
            "count": 1
          },
          {
            "date": "2013-03-07",
            "count": 1
          },
          {
            "date": "2013-03-14",
            "count": 1
          },
          {
            "date": "2013-03-18",
            "count": 1
          },
          {
            "date": "2013-03-22",
            "count": 1
          },
          {
            "date": "2013-03-31",
            "count": 1
          },
          {
            "date": "2013-04-03",
            "count": 1
          },
          {
            "date": "2013-04-04",
            "count": 1
          },
          {
            "date": "2013-04-18",
            "count": 1
          },
          {
            "date": "2013-04-20",
            "count": 1
          },
          {
            "date": "2013-05-11",
            "count": 1
          },
          {
            "date": "2013-05-12",
            "count": 1
          },
          {
            "date": "2013-05-17",
            "count": 1
          },
          {
            "date": "2013-05-18",
            "count": 1
          },
          {
            "date": "2013-05-22",
            "count": 1
          },
          {
            "date": "2013-05-28",
            "count": 1
          },
          {
            "date": "2013-05-29",
            "count": 1
          },
          {
            "date": "2013-06-02",
            "count": 2
          },
          {
            "date": "2013-06-27",
            "count": 1
          },
          {
            "date": "2013-06-29",
            "count": 1
          },
          {
            "date": "2013-06-30",
            "count": 1
          },
          {
            "date": "2013-07-15",
            "count": 2
          },
          {
            "date": "2013-07-16",
            "count": 3
          },
          {
            "date": "2013-07-21",
            "count": 1
          },
          {
            "date": "2013-08-02",
            "count": 2
          },
          {
            "date": "2013-08-10",
            "count": 1
          },
          {
            "date": "2013-08-14",
            "count": 1
          },
          {
            "date": "2013-08-17",
            "count": 2
          },
          {
            "date": "2013-08-29",
            "count": 1
          },
          {
            "date": "2013-08-31",
            "count": 1
          },
          {
            "date": "2013-09-09",
            "count": 1
          },
          {
            "date": "2013-10-05",
            "count": 1
          },
          {
            "date": "2013-10-14",
            "count": 2
          },
          {
            "date": "2013-10-30",
            "count": 1
          },
          {
            "date": "2013-11-01",
            "count": 1
          },
          {
            "date": "2013-11-06",
            "count": 1
          },
          {
            "date": "2013-11-12",
            "count": 1
          },
          {
            "date": "2013-11-20",
            "count": 2
          },
          {
            "date": "2013-11-23",
            "count": 1
          },
          {
            "date": "2013-12-10",
            "count": 1
          },
          {
            "date": "2013-12-11",
            "count": 1
          },
          {
            "date": "2013-12-16",
            "count": 1
          },
          {
            "date": "2013-12-19",
            "count": 1
          },
          {
            "date": "2013-12-20",
            "count": 1
          },
          {
            "date": "2013-12-30",
            "count": 1
          },
          {
            "date": "2013-12-31",
            "count": 1
          },
          {
            "date": "2014-01-08",
            "count": 1
          },
          {
            "date": "2014-01-12",
            "count": 1
          },
          {
            "date": "2014-01-13",
            "count": 1
          },
          {
            "date": "2014-01-18",
            "count": 1
          },
          {
            "date": "2014-01-19",
            "count": 2
          },
          {
            "date": "2014-01-21",
            "count": 2
          },
          {
            "date": "2014-01-22",
            "count": 1
          },
          {
            "date": "2014-01-24",
            "count": 1
          },
          {
            "date": "2014-01-25",
            "count": 1
          },
          {
            "date": "2014-02-11",
            "count": 1
          },
          {
            "date": "2014-02-17",
            "count": 1
          },
          {
            "date": "2014-02-20",
            "count": 1
          },
          {
            "date": "2014-02-21",
            "count": 2
          },
          {
            "date": "2014-02-22",
            "count": 1
          },
          {
            "date": "2014-02-25",
            "count": 1
          },
          {
            "date": "2014-03-10",
            "count": 1
          },
          {
            "date": "2014-03-17",
            "count": 1
          },
          {
            "date": "2014-03-18",
            "count": 2
          },
          {
            "date": "2014-03-19",
            "count": 1
          },
          {
            "date": "2014-03-27",
            "count": 1
          },
          {
            "date": "2014-03-28",
            "count": 1
          },
          {
            "date": "2014-03-31",
            "count": 1
          },
          {
            "date": "2014-04-04",
            "count": 1
          },
          {
            "date": "2014-04-08",
            "count": 1
          },
          {
            "date": "2014-04-25",
            "count": 1
          },
          {
            "date": "2014-04-26",
            "count": 1
          },
          {
            "date": "2014-04-28",
            "count": 1
          },
          {
            "date": "2014-05-11",
            "count": 1
          },
          {
            "date": "2014-05-16",
            "count": 1
          },
          {
            "date": "2014-05-26",
            "count": 1
          },
          {
            "date": "2014-06-04",
            "count": 1
          },
          {
            "date": "2014-06-11",
            "count": 1
          },
          {
            "date": "2014-06-16",
            "count": 1
          },
          {
            "date": "2014-06-21",
            "count": 1
          },
          {
            "date": "2014-06-26",
            "count": 1
          },
          {
            "date": "2014-07-02",
            "count": 1
          },
          {
            "date": "2014-07-07",
            "count": 1
          },
          {
            "date": "2014-07-22",
            "count": 1
          },
          {
            "date": "2014-08-01",
            "count": 1
          },
          {
            "date": "2014-08-04",
            "count": 1
          },
          {
            "date": "2014-08-09",
            "count": 1
          },
          {
            "date": "2014-08-10",
            "count": 1
          },
          {
            "date": "2014-08-12",
            "count": 1
          },
          {
            "date": "2014-08-14",
            "count": 1
          },
          {
            "date": "2014-08-18",
            "count": 1
          },
          {
            "date": "2014-08-25",
            "count": 1
          },
          {
            "date": "2014-09-02",
            "count": 1
          },
          {
            "date": "2014-09-05",
            "count": 1
          },
          {
            "date": "2014-09-08",
            "count": 1
          },
          {
            "date": "2014-09-09",
            "count": 1
          },
          {
            "date": "2014-09-10",
            "count": 1
          },
          {
            "date": "2014-09-11",
            "count": 2
          },
          {
            "date": "2014-09-15",
            "count": 1
          },
          {
            "date": "2014-09-24",
            "count": 1
          },
          {
            "date": "2014-10-02",
            "count": 1
          },
          {
            "date": "2014-10-07",
            "count": 1
          },
          {
            "date": "2014-10-10",
            "count": 1
          },
          {
            "date": "2014-10-16",
            "count": 1
          },
          {
            "date": "2014-10-25",
            "count": 2
          },
          {
            "date": "2014-10-30",
            "count": 1
          },
          {
            "date": "2014-10-31",
            "count": 1
          },
          {
            "date": "2014-11-06",
            "count": 1
          },
          {
            "date": "2014-11-12",
            "count": 1
          },
          {
            "date": "2014-11-13",
            "count": 2
          },
          {
            "date": "2014-11-17",
            "count": 1
          },
          {
            "date": "2014-11-19",
            "count": 1
          },
          {
            "date": "2014-11-26",
            "count": 1
          },
          {
            "date": "2014-11-27",
            "count": 1
          },
          {
            "date": "2014-12-01",
            "count": 1
          },
          {
            "date": "2014-12-07",
            "count": 1
          },
          {
            "date": "2014-12-10",
            "count": 1
          },
          {
            "date": "2014-12-11",
            "count": 1
          },
          {
            "date": "2014-12-18",
            "count": 2
          },
          {
            "date": "2014-12-20",
            "count": 1
          },
          {
            "date": "2014-12-31",
            "count": 1
          },
          {
            "date": "2015-01-04",
            "count": 1
          },
          {
            "date": "2015-01-05",
            "count": 2
          },
          {
            "date": "2015-01-14",
            "count": 1
          },
          {
            "date": "2015-01-16",
            "count": 1
          },
          {
            "date": "2015-01-17",
            "count": 1
          },
          {
            "date": "2015-01-22",
            "count": 1
          },
          {
            "date": "2015-01-23",
            "count": 1
          },
          {
            "date": "2015-01-26",
            "count": 1
          },
          {
            "date": "2015-01-27",
            "count": 1
          },
          {
            "date": "2015-01-29",
            "count": 2
          },
          {
            "date": "2015-02-01",
            "count": 1
          },
          {
            "date": "2015-02-12",
            "count": 1
          },
          {
            "date": "2015-02-28",
            "count": 1
          },
          {
            "date": "2015-03-01",
            "count": 1
          },
          {
            "date": "2015-03-02",
            "count": 1
          },
          {
            "date": "2015-03-11",
            "count": 2
          },
          {
            "date": "2015-03-14",
            "count": 1
          },
          {
            "date": "2015-03-18",
            "count": 1
          },
          {
            "date": "2015-03-23",
            "count": 1
          },
          {
            "date": "2015-03-26",
            "count": 1
          },
          {
            "date": "2015-04-03",
            "count": 1
          },
          {
            "date": "2015-04-11",
            "count": 2
          },
          {
            "date": "2015-04-14",
            "count": 1
          },
          {
            "date": "2015-04-19",
            "count": 1
          },
          {
            "date": "2015-04-21",
            "count": 1
          },
          {
            "date": "2015-04-23",
            "count": 1
          },
          {
            "date": "2015-04-30",
            "count": 1
          },
          {
            "date": "2015-05-04",
            "count": 1
          },
          {
            "date": "2015-05-08",
            "count": 2
          },
          {
            "date": "2015-05-14",
            "count": 1
          },
          {
            "date": "2015-05-20",
            "count": 1
          },
          {
            "date": "2015-06-01",
            "count": 1
          },
          {
            "date": "2015-06-02",
            "count": 1
          },
          {
            "date": "2015-06-07",
            "count": 1
          },
          {
            "date": "2015-06-09",
            "count": 2
          },
          {
            "date": "2015-06-13",
            "count": 1
          },
          {
            "date": "2015-06-25",
            "count": 1
          },
          {
            "date": "2015-07-01",
            "count": 1
          },
          {
            "date": "2015-07-02",
            "count": 1
          },
          {
            "date": "2015-07-05",
            "count": 1
          },
          {
            "date": "2015-07-06",
            "count": 1
          },
          {
            "date": "2015-07-09",
            "count": 1
          },
          {
            "date": "2015-07-21",
            "count": 1
          },
          {
            "date": "2015-08-04",
            "count": 1
          },
          {
            "date": "2015-08-05",
            "count": 1
          },
          {
            "date": "2015-08-06",
            "count": 1
          },
          {
            "date": "2015-08-07",
            "count": 1
          },
          {
            "date": "2015-08-12",
            "count": 1
          },
          {
            "date": "2015-08-14",
            "count": 1
          },
          {
            "date": "2015-08-19",
            "count": 1
          },
          {
            "date": "2015-08-24",
            "count": 1
          },
          {
            "date": "2015-08-25",
            "count": 1
          },
          {
            "date": "2015-09-01",
            "count": 2
          },
          {
            "date": "2015-09-04",
            "count": 1
          },
          {
            "date": "2015-09-09",
            "count": 1
          },
          {
            "date": "2015-09-11",
            "count": 1
          },
          {
            "date": "2015-09-13",
            "count": 1
          },
          {
            "date": "2015-09-16",
            "count": 2
          },
          {
            "date": "2015-09-24",
            "count": 1
          },
          {
            "date": "2015-09-27",
            "count": 1
          },
          {
            "date": "2015-09-29",
            "count": 2
          },
          {
            "date": "2015-10-08",
            "count": 1
          },
          {
            "date": "2015-10-12",
            "count": 1
          },
          {
            "date": "2015-10-16",
            "count": 1
          },
          {
            "date": "2015-10-19",
            "count": 2
          },
          {
            "date": "2015-10-20",
            "count": 2
          },
          {
            "date": "2015-10-23",
            "count": 1
          },
          {
            "date": "2015-10-27",
            "count": 1
          },
          {
            "date": "2015-10-28",
            "count": 2
          },
          {
            "date": "2015-10-29",
            "count": 1
          },
          {
            "date": "2015-11-01",
            "count": 1
          },
          {
            "date": "2015-11-09",
            "count": 2
          },
          {
            "date": "2015-11-11",
            "count": 1
          },
          {
            "date": "2015-11-12",
            "count": 2
          },
          {
            "date": "2015-11-16",
            "count": 1
          },
          {
            "date": "2015-11-19",
            "count": 1
          },
          {
            "date": "2015-11-22",
            "count": 1
          },
          {
            "date": "2015-11-23",
            "count": 1
          },
          {
            "date": "2015-11-27",
            "count": 1
          },
          {
            "date": "2015-11-30",
            "count": 2
          },
          {
            "date": "2015-12-01",
            "count": 1
          },
          {
            "date": "2015-12-03",
            "count": 1
          },
          {
            "date": "2015-12-15",
            "count": 1
          },
          {
            "date": "2015-12-18",
            "count": 1
          },
          {
            "date": "2015-12-28",
            "count": 1
          },
          {
            "date": "2015-12-31",
            "count": 2
          },
          {
            "date": "2016-01-05",
            "count": 1
          },
          {
            "date": "2016-01-07",
            "count": 1
          },
          {
            "date": "2016-01-11",
            "count": 2
          },
          {
            "date": "2016-01-13",
            "count": 1
          },
          {
            "date": "2016-01-15",
            "count": 1
          },
          {
            "date": "2016-01-18",
            "count": 2
          },
          {
            "date": "2016-01-20",
            "count": 2
          },
          {
            "date": "2016-01-23",
            "count": 1
          },
          {
            "date": "2016-01-26",
            "count": 2
          },
          {
            "date": "2016-01-27",
            "count": 1
          },
          {
            "date": "2016-01-28",
            "count": 1
          },
          {
            "date": "2016-02-02",
            "count": 1
          },
          {
            "date": "2016-02-03",
            "count": 1
          },
          {
            "date": "2016-02-05",
            "count": 1
          },
          {
            "date": "2016-02-18",
            "count": 2
          },
          {
            "date": "2016-02-19",
            "count": 1
          },
          {
            "date": "2016-02-23",
            "count": 1
          },
          {
            "date": "2016-02-24",
            "count": 1
          },
          {
            "date": "2016-02-29",
            "count": 1
          },
          {
            "date": "2016-03-02",
            "count": 1
          },
          {
            "date": "2016-03-07",
            "count": 1
          },
          {
            "date": "2016-03-16",
            "count": 1
          },
          {
            "date": "2016-03-17",
            "count": 1
          },
          {
            "date": "2016-03-20",
            "count": 1
          },
          {
            "date": "2016-03-22",
            "count": 2
          },
          {
            "date": "2016-03-25",
            "count": 1
          },
          {
            "date": "2016-04-03",
            "count": 1
          },
          {
            "date": "2016-04-06",
            "count": 1
          },
          {
            "date": "2016-04-08",
            "count": 2
          },
          {
            "date": "2016-04-10",
            "count": 1
          },
          {
            "date": "2016-04-11",
            "count": 1
          },
          {
            "date": "2016-04-17",
            "count": 1
          },
          {
            "date": "2016-04-18",
            "count": 1
          },
          {
            "date": "2016-04-20",
            "count": 1
          },
          {
            "date": "2016-04-22",
            "count": 1
          },
          {
            "date": "2016-04-26",
            "count": 1
          },
          {
            "date": "2016-04-28",
            "count": 3
          },
          {
            "date": "2016-05-03",
            "count": 2
          },
          {
            "date": "2016-05-06",
            "count": 1
          },
          {
            "date": "2016-05-09",
            "count": 1
          },
          {
            "date": "2016-05-11",
            "count": 1
          },
          {
            "date": "2016-05-12",
            "count": 1
          },
          {
            "date": "2016-05-17",
            "count": 1
          },
          {
            "date": "2016-05-19",
            "count": 1
          },
          {
            "date": "2016-05-28",
            "count": 1
          },
          {
            "date": "2016-05-29",
            "count": 1
          },
          {
            "date": "2016-05-30",
            "count": 1
          },
          {
            "date": "2016-06-07",
            "count": 1
          },
          {
            "date": "2016-06-11",
            "count": 1
          },
          {
            "date": "2016-06-12",
            "count": 2
          },
          {
            "date": "2016-06-14",
            "count": 1
          },
          {
            "date": "2016-06-16",
            "count": 1
          },
          {
            "date": "2016-06-20",
            "count": 1
          },
          {
            "date": "2016-07-01",
            "count": 1
          },
          {
            "date": "2016-07-08",
            "count": 2
          },
          {
            "date": "2016-07-11",
            "count": 2
          },
          {
            "date": "2016-07-12",
            "count": 1
          },
          {
            "date": "2016-07-13",
            "count": 2
          },
          {
            "date": "2016-07-14",
            "count": 1
          },
          {
            "date": "2016-07-19",
            "count": 2
          },
          {
            "date": "2016-07-21",
            "count": 1
          },
          {
            "date": "2016-07-23",
            "count": 1
          },
          {
            "date": "2016-07-26",
            "count": 1
          },
          {
            "date": "2016-07-27",
            "count": 1
          },
          {
            "date": "2016-07-29",
            "count": 1
          },
          {
            "date": "2016-07-31",
            "count": 1
          },
          {
            "date": "2016-08-03",
            "count": 1
          },
          {
            "date": "2016-08-08",
            "count": 1
          },
          {
            "date": "2016-08-10",
            "count": 1
          },
          {
            "date": "2016-08-11",
            "count": 1
          },
          {
            "date": "2016-08-12",
            "count": 1
          },
          {
            "date": "2016-08-22",
            "count": 1
          },
          {
            "date": "2016-08-25",
            "count": 1
          },
          {
            "date": "2016-08-26",
            "count": 1
          },
          {
            "date": "2016-08-27",
            "count": 1
          },
          {
            "date": "2016-08-28",
            "count": 1
          },
          {
            "date": "2016-08-29",
            "count": 1
          },
          {
            "date": "2016-09-05",
            "count": 1
          },
          {
            "date": "2016-09-06",
            "count": 1
          },
          {
            "date": "2016-09-08",
            "count": 3
          },
          {
            "date": "2016-09-13",
            "count": 2
          },
          {
            "date": "2016-09-15",
            "count": 1
          },
          {
            "date": "2016-09-16",
            "count": 1
          },
          {
            "date": "2016-09-20",
            "count": 1
          },
          {
            "date": "2016-09-22",
            "count": 1
          },
          {
            "date": "2016-09-23",
            "count": 1
          },
          {
            "date": "2016-09-30",
            "count": 2
          },
          {
            "date": "2016-10-04",
            "count": 1
          },
          {
            "date": "2016-10-06",
            "count": 1
          },
          {
            "date": "2016-10-07",
            "count": 1
          },
          {
            "date": "2016-10-08",
            "count": 1
          },
          {
            "date": "2016-10-10",
            "count": 1
          },
          {
            "date": "2016-10-12",
            "count": 1
          },
          {
            "date": "2016-10-20",
            "count": 1
          },
          {
            "date": "2016-10-21",
            "count": 1
          },
          {
            "date": "2016-10-22",
            "count": 2
          },
          {
            "date": "2016-10-24",
            "count": 1
          },
          {
            "date": "2016-11-03",
            "count": 1
          },
          {
            "date": "2016-11-04",
            "count": 1
          },
          {
            "date": "2016-11-05",
            "count": 2
          },
          {
            "date": "2016-11-08",
            "count": 1
          },
          {
            "date": "2016-11-09",
            "count": 1
          },
          {
            "date": "2016-11-15",
            "count": 1
          },
          {
            "date": "2016-11-16",
            "count": 1
          },
          {
            "date": "2016-11-24",
            "count": 2
          },
          {
            "date": "2016-11-28",
            "count": 1
          },
          {
            "date": "2016-12-05",
            "count": 1
          },
          {
            "date": "2016-12-07",
            "count": 1
          },
          {
            "date": "2016-12-14",
            "count": 1
          },
          {
            "date": "2016-12-18",
            "count": 1
          },
          {
            "date": "2016-12-19",
            "count": 1
          },
          {
            "date": "2016-12-21",
            "count": 1
          },
          {
            "date": "2016-12-23",
            "count": 2
          },
          {
            "date": "2016-12-29",
            "count": 1
          },
          {
            "date": "2016-12-30",
            "count": 1
          },
          {
            "date": "2017-01-04",
            "count": 1
          },
          {
            "date": "2017-01-06",
            "count": 1
          },
          {
            "date": "2017-01-10",
            "count": 1
          },
          {
            "date": "2017-01-24",
            "count": 1
          },
          {
            "date": "2017-01-27",
            "count": 1
          },
          {
            "date": "2017-02-05",
            "count": 1
          },
          {
            "date": "2017-02-06",
            "count": 1
          },
          {
            "date": "2017-02-10",
            "count": 1
          },
          {
            "date": "2017-02-12",
            "count": 1
          },
          {
            "date": "2017-02-13",
            "count": 1
          },
          {
            "date": "2017-02-14",
            "count": 1
          },
          {
            "date": "2017-02-18",
            "count": 1
          },
          {
            "date": "2017-02-21",
            "count": 1
          },
          {
            "date": "2017-02-22",
            "count": 1
          },
          {
            "date": "2017-02-24",
            "count": 2
          },
          {
            "date": "2017-03-06",
            "count": 1
          },
          {
            "date": "2017-03-07",
            "count": 1
          },
          {
            "date": "2017-03-08",
            "count": 1
          },
          {
            "date": "2017-03-11",
            "count": 1
          },
          {
            "date": "2017-03-14",
            "count": 1
          },
          {
            "date": "2017-03-15",
            "count": 1
          },
          {
            "date": "2017-03-24",
            "count": 3
          },
          {
            "date": "2017-03-26",
            "count": 1
          },
          {
            "date": "2017-04-01",
            "count": 3
          },
          {
            "date": "2017-04-04",
            "count": 1
          },
          {
            "date": "2017-04-06",
            "count": 2
          },
          {
            "date": "2017-04-09",
            "count": 1
          },
          {
            "date": "2017-04-10",
            "count": 1
          },
          {
            "date": "2017-04-12",
            "count": 1
          },
          {
            "date": "2017-04-21",
            "count": 1
          },
          {
            "date": "2017-04-22",
            "count": 1
          },
          {
            "date": "2017-04-25",
            "count": 1
          },
          {
            "date": "2017-05-03",
            "count": 3
          },
          {
            "date": "2017-05-05",
            "count": 1
          },
          {
            "date": "2017-05-14",
            "count": 1
          },
          {
            "date": "2017-05-22",
            "count": 2
          },
          {
            "date": "2017-05-24",
            "count": 1
          },
          {
            "date": "2017-05-25",
            "count": 2
          },
          {
            "date": "2017-06-06",
            "count": 1
          },
          {
            "date": "2017-06-07",
            "count": 1
          },
          {
            "date": "2017-06-08",
            "count": 1
          },
          {
            "date": "2017-06-13",
            "count": 1
          },
          {
            "date": "2017-06-14",
            "count": 1
          },
          {
            "date": "2017-06-15",
            "count": 1
          },
          {
            "date": "2017-06-27",
            "count": 2
          },
          {
            "date": "2017-06-29",
            "count": 1
          },
          {
            "date": "2017-07-04",
            "count": 1
          },
          {
            "date": "2017-07-07",
            "count": 1
          },
          {
            "date": "2017-07-12",
            "count": 1
          },
          {
            "date": "2017-07-13",
            "count": 1
          },
          {
            "date": "2017-07-15",
            "count": 1
          },
          {
            "date": "2017-07-26",
            "count": 1
          },
          {
            "date": "2017-07-28",
            "count": 2
          },
          {
            "date": "2017-08-01",
            "count": 1
          },
          {
            "date": "2017-08-02",
            "count": 1
          },
          {
            "date": "2017-08-03",
            "count": 1
          },
          {
            "date": "2017-08-07",
            "count": 1
          },
          {
            "date": "2017-08-10",
            "count": 1
          },
          {
            "date": "2017-08-14",
            "count": 1
          },
          {
            "date": "2017-08-18",
            "count": 2
          },
          {
            "date": "2017-08-22",
            "count": 2
          },
          {
            "date": "2017-08-23",
            "count": 1
          },
          {
            "date": "2017-08-27",
            "count": 1
          },
          {
            "date": "2017-08-30",
            "count": 1
          },
          {
            "date": "2017-09-05",
            "count": 1
          },
          {
            "date": "2017-09-07",
            "count": 1
          },
          {
            "date": "2017-09-19",
            "count": 1
          },
          {
            "date": "2017-09-20",
            "count": 1
          },
          {
            "date": "2017-09-23",
            "count": 1
          },
          {
            "date": "2017-10-04",
            "count": 1
          },
          {
            "date": "2017-10-19",
            "count": 1
          },
          {
            "date": "2017-11-03",
            "count": 1
          },
          {
            "date": "2017-11-09",
            "count": 1
          },
          {
            "date": "2017-11-10",
            "count": 1
          },
          {
            "date": "2017-11-14",
            "count": 2
          },
          {
            "date": "2017-11-17",
            "count": 1
          },
          {
            "date": "2017-11-18",
            "count": 1
          },
          {
            "date": "2017-11-20",
            "count": 1
          },
          {
            "date": "2017-12-06",
            "count": 1
          },
          {
            "date": "2017-12-08",
            "count": 1
          },
          {
            "date": "2017-12-12",
            "count": 1
          },
          {
            "date": "2017-12-22",
            "count": 1
          },
          {
            "date": "2017-12-26",
            "count": 1
          },
          {
            "date": "2018-01-02",
            "count": 1
          },
          {
            "date": "2018-01-06",
            "count": 1
          },
          {
            "date": "2018-01-10",
            "count": 2
          },
          {
            "date": "2018-01-13",
            "count": 1
          },
          {
            "date": "2018-01-20",
            "count": 1
          },
          {
            "date": "2018-01-30",
            "count": 1
          },
          {
            "date": "2018-02-02",
            "count": 1
          },
          {
            "date": "2018-02-06",
            "count": 1
          },
          {
            "date": "2018-02-08",
            "count": 1
          },
          {
            "date": "2018-02-12",
            "count": 1
          },
          {
            "date": "2018-02-14",
            "count": 1
          },
          {
            "date": "2018-02-19",
            "count": 1
          },
          {
            "date": "2018-02-24",
            "count": 1
          },
          {
            "date": "2018-02-26",
            "count": 1
          },
          {
            "date": "2018-03-04",
            "count": 2
          },
          {
            "date": "2018-03-09",
            "count": 1
          },
          {
            "date": "2018-03-20",
            "count": 1
          },
          {
            "date": "2018-03-22",
            "count": 1
          },
          {
            "date": "2018-03-24",
            "count": 2
          },
          {
            "date": "2018-03-25",
            "count": 1
          },
          {
            "date": "2018-03-28",
            "count": 1
          },
          {
            "date": "2018-04-01",
            "count": 1
          },
          {
            "date": "2018-04-02",
            "count": 2
          },
          {
            "date": "2018-04-10",
            "count": 2
          },
          {
            "date": "2018-04-12",
            "count": 1
          },
          {
            "date": "2018-04-17",
            "count": 1
          },
          {
            "date": "2018-04-23",
            "count": 1
          },
          {
            "date": "2018-04-28",
            "count": 1
          },
          {
            "date": "2018-05-06",
            "count": 1
          },
          {
            "date": "2018-05-09",
            "count": 1
          },
          {
            "date": "2018-05-12",
            "count": 1
          },
          {
            "date": "2018-05-15",
            "count": 2
          },
          {
            "date": "2018-05-18",
            "count": 1
          },
          {
            "date": "2018-05-20",
            "count": 1
          },
          {
            "date": "2018-05-22",
            "count": 1
          },
          {
            "date": "2018-05-30",
            "count": 1
          },
          {
            "date": "2018-06-02",
            "count": 1
          },
          {
            "date": "2018-06-04",
            "count": 1
          },
          {
            "date": "2018-06-06",
            "count": 1
          },
          {
            "date": "2018-06-12",
            "count": 2
          },
          {
            "date": "2018-07-01",
            "count": 1
          },
          {
            "date": "2018-07-12",
            "count": 1
          },
          {
            "date": "2018-07-15",
            "count": 1
          },
          {
            "date": "2018-07-20",
            "count": 1
          },
          {
            "date": "2018-07-21",
            "count": 1
          },
          {
            "date": "2018-07-29",
            "count": 1
          },
          {
            "date": "2018-07-31",
            "count": 1
          },
          {
            "date": "2018-08-01",
            "count": 1
          },
          {
            "date": "2018-08-08",
            "count": 1
          },
          {
            "date": "2018-08-10",
            "count": 1
          },
          {
            "date": "2018-08-13",
            "count": 1
          },
          {
            "date": "2018-08-23",
            "count": 1
          },
          {
            "date": "2018-08-30",
            "count": 1
          },
          {
            "date": "2018-09-01",
            "count": 1
          },
          {
            "date": "2018-09-03",
            "count": 2
          },
          {
            "date": "2018-09-08",
            "count": 1
          },
          {
            "date": "2018-09-10",
            "count": 1
          },
          {
            "date": "2018-09-24",
            "count": 1
          },
          {
            "date": "2018-10-01",
            "count": 1
          },
          {
            "date": "2018-10-08",
            "count": 1
          },
          {
            "date": "2018-10-10",
            "count": 1
          },
          {
            "date": "2018-10-26",
            "count": 1
          },
          {
            "date": "2018-10-29",
            "count": 1
          },
          {
            "date": "2018-11-01",
            "count": 1
          },
          {
            "date": "2018-11-08",
            "count": 1
          },
          {
            "date": "2018-11-11",
            "count": 1
          },
          {
            "date": "2018-11-15",
            "count": 2
          },
          {
            "date": "2018-11-26",
            "count": 1
          },
          {
            "date": "2018-12-01",
            "count": 2
          },
          {
            "date": "2018-12-03",
            "count": 1
          },
          {
            "date": "2018-12-06",
            "count": 1
          },
          {
            "date": "2018-12-12",
            "count": 2
          },
          {
            "date": "2018-12-20",
            "count": 2
          },
          {
            "date": "2018-12-28",
            "count": 1
          },
          {
            "date": "2018-12-29",
            "count": 1
          },
          {
            "date": "2019-01-06",
            "count": 1
          },
          {
            "date": "2019-01-24",
            "count": 1
          },
          {
            "date": "2019-02-13",
            "count": 1
          },
          {
            "date": "2019-02-19",
            "count": 1
          },
          {
            "date": "2019-02-27",
            "count": 1
          },
          {
            "date": "2019-03-15",
            "count": 2
          },
          {
            "date": "2019-03-19",
            "count": 2
          },
          {
            "date": "2019-03-25",
            "count": 2
          },
          {
            "date": "2019-03-26",
            "count": 1
          },
          {
            "date": "2019-03-29",
            "count": 1
          },
          {
            "date": "2019-04-04",
            "count": 1
          },
          {
            "date": "2019-04-05",
            "count": 1
          },
          {
            "date": "2019-04-08",
            "count": 1
          },
          {
            "date": "2019-04-12",
            "count": 1
          },
          {
            "date": "2019-04-17",
            "count": 1
          },
          {
            "date": "2019-04-28",
            "count": 1
          },
          {
            "date": "2019-05-05",
            "count": 1
          },
          {
            "date": "2019-05-08",
            "count": 1
          },
          {
            "date": "2019-05-13",
            "count": 1
          },
          {
            "date": "2019-05-15",
            "count": 2
          },
          {
            "date": "2019-05-18",
            "count": 1
          },
          {
            "date": "2019-05-24",
            "count": 2
          },
          {
            "date": "2019-05-28",
            "count": 1
          },
          {
            "date": "2019-05-30",
            "count": 1
          },
          {
            "date": "2019-06-01",
            "count": 1
          },
          {
            "date": "2019-06-11",
            "count": 1
          },
          {
            "date": "2019-06-13",
            "count": 1
          },
          {
            "date": "2019-06-14",
            "count": 1
          },
          {
            "date": "2019-06-19",
            "count": 1
          },
          {
            "date": "2019-06-26",
            "count": 1
          },
          {
            "date": "2019-06-29",
            "count": 1
          },
          {
            "date": "2019-07-02",
            "count": 1
          },
          {
            "date": "2019-07-07",
            "count": 1
          },
          {
            "date": "2019-07-11",
            "count": 1
          },
          {
            "date": "2019-07-13",
            "count": 1
          },
          {
            "date": "2019-07-19",
            "count": 1
          },
          {
            "date": "2019-07-22",
            "count": 1
          },
          {
            "date": "2019-08-06",
            "count": 1
          },
          {
            "date": "2019-08-13",
            "count": 1
          },
          {
            "date": "2019-08-14",
            "count": 1
          },
          {
            "date": "2019-08-28",
            "count": 1
          },
          {
            "date": "2019-08-29",
            "count": 1
          },
          {
            "date": "2019-08-31",
            "count": 1
          },
          {
            "date": "2019-09-02",
            "count": 1
          },
          {
            "date": "2019-09-10",
            "count": 2
          },
          {
            "date": "2019-09-18",
            "count": 1
          },
          {
            "date": "2019-09-20",
            "count": 1
          },
          {
            "date": "2019-09-24",
            "count": 1
          },
          {
            "date": "2019-09-27",
            "count": 1
          },
          {
            "date": "2019-09-28",
            "count": 1
          },
          {
            "date": "2019-10-04",
            "count": 1
          },
          {
            "date": "2019-10-06",
            "count": 1
          },
          {
            "date": "2019-10-10",
            "count": 1
          },
          {
            "date": "2019-10-24",
            "count": 2
          },
          {
            "date": "2019-10-30",
            "count": 1
          },
          {
            "date": "2019-11-03",
            "count": 1
          },
          {
            "date": "2019-11-04",
            "count": 1
          },
          {
            "date": "2019-11-06",
            "count": 1
          },
          {
            "date": "2019-11-09",
            "count": 1
          },
          {
            "date": "2019-11-10",
            "count": 1
          },
          {
            "date": "2019-11-12",
            "count": 1
          },
          {
            "date": "2019-11-15",
            "count": 1
          },
          {
            "date": "2019-11-28",
            "count": 1
          },
          {
            "date": "2019-12-08",
            "count": 1
          },
          {
            "date": "2019-12-16",
            "count": 1
          },
          {
            "date": "2019-12-31",
            "count": 2
          },
          {
            "date": "2020-01-04",
            "count": 4
          },
          {
            "date": "2020-01-08",
            "count": 1
          },
          {
            "date": "2020-01-10",
            "count": 1
          },
          {
            "date": "2020-02-04",
            "count": 1
          },
          {
            "date": "2020-02-14",
            "count": 1
          },
          {
            "date": "2020-02-21",
            "count": 1
          },
          {
            "date": "2020-03-04",
            "count": 1
          },
          {
            "date": "2020-03-17",
            "count": 1
          },
          {
            "date": "2020-03-27",
            "count": 1
          },
          {
            "date": "2020-03-30",
            "count": 1
          },
          {
            "date": "2020-04-19",
            "count": 1
          },
          {
            "date": "2020-04-23",
            "count": 1
          },
          {
            "date": "2020-04-28",
            "count": 1
          },
          {
            "date": "2020-04-29",
            "count": 2
          },
          {
            "date": "2020-04-30",
            "count": 1
          },
          {
            "date": "2020-05-04",
            "count": 1
          },
          {
            "date": "2020-05-07",
            "count": 1
          },
          {
            "date": "2020-05-22",
            "count": 1
          },
          {
            "date": "2020-05-25",
            "count": 1
          },
          {
            "date": "2020-06-10",
            "count": 1
          },
          {
            "date": "2020-06-17",
            "count": 1
          },
          {
            "date": "2020-07-01",
            "count": 1
          },
          {
            "date": "2020-07-18",
            "count": 1
          },
          {
            "date": "2020-07-22",
            "count": 1
          },
          {
            "date": "2020-07-29",
            "count": 1
          },
          {
            "date": "2020-08-10",
            "count": 1
          },
          {
            "date": "2020-08-12",
            "count": 2
          },
          {
            "date": "2020-08-13",
            "count": 1
          },
          {
            "date": "2020-08-14",
            "count": 1
          },
          {
            "date": "2020-08-15",
            "count": 1
          },
          {
            "date": "2020-08-16",
            "count": 1
          },
          {
            "date": "2020-08-18",
            "count": 1
          },
          {
            "date": "2020-08-20",
            "count": 1
          },
          {
            "date": "2020-08-29",
            "count": 1
          },
          {
            "date": "2020-09-08",
            "count": 2
          },
          {
            "date": "2020-09-14",
            "count": 1
          },
          {
            "date": "2020-09-26",
            "count": 1
          },
          {
            "date": "2020-09-27",
            "count": 1
          },
          {
            "date": "2020-10-01",
            "count": 1
          },
          {
            "date": "2020-10-08",
            "count": 1
          },
          {
            "date": "2020-10-14",
            "count": 1
          },
          {
            "date": "2020-10-20",
            "count": 1
          },
          {
            "date": "2020-11-05",
            "count": 1
          },
          {
            "date": "2020-11-10",
            "count": 1
          },
          {
            "date": "2020-11-12",
            "count": 1
          },
          {
            "date": "2020-11-25",
            "count": 1
          },
          {
            "date": "2020-12-03",
            "count": 1
          },
          {
            "date": "2021-01-09",
            "count": 2
          },
          {
            "date": "2021-01-25",
            "count": 1
          },
          {
            "date": "2021-01-28",
            "count": 1
          },
          {
            "date": "2021-02-01",
            "count": 1
          },
          {
            "date": "2021-02-02",
            "count": 1
          },
          {
            "date": "2021-02-08",
            "count": 1
          },
          {
            "date": "2021-02-09",
            "count": 1
          },
          {
            "date": "2021-02-10",
            "count": 1
          },
          {
            "date": "2021-02-11",
            "count": 1
          },
          {
            "date": "2021-02-18",
            "count": 1
          },
          {
            "date": "2021-02-19",
            "count": 1
          },
          {
            "date": "2021-02-22",
            "count": 1
          },
          {
            "date": "2021-03-05",
            "count": 1
          },
          {
            "date": "2021-03-09",
            "count": 1
          },
          {
            "date": "2021-03-10",
            "count": 1
          },
          {
            "date": "2021-03-15",
            "count": 1
          },
          {
            "date": "2021-03-17",
            "count": 1
          },
          {
            "date": "2021-03-21",
            "count": 1
          },
          {
            "date": "2021-03-25",
            "count": 1
          },
          {
            "date": "2021-04-04",
            "count": 2
          },
          {
            "date": "2021-04-10",
            "count": 1
          },
          {
            "date": "2021-04-25",
            "count": 1
          },
          {
            "date": "2021-05-12",
            "count": 1
          },
          {
            "date": "2021-05-30",
            "count": 1
          },
          {
            "date": "2021-06-05",
            "count": 1
          },
          {
            "date": "2021-06-08",
            "count": 1
          },
          {
            "date": "2021-06-09",
            "count": 1
          },
          {
            "date": "2021-06-11",
            "count": 1
          },
          {
            "date": "2021-06-21",
            "count": 1
          },
          {
            "date": "2021-07-03",
            "count": 1
          },
          {
            "date": "2021-07-23",
            "count": 1
          },
          {
            "date": "2021-08-04",
            "count": 3
          },
          {
            "date": "2021-08-12",
            "count": 1
          },
          {
            "date": "2021-08-19",
            "count": 3
          },
          {
            "date": "2021-08-21",
            "count": 1
          },
          {
            "date": "2021-08-30",
            "count": 2
          },
          {
            "date": "2021-09-04",
            "count": 1
          },
          {
            "date": "2021-09-07",
            "count": 1
          },
          {
            "date": "2021-09-09",
            "count": 2
          },
          {
            "date": "2021-09-11",
            "count": 1
          },
          {
            "date": "2021-09-24",
            "count": 1
          },
          {
            "date": "2021-10-27",
            "count": 1
          },
          {
            "date": "2021-11-04",
            "count": 1
          },
          {
            "date": "2021-11-21",
            "count": 1
          },
          {
            "date": "2021-11-23",
            "count": 1
          },
          {
            "date": "2021-12-03",
            "count": 1
          },
          {
            "date": "2021-12-06",
            "count": 1
          },
          {
            "date": "2021-12-14",
            "count": 1
          },
          {
            "date": "2021-12-15",
            "count": 1
          },
          {
            "date": "2021-12-16",
            "count": 1
          },
          {
            "date": "2021-12-18",
            "count": 1
          },
          {
            "date": "2021-12-20",
            "count": 1
          },
          {
            "date": "2021-12-21",
            "count": 1
          },
          {
            "date": "2021-12-24",
            "count": 1
          },
          {
            "date": "2022-01-07",
            "count": 1
          },
          {
            "date": "2022-01-10",
            "count": 1
          },
          {
            "date": "2022-01-13",
            "count": 1
          },
          {
            "date": "2022-01-19",
            "count": 1
          },
          {
            "date": "2022-01-27",
            "count": 1
          },
          {
            "date": "2022-02-01",
            "count": 1
          },
          {
            "date": "2022-02-03",
            "count": 1
          },
          {
            "date": "2022-02-18",
            "count": 1
          },
          {
            "date": "2022-02-22",
            "count": 2
          },
          {
            "date": "2022-02-25",
            "count": 1
          },
          {
            "date": "2022-02-27",
            "count": 1
          },
          {
            "date": "2022-03-01",
            "count": 1
          },
          {
            "date": "2022-03-06",
            "count": 1
          },
          {
            "date": "2022-03-08",
            "count": 1
          },
          {
            "date": "2022-03-16",
            "count": 1
          },
          {
            "date": "2022-03-18",
            "count": 1
          },
          {
            "date": "2022-03-25",
            "count": 1
          },
          {
            "date": "2022-03-28",
            "count": 1
          },
          {
            "date": "2022-03-30",
            "count": 1
          },
          {
            "date": "2022-04-03",
            "count": 1
          },
          {
            "date": "2022-04-05",
            "count": 1
          },
          {
            "date": "2022-04-13",
            "count": 2
          },
          {
            "date": "2022-04-23",
            "count": 1
          },
          {
            "date": "2022-04-28",
            "count": 1
          },
          {
            "date": "2022-05-03",
            "count": 1
          },
          {
            "date": "2022-05-23",
            "count": 1
          },
          {
            "date": "2022-06-13",
            "count": 1
          },
          {
            "date": "2022-06-14",
            "count": 1
          },
          {
            "date": "2022-06-27",
            "count": 1
          },
          {
            "date": "2022-07-03",
            "count": 1
          },
          {
            "date": "2022-07-07",
            "count": 2
          },
          {
            "date": "2022-07-14",
            "count": 1
          },
          {
            "date": "2022-07-20",
            "count": 1
          },
          {
            "date": "2022-07-21",
            "count": 1
          },
          {
            "date": "2022-07-26",
            "count": 1
          },
          {
            "date": "2022-08-08",
            "count": 2
          },
          {
            "date": "2022-08-15",
            "count": 1
          },
          {
            "date": "2022-08-25",
            "count": 1
          },
          {
            "date": "2022-08-31",
            "count": 1
          },
          {
            "date": "2022-09-06",
            "count": 1
          },
          {
            "date": "2022-09-07",
            "count": 1
          },
          {
            "date": "2022-09-15",
            "count": 1
          },
          {
            "date": "2022-09-27",
            "count": 1
          },
          {
            "date": "2022-10-02",
            "count": 1
          },
          {
            "date": "2022-10-14",
            "count": 1
          },
          {
            "date": "2022-10-19",
            "count": 1
          },
          {
            "date": "2022-10-25",
            "count": 1
          },
          {
            "date": "2022-10-28",
            "count": 1
          },
          {
            "date": "2022-10-31",
            "count": 1
          },
          {
            "date": "2022-11-02",
            "count": 1
          },
          {
            "date": "2022-11-08",
            "count": 1
          },
          {
            "date": "2022-11-16",
            "count": 1
          },
          {
            "date": "2022-11-29",
            "count": 1
          },
          {
            "date": "2022-12-21",
            "count": 1
          },
          {
            "date": "2022-12-22",
            "count": 2
          },
          {
            "date": "2023-01-07",
            "count": 1
          },
          {
            "date": "2023-01-09",
            "count": 1
          },
          {
            "date": "2023-01-16",
            "count": 1
          },
          {
            "date": "2023-01-17",
            "count": 1
          },
          {
            "date": "2023-01-29",
            "count": 1
          },
          {
            "date": "2023-02-15",
            "count": 1
          },
          {
            "date": "2023-02-17",
            "count": 1
          },
          {
            "date": "2023-03-03",
            "count": 1
          },
          {
            "date": "2023-03-09",
            "count": 1
          },
          {
            "date": "2023-03-14",
            "count": 1
          },
          {
            "date": "2023-03-28",
            "count": 1
          },
          {
            "date": "2023-03-29",
            "count": 1
          },
          {
            "date": "2023-03-30",
            "count": 1
          },
          {
            "date": "2023-04-04",
            "count": 1
          },
          {
            "date": "2023-04-19",
            "count": 1
          },
          {
            "date": "2023-04-25",
            "count": 1
          },
          {
            "date": "2023-05-08",
            "count": 1
          },
          {
            "date": "2023-05-10",
            "count": 1
          },
          {
            "date": "2023-05-13",
            "count": 1
          },
          {
            "date": "2023-05-30",
            "count": 1
          },
          {
            "date": "2023-06-09",
            "count": 1
          },
          {
            "date": "2023-07-09",
            "count": 1
          },
          {
            "date": "2023-07-20",
            "count": 1
          },
          {
            "date": "2023-07-29",
            "count": 1
          },
          {
            "date": "2023-08-07",
            "count": 1
          },
          {
            "date": "2023-08-17",
            "count": 1
          },
          {
            "date": "2023-08-24",
            "count": 1
          },
          {
            "date": "2023-09-07",
            "count": 1
          },
          {
            "date": "2023-09-12",
            "count": 1
          },
          {
            "date": "2023-09-28",
            "count": 1
          },
          {
            "date": "2023-10-16",
            "count": 1
          },
          {
            "date": "2023-10-19",
            "count": 2
          },
          {
            "date": "2023-11-08",
            "count": 1
          },
          {
            "date": "2023-11-10",
            "count": 1
          },
          {
            "date": "2023-11-29",
            "count": 1
          },
          {
            "date": "2023-12-09",
            "count": 1
          },
          {
            "date": "2023-12-10",
            "count": 1
          },
          {
            "date": "2023-12-14",
            "count": 1
          },
          {
            "date": "2024-01-30",
            "count": 1
          },
          {
            "date": "2024-02-06",
            "count": 1
          },
          {
            "date": "2024-02-09",
            "count": 1
          },
          {
            "date": "2024-02-21",
            "count": 1
          },
          {
            "date": "2024-03-04",
            "count": 1
          },
          {
            "date": "2024-03-12",
            "count": 1
          },
          {
            "date": "2024-03-15",
            "count": 1
          },
          {
            "date": "2024-03-18",
            "count": 2
          },
          {
            "date": "2024-03-19",
            "count": 2
          },
          {
            "date": "2024-03-27",
            "count": 1
          },
          {
            "date": "2024-03-28",
            "count": 1
          },
          {
            "date": "2024-04-09",
            "count": 1
          },
          {
            "date": "2024-04-16",
            "count": 1
          },
          {
            "date": "2024-05-02",
            "count": 1
          },
          {
            "date": "2024-06-03",
            "count": 1
          },
          {
            "date": "2024-07-29",
            "count": 1
          },
          {
            "date": "2024-09-03",
            "count": 1
          },
          {
            "date": "2024-09-04",
            "count": 1
          },
          {
            "date": "2024-10-02",
            "count": 1
          },
          {
            "date": "2024-10-08",
            "count": 1
          },
          {
            "date": "2024-10-14",
            "count": 1
          },
          {
            "date": "2024-10-27",
            "count": 1
          },
          {
            "date": "2024-10-30",
            "count": 1
          },
          {
            "date": "2024-11-06",
            "count": 1
          },
          {
            "date": "2024-11-11",
            "count": 1
          },
          {
            "date": "2024-11-14",
            "count": 1
          },
          {
            "date": "2024-11-18",
            "count": 1
          },
          {
            "date": "2024-11-30",
            "count": 1
          },
          {
            "date": "2024-12-07",
            "count": 1
          },
          {
            "date": "2024-12-19",
            "count": 1
          },
          {
            "date": "2025-01-14",
            "count": 1
          },
          {
            "date": "2025-01-19",
            "count": 1
          },
          {
            "date": "2025-01-30",
            "count": 1
          },
          {
            "date": "2025-02-11",
            "count": 1
          },
          {
            "date": "2025-02-28",
            "count": 1
          },
          {
            "date": "2025-04-29",
            "count": 1
          },
          {
            "date": "2025-05-05",
            "count": 1
          },
          {
            "date": "2025-05-10",
            "count": 1
          },
          {
            "date": "2025-05-22",
            "count": 1
          },
          {
            "date": "2025-06-08",
            "count": 1
          },
          {
            "date": "2025-06-11",
            "count": 1
          },
          {
            "date": "2025-06-26",
            "count": 1
          },
          {
            "date": "2025-07-06",
            "count": 1
          },
          {
            "date": "2025-07-08",
            "count": 1
          },
          {
            "date": "2025-07-16",
            "count": 1
          },
          {
            "date": "2025-08-01",
            "count": 1
          },
          {
            "date": "2025-08-12",
            "count": 1
          },
          {
            "date": "2025-10-17",
            "count": 1
          },
          {
            "date": "2025-11-11",
            "count": 1
          },
          {
            "date": "2025-11-25",
            "count": 2
          },
          {
            "date": "2026-02-08",
            "count": 1
          },
          {
            "date": "2026-02-16",
            "count": 1
          },
          {
            "date": "2026-02-19",
            "count": 1
          },
          {
            "date": "2026-02-20",
            "count": 1
          },
          {
            "date": "2026-02-21",
            "count": 1
          },
          {
            "date": "2026-02-27",
            "count": 1
          },
          {
            "date": "2026-03-05",
            "count": 1
          },
          {
            "date": "2026-03-18",
            "count": 2
          },
          {
            "date": "2026-03-31",
            "count": 1
          },
          {
            "date": "2026-04-22",
            "count": 1
          },
          {
            "date": "2026-05-12",
            "count": 1
          },
          {
            "date": "2026-06-10",
            "count": 1
          },
          {
            "date": "2026-07-19",
            "count": 3
          },
          {
            "date": "2026-07-20",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 979,
        "total_forks": 997
      },
      "star_history": {
        "days": [
          {
            "date": "2022-04-04",
            "count": 2
          },
          {
            "date": "2022-04-06",
            "count": 2
          },
          {
            "date": "2022-04-08",
            "count": 2
          },
          {
            "date": "2022-04-12",
            "count": 1
          },
          {
            "date": "2022-04-14",
            "count": 1
          },
          {
            "date": "2022-04-17",
            "count": 1
          },
          {
            "date": "2022-04-18",
            "count": 1
          },
          {
            "date": "2022-04-19",
            "count": 1
          },
          {
            "date": "2022-04-20",
            "count": 1
          },
          {
            "date": "2022-04-21",
            "count": 1
          },
          {
            "date": "2022-04-23",
            "count": 1
          },
          {
            "date": "2022-04-24",
            "count": 1
          },
          {
            "date": "2022-04-25",
            "count": 2
          },
          {
            "date": "2022-04-26",
            "count": 1
          },
          {
            "date": "2022-04-27",
            "count": 3
          },
          {
            "date": "2022-04-29",
            "count": 1
          },
          {
            "date": "2022-05-01",
            "count": 1
          },
          {
            "date": "2022-05-05",
            "count": 2
          },
          {
            "date": "2022-05-07",
            "count": 2
          },
          {
            "date": "2022-05-09",
            "count": 1
          },
          {
            "date": "2022-05-11",
            "count": 2
          },
          {
            "date": "2022-05-13",
            "count": 2
          },
          {
            "date": "2022-05-15",
            "count": 1
          },
          {
            "date": "2022-05-17",
            "count": 1
          },
          {
            "date": "2022-05-18",
            "count": 2
          },
          {
            "date": "2022-05-20",
            "count": 1
          },
          {
            "date": "2022-05-22",
            "count": 2
          },
          {
            "date": "2022-05-23",
            "count": 1
          },
          {
            "date": "2022-05-24",
            "count": 1
          },
          {
            "date": "2022-05-25",
            "count": 3
          },
          {
            "date": "2022-05-27",
            "count": 6
          },
          {
            "date": "2022-05-28",
            "count": 4
          },
          {
            "date": "2022-05-31",
            "count": 2
          },
          {
            "date": "2022-06-02",
            "count": 3
          },
          {
            "date": "2022-06-03",
            "count": 1
          },
          {
            "date": "2022-06-06",
            "count": 1
          },
          {
            "date": "2022-06-07",
            "count": 1
          },
          {
            "date": "2022-06-09",
            "count": 1
          },
          {
            "date": "2022-06-10",
            "count": 2
          },
          {
            "date": "2022-06-14",
            "count": 1
          },
          {
            "date": "2022-06-15",
            "count": 3
          },
          {
            "date": "2022-06-16",
            "count": 1
          },
          {
            "date": "2022-06-17",
            "count": 2
          },
          {
            "date": "2022-06-20",
            "count": 1
          },
          {
            "date": "2022-06-22",
            "count": 2
          },
          {
            "date": "2022-06-24",
            "count": 1
          },
          {
            "date": "2022-06-26",
            "count": 2
          },
          {
            "date": "2022-06-28",
            "count": 2
          },
          {
            "date": "2022-06-29",
            "count": 3
          },
          {
            "date": "2022-06-30",
            "count": 1
          },
          {
            "date": "2022-07-02",
            "count": 1
          },
          {
            "date": "2022-07-03",
            "count": 1
          },
          {
            "date": "2022-07-05",
            "count": 1
          },
          {
            "date": "2022-07-07",
            "count": 1
          },
          {
            "date": "2022-07-11",
            "count": 1
          },
          {
            "date": "2022-07-14",
            "count": 2
          },
          {
            "date": "2022-07-15",
            "count": 1
          },
          {
            "date": "2022-07-17",
            "count": 2
          },
          {
            "date": "2022-07-18",
            "count": 1
          },
          {
            "date": "2022-07-20",
            "count": 4
          },
          {
            "date": "2022-07-22",
            "count": 1
          },
          {
            "date": "2022-07-23",
            "count": 2
          },
          {
            "date": "2022-07-26",
            "count": 3
          },
          {
            "date": "2022-07-27",
            "count": 2
          },
          {
            "date": "2022-07-28",
            "count": 1
          },
          {
            "date": "2022-07-29",
            "count": 2
          },
          {
            "date": "2022-07-30",
            "count": 1
          },
          {
            "date": "2022-08-01",
            "count": 1
          },
          {
            "date": "2022-08-02",
            "count": 2
          },
          {
            "date": "2022-08-03",
            "count": 2
          },
          {
            "date": "2022-08-05",
            "count": 3
          },
          {
            "date": "2022-08-06",
            "count": 1
          },
          {
            "date": "2022-08-08",
            "count": 5
          },
          {
            "date": "2022-08-09",
            "count": 1
          },
          {
            "date": "2022-08-10",
            "count": 1
          },
          {
            "date": "2022-08-11",
            "count": 1
          },
          {
            "date": "2022-08-13",
            "count": 4
          },
          {
            "date": "2022-08-15",
            "count": 2
          },
          {
            "date": "2022-08-16",
            "count": 1
          },
          {
            "date": "2022-08-17",
            "count": 4
          },
          {
            "date": "2022-08-18",
            "count": 1
          },
          {
            "date": "2022-08-19",
            "count": 1
          },
          {
            "date": "2022-08-20",
            "count": 1
          },
          {
            "date": "2022-08-22",
            "count": 2
          },
          {
            "date": "2022-08-23",
            "count": 2
          },
          {
            "date": "2022-08-24",
            "count": 1
          },
          {
            "date": "2022-08-25",
            "count": 6
          },
          {
            "date": "2022-08-26",
            "count": 2
          },
          {
            "date": "2022-08-27",
            "count": 1
          },
          {
            "date": "2022-08-29",
            "count": 1
          },
          {
            "date": "2022-08-30",
            "count": 2
          },
          {
            "date": "2022-08-31",
            "count": 3
          },
          {
            "date": "2022-09-01",
            "count": 3
          },
          {
            "date": "2022-09-02",
            "count": 3
          },
          {
            "date": "2022-09-03",
            "count": 3
          },
          {
            "date": "2022-09-04",
            "count": 2
          },
          {
            "date": "2022-09-06",
            "count": 2
          },
          {
            "date": "2022-09-07",
            "count": 1
          },
          {
            "date": "2022-09-08",
            "count": 1
          },
          {
            "date": "2022-09-10",
            "count": 1
          },
          {
            "date": "2022-09-11",
            "count": 2
          },
          {
            "date": "2022-09-13",
            "count": 2
          },
          {
            "date": "2022-09-14",
            "count": 1
          },
          {
            "date": "2022-09-15",
            "count": 2
          },
          {
            "date": "2022-09-16",
            "count": 3
          },
          {
            "date": "2022-09-18",
            "count": 1
          },
          {
            "date": "2022-09-19",
            "count": 2
          },
          {
            "date": "2022-09-22",
            "count": 2
          },
          {
            "date": "2022-09-23",
            "count": 1
          },
          {
            "date": "2022-09-25",
            "count": 1
          },
          {
            "date": "2022-09-27",
            "count": 2
          },
          {
            "date": "2022-09-28",
            "count": 1
          },
          {
            "date": "2022-10-03",
            "count": 1
          },
          {
            "date": "2022-10-04",
            "count": 1
          },
          {
            "date": "2022-10-07",
            "count": 2
          },
          {
            "date": "2022-10-10",
            "count": 3
          },
          {
            "date": "2022-10-11",
            "count": 1
          },
          {
            "date": "2022-10-18",
            "count": 2
          },
          {
            "date": "2022-10-19",
            "count": 1
          },
          {
            "date": "2022-10-21",
            "count": 1
          },
          {
            "date": "2022-10-22",
            "count": 2
          },
          {
            "date": "2022-10-25",
            "count": 2
          },
          {
            "date": "2022-10-26",
            "count": 1
          },
          {
            "date": "2022-10-28",
            "count": 2
          },
          {
            "date": "2022-11-02",
            "count": 1
          },
          {
            "date": "2022-11-03",
            "count": 3
          },
          {
            "date": "2022-11-04",
            "count": 2
          },
          {
            "date": "2022-11-05",
            "count": 2
          },
          {
            "date": "2022-11-06",
            "count": 1
          },
          {
            "date": "2022-11-07",
            "count": 1
          },
          {
            "date": "2022-11-08",
            "count": 1
          },
          {
            "date": "2022-11-09",
            "count": 4
          },
          {
            "date": "2022-11-10",
            "count": 1
          },
          {
            "date": "2022-11-11",
            "count": 1
          },
          {
            "date": "2022-11-13",
            "count": 1
          },
          {
            "date": "2022-11-14",
            "count": 2
          },
          {
            "date": "2022-11-15",
            "count": 1
          },
          {
            "date": "2022-11-17",
            "count": 1
          },
          {
            "date": "2022-11-21",
            "count": 1
          },
          {
            "date": "2022-11-23",
            "count": 2
          },
          {
            "date": "2022-11-24",
            "count": 1
          },
          {
            "date": "2022-11-25",
            "count": 1
          },
          {
            "date": "2022-11-27",
            "count": 1
          },
          {
            "date": "2022-11-29",
            "count": 2
          },
          {
            "date": "2022-12-01",
            "count": 1
          },
          {
            "date": "2022-12-04",
            "count": 2
          },
          {
            "date": "2022-12-05",
            "count": 1
          },
          {
            "date": "2022-12-06",
            "count": 1
          },
          {
            "date": "2022-12-08",
            "count": 1
          },
          {
            "date": "2022-12-09",
            "count": 2
          },
          {
            "date": "2022-12-10",
            "count": 1
          },
          {
            "date": "2022-12-11",
            "count": 2
          },
          {
            "date": "2022-12-13",
            "count": 1
          },
          {
            "date": "2022-12-14",
            "count": 3
          },
          {
            "date": "2022-12-17",
            "count": 1
          },
          {
            "date": "2022-12-19",
            "count": 1
          },
          {
            "date": "2022-12-22",
            "count": 1
          },
          {
            "date": "2022-12-26",
            "count": 1
          },
          {
            "date": "2022-12-30",
            "count": 1
          },
          {
            "date": "2022-12-31",
            "count": 1
          },
          {
            "date": "2023-01-01",
            "count": 1
          },
          {
            "date": "2023-01-03",
            "count": 1
          },
          {
            "date": "2023-01-04",
            "count": 1
          },
          {
            "date": "2023-01-05",
            "count": 1
          },
          {
            "date": "2023-01-06",
            "count": 2
          },
          {
            "date": "2023-01-07",
            "count": 1
          },
          {
            "date": "2023-01-09",
            "count": 1
          },
          {
            "date": "2023-01-10",
            "count": 2
          },
          {
            "date": "2023-01-12",
            "count": 2
          },
          {
            "date": "2023-01-13",
            "count": 1
          },
          {
            "date": "2023-01-14",
            "count": 1
          },
          {
            "date": "2023-01-16",
            "count": 1
          },
          {
            "date": "2023-01-17",
            "count": 3
          },
          {
            "date": "2023-01-20",
            "count": 1
          },
          {
            "date": "2023-01-24",
            "count": 1
          },
          {
            "date": "2023-01-25",
            "count": 1
          },
          {
            "date": "2023-01-27",
            "count": 1
          },
          {
            "date": "2023-01-28",
            "count": 1
          },
          {
            "date": "2023-01-30",
            "count": 2
          },
          {
            "date": "2023-02-01",
            "count": 1
          },
          {
            "date": "2023-02-06",
            "count": 1
          },
          {
            "date": "2023-02-07",
            "count": 2
          },
          {
            "date": "2023-02-08",
            "count": 1
          },
          {
            "date": "2023-02-09",
            "count": 1
          },
          {
            "date": "2023-02-10",
            "count": 2
          },
          {
            "date": "2023-02-12",
            "count": 1
          },
          {
            "date": "2023-02-14",
            "count": 1
          },
          {
            "date": "2023-02-15",
            "count": 2
          },
          {
            "date": "2023-02-16",
            "count": 2
          },
          {
            "date": "2023-02-17",
            "count": 1
          },
          {
            "date": "2023-02-19",
            "count": 1
          },
          {
            "date": "2023-02-20",
            "count": 1
          },
          {
            "date": "2023-02-21",
            "count": 2
          },
          {
            "date": "2023-02-22",
            "count": 2
          },
          {
            "date": "2023-02-23",
            "count": 2
          },
          {
            "date": "2023-02-24",
            "count": 2
          },
          {
            "date": "2023-02-27",
            "count": 1
          },
          {
            "date": "2023-02-28",
            "count": 1
          },
          {
            "date": "2023-03-01",
            "count": 2
          },
          {
            "date": "2023-03-02",
            "count": 1
          },
          {
            "date": "2023-03-03",
            "count": 1
          },
          {
            "date": "2023-03-04",
            "count": 1
          },
          {
            "date": "2023-03-09",
            "count": 3
          },
          {
            "date": "2023-03-11",
            "count": 1
          },
          {
            "date": "2023-03-13",
            "count": 4
          },
          {
            "date": "2023-03-14",
            "count": 3
          },
          {
            "date": "2023-03-15",
            "count": 1
          },
          {
            "date": "2023-03-16",
            "count": 1
          },
          {
            "date": "2023-03-17",
            "count": 1
          },
          {
            "date": "2023-03-22",
            "count": 2
          },
          {
            "date": "2023-03-24",
            "count": 1
          },
          {
            "date": "2023-03-25",
            "count": 1
          },
          {
            "date": "2023-03-27",
            "count": 1
          },
          {
            "date": "2023-03-28",
            "count": 5
          },
          {
            "date": "2023-03-29",
            "count": 4
          },
          {
            "date": "2023-03-30",
            "count": 2
          },
          {
            "date": "2023-04-01",
            "count": 2
          },
          {
            "date": "2023-04-03",
            "count": 2
          },
          {
            "date": "2023-04-04",
            "count": 1
          },
          {
            "date": "2023-04-05",
            "count": 3
          },
          {
            "date": "2023-04-07",
            "count": 1
          },
          {
            "date": "2023-04-11",
            "count": 2
          },
          {
            "date": "2023-04-17",
            "count": 1
          },
          {
            "date": "2023-04-18",
            "count": 1
          },
          {
            "date": "2023-04-19",
            "count": 1
          },
          {
            "date": "2023-04-20",
            "count": 1
          },
          {
            "date": "2023-04-21",
            "count": 1
          },
          {
            "date": "2023-04-26",
            "count": 1
          },
          {
            "date": "2023-04-28",
            "count": 1
          },
          {
            "date": "2023-04-30",
            "count": 1
          },
          {
            "date": "2023-05-03",
            "count": 1
          },
          {
            "date": "2023-05-05",
            "count": 2
          },
          {
            "date": "2023-05-07",
            "count": 2
          },
          {
            "date": "2023-05-08",
            "count": 1
          },
          {
            "date": "2023-05-09",
            "count": 1
          },
          {
            "date": "2023-05-10",
            "count": 2
          },
          {
            "date": "2023-05-11",
            "count": 2
          },
          {
            "date": "2023-05-13",
            "count": 2
          },
          {
            "date": "2023-05-14",
            "count": 1
          },
          {
            "date": "2023-05-15",
            "count": 2
          },
          {
            "date": "2023-05-17",
            "count": 2
          },
          {
            "date": "2023-05-21",
            "count": 1
          },
          {
            "date": "2023-05-22",
            "count": 1
          },
          {
            "date": "2023-05-24",
            "count": 2
          },
          {
            "date": "2023-05-30",
            "count": 1
          },
          {
            "date": "2023-05-31",
            "count": 2
          },
          {
            "date": "2023-06-04",
            "count": 1
          },
          {
            "date": "2023-06-05",
            "count": 2
          },
          {
            "date": "2023-06-08",
            "count": 2
          },
          {
            "date": "2023-06-11",
            "count": 1
          },
          {
            "date": "2023-06-12",
            "count": 1
          },
          {
            "date": "2023-06-13",
            "count": 1
          },
          {
            "date": "2023-06-14",
            "count": 2
          },
          {
            "date": "2023-06-15",
            "count": 1
          },
          {
            "date": "2023-06-16",
            "count": 1
          },
          {
            "date": "2023-06-18",
            "count": 1
          },
          {
            "date": "2023-06-23",
            "count": 1
          },
          {
            "date": "2023-06-24",
            "count": 1
          },
          {
            "date": "2023-06-28",
            "count": 1
          },
          {
            "date": "2023-06-30",
            "count": 1
          },
          {
            "date": "2023-07-02",
            "count": 1
          },
          {
            "date": "2023-07-03",
            "count": 1
          },
          {
            "date": "2023-07-04",
            "count": 1
          },
          {
            "date": "2023-07-05",
            "count": 2
          },
          {
            "date": "2023-07-09",
            "count": 1
          },
          {
            "date": "2023-07-10",
            "count": 1
          },
          {
            "date": "2023-07-11",
            "count": 2
          },
          {
            "date": "2023-07-12",
            "count": 1
          },
          {
            "date": "2023-07-13",
            "count": 2
          },
          {
            "date": "2023-07-14",
            "count": 3
          },
          {
            "date": "2023-07-16",
            "count": 1
          },
          {
            "date": "2023-07-17",
            "count": 1
          },
          {
            "date": "2023-07-18",
            "count": 1
          },
          {
            "date": "2023-07-20",
            "count": 1
          },
          {
            "date": "2023-07-21",
            "count": 1
          },
          {
            "date": "2023-07-23",
            "count": 3
          },
          {
            "date": "2023-07-24",
            "count": 2
          },
          {
            "date": "2023-07-25",
            "count": 1
          },
          {
            "date": "2023-07-26",
            "count": 1
          },
          {
            "date": "2023-07-31",
            "count": 1
          },
          {
            "date": "2023-08-02",
            "count": 1
          },
          {
            "date": "2023-08-03",
            "count": 1
          },
          {
            "date": "2023-08-04",
            "count": 1
          },
          {
            "date": "2023-08-07",
            "count": 1
          },
          {
            "date": "2023-08-08",
            "count": 2
          },
          {
            "date": "2023-08-09",
            "count": 1
          },
          {
            "date": "2023-08-10",
            "count": 1
          },
          {
            "date": "2023-08-12",
            "count": 1
          },
          {
            "date": "2023-08-14",
            "count": 1
          },
          {
            "date": "2023-08-15",
            "count": 2
          },
          {
            "date": "2023-08-19",
            "count": 1
          },
          {
            "date": "2023-08-21",
            "count": 3
          },
          {
            "date": "2023-08-24",
            "count": 1
          },
          {
            "date": "2023-08-25",
            "count": 1
          },
          {
            "date": "2023-08-30",
            "count": 1
          },
          {
            "date": "2023-08-31",
            "count": 2
          },
          {
            "date": "2023-09-02",
            "count": 1
          },
          {
            "date": "2023-09-03",
            "count": 1
          },
          {
            "date": "2023-09-06",
            "count": 1
          },
          {
            "date": "2023-09-07",
            "count": 2
          },
          {
            "date": "2023-09-08",
            "count": 1
          },
          {
            "date": "2023-09-11",
            "count": 1
          },
          {
            "date": "2023-09-20",
            "count": 1
          },
          {
            "date": "2023-09-25",
            "count": 1
          },
          {
            "date": "2023-09-26",
            "count": 3
          },
          {
            "date": "2023-09-27",
            "count": 2
          },
          {
            "date": "2023-09-28",
            "count": 1
          },
          {
            "date": "2023-09-29",
            "count": 1
          },
          {
            "date": "2023-10-02",
            "count": 1
          },
          {
            "date": "2023-10-03",
            "count": 2
          },
          {
            "date": "2023-10-04",
            "count": 1
          },
          {
            "date": "2023-10-05",
            "count": 1
          },
          {
            "date": "2023-10-06",
            "count": 2
          },
          {
            "date": "2023-10-09",
            "count": 1
          },
          {
            "date": "2023-10-10",
            "count": 2
          },
          {
            "date": "2023-10-11",
            "count": 1
          },
          {
            "date": "2023-10-12",
            "count": 1
          },
          {
            "date": "2023-10-13",
            "count": 2
          },
          {
            "date": "2023-10-17",
            "count": 1
          },
          {
            "date": "2023-10-18",
            "count": 2
          },
          {
            "date": "2023-10-19",
            "count": 2
          },
          {
            "date": "2023-10-22",
            "count": 1
          },
          {
            "date": "2023-10-25",
            "count": 2
          },
          {
            "date": "2023-10-26",
            "count": 1
          },
          {
            "date": "2023-10-27",
            "count": 1
          },
          {
            "date": "2023-10-31",
            "count": 1
          },
          {
            "date": "2023-11-01",
            "count": 1
          },
          {
            "date": "2023-11-03",
            "count": 2
          },
          {
            "date": "2023-11-04",
            "count": 1
          },
          {
            "date": "2023-11-06",
            "count": 1
          },
          {
            "date": "2023-11-08",
            "count": 1
          },
          {
            "date": "2023-11-09",
            "count": 1
          },
          {
            "date": "2023-11-12",
            "count": 1
          },
          {
            "date": "2023-11-13",
            "count": 1
          },
          {
            "date": "2023-11-14",
            "count": 1
          },
          {
            "date": "2023-11-15",
            "count": 3
          },
          {
            "date": "2023-11-22",
            "count": 1
          },
          {
            "date": "2023-11-23",
            "count": 2
          },
          {
            "date": "2023-11-25",
            "count": 1
          },
          {
            "date": "2023-11-26",
            "count": 1
          },
          {
            "date": "2023-11-29",
            "count": 1
          },
          {
            "date": "2023-12-05",
            "count": 3
          },
          {
            "date": "2023-12-06",
            "count": 1
          },
          {
            "date": "2023-12-07",
            "count": 1
          },
          {
            "date": "2023-12-08",
            "count": 2
          },
          {
            "date": "2023-12-11",
            "count": 1
          },
          {
            "date": "2023-12-12",
            "count": 2
          },
          {
            "date": "2023-12-13",
            "count": 2
          },
          {
            "date": "2023-12-15",
            "count": 1
          },
          {
            "date": "2023-12-19",
            "count": 2
          },
          {
            "date": "2023-12-24",
            "count": 1
          },
          {
            "date": "2023-12-25",
            "count": 2
          },
          {
            "date": "2023-12-26",
            "count": 1
          },
          {
            "date": "2023-12-29",
            "count": 2
          },
          {
            "date": "2024-01-03",
            "count": 1
          },
          {
            "date": "2024-01-05",
            "count": 1
          },
          {
            "date": "2024-01-08",
            "count": 1
          },
          {
            "date": "2024-01-10",
            "count": 2
          },
          {
            "date": "2024-01-11",
            "count": 2
          },
          {
            "date": "2024-01-14",
            "count": 1
          },
          {
            "date": "2024-01-15",
            "count": 1
          },
          {
            "date": "2024-01-16",
            "count": 1
          },
          {
            "date": "2024-01-17",
            "count": 1
          },
          {
            "date": "2024-01-20",
            "count": 1
          },
          {
            "date": "2024-01-22",
            "count": 2
          },
          {
            "date": "2024-01-25",
            "count": 1
          },
          {
            "date": "2024-01-29",
            "count": 3
          },
          {
            "date": "2024-01-30",
            "count": 1
          },
          {
            "date": "2024-02-04",
            "count": 1
          },
          {
            "date": "2024-02-13",
            "count": 1
          },
          {
            "date": "2024-02-14",
            "count": 1
          },
          {
            "date": "2024-02-15",
            "count": 1
          },
          {
            "date": "2024-02-16",
            "count": 1
          },
          {
            "date": "2024-02-17",
            "count": 4
          },
          {
            "date": "2024-02-18",
            "count": 1
          },
          {
            "date": "2024-02-19",
            "count": 1
          },
          {
            "date": "2024-02-20",
            "count": 1
          },
          {
            "date": "2024-02-22",
            "count": 2
          },
          {
            "date": "2024-02-23",
            "count": 2
          },
          {
            "date": "2024-02-24",
            "count": 1
          },
          {
            "date": "2024-02-25",
            "count": 1
          },
          {
            "date": "2024-02-26",
            "count": 1
          },
          {
            "date": "2024-02-27",
            "count": 1
          },
          {
            "date": "2024-03-01",
            "count": 1
          },
          {
            "date": "2024-03-06",
            "count": 1
          },
          {
            "date": "2024-03-07",
            "count": 2
          },
          {
            "date": "2024-03-12",
            "count": 1
          },
          {
            "date": "2024-03-14",
            "count": 1
          },
          {
            "date": "2024-03-16",
            "count": 1
          },
          {
            "date": "2024-03-19",
            "count": 1
          },
          {
            "date": "2024-03-20",
            "count": 1
          },
          {
            "date": "2024-03-22",
            "count": 4
          },
          {
            "date": "2024-03-23",
            "count": 1
          },
          {
            "date": "2024-03-27",
            "count": 1
          },
          {
            "date": "2024-03-29",
            "count": 1
          },
          {
            "date": "2024-04-01",
            "count": 1
          },
          {
            "date": "2024-04-03",
            "count": 1
          },
          {
            "date": "2024-04-04",
            "count": 3
          },
          {
            "date": "2024-04-06",
            "count": 2
          },
          {
            "date": "2024-04-10",
            "count": 1
          },
          {
            "date": "2024-04-13",
            "count": 1
          },
          {
            "date": "2024-04-15",
            "count": 1
          },
          {
            "date": "2024-04-16",
            "count": 1
          },
          {
            "date": "2024-04-17",
            "count": 1
          },
          {
            "date": "2024-04-23",
            "count": 1
          },
          {
            "date": "2024-04-24",
            "count": 2
          },
          {
            "date": "2024-04-30",
            "count": 1
          },
          {
            "date": "2024-05-01",
            "count": 2
          },
          {
            "date": "2024-05-03",
            "count": 1
          },
          {
            "date": "2024-05-05",
            "count": 2
          },
          {
            "date": "2024-05-06",
            "count": 1
          },
          {
            "date": "2024-05-09",
            "count": 2
          },
          {
            "date": "2024-05-10",
            "count": 1
          },
          {
            "date": "2024-05-12",
            "count": 1
          },
          {
            "date": "2024-05-17",
            "count": 2
          },
          {
            "date": "2024-05-18",
            "count": 1
          },
          {
            "date": "2024-05-19",
            "count": 1
          },
          {
            "date": "2024-05-21",
            "count": 2
          },
          {
            "date": "2024-05-22",
            "count": 2
          },
          {
            "date": "2024-05-23",
            "count": 1
          },
          {
            "date": "2024-05-27",
            "count": 1
          },
          {
            "date": "2024-05-28",
            "count": 1
          },
          {
            "date": "2024-05-29",
            "count": 2
          },
          {
            "date": "2024-05-30",
            "count": 1
          },
          {
            "date": "2024-06-01",
            "count": 1
          },
          {
            "date": "2024-06-03",
            "count": 1
          },
          {
            "date": "2024-06-04",
            "count": 1
          },
          {
            "date": "2024-06-11",
            "count": 1
          },
          {
            "date": "2024-06-12",
            "count": 1
          },
          {
            "date": "2024-06-14",
            "count": 1
          },
          {
            "date": "2024-06-16",
            "count": 1
          },
          {
            "date": "2024-06-17",
            "count": 1
          },
          {
            "date": "2024-06-18",
            "count": 1
          },
          {
            "date": "2024-06-24",
            "count": 1
          },
          {
            "date": "2024-06-26",
            "count": 2
          },
          {
            "date": "2024-06-27",
            "count": 1
          },
          {
            "date": "2024-06-29",
            "count": 1
          },
          {
            "date": "2024-07-01",
            "count": 1
          },
          {
            "date": "2024-07-03",
            "count": 2
          },
          {
            "date": "2024-07-09",
            "count": 3
          },
          {
            "date": "2024-07-16",
            "count": 1
          },
          {
            "date": "2024-07-18",
            "count": 4
          },
          {
            "date": "2024-07-23",
            "count": 1
          },
          {
            "date": "2024-07-26",
            "count": 2
          },
          {
            "date": "2024-07-28",
            "count": 1
          },
          {
            "date": "2024-08-02",
            "count": 2
          },
          {
            "date": "2024-08-05",
            "count": 1
          },
          {
            "date": "2024-08-09",
            "count": 1
          },
          {
            "date": "2024-08-10",
            "count": 1
          },
          {
            "date": "2024-08-12",
            "count": 1
          },
          {
            "date": "2024-08-14",
            "count": 1
          },
          {
            "date": "2024-08-15",
            "count": 2
          },
          {
            "date": "2024-08-17",
            "count": 1
          },
          {
            "date": "2024-08-20",
            "count": 2
          },
          {
            "date": "2024-08-22",
            "count": 1
          },
          {
            "date": "2024-08-23",
            "count": 1
          },
          {
            "date": "2024-08-24",
            "count": 1
          },
          {
            "date": "2024-08-26",
            "count": 1
          },
          {
            "date": "2024-08-27",
            "count": 2
          },
          {
            "date": "2024-08-31",
            "count": 1
          },
          {
            "date": "2024-09-02",
            "count": 1
          },
          {
            "date": "2024-09-07",
            "count": 2
          },
          {
            "date": "2024-09-09",
            "count": 2
          },
          {
            "date": "2024-09-10",
            "count": 2
          },
          {
            "date": "2024-09-11",
            "count": 1
          },
          {
            "date": "2024-09-12",
            "count": 1
          },
          {
            "date": "2024-09-15",
            "count": 1
          },
          {
            "date": "2024-09-17",
            "count": 2
          },
          {
            "date": "2024-09-18",
            "count": 2
          },
          {
            "date": "2024-09-20",
            "count": 1
          },
          {
            "date": "2024-09-26",
            "count": 2
          },
          {
            "date": "2024-09-27",
            "count": 2
          },
          {
            "date": "2024-09-29",
            "count": 1
          },
          {
            "date": "2024-10-03",
            "count": 1
          },
          {
            "date": "2024-10-05",
            "count": 1
          },
          {
            "date": "2024-10-06",
            "count": 1
          },
          {
            "date": "2024-10-07",
            "count": 2
          },
          {
            "date": "2024-10-09",
            "count": 1
          },
          {
            "date": "2024-10-10",
            "count": 1
          },
          {
            "date": "2024-10-14",
            "count": 1
          },
          {
            "date": "2024-10-16",
            "count": 1
          },
          {
            "date": "2024-10-17",
            "count": 1
          },
          {
            "date": "2024-10-21",
            "count": 1
          },
          {
            "date": "2024-10-22",
            "count": 1
          },
          {
            "date": "2024-10-23",
            "count": 1
          },
          {
            "date": "2024-10-24",
            "count": 1
          },
          {
            "date": "2024-10-29",
            "count": 1
          },
          {
            "date": "2024-10-30",
            "count": 1
          },
          {
            "date": "2024-10-31",
            "count": 1
          },
          {
            "date": "2024-11-04",
            "count": 1
          },
          {
            "date": "2024-11-07",
            "count": 1
          },
          {
            "date": "2024-11-08",
            "count": 1
          },
          {
            "date": "2024-11-13",
            "count": 3
          },
          {
            "date": "2024-11-14",
            "count": 1
          },
          {
            "date": "2024-11-18",
            "count": 1
          },
          {
            "date": "2024-11-21",
            "count": 1
          },
          {
            "date": "2024-11-23",
            "count": 2
          },
          {
            "date": "2024-11-26",
            "count": 1
          },
          {
            "date": "2024-11-27",
            "count": 1
          },
          {
            "date": "2024-11-30",
            "count": 1
          },
          {
            "date": "2024-12-01",
            "count": 1
          },
          {
            "date": "2024-12-02",
            "count": 1
          },
          {
            "date": "2024-12-05",
            "count": 1
          },
          {
            "date": "2024-12-06",
            "count": 2
          },
          {
            "date": "2024-12-15",
            "count": 1
          },
          {
            "date": "2024-12-17",
            "count": 1
          },
          {
            "date": "2024-12-18",
            "count": 2
          },
          {
            "date": "2024-12-19",
            "count": 1
          },
          {
            "date": "2024-12-22",
            "count": 1
          },
          {
            "date": "2024-12-24",
            "count": 1
          },
          {
            "date": "2024-12-25",
            "count": 2
          },
          {
            "date": "2024-12-26",
            "count": 2
          },
          {
            "date": "2024-12-31",
            "count": 1
          },
          {
            "date": "2025-01-02",
            "count": 1
          },
          {
            "date": "2025-01-05",
            "count": 1
          },
          {
            "date": "2025-01-07",
            "count": 2
          },
          {
            "date": "2025-01-14",
            "count": 1
          },
          {
            "date": "2025-01-17",
            "count": 1
          },
          {
            "date": "2025-01-19",
            "count": 1
          },
          {
            "date": "2025-01-20",
            "count": 1
          },
          {
            "date": "2025-01-23",
            "count": 1
          },
          {
            "date": "2025-01-24",
            "count": 2
          },
          {
            "date": "2025-01-31",
            "count": 1
          },
          {
            "date": "2025-02-01",
            "count": 2
          },
          {
            "date": "2025-02-03",
            "count": 2
          },
          {
            "date": "2025-02-05",
            "count": 1
          },
          {
            "date": "2025-02-06",
            "count": 1
          },
          {
            "date": "2025-02-07",
            "count": 1
          },
          {
            "date": "2025-02-11",
            "count": 1
          },
          {
            "date": "2025-02-12",
            "count": 2
          },
          {
            "date": "2025-02-14",
            "count": 2
          },
          {
            "date": "2025-02-16",
            "count": 1
          },
          {
            "date": "2025-02-18",
            "count": 1
          },
          {
            "date": "2025-02-19",
            "count": 2
          },
          {
            "date": "2025-02-21",
            "count": 1
          },
          {
            "date": "2025-02-23",
            "count": 1
          },
          {
            "date": "2025-02-24",
            "count": 1
          },
          {
            "date": "2025-02-26",
            "count": 1
          },
          {
            "date": "2025-03-01",
            "count": 1
          },
          {
            "date": "2025-03-05",
            "count": 1
          },
          {
            "date": "2025-03-06",
            "count": 1
          },
          {
            "date": "2025-03-07",
            "count": 1
          },
          {
            "date": "2025-03-10",
            "count": 2
          },
          {
            "date": "2025-03-13",
            "count": 1
          },
          {
            "date": "2025-03-14",
            "count": 1
          },
          {
            "date": "2025-03-15",
            "count": 1
          },
          {
            "date": "2025-03-17",
            "count": 1
          },
          {
            "date": "2025-03-18",
            "count": 1
          },
          {
            "date": "2025-03-19",
            "count": 1
          },
          {
            "date": "2025-03-24",
            "count": 2
          },
          {
            "date": "2025-03-25",
            "count": 1
          },
          {
            "date": "2025-03-27",
            "count": 1
          },
          {
            "date": "2025-03-29",
            "count": 1
          },
          {
            "date": "2025-04-02",
            "count": 1
          },
          {
            "date": "2025-04-04",
            "count": 2
          },
          {
            "date": "2025-04-11",
            "count": 2
          },
          {
            "date": "2025-04-13",
            "count": 1
          },
          {
            "date": "2025-04-14",
            "count": 1
          },
          {
            "date": "2025-04-17",
            "count": 1
          },
          {
            "date": "2025-04-22",
            "count": 1
          },
          {
            "date": "2025-04-25",
            "count": 2
          },
          {
            "date": "2025-04-26",
            "count": 1
          },
          {
            "date": "2025-04-27",
            "count": 1
          },
          {
            "date": "2025-04-28",
            "count": 1
          },
          {
            "date": "2025-04-29",
            "count": 1
          },
          {
            "date": "2025-04-30",
            "count": 1
          },
          {
            "date": "2025-05-02",
            "count": 2
          },
          {
            "date": "2025-05-03",
            "count": 1
          },
          {
            "date": "2025-05-04",
            "count": 1
          },
          {
            "date": "2025-05-05",
            "count": 2
          },
          {
            "date": "2025-05-06",
            "count": 2
          },
          {
            "date": "2025-05-08",
            "count": 2
          },
          {
            "date": "2025-05-09",
            "count": 2
          },
          {
            "date": "2025-05-11",
            "count": 1
          },
          {
            "date": "2025-05-12",
            "count": 3
          },
          {
            "date": "2025-05-14",
            "count": 1
          },
          {
            "date": "2025-05-15",
            "count": 3
          },
          {
            "date": "2025-05-17",
            "count": 1
          },
          {
            "date": "2025-05-23",
            "count": 1
          },
          {
            "date": "2025-05-30",
            "count": 1
          },
          {
            "date": "2025-05-31",
            "count": 1
          },
          {
            "date": "2025-06-04",
            "count": 1
          },
          {
            "date": "2025-06-08",
            "count": 1
          },
          {
            "date": "2025-06-11",
            "count": 2
          },
          {
            "date": "2025-06-20",
            "count": 2
          },
          {
            "date": "2025-06-22",
            "count": 1
          },
          {
            "date": "2025-06-23",
            "count": 1
          },
          {
            "date": "2025-06-25",
            "count": 2
          },
          {
            "date": "2025-06-28",
            "count": 1
          },
          {
            "date": "2025-07-07",
            "count": 1
          },
          {
            "date": "2025-07-10",
            "count": 1
          },
          {
            "date": "2025-07-11",
            "count": 1
          },
          {
            "date": "2025-07-13",
            "count": 2
          },
          {
            "date": "2025-07-14",
            "count": 2
          },
          {
            "date": "2025-07-22",
            "count": 1
          },
          {
            "date": "2025-07-23",
            "count": 1
          },
          {
            "date": "2025-07-24",
            "count": 1
          },
          {
            "date": "2025-07-26",
            "count": 1
          },
          {
            "date": "2025-07-27",
            "count": 1
          },
          {
            "date": "2025-08-03",
            "count": 1
          },
          {
            "date": "2025-08-04",
            "count": 1
          },
          {
            "date": "2025-08-06",
            "count": 1
          },
          {
            "date": "2025-08-07",
            "count": 1
          },
          {
            "date": "2025-08-12",
            "count": 1
          },
          {
            "date": "2025-08-14",
            "count": 1
          },
          {
            "date": "2025-08-15",
            "count": 1
          },
          {
            "date": "2025-08-18",
            "count": 1
          },
          {
            "date": "2025-08-19",
            "count": 2
          },
          {
            "date": "2025-08-20",
            "count": 3
          },
          {
            "date": "2025-08-22",
            "count": 1
          },
          {
            "date": "2025-08-25",
            "count": 1
          },
          {
            "date": "2025-08-26",
            "count": 1
          },
          {
            "date": "2025-08-28",
            "count": 1
          },
          {
            "date": "2025-09-04",
            "count": 1
          },
          {
            "date": "2025-09-05",
            "count": 1
          },
          {
            "date": "2025-09-06",
            "count": 1
          },
          {
            "date": "2025-09-09",
            "count": 1
          },
          {
            "date": "2025-09-14",
            "count": 1
          },
          {
            "date": "2025-09-15",
            "count": 1
          },
          {
            "date": "2025-09-18",
            "count": 1
          },
          {
            "date": "2025-09-19",
            "count": 3
          },
          {
            "date": "2025-09-23",
            "count": 1
          },
          {
            "date": "2025-09-24",
            "count": 1
          },
          {
            "date": "2025-09-26",
            "count": 1
          },
          {
            "date": "2025-10-02",
            "count": 1
          },
          {
            "date": "2025-10-03",
            "count": 2
          },
          {
            "date": "2025-10-04",
            "count": 1
          },
          {
            "date": "2025-10-05",
            "count": 1
          },
          {
            "date": "2025-10-06",
            "count": 1
          },
          {
            "date": "2025-10-09",
            "count": 1
          },
          {
            "date": "2025-10-10",
            "count": 1
          },
          {
            "date": "2025-10-16",
            "count": 1
          },
          {
            "date": "2025-10-17",
            "count": 1
          },
          {
            "date": "2025-10-21",
            "count": 1
          },
          {
            "date": "2025-10-22",
            "count": 1
          },
          {
            "date": "2025-10-23",
            "count": 1
          },
          {
            "date": "2025-10-24",
            "count": 2
          },
          {
            "date": "2025-10-27",
            "count": 1
          },
          {
            "date": "2025-11-03",
            "count": 1
          },
          {
            "date": "2025-11-04",
            "count": 1
          },
          {
            "date": "2025-11-06",
            "count": 1
          },
          {
            "date": "2025-11-07",
            "count": 1
          },
          {
            "date": "2025-11-09",
            "count": 1
          },
          {
            "date": "2025-11-12",
            "count": 1
          },
          {
            "date": "2025-11-17",
            "count": 1
          },
          {
            "date": "2025-11-18",
            "count": 1
          },
          {
            "date": "2025-11-25",
            "count": 1
          },
          {
            "date": "2025-11-28",
            "count": 1
          },
          {
            "date": "2025-12-01",
            "count": 1
          },
          {
            "date": "2025-12-02",
            "count": 1
          },
          {
            "date": "2025-12-03",
            "count": 1
          },
          {
            "date": "2025-12-04",
            "count": 1
          },
          {
            "date": "2025-12-11",
            "count": 1
          },
          {
            "date": "2025-12-13",
            "count": 1
          },
          {
            "date": "2025-12-17",
            "count": 1
          },
          {
            "date": "2025-12-19",
            "count": 1
          },
          {
            "date": "2025-12-22",
            "count": 1
          },
          {
            "date": "2025-12-23",
            "count": 1
          },
          {
            "date": "2025-12-25",
            "count": 1
          },
          {
            "date": "2025-12-29",
            "count": 1
          },
          {
            "date": "2026-01-15",
            "count": 1
          },
          {
            "date": "2026-01-17",
            "count": 1
          },
          {
            "date": "2026-01-22",
            "count": 1
          },
          {
            "date": "2026-01-23",
            "count": 2
          },
          {
            "date": "2026-01-29",
            "count": 1
          },
          {
            "date": "2026-01-30",
            "count": 1
          },
          {
            "date": "2026-02-03",
            "count": 1
          },
          {
            "date": "2026-02-08",
            "count": 1
          },
          {
            "date": "2026-02-13",
            "count": 1
          },
          {
            "date": "2026-02-14",
            "count": 1
          },
          {
            "date": "2026-02-16",
            "count": 1
          },
          {
            "date": "2026-02-18",
            "count": 1
          },
          {
            "date": "2026-02-19",
            "count": 1
          },
          {
            "date": "2026-03-04",
            "count": 1
          },
          {
            "date": "2026-03-06",
            "count": 1
          },
          {
            "date": "2026-03-09",
            "count": 1
          },
          {
            "date": "2026-03-14",
            "count": 2
          },
          {
            "date": "2026-03-19",
            "count": 1
          },
          {
            "date": "2026-03-22",
            "count": 1
          },
          {
            "date": "2026-03-25",
            "count": 1
          },
          {
            "date": "2026-03-26",
            "count": 1
          },
          {
            "date": "2026-03-31",
            "count": 1
          },
          {
            "date": "2026-04-07",
            "count": 1
          },
          {
            "date": "2026-04-08",
            "count": 2
          },
          {
            "date": "2026-04-11",
            "count": 2
          },
          {
            "date": "2026-04-14",
            "count": 1
          },
          {
            "date": "2026-04-20",
            "count": 2
          },
          {
            "date": "2026-04-21",
            "count": 1
          },
          {
            "date": "2026-04-28",
            "count": 1
          },
          {
            "date": "2026-05-01",
            "count": 1
          },
          {
            "date": "2026-05-04",
            "count": 1
          },
          {
            "date": "2026-05-07",
            "count": 1
          },
          {
            "date": "2026-05-08",
            "count": 1
          },
          {
            "date": "2026-05-10",
            "count": 1
          },
          {
            "date": "2026-05-15",
            "count": 1
          },
          {
            "date": "2026-05-19",
            "count": 1
          },
          {
            "date": "2026-05-20",
            "count": 2
          },
          {
            "date": "2026-05-23",
            "count": 1
          },
          {
            "date": "2026-05-29",
            "count": 1
          },
          {
            "date": "2026-06-02",
            "count": 1
          },
          {
            "date": "2026-06-19",
            "count": 2
          },
          {
            "date": "2026-06-22",
            "count": 1
          },
          {
            "date": "2026-06-30",
            "count": 1
          },
          {
            "date": "2026-07-05",
            "count": 1
          },
          {
            "date": "2026-07-06",
            "count": 1
          },
          {
            "date": "2026-07-11",
            "count": 1
          },
          {
            "date": "2026-07-15",
            "count": 1
          },
          {
            "date": "2026-07-16",
            "count": 2
          },
          {
            "date": "2026-07-18",
            "count": 3
          },
          {
            "date": "2026-07-19",
            "count": 1
          },
          {
            "date": "2026-07-20",
            "count": 1
          },
          {
            "date": "2026-07-21",
            "count": 2
          }
        ],
        "complete": false,
        "collected": 1000,
        "total_stars": 7774
      },
      "open_issues_and_prs": 27
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "examples"
      ],
      "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": 78934,
      "source_files_sampled": 1281,
      "oversized_source_files": 2,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "composer.json"
      ],
      "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": 6,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "packagist"
      ],
      "dependencies": [
        {
          "name": "psr/http-message",
          "manifest": "composer.json",
          "ecosystem": "packagist",
          "version_constraint": "^1.0|^2.0"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "psr/http-message",
            "direct": true,
            "version": null,
            "ecosystem": "packagist"
          },
          {
            "name": "friendsofphp/php-cs-fixer",
            "direct": false,
            "version": null,
            "ecosystem": "packagist"
          },
          {
            "name": "php",
            "direct": false,
            "version": null,
            "ecosystem": "packagist"
          },
          {
            "name": "phpstan/phpstan",
            "direct": false,
            "version": null,
            "ecosystem": "packagist"
          },
          {
            "name": "phpunit/phpcov",
            "direct": false,
            "version": null,
            "ecosystem": "packagist"
          },
          {
            "name": "phpunit/phpunit",
            "direct": false,
            "version": null,
            "ecosystem": "packagist"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 6,
        "direct_count": 1,
        "indirect_count": 5
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 12,
        "merged_prs": 547,
        "open_issues": 15,
        "closed_ratio": 0.984,
        "closed_issues": 918,
        "closed_unmerged_prs": 215
      },
      "bus_factor": 1,
      "bot_contributors": 2,
      "top_contributors": [
        {
          "type": "User",
          "login": "nrk",
          "commits": 1957,
          "avatar_url": "https://avatars.githubusercontent.com/u/17923?v=4"
        },
        {
          "type": "User",
          "login": "vladvildanov",
          "commits": 351,
          "avatar_url": "https://avatars.githubusercontent.com/u/117659936?v=4"
        },
        {
          "type": "User",
          "login": "tillkruss",
          "commits": 191,
          "avatar_url": "https://avatars.githubusercontent.com/u/665029?v=4"
        },
        {
          "type": "User",
          "login": "srmklive",
          "commits": 9,
          "avatar_url": "https://avatars.githubusercontent.com/u/839335?v=4"
        },
        {
          "type": "User",
          "login": "b1rdex",
          "commits": 7,
          "avatar_url": "https://avatars.githubusercontent.com/u/312855?v=4"
        },
        {
          "type": "User",
          "login": "GrahamCampbell",
          "commits": 7,
          "avatar_url": "https://avatars.githubusercontent.com/u/2829600?v=4"
        },
        {
          "type": "User",
          "login": "Seldaek",
          "commits": 6,
          "avatar_url": "https://avatars.githubusercontent.com/u/183678?v=4"
        },
        {
          "type": "User",
          "login": "szepeviktor",
          "commits": 6,
          "avatar_url": "https://avatars.githubusercontent.com/u/952007?v=4"
        },
        {
          "type": "User",
          "login": "alschastny",
          "commits": 6,
          "avatar_url": "https://avatars.githubusercontent.com/u/91664363?v=4"
        },
        {
          "type": "User",
          "login": "udat",
          "commits": 5,
          "avatar_url": "https://avatars.githubusercontent.com/u/437040?v=4"
        }
      ],
      "contributors_sampled": 98,
      "top_contributor_share": 0.73
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "linters.yml",
        "release-drafter.yml",
        "spellcheck.yml",
        "tests.yml"
      ],
      "has_docs_dir": false,
      "linter_configs": [
        ".php-cs-fixer.dist.php"
      ],
      "has_editorconfig": true,
      "has_linter_config": true,
      "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": 6,
            "reason": "branch protection is not maximal on development and all release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 10,
            "reason": "26 out of 26 merged PRs checked by a CI test -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
          },
          {
            "name": "CII-Best-Practices",
            "score": 0,
            "reason": "no effort to earn an OpenSSF best practices badge detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
          },
          {
            "name": "Code-Review",
            "score": 8,
            "reason": "Found 21/26 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 49 contributing companies or organizations",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": null,
            "reason": "no workflows found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 10,
            "reason": "update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 10,
            "reason": "30 commit(s) and 6 issue activity found in the last 90 days -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": null,
            "reason": "packaging workflow not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": null,
            "reason": "no dependencies found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 5,
            "reason": "SAST tool is not run on all commits -- score normalized to 5",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 0,
            "reason": "security policy file not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": null,
            "reason": "no releases found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": null,
            "reason": "No tokens found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 10,
            "reason": "0 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "eafa3ff2bf1a60c3d525d95411b6f376c5ac0308",
        "ran_at": "2026-07-22T00:41:11Z",
        "aggregate_score": 7.2,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": false,
      "has_dependabot_config": true
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-07-21T08:22:44Z",
      "oldest_open_prs": [
        {
          "number": 1160,
          "created_at": "2023-02-17T12:13:47Z",
          "last_comment_at": "2025-06-26T20:19:03Z",
          "last_comment_author": "thePanz"
        },
        {
          "number": 1235,
          "created_at": "2023-03-30T12:24:16Z",
          "last_comment_at": "2024-04-20T00:42:57Z",
          "last_comment_author": "radu-neacsu"
        },
        {
          "number": 1266,
          "created_at": "2023-04-26T11:00:14Z",
          "last_comment_at": "2023-05-02T18:24:47Z",
          "last_comment_author": "tillkruss"
        },
        {
          "number": 1370,
          "created_at": "2023-08-24T09:22:07Z",
          "last_comment_at": "2023-09-13T16:27:38Z",
          "last_comment_author": "tillkruss"
        },
        {
          "number": 1402,
          "created_at": "2023-09-18T07:12:26Z",
          "last_comment_at": "2025-08-21T15:39:47Z",
          "last_comment_author": "tillkruss"
        },
        {
          "number": 1430,
          "created_at": "2024-01-22T09:59:52Z",
          "last_comment_at": "2024-01-22T17:47:12Z",
          "last_comment_author": "tillkruss"
        },
        {
          "number": 1486,
          "created_at": "2024-10-28T09:00:52Z",
          "last_comment_at": "2025-01-17T10:28:22Z",
          "last_comment_author": "vladvildanov"
        },
        {
          "number": 1508,
          "created_at": "2025-02-11T16:12:06Z",
          "last_comment_at": "2025-04-14T17:14:23Z",
          "last_comment_author": "tillkruss"
        },
        {
          "number": 1669,
          "created_at": "2026-04-22T08:50:14Z",
          "last_comment_at": "2026-04-22T10:41:10Z",
          "last_comment_author": "JoseGonzalez84"
        },
        {
          "number": 1701,
          "created_at": "2026-07-17T08:45:43Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1708,
          "created_at": "2026-07-20T21:49:18Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1709,
          "created_at": "2026-07-21T11:50:32Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ],
      "last_merged_pr_at": "2026-07-21T08:20:22Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": [
        {
          "number": 776,
          "created_at": "2022-06-16T07:24:34Z",
          "last_comment_at": "2022-07-26T15:34:57Z",
          "last_comment_author": "tillkruss"
        },
        {
          "number": 923,
          "created_at": "2023-01-06T13:50:07Z",
          "last_comment_at": "2023-01-11T13:18:10Z",
          "last_comment_author": "Gregoire-M"
        },
        {
          "number": 1037,
          "created_at": "2023-01-21T03:52:45Z",
          "last_comment_at": "2025-02-20T14:14:07Z",
          "last_comment_author": "szepeviktor"
        },
        {
          "number": 1095,
          "created_at": "2023-02-04T19:19:35Z",
          "last_comment_at": "2023-06-12T15:27:45Z",
          "last_comment_author": "schodemeiss"
        },
        {
          "number": 1146,
          "created_at": "2023-02-13T16:06:04Z",
          "last_comment_at": "2026-04-22T08:42:33Z",
          "last_comment_author": "JoseGonzalez84"
        },
        {
          "number": 1147,
          "created_at": "2023-02-14T10:03:26Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1259,
          "created_at": "2023-04-05T11:14:49Z",
          "last_comment_at": "2024-08-22T14:32:15Z",
          "last_comment_author": "maximeroma"
        },
        {
          "number": 1292,
          "created_at": "2023-05-09T18:09:03Z",
          "last_comment_at": "2023-12-29T09:02:57Z",
          "last_comment_author": "vladvildanov"
        },
        {
          "number": 1309,
          "created_at": "2023-06-05T13:08:50Z",
          "last_comment_at": "2023-06-22T08:28:25Z",
          "last_comment_author": "vladvildanov"
        },
        {
          "number": 1336,
          "created_at": "2023-07-07T10:02:55Z",
          "last_comment_at": "2023-07-13T09:05:56Z",
          "last_comment_author": "vladvildanov"
        },
        {
          "number": 1460,
          "created_at": "2024-05-24T14:11:13Z",
          "last_comment_at": "2025-03-18T15:35:33Z",
          "last_comment_author": "tillkruss"
        },
        {
          "number": 1475,
          "created_at": "2024-08-29T11:42:54Z",
          "last_comment_at": "2025-03-25T09:28:45Z",
          "last_comment_author": "GrzegorzDrozd"
        },
        {
          "number": 1507,
          "created_at": "2025-02-05T11:48:09Z",
          "last_comment_at": "2025-02-19T08:50:06Z",
          "last_comment_author": "vladvildanov"
        },
        {
          "number": 1565,
          "created_at": "2025-06-16T17:34:24Z",
          "last_comment_at": "2025-10-15T20:33:51Z",
          "last_comment_author": "tillkruss"
        },
        {
          "number": 1696,
          "created_at": "2026-06-25T11:13:24Z",
          "last_comment_at": "2026-06-25T16:36:05Z",
          "last_comment_author": "tillkruss"
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/predis/predis",
    "host": "github.com",
    "name": "predis",
    "owner": "predis"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "at_risk",
      "name": "Overall health",
      "note": "High-Risk Jurisdiction Policy applies a 50% multiplier to weighted overall health and gives it an At risk ceiling of 49.",
      "notes": [
        {
          "code": "jurisdiction_overall_adjustment",
          "params": {
            "cap": 49,
            "pct": 50
          }
        }
      ],
      "value": 37,
      "inputs": {
        "security": 36,
        "vitality": 92,
        "community": 87,
        "governance": 66,
        "engineering": 84,
        "high_risk_jurisdiction_cap": 49,
        "high_risk_jurisdiction_multiplier": 50,
        "weighted_overall_before_jurisdiction": 74,
        "overall_after_jurisdiction_multiplier": 37
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "excellent",
        "name": "Vitality",
        "value": 92,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "excellent",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 87,
            "inputs": {
              "commits_last_year": 96,
              "human_commit_share": 0.98,
              "days_since_last_push": 0,
              "active_weeks_last_year": 34
            },
            "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": "34/52 weeks with commits",
                "points": 23.5,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 34
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "96 commits in the last year",
                "points": 17.8,
                "status": "partial",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 96
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 6 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "excellent",
            "name": "Release discipline",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "releases_count": 63,
              "latest_release_tag": "v3.5.1",
              "releases_from_tags": false,
              "days_since_latest_release": 40,
              "mean_days_between_releases": 43.4
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "63 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 63
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 40 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 40
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~43.4 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 43.4
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "excellent",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "maintained",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": null,
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": 0,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "last human commit 0 days ago",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_maintained",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "excellent",
        "name": "Community & Adoption",
        "value": 87,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "excellent",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 98,
            "inputs": {
              "forks": 997,
              "stars": 7774,
              "watchers": 201,
              "growth_state": "organic",
              "growth_factor_pct": 100
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "7,774 stars",
                "points": 60,
                "status": "met",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 7774
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "997 forks",
                "points": 25,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 997
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "201 watchers",
                "points": 12.8,
                "status": "partial",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 201
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "moderate",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 65,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": false,
              "has_issue_template": false,
              "has_code_of_conduct": true,
              "has_pull_request_template": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "recognized license (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": 0,
                "status": "missed",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 13.5,
                "status": "met",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.3
              }
            ]
          },
          {
            "key": "ecosystem_adoption",
            "band": "excellent",
            "name": "Ecosystem adoption (downloads)",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "predis/predis"
              ],
              "dependents": 2842,
              "ecosystems": "packagist",
              "total_downloads": 329944714,
              "monthly_downloads": 6787153
            },
            "components": [
              {
                "key": "monthly_downloads",
                "name": "Monthly downloads",
                "detail": "6,787,153 downloads/month across packagist",
                "points": 80,
                "status": "met",
                "details": [
                  {
                    "code": "downloads_monthly",
                    "params": {
                      "count": 6787153,
                      "ecosystems": "packagist"
                    }
                  }
                ],
                "max_points": 80
              },
              {
                "key": "registry_dependents",
                "name": "Registry dependents",
                "detail": "2,842 packages depend on it",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "registry_dependents",
                    "params": {
                      "count": 2842
                    }
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "moderate",
        "name": "Sustainability & Governance",
        "value": 66,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "at_risk",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 39,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 98,
              "top_contributor_share": 0.73
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "1 contributor(s) cover half of all commits",
                "points": 9,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 73% of commits",
                "points": 6.1,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 73
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "98 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 98
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 49 contributing companies or organizations",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "excellent",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 86,
            "inputs": {
              "merged_prs": 547,
              "open_issues": 15,
              "closed_issues": 918,
              "issue_closed_ratio": 0.984,
              "closed_unmerged_prs": 215
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "98% of issues closed",
                "points": 46,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 98
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "547/762 decided PRs merged",
                "points": 27.5,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 547,
                      "decided": 762
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 21/26 approved changesets -- score normalized to 8",
                "points": 12,
                "status": "partial",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "moderate",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 53,
            "inputs": {
              "followers": 18,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "predis",
              "public_repos": 1,
              "account_age_days": 2170
            },
            "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": "18 followers of predis",
                "points": 9.2,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 18,
                      "login": "predis"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "1 public repos, account ~5 yr old",
                "points": 14.1,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 1
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 5
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "excellent",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "predis/predis"
              ],
              "ecosystems": "packagist",
              "any_deprecated": false,
              "min_days_since_publish": 40
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "1 package(s) on packagist",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 1,
                      "ecosystems": "packagist"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 40 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 40
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "56 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 56
                    }
                  }
                ],
                "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": 84,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "excellent",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": true,
              "has_linter_config": true,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "4 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 4
                    }
                  }
                ],
                "max_points": 24
              },
              {
                "key": "tests_present",
                "name": "Tests present",
                "detail": null,
                "points": 24,
                "status": "met",
                "details": [],
                "max_points": 24
              },
              {
                "key": "linter_config",
                "name": "Linter config",
                "detail": ".php-cs-fixer.dist.php",
                "points": 16,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".php-cs-fixer.dist.php"
                    }
                  }
                ],
                "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": "26 out of 26 merged PRs checked by a CI test -- score normalized to 10",
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "good",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 75,
            "inputs": {
              "topics": [
                "predis",
                "redis",
                "redis-sentinel",
                "redis-cluster",
                "php"
              ],
              "has_wiki": true,
              "homepage": "https://github.com/predis/predis/wiki",
              "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://github.com/predis/predis/wiki",
                "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": "5 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 5
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "at_risk",
        "name": "Security",
        "value": 36,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "at_risk",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Dangerous-Workflow, Packaging, Pinned-Dependencies, Signed-Releases, Token-Permissions. Remaining weights renormalized. High-Risk Jurisdiction Policy applies a 50% multiplier to Security posture and gives it an At risk ceiling of 49.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "dangerous_workflow",
                    "packaging",
                    "pinned_dependencies",
                    "signed_releases",
                    "token_permissions"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "jurisdiction_posture_adjustment",
                "params": {
                  "cap": 49,
                  "pct": 50
                }
              }
            ],
            "value": 36,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 13,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 5,
              "scorecard_aggregate": 7.2,
              "high_risk_jurisdiction_cap": 49,
              "high_risk_jurisdiction_multiplier": 50,
              "security_posture_after_multiplier": 36,
              "security_posture_before_jurisdiction": 72
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "branch protection is not maximal on development and all release branches",
                "points": 4.5,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "26 out of 26 merged PRs checked by a CI test -- score normalized to 10",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "cii_best_practices",
                "name": "CII-Best-Practices",
                "detail": "no effort to earn an OpenSSF best practices badge detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "code_review",
                "name": "Code-Review",
                "detail": "Found 21/26 approved changesets -- score normalized to 8",
                "points": 6,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 49 contributing companies or organizations",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no workflows found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "update tool detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "30 commit(s) and 6 issue activity found in the last 90 days -- score normalized to 10",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow not detected",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "no dependencies found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is not run on all commits -- score normalized to 5",
                "points": 2.5,
                "status": "partial",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file not detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "No tokens found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "0 existing vulnerabilities detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "moderate",
            "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": 50,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": true,
              "exposures": [
                {
                  "role": "contributor_organization",
                  "count": 2,
                  "country": "Russia"
                },
                {
                  "role": "top_contributor",
                  "count": 1,
                  "country": "Russia"
                }
              ],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 24
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "Russia: contributor_organization (2); Russia: top_contributor (1)",
                "points": 50,
                "status": "partial",
                "details": [
                  {
                    "code": "jurisdiction_exposure",
                    "params": {
                      "role": "contributor_organization",
                      "count": 2,
                      "country": "Russia"
                    }
                  },
                  {
                    "code": "jurisdiction_exposure_next",
                    "params": {
                      "role": "top_contributor",
                      "count": 1,
                      "country": "Russia"
                    }
                  }
                ],
                "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": "at_risk",
        "name": "AI Readiness",
        "value": 49,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "at_risk",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 0.806,
              "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": "79 of 98 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 79,
                      "sampled": 98
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "moderate",
            "name": "Verify loop (build / test / typecheck)",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Pinned-Dependencies. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_pinned_dependencies"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 57,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [],
              "has_dockerfile": true,
              "typed_language": false,
              "bootstrap_files": [],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [],
              "agent_commit_share": 0,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": 0.02
            },
            "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": ".php-cs-fixer.dist.php",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".php-cs-fixer.dist.php"
                    }
                  }
                ],
                "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": "no agent-authored commits among the last 100",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_authored_commits",
                    "params": {
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "2 of the last 100 commits are automated dependency updates",
                "points": 8,
                "status": "met",
                "details": [
                  {
                    "code": "dependency_bot_commits",
                    "params": {
                      "count": 2,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "no dependencies found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "moderate",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 55,
            "inputs": {
              "primary_language": "PHP",
              "largest_source_bytes": 78934,
              "source_files_sampled": 1281,
              "oversized_source_files": 2
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "PHP without a type-check config",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_typecheck_config_language",
                    "params": {
                      "language": "PHP"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "2/1281 source files over 60KB",
                "points": 54.9,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 1281,
                      "oversized": 2
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "at_risk",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "example_dirs": [
                "examples"
              ],
              "has_mcp_signal": false,
              "api_schema_files": []
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 40
              },
              {
                "key": "mcp_server",
                "name": "MCP server",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": "examples",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "examples"
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [
    "No resolved dependencies carried a version and a supported ecosystem"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-22T00:41:41.701457Z",
  "schema_version": "0.26.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/p/predis/predis.svg",
  "full_name": "predis/predis",
  "license_state": "standard",
  "license_spdx": "MIT"
}

Bewertungen sind Signale, keine Garantien. Sie spiegeln öffentlich sichtbare Praxis auf GitHub wider — kein Code-Audit und keine Sicherheitsgarantie.

Fehlende Daten werden ausgeschlossen und die Gewichte neu normiert, nie als null bewertet. Die Methodik ist versioniert und offen: Metriken v1.13.0, Schema v0.26.0 — vollständige Methodik · Metriken-Wiki.

Wie ein einzelnes Ergebnis im Gesamtregister steht: aggregierte StatistikenPackagist.