snaketrail


Namesnaketrail JSON
Version 0.1.0 PyPI version JSON
download
home_pageNone
SummaryTrace the snake: list transitive local imports and unused Python files.
upload_time2025-08-29 04:37:53
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseMIT
keywords dependency-graph imports python static-analysis
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # snaketrail

Trace the snake 🐍: list **transitive local imports** (files & namespace packages) and report **unused .py files** under your project root — without executing your code.

## Install
```bash
pip install snaketrail
```

lets say you have a Handler.py
thats your main entrypoint to your project,
and you want to see which files it uses.
but you more importantly want to see which files
it DOESNT use and to tell what is deprecated and 
just test files.

```
# from your project root
snaketrail Handler.py
snaketrail Handler.py --verbose
snaketrail Handler.py --root /path/to/project

> Unused local Python files:
>  - debug.py
>  - test.py

```

now you can safely burn those deprecated files
that your main program never touches, or tuck
them away into a deprecated/ folder and nobody will
ever look at them again.

probably.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "snaketrail",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "dependency-graph, imports, python, static-analysis",
    "author": null,
    "author_email": "Jacques Fleischer <j.fleischer@ufl.edu>",
    "download_url": "https://files.pythonhosted.org/packages/d7/b9/c3700e98714116e51918b12d43564aee8d779cef5c902d3cd4217761660a/snaketrail-0.1.0.tar.gz",
    "platform": null,
    "description": "# snaketrail\n\nTrace the snake \ud83d\udc0d: list **transitive local imports** (files & namespace packages) and report **unused .py files** under your project root \u2014 without executing your code.\n\n## Install\n```bash\npip install snaketrail\n```\n\nlets say you have a Handler.py\nthats your main entrypoint to your project,\nand you want to see which files it uses.\nbut you more importantly want to see which files\nit DOESNT use and to tell what is deprecated and \njust test files.\n\n```\n# from your project root\nsnaketrail Handler.py\nsnaketrail Handler.py --verbose\nsnaketrail Handler.py --root /path/to/project\n\n> Unused local Python files:\n>  - debug.py\n>  - test.py\n\n```\n\nnow you can safely burn those deprecated files\nthat your main program never touches, or tuck\nthem away into a deprecated/ folder and nobody will\never look at them again.\n\nprobably.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Trace the snake: list transitive local imports and unused Python files.",
    "version": "0.1.0",
    "project_urls": null,
    "split_keywords": [
        "dependency-graph",
        " imports",
        " python",
        " static-analysis"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "7e0d7f014759a7d3976cfa97a16443a477251980c93220c8952d54488e5f75ad",
                "md5": "f807943027dd7496ff815a98029d9159",
                "sha256": "b59b567d8e4f39cb56b4dab5aa4e5719ed19616b1ab9ce8c807121af96d1c6f8"
            },
            "downloads": -1,
            "filename": "snaketrail-0.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "f807943027dd7496ff815a98029d9159",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 5137,
            "upload_time": "2025-08-29T04:37:52",
            "upload_time_iso_8601": "2025-08-29T04:37:52.634939Z",
            "url": "https://files.pythonhosted.org/packages/7e/0d/7f014759a7d3976cfa97a16443a477251980c93220c8952d54488e5f75ad/snaketrail-0.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d7b9c3700e98714116e51918b12d43564aee8d779cef5c902d3cd4217761660a",
                "md5": "75cf4a6be14d9226a92031d2178915eb",
                "sha256": "6a2931d24412d823dd53124e01ea2b8534d29b41ef6adad1979a77cbc8881e12"
            },
            "downloads": -1,
            "filename": "snaketrail-0.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "75cf4a6be14d9226a92031d2178915eb",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 4122,
            "upload_time": "2025-08-29T04:37:53",
            "upload_time_iso_8601": "2025-08-29T04:37:53.561922Z",
            "url": "https://files.pythonhosted.org/packages/d7/b9/c3700e98714116e51918b12d43564aee8d779cef5c902d3cd4217761660a/snaketrail-0.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-29 04:37:53",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "snaketrail"
}
        
Elapsed time: 1.94049s