.. image:: https://img.shields.io/pypi/v/minorminer.svg
:target: https://pypi.org/project/minorminer
.. image:: https://img.shields.io/pypi/pyversions/minorminer.svg
:target: https://pypi.python.org/pypi/minorminer
.. image:: https://circleci.com/gh/dwavesystems/minorminer.svg?style=svg
:target: https://circleci.com/gh/dwavesystems/minorminer
.. image:: https://img.shields.io/badge/arXiv-1406.2741-b31b1b.svg
:target: https://arxiv.org/abs/1406.2741
.. image:: https://img.shields.io/badge/arXiv-1507.04774-b31b1b.svg
:target: https://arxiv.org/abs/1507.04774
==========
minorminer
==========
.. start_minorminer_about
`minorminer` is a heuristic tool for minor embedding: given a minor and target
graph, it tries to find a mapping that embeds the minor into the target.
.. start_minorminer_about_general_embedding
The primary utility function, ``find_embedding()``, is an implementation of
the heuristic algorithm described in [1]. It accepts various optional parameters
used to tune the algorithm's execution or constrain the given problem.
This implementation performs on par with tuned, non-configurable implementations
while providing users with hooks to easily use the code as a basic building
block in research.
[1] https://arxiv.org/abs/1406.2741
Another function, ``find_clique_embedding()``, can be used to find clique
embeddings for Chimera, Pegasus, and Zephyr graphs in polynomial time. It is an
implementation of the algorithm described in [2]. There are additional utilities
for finding biclique embeddings as well.
[2] https://arxiv.org/abs/1507.04774
.. end_minorminer_about
Python
======
Installation
------------
pip installation is recommended for platforms with precompiled wheels posted to
pypi. Source distributions are provided as well.
.. code-block:: bash
pip install minorminer
To install from this repository, you will need to first fetch the submodules
git submodule init
git submodule update
and then run the `setuptools` script.
.. code-block:: bash
pip install -r requirements.txt
python setup.py install
# optionally, run the tests to check your build
pip install -r tests/requirements.txt
python -m pytest .
Examples
--------
.. start_minorminer_examples_python
.. code-block:: python
from minorminer import find_embedding
# A triangle is a minor of a square.
triangle = [(0, 1), (1, 2), (2, 0)]
square = [(0, 1), (1, 2), (2, 3), (3, 0)]
# Find an assignment of sets of square variables to the triangle variables
embedding = find_embedding(triangle, square, random_seed=10)
print(len(embedding)) # 3, one set for each variable in the triangle
print(embedding)
# We don't know which variables will be assigned where, here are a
# couple possible outputs:
# [[0, 1], [2], [3]]
# [[3], [1, 0], [2]]
.. code-block:: python
# We can insist that variable 0 of the triangle will always be assigned to [2]
embedding = find_embedding(triangle, square, fixed_chains={0: [2]})
print(embedding)
# [[2], [3, 0], [1]]
# [[2], [1], [0, 3]]
# And more, but all of them start with [2]
.. code-block:: python
# If we didn't want to force variable 0 to stay as [2], but we thought that
# was a good start we could provide it as an initialization hint instead.
embedding = find_embedding(triangle, square, initial_chains={0: [2]})
print(embedding)
# [[2], [0, 3], [1]]
# [[0], [3], [1, 2]]
# Output where variable 0 has switched to something else is possible again.
.. code-block:: python
import networkx as nx
# An example on some less trivial graphs
# We will try to embed a fully connected graph with 6 nodes, into a
# random regular graph with degree 3.
clique = nx.complete_graph(6).edges()
target_graph = nx.random_regular_graph(d=3, n=30).edges()
embedding = find_embedding(clique, target_graph)
print(embedding)
# There are many possible outputs for this, sometimes it might even fail
# and return an empty list
A more fleshed out example can be found under `examples/fourcolor.py`
.. code-block:: bash
cd examples
pip install -r requirements.txt
python fourcolor.py
.. end_minorminer_examples_python
C++
===
Installation
------------
The `CMakeLists.txt` in the root of this repo will build the library and
optionally run a series of tests. On Linux, the commands would be something like
this:
.. code-block:: bash
mkdir build; cd build
cmake ..
make
To build the tests, turn the CMake option `MINORMINER_BUILD_TESTS` on. The
command line option for CMake to do this would be `-DMINORMINER_BUILD_TESTS=ON`.
Library Usage
-------------
C++11 programs should be able to use this as a header-only library. If your
project is using CMake, this library can be used fairly simply; if you have
checked out this repo as `externals/minorminer` in your project, you would need
to add the following lines to your `CMakeLists.txt`
.. code-block:: CMake
add_subdirectory(externals/minorminer)
# After your target is defined
target_link_libraries(your_target minorminer pthread)
Examples
--------
A minimal buildable example can be found in this repo under
`examples/example.cpp`.
.. code-block:: bash
cd examples
g++ example.cpp -std=c++11 -o example -pthread
This can also be built using the included `CMakeLists.txt` along with the main
library build by turning the CMake option `MINORMINER_BUILD_EXAMPLES` on. The
command line option for CMake to do this would be
`-DMINORMINER_BUILD_EXAMPLES=ON`.
License
=======
Released under the Apache License 2.0. See `<LICENSE>`_ file.
Contributing
============
Ocean's `contributing guide <https://docs.dwavequantum.com/en/latest/ocean/contribute.html>`_
has guidelines for contributing to Ocean packages.
If you're interested in adding or modifying parameters of the ``find_embedding``
primary utility function, please see the `<parameter_checklist.txt>`_ file.
Release Notes
-------------
``minorminer`` makes use of `reno <https://docs.openstack.org/reno/>`_
to manage its release notes.
When making a contribution to ``minorminer`` that will affect users,
create a new release note file by running
.. code-block:: bash
reno new your-short-descriptor-here
You can then edit the file created under ``releasenotes/notes/``. Remove any sections
not relevant to your changes. Commit the file along with your changes.
See reno's `user guide <https://docs.openstack.org/reno/latest/user/usage.html>`_
for details.
Raw data
{
"_id": null,
"home_page": null,
"name": "minorminer",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": "\"D-Wave Inc.\" <tools@dwavesys.com>",
"keywords": null,
"author": "Kelly Boothby",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/e6/fd/2b57ef803a74e1bb016ea8504ed5e99948acc27b667ce89aa45519f17a09/minorminer-0.2.21.tar.gz",
"platform": null,
"description": ".. image:: https://img.shields.io/pypi/v/minorminer.svg\n :target: https://pypi.org/project/minorminer\n\n.. image:: https://img.shields.io/pypi/pyversions/minorminer.svg\n :target: https://pypi.python.org/pypi/minorminer\n\n.. image:: https://circleci.com/gh/dwavesystems/minorminer.svg?style=svg\n :target: https://circleci.com/gh/dwavesystems/minorminer\n\n.. image:: https://img.shields.io/badge/arXiv-1406.2741-b31b1b.svg\n :target: https://arxiv.org/abs/1406.2741\n\n.. image:: https://img.shields.io/badge/arXiv-1507.04774-b31b1b.svg\n :target: https://arxiv.org/abs/1507.04774\n\n\n==========\nminorminer\n==========\n\n.. start_minorminer_about\n\n`minorminer` is a heuristic tool for minor embedding: given a minor and target\ngraph, it tries to find a mapping that embeds the minor into the target.\n\n.. start_minorminer_about_general_embedding\n\nThe primary utility function, ``find_embedding()``, is an implementation of\nthe heuristic algorithm described in [1]. It accepts various optional parameters\nused to tune the algorithm's execution or constrain the given problem.\n\nThis implementation performs on par with tuned, non-configurable implementations\nwhile providing users with hooks to easily use the code as a basic building\nblock in research.\n\n[1] https://arxiv.org/abs/1406.2741\n\nAnother function, ``find_clique_embedding()``, can be used to find clique\nembeddings for Chimera, Pegasus, and Zephyr graphs in polynomial time. It is an\nimplementation of the algorithm described in [2]. There are additional utilities\nfor finding biclique embeddings as well.\n\n[2] https://arxiv.org/abs/1507.04774\n\n.. end_minorminer_about\n\nPython\n======\n\nInstallation\n------------\n\npip installation is recommended for platforms with precompiled wheels posted to\npypi. Source distributions are provided as well.\n\n.. code-block:: bash\n\n pip install minorminer\n\nTo install from this repository, you will need to first fetch the submodules\n\n git submodule init\n git submodule update\n\nand then run the `setuptools` script.\n\n.. code-block:: bash\n\n\n pip install -r requirements.txt\n python setup.py install\n # optionally, run the tests to check your build\n pip install -r tests/requirements.txt\n python -m pytest .\n\n\nExamples\n--------\n\n.. start_minorminer_examples_python\n\n.. code-block:: python\n\n from minorminer import find_embedding\n\n # A triangle is a minor of a square.\n triangle = [(0, 1), (1, 2), (2, 0)]\n square = [(0, 1), (1, 2), (2, 3), (3, 0)]\n\n # Find an assignment of sets of square variables to the triangle variables\n embedding = find_embedding(triangle, square, random_seed=10)\n print(len(embedding)) # 3, one set for each variable in the triangle\n print(embedding)\n # We don't know which variables will be assigned where, here are a\n # couple possible outputs:\n # [[0, 1], [2], [3]]\n # [[3], [1, 0], [2]]\n\n.. code-block:: python\n\n # We can insist that variable 0 of the triangle will always be assigned to [2]\n embedding = find_embedding(triangle, square, fixed_chains={0: [2]})\n print(embedding)\n # [[2], [3, 0], [1]]\n # [[2], [1], [0, 3]]\n # And more, but all of them start with [2]\n\n.. code-block:: python\n\n # If we didn't want to force variable 0 to stay as [2], but we thought that\n # was a good start we could provide it as an initialization hint instead.\n embedding = find_embedding(triangle, square, initial_chains={0: [2]})\n print(embedding)\n # [[2], [0, 3], [1]]\n # [[0], [3], [1, 2]]\n # Output where variable 0 has switched to something else is possible again.\n\n.. code-block:: python\n\n import networkx as nx\n\n # An example on some less trivial graphs\n # We will try to embed a fully connected graph with 6 nodes, into a\n # random regular graph with degree 3.\n clique = nx.complete_graph(6).edges()\n target_graph = nx.random_regular_graph(d=3, n=30).edges()\n\n embedding = find_embedding(clique, target_graph)\n\n print(embedding)\n # There are many possible outputs for this, sometimes it might even fail\n # and return an empty list\n\nA more fleshed out example can be found under `examples/fourcolor.py`\n\n.. code-block:: bash\n\n cd examples\n pip install -r requirements.txt\n python fourcolor.py\n\n.. end_minorminer_examples_python\n\nC++\n===\n\nInstallation\n------------\n\nThe `CMakeLists.txt` in the root of this repo will build the library and\noptionally run a series of tests. On Linux, the commands would be something like\nthis:\n\n.. code-block:: bash\n\n mkdir build; cd build\n cmake ..\n make\n\nTo build the tests, turn the CMake option `MINORMINER_BUILD_TESTS` on. The\ncommand line option for CMake to do this would be `-DMINORMINER_BUILD_TESTS=ON`.\n\nLibrary Usage\n-------------\n\nC++11 programs should be able to use this as a header-only library. If your\nproject is using CMake, this library can be used fairly simply; if you have\nchecked out this repo as `externals/minorminer` in your project, you would need\nto add the following lines to your `CMakeLists.txt`\n\n.. code-block:: CMake\n\n add_subdirectory(externals/minorminer)\n\n # After your target is defined\n target_link_libraries(your_target minorminer pthread)\n\nExamples\n--------\n\nA minimal buildable example can be found in this repo under\n`examples/example.cpp`.\n\n.. code-block:: bash\n\n cd examples\n g++ example.cpp -std=c++11 -o example -pthread\n\nThis can also be built using the included `CMakeLists.txt` along with the main\nlibrary build by turning the CMake option `MINORMINER_BUILD_EXAMPLES` on. The\ncommand line option for CMake to do this would be\n`-DMINORMINER_BUILD_EXAMPLES=ON`.\n\nLicense\n=======\n\nReleased under the Apache License 2.0. See `<LICENSE>`_ file.\n\nContributing\n============\n\nOcean's `contributing guide <https://docs.dwavequantum.com/en/latest/ocean/contribute.html>`_\nhas guidelines for contributing to Ocean packages.\n\nIf you're interested in adding or modifying parameters of the ``find_embedding``\nprimary utility function, please see the `<parameter_checklist.txt>`_ file.\n\nRelease Notes\n-------------\n\n``minorminer`` makes use of `reno <https://docs.openstack.org/reno/>`_\nto manage its release notes.\n\nWhen making a contribution to ``minorminer`` that will affect users,\ncreate a new release note file by running\n\n.. code-block:: bash\n\n reno new your-short-descriptor-here\n\nYou can then edit the file created under ``releasenotes/notes/``. Remove any sections\nnot relevant to your changes. Commit the file along with your changes.\n\nSee reno's `user guide <https://docs.openstack.org/reno/latest/user/usage.html>`_\nfor details.\n",
"bugtrack_url": null,
"license": null,
"summary": "Heuristic algorithm to find graph minor embeddings.",
"version": "0.2.21",
"project_urls": {
"Download": "https://github.com/dwavesystems/minorminer/releases",
"Homepage": "https://github.com/dwavesystems/minorminer"
},
"split_keywords": [],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "68ad60a81518da7d49c279c71462e115758e2caa98075f9a7e85c6c84b89953e",
"md5": "a7601b8a0a1299156b226c544a619936",
"sha256": "7834a420246dc003bff22b7a892904131c3b4aea28f1e08fdabea9e060b14458"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp310-cp310-macosx_10_13_x86_64.whl",
"has_sig": false,
"md5_digest": "a7601b8a0a1299156b226c544a619936",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 1581228,
"upload_time": "2025-10-29T18:19:28",
"upload_time_iso_8601": "2025-10-29T18:19:28.024821Z",
"url": "https://files.pythonhosted.org/packages/68/ad/60a81518da7d49c279c71462e115758e2caa98075f9a7e85c6c84b89953e/minorminer-0.2.21-cp310-cp310-macosx_10_13_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "90a7627d42686a5e48cb91b68509b68c2dd9ef8df883fa9be42616a6e0903ac7",
"md5": "371892103634048e1f2b3a0e6933bf5b",
"sha256": "a88ceb2cc1864c6ff360b9ac538821fa8e88406a4f1a5d2d8f5a64f4425231c9"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp310-cp310-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "371892103634048e1f2b3a0e6933bf5b",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 1539723,
"upload_time": "2025-10-29T18:19:29",
"upload_time_iso_8601": "2025-10-29T18:19:29.895936Z",
"url": "https://files.pythonhosted.org/packages/90/a7/627d42686a5e48cb91b68509b68c2dd9ef8df883fa9be42616a6e0903ac7/minorminer-0.2.21-cp310-cp310-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "1f0e467b88428796072c60df1f7d09bfadd6749889689b1fb9afc4fd723f4f0b",
"md5": "f9f43678224a9fce30cfb728b3d9d4f2",
"sha256": "de198b3f737efb12b22cd53ad603dc54a38aab798a2baeb87d2725976505af3b"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "f9f43678224a9fce30cfb728b3d9d4f2",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 3872001,
"upload_time": "2025-10-29T18:19:31",
"upload_time_iso_8601": "2025-10-29T18:19:31.319607Z",
"url": "https://files.pythonhosted.org/packages/1f/0e/467b88428796072c60df1f7d09bfadd6749889689b1fb9afc4fd723f4f0b/minorminer-0.2.21-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "1f2913e5f65fe5861dc76588af04b1bcc1d1707128f951c1990800c1827678b0",
"md5": "5545d3152603b6c51f95efdb33a5d8c3",
"sha256": "11d977850fae02f7b026d1f02edfdc961c9997aa9736c4855467eabff029d13b"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "5545d3152603b6c51f95efdb33a5d8c3",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 4030155,
"upload_time": "2025-10-29T18:19:32",
"upload_time_iso_8601": "2025-10-29T18:19:32.876836Z",
"url": "https://files.pythonhosted.org/packages/1f/29/13e5f65fe5861dc76588af04b1bcc1d1707128f951c1990800c1827678b0/minorminer-0.2.21-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "0906fd9fb820ef6744f518fa097c0162b2370dff020e7d145241c08731150199",
"md5": "996cb95a746d70c7f024033331f20835",
"sha256": "9d25f17afe1773130af85f75e16ef0832c8f5bbbb3d9c27fbeeb30e17402ae8c"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "996cb95a746d70c7f024033331f20835",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 1702607,
"upload_time": "2025-10-29T18:19:34",
"upload_time_iso_8601": "2025-10-29T18:19:34.378741Z",
"url": "https://files.pythonhosted.org/packages/09/06/fd9fb820ef6744f518fa097c0162b2370dff020e7d145241c08731150199/minorminer-0.2.21-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "f1c375125165c8e30526cc3723713fb70196d40c19bfeeee8f25fd0f93de70dd",
"md5": "32f4967ed4ad3b88c320e33eb837c69a",
"sha256": "e7b219ead696c8f269b27325a4b87c7a0074a00e8ed877bb2c81437943ea7af0"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp311-cp311-macosx_10_13_x86_64.whl",
"has_sig": false,
"md5_digest": "32f4967ed4ad3b88c320e33eb837c69a",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.10",
"size": 1587670,
"upload_time": "2025-10-29T18:19:35",
"upload_time_iso_8601": "2025-10-29T18:19:35.874415Z",
"url": "https://files.pythonhosted.org/packages/f1/c3/75125165c8e30526cc3723713fb70196d40c19bfeeee8f25fd0f93de70dd/minorminer-0.2.21-cp311-cp311-macosx_10_13_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "18ed3b316910d8147d8b311b4c879e8dc610c13fd95264bac6a7195c07b28b78",
"md5": "d9e13d5aed5a00bc67a7206e47a50fd6",
"sha256": "706500936b26217248c1e1f0acd7fc88beb9b354054ce6ea0265caf51b4929d3"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp311-cp311-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "d9e13d5aed5a00bc67a7206e47a50fd6",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.10",
"size": 1546658,
"upload_time": "2025-10-29T18:19:37",
"upload_time_iso_8601": "2025-10-29T18:19:37.283643Z",
"url": "https://files.pythonhosted.org/packages/18/ed/3b316910d8147d8b311b4c879e8dc610c13fd95264bac6a7195c07b28b78/minorminer-0.2.21-cp311-cp311-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "3c421ffc9143e39f8493e2eee7ad729d52089f8dc7c7a68ba291bc2a7807fcbc",
"md5": "7c4a80329b6ca61a6ff4aeda9c340d05",
"sha256": "87bed4486a89759c4f3c546c488be5c23704c2485e3cdf1d1b3f54fe781cfa03"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "7c4a80329b6ca61a6ff4aeda9c340d05",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.10",
"size": 3906922,
"upload_time": "2025-10-29T18:19:38",
"upload_time_iso_8601": "2025-10-29T18:19:38.580898Z",
"url": "https://files.pythonhosted.org/packages/3c/42/1ffc9143e39f8493e2eee7ad729d52089f8dc7c7a68ba291bc2a7807fcbc/minorminer-0.2.21-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "43014ed70a17ec9e00dc3aeeac5984a44c38aa9b7250c1c2b84e47196277a1c5",
"md5": "2810da736506dd1b874f705df5c14df0",
"sha256": "e69a9f66658097adae98814e87279106839c20fffaf21186a6b83df6ecc73b61"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "2810da736506dd1b874f705df5c14df0",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.10",
"size": 4060596,
"upload_time": "2025-10-29T18:19:39",
"upload_time_iso_8601": "2025-10-29T18:19:39.703334Z",
"url": "https://files.pythonhosted.org/packages/43/01/4ed70a17ec9e00dc3aeeac5984a44c38aa9b7250c1c2b84e47196277a1c5/minorminer-0.2.21-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "656d71fa2ed3a9f851a885b5650f485e1048731d64ccc6bf5f9c2d13d9724387",
"md5": "ff427134d2192cbcebe6742dd3410256",
"sha256": "6188057002d8ec720eb5ea722737c7cd891b19f21698eaf8d0bbb6b0ca0667cd"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp311-cp311-win_amd64.whl",
"has_sig": false,
"md5_digest": "ff427134d2192cbcebe6742dd3410256",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.10",
"size": 1703762,
"upload_time": "2025-10-29T18:19:40",
"upload_time_iso_8601": "2025-10-29T18:19:40.868983Z",
"url": "https://files.pythonhosted.org/packages/65/6d/71fa2ed3a9f851a885b5650f485e1048731d64ccc6bf5f9c2d13d9724387/minorminer-0.2.21-cp311-cp311-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "b495556ebc96baac9cf6f2edc0ecfcfe9d7dacf40d8430b197adc37da4c2e4a3",
"md5": "676e94c7ec03ab74a3f16fec7f916ad3",
"sha256": "903bc1b634afd21f99abcf2456d24be8f728a003b9c8b352bfa1a48844cf93bb"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp312-cp312-macosx_10_13_x86_64.whl",
"has_sig": false,
"md5_digest": "676e94c7ec03ab74a3f16fec7f916ad3",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.10",
"size": 1588872,
"upload_time": "2025-10-29T18:19:42",
"upload_time_iso_8601": "2025-10-29T18:19:42.362493Z",
"url": "https://files.pythonhosted.org/packages/b4/95/556ebc96baac9cf6f2edc0ecfcfe9d7dacf40d8430b197adc37da4c2e4a3/minorminer-0.2.21-cp312-cp312-macosx_10_13_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "443d7a7caa5dfecce660b523e9c9f578d6bcb54d54919390c4d351f0bf1fe080",
"md5": "27c1ed1f91d36a96a6150f085dafe690",
"sha256": "ef7dfb95b9b15bb90b7e63ae54eb7688a3f4a7e19fa2494c8a8571f20a3d7896"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp312-cp312-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "27c1ed1f91d36a96a6150f085dafe690",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.10",
"size": 1547336,
"upload_time": "2025-10-29T18:19:43",
"upload_time_iso_8601": "2025-10-29T18:19:43.929975Z",
"url": "https://files.pythonhosted.org/packages/44/3d/7a7caa5dfecce660b523e9c9f578d6bcb54d54919390c4d351f0bf1fe080/minorminer-0.2.21-cp312-cp312-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "e140ef755dc82f4aa952d3e1ab528da1471c74f3c639fe7bfc785011b9f02390",
"md5": "b0e690bf34ee5330a2067910e4cc9973",
"sha256": "0091c1ae2c6b089bc6e005a7d086a0e65db84a44231caa2f433e400fe7c5e928"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "b0e690bf34ee5330a2067910e4cc9973",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.10",
"size": 3853261,
"upload_time": "2025-10-29T18:19:45",
"upload_time_iso_8601": "2025-10-29T18:19:45.141897Z",
"url": "https://files.pythonhosted.org/packages/e1/40/ef755dc82f4aa952d3e1ab528da1471c74f3c639fe7bfc785011b9f02390/minorminer-0.2.21-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "5566f8f0ebf85ac2f0bbfd395658c790a512b9b160b547f1db940c3a26674ff3",
"md5": "f343ce5ebb7f5f7698f9f8d90cb3e5f2",
"sha256": "62fd69860f65e140babd1a804ee24c76ec26a1d24fd8e7eee32840372c279bd4"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "f343ce5ebb7f5f7698f9f8d90cb3e5f2",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.10",
"size": 4024022,
"upload_time": "2025-10-29T18:19:46",
"upload_time_iso_8601": "2025-10-29T18:19:46.240510Z",
"url": "https://files.pythonhosted.org/packages/55/66/f8f0ebf85ac2f0bbfd395658c790a512b9b160b547f1db940c3a26674ff3/minorminer-0.2.21-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "b83e88d9df95ae75bf52d554c77c5971b4e10eed14910a934a2c8efcf92df275",
"md5": "1e52edfc1d87fbcca93c966acef2e187",
"sha256": "80cb1bbce10fb53fa30854b739be3b5870c9132d1da7bbca95d40ce00925e75c"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp312-cp312-win_amd64.whl",
"has_sig": false,
"md5_digest": "1e52edfc1d87fbcca93c966acef2e187",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.10",
"size": 1695310,
"upload_time": "2025-10-29T18:19:47",
"upload_time_iso_8601": "2025-10-29T18:19:47.585224Z",
"url": "https://files.pythonhosted.org/packages/b8/3e/88d9df95ae75bf52d554c77c5971b4e10eed14910a934a2c8efcf92df275/minorminer-0.2.21-cp312-cp312-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "1c3d589d7d709f47203c5dba03338d0346b3c31e5c00cc0cd3f3d24c40c53a63",
"md5": "7f99b97928edb50230e7714b3975f762",
"sha256": "744ac8941b2485871a6b0512cb2bb91ab54bca6133bd32b866c12be13e3673d8"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp313-cp313-macosx_10_13_x86_64.whl",
"has_sig": false,
"md5_digest": "7f99b97928edb50230e7714b3975f762",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.10",
"size": 1584249,
"upload_time": "2025-10-29T18:19:48",
"upload_time_iso_8601": "2025-10-29T18:19:48.603527Z",
"url": "https://files.pythonhosted.org/packages/1c/3d/589d7d709f47203c5dba03338d0346b3c31e5c00cc0cd3f3d24c40c53a63/minorminer-0.2.21-cp313-cp313-macosx_10_13_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "5429f97dfd36dd3a335a4a4ca4df106bff2f5eb82cde0cac69c322e5376cc8e7",
"md5": "53ac8445bd62b9ae32234557d052e4e4",
"sha256": "ec84f8eaaaf1b0c59140b9e7d79bbc58363d2cac02b84fe8fc66d73f0c8e23d5"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp313-cp313-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "53ac8445bd62b9ae32234557d052e4e4",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.10",
"size": 1542798,
"upload_time": "2025-10-29T18:19:49",
"upload_time_iso_8601": "2025-10-29T18:19:49.717284Z",
"url": "https://files.pythonhosted.org/packages/54/29/f97dfd36dd3a335a4a4ca4df106bff2f5eb82cde0cac69c322e5376cc8e7/minorminer-0.2.21-cp313-cp313-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "414352978a47c910db4cd64173177fc6caa971e081fb49d78516a15ba6e839c6",
"md5": "a69d3d2e24cc63e3e00babc7bf2580c0",
"sha256": "b3fb3465f83ee62bab082c804d35d3b74b8e98d85f700c61ec09d456e5dbe738"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "a69d3d2e24cc63e3e00babc7bf2580c0",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.10",
"size": 3847848,
"upload_time": "2025-10-29T18:19:50",
"upload_time_iso_8601": "2025-10-29T18:19:50.837328Z",
"url": "https://files.pythonhosted.org/packages/41/43/52978a47c910db4cd64173177fc6caa971e081fb49d78516a15ba6e839c6/minorminer-0.2.21-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "991796f28bfec8482648f009cc29d52344bfe586c4a88ece4b048c7651b2625d",
"md5": "b350d1146a66c9566f6ff2c8408a9092",
"sha256": "781db23857e44ee404331a393908a1fde74f3adc9f396cb7349213641f6b557c"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "b350d1146a66c9566f6ff2c8408a9092",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.10",
"size": 4018103,
"upload_time": "2025-10-29T18:19:52",
"upload_time_iso_8601": "2025-10-29T18:19:52.211110Z",
"url": "https://files.pythonhosted.org/packages/99/17/96f28bfec8482648f009cc29d52344bfe586c4a88ece4b048c7651b2625d/minorminer-0.2.21-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "f0a1b22086a8279dd8783d70219d9a572f13d522d225391645cc79bd5d2dc4c4",
"md5": "78292d52191a31c6c148230c409f0e57",
"sha256": "598cac47ebcbdc7752670d6497d3b99a9f671b78ea57bb70186edadffbe478b6"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp313-cp313-win_amd64.whl",
"has_sig": false,
"md5_digest": "78292d52191a31c6c148230c409f0e57",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.10",
"size": 1694231,
"upload_time": "2025-10-29T18:19:53",
"upload_time_iso_8601": "2025-10-29T18:19:53.775092Z",
"url": "https://files.pythonhosted.org/packages/f0/a1/b22086a8279dd8783d70219d9a572f13d522d225391645cc79bd5d2dc4c4/minorminer-0.2.21-cp313-cp313-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "54d08156312b2f725813165fd91b69e1d1cc6fc0cb8914b99e9a915e7a09715c",
"md5": "7ce545708d41ae4c65fc1824cfc4a419",
"sha256": "e6fa93a1a097a7b613e1c34a6cba2b7df278012594ecde84ad7f5e5469936ccb"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp314-cp314-macosx_10_15_x86_64.whl",
"has_sig": false,
"md5_digest": "7ce545708d41ae4c65fc1824cfc4a419",
"packagetype": "bdist_wheel",
"python_version": "cp314",
"requires_python": ">=3.10",
"size": 1584654,
"upload_time": "2025-10-29T18:19:55",
"upload_time_iso_8601": "2025-10-29T18:19:55.222059Z",
"url": "https://files.pythonhosted.org/packages/54/d0/8156312b2f725813165fd91b69e1d1cc6fc0cb8914b99e9a915e7a09715c/minorminer-0.2.21-cp314-cp314-macosx_10_15_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "d2a8975643f483479ad1d806e6721fd40015d086268507f7667a178c96dc3df1",
"md5": "1d692c87419728bcd634683a771a0719",
"sha256": "cb4b9c6ab6bdaca5d1fa16982b752cd395c964e7577098484dc7d6382db711a2"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp314-cp314-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "1d692c87419728bcd634683a771a0719",
"packagetype": "bdist_wheel",
"python_version": "cp314",
"requires_python": ">=3.10",
"size": 1546066,
"upload_time": "2025-10-29T18:19:56",
"upload_time_iso_8601": "2025-10-29T18:19:56.279372Z",
"url": "https://files.pythonhosted.org/packages/d2/a8/975643f483479ad1d806e6721fd40015d086268507f7667a178c96dc3df1/minorminer-0.2.21-cp314-cp314-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "dbd9cdd41e0b52388b9481318fe063cfaf7deafd26a68cad36ed53500db71619",
"md5": "9977870df7a3a04ab86198c4d2cdbdd8",
"sha256": "0d44c35749c425fedea07554565febcd1b4461f5e60f63e779762a6cfe41241d"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "9977870df7a3a04ab86198c4d2cdbdd8",
"packagetype": "bdist_wheel",
"python_version": "cp314",
"requires_python": ">=3.10",
"size": 3860483,
"upload_time": "2025-10-29T18:19:57",
"upload_time_iso_8601": "2025-10-29T18:19:57.477119Z",
"url": "https://files.pythonhosted.org/packages/db/d9/cdd41e0b52388b9481318fe063cfaf7deafd26a68cad36ed53500db71619/minorminer-0.2.21-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "4db50facc929a11548c656da43d71eff757f80efef92359fbfa453e97fdec881",
"md5": "770bd92b125fed7765f7ae1d9d2ffbc7",
"sha256": "4354b9f96c172c84ab6a765e1df7cbe2e5041822a372cad453a62e59f740a304"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "770bd92b125fed7765f7ae1d9d2ffbc7",
"packagetype": "bdist_wheel",
"python_version": "cp314",
"requires_python": ">=3.10",
"size": 4014242,
"upload_time": "2025-10-29T18:19:58",
"upload_time_iso_8601": "2025-10-29T18:19:58.721537Z",
"url": "https://files.pythonhosted.org/packages/4d/b5/0facc929a11548c656da43d71eff757f80efef92359fbfa453e97fdec881/minorminer-0.2.21-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "c856238cd9db5d7efcc2162512036b1109417005b49be154a8c29bee9cceb850",
"md5": "a5f8ca62d46b7246a0c0cc4a385b4b79",
"sha256": "69363ec8385d09c81be00aff6656ce70936436c9701ffea3c286f95e50659cd1"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp314-cp314t-macosx_10_15_x86_64.whl",
"has_sig": false,
"md5_digest": "a5f8ca62d46b7246a0c0cc4a385b4b79",
"packagetype": "bdist_wheel",
"python_version": "cp314",
"requires_python": ">=3.10",
"size": 1609650,
"upload_time": "2025-10-29T18:19:59",
"upload_time_iso_8601": "2025-10-29T18:19:59.814193Z",
"url": "https://files.pythonhosted.org/packages/c8/56/238cd9db5d7efcc2162512036b1109417005b49be154a8c29bee9cceb850/minorminer-0.2.21-cp314-cp314t-macosx_10_15_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "a451ec30292df97fc520b3bc94b1a6e47aa90243580f4e99916fbb58b08f5c94",
"md5": "5263d89c7d3935a8537ef7e00f0302f7",
"sha256": "d1c539fa3ac60fede4ac975dccc7cc8d6df5a61f7fb760b25dda99d5b5c38896"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp314-cp314t-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "5263d89c7d3935a8537ef7e00f0302f7",
"packagetype": "bdist_wheel",
"python_version": "cp314",
"requires_python": ">=3.10",
"size": 1581211,
"upload_time": "2025-10-29T18:20:01",
"upload_time_iso_8601": "2025-10-29T18:20:01.214044Z",
"url": "https://files.pythonhosted.org/packages/a4/51/ec30292df97fc520b3bc94b1a6e47aa90243580f4e99916fbb58b08f5c94/minorminer-0.2.21-cp314-cp314t-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "15ec804ecf6350d90b928c9ef16f329a94f3a052c0e9f13d4109776ec95842ed",
"md5": "b137f2b9cbeed73c1e024f8797564163",
"sha256": "0566484120401362f37a48f7427fd6a0379779a0c11f8fcc66897fac50ef1bae"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl",
"has_sig": false,
"md5_digest": "b137f2b9cbeed73c1e024f8797564163",
"packagetype": "bdist_wheel",
"python_version": "cp314",
"requires_python": ">=3.10",
"size": 3871783,
"upload_time": "2025-10-29T18:20:02",
"upload_time_iso_8601": "2025-10-29T18:20:02.704200Z",
"url": "https://files.pythonhosted.org/packages/15/ec/804ecf6350d90b928c9ef16f329a94f3a052c0e9f13d4109776ec95842ed/minorminer-0.2.21-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "28222f6a76a8b82749e9dc54b833d2c9c229b48eda3b2ac1f42f52f638d7e655",
"md5": "e9d73b1888070fc5a4ae580e74eb0616",
"sha256": "e7983e4548e7f8849b7478e6cb052a676a3b881f2af3053680f41d9566aee3cc"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "e9d73b1888070fc5a4ae580e74eb0616",
"packagetype": "bdist_wheel",
"python_version": "cp314",
"requires_python": ">=3.10",
"size": 4025889,
"upload_time": "2025-10-29T18:20:03",
"upload_time_iso_8601": "2025-10-29T18:20:03.903403Z",
"url": "https://files.pythonhosted.org/packages/28/22/2f6a76a8b82749e9dc54b833d2c9c229b48eda3b2ac1f42f52f638d7e655/minorminer-0.2.21-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "fe24cc20e6d731ed02184be98135b10d72c941b53c450659b9fdd4924f4874b1",
"md5": "36089a5cb82760ac560622fca51b316d",
"sha256": "87ff50e54a1f5d2e95376d26279cce0924069e4493da03f81589e29c0d084369"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp314-cp314t-win_amd64.whl",
"has_sig": false,
"md5_digest": "36089a5cb82760ac560622fca51b316d",
"packagetype": "bdist_wheel",
"python_version": "cp314",
"requires_python": ">=3.10",
"size": 1780290,
"upload_time": "2025-10-29T18:20:05",
"upload_time_iso_8601": "2025-10-29T18:20:05.040088Z",
"url": "https://files.pythonhosted.org/packages/fe/24/cc20e6d731ed02184be98135b10d72c941b53c450659b9fdd4924f4874b1/minorminer-0.2.21-cp314-cp314t-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "6fdc70102dd7fd669c64d79685171f036df0f875c31669947d9ec8c11223af76",
"md5": "58e09adacda5b15b9f8b1b0013561782",
"sha256": "f8815270d7048a57b3e84a336f7b647f91053e52d30a246dd37add93a0f36488"
},
"downloads": -1,
"filename": "minorminer-0.2.21-cp314-cp314-win_amd64.whl",
"has_sig": false,
"md5_digest": "58e09adacda5b15b9f8b1b0013561782",
"packagetype": "bdist_wheel",
"python_version": "cp314",
"requires_python": ">=3.10",
"size": 1715487,
"upload_time": "2025-10-29T18:20:06",
"upload_time_iso_8601": "2025-10-29T18:20:06.198762Z",
"url": "https://files.pythonhosted.org/packages/6f/dc/70102dd7fd669c64d79685171f036df0f875c31669947d9ec8c11223af76/minorminer-0.2.21-cp314-cp314-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "e6fd2b57ef803a74e1bb016ea8504ed5e99948acc27b667ce89aa45519f17a09",
"md5": "7488ee4fc36833d30fec86c5f86a1e92",
"sha256": "41fee0b231b2cd695723830044fb83ad953d0d10017eb6c78751ac3e7efa2203"
},
"downloads": -1,
"filename": "minorminer-0.2.21.tar.gz",
"has_sig": false,
"md5_digest": "7488ee4fc36833d30fec86c5f86a1e92",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 1170261,
"upload_time": "2025-10-29T18:20:07",
"upload_time_iso_8601": "2025-10-29T18:20:07.227901Z",
"url": "https://files.pythonhosted.org/packages/e6/fd/2b57ef803a74e1bb016ea8504ed5e99948acc27b667ce89aa45519f17a09/minorminer-0.2.21.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-10-29 18:20:07",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "dwavesystems",
"github_project": "minorminer",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"circle": true,
"requirements": [
{
"name": "numpy",
"specs": [
[
"==",
"2.1.3"
]
]
},
{
"name": "scipy",
"specs": [
[
"==",
"1.15.3"
]
]
},
{
"name": "scipy",
"specs": [
[
"==",
"1.16.2"
]
]
},
{
"name": "networkx",
"specs": [
[
"==",
"3.2.1"
]
]
},
{
"name": "dwave-networkx",
"specs": [
[
"==",
"0.8.15"
]
]
},
{
"name": "fasteners",
"specs": [
[
"==",
"0.19"
]
]
},
{
"name": "homebase",
"specs": [
[
"==",
"1.0.1"
]
]
},
{
"name": "Cython",
"specs": [
[
"==",
"3.0.11"
]
]
},
{
"name": "reno",
"specs": [
[
"==",
"4.1.0"
]
]
}
],
"lcname": "minorminer"
}