Звіт у форматі JSON машиночитний
{
"data": {
"repo": {
"topics": [
"nisq",
"quantum-algorithms",
"quantum-computing",
"cirq",
"algorithms",
"api",
"google-quantum",
"python",
"quantum",
"quantum-circuit",
"quantum-circuit-simulator",
"quantum-development-kit",
"quantum-information",
"quantum-programming",
"quantum-simulation",
"sdk",
"simulation",
"quantum-computer-simulator",
"quantum-programming-language",
"google"
],
"is_fork": false,
"size_kb": 47056,
"has_wiki": true,
"homepage": "https://quantumai.google/cirq",
"languages": {
"CSS": 4783,
"Shell": 66668,
"Python": 10696888,
"Scilab": 1447,
"JavaScript": 423,
"TypeScript": 95031,
"Jupyter Notebook": 672269
},
"pushed_at": "2026-07-29T17:56:26Z",
"created_at": "2017-12-14T23:41:49Z",
"owner_type": "Organization",
"updated_at": "2026-07-29T17:55:53Z",
"description": "Python framework for creating, editing, and running Noisy Intermediate-Scale Quantum (NISQ) circuits.",
"is_archived": false,
"is_disabled": false,
"license_spdx": "Apache-2.0",
"default_branch": "main",
"license_spdx_raw": "Apache-2.0",
"primary_language": "Python",
"significant_languages": [
"Python"
]
},
"owner": {
"blog": "quantumai.google",
"name": "Quantumlib",
"type": "Organization",
"login": "quantumlib",
"company": null,
"location": null,
"followers": 1401,
"avatar_url": "https://avatars.githubusercontent.com/u/31279789?v=4",
"created_at": "2017-08-23T12:50:38Z",
"is_verified": null,
"public_repos": 17,
"account_age_days": 3262
},
"license": {
"state": "standard",
"spdx_id": "Apache-2.0",
"raw_spdx": "Apache-2.0",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "v1.7.0",
"kind": "minor",
"published_at": "2026-06-30T18:44:40Z"
},
{
"tag": "v1.6.1",
"kind": "patch",
"published_at": "2025-08-14T03:26:44Z"
},
{
"tag": "v1.6.0",
"kind": "minor",
"published_at": "2025-07-23T04:43:29Z"
},
{
"tag": "v1.5.0",
"kind": "minor",
"published_at": "2025-04-10T18:51:34Z"
},
{
"tag": "v1.4.1",
"kind": "patch",
"published_at": "2024-06-27T00:46:34Z"
},
{
"tag": "v1.4.0",
"kind": "minor",
"published_at": "2024-05-30T04:28:27Z"
},
{
"tag": "v1.3.0",
"kind": "minor",
"published_at": "2023-12-01T22:10:24Z"
},
{
"tag": "v1.2.0",
"kind": "minor",
"published_at": "2023-07-18T17:50:48Z"
},
{
"tag": "v1.1.0",
"kind": "minor",
"published_at": "2022-12-20T23:28:52Z"
},
{
"tag": "v1.0.0",
"kind": "major",
"published_at": "2022-07-18T22:34:18Z"
},
{
"tag": "v0.15.0",
"kind": "minor",
"published_at": "2022-06-29T18:07:42Z"
},
{
"tag": "v0.14.1",
"kind": "patch",
"published_at": "2022-04-11T02:09:25Z"
},
{
"tag": "v0.14.0",
"kind": "minor",
"published_at": "2022-03-24T08:30:41Z"
},
{
"tag": "v0.13.1",
"kind": "patch",
"published_at": "2021-10-26T18:07:36Z"
},
{
"tag": "v0.13.0",
"kind": "minor",
"published_at": "2021-10-15T19:21:43Z"
},
{
"tag": "v0.12.0",
"kind": "minor",
"published_at": "2021-08-11T22:05:18Z"
},
{
"tag": "v0.11.1",
"kind": "patch",
"published_at": "2021-07-26T19:17:34Z"
},
{
"tag": "v0.11.0",
"kind": "minor",
"published_at": "2021-05-11T20:58:10Z"
},
{
"tag": "v0.10.0",
"kind": "minor",
"published_at": "2021-03-05T23:32:04Z"
},
{
"tag": "v0.9.1",
"kind": "patch",
"published_at": "2020-10-02T22:50:41Z"
},
{
"tag": "v0.9.0",
"kind": "minor",
"published_at": "2020-10-01T21:47:58Z"
},
{
"tag": "v0.8.2",
"kind": "patch",
"published_at": "2020-07-14T17:54:32Z"
},
{
"tag": "v0.8.1",
"kind": "patch",
"published_at": "2020-06-03T21:28:21Z"
},
{
"tag": "v0.8.0",
"kind": "minor",
"published_at": "2020-05-04T18:27:50Z"
},
{
"tag": "v0.7.0",
"kind": "minor",
"published_at": "2020-01-18T00:50:43Z"
},
{
"tag": "v0.6.0",
"kind": "minor",
"published_at": "2019-10-30T21:48:36Z"
},
{
"tag": "v0.5.0",
"kind": "minor",
"published_at": "2019-04-24T03:23:46Z"
},
{
"tag": "v0.4.0",
"kind": "minor",
"published_at": "2018-11-30T01:47:36Z"
},
{
"tag": "v0.3.1",
"kind": "patch",
"published_at": "2018-07-18T22:42:06Z"
},
{
"tag": "v0.3.0",
"kind": "minor",
"published_at": "2018-07-18T06:43:32Z"
},
{
"tag": "v0.1",
"kind": "other",
"published_at": "2018-04-17T16:38:18Z"
}
],
"recent_commits": [
{
"oid": "9d2438f1858c7392d9f87893f5c714fb6dad7ff2",
"body": "Add a Willow device to `known_devices`. This can then be used to update\nhttps://quantumai.google/cirq/google/best_practices.",
"is_bot": false,
"headline": "Add Willow to known_devices (#8232)",
"author_name": "eliottrosenberg",
"author_login": "eliottrosenberg",
"committed_at": "2026-07-29T17:45:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c95cfc79c9fc2785f3ac689b82205ffee0f55e5c",
"body": "Part of #2737 \n\nIn this PR, we add a fast version of the `Result.histogram()` method\nusing matrix multiplies.\nThe old implementation is still used when a custom `fold_func` is\nprovided, or when the\nfixed precision of Numpy ints would result in an overflow.\n\n---------\n\nCo-authored-by: Michael Hucka <mhucka@google.com>",
"is_bot": false,
"headline": "Speed up Result.histogram() method (#8191)",
"author_name": "Adam Rettig",
"author_login": "arettig",
"committed_at": "2026-07-29T16:29:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5652c01a33533358d0f9cdcc274f58deddc82831",
"body": "Run standard pip-install without the `--quiet` option so that Colab\ncan detect an upgrade of pre-loaded modules (numpy) and suggest\nsession restart.\n\nPart 1 - change only the intro notebook to verify it renders correctly\nat https://quantumai.google/cirq/start/intro.\n\nRelated to b/538201381",
"is_bot": false,
"headline": "Run pip-install without output suppression in colab notebooks (#8230)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-07-28T22:55:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3266e0959cc6e6df95c2a8280c992f73c3a7c42b",
"body": "… deduplication (#8229)\n\n### Background & Problem\nThe previous implementation:\n```python\n return frozenset(q for m in self.moments for q in m.qubits)\n```\niterated over every single qubit element-by-element using a nested\nPython generator expression. This incurred high CPython bytecode\niterator ev\n[…]\nevious | Optimized | Speed-up |\n| ------------- | ------------- | ------------- | ------------- |\n| 1000 unique moments | 0.354s | 0.232s | 1.5x |\n| 5000 identical moments | 0.444s | 0.063s | 7.0x |",
"is_bot": false,
"headline": "Optimize `all_qubits()` performance using bulk set union and instance…",
"author_name": "Andreas Bengtsson",
"author_login": "andbe91",
"committed_at": "2026-07-28T21:25:18Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "9b75d874573ba55b3a7d81457b190c40a56e5a53",
"body": "This is still pretty experimental, but this change creates a\nuser-friendly interface to Quantum Engine that takes the cirq circuit\nfrom the compile call (added in PR #8194) and calibrates it (optimizing\nit for the execute call). The backend work isn't totally done yet, so I\ncan't fully validate that\n[…]\nxecute flow) to set the\ncorresponding execute bit. That way, both calibrate and execute set\ntheir respective oneofs correctly, and we can move towards enforcing the\ninvariant that one is set later on.",
"is_bot": false,
"headline": "Add support for QEC calibration method. (#8207)",
"author_name": "Chris Bunch",
"author_login": "shatterednirvana",
"committed_at": "2026-07-28T20:39:18Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "1cf5e00954e814b695f096867101af28613ec755",
"body": "Keep the `check/mypy` script around with a deprecation warning\nso that developers have time to adjust.\n\nAlso add deprecation deadline for an old option in `check/all`.\n\nRelated to #8182",
"is_bot": false,
"headline": "Replace `check/mypy` with `check/typecheck` (#8225)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-07-27T18:03:36Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a8ce347fde9deb21ba6063fe257b8552404701c1",
"body": "Make numpy requirement compatible with the numpy pre-installed\nand pre-loaded in Colab sessions. This should preserve the\nexisting numpy installation after `pip install cirq` in a Colab\navoiding mismatch between in-memory and installed NumPy versions.\n\nAlso remove the `copy` argument from `np.reshape` calls which\nwas only introduced in numpy-2.1.\n\nFixes b/538201381",
"is_bot": false,
"headline": "Downgrade the minimum numpy version to numpy-2.0 (#8224)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-07-27T02:53:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "726eed6fff56620abcf6a9a886e4b2af5a0bce79",
"body": "Remove some instances where run names like `current` are hard-coded.",
"is_bot": false,
"headline": "Remove hard-coded default run names (#8221)",
"author_name": "eliottrosenberg",
"author_login": "eliottrosenberg",
"committed_at": "2026-07-25T00:06:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "85e384401d1e0e4370628ce5089bb61bee5eab5b",
"body": "… (#8216)\n\nWhen creating large circuits we take care to make sure that every\nequivalent gate on a given qubit is the same object instance, so saving\nthese values have measurable impact on circuit translation speed.\n\nThis should be safe since `GateOperation` is immutable.",
"is_bot": false,
"headline": "Cache `_is_parameterized_` and `_parameter_names_` on `GateOperation`…",
"author_name": "Andreas Bengtsson",
"author_login": "andbe91",
"committed_at": "2026-07-23T23:22:36Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "676417fc0ebe61dc8e9fee1932f780ec0d6b9f00",
"body": "This saves 17ns (28%) on each cache hit. In some internal benchmarks we\nhave over 100M cache hits, so this adds up to a measurable amount of\ntime.",
"is_bot": false,
"headline": "Optimize `cached_method` for no args (#8219)",
"author_name": "Andreas Bengtsson",
"author_login": "andbe91",
"committed_at": "2026-07-23T21:02:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "dc468e2457db1c0d8c8879c65394985534944987",
"body": "…ter_names_}` (#8218)\n\nMoments cache these methods, so this makes sure we hit those caches\ninstead of iterating over all operations again.",
"is_bot": false,
"headline": "Iterate over moments in `AbstractCircuit.{_is_parameterized_, _parame…",
"author_name": "Andreas Bengtsson",
"author_login": "andbe91",
"committed_at": "2026-07-23T18:46:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4111ca549c447d3c676b57ffe92a50b180a2a2da",
"body": "The IO overhead on the Windows platform may take more time than\nthe tested delay interval. In such case the second event is scheduled\nimmediately with a zero wait time.",
"is_bot": false,
"headline": "Fix flaky test_create_parallel_scheduler_with_100ms_interval (#8220)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-07-23T18:39:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a0a55a9191b71eeed8b384b063f07c3587ece7ca",
"body": "Previously, when using `program.run()`, the user had to specify a\n`device_config_name`. This changes it so that it defaults to the default\none.",
"is_bot": false,
"headline": "Add default settings for program.run() (#8208)",
"author_name": "eliottrosenberg",
"author_login": "eliottrosenberg",
"committed_at": "2026-07-23T18:32:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d35eed930b66fad28afc02d1a3b7a79bf7114f20",
"body": "Enhance `check/misc` to flag whitespace errors such as trailing blanks,\nspace-before-tab and text files that do not end with a newline.\nIgnore this check for generated files, i.e., those with the\n`linguist-generated` git attribute.",
"is_bot": false,
"headline": "CI - add blocking check for whitespace errors (#8214)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-07-23T17:07:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1cde9c969a8c96d6f7f92483668ddf08a92c0324",
"body": "This updates the release number and date to match the 1.7.0 release.",
"is_bot": false,
"headline": "Update CITATION.cff for release 1.7.0 (#8215)",
"author_name": "Michael Hucka",
"author_login": "mhucka",
"committed_at": "2026-07-23T03:47:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "afcd535f23fb53ed1e80ab3d97658f9c81654aca",
"body": "No change in the effective content.",
"is_bot": false,
"headline": "Fix trailing whitespace in markdown file (#8213)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-07-23T01:30:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6dbf383e5ab697619977107aed3054667b4b29cf",
"body": "While reviewing another PR, I noticed that `_json_dict_()` methods were\nnot consistently type-annotated: some were, some weren't. This PR simply\nadds type annotations to `_json_dict_()` methods where they were\nmissing.\n\n---------\n\nCo-authored-by: Pavol Juhas <pavol.juhas@gmail.com>\nCo-authored-by: Pavol Juhas <juhas@google.com>",
"is_bot": false,
"headline": "Add missing type annotations to some `_json_dict_` methods (#8198)",
"author_name": "Michael Hucka",
"author_login": "mhucka",
"committed_at": "2026-07-22T20:51:54Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d7e0f2746a39e4d024a8e6b8ba80a66b3f10bc4f",
"body": "…8202)\n\n`Circuit3D.get_client_code` pastes the serialized circuit straight into\na `<script>` block, and the serialization was Python `repr`, so nothing\nin it is escaped for HTML.\n\n- wire symbols carry circuit data: a measurement key lands verbatim\ninside `M('...')`\n- a circuit from `cirq.read_json` \n[…]\n.svg.fixup_text` and `Circuit._repr_html_` already do the\nequivalent, this brings the 3D widget in line\n\nExisting client-code test updated for the JSON form, plus one regression\ntest for the breakout.",
"is_bot": false,
"headline": "Escape circuit data before inlining it in the Circuit3D script tag (#…",
"author_name": "sajida anjum",
"author_login": "sajida002",
"committed_at": "2026-07-22T05:20:24Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "4dd798b6ed293c01102a7d3e48cdc50a2c3c6923",
"body": "Updates the documentation pages\n* https://quantumai.google/cirq/google/calibration\n* https://quantumai.google/cirq/google/engine\n\nto reflect how metrics are currently collected and retrieved.\n\n---------\n\nCo-authored-by: Michael Hucka <mhucka@google.com>\nCo-authored-by: Michael Hucka <mhucka@caltech.edu>",
"is_bot": false,
"headline": "Update documentation about calibration metrics (#8201)",
"author_name": "eliottrosenberg",
"author_login": "eliottrosenberg",
"committed_at": "2026-07-22T03:48:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7a66e618c09de70313bd968c2f8e60604ccfeae2",
"body": "Many files across the project had trivial typos here and there. This PR\nfixes them.\n\n(I used a suitably-configured `codespell` to detect them. There may be\nother typos still uncaught; nevertheless, this is healthy batch and\nseems worth doing in any case.)\n\n---------\n\nCo-authored-by: Pavol Juhas <juhas@google.com>",
"is_bot": false,
"headline": "Fix various typos in many files (#8200)",
"author_name": "Michael Hucka",
"author_login": "mhucka",
"committed_at": "2026-07-21T23:12:29Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5e06fb8c315a8765df5268ee8b0bd6e2c8e4d5d3",
"body": "Updates the docstring of `engine.create_program()` to reflect the\nnewly-supported multi-circuit programs.",
"is_bot": false,
"headline": "Update engine.create_program() docstring (#8204)",
"author_name": "eliottrosenberg",
"author_login": "eliottrosenberg",
"committed_at": "2026-07-21T21:07:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "806dc602b4f25f41152d9c0fc2155c995aeda72a",
"body": "Closes #5571, building off a previous PR #7373. \n\nThis adds support for a confusion matrix to `PauliMeasurementGate`.\nIt also updates `measure_single_paulistring()` to accept a confusion\nmatrix.\n\n---------\n\nCo-authored-by: Akshita07 <aksingh0728@gmail.com>",
"is_bot": false,
"headline": "Add support for confusion map to PauliMeasurementGate (#8181)",
"author_name": "Adam Rettig",
"author_login": "arettig",
"committed_at": "2026-07-21T20:53:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a30a43fb07eb4ccbe50d9f172dc760ea659c586f",
"body": "Follow-up to #8203",
"is_bot": false,
"headline": "Ignore white space corrections in git blame (#8205)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-07-21T20:16:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "032720579c4663ef5942f9c093f13607e455272a",
"body": "No change in the effective code and content.\n\nAdd newline to the end of text files and also\ncorrect white space errors detected by\n\n git diff --check 4b825dc642cb6eb9a060e54bf8d69288fbee4904 -- \\\n ':(attr:!linguist-generated)'\n\nwhere `4b825dc642cb6eb9a060e54bf8d69288fbee4904` is an empty git tree\nand ':(attr:!linguist-generated)' excludes generated files.",
"is_bot": false,
"headline": "Fix white space errors found by `git diff --check` (#8203)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-07-21T18:47:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7d3f1587b1e48063b29c924581eb2b72b590ea60",
"body": "Tweaks the metrics plotting functions in cirq_google so that the output\nis more legible and adds comparisons against the data in the [spec\nsheet](https://quantumai.google/static/site-assets/downloads/willow-spec-sheet.pdf).",
"is_bot": false,
"headline": "Tweak calibration metrics plotting and add reference values (#8196)",
"author_name": "eliottrosenberg",
"author_login": "eliottrosenberg",
"committed_at": "2026-07-20T15:44:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "33252ffcaa9e0bd4b8d9d3cb83321de39c34977e",
"body": "Allow users to see the specific configuration, that an EngineJob ran on",
"is_bot": false,
"headline": "Add a `get_config()` method to `EngineJob` (#8186)",
"author_name": "Matt Wenner",
"author_login": "mattwenner",
"committed_at": "2026-07-16T22:37:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "52191fc574be729f77578cb5136b5e404a0db828",
"body": "This is still pretty experimental, but this change creates a\nuser-friendly interface to Quantum Engine that takes a Stim circuit and\napplies some QEC algorithms to it, returning the cirq circuit\nequivalent. We need the calibrate call to fully test this out, so we\nmight need some tweaks along the way (in follow-up PRs).\n\n---------\n\nCo-authored-by: William <2899523@gmail.com>",
"is_bot": false,
"headline": "Adding support for QEC compilation method. (#8194)",
"author_name": "Chris Bunch",
"author_login": "shatterednirvana",
"committed_at": "2026-07-16T20:08:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "021770508b983ab26d69f3dab9192677a0d87748",
"body": "- This changes the serialization of LZS and MLR reset operations to use\nthe resetgate oneof rather than internalgate.\n- This allows us to match serialization of internal versions of these\ngates and is a more accurate representation of what these gates do.\n- This keep deserialization of internalgate for temporary backwards\ncompatibility.",
"is_bot": false,
"headline": "Change serialization of MLS and LZS reset to be resetgate (#8193)",
"author_name": "Doug Strain",
"author_login": "dstrain115",
"committed_at": "2026-07-16T18:46:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "16101bb819d229d92d4d39253a62c28cf6ea681d",
"body": "…cuit.insert` (#8190)\n\nthis PR makes the following changes:\n* adds some documentation to `circuits/circuit.py` about the mechanics\nof `append` and `insert` on\nmeasurements and controlled operations.\n* adds a couple tests to `circuits/circuit_test.py` and\n`circuits/moment_test.py` to outline the new \n[…]\nnd\ncontrolled operations into circuits. one test I think is missing is\nensuring moments created with similar-keyed operations stay as a single\nmoment.\n\nthis should address 2/3 of the asks from #8132 .",
"is_bot": false,
"headline": "add some documentation and tests on changes to `Circuit.append`, `Cir…",
"author_name": "William",
"author_login": "Acciaccatura",
"committed_at": "2026-07-14T22:58:51Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "daf1fa685996deb3874d7fb54c760ff01b0ba57f",
"body": "Contains changes for the following Quantum Engine RPCs and their\nassociated request/response protos:\n\n- ListQuantumProcessorAutomationRunHistory (new)\n- CompileQecProgram (new)\n- ListQuantumJobs (modified)\n\nAlso contains changes corresponding to new fields in the QuantumJob\nproto.",
"is_bot": false,
"headline": "Regenerate quantum engine client (#8183)",
"author_name": "Michael",
"author_login": "hoisinberg",
"committed_at": "2026-07-07T19:55:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f09760879103e15b521dafde8d9803b28fbedc67",
"body": "As of #8029 cirq-google requires protobuf-6.\nThe workaround to use old argument with protobuf-5\nis not needed anymore.",
"is_bot": false,
"headline": "Clean up workaround for supporting protobuf-5 (#8180)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-07-01T21:04:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "13f6065b189b6d9ce7ee6601899ccbbeaa206f20",
"body": "* Bump the non-security group with 4 updates\n\n - Updates `@vitest/coverage-v8` from 4.1.8 to 4.1.9\n - Updates `three` from 0.184.0 to 0.185.1\n - Updates `vite` from 8.0.16 to 8.1.2\n - Updates `vitest` from 4.1.8 to 4.1.9\n\n* Bump `undici` from 7.25.0 to 7.28.0\n\n* Bump `js-yaml` from 4.1.1 to 4.3.0\n\n* Rebuild Cirq-web bundle files\n\n---------\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": false,
"headline": "Combine cirq-web dependabot updates (#8178)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-07-01T19:03:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bb5fa6b92fddbef31c7d1d4655f87636148792a8",
"body": "- Updates `actions/checkout` from 6.0.3 to 7.0.0\n- Updates `actions/setup-python` from 6.2.0 to 6.3.0\n- Updates `codecov/codecov-action` from 6.0.1 to 7.0.0\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 actions-version-updates group with 3 updates (#8176)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-01T18:40:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "255ff7df10455004eb99984edb0605482379f6df",
"body": "Development features were released with cirq-1.7.0.\nNotebooks that need them can use stable Cirq.\n\nRef:\nhttps://github.com/quantumlib/Cirq/blob/main/docs/dev/notebooks.md#lifecycle",
"is_bot": false,
"headline": "Use stable Cirq in demo notebooks after cirq release (#8174)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-06-30T23:05:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d7f55d39b696ad85685314e8cf3a14fb22e4a3ca",
"body": null,
"is_bot": false,
"headline": "Bump cirq version to 1.8.0 (#8169)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-06-29T21:08:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bf0ed0c6ae86d270c0a5f9e108110c18797aa681",
"body": "Changes in this PR:\n\n- Fix a broken section cross-reference link\n- Update contributor number to \"over 250\"\n- Use shorter alternatives for links to Google Groups",
"is_bot": false,
"headline": "Fix small bugs in top-level README.md file (#8166)",
"author_name": "Michael Hucka",
"author_login": "mhucka",
"committed_at": "2026-06-28T22:15:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ae6959fdaf0d9c8f2898afd4359364e2d82f414c",
"body": "Remove deprecated objects with the `v1.7` deadline.\n\nRef:\nhttps://github.com/quantumlib/Cirq/blob/main/release.md#before-you-release-flush-the-deprecation-backlog",
"is_bot": false,
"headline": "Flush deprecations for the 1.7.0 release (#8165)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-06-27T03:12:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2fa26d0284a7dc0ba17be4b98bd64efe996bde34",
"body": "The histogram function uses base-2 by default, which gives incorrect\nresults for qudits.\nFor example, three qutrits, each measuring 2, give 7 instead of 26.\nI added an optional fold_base parameter to specify the qudit dimension.\nRaises ValueError if both fold_func and fold_base are passed.\n\nFixes #5926\n\n---------\n\nCo-authored-by: Pavol Juhas <juhas@google.com>",
"is_bot": false,
"headline": "Fix histogram() for qudits by adding fold_base parameter (#8138)",
"author_name": "Supash Ramesha",
"author_login": "Su760",
"committed_at": "2026-06-27T01:55:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cedfc6d9de2da3bb0abe1186bbd8460145ecfe45",
"body": "…n reverse (#8164)\n\nMake sure `cirq.stratified_circuit` has an exactly reversed operation\norder\nwhen checking the stratification in reverse. This avoids incorrect\nordering\nof classically-controlled and measurement operations.\n\nAlso add a transformers helper function `reverse_circuit` to\n`transformer_primitives` and reuse it in the `cirq.align_right`\ntransformer which needs a reversed circuit too.\n\nRelated to #6899\nFixes #7474",
"is_bot": false,
"headline": "Fix circuit reversal when searching for shortest stratified_circuit i…",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-06-26T23:07:08Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0bd08de54b21e329f5f8aea2fe27ff7dd25ebe74",
"body": "…8155)\n\nThis will allow us to have more room to add custom qubit corresponding\ninformation to the external users in the future. This change should be\nbackward and forward compatible\n\n---------\n\nCo-authored-by: Pavol Juhas <pavol.juhas@gmail.com>\nCo-authored-by: Pavol Juhas <juhas@google.com>",
"is_bot": false,
"headline": "Add qubit_attributes to GridDeviceMetadata and corresponding proto (#…",
"author_name": "Bicheng Ying",
"author_login": "BichengYing",
"committed_at": "2026-06-26T18:15:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f0e4c730711776997bb8871b44b57e9700b809e9",
"body": "For each PauliString term, row/col indices and phases are computed\ndirectly via bitwise ops on basis states to avoid Kron product.\n\nFor PauliSum, uses COO triplet accumulation instead of repeated CSR\naddition to avoid merging multiple sparse matrices.\n\nFixes #3057",
"is_bot": false,
"headline": "Add sparse_matrix() to PauliString and PauliSum (#8127)",
"author_name": "Shih-Cheng Tu",
"author_login": "ToastCheng",
"committed_at": "2026-06-25T19:01:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "498d35e20ff74ddc6ad06da4cc85213408fd4bd8",
"body": "This PR introduces the initial building blocks and helper functions\nrequired to support T-REX error mitigation in\npauli expectation calculation.\n\nThe change includes:\nImplement `_get_trex_twirled_basis_gate` to fetch the appropriate\nrotation gates (Rx, Ry, X, I) based on the target Pauli basis and f\n[…]\no generate randomized 2D\nboolean arrays for twirling operations.\nImplement `_build_trex_twirled_pauli_circuits` to append the appropriate\nbasis twirling gates and joint measurements to a base circuit.",
"is_bot": false,
"headline": "Add some utilities for T-rex error mitigation (#8095)",
"author_name": "ddddddanni",
"author_login": "ddddddanni",
"committed_at": "2026-06-25T17:10:09Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "d97892b990f59479874e6a5f72b6ef69a3f1d17d",
"body": "…rings (#8163)\n\nResolves #6630",
"is_bot": false,
"headline": "Add note that PauliSum does not preserve gate order of summed PauliSt…",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-06-25T00:28:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0f28d2eaee55ef94488c2f3692daabc4270e676a",
"body": "Address mutation check in cl/935515593",
"is_bot": false,
"headline": "Add test for text fontsize in SVG circuit diagrams (#8161)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-06-24T02:47:54Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "dc296ed4867a18b83b362ed760f2b6b709c73c74",
"body": "…ams/jobs if they are not found (#8151)\n\nhttp://b/510016374 surfaced issues where the existing recovery logic\nfrom stream failures cannot handle cases where programs/jobs were not\nsuccessfully created before the stream was terminated. This change\naddresses those cases by attempting to recreate programs/jobs during the\nrecovery process.",
"is_bot": false,
"headline": "When recovering from a failed stream, attempt to create missing progr…",
"author_name": "Michael",
"author_login": "hoisinberg",
"committed_at": "2026-06-23T22:47:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f98e5bdcc20255062561619d57fcd9fa38762ade",
"body": "* Add `setuptools` dependency to pytest.txt as it is imported\n in `dev_tools.modules` and associated tests\n\n* Cleanup dependencies in packaging.txt\n - `virtualenv` is not needed for packaging test\n - `wheel` is not needed for tests nor to run `pip wheel`\n\n* Use `bash` in ci-daily Pytest Windows so we have\n uniform command syntax on all platform\n\n* Also drop unnecessary sourcing of `dev_tools/pypath`\n\nFixes #8156",
"is_bot": false,
"headline": "Fix the ci-daily job (#8160)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-06-23T16:57:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "592c001bdd1014e1a901c9a3bd633f5236037bdf",
"body": "Setting the shape on a NumPy array has been deprecated in NumPy 2.5.\nHere we replace such instances with `np.reshape()`.\n\nThis fixes failure of the CI job \"Pytest Windows (3.13)\" due to\nunexpected deprecation warnings.",
"is_bot": false,
"headline": "Replace inplace assignment of NumPy array shape (#8159)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-06-23T00:10:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8cb539e2fd7df2b2ce5934a13c64ecfbab347953",
"body": null,
"is_bot": false,
"headline": "CI - use all runner CPUs in ci-daily and ci-weekly (#8149)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-06-18T03:44:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7cf89efb52118ce722b56bd1ea7dd7260b352baf",
"body": "This satisfies stimcirq requirement on cirq-core without duplicate\ninstallation of cirq-core. In addition, the python virtual environment\ngets to find all modules without having to source `dev_tools/pypath`.\n\nAlso remove contrib requirements from `deps/notebook.txt` so that\nthey do not get transitively included in `no-contrib.env.txt`.\nInstead, install `cirq-core[contrib]` explicitly in the CI job\nto satisfy notebooks that need the contrib packages.\n \nResolves #7891\nFollow-up to #6444",
"is_bot": false,
"headline": "For development install cirq-packages in an editable mode (#8148)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-06-18T03:26:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5b2b46bc2f55d71a26f90ca1c673bd1b6a9dfbd4",
"body": "In particular escape such characters when rendering NamedQubit.",
"is_bot": false,
"headline": "Escape xml characters in all svg text instructions (#8144)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-06-17T22:02:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6baa941c3fe04548559b10ff5b66fb2184bb8ddf",
"body": "Update spin echoes tutorial after MergeInteractionsToSqrtIswap removal\n\n- Replace `MergeInteractionsToSqrtIswap().optimize_circuit` in the\ntutorial code with `optimize_for_target_gateset`\n- Update the **Preparing circuits to run on QCS** section and replace\nthe saved optimized-circuit output with the new run result.\n\nFixes #6807",
"is_bot": false,
"headline": "Update spin echoes tutorial transformer usage (#8137)",
"author_name": "kataro92",
"author_login": "kataro92",
"committed_at": "2026-06-17T04:14:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a4e92af86642beeb62edab492db78d7dea1381c1",
"body": "Replace deprecated non-collection iterables in\n`@pytest.mark.parametrize`.\nAddress deprecation warning `PytestRemovedIn10Warning`.\n\nRef:\nhttps://docs.pytest.org/en/stable/deprecations.html#parametrize-iterators",
"is_bot": false,
"headline": "pytest - parametrize tests using collection containers only (#8142)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-06-17T02:23:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "835ca4bc9e4e0ec0fd79e639eff365a21d354e95",
"body": "Fixes: b/489787868\n\nWe want to make sure that passing a raw string for\n`device_config_revision`\ninstead of wrapping it in `Snapshot` or `Run` raises a clear error.\n\nPreviously:\n- `EngineProcessor.get_sampler` silently ignored string revisions and\nfell\n back to default behavior.\n- `EngineClient` con\n[…]\n`engine_client_test.py` to verify valid cases pass and invalid cases\n raise `TypeError`.\n\n---------\n\nCo-authored-by: Pavol Juhas <juhas@google.com>\nCo-authored-by: Pavol Juhas <pavol.juhas@gmail.com>",
"is_bot": false,
"headline": "Validate device_config_revision type in cirq-google (#8135)",
"author_name": "Patryk Kowalewski",
"author_login": "sirKaskadir",
"committed_at": "2026-06-16T00:53:54Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "780fe1fda856bad2253f5d201d96780e833bb6b9",
"body": "Avoid error in `add_dynamical_decoupling` when `PhasedXZGate` differs\nfrom a Clifford gate by small numerical round-off.\n\n---------\n\nCo-authored-by: Pavol Juhas <juhas@google.com>",
"is_bot": false,
"headline": "Make DD more stable (#8130)",
"author_name": "Noureldin",
"author_login": "NoureldinYosri",
"committed_at": "2026-06-13T15:14:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c80eb1dc763b24298b1dd1e32ee1f17db5e48013",
"body": "Update Scientific Python dependencies per NEP-29 and SPEC-0\n\n* drop numpy-2.0 per NEP-29 and SPEC-0\n* drop scipy-1.14 per SPEC-0\n* allow pandas-3.0 per SPEC-0 and adjust `pandas.crosstab`\n calls to work with both pandas-2 and pandas-3\n* drop ipython-8.25 per SPEC-0\n\nKeep Python 3.11 to preserve its\n[…]\n-3.9 to have compatibility with 2 minor releases.\n\nRefs:\n\n* https://numpy.org/neps/nep-0029-deprecation_policy.html\n* https://scientific-python.org/specs/spec-0000\n\nResolves #8059\nResolves b/500500986",
"is_bot": false,
"headline": "Update Scientific Python dependencies per NEP-29 and SPEC-0 (#8133)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-06-12T23:53:00Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "aec7393570bed88d942a0e7ef0337605ce057de4",
"body": "The type-ignore markup is not needed for recently\nreleased matplotlib-3.11 used at the CI runs.",
"is_bot": false,
"headline": "Fix typecheck - remove unnecessary type-ignore comment (#8136)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-06-12T22:58:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6922063c70b2ef6d1a13bc39a0921185cebfffeb",
"body": "…#8110)\n\nProblem: `BooleanHamiltonianGate._decompose_` parses boolean strings\nwith `sympy.parsing.sympy_parser.parse_expr` which uses Python `eval`\nand is thus vulnerable to RCE exploits in an untrusted input.\nBecause the gate is JSON-serializable a malicious input can be\nintroduced\nin a JSON serial\n[…]\nThis is sufficient, because the parsed expression is further passed to\n`PauliSum.from_boolean_expression` which allows only these constructs.\n\n---------\n\nCo-authored-by: Pavol Juhas <juhas@google.com>",
"is_bot": false,
"headline": "Fix RCE in BooleanHamiltonianGate decomposition (CWE-502 -> CWE-94) (…",
"author_name": "Quantova-Inc",
"author_login": "quantova-inc",
"committed_at": "2026-06-08T23:33:35Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "57ace8b2275511f64d1ed7e5228cae3b8a06e1d6",
"body": "- Bump typescript from 5.9.2 to 6.0.3\n- \n Remove deprecated option `downlevelIteration` from tsconfig.json.\n Also drop dependency on `webgpu/types` which are now provided\n with typescript 6.\n\n- Bump the non-security group with 7 updates\n- \n Updates `@types/jsdom` from 28.0.0 to 28.0.3\n Updates \n[…]\n.10 to 8.0.16\n Updates `vitest` from 4.1.5 to 4.1.8\n\n---------\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": false,
"headline": "Combine cirq-web dependabot updates (#8128)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-06-08T20:15:53Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "ba1b5789478dfe36c78524885691643403854965",
"body": null,
"is_bot": false,
"headline": "Allow top-level cirq_google.Snapshot and cirq_google.Run (#8126)",
"author_name": "eliottrosenberg",
"author_login": "eliottrosenberg",
"committed_at": "2026-06-05T18:15:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3db82dd72554582f521a4384c8e6d4ef92722c9d",
"body": "Comment and test-only edits per Khronos guidance and @mhucka review.\nAlso renames dummy_resource to mock_resource in aqt_sampler_test and\napplies black to _parser_test.py.",
"is_bot": false,
"headline": "Replace noninclusive dummy and sanity language (#8103) (#8120)",
"author_name": "ツンデレ",
"author_login": "rosspeili",
"committed_at": "2026-06-04T22:17:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "07f1195c279d2ead786f1b177e936bb421ed3973",
"body": "- Updates `actions/checkout` from 6.0.2 to 6.0.3\n- Updates `codecov/codecov-action` from 6.0.0 to 6.0.1\n- Updates `actions/stale` from 10.2.0 to 10.3.0\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 actions-version-updates group with 3 updates (#8117)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-04T17:44:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b29b6d4ee2c4c89d74dc2b9c5b2903d795357858",
"body": "- Update types-protobuf to allow the latest version 7\n\n- Update mypy-protobuf requirement to allow minor version 5.1\n- Rebuild Python protobuf code to sync with mypy-protobuf\n\n- Bump mypy from 1.20.0 to 2.1.0\n- Fix incorrect return value flagged by mypy-2.1.0\n\n- Bump black from 26.3.1 to 26.5.1\n\n- B\n[…]\n15.15\n- Fix ruff - UP018: Unnecessary `complex` call\n\n---------\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": false,
"headline": "Combine dependabot updates of Python packages (#8122)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-06-04T02:20:51Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a596e1cb7c6e6aa7187c4cb1f7fe426f78c9128b",
"body": "This updates our Triage Party configuration in various ways. On the web\npage itself:\n\n* Update the title of the Triage Party page\n* Change the overall look and feel, particularly the color scheme\n* Remove some sections we rarely use and do other navigation cleanup\n* Remove the \"reactions\" column fro\n[…]\ncon icon (using the Cirq logo)\n* Expand the README.md file to match the current scheme and add much\nmore info to help future maintainers\n\n---------\n\nCo-authored-by: Pavol Juhas <pavol.juhas@gmail.com>",
"is_bot": false,
"headline": "Update triage party configuration (#8080)",
"author_name": "Michael Hucka",
"author_login": "mhucka",
"committed_at": "2026-06-03T18:14:50Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "4738170485d1f9681917e1d1b14bb5f98f68c2b7",
"body": "This will be returned by the QuantumEngineService once calibration is\ncomplete. Full details here:\n[go/quantum-engine-qec-impl](http://go/quantum-engine-qec-impl)",
"is_bot": false,
"headline": "Proto used to hold the output of QEC circuit calibration (#8100)",
"author_name": "Michael",
"author_login": "hoisinberg",
"committed_at": "2026-06-01T22:32:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7edca25fb664ec89fe7b4873fcb38c424a39a909",
"body": "Comments from @pavoljuhas in\nhttps://github.com/quantumlib/Cirq/pull/8107",
"is_bot": false,
"headline": "Tweaks to lightcone filter test function (#8109)",
"author_name": "eliottrosenberg",
"author_login": "eliottrosenberg",
"committed_at": "2026-06-01T18:53:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "74abd87e7e108654c805079b111d3f5dd511e54d",
"body": "Co-authored-by: Pavol Juhas <juhas@google.com>",
"is_bot": false,
"headline": "Add lightcone filter transformer (#8107)",
"author_name": "eliottrosenberg",
"author_login": "eliottrosenberg",
"committed_at": "2026-05-30T04:01:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a9a16b6bf6d3bbd1ec7deb7a784353deab5c819b",
"body": "Fixes #8106",
"is_bot": false,
"headline": "Add docstring to the QubitManager abstract base class (#8108)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-05-30T00:08:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "defc9a0258b72b153d031701f31c35984d889249",
"body": "- This adds the LeakageISWAP gate to cirq_google.\n- This gate attempts to remove leakage by swapping |2>|0> and |1>|1>.\n- This gate is used by QEC experiments.\n- Has one parameter to specify whether this gate should be phase-matched\nor not.",
"is_bot": false,
"headline": "Add LeakageISWAP gate to cirq_google (#8099)",
"author_name": "Doug Strain",
"author_login": "dstrain115",
"committed_at": "2026-05-29T22:29:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "650016fe8e8bbecabe3b9e0b3c43255c325a6b44",
"body": "- This gate is needed for QEC experiment and allows resets with circuits\nwith many rounds of measure\nand reset.",
"is_bot": false,
"headline": "Add LZSResetViaResonator Gate to Cirq-google (#8093)",
"author_name": "Doug Strain",
"author_login": "dstrain115",
"committed_at": "2026-05-27T20:43:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6527aabbf64c231e919514ea28a443129b6edad9",
"body": "- This adds a new function analogous to results() that returns results\naccording to the batch.\n- Normal results() call returns all results in a flat list\n- For batches, this is confusing, and the order is not clear.\n- This function organizes the results into a list of lists organized by\nthe execution of the (batched) circuits.",
"is_bot": false,
"headline": "Add quantum engine batched_results() (#8092)",
"author_name": "Doug Strain",
"author_login": "dstrain115",
"committed_at": "2026-05-27T16:11:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fe135f6ba37f7c6c4d78e34fa5c1ae4cd500a8fa",
"body": "Problem: In a parallel pytest session several papermill jobs may start\njupyter kernels simultaneously resulting in a race condition when\nlooking\nfor free local ports. This shows as test failure with\n\"Kernel died before replying to kernel_info\" error.\n\nSolution: Introduce 1 second delay between cons\n[…]\ndelay is still needed.\n\nVerification: The following run has a flaky failure before this fix\n\n```\nfor i in {1..8}; do\n check/pytest -n8 -m slow dev_tools/notebooks/notebook_test.py || break\ndone\n```",
"is_bot": false,
"headline": "Deflake notebook_test when run in parallel (#8090)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-05-27T02:18:12Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "503a24622d6803a1b94cfe7579b069a3660c9ff2",
"body": "- This gate will perform a reset by using the resonator.\n- This gate will be used for QEC experiments where there are multiple\nrounds of measure and reset.",
"is_bot": false,
"headline": "Adds MultilevelResetViaResonator gate to cirq_google (#8089)",
"author_name": "Doug Strain",
"author_login": "dstrain115",
"committed_at": "2026-05-26T19:52:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f4c35b02090bfce960e8fd880037b61dcf7f5d8f",
"body": "This CL adds support for running batch jobs with different repetitions\nfor\n different circuits in the batch. This is supported across the v2\nserialization API, the Engine client, and the local simulated processor.\n\n This updates function signatures to accept Sequence[int] where\nnecessary, and retrieves the proper repetitions if multiple repetitions\nare provided. Updated _deserialize_run_context to extract and return a\nlist of repetitions (one per parameter sweep) instead of a single\ninteger.",
"is_bot": false,
"headline": "Support non-uniform repetitions in batch jobs (#8088)",
"author_name": "Doug Strain",
"author_login": "dstrain115",
"committed_at": "2026-05-21T23:55:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5f5c5ae88004a7ef5829b3037e1505949efd8383",
"body": "Problem: On internal testing framework factoring of 4-qubit\nsub-state fails due to round-off errors exceeding `atol`.\n\nSolution: Increase `atol` for the affected `sub_state_vector` calls.\n\nRelated to cl/916680210",
"is_bot": false,
"headline": "Fix internal sub_state_vector test failure due to tight atol (#8085)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-05-21T23:13:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d1cab3559fdb181633b8bacf8b964ee43dc54c79",
"body": "Prevent `cirq_google.engine` tests from connecting to the actual\nservices with local user credentials. Tell gcloud to use empty\nconfiguration directory instead of user configuration and also\nunset `GOOGLE_APPLICATION_CREDENTIALS` from the environment.\n\nRef:\nhttps://google-auth.readthedocs.io/en/latest/reference/google.auth.html\n\nMay resolve b/511678310",
"is_bot": false,
"headline": "Disable local Google Cloud credentials in cirq-google tests (#8083)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-05-21T16:36:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "15e1e5daf6425079c0e19335afecdcf3e4e43f45",
"body": "Problem: The suggested `mock.patch.dict(os.environ,\nclear='CIRQ_TESTING')`\nempties the environment, because `clear` is a boolean flag.\n\nSolution: Require `os.environ[\"CIRQ_TESTING\"] == \"true\"` to mark up\nactive\ntest session. This allows `mock.patch.dict` to change CIRQ_TESTING value\nto \"false\" instead of having to remove it from the environment.",
"is_bot": false,
"headline": "Fix patching of `CIRQ_TESTING` environment variable (#8084)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-05-21T15:52:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bde5ffa66e50a5210593e80580ffb5434d1e478c",
"body": "- Fix Program.get_circuit to give more descriptive error messages.\n- Fix batch_size() to work with multiple circuits.\n- Fix get_repetitions_and_sweeps to work with multi-circuits.\n- Add get_circuits() to get all the circuits.",
"is_bot": false,
"headline": "Fix issues with multi-circuit size in Engine (#8076)",
"author_name": "Doug Strain",
"author_login": "dstrain115",
"committed_at": "2026-05-20T20:39:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3bc60a870f7b3e6c23355701abbe2a16e2de600d",
"body": "This commit implements the postselection symmetry functionality in\n`CircuitToPauliStringsParameters`. Circuits provided with\n`postselection_symmetries` will now successfully filter measurement\nresults based on the expected eigenvalues rather than defaulting to the\nconfusion matrix method.\n\n---------\n\nCo-authored-by: Pavol Juhas <juhas@google.com>",
"is_bot": false,
"headline": "(2/2) Combine Pauli measurements and postselection (#7970)",
"author_name": "ddddddanni",
"author_login": "ddddddanni",
"committed_at": "2026-05-19T01:31:36Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "be76e86b3442f7e36f1a5a6fb9cc87fa1091a65a",
"body": "Change `_group_into_moment_compatible` to take into account measurement\nand control keys. Otherwise two incompatible operations can be put in\nthe same moment.\nI also changed `_can_add_op_at` to look at measurement and control keys.\nI added unit tests that show the issue.\n\n---------\n\nCo-authored-by: Pavol Juhas <juhas@google.com>",
"is_bot": false,
"headline": "Fix bug in circuit.insert (#7823)",
"author_name": "codrut3",
"author_login": "codrut3",
"committed_at": "2026-05-18T19:58:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ccf35e6d09cd42b088ec7b52e26d8acd7e70aacb",
"body": "Problem: The `atol` used in a test of `sub_state_vector` cannot simulate\nlow precision when the largest eigenvalue equals 1.\n\nSolution: Test with `imperfect_state` with a small artificial errors.",
"is_bot": false,
"headline": "Fix ci-daily run on windows-2022 (#8082)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-05-18T19:45:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7228447cc657467fa52f6d8c2a6b99c3d10fbfee",
"body": "- Verify the maximum eigenvalue is indeed close to 1.\n\n- Enable arbitrary order of `keep_indices` as before.\n\n- Use the same tolerance check as before #8077 with rtol=0.\n This allows to restore previous tests instead of having\n to do them with larger state vector deviation.\n\n- Put back RaiseValueErrorIfNotProvided as a default for\n`sub_state_vector`.\n This allows using `None` for the fallback return value.\n \n- Add check for negative values in `keep_indices`.\n\nFollow-up to #8077",
"is_bot": false,
"headline": "Clean up recent changes in sub_state_vector (#8081)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-05-15T22:42:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "02e927f2a4d848692c2787cca185f948d65e86cc",
"body": "The current implementation appears to be exponential in space and time.\nThe present change, due originally to jamieas@google.com, replaces\npython loops with numpy functions motivated by standard methods for\ncomputing partial traces. The change is runnable in Colab, including\ntests and a performance benchmark, at\n\n\nhttps://colab.sandbox.google.com/drive/1qWJTnlT6hPXI8cQsTwyqQveEtn7fGhNc?resourcekey=0-67OmbvgwTlf9fnKp3ppbrw\n\n---------\n\nCo-authored-by: Anton Kast <akast@google.com>",
"is_bot": false,
"headline": "Sub state vector (#8077)",
"author_name": "Anton Kast",
"author_login": "AntonKast",
"committed_at": "2026-05-15T19:04:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bf16378d26f60cc9278c2af9494bc703c67215b7",
"body": "Problem: In `check/all --fix` the `ruff check` may flag long lines\nbefore they get wrapped by format-incremental. The process\nthen returns error status for code that was all fixed up.\n\nSolution: Fix code formatting before running `ruff check`.",
"is_bot": false,
"headline": "Improve fixup order in `check/all --fix` (#8079)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-05-15T19:01:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "76910aae8696c2afaeedc914d86c8437d12aaf92",
"body": "Does what it says on the title.\n\nFixes #8073",
"is_bot": false,
"headline": "Fix broken IonQ links (#8075)",
"author_name": "nate stemen",
"author_login": "natestemen",
"committed_at": "2026-05-11T21:38:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c7e91ced61075c80951a88cd6aff9bd89adbfc18",
"body": "- Bump the non-security group with 6 updates\n\n Updates `@types/node` from 25.5.0 to 25.6.0\n Updates `@vitest/coverage-v8` from 4.1.2 to 4.1.5\n Updates `puppeteer` from 24.40.0 to 24.42.0\n Updates `three` from 0.183.2 to 0.184.0\n Updates `@types/three` from 0.183.1 to 0.184.0\n Updates `vitest` \n[…]\nm 4.17.23 to 4.18.1\n\n- Bump vite from 7.3.1 to 7.3.2\n\n---------\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": false,
"headline": "Combine cirq-web dependabot updates (#8070)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-05-05T06:41:04Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "77533197a98d6fa971a4fbfeae984ca3b20e967b",
"body": "…s (#8045)\n\nThis amounts to a simple bit of micro-optimization. With the help of\nGemini, I looked for cases where a specific type of matrix assignment\nwas implemented in a `for` loop that could be rewritten to use a Boolean\nmask and vectorized assignment. There were a few cases, and that's what\nthis PR is about.\n\n---------\n\nCo-authored-by: Pavol Juhas <juhas@google.com>",
"is_bot": false,
"headline": "Replace specific loops with Boolean masking and vectorized assignment…",
"author_name": "Michael Hucka",
"author_login": "mhucka",
"committed_at": "2026-05-05T03:31:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b448a280cf1c3bce6f2085038bc4be3c12d51bf0",
"body": "Bumps the actions-version-updates group with 2 updates\n\n- Updates `actions/upload-artifact` from 7.0.0 to 7.0.1\n- Updates `actions/setup-node` from 6.3.0 to 6.4.0\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 actions-version-updates group with 2 updates (#8062)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-05-04T22:45:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "852f92e5153d534075ffc7846d6cdca78058e38f",
"body": "- Change to a local reference speeds Moment creation by about 5%.\n- Not much, but it is a common operation.",
"is_bot": false,
"headline": "Micro optimization to Moment initialization. (#8069)",
"author_name": "Doug Strain",
"author_login": "dstrain115",
"committed_at": "2026-05-04T13:52:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "316494302937281770fed6d4839a5892cdcc7fde",
"body": "Conversion to the draft state requires `contents-write`.\nThe `issues-write` permission was redundant.\n\nFollow-up to #8066",
"is_bot": false,
"headline": "CI - adjust permission for the label-dependabot-pr job (#8068)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-05-02T00:25:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0696268add6e7f18a069b56eb96b350a5249743b",
"body": "Write permissions are required for modifying dependabot PRs.",
"is_bot": false,
"headline": "CI - add missing permissions to the label-dependabot-pr job (#8066)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-05-01T20:21:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "af4e48d683c9e9234bc4c8a4aad0bf8eda7875e3",
"body": "The `circuit_left` argument of `move_pauli_strings_into_circuit`\nshould contain only a PauliStringPhasor-type operations.\nRaise exception if that is not the case.\n\nFixes #7934\n\n---------\n\nCo-authored-by: Pavol Juhas <juhas@google.com>",
"is_bot": false,
"headline": "Add argument check to `move_pauli_strings_into_circuit` (#7985)",
"author_name": "William",
"author_login": "Acciaccatura",
"committed_at": "2026-04-29T17:36:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "de662628454e9900b8433efa9b382921bf568177",
"body": "- ProcessorSampler incorrectly reconstructs the results from Quantum\nEngine. It incorrectly assumes that the engine returns results\ninterleaved by sweep point (e.g., S1_P1, S1_P2, S2_P1, S2_P2), when the\nengine actually returns them grouped by program (e.g., P1_S1, P1_S2,\nP2_S1, P2_S2).\n- This causes the results to be returned incorrectly if\njobs_per_batch>1.",
"is_bot": false,
"headline": "Fix ordering in Engine.run_batch (#8060)",
"author_name": "Doug Strain",
"author_login": "dstrain115",
"committed_at": "2026-04-29T15:33:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f55763cb1a5a0743701572795c8fa1626a50b923",
"body": "- Updates AbstractJob and AbstractProgram to allow an optional circuit\nindex. For multi-circuit, this will index into the keyed_circuit proto.\n- Updates EngineJob and EngineProgram to support the implementation.\n- AbstractLocalJob to allow a fake/mock to support local simulator and\ntests.",
"is_bot": false,
"headline": "Add multi-circuit capability to EngineJob.get_circuit (#8057)",
"author_name": "Doug Strain",
"author_login": "dstrain115",
"committed_at": "2026-04-28T19:52:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c73d890d21d3316a733568a4578b5a66f2f55e96",
"body": "This fix addresses the flaky tests in engine_processor_test.py as\nexplained in #7851.\nThe tests are fixed by mocking the `datetime.datetime` class with a\nsubclass\n`_FrozenDateTime` to make `datetime.datetime.now()` return a constant.\n\nI reproduced the issue by adding `import time; time.sleep(1)` to \n[…]\nst_reservations_time_filter_behavior` and confirmed that the fix\nworks for both cases (though I removed the sleeps for this pr).\n\nFixes #7851\n\n---------\n\nCo-authored-by: Pavol Juhas <juhas@google.com>",
"is_bot": false,
"headline": "Fix flaky EngineProcessor time filter tests (#8058)",
"author_name": "Sena Gul Hazir",
"author_login": "senahazir",
"committed_at": "2026-04-27T21:24:06Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "f5300e02fc2dadd32c13b12603ed74f58b8cecac",
"body": "… axis (#8053)\n\nThis changes the way we canonicalize `PhasedXZGate` exponents for\npi-pulses (x_exponent=1) so that we preserve the axis of rotation of pi\npulses as much as possible, and don't treat different pi pulses as\n\"equal\" to each other. Pi pulses are important for things like dynamical\ndecoup\n[…]\ne these distinctions.\n\nNote that there was some discussion of the canonicalization in the\noriginal implementation of the phased xz gate:\nhttps://github.com/quantumlib/Cirq/pull/2566/changes#r348222277",
"is_bot": false,
"headline": "Change canonicalization of PhasedXZGate to preserve pi-pulse rotation…",
"author_name": "Matthew Neeley",
"author_login": "maffoo",
"committed_at": "2026-04-27T19:37:50Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "2821085f804e9446a1a399f6c612b2e4275e12f1",
"body": "This PR replaces closed PR#7514. It fixes issue #7031 by updating\n`.github/CODEOWNERS`. Summary of main changes:\n\n- Prefer the use of teams instead of individual user names for most\ncases. This will allow us to adjust permissions via GitHub team\ncontrols; in addition, it will let us use GitHub team \n[…]\nrts to each one.\n\n(Note to reviewers: the new teams were created today, and not all\nmembers have accepted invitations yet. Beware that the team listings\nwill look incomplete due to this.)\n\nFixes #7031",
"is_bot": false,
"headline": "Update `.github/CODEOWNERS` file (#8055)",
"author_name": "Michael Hucka",
"author_login": "mhucka",
"committed_at": "2026-04-27T03:40:04Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "aff3efc722879147dfcc0c997b8c137c390595ba",
"body": "Replaced string concatenation using `+=` with list-based accumulation\nand a `\"\".join()` in `CliffordTableau.__str__()` and\n`_row_to_dense_pauli()`. This should improve performance from O(n^2) to\nO(n) for the string building operations in that function.",
"is_bot": false,
"headline": "Improve inefficient string concatenation in clifford_tableu.py (#8044)",
"author_name": "Michael Hucka",
"author_login": "mhucka",
"committed_at": "2026-04-22T20:02:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c40e01dac2a8261b65fabe3b15317d523a20aa84",
"body": "…m.run_sweep() (#8048)\n\nInternal request by @eliottrosenberg to have program.run() return an\nEngineJob, rather than having the function wait for the EngineJob to\ncomplete before returning.\n\nThis interface makes it consistent with existing program.run_sweep()\n\nFixes b/495930398",
"is_bot": false,
"headline": "Make program.run() return an EngineJob so it's consistent with progra…",
"author_name": "Matt Wenner",
"author_login": "mattwenner",
"committed_at": "2026-04-22T18:44:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fdf7e5093076ed11e088c2862062b9fd346574d5",
"body": "…e. (#8036)\n\n- Allow the client to accept a jobs_per_batch which batches multiple\ncircuits within the same request.\n- Adjusts the signature of the functions accordingly to match that this\ncould include a mapping or sequence of circuits.\n\nSee internal bug: b/500927996",
"is_bot": false,
"headline": "All multi-circuit programs to be batched in the same request in Engin…",
"author_name": "Doug Strain",
"author_login": "dstrain115",
"committed_at": "2026-04-22T17:39:05Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "89993a988cdc7a1442fade0d11f5d196358ece0c",
"body": "- Delete asv benchmarks and configuration files as they were\n were already converted to `*_perf.py` files.\n- Update benchmarks/README to with pytest-benchmark instructions.\n\nResolves #7796",
"is_bot": false,
"headline": "Finalize conversion from asv to pytest-benchmark (#8051)",
"author_name": "Pavol Juhas",
"author_login": "pavoljuhas",
"committed_at": "2026-04-21T01:37:04Z",
"body_truncated": false,
"is_coding_agent": false
}
],
"releases_count": 31,
"commits_last_year": 408,
"latest_release_at": "2026-06-30T18:44:40Z",
"latest_release_tag": "v1.7.0",
"releases_from_tags": false,
"days_since_last_push": 0,
"active_weeks_last_year": 52,
"days_since_latest_release": 28,
"mean_days_between_releases": 160.3
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": true,
"has_contributing": true,
"health_percentage": 100,
"has_issue_template": false,
"has_code_of_conduct": true,
"has_pull_request_template": false
},
"ecosystem": {
"packages": [
{
"name": "cirq",
"exists": true,
"license": "Apache-2.0",
"keywords": [
"algorithms",
"api",
"cirq",
"google",
"google quantum",
"nisq",
"python",
"quantum",
"quantum algorithms",
"quantum circuit",
"quantum circuit simulator",
"quantum computer simulator",
"quantum computing",
"quantum development kit",
"quantum information",
"quantum programming",
"quantum programming language",
"quantum simulation",
"sdk",
"simulation",
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"Intended Audience :: Education",
"Intended Audience :: Science/Research",
"Operating System :: MacOS :: MacOS X",
"Operating System :: Microsoft :: Windows",
"Operating System :: POSIX :: Linux",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Topic :: Scientific/Engineering :: Quantum Computing",
"Topic :: Software Development :: Libraries :: Python Modules",
"Typing :: Typed"
],
"ecosystem": "pypi",
"matches_repo": true,
"registry_url": "https://pypi.org/project/cirq/",
"is_deprecated": false,
"latest_version": "1.7.0",
"repository_url": "http://github.com/quantumlib/cirq",
"versions_count": 2729,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": "2018-07-18T22:41:40.471226Z",
"latest_published_at": "2026-06-29T22:27:00.820868Z",
"latest_version_yanked": null,
"days_since_latest_publish": 29
},
{
"name": "cirq-aqt",
"exists": true,
"license": "Apache-2.0",
"keywords": [
"algorithms",
"api",
"cirq",
"google",
"google quantum",
"nisq",
"python",
"quantum",
"quantum algorithms",
"quantum circuit",
"quantum circuit simulator",
"quantum computer simulator",
"quantum computing",
"quantum development kit",
"quantum information",
"quantum programming",
"quantum programming language",
"quantum simulation",
"sdk",
"simulation",
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"Intended Audience :: Education",
"Intended Audience :: Science/Research",
"Operating System :: MacOS :: MacOS X",
"Operating System :: Microsoft :: Windows",
"Operating System :: POSIX :: Linux",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Topic :: Scientific/Engineering :: Quantum Computing",
"Topic :: Software Development :: Libraries :: Python Modules",
"Typing :: Typed"
],
"ecosystem": "pypi",
"matches_repo": true,
"registry_url": "https://pypi.org/project/cirq-aqt/",
"is_deprecated": false,
"latest_version": "1.7.0",
"repository_url": "http://github.com/quantumlib/cirq",
"versions_count": 2367,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": "2021-06-12T19:59:23.495587Z",
"latest_published_at": "2026-06-29T22:26:52.784509Z",
"latest_version_yanked": null,
"days_since_latest_publish": 29
},
{
"name": "cirq-web",
"exists": true,
"license": "Apache-2.0",
"keywords": [
"algorithms",
"api",
"cirq",
"google",
"google quantum",
"nisq",
"python",
"quantum",
"quantum algorithms",
"quantum circuit",
"quantum circuit simulator",
"quantum computer simulator",
"quantum computing",
"quantum development kit",
"quantum information",
"quantum programming",
"quantum programming language",
"quantum simulation",
"sdk",
"simulation",
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"Intended Audience :: Education",
"Intended Audience :: Science/Research",
"Operating System :: MacOS :: MacOS X",
"Operating System :: Microsoft :: Windows",
"Operating System :: POSIX :: Linux",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Topic :: Scientific/Engineering :: Quantum Computing",
"Topic :: Software Development :: Libraries :: Python Modules",
"Typing :: Typed"
],
"ecosystem": "pypi",
"matches_repo": true,
"registry_url": "https://pypi.org/project/cirq-web/",
"is_deprecated": false,
"latest_version": "1.7.0",
"repository_url": "http://github.com/quantumlib/cirq",
"versions_count": 2332,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": "2021-07-02T23:17:16.157459Z",
"latest_published_at": "2026-06-29T22:26:59.303605Z",
"latest_version_yanked": null,
"days_since_latest_publish": 29
},
{
"name": "cirq-core",
"exists": true,
"license": "Apache-2.0",
"keywords": [
"algorithms",
"api",
"cirq",
"google",
"google quantum",
"nisq",
"python",
"quantum",
"quantum algorithms",
"quantum circuit",
"quantum circuit simulator",
"quantum computer simulator",
"quantum computing",
"quantum development kit",
"quantum information",
"quantum programming",
"quantum programming language",
"quantum simulation",
"sdk",
"simulation",
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"Intended Audience :: Education",
"Intended Audience :: Science/Research",
"Operating System :: MacOS :: MacOS X",
"Operating System :: Microsoft :: Windows",
"Operating System :: POSIX :: Linux",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Topic :: Scientific/Engineering :: Quantum Computing",
"Topic :: Software Development :: Libraries :: Python Modules",
"Typing :: Typed"
],
"ecosystem": "pypi",
"matches_repo": true,
"registry_url": "https://pypi.org/project/cirq-core/",
"is_deprecated": false,
"latest_version": "1.7.0",
"repository_url": "http://github.com/quantumlib/cirq",
"versions_count": 2447,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": "2021-04-19T22:44:45.893052Z",
"latest_published_at": "2026-06-29T22:26:51.045510Z",
"latest_version_yanked": null,
"days_since_latest_publish": 29
},
{
"name": "cirq-ionq",
"exists": true,
"license": "Apache-2.0",
"keywords": [
"algorithms",
"api",
"cirq",
"google",
"google quantum",
"nisq",
"python",
"quantum",
"quantum algorithms",
"quantum circuit",
"quantum circuit simulator",
"quantum computer simulator",
"quantum computing",
"quantum development kit",
"quantum information",
"quantum programming",
"quantum programming language",
"quantum simulation",
"sdk",
"simulation",
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"Intended Audience :: Education",
"Intended Audience :: Science/Research",
"Operating System :: MacOS :: MacOS X",
"Operating System :: Microsoft :: Windows",
"Operating System :: POSIX :: Linux",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Topic :: Scientific/Engineering :: Quantum Computing",
"Topic :: Software Development :: Libraries :: Python Modules",
"Typing :: Typed"
],
"ecosystem": "pypi",
"matches_repo": true,
"registry_url": "https://pypi.org/project/cirq-ionq/",
"is_deprecated": false,
"latest_version": "1.7.0",
"repository_url": "http://github.com/quantumlib/cirq",
"versions_count": 2356,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": 107471,
"first_published_at": "2021-06-21T20:38:54.288308Z",
"latest_published_at": "2026-06-29T22:26:54.722378Z",
"latest_version_yanked": null,
"days_since_latest_publish": 29
},
{
"name": "cirq-google",
"exists": true,
"license": "Apache-2.0",
"keywords": [
"algorithms",
"api",
"cirq",
"google",
"google quantum",
"nisq",
"python",
"quantum",
"quantum algorithms",
"quantum circuit",
"quantum circuit simulator",
"quantum computer simulator",
"quantum computing",
"quantum development kit",
"quantum information",
"quantum programming",
"quantum programming language",
"quantum simulation",
"sdk",
"simulation",
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"Intended Audience :: Education",
"Intended Audience :: Science/Research",
"Operating System :: MacOS :: MacOS X",
"Operating System :: Microsoft :: Windows",
"Operating System :: POSIX :: Linux",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Topic :: Scientific/Engineering :: Quantum Computing",
"Topic :: Software Development :: Libraries :: Python Modules",
"Typing :: Typed"
],
"ecosystem": "pypi",
"matches_repo": true,
"registry_url": "https://pypi.org/project/cirq-google/",
"is_deprecated": false,
"latest_version": "1.7.0",
"repository_url": "http://github.com/quantumlib/cirq",
"versions_count": 2451,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": "2021-04-19T22:44:44.182933Z",
"latest_published_at": "2026-06-29T22:26:57.314224Z",
"latest_version_yanked": null,
"days_since_latest_publish": 29
},
{
"name": "cirq-pasqal",
"exists": true,
"license": "Apache-2.0",
"keywords": [
"algorithms",
"api",
"cirq",
"google",
"google quantum",
"nisq",
"python",
"quantum",
"quantum algorithms",
"quantum circuit",
"quantum circuit simulator",
"quantum computer simulator",
"quantum computing",
"quantum development kit",
"quantum information",
"quantum programming",
"quantum programming language",
"quantum simulation",
"sdk",
"simulation",
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"Intended Audience :: Education",
"Intended Audience :: Science/Research",
"Operating System :: MacOS :: MacOS X",
"Operating System :: Microsoft :: Windows",
"Operating System :: POSIX :: Linux",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Topic :: Scientific/Engineering :: Quantum Computing",
"Topic :: Software Development :: Libraries :: Python Modules",
"Typing :: Typed"
],
"ecosystem": "pypi",
"matches_repo": true,
"registry_url": "https://pypi.org/project/cirq-pasqal/",
"is_deprecated": false,
"latest_version": "1.7.0",
"repository_url": "http://github.com/quantumlib/cirq",
"versions_count": 2336,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": "2021-06-30T00:58:18.563564Z",
"latest_published_at": "2026-06-29T22:26:55.909810Z",
"latest_version_yanked": null,
"days_since_latest_publish": 29
}
]
},
"popularity": {
"forks": 1252,
"stars": 5026,
"watchers": 191,
"fork_history": {
"days": [
{
"date": "2019-08-14",
"count": 1
},
{
"date": "2019-08-15",
"count": 1
},
{
"date": "2019-08-20",
"count": 1
},
{
"date": "2019-08-23",
"count": 1
},
{
"date": "2019-08-24",
"count": 1
},
{
"date": "2019-08-29",
"count": 1
},
{
"date": "2019-08-30",
"count": 1
},
{
"date": "2019-09-04",
"count": 1
},
{
"date": "2019-09-11",
"count": 1
},
{
"date": "2019-09-13",
"count": 1
},
{
"date": "2019-09-15",
"count": 2
},
{
"date": "2019-09-16",
"count": 1
},
{
"date": "2019-09-18",
"count": 2
},
{
"date": "2019-09-19",
"count": 2
},
{
"date": "2019-09-20",
"count": 2
},
{
"date": "2019-09-21",
"count": 1
},
{
"date": "2019-09-23",
"count": 2
},
{
"date": "2019-09-25",
"count": 1
},
{
"date": "2019-09-27",
"count": 2
},
{
"date": "2019-09-30",
"count": 2
},
{
"date": "2019-10-04",
"count": 1
},
{
"date": "2019-10-10",
"count": 1
},
{
"date": "2019-10-14",
"count": 1
},
{
"date": "2019-10-17",
"count": 1
},
{
"date": "2019-10-19",
"count": 1
},
{
"date": "2019-10-20",
"count": 1
},
{
"date": "2019-10-21",
"count": 1
},
{
"date": "2019-10-23",
"count": 1
},
{
"date": "2019-10-24",
"count": 5
},
{
"date": "2019-10-25",
"count": 1
},
{
"date": "2019-10-26",
"count": 1
},
{
"date": "2019-10-28",
"count": 2
},
{
"date": "2019-10-30",
"count": 1
},
{
"date": "2019-10-31",
"count": 1
},
{
"date": "2019-11-02",
"count": 1
},
{
"date": "2019-11-04",
"count": 1
},
{
"date": "2019-11-06",
"count": 1
},
{
"date": "2019-11-08",
"count": 2
},
{
"date": "2019-11-09",
"count": 1
},
{
"date": "2019-11-12",
"count": 1
},
{
"date": "2019-11-15",
"count": 1
},
{
"date": "2019-11-17",
"count": 1
},
{
"date": "2019-11-19",
"count": 1
},
{
"date": "2019-11-20",
"count": 1
},
{
"date": "2019-11-22",
"count": 1
},
{
"date": "2019-11-24",
"count": 1
},
{
"date": "2019-11-26",
"count": 2
},
{
"date": "2019-11-27",
"count": 1
},
{
"date": "2019-12-01",
"count": 1
},
{
"date": "2019-12-04",
"count": 2
},
{
"date": "2019-12-06",
"count": 1
},
{
"date": "2019-12-07",
"count": 1
},
{
"date": "2019-12-10",
"count": 1
},
{
"date": "2019-12-13",
"count": 1
},
{
"date": "2019-12-17",
"count": 1
},
{
"date": "2019-12-18",
"count": 1
},
{
"date": "2019-12-27",
"count": 2
},
{
"date": "2019-12-29",
"count": 1
},
{
"date": "2020-01-03",
"count": 1
},
{
"date": "2020-01-14",
"count": 1
},
{
"date": "2020-01-16",
"count": 1
},
{
"date": "2020-01-17",
"count": 1
},
{
"date": "2020-01-19",
"count": 1
},
{
"date": "2020-01-20",
"count": 1
},
{
"date": "2020-01-21",
"count": 1
},
{
"date": "2020-01-24",
"count": 1
},
{
"date": "2020-01-27",
"count": 1
},
{
"date": "2020-01-30",
"count": 1
},
{
"date": "2020-02-03",
"count": 1
},
{
"date": "2020-02-04",
"count": 2
},
{
"date": "2020-02-06",
"count": 1
},
{
"date": "2020-02-10",
"count": 1
},
{
"date": "2020-02-12",
"count": 1
},
{
"date": "2020-02-13",
"count": 1
},
{
"date": "2020-02-15",
"count": 1
},
{
"date": "2020-02-16",
"count": 1
},
{
"date": "2020-02-19",
"count": 1
},
{
"date": "2020-02-20",
"count": 1
},
{
"date": "2020-02-23",
"count": 1
},
{
"date": "2020-02-24",
"count": 2
},
{
"date": "2020-02-28",
"count": 1
},
{
"date": "2020-03-04",
"count": 1
},
{
"date": "2020-03-09",
"count": 3
},
{
"date": "2020-03-10",
"count": 3
},
{
"date": "2020-03-11",
"count": 2
},
{
"date": "2020-03-12",
"count": 1
},
{
"date": "2020-03-14",
"count": 1
},
{
"date": "2020-03-16",
"count": 1
},
{
"date": "2020-03-18",
"count": 1
},
{
"date": "2020-03-19",
"count": 1
},
{
"date": "2020-03-23",
"count": 1
},
{
"date": "2020-03-27",
"count": 2
},
{
"date": "2020-03-31",
"count": 2
},
{
"date": "2020-04-01",
"count": 1
},
{
"date": "2020-04-03",
"count": 1
},
{
"date": "2020-04-05",
"count": 1
},
{
"date": "2020-04-06",
"count": 2
},
{
"date": "2020-04-11",
"count": 1
},
{
"date": "2020-04-14",
"count": 1
},
{
"date": "2020-04-21",
"count": 1
},
{
"date": "2020-04-22",
"count": 2
},
{
"date": "2020-04-28",
"count": 2
},
{
"date": "2020-05-01",
"count": 1
},
{
"date": "2020-05-03",
"count": 2
},
{
"date": "2020-05-04",
"count": 1
},
{
"date": "2020-05-05",
"count": 1
},
{
"date": "2020-05-06",
"count": 1
},
{
"date": "2020-05-10",
"count": 1
},
{
"date": "2020-05-14",
"count": 1
},
{
"date": "2020-05-15",
"count": 1
},
{
"date": "2020-05-16",
"count": 1
},
{
"date": "2020-05-20",
"count": 1
},
{
"date": "2020-05-21",
"count": 1
},
{
"date": "2020-05-23",
"count": 1
},
{
"date": "2020-05-30",
"count": 3
},
{
"date": "2020-05-31",
"count": 1
},
{
"date": "2020-06-01",
"count": 1
},
{
"date": "2020-06-03",
"count": 2
},
{
"date": "2020-06-05",
"count": 1
},
{
"date": "2020-06-06",
"count": 1
},
{
"date": "2020-06-10",
"count": 2
},
{
"date": "2020-06-12",
"count": 1
},
{
"date": "2020-06-13",
"count": 1
},
{
"date": "2020-06-15",
"count": 1
},
{
"date": "2020-06-18",
"count": 1
},
{
"date": "2020-06-19",
"count": 1
},
{
"date": "2020-06-21",
"count": 1
},
{
"date": "2020-06-25",
"count": 1
},
{
"date": "2020-06-28",
"count": 1
},
{
"date": "2020-07-12",
"count": 2
},
{
"date": "2020-07-21",
"count": 1
},
{
"date": "2020-07-22",
"count": 2
},
{
"date": "2020-07-23",
"count": 2
},
{
"date": "2020-07-24",
"count": 1
},
{
"date": "2020-07-28",
"count": 1
},
{
"date": "2020-07-29",
"count": 1
},
{
"date": "2020-08-03",
"count": 1
},
{
"date": "2020-08-05",
"count": 1
},
{
"date": "2020-08-11",
"count": 1
},
{
"date": "2020-08-14",
"count": 1
},
{
"date": "2020-08-22",
"count": 1
},
{
"date": "2020-08-27",
"count": 1
},
{
"date": "2020-09-02",
"count": 1
},
{
"date": "2020-09-09",
"count": 2
},
{
"date": "2020-09-11",
"count": 1
},
{
"date": "2020-09-12",
"count": 1
},
{
"date": "2020-09-13",
"count": 1
},
{
"date": "2020-09-15",
"count": 1
},
{
"date": "2020-09-22",
"count": 1
},
{
"date": "2020-09-24",
"count": 1
},
{
"date": "2020-09-29",
"count": 1
},
{
"date": "2020-10-02",
"count": 1
},
{
"date": "2020-10-05",
"count": 1
},
{
"date": "2020-10-06",
"count": 2
},
{
"date": "2020-10-09",
"count": 1
},
{
"date": "2020-10-10",
"count": 1
},
{
"date": "2020-10-14",
"count": 1
},
{
"date": "2020-10-19",
"count": 1
},
{
"date": "2020-10-21",
"count": 2
},
{
"date": "2020-10-23",
"count": 1
},
{
"date": "2020-10-25",
"count": 1
},
{
"date": "2020-10-28",
"count": 1
},
{
"date": "2020-10-29",
"count": 2
},
{
"date": "2020-10-30",
"count": 2
},
{
"date": "2020-11-05",
"count": 2
},
{
"date": "2020-11-06",
"count": 1
},
{
"date": "2020-11-07",
"count": 1
},
{
"date": "2020-11-09",
"count": 1
},
{
"date": "2020-11-12",
"count": 1
},
{
"date": "2020-11-13",
"count": 2
},
{
"date": "2020-11-19",
"count": 2
},
{
"date": "2020-11-23",
"count": 1
},
{
"date": "2020-11-25",
"count": 1
},
{
"date": "2020-11-30",
"count": 1
},
{
"date": "2020-12-01",
"count": 1
},
{
"date": "2020-12-02",
"count": 2
},
{
"date": "2020-12-07",
"count": 2
},
{
"date": "2020-12-09",
"count": 1
},
{
"date": "2020-12-11",
"count": 1
},
{
"date": "2020-12-19",
"count": 1
},
{
"date": "2020-12-20",
"count": 1
},
{
"date": "2020-12-22",
"count": 1
},
{
"date": "2020-12-26",
"count": 2
},
{
"date": "2021-01-03",
"count": 3
},
{
"date": "2021-01-05",
"count": 2
},
{
"date": "2021-01-06",
"count": 1
},
{
"date": "2021-01-11",
"count": 1
},
{
"date": "2021-01-14",
"count": 1
},
{
"date": "2021-01-16",
"count": 1
},
{
"date": "2021-01-18",
"count": 1
},
{
"date": "2021-01-19",
"count": 1
},
{
"date": "2021-01-22",
"count": 1
},
{
"date": "2021-01-27",
"count": 1
},
{
"date": "2021-01-29",
"count": 1
},
{
"date": "2021-01-30",
"count": 1
},
{
"date": "2021-02-02",
"count": 2
},
{
"date": "2021-02-03",
"count": 1
},
{
"date": "2021-02-04",
"count": 2
},
{
"date": "2021-02-05",
"count": 1
},
{
"date": "2021-02-08",
"count": 1
},
{
"date": "2021-02-12",
"count": 1
},
{
"date": "2021-02-15",
"count": 1
},
{
"date": "2021-02-22",
"count": 1
},
{
"date": "2021-02-28",
"count": 1
},
{
"date": "2021-03-03",
"count": 1
},
{
"date": "2021-03-06",
"count": 1
},
{
"date": "2021-03-11",
"count": 1
},
{
"date": "2021-03-14",
"count": 1
},
{
"date": "2021-03-15",
"count": 1
},
{
"date": "2021-03-16",
"count": 1
},
{
"date": "2021-03-17",
"count": 1
},
{
"date": "2021-03-18",
"count": 1
},
{
"date": "2021-03-19",
"count": 2
},
{
"date": "2021-03-20",
"count": 1
},
{
"date": "2021-03-25",
"count": 1
},
{
"date": "2021-03-27",
"count": 1
},
{
"date": "2021-03-29",
"count": 1
},
{
"date": "2021-04-05",
"count": 1
},
{
"date": "2021-04-06",
"count": 2
},
{
"date": "2021-04-07",
"count": 2
},
{
"date": "2021-04-08",
"count": 1
},
{
"date": "2021-04-09",
"count": 1
},
{
"date": "2021-04-11",
"count": 2
},
{
"date": "2021-04-14",
"count": 1
},
{
"date": "2021-04-18",
"count": 1
},
{
"date": "2021-04-25",
"count": 1
},
{
"date": "2021-04-26",
"count": 2
},
{
"date": "2021-04-28",
"count": 1
},
{
"date": "2021-04-29",
"count": 1
},
{
"date": "2021-05-06",
"count": 1
},
{
"date": "2021-05-07",
"count": 3
},
{
"date": "2021-05-08",
"count": 1
},
{
"date": "2021-05-09",
"count": 1
},
{
"date": "2021-05-10",
"count": 1
},
{
"date": "2021-05-11",
"count": 1
},
{
"date": "2021-05-12",
"count": 1
},
{
"date": "2021-05-17",
"count": 1
},
{
"date": "2021-05-19",
"count": 1
},
{
"date": "2021-05-20",
"count": 1
},
{
"date": "2021-05-24",
"count": 2
},
{
"date": "2021-05-31",
"count": 1
},
{
"date": "2021-06-04",
"count": 1
},
{
"date": "2021-06-06",
"count": 1
},
{
"date": "2021-06-10",
"count": 1
},
{
"date": "2021-06-14",
"count": 2
},
{
"date": "2021-06-16",
"count": 1
},
{
"date": "2021-06-29",
"count": 1
},
{
"date": "2021-07-01",
"count": 1
},
{
"date": "2021-07-04",
"count": 1
},
{
"date": "2021-07-06",
"count": 1
},
{
"date": "2021-07-07",
"count": 1
},
{
"date": "2021-07-09",
"count": 1
},
{
"date": "2021-07-10",
"count": 1
},
{
"date": "2021-07-12",
"count": 1
},
{
"date": "2021-07-14",
"count": 1
},
{
"date": "2021-07-15",
"count": 1
},
{
"date": "2021-07-21",
"count": 1
},
{
"date": "2021-07-23",
"count": 1
},
{
"date": "2021-07-24",
"count": 2
},
{
"date": "2021-07-27",
"count": 1
},
{
"date": "2021-07-29",
"count": 1
},
{
"date": "2021-07-31",
"count": 1
},
{
"date": "2021-08-02",
"count": 1
},
{
"date": "2021-08-03",
"count": 2
},
{
"date": "2021-08-07",
"count": 1
},
{
"date": "2021-08-09",
"count": 1
},
{
"date": "2021-08-14",
"count": 1
},
{
"date": "2021-08-16",
"count": 1
},
{
"date": "2021-08-21",
"count": 3
},
{
"date": "2021-08-24",
"count": 1
},
{
"date": "2021-08-25",
"count": 2
},
{
"date": "2021-08-27",
"count": 1
},
{
"date": "2021-08-28",
"count": 1
},
{
"date": "2021-09-04",
"count": 3
},
{
"date": "2021-09-05",
"count": 1
},
{
"date": "2021-09-09",
"count": 1
},
{
"date": "2021-09-10",
"count": 1
},
{
"date": "2021-09-14",
"count": 2
},
{
"date": "2021-09-16",
"count": 1
},
{
"date": "2021-09-17",
"count": 1
},
{
"date": "2021-09-19",
"count": 1
},
{
"date": "2021-09-23",
"count": 1
},
{
"date": "2021-09-24",
"count": 1
},
{
"date": "2021-09-26",
"count": 2
},
{
"date": "2021-09-28",
"count": 2
},
{
"date": "2021-09-29",
"count": 3
},
{
"date": "2021-10-01",
"count": 1
},
{
"date": "2021-10-02",
"count": 1
},
{
"date": "2021-10-04",
"count": 1
},
{
"date": "2021-10-05",
"count": 1
},
{
"date": "2021-10-12",
"count": 2
},
{
"date": "2021-10-16",
"count": 1
},
{
"date": "2021-10-17",
"count": 1
},
{
"date": "2021-10-18",
"count": 1
},
{
"date": "2021-10-21",
"count": 1
},
{
"date": "2021-10-24",
"count": 1
},
{
"date": "2021-10-29",
"count": 1
},
{
"date": "2021-11-03",
"count": 1
},
{
"date": "2021-11-09",
"count": 2
},
{
"date": "2021-11-12",
"count": 4
},
{
"date": "2021-11-13",
"count": 1
},
{
"date": "2021-11-17",
"count": 1
},
{
"date": "2021-11-28",
"count": 2
},
{
"date": "2021-12-03",
"count": 1
},
{
"date": "2021-12-07",
"count": 1
},
{
"date": "2021-12-08",
"count": 1
},
{
"date": "2021-12-12",
"count": 2
},
{
"date": "2021-12-17",
"count": 1
},
{
"date": "2021-12-29",
"count": 1
},
{
"date": "2022-01-02",
"count": 1
},
{
"date": "2022-01-05",
"count": 2
},
{
"date": "2022-01-12",
"count": 1
},
{
"date": "2022-01-20",
"count": 1
},
{
"date": "2022-01-23",
"count": 2
},
{
"date": "2022-01-25",
"count": 2
},
{
"date": "2022-01-27",
"count": 1
},
{
"date": "2022-01-31",
"count": 1
},
{
"date": "2022-02-15",
"count": 1
},
{
"date": "2022-02-16",
"count": 1
},
{
"date": "2022-02-17",
"count": 1
},
{
"date": "2022-02-23",
"count": 1
},
{
"date": "2022-03-03",
"count": 1
},
{
"date": "2022-03-15",
"count": 1
},
{
"date": "2022-03-16",
"count": 1
},
{
"date": "2022-03-18",
"count": 1
},
{
"date": "2022-03-23",
"count": 1
},
{
"date": "2022-03-25",
"count": 1
},
{
"date": "2022-03-29",
"count": 2
},
{
"date": "2022-03-30",
"count": 1
},
{
"date": "2022-04-06",
"count": 1
},
{
"date": "2022-04-07",
"count": 1
},
{
"date": "2022-04-08",
"count": 1
},
{
"date": "2022-04-16",
"count": 1
},
{
"date": "2022-04-20",
"count": 1
},
{
"date": "2022-04-25",
"count": 1
},
{
"date": "2022-04-26",
"count": 2
},
{
"date": "2022-05-01",
"count": 1
},
{
"date": "2022-05-04",
"count": 1
},
{
"date": "2022-05-11",
"count": 1
},
{
"date": "2022-05-12",
"count": 1
},
{
"date": "2022-05-13",
"count": 1
},
{
"date": "2022-05-24",
"count": 1
},
{
"date": "2022-06-02",
"count": 1
},
{
"date": "2022-06-03",
"count": 1
},
{
"date": "2022-06-07",
"count": 1
},
{
"date": "2022-06-13",
"count": 1
},
{
"date": "2022-06-18",
"count": 1
},
{
"date": "2022-06-20",
"count": 2
},
{
"date": "2022-06-23",
"count": 1
},
{
"date": "2022-06-25",
"count": 1
},
{
"date": "2022-06-27",
"count": 1
},
{
"date": "2022-06-29",
"count": 1
},
{
"date": "2022-07-03",
"count": 1
},
{
"date": "2022-07-13",
"count": 1
},
{
"date": "2022-07-14",
"count": 1
},
{
"date": "2022-07-19",
"count": 3
},
{
"date": "2022-07-20",
"count": 3
},
{
"date": "2022-07-21",
"count": 4
},
{
"date": "2022-07-22",
"count": 1
},
{
"date": "2022-07-24",
"count": 1
},
{
"date": "2022-07-26",
"count": 1
},
{
"date": "2022-07-27",
"count": 2
},
{
"date": "2022-07-28",
"count": 1
},
{
"date": "2022-07-29",
"count": 1
},
{
"date": "2022-08-01",
"count": 1
},
{
"date": "2022-08-09",
"count": 1
},
{
"date": "2022-08-15",
"count": 1
},
{
"date": "2022-08-18",
"count": 1
},
{
"date": "2022-08-22",
"count": 1
},
{
"date": "2022-08-24",
"count": 2
},
{
"date": "2022-08-25",
"count": 1
},
{
"date": "2022-08-26",
"count": 1
},
{
"date": "2022-08-29",
"count": 1
},
{
"date": "2022-09-03",
"count": 1
},
{
"date": "2022-09-07",
"count": 1
},
{
"date": "2022-09-14",
"count": 2
},
{
"date": "2022-09-16",
"count": 1
},
{
"date": "2022-09-23",
"count": 1
},
{
"date": "2022-09-24",
"count": 1
},
{
"date": "2022-09-26",
"count": 2
},
{
"date": "2022-09-28",
"count": 1
},
{
"date": "2022-10-01",
"count": 1
},
{
"date": "2022-10-07",
"count": 1
},
{
"date": "2022-10-12",
"count": 2
},
{
"date": "2022-10-14",
"count": 1
},
{
"date": "2022-10-22",
"count": 1
},
{
"date": "2022-10-26",
"count": 2
},
{
"date": "2022-11-02",
"count": 2
},
{
"date": "2022-11-04",
"count": 1
},
{
"date": "2022-11-07",
"count": 2
},
{
"date": "2022-11-09",
"count": 2
},
{
"date": "2022-11-16",
"count": 1
},
{
"date": "2022-12-13",
"count": 1
},
{
"date": "2022-12-20",
"count": 1
},
{
"date": "2022-12-24",
"count": 1
},
{
"date": "2022-12-29",
"count": 2
},
{
"date": "2023-01-05",
"count": 1
},
{
"date": "2023-01-06",
"count": 1
},
{
"date": "2023-01-11",
"count": 1
},
{
"date": "2023-01-18",
"count": 1
},
{
"date": "2023-01-23",
"count": 1
},
{
"date": "2023-01-27",
"count": 1
},
{
"date": "2023-01-28",
"count": 1
},
{
"date": "2023-02-05",
"count": 1
},
{
"date": "2023-02-06",
"count": 1
},
{
"date": "2023-02-07",
"count": 1
},
{
"date": "2023-02-15",
"count": 1
},
{
"date": "2023-02-17",
"count": 1
},
{
"date": "2023-02-22",
"count": 2
},
{
"date": "2023-02-23",
"count": 1
},
{
"date": "2023-02-24",
"count": 2
},
{
"date": "2023-03-04",
"count": 1
},
{
"date": "2023-03-05",
"count": 1
},
{
"date": "2023-03-07",
"count": 1
},
{
"date": "2023-03-11",
"count": 1
},
{
"date": "2023-03-15",
"count": 1
},
{
"date": "2023-03-16",
"count": 2
},
{
"date": "2023-03-29",
"count": 1
},
{
"date": "2023-04-01",
"count": 1
},
{
"date": "2023-04-07",
"count": 1
},
{
"date": "2023-04-10",
"count": 1
},
{
"date": "2023-04-13",
"count": 2
},
{
"date": "2023-04-21",
"count": 1
},
{
"date": "2023-04-26",
"count": 1
},
{
"date": "2023-04-28",
"count": 2
},
{
"date": "2023-04-29",
"count": 1
},
{
"date": "2023-05-01",
"count": 1
},
{
"date": "2023-05-03",
"count": 1
},
{
"date": "2023-05-12",
"count": 1
},
{
"date": "2023-05-13",
"count": 1
},
{
"date": "2023-05-20",
"count": 1
},
{
"date": "2023-05-25",
"count": 2
},
{
"date": "2023-05-30",
"count": 1
},
{
"date": "2023-06-01",
"count": 1
},
{
"date": "2023-06-02",
"count": 1
},
{
"date": "2023-06-04",
"count": 1
},
{
"date": "2023-06-05",
"count": 2
},
{
"date": "2023-06-08",
"count": 1
},
{
"date": "2023-06-11",
"count": 1
},
{
"date": "2023-06-13",
"count": 1
},
{
"date": "2023-06-18",
"count": 1
},
{
"date": "2023-06-20",
"count": 1
},
{
"date": "2023-06-21",
"count": 1
},
{
"date": "2023-06-24",
"count": 2
},
{
"date": "2023-06-26",
"count": 1
},
{
"date": "2023-06-27",
"count": 1
},
{
"date": "2023-06-28",
"count": 1
},
{
"date": "2023-06-29",
"count": 1
},
{
"date": "2023-07-01",
"count": 1
},
{
"date": "2023-07-04",
"count": 1
},
{
"date": "2023-07-16",
"count": 1
},
{
"date": "2023-07-19",
"count": 1
},
{
"date": "2023-07-21",
"count": 1
},
{
"date": "2023-07-24",
"count": 1
},
{
"date": "2023-07-27",
"count": 1
},
{
"date": "2023-07-30",
"count": 1
},
{
"date": "2023-08-03",
"count": 1
},
{
"date": "2023-08-06",
"count": 1
},
{
"date": "2023-08-07",
"count": 2
},
{
"date": "2023-08-13",
"count": 1
},
{
"date": "2023-08-18",
"count": 2
},
{
"date": "2023-08-21",
"count": 1
},
{
"date": "2023-08-23",
"count": 1
},
{
"date": "2023-08-24",
"count": 1
},
{
"date": "2023-08-28",
"count": 2
},
{
"date": "2023-08-29",
"count": 1
},
{
"date": "2023-09-06",
"count": 1
},
{
"date": "2023-09-13",
"count": 2
},
{
"date": "2023-09-18",
"count": 1
},
{
"date": "2023-09-26",
"count": 1
},
{
"date": "2023-09-27",
"count": 1
},
{
"date": "2023-09-29",
"count": 1
},
{
"date": "2023-10-01",
"count": 1
},
{
"date": "2023-10-10",
"count": 1
},
{
"date": "2023-10-11",
"count": 1
},
{
"date": "2023-10-16",
"count": 1
},
{
"date": "2023-10-17",
"count": 1
},
{
"date": "2023-10-18",
"count": 1
},
{
"date": "2023-10-20",
"count": 1
},
{
"date": "2023-10-21",
"count": 1
},
{
"date": "2023-10-22",
"count": 1
},
{
"date": "2023-10-24",
"count": 1
},
{
"date": "2023-10-31",
"count": 2
},
{
"date": "2023-11-01",
"count": 1
},
{
"date": "2023-11-09",
"count": 1
},
{
"date": "2023-11-15",
"count": 1
},
{
"date": "2023-11-18",
"count": 1
},
{
"date": "2023-11-26",
"count": 1
},
{
"date": "2023-11-27",
"count": 1
},
{
"date": "2023-11-28",
"count": 1
},
{
"date": "2023-11-30",
"count": 1
},
{
"date": "2023-12-01",
"count": 1
},
{
"date": "2023-12-02",
"count": 1
},
{
"date": "2023-12-04",
"count": 1
},
{
"date": "2023-12-06",
"count": 1
},
{
"date": "2023-12-08",
"count": 1
},
{
"date": "2023-12-09",
"count": 1
},
{
"date": "2023-12-12",
"count": 1
},
{
"date": "2023-12-14",
"count": 2
},
{
"date": "2023-12-16",
"count": 2
},
{
"date": "2023-12-17",
"count": 1
},
{
"date": "2023-12-21",
"count": 1
},
{
"date": "2023-12-24",
"count": 1
},
{
"date": "2023-12-27",
"count": 1
},
{
"date": "2024-01-02",
"count": 2
},
{
"date": "2024-01-06",
"count": 1
},
{
"date": "2024-01-09",
"count": 1
},
{
"date": "2024-01-11",
"count": 1
},
{
"date": "2024-01-13",
"count": 1
},
{
"date": "2024-01-18",
"count": 1
},
{
"date": "2024-01-22",
"count": 1
},
{
"date": "2024-01-30",
"count": 2
},
{
"date": "2024-01-31",
"count": 1
},
{
"date": "2024-02-02",
"count": 1
},
{
"date": "2024-02-05",
"count": 1
},
{
"date": "2024-02-06",
"count": 1
},
{
"date": "2024-02-07",
"count": 1
},
{
"date": "2024-02-09",
"count": 1
},
{
"date": "2024-02-10",
"count": 1
},
{
"date": "2024-02-14",
"count": 1
},
{
"date": "2024-02-15",
"count": 1
},
{
"date": "2024-02-19",
"count": 1
},
{
"date": "2024-02-20",
"count": 2
},
{
"date": "2024-02-23",
"count": 1
},
{
"date": "2024-02-24",
"count": 1
},
{
"date": "2024-02-26",
"count": 2
},
{
"date": "2024-03-01",
"count": 1
},
{
"date": "2024-03-05",
"count": 1
},
{
"date": "2024-03-06",
"count": 1
},
{
"date": "2024-03-08",
"count": 1
},
{
"date": "2024-03-19",
"count": 2
},
{
"date": "2024-03-20",
"count": 1
},
{
"date": "2024-03-27",
"count": 1
},
{
"date": "2024-03-28",
"count": 1
},
{
"date": "2024-03-30",
"count": 1
},
{
"date": "2024-04-02",
"count": 2
},
{
"date": "2024-04-06",
"count": 1
},
{
"date": "2024-04-13",
"count": 1
},
{
"date": "2024-04-18",
"count": 1
},
{
"date": "2024-04-22",
"count": 1
},
{
"date": "2024-04-23",
"count": 1
},
{
"date": "2024-04-30",
"count": 1
},
{
"date": "2024-05-05",
"count": 1
},
{
"date": "2024-05-08",
"count": 1
},
{
"date": "2024-05-21",
"count": 1
},
{
"date": "2024-05-27",
"count": 1
},
{
"date": "2024-05-29",
"count": 4
},
{
"date": "2024-05-30",
"count": 1
},
{
"date": "2024-05-31",
"count": 2
},
{
"date": "2024-06-03",
"count": 2
},
{
"date": "2024-06-05",
"count": 2
},
{
"date": "2024-06-10",
"count": 1
},
{
"date": "2024-06-11",
"count": 2
},
{
"date": "2024-06-14",
"count": 2
},
{
"date": "2024-06-17",
"count": 1
},
{
"date": "2024-06-22",
"count": 1
},
{
"date": "2024-06-26",
"count": 1
},
{
"date": "2024-06-30",
"count": 2
},
{
"date": "2024-07-08",
"count": 1
},
{
"date": "2024-07-11",
"count": 1
},
{
"date": "2024-07-13",
"count": 1
},
{
"date": "2024-07-16",
"count": 1
},
{
"date": "2024-07-19",
"count": 1
},
{
"date": "2024-07-24",
"count": 1
},
{
"date": "2024-07-26",
"count": 1
},
{
"date": "2024-07-31",
"count": 3
},
{
"date": "2024-08-01",
"count": 1
},
{
"date": "2024-08-07",
"count": 1
},
{
"date": "2024-08-11",
"count": 1
},
{
"date": "2024-08-12",
"count": 1
},
{
"date": "2024-08-18",
"count": 1
},
{
"date": "2024-08-21",
"count": 1
},
{
"date": "2024-08-22",
"count": 1
},
{
"date": "2024-09-01",
"count": 1
},
{
"date": "2024-09-02",
"count": 1
},
{
"date": "2024-09-05",
"count": 1
},
{
"date": "2024-09-08",
"count": 1
},
{
"date": "2024-09-18",
"count": 1
},
{
"date": "2024-09-19",
"count": 1
},
{
"date": "2024-10-08",
"count": 1
},
{
"date": "2024-10-11",
"count": 1
},
{
"date": "2024-10-19",
"count": 1
},
{
"date": "2024-10-24",
"count": 1
},
{
"date": "2024-10-30",
"count": 1
},
{
"date": "2024-10-31",
"count": 1
},
{
"date": "2024-11-01",
"count": 1
},
{
"date": "2024-11-03",
"count": 1
},
{
"date": "2024-11-08",
"count": 1
},
{
"date": "2024-11-11",
"count": 1
},
{
"date": "2024-11-12",
"count": 1
},
{
"date": "2024-11-13",
"count": 1
},
{
"date": "2024-11-14",
"count": 2
},
{
"date": "2024-11-16",
"count": 1
},
{
"date": "2024-11-21",
"count": 1
},
{
"date": "2024-11-23",
"count": 1
},
{
"date": "2024-11-24",
"count": 1
},
{
"date": "2024-12-03",
"count": 1
},
{
"date": "2024-12-06",
"count": 1
},
{
"date": "2024-12-09",
"count": 2
},
{
"date": "2024-12-10",
"count": 1
},
{
"date": "2024-12-11",
"count": 3
},
{
"date": "2024-12-12",
"count": 1
},
{
"date": "2024-12-13",
"count": 2
},
{
"date": "2024-12-18",
"count": 1
},
{
"date": "2024-12-20",
"count": 3
},
{
"date": "2024-12-23",
"count": 1
},
{
"date": "2024-12-26",
"count": 1
},
{
"date": "2024-12-30",
"count": 1
},
{
"date": "2024-12-31",
"count": 3
},
{
"date": "2025-01-02",
"count": 1
},
{
"date": "2025-01-03",
"count": 1
},
{
"date": "2025-01-05",
"count": 1
},
{
"date": "2025-01-07",
"count": 1
},
{
"date": "2025-01-10",
"count": 1
},
{
"date": "2025-01-13",
"count": 1
},
{
"date": "2025-01-14",
"count": 1
},
{
"date": "2025-01-15",
"count": 2
},
{
"date": "2025-01-18",
"count": 1
},
{
"date": "2025-01-21",
"count": 1
},
{
"date": "2025-01-22",
"count": 2
},
{
"date": "2025-01-28",
"count": 1
},
{
"date": "2025-02-02",
"count": 2
},
{
"date": "2025-02-04",
"count": 1
},
{
"date": "2025-02-07",
"count": 1
},
{
"date": "2025-02-08",
"count": 1
},
{
"date": "2025-02-15",
"count": 1
},
{
"date": "2025-02-18",
"count": 1
},
{
"date": "2025-02-22",
"count": 1
},
{
"date": "2025-02-23",
"count": 1
},
{
"date": "2025-02-26",
"count": 3
},
{
"date": "2025-03-02",
"count": 1
},
{
"date": "2025-03-05",
"count": 1
},
{
"date": "2025-03-06",
"count": 1
},
{
"date": "2025-03-07",
"count": 1
},
{
"date": "2025-03-08",
"count": 1
},
{
"date": "2025-03-10",
"count": 1
},
{
"date": "2025-03-13",
"count": 1
},
{
"date": "2025-03-28",
"count": 2
},
{
"date": "2025-03-29",
"count": 1
},
{
"date": "2025-03-31",
"count": 1
},
{
"date": "2025-04-02",
"count": 1
},
{
"date": "2025-04-04",
"count": 1
},
{
"date": "2025-04-11",
"count": 1
},
{
"date": "2025-04-15",
"count": 1
},
{
"date": "2025-04-21",
"count": 1
},
{
"date": "2025-04-23",
"count": 1
},
{
"date": "2025-05-04",
"count": 2
},
{
"date": "2025-05-07",
"count": 1
},
{
"date": "2025-05-09",
"count": 1
},
{
"date": "2025-05-11",
"count": 2
},
{
"date": "2025-05-14",
"count": 1
},
{
"date": "2025-05-17",
"count": 1
},
{
"date": "2025-05-18",
"count": 1
},
{
"date": "2025-05-19",
"count": 1
},
{
"date": "2025-05-20",
"count": 1
},
{
"date": "2025-05-27",
"count": 1
},
{
"date": "2025-05-28",
"count": 1
},
{
"date": "2025-05-30",
"count": 2
},
{
"date": "2025-05-31",
"count": 1
},
{
"date": "2025-06-01",
"count": 1
},
{
"date": "2025-06-05",
"count": 2
},
{
"date": "2025-06-06",
"count": 3
},
{
"date": "2025-06-07",
"count": 1
},
{
"date": "2025-06-08",
"count": 1
},
{
"date": "2025-06-12",
"count": 2
},
{
"date": "2025-06-13",
"count": 1
},
{
"date": "2025-06-15",
"count": 1
},
{
"date": "2025-06-16",
"count": 1
},
{
"date": "2025-06-20",
"count": 2
},
{
"date": "2025-06-21",
"count": 1
},
{
"date": "2025-06-27",
"count": 2
},
{
"date": "2025-07-06",
"count": 1
},
{
"date": "2025-07-07",
"count": 1
},
{
"date": "2025-07-08",
"count": 2
},
{
"date": "2025-07-09",
"count": 1
},
{
"date": "2025-07-10",
"count": 2
},
{
"date": "2025-07-14",
"count": 1
},
{
"date": "2025-07-16",
"count": 1
},
{
"date": "2025-07-23",
"count": 1
},
{
"date": "2025-07-25",
"count": 1
},
{
"date": "2025-07-30",
"count": 1
},
{
"date": "2025-08-02",
"count": 1
},
{
"date": "2025-08-08",
"count": 1
},
{
"date": "2025-08-09",
"count": 1
},
{
"date": "2025-08-17",
"count": 1
},
{
"date": "2025-08-18",
"count": 1
},
{
"date": "2025-08-20",
"count": 1
},
{
"date": "2025-08-21",
"count": 1
},
{
"date": "2025-08-23",
"count": 1
},
{
"date": "2025-08-27",
"count": 2
},
{
"date": "2025-08-31",
"count": 1
},
{
"date": "2025-09-09",
"count": 1
},
{
"date": "2025-09-23",
"count": 1
},
{
"date": "2025-09-27",
"count": 1
},
{
"date": "2025-09-29",
"count": 1
},
{
"date": "2025-10-09",
"count": 1
},
{
"date": "2025-10-11",
"count": 2
},
{
"date": "2025-10-17",
"count": 1
},
{
"date": "2025-10-19",
"count": 1
},
{
"date": "2025-10-20",
"count": 1
},
{
"date": "2025-10-25",
"count": 1
},
{
"date": "2025-10-27",
"count": 1
},
{
"date": "2025-10-28",
"count": 1
},
{
"date": "2025-11-07",
"count": 2
},
{
"date": "2025-11-09",
"count": 1
},
{
"date": "2025-11-10",
"count": 1
},
{
"date": "2025-11-12",
"count": 1
},
{
"date": "2025-11-21",
"count": 1
},
{
"date": "2025-11-23",
"count": 1
},
{
"date": "2025-11-26",
"count": 1
},
{
"date": "2025-12-02",
"count": 1
},
{
"date": "2025-12-07",
"count": 1
},
{
"date": "2025-12-12",
"count": 4
},
{
"date": "2025-12-13",
"count": 1
},
{
"date": "2025-12-18",
"count": 1
},
{
"date": "2025-12-19",
"count": 1
},
{
"date": "2025-12-21",
"count": 1
},
{
"date": "2025-12-22",
"count": 1
},
{
"date": "2025-12-24",
"count": 1
},
{
"date": "2025-12-25",
"count": 1
},
{
"date": "2025-12-29",
"count": 1
},
{
"date": "2026-01-01",
"count": 1
},
{
"date": "2026-01-03",
"count": 1
},
{
"date": "2026-01-04",
"count": 1
},
{
"date": "2026-01-08",
"count": 1
},
{
"date": "2026-01-13",
"count": 1
},
{
"date": "2026-01-14",
"count": 1
},
{
"date": "2026-01-16",
"count": 2
},
{
"date": "2026-01-17",
"count": 1
},
{
"date": "2026-01-19",
"count": 1
},
{
"date": "2026-01-20",
"count": 1
},
{
"date": "2026-01-24",
"count": 2
},
{
"date": "2026-01-25",
"count": 1
},
{
"date": "2026-01-28",
"count": 1
},
{
"date": "2026-01-30",
"count": 2
},
{
"date": "2026-02-06",
"count": 1
},
{
"date": "2026-02-09",
"count": 1
},
{
"date": "2026-02-11",
"count": 1
},
{
"date": "2026-02-14",
"count": 2
},
{
"date": "2026-02-17",
"count": 1
},
{
"date": "2026-02-22",
"count": 1
},
{
"date": "2026-02-23",
"count": 1
},
{
"date": "2026-02-25",
"count": 1
},
{
"date": "2026-03-03",
"count": 2
},
{
"date": "2026-03-04",
"count": 1
},
{
"date": "2026-03-11",
"count": 1
},
{
"date": "2026-03-12",
"count": 1
},
{
"date": "2026-03-13",
"count": 1
},
{
"date": "2026-03-14",
"count": 1
},
{
"date": "2026-03-16",
"count": 1
},
{
"date": "2026-03-18",
"count": 2
},
{
"date": "2026-03-19",
"count": 1
},
{
"date": "2026-03-20",
"count": 2
},
{
"date": "2026-03-21",
"count": 2
},
{
"date": "2026-03-25",
"count": 1
},
{
"date": "2026-03-29",
"count": 1
},
{
"date": "2026-03-30",
"count": 2
},
{
"date": "2026-03-31",
"count": 1
},
{
"date": "2026-04-04",
"count": 1
},
{
"date": "2026-04-07",
"count": 1
},
{
"date": "2026-04-09",
"count": 1
},
{
"date": "2026-04-10",
"count": 1
},
{
"date": "2026-04-11",
"count": 1
},
{
"date": "2026-04-13",
"count": 1
},
{
"date": "2026-04-14",
"count": 1
},
{
"date": "2026-04-18",
"count": 1
},
{
"date": "2026-04-19",
"count": 1
},
{
"date": "2026-04-23",
"count": 1
},
{
"date": "2026-04-29",
"count": 1
},
{
"date": "2026-05-02",
"count": 2
},
{
"date": "2026-05-05",
"count": 1
},
{
"date": "2026-05-08",
"count": 1
},
{
"date": "2026-05-09",
"count": 1
},
{
"date": "2026-05-13",
"count": 1
},
{
"date": "2026-05-14",
"count": 1
},
{
"date": "2026-05-18",
"count": 1
},
{
"date": "2026-05-22",
"count": 1
},
{
"date": "2026-05-30",
"count": 2
},
{
"date": "2026-06-01",
"count": 1
},
{
"date": "2026-06-02",
"count": 1
},
{
"date": "2026-06-03",
"count": 1
},
{
"date": "2026-06-04",
"count": 1
},
{
"date": "2026-06-06",
"count": 1
},
{
"date": "2026-06-08",
"count": 1
},
{
"date": "2026-06-09",
"count": 2
},
{
"date": "2026-06-12",
"count": 3
},
{
"date": "2026-06-15",
"count": 1
},
{
"date": "2026-06-17",
"count": 1
},
{
"date": "2026-06-19",
"count": 1
},
{
"date": "2026-06-20",
"count": 1
},
{
"date": "2026-06-22",
"count": 1
},
{
"date": "2026-06-23",
"count": 3
},
{
"date": "2026-06-24",
"count": 1
},
{
"date": "2026-06-27",
"count": 1
},
{
"date": "2026-06-30",
"count": 2
},
{
"date": "2026-07-04",
"count": 1
},
{
"date": "2026-07-07",
"count": 1
},
{
"date": "2026-07-11",
"count": 1
},
{
"date": "2026-07-12",
"count": 3
},
{
"date": "2026-07-13",
"count": 2
},
{
"date": "2026-07-15",
"count": 1
},
{
"date": "2026-07-19",
"count": 1
},
{
"date": "2026-07-20",
"count": 1
},
{
"date": "2026-07-21",
"count": 1
},
{
"date": "2026-07-22",
"count": 3
},
{
"date": "2026-07-25",
"count": 3
},
{
"date": "2026-07-28",
"count": 2
},
{
"date": "2026-07-29",
"count": 1
}
],
"complete": false,
"collected": 1000,
"total_forks": 1252
},
"star_history": null,
"open_issues_and_prs": 130
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [
"examples",
"notebooks"
],
"has_llms_txt": false,
"has_dockerfile": false,
"has_mcp_signal": false,
"bootstrap_files": [],
"api_schema_files": [
"cirq-google/cirq_google/api/v1/operations.proto",
"cirq-google/cirq_google/api/v1/params.proto",
"cirq-google/cirq_google/api/v1/program.proto",
"cirq-google/cirq_google/api/v2/batch.proto",
"cirq-google/cirq_google/api/v2/calibration.proto",
"cirq-google/cirq_google/api/v2/device.proto",
"cirq-google/cirq_google/api/v2/metrics.proto",
"cirq-google/cirq_google/api/v2/ndarrays.proto",
"cirq-google/cirq_google/api/v2/program.proto",
"cirq-google/cirq_google/api/v2/result.proto",
"cirq-google/cirq_google/api/v2/run_context.proto"
],
"has_devcontainer": false,
"typecheck_configs": [
"cirq-core/cirq/py.typed",
"cirq-google/cirq_google/cloud/quantum/py.typed",
"cirq-google/cirq_google/cloud/quantum_v1alpha1/py.typed",
"cirq-google/cirq_google/py.typed",
"cirq-web/cirq_web/tsconfig.json"
],
"toolchain_manifests": [],
"largest_source_bytes": 272328,
"source_files_sampled": 1225,
"oversized_source_files": 14,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"dependencies": {
"manifests": [
"cirq-aqt/pyproject.toml",
"cirq-aqt/requirements.txt",
"cirq-aqt/setup.py",
"cirq-core/pyproject.toml",
"cirq-core/requirements.txt",
"cirq-core/setup.py",
"cirq-google/pyproject.toml",
"cirq-google/requirements.txt",
"cirq-google/setup.py",
"cirq-ionq/pyproject.toml",
"cirq-ionq/requirements.txt",
"cirq-ionq/setup.py",
"cirq-pasqal/pyproject.toml",
"cirq-pasqal/requirements.txt",
"cirq-pasqal/setup.py",
"cirq-web/pyproject.toml",
"cirq-web/requirements.txt",
"cirq-web/setup.py",
"pyproject.toml",
"setup.py"
],
"advisories": {
"error": null,
"scope": "published_package",
"source": "osv",
"findings": [],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {},
"advisory_count": 0,
"affected_count": 0,
"assessed_count": 44,
"malicious_count": 0,
"assessed_package": "pypi:cirq@1.7.0",
"unassessed_count": 0,
"direct_affected_count": 0
},
"ecosystems": [
"pypi"
],
"dependencies": [],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "@asamuzakjp/css-color",
"direct": false,
"version": "5.1.11",
"ecosystem": "npm"
},
{
"name": "@asamuzakjp/dom-selector",
"direct": false,
"version": "7.1.1",
"ecosystem": "npm"
},
{
"name": "@asamuzakjp/generational-cache",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@asamuzakjp/nwsapi",
"direct": false,
"version": "2.3.9",
"ecosystem": "npm"
},
{
"name": "@babel/code-frame",
"direct": false,
"version": "7.26.2",
"ecosystem": "npm"
},
{
"name": "@babel/helper-string-parser",
"direct": false,
"version": "7.27.1",
"ecosystem": "npm"
},
{
"name": "@babel/helper-validator-identifier",
"direct": false,
"version": "7.28.5",
"ecosystem": "npm"
},
{
"name": "@babel/parser",
"direct": false,
"version": "7.29.2",
"ecosystem": "npm"
},
{
"name": "@babel/types",
"direct": false,
"version": "7.29.0",
"ecosystem": "npm"
},
{
"name": "@bcoe/v8-coverage",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "@bramus/specificity",
"direct": false,
"version": "2.4.2",
"ecosystem": "npm"
},
{
"name": "@csstools/color-helpers",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "@csstools/css-calc",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "@csstools/css-color-parser",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "@csstools/css-parser-algorithms",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "@csstools/css-syntax-patches-for-csstree",
"direct": false,
"version": "1.1.3",
"ecosystem": "npm"
},
{
"name": "@csstools/css-tokenizer",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "@dimforge/rapier3d-compat",
"direct": false,
"version": "0.12.0",
"ecosystem": "npm"
},
{
"name": "@emnapi/core",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@emnapi/runtime",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@emnapi/wasi-threads",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "@eslint-community/eslint-utils",
"direct": false,
"version": "4.9.1",
"ecosystem": "npm"
},
{
"name": "@eslint-community/regexpp",
"direct": false,
"version": "4.12.2",
"ecosystem": "npm"
},
{
"name": "@eslint/config-array",
"direct": false,
"version": "0.21.1",
"ecosystem": "npm"
},
{
"name": "@eslint/config-helpers",
"direct": false,
"version": "0.4.2",
"ecosystem": "npm"
},
{
"name": "@eslint/core",
"direct": false,
"version": "0.17.0",
"ecosystem": "npm"
},
{
"name": "@eslint/eslintrc",
"direct": false,
"version": "3.3.3",
"ecosystem": "npm"
},
{
"name": "@eslint/js",
"direct": false,
"version": "9.39.2",
"ecosystem": "npm"
},
{
"name": "@eslint/object-schema",
"direct": false,
"version": "2.1.7",
"ecosystem": "npm"
},
{
"name": "@eslint/plugin-kit",
"direct": false,
"version": "0.4.1",
"ecosystem": "npm"
},
{
"name": "@exodus/bytes",
"direct": false,
"version": "1.15.0",
"ecosystem": "npm"
},
{
"name": "@humanfs/core",
"direct": false,
"version": "0.19.1",
"ecosystem": "npm"
},
{
"name": "@humanfs/node",
"direct": false,
"version": "0.16.7",
"ecosystem": "npm"
},
{
"name": "@humanwhocodes/module-importer",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@humanwhocodes/retry",
"direct": false,
"version": "0.4.3",
"ecosystem": "npm"
},
{
"name": "@jridgewell/resolve-uri",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "@jridgewell/sourcemap-codec",
"direct": false,
"version": "1.5.5",
"ecosystem": "npm"
},
{
"name": "@jridgewell/trace-mapping",
"direct": false,
"version": "0.3.31",
"ecosystem": "npm"
},
{
"name": "@napi-rs/wasm-runtime",
"direct": false,
"version": "1.1.6",
"ecosystem": "npm"
},
{
"name": "@oxc-project/types",
"direct": false,
"version": "0.138.0",
"ecosystem": "npm"
},
{
"name": "@pkgr/core",
"direct": false,
"version": "0.2.9",
"ecosystem": "npm"
},
{
"name": "@puppeteer/browsers",
"direct": false,
"version": "2.13.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-android-arm64",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-darwin-arm64",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-darwin-x64",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-freebsd-x64",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm-gnueabihf",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm64-gnu",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm64-musl",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-ppc64-gnu",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-s390x-gnu",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-x64-gnu",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-x64-musl",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-openharmony-arm64",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-wasm32-wasi",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-win32-arm64-msvc",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-win32-x64-msvc",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@rolldown/pluginutils",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@sinonjs/commons",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "@sinonjs/fake-timers",
"direct": false,
"version": "13.0.5",
"ecosystem": "npm"
},
{
"name": "@sinonjs/samsam",
"direct": false,
"version": "8.0.2",
"ecosystem": "npm"
},
{
"name": "@sinonjs/text-encoding",
"direct": false,
"version": "0.7.3",
"ecosystem": "npm"
},
{
"name": "@standard-schema/spec",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@tootallnate/quickjs-emscripten",
"direct": false,
"version": "0.23.0",
"ecosystem": "npm"
},
{
"name": "@tweenjs/tween.js",
"direct": false,
"version": "23.1.3",
"ecosystem": "npm"
},
{
"name": "@tybys/wasm-util",
"direct": false,
"version": "0.10.3",
"ecosystem": "npm"
},
{
"name": "@types/chai",
"direct": false,
"version": "5.2.3",
"ecosystem": "npm"
},
{
"name": "@types/deep-eql",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "@types/estree",
"direct": false,
"version": "1.0.8",
"ecosystem": "npm"
},
{
"name": "@types/jsdom",
"direct": false,
"version": "28.0.3",
"ecosystem": "npm"
},
{
"name": "@types/json-schema",
"direct": false,
"version": "7.0.15",
"ecosystem": "npm"
},
{
"name": "@types/looks-same",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "@types/minimist",
"direct": false,
"version": "1.2.5",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "25.9.1",
"ecosystem": "npm"
},
{
"name": "@types/normalize-package-data",
"direct": false,
"version": "2.4.4",
"ecosystem": "npm"
},
{
"name": "@types/pngjs",
"direct": false,
"version": "6.0.5",
"ecosystem": "npm"
},
{
"name": "@types/stats.js",
"direct": false,
"version": "0.17.3",
"ecosystem": "npm"
},
{
"name": "@types/temp",
"direct": false,
"version": "0.9.4",
"ecosystem": "npm"
},
{
"name": "@types/three",
"direct": false,
"version": "0.184.1",
"ecosystem": "npm"
},
{
"name": "@types/tough-cookie",
"direct": false,
"version": "4.0.5",
"ecosystem": "npm"
},
{
"name": "@types/webxr",
"direct": false,
"version": "0.5.21",
"ecosystem": "npm"
},
{
"name": "@types/yauzl",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@typescript-eslint/eslint-plugin",
"direct": false,
"version": "8.60.1",
"ecosystem": "npm"
},
{
"name": "@typescript-eslint/parser",
"direct": false,
"version": "8.60.1",
"ecosystem": "npm"
},
{
"name": "@typescript-eslint/project-service",
"direct": false,
"version": "8.60.1",
"ecosystem": "npm"
},
{
"name": "@typescript-eslint/scope-manager",
"direct": false,
"version": "8.60.1",
"ecosystem": "npm"
},
{
"name": "@typescript-eslint/tsconfig-utils",
"direct": false,
"version": "8.60.1",
"ecosystem": "npm"
},
{
"name": "@typescript-eslint/type-utils",
"direct": false,
"version": "8.60.1",
"ecosystem": "npm"
},
{
"name": "@typescript-eslint/types",
"direct": false,
"version": "8.60.1",
"ecosystem": "npm"
},
{
"name": "@typescript-eslint/typescript-estree",
"direct": false,
"version": "8.60.1",
"ecosystem": "npm"
},
{
"name": "@typescript-eslint/utils",
"direct": false,
"version": "8.60.1",
"ecosystem": "npm"
},
{
"name": "@typescript-eslint/visitor-keys",
"direct": false,
"version": "8.60.1",
"ecosystem": "npm"
},
{
"name": "@vitest/coverage-v8",
"direct": false,
"version": "4.1.9",
"ecosystem": "npm"
},
{
"name": "@vitest/expect",
"direct": false,
"version": "4.1.9",
"ecosystem": "npm"
},
{
"name": "@vitest/mocker",
"direct": false,
"version": "4.1.9",
"ecosystem": "npm"
},
{
"name": "@vitest/pretty-format",
"direct": false,
"version": "4.1.9",
"ecosystem": "npm"
},
{
"name": "@vitest/runner",
"direct": false,
"version": "4.1.9",
"ecosystem": "npm"
},
{
"name": "@vitest/snapshot",
"direct": false,
"version": "4.1.9",
"ecosystem": "npm"
},
{
"name": "@vitest/spy",
"direct": false,
"version": "4.1.9",
"ecosystem": "npm"
},
{
"name": "@vitest/utils",
"direct": false,
"version": "4.1.9",
"ecosystem": "npm"
},
{
"name": "acorn",
"direct": false,
"version": "8.15.0",
"ecosystem": "npm"
},
{
"name": "acorn-jsx",
"direct": false,
"version": "5.3.2",
"ecosystem": "npm"
},
{
"name": "agent-base",
"direct": false,
"version": "7.1.3",
"ecosystem": "npm"
},
{
"name": "ajv",
"direct": false,
"version": "6.12.6",
"ecosystem": "npm"
},
{
"name": "ansi-escapes",
"direct": false,
"version": "4.3.2",
"ecosystem": "npm"
},
{
"name": "ansi-regex",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "ansi-styles",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "argparse",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "arrify",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "assertion-error",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "ast-types",
"direct": false,
"version": "0.13.4",
"ecosystem": "npm"
},
{
"name": "ast-v8-to-istanbul",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "b4a",
"direct": false,
"version": "1.6.7",
"ecosystem": "npm"
},
{
"name": "balanced-match",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "balanced-match",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "bare-events",
"direct": false,
"version": "2.5.4",
"ecosystem": "npm"
},
{
"name": "bare-fs",
"direct": false,
"version": "4.5.5",
"ecosystem": "npm"
},
{
"name": "bare-os",
"direct": false,
"version": "3.4.0",
"ecosystem": "npm"
},
{
"name": "bare-path",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "bare-stream",
"direct": false,
"version": "2.6.4",
"ecosystem": "npm"
},
{
"name": "bare-url",
"direct": false,
"version": "2.3.2",
"ecosystem": "npm"
},
{
"name": "base64-js",
"direct": false,
"version": "1.5.1",
"ecosystem": "npm"
},
{
"name": "basic-ftp",
"direct": false,
"version": "5.3.1",
"ecosystem": "npm"
},
{
"name": "bidi-js",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "bl",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "brace-expansion",
"direct": false,
"version": "1.1.11",
"ecosystem": "npm"
},
{
"name": "brace-expansion",
"direct": false,
"version": "5.0.4",
"ecosystem": "npm"
},
{
"name": "brace-expansion",
"direct": false,
"version": "5.0.6",
"ecosystem": "npm"
},
{
"name": "buffer",
"direct": false,
"version": "5.7.1",
"ecosystem": "npm"
},
{
"name": "buffer-crc32",
"direct": false,
"version": "0.2.13",
"ecosystem": "npm"
},
{
"name": "callsites",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "camelcase",
"direct": false,
"version": "5.3.1",
"ecosystem": "npm"
},
{
"name": "camelcase-keys",
"direct": false,
"version": "6.2.2",
"ecosystem": "npm"
},
{
"name": "canvas",
"direct": false,
"version": "3.2.3",
"ecosystem": "npm"
},
{
"name": "chai",
"direct": false,
"version": "6.2.2",
"ecosystem": "npm"
},
{
"name": "chalk",
"direct": false,
"version": "4.1.2",
"ecosystem": "npm"
},
{
"name": "chardet",
"direct": false,
"version": "0.7.0",
"ecosystem": "npm"
},
{
"name": "chownr",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "chromium-bidi",
"direct": false,
"version": "14.0.0",
"ecosystem": "npm"
},
{
"name": "cli-cursor",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "cli-width",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "cliui",
"direct": false,
"version": "8.0.1",
"ecosystem": "npm"
},
{
"name": "color",
"direct": false,
"version": "4.2.3",
"ecosystem": "npm"
},
{
"name": "color-convert",
"direct": false,
"version": "0.5.3",
"ecosystem": "npm"
},
{
"name": "color-convert",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "color-diff",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "color-name",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "color-string",
"direct": false,
"version": "1.9.1",
"ecosystem": "npm"
},
{
"name": "concat-map",
"direct": false,
"version": "0.0.1",
"ecosystem": "npm"
},
{
"name": "convert-source-map",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "cosmiconfig",
"direct": false,
"version": "9.0.0",
"ecosystem": "npm"
},
{
"name": "cross-spawn",
"direct": false,
"version": "7.0.6",
"ecosystem": "npm"
},
{
"name": "css-tree",
"direct": false,
"version": "3.2.1",
"ecosystem": "npm"
},
{
"name": "data-uri-to-buffer",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "data-urls",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": false,
"version": "4.4.3",
"ecosystem": "npm"
},
{
"name": "decamelize",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "decamelize-keys",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "decimal.js",
"direct": false,
"version": "10.6.0",
"ecosystem": "npm"
},
{
"name": "decompress-response",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "deep-extend",
"direct": false,
"version": "0.6.0",
"ecosystem": "npm"
},
{
"name": "deep-is",
"direct": false,
"version": "0.1.4",
"ecosystem": "npm"
},
{
"name": "degenerator",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "detect-libc",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "devtools-protocol",
"direct": false,
"version": "0.0.1595872",
"ecosystem": "npm"
},
{
"name": "diff",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "emoji-regex",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "end-of-stream",
"direct": false,
"version": "1.4.4",
"ecosystem": "npm"
},
{
"name": "enhanced-resolve",
"direct": false,
"version": "5.18.4",
"ecosystem": "npm"
},
{
"name": "entities",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "env-paths",
"direct": false,
"version": "2.2.1",
"ecosystem": "npm"
},
{
"name": "error-ex",
"direct": false,
"version": "1.3.2",
"ecosystem": "npm"
},
{
"name": "es-module-lexer",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "escalade",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "escape-string-regexp",
"direct": false,
"version": "1.0.5",
"ecosystem": "npm"
},
{
"name": "escape-string-regexp",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "escodegen",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "eslint",
"direct": false,
"version": "9.39.2",
"ecosystem": "npm"
},
{
"name": "eslint-compat-utils",
"direct": false,
"version": "0.5.1",
"ecosystem": "npm"
},
{
"name": "eslint-config-prettier",
"direct": false,
"version": "10.1.8",
"ecosystem": "npm"
},
{
"name": "eslint-plugin-es-x",
"direct": false,
"version": "7.8.0",
"ecosystem": "npm"
},
{
"name": "eslint-plugin-n",
"direct": false,
"version": "17.23.1",
"ecosystem": "npm"
},
{
"name": "eslint-plugin-prettier",
"direct": false,
"version": "5.5.4",
"ecosystem": "npm"
},
{
"name": "eslint-scope",
"direct": false,
"version": "8.4.0",
"ecosystem": "npm"
},
{
"name": "eslint-visitor-keys",
"direct": false,
"version": "3.4.3",
"ecosystem": "npm"
},
{
"name": "eslint-visitor-keys",
"direct": false,
"version": "4.2.1",
"ecosystem": "npm"
},
{
"name": "eslint-visitor-keys",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "espree",
"direct": false,
"version": "10.4.0",
"ecosystem": "npm"
},
{
"name": "esprima",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "esquery",
"direct": false,
"version": "1.7.0",
"ecosystem": "npm"
},
{
"name": "esrecurse",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "estraverse",
"direct": false,
"version": "5.3.0",
"ecosystem": "npm"
},
{
"name": "estree-walker",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "esutils",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "execa",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "expand-template",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "expect-type",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "external-editor",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "extract-zip",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "fast-deep-equal",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "fast-diff",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "fast-fifo",
"direct": false,
"version": "1.3.2",
"ecosystem": "npm"
},
{
"name": "fast-json-stable-stringify",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "fast-levenshtein",
"direct": false,
"version": "2.0.6",
"ecosystem": "npm"
},
{
"name": "fd-slicer",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "fdir",
"direct": false,
"version": "6.5.0",
"ecosystem": "npm"
},
{
"name": "fflate",
"direct": false,
"version": "0.8.2",
"ecosystem": "npm"
},
{
"name": "figures",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "file-entry-cache",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "find-up",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "find-up",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "flat-cache",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "flatted",
"direct": false,
"version": "3.4.2",
"ecosystem": "npm"
},
{
"name": "fs-constants",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "fs-extra",
"direct": false,
"version": "8.1.0",
"ecosystem": "npm"
},
{
"name": "fs.realpath",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "fsevents",
"direct": false,
"version": "2.3.3",
"ecosystem": "npm"
},
{
"name": "function-bind",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "get-caller-file",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "get-stream",
"direct": false,
"version": "5.2.0",
"ecosystem": "npm"
},
{
"name": "get-stream",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "get-tsconfig",
"direct": false,
"version": "4.13.0",
"ecosystem": "npm"
},
{
"name": "get-uri",
"direct": false,
"version": "6.0.5",
"ecosystem": "npm"
},
{
"name": "github-from-package",
"direct": false,
"version": "0.0.0",
"ecosystem": "npm"
},
{
"name": "glob",
"direct": false,
"version": "13.0.6",
"ecosystem": "npm"
},
{
"name": "glob",
"direct": false,
"version": "7.2.3",
"ecosystem": "npm"
},
{
"name": "glob-parent",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "globals",
"direct": false,
"version": "14.0.0",
"ecosystem": "npm"
},
{
"name": "globals",
"direct": false,
"version": "15.15.0",
"ecosystem": "npm"
},
{
"name": "globrex",
"direct": false,
"version": "0.1.2",
"ecosystem": "npm"
},
{
"name": "graceful-fs",
"direct": false,
"version": "4.2.11",
"ecosystem": "npm"
},
{
"name": "gts",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "hard-rejection",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "has-flag",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "hasown",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "hosted-git-info",
"direct": false,
"version": "2.8.9",
"ecosystem": "npm"
},
{
"name": "hosted-git-info",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "html-encoding-sniffer",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "html-escaper",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "http-proxy-agent",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "https-proxy-agent",
"direct": false,
"version": "7.0.6",
"ecosystem": "npm"
},
{
"name": "human-signals",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "iconv-lite",
"direct": false,
"version": "0.4.24",
"ecosystem": "npm"
},
{
"name": "ieee754",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "ignore",
"direct": false,
"version": "5.3.2",
"ecosystem": "npm"
},
{
"name": "ignore",
"direct": false,
"version": "7.0.5",
"ecosystem": "npm"
},
{
"name": "import-fresh",
"direct": false,
"version": "3.3.0",
"ecosystem": "npm"
},
{
"name": "imurmurhash",
"direct": false,
"version": "0.1.4",
"ecosystem": "npm"
},
{
"name": "indent-string",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "inflight",
"direct": false,
"version": "1.0.6",
"ecosystem": "npm"
},
{
"name": "inherits",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "ini",
"direct": false,
"version": "1.3.8",
"ecosystem": "npm"
},
{
"name": "inquirer",
"direct": false,
"version": "7.3.3",
"ecosystem": "npm"
},
{
"name": "ip-address",
"direct": false,
"version": "10.2.0",
"ecosystem": "npm"
},
{
"name": "is-arrayish",
"direct": false,
"version": "0.2.1",
"ecosystem": "npm"
},
{
"name": "is-arrayish",
"direct": false,
"version": "0.3.2",
"ecosystem": "npm"
},
{
"name": "is-core-module",
"direct": false,
"version": "2.16.1",
"ecosystem": "npm"
},
{
"name": "is-extglob",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "is-fullwidth-code-point",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "is-glob",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "is-plain-obj",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "is-potential-custom-element-name",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "is-stream",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "isexe",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "istanbul-lib-coverage",
"direct": false,
"version": "3.2.2",
"ecosystem": "npm"
},
{
"name": "istanbul-lib-report",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "istanbul-reports",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "js-graph-algorithms",
"direct": false,
"version": "1.0.18",
"ecosystem": "npm"
},
{
"name": "js-tokens",
"direct": false,
"version": "10.0.0",
"ecosystem": "npm"
},
{
"name": "js-tokens",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "js-yaml",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "jsdom",
"direct": false,
"version": "29.1.1",
"ecosystem": "npm"
},
{
"name": "json-buffer",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "json-parse-even-better-errors",
"direct": false,
"version": "2.3.1",
"ecosystem": "npm"
},
{
"name": "json-schema-traverse",
"direct": false,
"version": "0.4.1",
"ecosystem": "npm"
},
{
"name": "json-stable-stringify-without-jsonify",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "json5",
"direct": false,
"version": "2.2.3",
"ecosystem": "npm"
},
{
"name": "jsonfile",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "just-extend",
"direct": false,
"version": "6.2.0",
"ecosystem": "npm"
},
{
"name": "keyv",
"direct": false,
"version": "4.5.4",
"ecosystem": "npm"
},
{
"name": "kind-of",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "levn",
"direct": false,
"version": "0.4.1",
"ecosystem": "npm"
},
{
"name": "lightningcss",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-android-arm64",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-darwin-arm64",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-darwin-x64",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-freebsd-x64",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-arm-gnueabihf",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-arm64-gnu",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-arm64-musl",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-x64-gnu",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-x64-musl",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-win32-arm64-msvc",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-win32-x64-msvc",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lines-and-columns",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "locate-path",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "locate-path",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "lodash",
"direct": false,
"version": "4.18.1",
"ecosystem": "npm"
},
{
"name": "lodash.get",
"direct": false,
"version": "4.4.2",
"ecosystem": "npm"
},
{
"name": "lodash.merge",
"direct": false,
"version": "4.6.2",
"ecosystem": "npm"
},
{
"name": "looks-same",
"direct": false,
"version": "9.0.1",
"ecosystem": "npm"
},
{
"name": "lru-cache",
"direct": false,
"version": "11.3.5",
"ecosystem": "npm"
},
{
"name": "lru-cache",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "lru-cache",
"direct": false,
"version": "7.18.3",
"ecosystem": "npm"
},
{
"name": "magic-string",
"direct": false,
"version": "0.30.21",
"ecosystem": "npm"
},
{
"name": "magicast",
"direct": false,
"version": "0.5.2",
"ecosystem": "npm"
},
{
"name": "make-dir",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "map-obj",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "map-obj",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "mdn-data",
"direct": false,
"version": "2.27.1",
"ecosystem": "npm"
},
{
"name": "meow",
"direct": false,
"version": "9.0.0",
"ecosystem": "npm"
},
{
"name": "merge-stream",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "meshoptimizer",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "mimic-fn",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "mimic-response",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "min-indent",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "minimatch",
"direct": false,
"version": "10.2.4",
"ecosystem": "npm"
},
{
"name": "minimatch",
"direct": false,
"version": "10.2.5",
"ecosystem": "npm"
},
{
"name": "minimatch",
"direct": false,
"version": "3.1.5",
"ecosystem": "npm"
},
{
"name": "minimist",
"direct": false,
"version": "1.2.8",
"ecosystem": "npm"
},
{
"name": "minimist-options",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "minipass",
"direct": false,
"version": "7.1.3",
"ecosystem": "npm"
},
{
"name": "mitt",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "mkdirp",
"direct": false,
"version": "0.5.6",
"ecosystem": "npm"
},
{
"name": "mkdirp-classic",
"direct": false,
"version": "0.5.3",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.1.3",
"ecosystem": "npm"
},
{
"name": "mute-stream",
"direct": false,
"version": "0.0.8",
"ecosystem": "npm"
},
{
"name": "nanoid",
"direct": false,
"version": "3.3.15",
"ecosystem": "npm"
},
{
"name": "napi-build-utils",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "natural-compare",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "ncp",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "nested-error-stacks",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "netmask",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "nise",
"direct": false,
"version": "6.1.1",
"ecosystem": "npm"
},
{
"name": "node-abi",
"direct": false,
"version": "3.73.0",
"ecosystem": "npm"
},
{
"name": "node-addon-api",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "node-addon-api",
"direct": false,
"version": "7.1.1",
"ecosystem": "npm"
},
{
"name": "normalize-package-data",
"direct": false,
"version": "2.5.0",
"ecosystem": "npm"
},
{
"name": "normalize-package-data",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "npm-run-path",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "obug",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "once",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "onetime",
"direct": false,
"version": "5.1.2",
"ecosystem": "npm"
},
{
"name": "optionator",
"direct": false,
"version": "0.9.4",
"ecosystem": "npm"
},
{
"name": "os-tmpdir",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "p-limit",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "p-limit",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "p-locate",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "p-locate",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "p-try",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "pac-proxy-agent",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "pac-resolver",
"direct": false,
"version": "7.0.1",
"ecosystem": "npm"
},
{
"name": "package-json-from-dist",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "parent-module",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "parse-color",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "parse-json",
"direct": false,
"version": "5.2.0",
"ecosystem": "npm"
},
{
"name": "parse5",
"direct": false,
"version": "8.0.1",
"ecosystem": "npm"
},
{
"name": "path-exists",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "path-is-absolute",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "path-key",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "path-parse",
"direct": false,
"version": "1.0.7",
"ecosystem": "npm"
},
{
"name": "path-scurry",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "path-to-regexp",
"direct": false,
"version": "8.2.0",
"ecosystem": "npm"
},
{
"name": "pathe",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "pend",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "picocolors",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "picomatch",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "pixelmatch",
"direct": false,
"version": "7.1.0",
"ecosystem": "npm"
},
{
"name": "pngjs",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "postcss",
"direct": false,
"version": "8.5.16",
"ecosystem": "npm"
},
{
"name": "prebuild-install",
"direct": false,
"version": "7.1.3",
"ecosystem": "npm"
},
{
"name": "prelude-ls",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "prettier",
"direct": false,
"version": "3.7.4",
"ecosystem": "npm"
},
{
"name": "prettier-linter-helpers",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "progress",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "proxy-agent",
"direct": false,
"version": "6.5.0",
"ecosystem": "npm"
},
{
"name": "proxy-from-env",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "pump",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "punycode",
"direct": false,
"version": "2.3.1",
"ecosystem": "npm"
},
{
"name": "puppeteer",
"direct": false,
"version": "24.42.0",
"ecosystem": "npm"
},
{
"name": "puppeteer-core",
"direct": false,
"version": "24.42.0",
"ecosystem": "npm"
},
{
"name": "quick-lru",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "rc",
"direct": false,
"version": "1.2.8",
"ecosystem": "npm"
},
{
"name": "read-pkg",
"direct": false,
"version": "5.2.0",
"ecosystem": "npm"
},
{
"name": "read-pkg-up",
"direct": false,
"version": "7.0.1",
"ecosystem": "npm"
},
{
"name": "readable-stream",
"direct": false,
"version": "3.6.2",
"ecosystem": "npm"
},
{
"name": "redent",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "require-directory",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "require-from-string",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "resolve",
"direct": false,
"version": "1.22.10",
"ecosystem": "npm"
},
{
"name": "resolve-from",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "resolve-pkg-maps",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "restore-cursor",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "rimraf",
"direct": false,
"version": "2.6.3",
"ecosystem": "npm"
},
{
"name": "rimraf",
"direct": false,
"version": "6.1.3",
"ecosystem": "npm"
},
{
"name": "rolldown",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "run-async",
"direct": false,
"version": "2.4.1",
"ecosystem": "npm"
},
{
"name": "rxjs",
"direct": false,
"version": "6.6.7",
"ecosystem": "npm"
},
{
"name": "safe-buffer",
"direct": false,
"version": "5.1.2",
"ecosystem": "npm"
},
{
"name": "safer-buffer",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "saxes",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "semver",
"direct": false,
"version": "5.7.2",
"ecosystem": "npm"
},
{
"name": "semver",
"direct": false,
"version": "7.7.4",
"ecosystem": "npm"
},
{
"name": "sharp",
"direct": false,
"version": "0.32.6",
"ecosystem": "npm"
},
{
"name": "shebang-command",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "shebang-regex",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "siginfo",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "signal-exit",
"direct": false,
"version": "3.0.7",
"ecosystem": "npm"
},
{
"name": "signal-exit",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "simple-concat",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "simple-get",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "simple-swizzle",
"direct": false,
"version": "0.2.2",
"ecosystem": "npm"
},
{
"name": "sinon",
"direct": false,
"version": "19.0.2",
"ecosystem": "npm"
},
{
"name": "smart-buffer",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "socks",
"direct": false,
"version": "2.8.8",
"ecosystem": "npm"
},
{
"name": "socks-proxy-agent",
"direct": false,
"version": "8.0.5",
"ecosystem": "npm"
},
{
"name": "source-map",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "source-map-js",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "spdx-correct",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "spdx-exceptions",
"direct": false,
"version": "2.5.0",
"ecosystem": "npm"
},
{
"name": "spdx-expression-parse",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "spdx-license-ids",
"direct": false,
"version": "3.0.21",
"ecosystem": "npm"
},
{
"name": "stackback",
"direct": false,
"version": "0.0.2",
"ecosystem": "npm"
},
{
"name": "std-env",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "streamx",
"direct": false,
"version": "2.22.0",
"ecosystem": "npm"
},
{
"name": "string-width",
"direct": false,
"version": "4.2.3",
"ecosystem": "npm"
},
{
"name": "string_decoder",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "strip-ansi",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "strip-final-newline",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "strip-indent",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "strip-json-comments",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "strip-json-comments",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "supports-color",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "supports-preserve-symlinks-flag",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "symbol-tree",
"direct": false,
"version": "3.2.4",
"ecosystem": "npm"
},
{
"name": "synckit",
"direct": false,
"version": "0.11.11",
"ecosystem": "npm"
},
{
"name": "tapable",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "tar-fs",
"direct": false,
"version": "2.1.4",
"ecosystem": "npm"
},
{
"name": "tar-fs",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "tar-fs",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "tar-stream",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "tar-stream",
"direct": false,
"version": "3.1.7",
"ecosystem": "npm"
},
{
"name": "tar-stream",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "temp",
"direct": false,
"version": "0.9.4",
"ecosystem": "npm"
},
{
"name": "text-decoder",
"direct": false,
"version": "1.2.3",
"ecosystem": "npm"
},
{
"name": "three",
"direct": false,
"version": "0.185.1",
"ecosystem": "npm"
},
{
"name": "through",
"direct": false,
"version": "2.3.8",
"ecosystem": "npm"
},
{
"name": "tinybench",
"direct": false,
"version": "2.9.0",
"ecosystem": "npm"
},
{
"name": "tinyexec",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "tinyglobby",
"direct": false,
"version": "0.2.17",
"ecosystem": "npm"
},
{
"name": "tinyrainbow",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "tldts",
"direct": false,
"version": "7.0.29",
"ecosystem": "npm"
},
{
"name": "tldts-core",
"direct": false,
"version": "7.0.29",
"ecosystem": "npm"
},
{
"name": "tmp",
"direct": false,
"version": "0.0.33",
"ecosystem": "npm"
},
{
"name": "tough-cookie",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "tr46",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "trim-newlines",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "ts-api-utils",
"direct": false,
"version": "2.5.0",
"ecosystem": "npm"
},
{
"name": "ts-declaration-location",
"direct": false,
"version": "1.0.7",
"ecosystem": "npm"
},
{
"name": "ts-mock-imports",
"direct": false,
"version": "1.3.19",
"ecosystem": "npm"
},
{
"name": "tslib",
"direct": false,
"version": "1.14.1",
"ecosystem": "npm"
},
{
"name": "tslib",
"direct": false,
"version": "2.8.1",
"ecosystem": "npm"
},
{
"name": "tunnel-agent",
"direct": false,
"version": "0.6.0",
"ecosystem": "npm"
},
{
"name": "type-check",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "type-detect",
"direct": false,
"version": "4.0.8",
"ecosystem": "npm"
},
{
"name": "type-detect",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "type-fest",
"direct": false,
"version": "0.18.1",
"ecosystem": "npm"
},
{
"name": "type-fest",
"direct": false,
"version": "0.21.3",
"ecosystem": "npm"
},
{
"name": "type-fest",
"direct": false,
"version": "0.6.0",
"ecosystem": "npm"
},
{
"name": "type-fest",
"direct": false,
"version": "0.8.1",
"ecosystem": "npm"
},
{
"name": "typed-query-selector",
"direct": false,
"version": "2.12.2",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "typescript-eslint",
"direct": false,
"version": "8.60.1",
"ecosystem": "npm"
},
{
"name": "undici",
"direct": false,
"version": "7.28.0",
"ecosystem": "npm"
},
{
"name": "undici-types",
"direct": false,
"version": "7.24.6",
"ecosystem": "npm"
},
{
"name": "universalify",
"direct": false,
"version": "0.1.2",
"ecosystem": "npm"
},
{
"name": "uri-js",
"direct": false,
"version": "4.4.1",
"ecosystem": "npm"
},
{
"name": "util-deprecate",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "validate-npm-package-license",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "vite",
"direct": false,
"version": "8.1.2",
"ecosystem": "npm"
},
{
"name": "vitest",
"direct": false,
"version": "4.1.9",
"ecosystem": "npm"
},
{
"name": "w3c-xmlserializer",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "webdriver-bidi-protocol",
"direct": false,
"version": "0.4.1",
"ecosystem": "npm"
},
{
"name": "webidl-conversions",
"direct": false,
"version": "8.0.1",
"ecosystem": "npm"
},
{
"name": "whatwg-mimetype",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "whatwg-url",
"direct": false,
"version": "16.0.1",
"ecosystem": "npm"
},
{
"name": "which",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "why-is-node-running",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "word-wrap",
"direct": false,
"version": "1.2.5",
"ecosystem": "npm"
},
{
"name": "wrap-ansi",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "wrappy",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "write-file-atomic",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "ws",
"direct": false,
"version": "8.20.0",
"ecosystem": "npm"
},
{
"name": "xml-name-validator",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "xmlchars",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "y18n",
"direct": false,
"version": "5.0.8",
"ecosystem": "npm"
},
{
"name": "yallist",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "yargs",
"direct": false,
"version": "17.7.2",
"ecosystem": "npm"
},
{
"name": "yargs-parser",
"direct": false,
"version": "20.2.9",
"ecosystem": "npm"
},
{
"name": "yargs-parser",
"direct": false,
"version": "21.1.1",
"ecosystem": "npm"
},
{
"name": "yauzl",
"direct": false,
"version": "2.10.0",
"ecosystem": "npm"
},
{
"name": "yocto-queue",
"direct": false,
"version": "0.1.0",
"ecosystem": "npm"
},
{
"name": "zod",
"direct": false,
"version": "3.25.76",
"ecosystem": "npm"
},
{
"name": "3to2",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "a-dependency",
"direct": false,
"version": "0.2.3",
"ecosystem": "pypi"
},
{
"name": "absl-py",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "attrs",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "b",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "black",
"direct": false,
"version": "26.5.1",
"ecosystem": "pypi"
},
{
"name": "c",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "codeowners",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "coverage",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "duet",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "filelock",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "google-api-core",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "google-api-python-client",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "grpcio-tools",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "ipykernel",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "ipython",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "isort",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "latexmk",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "matplotlib",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "mock",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "mypy",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "mypy",
"direct": false,
"version": "2.1.0",
"ecosystem": "pypi"
},
{
"name": "mypy-protobuf",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "networkx",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "notebook",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "numpy",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "opt-einsum",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "pandas",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "papermill",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "ply",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "proto-plus",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "protobuf",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "protobuf-compiler",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "pylatex",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "pylint",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "pytest",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "pytest-asyncio",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "pytest-benchmark",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "pytest-cov",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "pytest-randomly",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "pytest-xdist",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "python3-tk",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "qiskit-aer",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "quimb",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "recommonmark",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "req1",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "req2",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "requests",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "ruff",
"direct": false,
"version": "0.15.15",
"ecosystem": "pypi"
},
{
"name": "scipy",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "seaborn",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "setuptools",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "sortedcontainers",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "sphinx",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "sphinx-rtd-theme",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "stimcirq",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "sympy",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "tensorflow-docs",
"direct": false,
"version": "2025.2.19.33219",
"ecosystem": "pypi"
},
{
"name": "texlive-latex-base",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "texlive-latex-extra",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "tqdm",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "twine",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "typedunits",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "types-protobuf",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "types-requests",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "typing",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "typing-extensions",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "virtualenv",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "virtualenv-clone",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "virtualenvwrapper",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "wheel",
"direct": false,
"version": null,
"ecosystem": "pypi"
}
],
"collected": true,
"truncated": false,
"total_count": 574,
"direct_count": 0,
"indirect_count": 574
}
},
"maintainership": {
"issues": {
"open_prs": 38,
"merged_prs": 4799,
"open_issues": 92,
"closed_ratio": 0.963,
"closed_issues": 2395,
"closed_unmerged_prs": 883
},
"bus_factor": 6,
"bot_contributors": 1,
"top_contributors": [
{
"type": "User",
"login": "Strilanc",
"commits": 534,
"avatar_url": "https://avatars.githubusercontent.com/u/79941?v=4"
},
{
"type": "User",
"login": "pavoljuhas",
"commits": 488,
"avatar_url": "https://avatars.githubusercontent.com/u/1915760?v=4"
},
{
"type": "User",
"login": "dstrain115",
"commits": 395,
"avatar_url": "https://avatars.githubusercontent.com/u/22484728?v=4"
},
{
"type": "User",
"login": "dabacon",
"commits": 349,
"avatar_url": "https://avatars.githubusercontent.com/u/87974?v=4"
},
{
"type": "User",
"login": "tanujkhattar",
"commits": 232,
"avatar_url": "https://avatars.githubusercontent.com/u/7863287?v=4"
},
{
"type": "User",
"login": "maffoo",
"commits": 216,
"avatar_url": "https://avatars.githubusercontent.com/u/129268?v=4"
},
{
"type": "User",
"login": "balopat",
"commits": 197,
"avatar_url": "https://avatars.githubusercontent.com/u/635073?v=4"
},
{
"type": "User",
"login": "daxfohl",
"commits": 171,
"avatar_url": "https://avatars.githubusercontent.com/u/905073?v=4"
},
{
"type": "User",
"login": "mhucka",
"commits": 127,
"avatar_url": "https://avatars.githubusercontent.com/u/1450019?v=4"
},
{
"type": "User",
"login": "viathor",
"commits": 112,
"avatar_url": "https://avatars.githubusercontent.com/u/40255865?v=4"
}
],
"contributors_sampled": 99,
"top_contributor_share": 0.121
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"ci-daily.yml",
"ci-monitoring.yml",
"ci-weekly.yml",
"ci.yml",
"cifuzz.yml",
"issue-labeler.yaml",
"pr-labeler.yaml",
"release-main.yml",
"scorecard-scanner.yaml",
"stale.yml"
],
"has_docs_dir": true,
"linter_configs": [],
"has_editorconfig": true,
"has_linter_config": false,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [
"package-lock.json"
],
"scorecard": {
"checks": [
{
"name": "Binary-Artifacts",
"score": 10,
"reason": "no binaries found in the repo",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
},
{
"name": "Branch-Protection",
"score": null,
"reason": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
},
{
"name": "CI-Tests",
"score": 10,
"reason": "30 out of 30 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": 2,
"reason": "badge detected: InProgress",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
},
{
"name": "Code-Review",
"score": 10,
"reason": "all changesets reviewed",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
},
{
"name": "Contributors",
"score": 10,
"reason": "project has 17 contributing companies or organizations",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
},
{
"name": "Dangerous-Workflow",
"score": 10,
"reason": "no dangerous workflow patterns detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
},
{
"name": "Dependency-Update-Tool",
"score": 10,
"reason": "update tool detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
},
{
"name": "Fuzzing",
"score": 10,
"reason": "project is 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 15 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": 3,
"reason": "dependency not pinned by hash detected -- score normalized to 3",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
},
{
"name": "SAST",
"score": 10,
"reason": "SAST tool is run on all commits",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
},
{
"name": "Security-Policy",
"score": 10,
"reason": "security policy file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
},
{
"name": "Signed-Releases",
"score": 0,
"reason": "Project has not signed or included provenance with any releases.",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
},
{
"name": "Token-Permissions",
"score": 10,
"reason": "GitHub workflow tokens follow principle of least privilege",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
},
{
"name": "Vulnerabilities",
"score": 0,
"reason": "15 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "9d2438f1858c7392d9f87893f5c714fb6dad7ff2",
"ran_at": "2026-07-29T17:58:07Z",
"aggregate_score": 7.8,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": false,
"has_security_policy": true,
"has_dependabot_config": true
},
"contribution_flow": {
"collected": true,
"ci_last_run_at": "2026-07-29T17:55:33Z",
"oldest_open_prs": [
{
"number": 6944,
"created_at": "2025-01-11T19:38:42Z",
"last_comment_at": "2026-07-15T00:42:25Z",
"last_comment_author": "github-actions"
},
{
"number": 7373,
"created_at": "2025-05-26T10:45:05Z",
"last_comment_at": "2026-06-03T01:23:22Z",
"last_comment_author": "github-actions"
},
{
"number": 7541,
"created_at": "2025-07-29T08:26:51Z",
"last_comment_at": "2026-04-15T03:56:54Z",
"last_comment_author": "mhucka"
},
{
"number": 7738,
"created_at": "2025-11-05T17:29:13Z",
"last_comment_at": "2026-07-21T06:43:43Z",
"last_comment_author": "radumarg"
},
{
"number": 7751,
"created_at": "2025-11-12T20:05:54Z",
"last_comment_at": "2026-05-20T23:18:02Z",
"last_comment_author": "eliottrosenberg"
},
{
"number": 7752,
"created_at": "2025-11-13T11:02:21Z",
"last_comment_at": "2026-03-13T00:47:45Z",
"last_comment_author": "wjhuggins"
},
{
"number": 7827,
"created_at": "2026-01-06T18:00:14Z",
"last_comment_at": "2026-01-08T18:21:16Z",
"last_comment_author": "codecov"
},
{
"number": 7942,
"created_at": "2026-03-09T06:32:38Z",
"last_comment_at": "2026-04-15T17:52:27Z",
"last_comment_author": "pavoljuhas"
},
{
"number": 7978,
"created_at": "2026-03-27T02:03:22Z",
"last_comment_at": "2026-07-09T00:54:28Z",
"last_comment_author": "github-actions"
},
{
"number": 8026,
"created_at": "2026-04-10T08:05:48Z",
"last_comment_at": "2026-06-01T10:49:04Z",
"last_comment_author": "dlyongemallo"
},
{
"number": 8054,
"created_at": "2026-04-21T18:22:50Z",
"last_comment_at": "2026-06-24T16:42:13Z",
"last_comment_author": "pavoljuhas"
},
{
"number": 8091,
"created_at": "2026-05-22T21:27:27Z",
"last_comment_at": "2026-06-26T01:54:07Z",
"last_comment_author": "pavoljuhas"
},
{
"number": 8098,
"created_at": "2026-05-28T18:50:06Z",
"last_comment_at": "2026-06-26T01:52:23Z",
"last_comment_author": "pavoljuhas"
},
{
"number": 8125,
"created_at": "2026-06-04T23:41:52Z",
"last_comment_at": "2026-06-05T00:02:40Z",
"last_comment_author": "codecov"
},
{
"number": 8139,
"created_at": "2026-06-14T23:12:49Z",
"last_comment_at": "2026-06-15T00:19:49Z",
"last_comment_author": "codecov"
},
{
"number": 8141,
"created_at": "2026-06-16T16:53:19Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 8145,
"created_at": "2026-06-17T21:19:40Z",
"last_comment_at": "2026-06-17T21:26:57Z",
"last_comment_author": "codecov"
},
{
"number": 8170,
"created_at": "2026-06-30T07:09:42Z",
"last_comment_at": "2026-07-20T04:46:51Z",
"last_comment_author": "mhucka"
},
{
"number": 8171,
"created_at": "2026-06-30T07:09:46Z",
"last_comment_at": "2026-07-10T19:32:57Z",
"last_comment_author": "anshjaiswal12"
},
{
"number": 8172,
"created_at": "2026-06-30T07:53:24Z",
"last_comment_at": "2026-07-01T19:17:28Z",
"last_comment_author": "anshjaiswal12"
}
],
"last_merged_pr_at": "2026-07-29T17:55:27Z",
"ci_last_conclusion": null,
"oldest_open_issues": [
{
"number": 461,
"created_at": "2018-06-13T23:43:29Z",
"last_comment_at": "2022-03-28T21:02:56Z",
"last_comment_author": "95-martin-orion"
},
{
"number": 1189,
"created_at": "2018-11-22T02:10:08Z",
"last_comment_at": "2026-05-14T13:55:09Z",
"last_comment_author": "matti-sarjala"
},
{
"number": 1544,
"created_at": "2019-04-17T21:19:54Z",
"last_comment_at": "2020-08-31T21:11:19Z",
"last_comment_author": "balopat"
},
{
"number": 1731,
"created_at": "2019-06-19T18:41:23Z",
"last_comment_at": "2025-05-14T00:33:16Z",
"last_comment_author": "github-actions"
},
{
"number": 1740,
"created_at": "2019-06-21T22:12:14Z",
"last_comment_at": "2026-05-14T12:44:56Z",
"last_comment_author": "matti-sarjala"
},
{
"number": 2183,
"created_at": "2019-09-25T20:36:27Z",
"last_comment_at": "2026-07-17T02:26:53Z",
"last_comment_author": "minorllama"
},
{
"number": 2217,
"created_at": "2019-09-27T03:49:20Z",
"last_comment_at": "2025-01-29T05:32:47Z",
"last_comment_author": "justinpan0"
},
{
"number": 2313,
"created_at": "2019-10-10T23:54:45Z",
"last_comment_at": "2023-07-13T00:07:15Z",
"last_comment_author": "westurner"
},
{
"number": 2382,
"created_at": "2019-10-19T18:44:35Z",
"last_comment_at": "2021-10-15T19:06:12Z",
"last_comment_author": "viathor"
},
{
"number": 2581,
"created_at": "2019-11-20T21:43:04Z",
"last_comment_at": "2020-09-21T16:40:32Z",
"last_comment_author": "balopat"
},
{
"number": 2737,
"created_at": "2020-02-05T01:36:40Z",
"last_comment_at": "2026-07-11T01:57:35Z",
"last_comment_author": "arettig"
},
{
"number": 2763,
"created_at": "2020-02-12T20:39:04Z",
"last_comment_at": "2025-12-10T18:58:53Z",
"last_comment_author": "pavoljuhas"
},
{
"number": 3248,
"created_at": "2020-08-19T19:00:23Z",
"last_comment_at": "2021-04-29T01:00:47Z",
"last_comment_author": "mpharrigan"
},
{
"number": 3342,
"created_at": "2020-09-18T22:55:01Z",
"last_comment_at": "2026-07-22T06:44:27Z",
"last_comment_author": "sankalpsthakur"
},
{
"number": 3612,
"created_at": "2020-12-16T02:03:20Z",
"last_comment_at": "2021-12-13T18:24:12Z",
"last_comment_author": "95-martin-orion"
},
{
"number": 3614,
"created_at": "2020-12-16T21:31:53Z",
"last_comment_at": "2022-03-28T22:50:38Z",
"last_comment_author": "95-martin-orion"
},
{
"number": 3808,
"created_at": "2021-02-15T14:10:10Z",
"last_comment_at": "2021-02-24T19:34:23Z",
"last_comment_author": "balopat"
},
{
"number": 3913,
"created_at": "2021-03-13T19:06:32Z",
"last_comment_at": "2023-01-24T21:09:03Z",
"last_comment_author": "cduck"
},
{
"number": 4059,
"created_at": "2021-04-28T00:58:26Z",
"last_comment_at": "2022-05-31T18:04:52Z",
"last_comment_author": "tanujkhattar"
},
{
"number": 4321,
"created_at": "2021-07-14T16:57:48Z",
"last_comment_at": "2025-06-25T17:48:20Z",
"last_comment_author": "pavoljuhas"
}
]
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/quantumlib/Cirq",
"host": "github.com",
"name": "Cirq",
"owner": "quantumlib"
},
"metrics": {
"overall": {
"key": "overall",
"band": "excellent",
"name": "Overall health",
"note": null,
"notes": [],
"value": 87,
"inputs": {
"security": 82,
"vitality": 90,
"community": 90,
"governance": 89,
"engineering": 84
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "excellent",
"name": "Vitality",
"value": 90,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "excellent",
"name": "Development activity",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"commits_last_year": 408,
"human_commit_share": 0.97,
"days_since_last_push": 0,
"active_weeks_last_year": 52
},
"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": "52/52 weeks with commits",
"points": 36,
"status": "met",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 52
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "408 commits in the last year",
"points": 18,
"status": "met",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 408
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "30 commit(s) and 15 issue activity found in the last 90 days -- score normalized to 10",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "release_discipline",
"band": "good",
"name": "Release discipline",
"note": null,
"notes": [],
"value": 76,
"inputs": {
"releases_count": 31,
"latest_release_tag": "v1.7.0",
"releases_from_tags": false,
"days_since_latest_release": 28,
"mean_days_between_releases": 160.3
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "31 releases published",
"points": 27,
"status": "met",
"details": [
{
"code": "releases_published",
"params": {
"count": 31
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 28 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 28
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~160.3 days",
"points": 12.6,
"status": "partial",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 160.3
}
}
],
"max_points": 27
},
{
"key": "openssf_scorecard_signed_releases",
"name": "OpenSSF Scorecard: Signed-Releases",
"detail": "Project has not signed or included provenance with any releases.",
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
},
{
"key": "abandonment",
"band": "excellent",
"name": "Abandonment",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"cap": null,
"state": "maintained",
"guards": [],
"signals": [],
"red_flag": false,
"multiplier_pct": 100,
"declared_reason": null,
"unverified_reason": null,
"unanswered_open_prs": null,
"unanswered_open_issues": null,
"days_since_last_merged_pr": null,
"days_since_last_human_commit": 0,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "last human commit 0 days ago",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_maintained",
"params": {
"days": 0
}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "excellent",
"name": "Community & Adoption",
"value": 90,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "excellent",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 98,
"inputs": {
"forks": 1252,
"stars": 5026,
"watchers": 191,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "5,026 stars",
"points": 60,
"status": "met",
"details": [
{
"code": "stars",
"params": {
"count": 5026
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "1,252 forks",
"points": 25,
"status": "met",
"details": [
{
"code": "forks",
"params": {
"count": 1252
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "191 watchers",
"points": 12.7,
"status": "partial",
"details": [
{
"code": "watchers",
"params": {
"count": 191
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "excellent",
"name": "Community health",
"note": null,
"notes": [],
"value": 85,
"inputs": {
"has_readme": true,
"has_license": true,
"has_contributing": true,
"has_issue_template": false,
"has_code_of_conduct": true,
"has_pull_request_template": false
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 22.5,
"status": "met",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "recognized license (Apache-2.0)",
"points": 22.5,
"status": "met",
"details": [
{
"code": "license_standard",
"params": {}
},
{
"code": "license_spdx",
"params": {
"spdx": "Apache-2.0"
}
}
],
"max_points": 22.5
},
{
"key": "contributing_guide",
"name": "CONTRIBUTING guide",
"detail": null,
"points": 18,
"status": "met",
"details": [],
"max_points": 18
},
{
"key": "code_of_conduct",
"name": "Code of conduct",
"detail": null,
"points": 13.5,
"status": "met",
"details": [],
"max_points": 13.5
},
{
"key": "issue_template",
"name": "Issue template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.2
},
{
"key": "pr_template",
"name": "PR template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 6.3
}
]
},
{
"key": "ecosystem_adoption",
"band": "good",
"name": "Ecosystem adoption (downloads)",
"note": "Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"registry_dependents"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 84,
"inputs": {
"packages": [
"cirq",
"cirq-aqt",
"cirq-web",
"cirq-core",
"cirq-ionq",
"cirq-google",
"cirq-pasqal"
],
"dependents": null,
"ecosystems": "pypi",
"total_downloads": null,
"monthly_downloads": 107471
},
"components": [
{
"key": "monthly_downloads",
"name": "Monthly downloads",
"detail": "107,471 downloads/month across pypi",
"points": 67.1,
"status": "partial",
"details": [
{
"code": "downloads_monthly",
"params": {
"count": 107471,
"ecosystems": "pypi"
}
}
],
"max_points": 80
},
{
"key": "registry_dependents",
"name": "Registry dependents",
"detail": "not reported by this ecosystem",
"points": 0,
"status": "excluded",
"details": [
{
"code": "not_reported_by_this_ecosystem",
"params": {}
}
],
"max_points": 20
}
]
}
],
"description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
},
{
"key": "governance",
"band": "excellent",
"name": "Sustainability & Governance",
"value": 89,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "excellent",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 92,
"inputs": {
"bus_factor": 6,
"contributors_sampled": 99,
"top_contributor_share": 0.121
},
"components": [
{
"key": "bus_factor",
"name": "Bus factor",
"detail": "6 contributor(s) cover half of all commits",
"points": 48.6,
"status": "partial",
"details": [
{
"code": "bus_factor",
"params": {
"count": 6
}
}
],
"max_points": 54
},
{
"key": "commit_distribution",
"name": "Commit distribution",
"detail": "top contributor authored 12% of commits",
"points": 19.8,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 12
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "99 contributors",
"points": 13.5,
"status": "met",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 99
}
}
],
"max_points": 13.5
},
{
"key": "openssf_scorecard_contributors",
"name": "OpenSSF Scorecard: Contributors",
"detail": "project has 17 contributing companies or organizations",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "responsiveness",
"band": "excellent",
"name": "Issue & PR responsiveness",
"note": null,
"notes": [],
"value": 92,
"inputs": {
"merged_prs": 4799,
"open_issues": 92,
"closed_issues": 2395,
"issue_closed_ratio": 0.963,
"closed_unmerged_prs": 883
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "96% of issues closed",
"points": 45,
"status": "partial",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 96
}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "4799/5682 decided PRs merged",
"points": 32.3,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 4799,
"decided": 5682
}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "all changesets reviewed",
"points": 15,
"status": "met",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "good",
"name": "Ownership & stewardship",
"note": null,
"notes": [],
"value": 74,
"inputs": {
"followers": 1401,
"owner_type": "Organization",
"is_verified": null,
"owner_login": "quantumlib",
"public_repos": 17,
"account_age_days": 3262
},
"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": "1,401 followers of quantumlib",
"points": 22.6,
"status": "partial",
"details": [
{
"code": "owner_followers",
"params": {
"count": 1401,
"login": "quantumlib"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "17 public repos, account ~8 yr old",
"points": 21.1,
"status": "partial",
"details": [
{
"code": "public_repos",
"params": {
"count": 17
}
},
{
"code": "account_age_years",
"params": {
"years": 8
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "excellent",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"cirq",
"cirq-aqt",
"cirq-web",
"cirq-core",
"cirq-ionq",
"cirq-google",
"cirq-pasqal"
],
"ecosystems": "pypi",
"any_deprecated": false,
"min_days_since_publish": 29
},
"components": [
{
"key": "published_resolvable",
"name": "Published & resolvable",
"detail": "7 package(s) on pypi",
"points": 25,
"status": "met",
"details": [
{
"code": "packages_published",
"params": {
"count": 7,
"ecosystems": "pypi"
}
}
],
"max_points": 25
},
{
"key": "publish_recency",
"name": "Publish recency",
"detail": "latest publish 29 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 29
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "2729 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 2729
}
}
],
"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": "good",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 74,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": true,
"has_linter_config": false,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "10 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 10
}
}
],
"max_points": 24
},
{
"key": "tests_present",
"name": "Tests present",
"detail": null,
"points": 24,
"status": "met",
"details": [],
"max_points": 24
},
{
"key": "linter_config",
"name": "Linter config",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 16
},
{
"key": "pre_commit_hooks",
"name": "Pre-commit hooks",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 9.6
},
{
"key": "editorconfig",
"name": ".editorconfig",
"detail": null,
"points": 6.4,
"status": "met",
"details": [],
"max_points": 6.4
},
{
"key": "openssf_scorecard_ci_tests",
"name": "OpenSSF Scorecard: CI-Tests",
"detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
"points": 20,
"status": "met",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "excellent",
"name": "Documentation",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"topics": [
"nisq",
"quantum-algorithms",
"quantum-computing",
"cirq",
"algorithms",
"api",
"google-quantum",
"python",
"quantum",
"quantum-circuit",
"quantum-circuit-simulator",
"quantum-development-kit",
"quantum-information",
"quantum-programming",
"quantum-simulation",
"sdk",
"simulation",
"quantum-computer-simulator",
"quantum-programming-language",
"google"
],
"has_wiki": true,
"homepage": "https://quantumai.google/cirq",
"has_readme": true,
"has_docs_dir": true,
"has_description": true
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 30,
"status": "met",
"details": [],
"max_points": 30
},
{
"key": "documentation_directory",
"name": "Documentation directory",
"detail": null,
"points": 25,
"status": "met",
"details": [],
"max_points": 25
},
{
"key": "documentation_homepage_site",
"name": "Documentation / homepage site",
"detail": "https://quantumai.google/cirq",
"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": "20 topics",
"points": 10,
"status": "met",
"details": [
{
"code": "topics_count",
"params": {
"count": 20
}
}
],
"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": "good",
"name": "Security",
"value": 82,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "good",
"name": "Security posture",
"note": "Excluded from scoring (no data or not applicable): Branch-Protection, Packaging. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"branch_protection",
"packaging"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 78,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 16,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 2,
"scorecard_aggregate": 7.8
},
"components": [
{
"key": "binary_artifacts",
"name": "Binary-Artifacts",
"detail": "no binaries found in the repo",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "branch_protection",
"name": "Branch-Protection",
"detail": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "30 out of 30 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": "badge detected: InProgress",
"points": 0.5,
"status": "partial",
"details": [],
"max_points": 2.5
},
{
"key": "code_review",
"name": "Code-Review",
"detail": "all changesets reviewed",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 17 contributing companies or organizations",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "dangerous_workflow",
"name": "Dangerous-Workflow",
"detail": "no dangerous workflow patterns detected",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "dependency_update_tool",
"name": "Dependency-Update-Tool",
"detail": "update tool detected",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "fuzzing",
"name": "Fuzzing",
"detail": "project is fuzzed",
"points": 5,
"status": "met",
"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 15 issue activity found in the last 90 days -- score normalized to 10",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "packaging",
"name": "Packaging",
"detail": "packaging workflow not detected",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 5
},
{
"key": "pinned_dependencies",
"name": "Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 3",
"points": 1.5,
"status": "partial",
"details": [],
"max_points": 5
},
{
"key": "sast",
"name": "SAST",
"detail": "SAST tool is run on all commits",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "security_policy",
"name": "Security-Policy",
"detail": "security policy file detected",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "signed_releases",
"name": "Signed-Releases",
"detail": "Project has not signed or included provenance with any releases.",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "token_permissions",
"name": "Token-Permissions",
"detail": "GitHub workflow tokens follow principle of least privilege",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "vulnerabilities",
"name": "Vulnerabilities",
"detail": "15 existing vulnerabilities detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "dependency_advisories",
"band": "excellent",
"name": "Dependency advisories",
"note": "Excluded from scoring (no data or not applicable): No advisories left outstanding. Remaining weights renormalized. Matched the pypi:cirq@1.7.0 runtime dependency closure — what installing the published package pulls in — 44 packages. Reachability is not analyzed.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"no_advisories_left_outstanding"
]
}
},
{
"code": "weights_renormalized",
"params": {}
},
{
"code": "advisories_scope_published",
"params": {
"package": "pypi:cirq@1.7.0",
"assessed": 44
}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 100,
"inputs": {
"source": "osv",
"advisories": 0,
"affected_packages": 0,
"assessed_packages": 44,
"unassessed_packages": 0,
"affected_by_severity": "none",
"direct_affected_packages": 0
},
"components": [
{
"key": "direct_dependencies_free_of_known_advisories",
"name": "Direct dependencies free of known advisories",
"detail": "no direct dependency carries a known advisory",
"points": 35,
"status": "met",
"details": [
{
"code": "no_direct_advisories",
"params": {}
}
],
"max_points": 35
},
{
"key": "indirect_dependencies_free_of_known_advisories",
"name": "Indirect dependencies free of known advisories",
"detail": "no indirect dependency carries a known advisory",
"points": 25,
"status": "met",
"details": [
{
"code": "no_indirect_advisories",
"params": {}
}
],
"max_points": 25
},
{
"key": "no_advisories_left_outstanding",
"name": "No advisories left outstanding",
"detail": "no advisory carries a publication date",
"points": 0,
"status": "excluded",
"details": [
{
"code": "advisories_no_publication_date",
"params": {}
}
],
"max_points": 40
}
]
},
{
"key": "malicious_dependencies",
"band": "excellent",
"name": "Malicious dependencies",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"source": "osv",
"meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
"packages": [],
"red_flag": false,
"assessed_packages": 44,
"malicious_packages": 0,
"direct_malicious_packages": 0,
"withdrawn_malicious_packages": 0,
"installable_malicious_packages": 0
},
"components": [
{
"key": "no_dependency_reported_as_a_malicious_package",
"name": "No dependency reported as a malicious package",
"detail": "no dependency is reported as a malicious package",
"points": 100,
"status": "met",
"details": [
{
"code": "no_malicious_dependencies",
"params": {}
}
],
"max_points": 100
}
]
},
{
"key": "high_risk_jurisdiction_exposure",
"band": "excellent",
"name": "High-Risk Jurisdiction Exposure",
"note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
"notes": [
{
"code": "jurisdiction_evidence_limits",
"params": {}
}
],
"value": 100,
"inputs": {
"meaning": "self-published location evidence; not nationality or citizenship",
"red_flag": false,
"exposures": [],
"policy_countries": [
"Russia",
"Iran",
"North Korea"
],
"review_only_matches": 0,
"assessed_self_published_locations": 9
},
"components": [
{
"key": "policy_exposure_multiplier",
"name": "Policy exposure multiplier",
"detail": "no confirmed policy-scope location match",
"points": 100,
"status": "met",
"details": [
{
"code": "jurisdiction_no_match",
"params": {}
}
],
"max_points": 100
}
]
}
],
"description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
},
{
"key": "ai_readiness",
"band": "moderate",
"name": "AI Readiness",
"value": 58,
"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.99,
"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": "96 of 97 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 96,
"sampled": 97
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "moderate",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 54,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [
"package-lock.json"
],
"has_dockerfile": false,
"typed_language": false,
"bootstrap_files": [],
"has_devcontainer": false,
"has_linter_config": false,
"typecheck_configs": [
"cirq-core/cirq/py.typed",
"cirq-google/cirq_google/cloud/quantum/py.typed",
"cirq-google/cirq_google/cloud/quantum_v1alpha1/py.typed",
"cirq-google/cirq_google/py.typed",
"cirq-web/cirq_web/tsconfig.json"
],
"agent_commit_share": 0,
"toolchain_manifests": [],
"dependency_bot_commit_share": 0.03
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 18
},
{
"key": "automated_tests",
"name": "Automated tests",
"detail": null,
"points": 22,
"status": "met",
"details": [],
"max_points": 22
},
{
"key": "lint_format_config",
"name": "Lint / format config",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": "cirq-core/cirq/py.typed, cirq-google/cirq_google/cloud/quantum/py.typed, cirq-google/cirq_google/cloud/quantum_v1alpha1/py.typed, cirq-google/cirq_google/py.typed, cirq-web/cirq_web/tsconfig.json",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "cirq-core/cirq/py.typed, cirq-google/cirq_google/cloud/quantum/py.typed, cirq-google/cirq_google/cloud/quantum_v1alpha1/py.typed, cirq-google/cirq_google/py.typed, cirq-web/cirq_web/tsconfig.json"
}
}
],
"max_points": 11
},
{
"key": "reproducible_environment",
"name": "Reproducible environment",
"detail": "lockfile",
"points": 10,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "lockfile"
}
}
],
"max_points": 10
},
{
"key": "demonstrated_agent_practice",
"name": "Demonstrated agent practice",
"detail": "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": "3 of the last 100 commits are automated dependency updates",
"points": 8,
"status": "met",
"details": [
{
"code": "dependency_bot_commits",
"params": {
"count": 3,
"sampled": 100
}
}
],
"max_points": 8
},
{
"key": "openssf_scorecard_pinned_dependencies",
"name": "OpenSSF Scorecard: Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 3",
"points": 3,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "good",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 81,
"inputs": {
"primary_language": "Python",
"largest_source_bytes": 272328,
"source_files_sampled": 1225,
"oversized_source_files": 14
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "Python with type-check config (cirq-core/cirq/py.typed, cirq-google/cirq_google/cloud/quantum/py.typed, cirq-google/cirq_google/cloud/quantum_v1alpha1/py.typed, cirq-google/cirq_google/py.typed, cirq-web/cirq_web/tsconfig.json)",
"points": 27,
"status": "partial",
"details": [
{
"code": "typecheck_config_language",
"params": {
"files": "cirq-core/cirq/py.typed, cirq-google/cirq_google/cloud/quantum/py.typed, cirq-google/cirq_google/cloud/quantum_v1alpha1/py.typed, cirq-google/cirq_google/py.typed, cirq-web/cirq_web/tsconfig.json",
"language": "Python"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "14/1225 source files over 60KB",
"points": 54.4,
"status": "partial",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 1225,
"oversized": 14
}
}
],
"max_points": 55
}
]
},
{
"key": "ai_interfaces",
"band": "good",
"name": "Machine-readable interfaces",
"note": null,
"notes": [],
"value": 80,
"inputs": {
"example_dirs": [
"examples",
"notebooks"
],
"has_mcp_signal": false,
"api_schema_files": [
"cirq-google/cirq_google/api/v1/operations.proto",
"cirq-google/cirq_google/api/v1/params.proto",
"cirq-google/cirq_google/api/v1/program.proto",
"cirq-google/cirq_google/api/v2/batch.proto",
"cirq-google/cirq_google/api/v2/calibration.proto",
"cirq-google/cirq_google/api/v2/device.proto",
"cirq-google/cirq_google/api/v2/metrics.proto",
"cirq-google/cirq_google/api/v2/ndarrays.proto",
"cirq-google/cirq_google/api/v2/program.proto",
"cirq-google/cirq_google/api/v2/result.proto",
"cirq-google/cirq_google/api/v2/run_context.proto"
]
},
"components": [
{
"key": "api_schema_openapi_graphql_proto",
"name": "API schema (OpenAPI/GraphQL/proto)",
"detail": "cirq-google/cirq_google/api/v1/operations.proto, cirq-google/cirq_google/api/v1/params.proto, cirq-google/cirq_google/api/v1/program.proto, cirq-google/cirq_google/api/v2/batch.proto, cirq-google/cirq_google/api/v2/calibration.proto, cirq-google/cirq_google/api/v2/device.proto, cirq-google/cirq_google/api/v2/metrics.proto, cirq-google/cirq_google/api/v2/ndarrays.proto, cirq-google/cirq_google/api/v2/program.proto, cirq-google/cirq_google/api/v2/result.proto, cirq-google/cirq_google/api/v2/run_context.proto",
"points": 40,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "cirq-google/cirq_google/api/v1/operations.proto, cirq-google/cirq_google/api/v1/params.proto, cirq-google/cirq_google/api/v1/program.proto, cirq-google/cirq_google/api/v2/batch.proto, cirq-google/cirq_google/api/v2/calibration.proto, cirq-google/cirq_google/api/v2/device.proto, cirq-google/cirq_google/api/v2/metrics.proto, cirq-google/cirq_google/api/v2/ndarrays.proto, cirq-google/cirq_google/api/v2/program.proto, cirq-google/cirq_google/api/v2/result.proto, cirq-google/cirq_google/api/v2/run_context.proto"
}
}
],
"max_points": 40
},
{
"key": "mcp_server",
"name": "MCP server",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 20
},
{
"key": "runnable_examples",
"name": "Runnable examples",
"detail": "examples, notebooks",
"points": 40,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "examples, notebooks"
}
}
],
"max_points": 40
}
]
}
],
"description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
}
],
"metrics_version": "1.13.0"
},
"warnings": [
"Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token"
],
"report_type": "repository",
"generated_at": "2026-07-29T17:58:46.206847Z",
"schema_version": "0.27.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/q/quantumlib/Cirq.svg",
"full_name": "quantumlib/Cirq",
"license_state": "standard",
"license_spdx": "Apache-2.0"
}