scandir-rs


Namescandir-rs JSON
Version 2.8.0 PyPI version JSON
download
home_pagehttps://github.com/brmmm3/scandir-rs
SummaryA fast file tree scanner written in Rust
upload_time2024-10-26 17:01:10
maintainerNone
docs_urlNone
authorMartin Bammer <mrbm74@gmail.com>
requires_python>=3.7
licenseMIT
keywords fast scandir walk
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # scandir-rs

The Python module is called `scandir_rs` and installable via `pip`. It is an alternative to `os.walk()` and `os.scandir()` with more features and higher speed. On Linux it is **3 - 11 times faster** and on Windows **6 - 70 time faster** (see [benchmarks](https://github.com/brmmm3/scandir-rs/blob/master/pyscandir/doc/benchmarks.md)).  
It releases the GIL and the scanning is done in a background thread. With different methods intermediate results can be read.

If you are just interested in directory statistics you can use the `Count`.

`scandir_rs` contains following classes:

- `Count` for determining statistics of a directory.
- `Walk` for getting names of directory entries.
- `Scandir` for getting detailed stats of directory entries.

For the API see:

- Class [Count](https://github.com/brmmm3/scandir-rs/blob/master/pyscandir/doc/count.md)
- Class [Walk](https://github.com/brmmm3/scandir-rs/blob/master/pyscandir/doc/walk.md)
- Class [Scandir](https://github.com/brmmm3/scandir-rs/blob/master/pyscandir/doc/scandir.md)

## Installation

For building this wheel from source you need the tool `maturin`.

Install `maturin`:

```sh
cargo install maturin
```

IMPORTANT: In order to build this project at least Rust version 1.61 is needed!

**Build wheel:**

Change to directory `pyscandir`.

Build wheel (on Linux):

```sh
maturin build --release --strip
```

Build wheel on Windows:

```sh
maturin build --release --strip --no-sdist
```

``maturin`` will build the wheels for all Python versions installed on your system.

Alternatively you can use the build script `build_wheels.py`. The precondition to run this script is to have `pyenv` installed.
The script can build the wheel for specific Python versions or for all Python versions installed by `pyenv`.
In addition it runs ``pytest`` after successfull creation of each wheel.

```sh
python build_wheels.py
```

By default the script will build the wheel for the current Python interpreter.
If you want to build the wheel for specific Python version(s) by providing the argument `--versions`.

```sh
python build_wheels.py --versions 3.11.8,3.12.2
```

To build the wheel for all installed Python versions:

```sh
python build_wheels.py --versions *
```

Instruction how to install ``pyenv`` can be found [here](https://github.com/pyenv/pyenv).

## Examples

Get statistics of a directory:

```python
from scandir_rs import Count, ReturnType

print(Count("/usr", return_type=ReturnType.Ext).collect())
```

The `collect` method releases the GIL. So other Python threads can run in parallel.

The same, but asynchronously in background using a class instance:

```python
from scandir_rs import Count, ReturnType

instance = Count("/usr", return_type=ReturnType.Ext)
instance.start()  # Start scanning the directory in background
...
values = instance.results()  # Returns the current statistics. Can be read at any time
...
if instance.busy():  # Check if the task is still running.
...
instance.stop()  # If you want to cancel the task
...
instance.join()  # Wait for the instance to finish.
```

and with a context manager:

```python
import time

from scandir_rs import Count, ReturnType

with Count("/usr", return_type=ReturnType.Ext) as instance:
    while instance.busy():
        statistics = instance.results()
        # Do something
        time.sleep(0.01)
    print(instance.results())
```

``os.walk()`` example:

```python
from scandir_rs import Walk

for root, dirs, files in Walk("/usr"):
    # Do something
```

with extended data:

```python
from scandir_rs import Walk, ReturnType

for root, dirs, files, symlinks, other, errors in Walk("/usr", return_type=ReturnType.Ext):
    # Do something
```

``os.scandir()`` example:

```python
from scandir_rs import Scandir, ReturnType

for path, entry in Scandir("~/workspace", return_type=ReturnType.Ext):
    # entry is a custom DirEntry object
```


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/brmmm3/scandir-rs",
    "name": "scandir-rs",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": null,
    "keywords": "fast, scandir, walk",
    "author": "Martin Bammer <mrbm74@gmail.com>",
    "author_email": "Martin Bammer <mrbm74@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/7a/48/743ae3875824bd017861ae6859d2b252f2431a6183357193fb6b5cfb0e9e/scandir_rs-2.8.0.tar.gz",
    "platform": null,
    "description": "# scandir-rs\n\nThe Python module is called `scandir_rs` and installable via `pip`. It is an alternative to `os.walk()` and `os.scandir()` with more features and higher speed. On Linux it is **3 - 11 times faster** and on Windows **6 - 70 time faster** (see [benchmarks](https://github.com/brmmm3/scandir-rs/blob/master/pyscandir/doc/benchmarks.md)).  \nIt releases the GIL and the scanning is done in a background thread. With different methods intermediate results can be read.\n\nIf you are just interested in directory statistics you can use the `Count`.\n\n`scandir_rs` contains following classes:\n\n- `Count` for determining statistics of a directory.\n- `Walk` for getting names of directory entries.\n- `Scandir` for getting detailed stats of directory entries.\n\nFor the API see:\n\n- Class [Count](https://github.com/brmmm3/scandir-rs/blob/master/pyscandir/doc/count.md)\n- Class [Walk](https://github.com/brmmm3/scandir-rs/blob/master/pyscandir/doc/walk.md)\n- Class [Scandir](https://github.com/brmmm3/scandir-rs/blob/master/pyscandir/doc/scandir.md)\n\n## Installation\n\nFor building this wheel from source you need the tool `maturin`.\n\nInstall `maturin`:\n\n```sh\ncargo install maturin\n```\n\nIMPORTANT: In order to build this project at least Rust version 1.61 is needed!\n\n**Build wheel:**\n\nChange to directory `pyscandir`.\n\nBuild wheel (on Linux):\n\n```sh\nmaturin build --release --strip\n```\n\nBuild wheel on Windows:\n\n```sh\nmaturin build --release --strip --no-sdist\n```\n\n``maturin`` will build the wheels for all Python versions installed on your system.\n\nAlternatively you can use the build script `build_wheels.py`. The precondition to run this script is to have `pyenv` installed.\nThe script can build the wheel for specific Python versions or for all Python versions installed by `pyenv`.\nIn addition it runs ``pytest`` after successfull creation of each wheel.\n\n```sh\npython build_wheels.py\n```\n\nBy default the script will build the wheel for the current Python interpreter.\nIf you want to build the wheel for specific Python version(s) by providing the argument `--versions`.\n\n```sh\npython build_wheels.py --versions 3.11.8,3.12.2\n```\n\nTo build the wheel for all installed Python versions:\n\n```sh\npython build_wheels.py --versions *\n```\n\nInstruction how to install ``pyenv`` can be found [here](https://github.com/pyenv/pyenv).\n\n## Examples\n\nGet statistics of a directory:\n\n```python\nfrom scandir_rs import Count, ReturnType\n\nprint(Count(\"/usr\", return_type=ReturnType.Ext).collect())\n```\n\nThe `collect` method releases the GIL. So other Python threads can run in parallel.\n\nThe same, but asynchronously in background using a class instance:\n\n```python\nfrom scandir_rs import Count, ReturnType\n\ninstance = Count(\"/usr\", return_type=ReturnType.Ext)\ninstance.start()  # Start scanning the directory in background\n...\nvalues = instance.results()  # Returns the current statistics. Can be read at any time\n...\nif instance.busy():  # Check if the task is still running.\n...\ninstance.stop()  # If you want to cancel the task\n...\ninstance.join()  # Wait for the instance to finish.\n```\n\nand with a context manager:\n\n```python\nimport time\n\nfrom scandir_rs import Count, ReturnType\n\nwith Count(\"/usr\", return_type=ReturnType.Ext) as instance:\n    while instance.busy():\n        statistics = instance.results()\n        # Do something\n        time.sleep(0.01)\n    print(instance.results())\n```\n\n``os.walk()`` example:\n\n```python\nfrom scandir_rs import Walk\n\nfor root, dirs, files in Walk(\"/usr\"):\n    # Do something\n```\n\nwith extended data:\n\n```python\nfrom scandir_rs import Walk, ReturnType\n\nfor root, dirs, files, symlinks, other, errors in Walk(\"/usr\", return_type=ReturnType.Ext):\n    # Do something\n```\n\n``os.scandir()`` example:\n\n```python\nfrom scandir_rs import Scandir, ReturnType\n\nfor path, entry in Scandir(\"~/workspace\", return_type=ReturnType.Ext):\n    # entry is a custom DirEntry object\n```\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A fast file tree scanner written in Rust",
    "version": "2.8.0",
    "project_urls": {
        "Homepage": "https://github.com/brmmm3/scandir-rs",
        "Source Code": "https://github.com/brmmm3/scandir-rs"
    },
    "split_keywords": [
        "fast",
        " scandir",
        " walk"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "45c8fc79d43be7392a1da79fbd3310a3c85fc23ae6ff2f11fd801db00af05ba8",
                "md5": "a4e812517d0aacdc92b70b8cf818ca4d",
                "sha256": "8fcb876641e42603c80e2afa06efcb204da556dcb4d811906a1063bee0984722"
            },
            "downloads": -1,
            "filename": "scandir_rs-2.8.0-cp310-cp310-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "a4e812517d0aacdc92b70b8cf818ca4d",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.7",
            "size": 451301,
            "upload_time": "2024-10-26T17:00:31",
            "upload_time_iso_8601": "2024-10-26T17:00:31.720647Z",
            "url": "https://files.pythonhosted.org/packages/45/c8/fc79d43be7392a1da79fbd3310a3c85fc23ae6ff2f11fd801db00af05ba8/scandir_rs-2.8.0-cp310-cp310-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b572a5d43fa4360c1a070b361593fea518e6e689ae5b2cca2dce0628ab2b93c1",
                "md5": "e06a7d757877e953aaf3d3b60bc13623",
                "sha256": "c749ab3d2a0aa90fa0f69ef433eb0d08e4f2c290929290ae9adab33964e12a46"
            },
            "downloads": -1,
            "filename": "scandir_rs-2.8.0-cp310-cp310-manylinux_2_34_x86_64.whl",
            "has_sig": false,
            "md5_digest": "e06a7d757877e953aaf3d3b60bc13623",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.7",
            "size": 501542,
            "upload_time": "2024-10-26T17:00:34",
            "upload_time_iso_8601": "2024-10-26T17:00:34.690448Z",
            "url": "https://files.pythonhosted.org/packages/b5/72/a5d43fa4360c1a070b361593fea518e6e689ae5b2cca2dce0628ab2b93c1/scandir_rs-2.8.0-cp310-cp310-manylinux_2_34_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "21fda9cbc497b09c77e0557e53a424cda1baf60b65eafd0b6a78a876516cdaef",
                "md5": "92f04886d2672cb95700e39201c7aecf",
                "sha256": "92c4c4733751dc68368ea615a59d61e22b789427e8afcb11f521eaeceeff09bb"
            },
            "downloads": -1,
            "filename": "scandir_rs-2.8.0-cp310-none-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "92f04886d2672cb95700e39201c7aecf",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.7",
            "size": 430153,
            "upload_time": "2024-10-26T17:00:36",
            "upload_time_iso_8601": "2024-10-26T17:00:36.858717Z",
            "url": "https://files.pythonhosted.org/packages/21/fd/a9cbc497b09c77e0557e53a424cda1baf60b65eafd0b6a78a876516cdaef/scandir_rs-2.8.0-cp310-none-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "411e17b9742d118f68106002cd12981ddf52ab413ae9bcc04a33da7bb47681ad",
                "md5": "7d5f4aa396698bad703f4c97979b723f",
                "sha256": "42bb78716f4a7d5cafe27fbb2e03f42e6ca8f07c5103c32f9d82da70e584a619"
            },
            "downloads": -1,
            "filename": "scandir_rs-2.8.0-cp311-cp311-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "7d5f4aa396698bad703f4c97979b723f",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.7",
            "size": 451163,
            "upload_time": "2024-10-26T17:00:39",
            "upload_time_iso_8601": "2024-10-26T17:00:39.134677Z",
            "url": "https://files.pythonhosted.org/packages/41/1e/17b9742d118f68106002cd12981ddf52ab413ae9bcc04a33da7bb47681ad/scandir_rs-2.8.0-cp311-cp311-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "bbfcdb3aed3e1e287861c2cfff69688ff45c80bb621ee8a8bb0f4e164f82cabc",
                "md5": "45e83025c55575296628741f4aa72ae5",
                "sha256": "a8bdf8fa2148c68048427c4c001d55606e68651a10dd81ad0a8e0333dc328801"
            },
            "downloads": -1,
            "filename": "scandir_rs-2.8.0-cp311-cp311-manylinux_2_34_x86_64.whl",
            "has_sig": false,
            "md5_digest": "45e83025c55575296628741f4aa72ae5",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.7",
            "size": 563683,
            "upload_time": "2024-10-26T17:00:41",
            "upload_time_iso_8601": "2024-10-26T17:00:41.394228Z",
            "url": "https://files.pythonhosted.org/packages/bb/fc/db3aed3e1e287861c2cfff69688ff45c80bb621ee8a8bb0f4e164f82cabc/scandir_rs-2.8.0-cp311-cp311-manylinux_2_34_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "21011a69148dcaad0640c96eca25a4602fa9d231bef99c49c82ec49e0ff9de74",
                "md5": "2e94509888b4988d23d2081ce9f9d01e",
                "sha256": "406a78c7a046a721dadddb30cac460b84cd7e9284824feb8951363917145758c"
            },
            "downloads": -1,
            "filename": "scandir_rs-2.8.0-cp311-none-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "2e94509888b4988d23d2081ce9f9d01e",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.7",
            "size": 429971,
            "upload_time": "2024-10-26T17:00:43",
            "upload_time_iso_8601": "2024-10-26T17:00:43.593328Z",
            "url": "https://files.pythonhosted.org/packages/21/01/1a69148dcaad0640c96eca25a4602fa9d231bef99c49c82ec49e0ff9de74/scandir_rs-2.8.0-cp311-none-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0ba9c8421f4d394722cb39f29717b8d1052e20d10b640e70bd56944aecb7e966",
                "md5": "d662dc677fadd05f7054e6af0cf04f57",
                "sha256": "8a11f36eacca96fb55e4002ebec9733de065b02d32310d74b1c50fdfb6591661"
            },
            "downloads": -1,
            "filename": "scandir_rs-2.8.0-cp312-cp312-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "d662dc677fadd05f7054e6af0cf04f57",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.7",
            "size": 450563,
            "upload_time": "2024-10-26T17:00:46",
            "upload_time_iso_8601": "2024-10-26T17:00:46.032102Z",
            "url": "https://files.pythonhosted.org/packages/0b/a9/c8421f4d394722cb39f29717b8d1052e20d10b640e70bd56944aecb7e966/scandir_rs-2.8.0-cp312-cp312-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b12a18b67f072d7ab3091eda14b001559d73b147b582e64c34dbf14cd695b315",
                "md5": "fb4bad7b422fe6f23741a6251cc38f8d",
                "sha256": "c362c1d020583e07abee2719d452f669fa6b200a88bf43e46463445cec9f3661"
            },
            "downloads": -1,
            "filename": "scandir_rs-2.8.0-cp312-cp312-manylinux_2_34_x86_64.whl",
            "has_sig": false,
            "md5_digest": "fb4bad7b422fe6f23741a6251cc38f8d",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.7",
            "size": 1031573,
            "upload_time": "2024-10-26T17:00:48",
            "upload_time_iso_8601": "2024-10-26T17:00:48.528769Z",
            "url": "https://files.pythonhosted.org/packages/b1/2a/18b67f072d7ab3091eda14b001559d73b147b582e64c34dbf14cd695b315/scandir_rs-2.8.0-cp312-cp312-manylinux_2_34_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1b322f5a9b72447c22d554e4b0ec8226f61f1a6dd3b3662720e4d67b5932bd90",
                "md5": "8fd1c29fb874f0e7e5d8f0bddbb1607e",
                "sha256": "2af72d1f183feafb1c8a7b256bc0dc0079f3a16f6192bbbb7c75c7e747934f34"
            },
            "downloads": -1,
            "filename": "scandir_rs-2.8.0-cp312-none-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "8fd1c29fb874f0e7e5d8f0bddbb1607e",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.7",
            "size": 431938,
            "upload_time": "2024-10-26T17:00:50",
            "upload_time_iso_8601": "2024-10-26T17:00:50.989854Z",
            "url": "https://files.pythonhosted.org/packages/1b/32/2f5a9b72447c22d554e4b0ec8226f61f1a6dd3b3662720e4d67b5932bd90/scandir_rs-2.8.0-cp312-none-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ea56c39a6c655a413f6e40c953c281ef210026a9d8c1b6b6f8693a96bc11807e",
                "md5": "fccc97b76b89cc574cfd6fc83b620b00",
                "sha256": "f2533b29b78628f9bb904d3a6f00b4bf139c25cbda2528c6b797c7ac13aa810a"
            },
            "downloads": -1,
            "filename": "scandir_rs-2.8.0-cp313-cp313-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "fccc97b76b89cc574cfd6fc83b620b00",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.7",
            "size": 450236,
            "upload_time": "2024-10-26T17:00:53",
            "upload_time_iso_8601": "2024-10-26T17:00:53.571536Z",
            "url": "https://files.pythonhosted.org/packages/ea/56/c39a6c655a413f6e40c953c281ef210026a9d8c1b6b6f8693a96bc11807e/scandir_rs-2.8.0-cp313-cp313-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1793cab1951070e6118cb507b9e7ab0848f42ba6437affc476ed9bf68dded6a2",
                "md5": "14dde5d224a598b78f74b82a30508bf4",
                "sha256": "2f7b2154549dbb1b10d41b52f7d87f73b70984d897d74af5589883a8f917130f"
            },
            "downloads": -1,
            "filename": "scandir_rs-2.8.0-cp313-cp313-manylinux_2_34_x86_64.whl",
            "has_sig": false,
            "md5_digest": "14dde5d224a598b78f74b82a30508bf4",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.7",
            "size": 564542,
            "upload_time": "2024-10-26T17:00:56",
            "upload_time_iso_8601": "2024-10-26T17:00:56.043520Z",
            "url": "https://files.pythonhosted.org/packages/17/93/cab1951070e6118cb507b9e7ab0848f42ba6437affc476ed9bf68dded6a2/scandir_rs-2.8.0-cp313-cp313-manylinux_2_34_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2bacbbe557edfe17a18b4f3b54438511fddbc85b777e5f7a900f7f445eb707f3",
                "md5": "52c5d5b091a2b5c77ebfb67b34be844b",
                "sha256": "0b2458531feb82415929de15ae3f9b6f4964aca518f2f15f134840b84c13244d"
            },
            "downloads": -1,
            "filename": "scandir_rs-2.8.0-cp38-cp38-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "52c5d5b091a2b5c77ebfb67b34be844b",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.7",
            "size": 451884,
            "upload_time": "2024-10-26T17:00:58",
            "upload_time_iso_8601": "2024-10-26T17:00:58.171393Z",
            "url": "https://files.pythonhosted.org/packages/2b/ac/bbe557edfe17a18b4f3b54438511fddbc85b777e5f7a900f7f445eb707f3/scandir_rs-2.8.0-cp38-cp38-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1c9a7a0eae959e5acd0a67cae3d6e011352661cfcd8754d9a8abfd65af9339bd",
                "md5": "188bb3d4e064172896be865c0921cdf0",
                "sha256": "fe250f3c4cbf1668aa542bc84e1e8cac18c0a29dc6c6c2c14b120064de91f2e1"
            },
            "downloads": -1,
            "filename": "scandir_rs-2.8.0-cp38-cp38-manylinux_2_34_x86_64.whl",
            "has_sig": false,
            "md5_digest": "188bb3d4e064172896be865c0921cdf0",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.7",
            "size": 564483,
            "upload_time": "2024-10-26T17:01:00",
            "upload_time_iso_8601": "2024-10-26T17:01:00.893609Z",
            "url": "https://files.pythonhosted.org/packages/1c/9a/7a0eae959e5acd0a67cae3d6e011352661cfcd8754d9a8abfd65af9339bd/scandir_rs-2.8.0-cp38-cp38-manylinux_2_34_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "bdb562c745b106cb23c88ff667e0b374d96b65ccba7bc49ed2d19eed753d1937",
                "md5": "9399814a0ae9d8da270745a1fcebd37b",
                "sha256": "f70d0c40fbbb12b4f37e2873e2c85eb7eac19de03ffd55188d73d6e2cfef5a6d"
            },
            "downloads": -1,
            "filename": "scandir_rs-2.8.0-cp38-none-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "9399814a0ae9d8da270745a1fcebd37b",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.7",
            "size": 431232,
            "upload_time": "2024-10-26T17:01:02",
            "upload_time_iso_8601": "2024-10-26T17:01:02.976534Z",
            "url": "https://files.pythonhosted.org/packages/bd/b5/62c745b106cb23c88ff667e0b374d96b65ccba7bc49ed2d19eed753d1937/scandir_rs-2.8.0-cp38-none-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "86a49cbe9a299c5de390af0738e10e305b26200fe6592fff80bd3389510a6b96",
                "md5": "ba0942d5c7344eb8875e78d905076dba",
                "sha256": "865d045eccc8b1aac80e3d019c413b7bff8ae4898f1a1b7714f562052d2f81a1"
            },
            "downloads": -1,
            "filename": "scandir_rs-2.8.0-cp39-cp39-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "ba0942d5c7344eb8875e78d905076dba",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.7",
            "size": 451683,
            "upload_time": "2024-10-26T17:01:04",
            "upload_time_iso_8601": "2024-10-26T17:01:04.683081Z",
            "url": "https://files.pythonhosted.org/packages/86/a4/9cbe9a299c5de390af0738e10e305b26200fe6592fff80bd3389510a6b96/scandir_rs-2.8.0-cp39-cp39-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "136de854232e6e4a172a6f85b0072774365873ff3ca324fd438cb0eb2780c085",
                "md5": "02fa60f70d5b8b9061dfaa3af209e761",
                "sha256": "08a8882e0ad10febf33d34fd4d233830a5ea37d4ee34a5edca15c9e460697be0"
            },
            "downloads": -1,
            "filename": "scandir_rs-2.8.0-cp39-cp39-manylinux_2_34_x86_64.whl",
            "has_sig": false,
            "md5_digest": "02fa60f70d5b8b9061dfaa3af209e761",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.7",
            "size": 564170,
            "upload_time": "2024-10-26T17:01:06",
            "upload_time_iso_8601": "2024-10-26T17:01:06.987528Z",
            "url": "https://files.pythonhosted.org/packages/13/6d/e854232e6e4a172a6f85b0072774365873ff3ca324fd438cb0eb2780c085/scandir_rs-2.8.0-cp39-cp39-manylinux_2_34_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e97d0d45e0a56697cf4066b17781c3dc1c25a216a805f946f44c343b58fbc528",
                "md5": "bfb137d713cd6b741f630e47ec44aa2b",
                "sha256": "633208ee1e7776ecc97ba778086339cd7b2e800442c8e9f636e9e307455a91e7"
            },
            "downloads": -1,
            "filename": "scandir_rs-2.8.0-cp39-none-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "bfb137d713cd6b741f630e47ec44aa2b",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.7",
            "size": 430747,
            "upload_time": "2024-10-26T17:01:08",
            "upload_time_iso_8601": "2024-10-26T17:01:08.889144Z",
            "url": "https://files.pythonhosted.org/packages/e9/7d/0d45e0a56697cf4066b17781c3dc1c25a216a805f946f44c343b58fbc528/scandir_rs-2.8.0-cp39-none-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7a48743ae3875824bd017861ae6859d2b252f2431a6183357193fb6b5cfb0e9e",
                "md5": "a0fa0a8351c8994fcceec3cb7ecf62e9",
                "sha256": "7a6cf04bc120cfbcbe7f9894e5850fac651b6dee85553c241ab35f2c6cd72d72"
            },
            "downloads": -1,
            "filename": "scandir_rs-2.8.0.tar.gz",
            "has_sig": false,
            "md5_digest": "a0fa0a8351c8994fcceec3cb7ecf62e9",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 27849,
            "upload_time": "2024-10-26T17:01:10",
            "upload_time_iso_8601": "2024-10-26T17:01:10.026569Z",
            "url": "https://files.pythonhosted.org/packages/7a/48/743ae3875824bd017861ae6859d2b252f2431a6183357193fb6b5cfb0e9e/scandir_rs-2.8.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-26 17:01:10",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "brmmm3",
    "github_project": "scandir-rs",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "scandir-rs"
}
        
Elapsed time: 0.32857s