ast-grep-py


Nameast-grep-py JSON
Version 0.38.7 PyPI version JSON
download
home_pageNone
SummaryStructural Search and Rewrite code at large scale using precise AST pattern.
upload_time2025-07-10 03:59:17
maintainerNone
docs_urlNone
authorHerrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>
requires_python>=3.8
licenseMIT
keywords ast pattern codemod structural search rewrite
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # ast-grep python binding

[![PyPI](https://img.shields.io/pypi/v/ast-grep-py.svg?logo=PyPI)](https://pypi.org/project/ast-grep-py/)
[![Website](https://img.shields.io/badge/ast--grep-Ast--Grep_Website-red?logoColor=red)](https://ast-grep.github.io/)

<p align=center>
  <img src="https://ast-grep.github.io/logo.svg" alt="ast-grep"/>
</p>

## ast-grep

`ast-grep` is a tool for code structural search, lint, and rewriting. 

This crate intends to build a native python binding of ast-grep and provide a python API for programmatic usage.

## Installation

```bash
pip install ast-grep-py
```

## Usage

You can take our tests as examples. For example, [test_simple.py](./tests/test_simple.py) shows how to use ast-grep to search for a pattern in a file.

Please see the [API usage guide](https://ast-grep.github.io/guide/api-usage.html) and [API reference](https://ast-grep.github.io/reference/api.html) for more details.

Other resources include [ast-grep's official site](https://ast-grep.github.io/) and [repository](https://github.com/ast-grep/ast-grep).

## Development

### Setup virtualenv

```shell
python -m venv venv
```

### Activate venv

```shell
source venv/bin/activate
```

### Install `maturin`

```shell
pip install maturin[patchelf]
```

### MacOS: Install `patchelf` and `maturin`

```shell
brew install patchelf
pip install maturin
```

### Build bindings

```shell
maturin develop
```

### Run tests

```shell
pytest
```

All tests files are under [tests](./tests) directory.

## License

This project is licensed under the MIT license.


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "ast-grep-py",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>",
    "keywords": "ast, pattern, codemod, structural search, rewrite",
    "author": "Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>",
    "author_email": "Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>",
    "download_url": "https://files.pythonhosted.org/packages/7c/0f/3db143f5ff1839c2f65a938a447da8207b6f88b6c16f4fa8c7c932ebfa44/ast_grep_py-0.38.7.tar.gz",
    "platform": null,
    "description": "# ast-grep python binding\n\n[![PyPI](https://img.shields.io/pypi/v/ast-grep-py.svg?logo=PyPI)](https://pypi.org/project/ast-grep-py/)\n[![Website](https://img.shields.io/badge/ast--grep-Ast--Grep_Website-red?logoColor=red)](https://ast-grep.github.io/)\n\n<p align=center>\n  <img src=\"https://ast-grep.github.io/logo.svg\" alt=\"ast-grep\"/>\n</p>\n\n## ast-grep\n\n`ast-grep` is a tool for code structural search, lint, and rewriting. \n\nThis crate intends to build a native python binding of ast-grep and provide a python API for programmatic usage.\n\n## Installation\n\n```bash\npip install ast-grep-py\n```\n\n## Usage\n\nYou can take our tests as examples. For example, [test_simple.py](./tests/test_simple.py) shows how to use ast-grep to search for a pattern in a file.\n\nPlease see the [API usage guide](https://ast-grep.github.io/guide/api-usage.html) and [API reference](https://ast-grep.github.io/reference/api.html) for more details.\n\nOther resources include [ast-grep's official site](https://ast-grep.github.io/) and [repository](https://github.com/ast-grep/ast-grep).\n\n## Development\n\n### Setup virtualenv\n\n```shell\npython -m venv venv\n```\n\n### Activate venv\n\n```shell\nsource venv/bin/activate\n```\n\n### Install `maturin`\n\n```shell\npip install maturin[patchelf]\n```\n\n### MacOS: Install `patchelf` and `maturin`\n\n```shell\nbrew install patchelf\npip install maturin\n```\n\n### Build bindings\n\n```shell\nmaturin develop\n```\n\n### Run tests\n\n```shell\npytest\n```\n\nAll tests files are under [tests](./tests) directory.\n\n## License\n\nThis project is licensed under the MIT license.\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Structural Search and Rewrite code at large scale using precise AST pattern.",
    "version": "0.38.7",
    "project_urls": {
        "Changelog": "https://github.com/ast-grep/ast-grep/blob/main/CHANGELOG.md",
        "Documentation": "https://ast-grep.github.io/",
        "Repository": "https://github.com/ast-grep/ast-grep"
    },
    "split_keywords": [
        "ast",
        " pattern",
        " codemod",
        " structural search",
        " rewrite"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "1e0b02b0404f50bd597dddcac0417b32d641c08b2523e2a358d43eee0f981e27",
                "md5": "5495e3a6417a2e3ef148eb5ccb45acb0",
                "sha256": "a967d81de8019bd76ac955f21fabf01fa8e3773a120d29bdc7baeb79081e351b"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp310-cp310-manylinux_2_28_aarch64.whl",
            "has_sig": false,
            "md5_digest": "5495e3a6417a2e3ef148eb5ccb45acb0",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 4654602,
            "upload_time": "2025-07-10T03:58:42",
            "upload_time_iso_8601": "2025-07-10T03:58:42.889289Z",
            "url": "https://files.pythonhosted.org/packages/1e/0b/02b0404f50bd597dddcac0417b32d641c08b2523e2a358d43eee0f981e27/ast_grep_py-0.38.7-cp310-cp310-manylinux_2_28_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "e8194011db73392daab9202f4e63ec0791812276d0569f0ced5dadff4cb324e7",
                "md5": "7baf0006fe12c0f015ec87509325399b",
                "sha256": "e394ca04b25961fa3b3419fd1cb3b761a360186b6c2dc8ac25b395be6a9072cf"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp310-cp310-manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "7baf0006fe12c0f015ec87509325399b",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 4790428,
            "upload_time": "2025-07-10T03:58:45",
            "upload_time_iso_8601": "2025-07-10T03:58:45.289052Z",
            "url": "https://files.pythonhosted.org/packages/e8/19/4011db73392daab9202f4e63ec0791812276d0569f0ced5dadff4cb324e7/ast_grep_py-0.38.7-cp310-cp310-manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "7e4b4947a9a860df1e8c88fa48e38b3c9fba49bb3aacf8eb9770ac5159b48416",
                "md5": "003d80876296aa73b699124648d9963a",
                "sha256": "4511b23d17911265a71475e4a9e79c613a7a91ba38f54271d374c872aa2615a8"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp310-cp310-win32.whl",
            "has_sig": false,
            "md5_digest": "003d80876296aa73b699124648d9963a",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 4382291,
            "upload_time": "2025-07-10T03:58:46",
            "upload_time_iso_8601": "2025-07-10T03:58:46.811490Z",
            "url": "https://files.pythonhosted.org/packages/7e/4b/4947a9a860df1e8c88fa48e38b3c9fba49bb3aacf8eb9770ac5159b48416/ast_grep_py-0.38.7-cp310-cp310-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "58fde8ca60dd0fd5af23e54e4e665f7f0c950e98f3ddd28182f302bdf8f6444b",
                "md5": "b3077776c64df8fa5d6b8d997676b957",
                "sha256": "521f211c5a1380ca560c38bb137dba61f786ff6780e10b145d0f364ac5db0b8d"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp310-cp310-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "b3077776c64df8fa5d6b8d997676b957",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 4508499,
            "upload_time": "2025-07-10T03:58:47",
            "upload_time_iso_8601": "2025-07-10T03:58:47.991693Z",
            "url": "https://files.pythonhosted.org/packages/58/fd/e8ca60dd0fd5af23e54e4e665f7f0c950e98f3ddd28182f302bdf8f6444b/ast_grep_py-0.38.7-cp310-cp310-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3e9fbe63b194929f5e4634f480e7fe3588b9245aedbc80129bf7fbef2b9fa121",
                "md5": "25b70db4d91d5d50f30db2243de345ed",
                "sha256": "c4dc8d1f8a2bda7285e0840f878a685c1ca9f8b3e798f19a4e4a2c3ba30ac35b"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp311-cp311-macosx_10_12_x86_64.whl",
            "has_sig": false,
            "md5_digest": "25b70db4d91d5d50f30db2243de345ed",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 4700464,
            "upload_time": "2025-07-10T03:58:49",
            "upload_time_iso_8601": "2025-07-10T03:58:49.555526Z",
            "url": "https://files.pythonhosted.org/packages/3e/9f/be63b194929f5e4634f480e7fe3588b9245aedbc80129bf7fbef2b9fa121/ast_grep_py-0.38.7-cp311-cp311-macosx_10_12_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "e911a93ac4868e373700206b194902aa353acad9b13c0a566640c7babb367be5",
                "md5": "7242f86b5a9ffda55af9267e98064c45",
                "sha256": "815fcc5ddd6ebe6ba78987834b1581b597f3b707c7e021f38370d1874cbda417"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp311-cp311-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "7242f86b5a9ffda55af9267e98064c45",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 4851925,
            "upload_time": "2025-07-10T03:58:51",
            "upload_time_iso_8601": "2025-07-10T03:58:51.004867Z",
            "url": "https://files.pythonhosted.org/packages/e9/11/a93ac4868e373700206b194902aa353acad9b13c0a566640c7babb367be5/ast_grep_py-0.38.7-cp311-cp311-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "34505deeb1fc07e65bb154ac52f2ec79a045ab0f9a2d2d9aafb985b84624ac81",
                "md5": "f53bdb89273e7bf7d9f8acb998a50275",
                "sha256": "41647e562e7b589792050eb4865d9a0661287c031b5feee46919ab0dab6258a8"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp311-cp311-manylinux_2_28_aarch64.whl",
            "has_sig": false,
            "md5_digest": "f53bdb89273e7bf7d9f8acb998a50275",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 4654611,
            "upload_time": "2025-07-10T03:58:52",
            "upload_time_iso_8601": "2025-07-10T03:58:52.409349Z",
            "url": "https://files.pythonhosted.org/packages/34/50/5deeb1fc07e65bb154ac52f2ec79a045ab0f9a2d2d9aafb985b84624ac81/ast_grep_py-0.38.7-cp311-cp311-manylinux_2_28_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "ac6ca0d8567af11857f5c84a3407e8d6a7571e6fbc5f25f3fe36800aac869a61",
                "md5": "2016166c73721aa7c4268a3c9902f38d",
                "sha256": "448ac24bcc54ac93fc2d19804a203d9354a524fd77780b531ea33b86497005c4"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp311-cp311-manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "2016166c73721aa7c4268a3c9902f38d",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 4790833,
            "upload_time": "2025-07-10T03:58:53",
            "upload_time_iso_8601": "2025-07-10T03:58:53.607633Z",
            "url": "https://files.pythonhosted.org/packages/ac/6c/a0d8567af11857f5c84a3407e8d6a7571e6fbc5f25f3fe36800aac869a61/ast_grep_py-0.38.7-cp311-cp311-manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "c8903977cae061c88733e6ee39936b9f01589909be9caf42afb63984b32fc5d8",
                "md5": "120c11e036c7e3551c15ddeb25928fd0",
                "sha256": "63775681ac6dc0e7d8b39258298db5403b0157300142b710fc2165553f6ea650"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp311-cp311-win32.whl",
            "has_sig": false,
            "md5_digest": "120c11e036c7e3551c15ddeb25928fd0",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 4382079,
            "upload_time": "2025-07-10T03:58:54",
            "upload_time_iso_8601": "2025-07-10T03:58:54.844487Z",
            "url": "https://files.pythonhosted.org/packages/c8/90/3977cae061c88733e6ee39936b9f01589909be9caf42afb63984b32fc5d8/ast_grep_py-0.38.7-cp311-cp311-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "8166424e26a5c940c3ea098fab60dcc1b0bc94764b59502d92636edded72a2f3",
                "md5": "5d7c89f32b3ddf59dcf07c964ff74009",
                "sha256": "7a50f299c340e2669bb34d2faaa13a7310136acd4068d2d2766d3d9a8b8dfb2c"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp311-cp311-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "5d7c89f32b3ddf59dcf07c964ff74009",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 4508742,
            "upload_time": "2025-07-10T03:58:55",
            "upload_time_iso_8601": "2025-07-10T03:58:55.988260Z",
            "url": "https://files.pythonhosted.org/packages/81/66/424e26a5c940c3ea098fab60dcc1b0bc94764b59502d92636edded72a2f3/ast_grep_py-0.38.7-cp311-cp311-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "365ef59959cfff67d150915bff5b7c3be44128dea94d4f07778a5019b807bc44",
                "md5": "42972b5c2ece263e61ac581013926ccf",
                "sha256": "fb24e0a21586f41ed5eb752534a1586cc69e4cc47966bcdbbd0ea4e60043fec6"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp312-cp312-macosx_10_12_x86_64.whl",
            "has_sig": false,
            "md5_digest": "42972b5c2ece263e61ac581013926ccf",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 4697900,
            "upload_time": "2025-07-10T03:58:57",
            "upload_time_iso_8601": "2025-07-10T03:58:57.171244Z",
            "url": "https://files.pythonhosted.org/packages/36/5e/f59959cfff67d150915bff5b7c3be44128dea94d4f07778a5019b807bc44/ast_grep_py-0.38.7-cp312-cp312-macosx_10_12_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "e0e1beefdeeea480578e0fac8405988ff1671f3aae10aad67c4b126f048d5a1c",
                "md5": "caed4dabba6fce9d72981d4dd0bc68b3",
                "sha256": "31fe6cab721844c762a3b8cac90f70165e865cbd90d5107e381f7d22bea8f44d"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp312-cp312-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "caed4dabba6fce9d72981d4dd0bc68b3",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 4847095,
            "upload_time": "2025-07-10T03:58:58",
            "upload_time_iso_8601": "2025-07-10T03:58:58.330827Z",
            "url": "https://files.pythonhosted.org/packages/e0/e1/beefdeeea480578e0fac8405988ff1671f3aae10aad67c4b126f048d5a1c/ast_grep_py-0.38.7-cp312-cp312-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "4e8201422420e5be6a978cc96b4d4c4cbef8ef1bc8f00432c8fceea06fc5789d",
                "md5": "6daabaa75fc8487f7e08706e40526912",
                "sha256": "c3c4398914ff22c3e0658d93fa6dac962e3acfbcc51f10b236c4079bdd51ddb6"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp312-cp312-manylinux_2_28_aarch64.whl",
            "has_sig": false,
            "md5_digest": "6daabaa75fc8487f7e08706e40526912",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 4654992,
            "upload_time": "2025-07-10T03:58:59",
            "upload_time_iso_8601": "2025-07-10T03:58:59.472544Z",
            "url": "https://files.pythonhosted.org/packages/4e/82/01422420e5be6a978cc96b4d4c4cbef8ef1bc8f00432c8fceea06fc5789d/ast_grep_py-0.38.7-cp312-cp312-manylinux_2_28_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "0c466d9ce5ddeb66134a4403748200348024835e1bb7fab29f4787f009be9d56",
                "md5": "0b2aa23a6fa396a7641373845ff489f5",
                "sha256": "4b58df3912eaab1a48ca4d50c97350f76f8e5336034d3a2c21cb542a5c93455b"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp312-cp312-manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "0b2aa23a6fa396a7641373845ff489f5",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 4788504,
            "upload_time": "2025-07-10T03:59:00",
            "upload_time_iso_8601": "2025-07-10T03:59:00.616073Z",
            "url": "https://files.pythonhosted.org/packages/0c/46/6d9ce5ddeb66134a4403748200348024835e1bb7fab29f4787f009be9d56/ast_grep_py-0.38.7-cp312-cp312-manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "17cdc468a027e7de689c9e4f83a71e085273ec0d093f0158275f14500cabf38a",
                "md5": "66e515c4e5aee576ccdc3144a4f107ca",
                "sha256": "5e6389bfb50bded150acbb28686acc9ecbacf46fdb972fbf474f35ccc069ba14"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp312-cp312-win32.whl",
            "has_sig": false,
            "md5_digest": "66e515c4e5aee576ccdc3144a4f107ca",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 4383104,
            "upload_time": "2025-07-10T03:59:01",
            "upload_time_iso_8601": "2025-07-10T03:59:01.803980Z",
            "url": "https://files.pythonhosted.org/packages/17/cd/c468a027e7de689c9e4f83a71e085273ec0d093f0158275f14500cabf38a/ast_grep_py-0.38.7-cp312-cp312-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "9c4616c431e3aa4a3c718394f65293454d61a9aaaf396c2c19712e8fc902b0b9",
                "md5": "694f83039efbe03b8aa58ec05d1eb2bc",
                "sha256": "43e7f5c821f16a6c2ec8b3efe453a61de43ebf859647d2f992e5ff89d8730c29"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp312-cp312-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "694f83039efbe03b8aa58ec05d1eb2bc",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 4510830,
            "upload_time": "2025-07-10T03:59:02",
            "upload_time_iso_8601": "2025-07-10T03:59:02.994567Z",
            "url": "https://files.pythonhosted.org/packages/9c/46/16c431e3aa4a3c718394f65293454d61a9aaaf396c2c19712e8fc902b0b9/ast_grep_py-0.38.7-cp312-cp312-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "2be3c19210239d13644c9188ed2b98dfe3323a8d3ee109de85737b1a2fa510f8",
                "md5": "5f2de48a249bd76d1c4a428f425616ee",
                "sha256": "99f67fd50bed68c7722df8de64fd307bc620a15a6844de9169ba6ffe27d66615"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp313-cp313-macosx_10_12_x86_64.whl",
            "has_sig": false,
            "md5_digest": "5f2de48a249bd76d1c4a428f425616ee",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.8",
            "size": 4698470,
            "upload_time": "2025-07-10T03:59:04",
            "upload_time_iso_8601": "2025-07-10T03:59:04.368419Z",
            "url": "https://files.pythonhosted.org/packages/2b/e3/c19210239d13644c9188ed2b98dfe3323a8d3ee109de85737b1a2fa510f8/ast_grep_py-0.38.7-cp313-cp313-macosx_10_12_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "2663ac32dfd817c8fa77533cec47bf543c985ce77fced1dc1a1610031a263b31",
                "md5": "50c28247207d1da0b6a818036fca7b3f",
                "sha256": "2741bedec051e5eca82dcc44230554b55123a0f34f2137e5be36bf4c91368d9b"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp313-cp313-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "50c28247207d1da0b6a818036fca7b3f",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.8",
            "size": 4848466,
            "upload_time": "2025-07-10T03:59:05",
            "upload_time_iso_8601": "2025-07-10T03:59:05.729387Z",
            "url": "https://files.pythonhosted.org/packages/26/63/ac32dfd817c8fa77533cec47bf543c985ce77fced1dc1a1610031a263b31/ast_grep_py-0.38.7-cp313-cp313-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3577bc214a340fd754f86127e7f51ddd8ae9e13b15735d52a52ed2a04e52741f",
                "md5": "16d364b3f7e714c4877e07dedff8f60a",
                "sha256": "8fd31b732ca5671f331275be363f2aca852a7d49d4f4d969afc05165be161e3f"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp313-cp313-manylinux_2_28_aarch64.whl",
            "has_sig": false,
            "md5_digest": "16d364b3f7e714c4877e07dedff8f60a",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.8",
            "size": 4655259,
            "upload_time": "2025-07-10T03:59:07",
            "upload_time_iso_8601": "2025-07-10T03:59:07.264144Z",
            "url": "https://files.pythonhosted.org/packages/35/77/bc214a340fd754f86127e7f51ddd8ae9e13b15735d52a52ed2a04e52741f/ast_grep_py-0.38.7-cp313-cp313-manylinux_2_28_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "8324fa46f3ca9ef3dd48a8ab241458006cd48d3e8e93b30fa29dce8c2e81d9a3",
                "md5": "d1c4f6f54ecf7ea7ea6bab60e13a7a0b",
                "sha256": "ddc184c5977effd5226222a02983d4ade01c5f272774c0b5b4e3b9982fb5f5b9"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp313-cp313-manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "d1c4f6f54ecf7ea7ea6bab60e13a7a0b",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.8",
            "size": 4788881,
            "upload_time": "2025-07-10T03:59:08",
            "upload_time_iso_8601": "2025-07-10T03:59:08.441221Z",
            "url": "https://files.pythonhosted.org/packages/83/24/fa46f3ca9ef3dd48a8ab241458006cd48d3e8e93b30fa29dce8c2e81d9a3/ast_grep_py-0.38.7-cp313-cp313-manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "1ada93f6e362792457ff5016bdfb885f3df66fa197e7cde83da95a070a70c302",
                "md5": "25a2a7a331ea01d586a6b001e4404de9",
                "sha256": "e59ca30e299dd23ffc17c1810dababcec9a41c388facb31d610372523c3081c6"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp313-cp313-win32.whl",
            "has_sig": false,
            "md5_digest": "25a2a7a331ea01d586a6b001e4404de9",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.8",
            "size": 4383268,
            "upload_time": "2025-07-10T03:59:09",
            "upload_time_iso_8601": "2025-07-10T03:59:09.625270Z",
            "url": "https://files.pythonhosted.org/packages/1a/da/93f6e362792457ff5016bdfb885f3df66fa197e7cde83da95a070a70c302/ast_grep_py-0.38.7-cp313-cp313-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3a810ccb792bee16144e56b0568e9fdf9408ffe01500b85c05f511a25a892651",
                "md5": "14e67aa0ff39f1c3a43da8ace34f7ce3",
                "sha256": "fdc3f6fb4fa92608d7bcbd1cbf87eb3a4cd7d215eb43d1c918fc3b19d3cef98d"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp313-cp313-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "14e67aa0ff39f1c3a43da8ace34f7ce3",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.8",
            "size": 4509765,
            "upload_time": "2025-07-10T03:59:10",
            "upload_time_iso_8601": "2025-07-10T03:59:10.839646Z",
            "url": "https://files.pythonhosted.org/packages/3a/81/0ccb792bee16144e56b0568e9fdf9408ffe01500b85c05f511a25a892651/ast_grep_py-0.38.7-cp313-cp313-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "5fbaff9f2cec0183c16d975232ad5f8a2b65e08f7b192434eab39a3587f4db50",
                "md5": "30ddba6d9e716e0e8a479e79716f873b",
                "sha256": "9057e28762cedcecc72e63eb0183d806cb392444a65c7c625ca89fe69862b1d0"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp39-cp39-manylinux_2_28_aarch64.whl",
            "has_sig": false,
            "md5_digest": "30ddba6d9e716e0e8a479e79716f873b",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 4654687,
            "upload_time": "2025-07-10T03:59:12",
            "upload_time_iso_8601": "2025-07-10T03:59:12.348918Z",
            "url": "https://files.pythonhosted.org/packages/5f/ba/ff9f2cec0183c16d975232ad5f8a2b65e08f7b192434eab39a3587f4db50/ast_grep_py-0.38.7-cp39-cp39-manylinux_2_28_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "27a07aaca50da6efda97f342595d69eec8a7ca924f628c546a5a19074acb4de4",
                "md5": "e55932e2b58f099e5e63d1a7c10a6599",
                "sha256": "c55b94bf06baef2067a79cef6fbb1b321683304fdb43c838b7413a93d8f9766f"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp39-cp39-manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "e55932e2b58f099e5e63d1a7c10a6599",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 4790787,
            "upload_time": "2025-07-10T03:59:13",
            "upload_time_iso_8601": "2025-07-10T03:59:13.855139Z",
            "url": "https://files.pythonhosted.org/packages/27/a0/7aaca50da6efda97f342595d69eec8a7ca924f628c546a5a19074acb4de4/ast_grep_py-0.38.7-cp39-cp39-manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "687408e5383f5e12df3407e5037a581b9acd366e9ce44707884bf19f799faef1",
                "md5": "6ffbe9da018284f4c94b03d42f5ab0ed",
                "sha256": "e22c0bc8e5e3ca070c23531929cd611efcfd4c9cc4deba19bac6c3b398c7a324"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp39-cp39-win32.whl",
            "has_sig": false,
            "md5_digest": "6ffbe9da018284f4c94b03d42f5ab0ed",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 4382785,
            "upload_time": "2025-07-10T03:59:15",
            "upload_time_iso_8601": "2025-07-10T03:59:15.432143Z",
            "url": "https://files.pythonhosted.org/packages/68/74/08e5383f5e12df3407e5037a581b9acd366e9ce44707884bf19f799faef1/ast_grep_py-0.38.7-cp39-cp39-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "48d2a85c58c4892a06dfb90fbe509dd031369a963a3132fda18f2777930a327f",
                "md5": "d2a62afd0c2eded076f35476a83becef",
                "sha256": "c9d89901820afeabd7c2f0b5ff065bb3e551acb22902a379acceeb3324839c37"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7-cp39-cp39-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "d2a62afd0c2eded076f35476a83becef",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 4508346,
            "upload_time": "2025-07-10T03:59:16",
            "upload_time_iso_8601": "2025-07-10T03:59:16.669793Z",
            "url": "https://files.pythonhosted.org/packages/48/d2/a85c58c4892a06dfb90fbe509dd031369a963a3132fda18f2777930a327f/ast_grep_py-0.38.7-cp39-cp39-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "7c0f3db143f5ff1839c2f65a938a447da8207b6f88b6c16f4fa8c7c932ebfa44",
                "md5": "7aab59c9b4a079bcddfd60cafaaf2571",
                "sha256": "77ac7c78505bb6703d3d72c0834c3a4141e02916facddc57fc9f1caeecccebe4"
            },
            "downloads": -1,
            "filename": "ast_grep_py-0.38.7.tar.gz",
            "has_sig": false,
            "md5_digest": "7aab59c9b4a079bcddfd60cafaaf2571",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 131429,
            "upload_time": "2025-07-10T03:59:17",
            "upload_time_iso_8601": "2025-07-10T03:59:17.897630Z",
            "url": "https://files.pythonhosted.org/packages/7c/0f/3db143f5ff1839c2f65a938a447da8207b6f88b6c16f4fa8c7c932ebfa44/ast_grep_py-0.38.7.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-10 03:59:17",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "ast-grep",
    "github_project": "ast-grep",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "ast-grep-py"
}
        
Elapsed time: 0.71649s