# 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"
}