hdeps


Namehdeps JSON
Version 1.3.1 PyPI version JSON
download
home_pagehttps://github.com/hdeps/hdeps/
SummarySimple what-if dep resolution for python
upload_time2024-04-17 22:57:20
maintainerNone
docs_urlNone
authorTim Hatch
requires_python>=3.10
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # hdeps

Simple dependency not-a-solver lets you debug where backtracking would happen,
or figure out what would change on a platform that's not the same as you're
running right now.

This code was originally part of [honesty](https://pypi.org/project/honesty/)
but is easier to iterate on with pypi-simple as its source.

```sh
$ hdeps requests
...
$ hdeps --install-order requests
...
$ hdeps --have urllib3==1.999 requests
...
```

# Why isn't it a solver?

Think of this as a debugging solver.  It doesn't come up with one single
solution, but does the bulk of the legwork to let you, the human, figure out
what the problematic part of your dep tree is (even if the machine you're
running on isn't the same as you're trying to figure out).

If you want a real solver, I highly recommend look at
[resolvelib](https://pypi.org/project/resolvelib/) for low-level operations, or
[poetry](https://pypi.org/project/poetry/) which includes a higher-level solver
that keeps track of operations (like "upgrade" separately from "install").

# Version Compat

This project should work on 3.10-3.12, including mypy compatibility as checked
by tests.  Linting on older versions will not catch all issues (e.g. whitespace
in f-strings), so 3.12 is recommended.  Some transitive dependencies
(pydantic-core and libcst) rely on binary wheels that are not available yet on
3.13 and do not easily build from source.

# License

MIT, see `LICENSE` for details.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/hdeps/hdeps/",
    "name": "hdeps",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": null,
    "author": "Tim Hatch",
    "author_email": "tim@timhatch.com",
    "download_url": "https://files.pythonhosted.org/packages/06/df/dfdf84d961d07a3de0def2b76d57731082d07ec7562384bd3d51bc9aff2b/hdeps-1.3.1.tar.gz",
    "platform": null,
    "description": "# hdeps\n\nSimple dependency not-a-solver lets you debug where backtracking would happen,\nor figure out what would change on a platform that's not the same as you're\nrunning right now.\n\nThis code was originally part of [honesty](https://pypi.org/project/honesty/)\nbut is easier to iterate on with pypi-simple as its source.\n\n```sh\n$ hdeps requests\n...\n$ hdeps --install-order requests\n...\n$ hdeps --have urllib3==1.999 requests\n...\n```\n\n# Why isn't it a solver?\n\nThink of this as a debugging solver.  It doesn't come up with one single\nsolution, but does the bulk of the legwork to let you, the human, figure out\nwhat the problematic part of your dep tree is (even if the machine you're\nrunning on isn't the same as you're trying to figure out).\n\nIf you want a real solver, I highly recommend look at\n[resolvelib](https://pypi.org/project/resolvelib/) for low-level operations, or\n[poetry](https://pypi.org/project/poetry/) which includes a higher-level solver\nthat keeps track of operations (like \"upgrade\" separately from \"install\").\n\n# Version Compat\n\nThis project should work on 3.10-3.12, including mypy compatibility as checked\nby tests.  Linting on older versions will not catch all issues (e.g. whitespace\nin f-strings), so 3.12 is recommended.  Some transitive dependencies\n(pydantic-core and libcst) rely on binary wheels that are not available yet on\n3.13 and do not easily build from source.\n\n# License\n\nMIT, see `LICENSE` for details.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Simple what-if dep resolution for python",
    "version": "1.3.1",
    "project_urls": {
        "Homepage": "https://github.com/hdeps/hdeps/"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0948f35326248b891ef4324ef3954107d01cc98855fb18c93df3c05939361550",
                "md5": "7eab84ee7463f38b9918e87a4ce9fc98",
                "sha256": "92cedaafd788ae0a16031d73869325abf204ebf101621fe333f2cfe0c56c5593"
            },
            "downloads": -1,
            "filename": "hdeps-1.3.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "7eab84ee7463f38b9918e87a4ce9fc98",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 45277,
            "upload_time": "2024-04-17T22:57:18",
            "upload_time_iso_8601": "2024-04-17T22:57:18.395540Z",
            "url": "https://files.pythonhosted.org/packages/09/48/f35326248b891ef4324ef3954107d01cc98855fb18c93df3c05939361550/hdeps-1.3.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "06dfdfdf84d961d07a3de0def2b76d57731082d07ec7562384bd3d51bc9aff2b",
                "md5": "d48df03b83769d412c44fd09ce1b257d",
                "sha256": "adcf76a198e5bfa9d59479c613029c3fcf08a1fc8539264e700e9d20e7dfa46b"
            },
            "downloads": -1,
            "filename": "hdeps-1.3.1.tar.gz",
            "has_sig": false,
            "md5_digest": "d48df03b83769d412c44fd09ce1b257d",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 35905,
            "upload_time": "2024-04-17T22:57:20",
            "upload_time_iso_8601": "2024-04-17T22:57:20.286085Z",
            "url": "https://files.pythonhosted.org/packages/06/df/dfdf84d961d07a3de0def2b76d57731082d07ec7562384bd3d51bc9aff2b/hdeps-1.3.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-04-17 22:57:20",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "hdeps",
    "github_project": "hdeps",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "hdeps"
}
        
Elapsed time: 0.49057s