httpfs-sync


Namehttpfs-sync JSON
Version 0.0.2 PyPI version JSON
download
home_pageNone
SummaryInstall requirements and run code in virtual environments from the comfort of your own GIL
upload_time2024-06-05 14:37:34
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseMIT
keywords virtualenv dependencies
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # httpfs-sync

## Overview
`httpfs-sync` is an implementation of a filesystem interface for the Python `fsspec`
library that uses synchronous requests based on `urllib3`. This serves as an alternative
to the default asynchronous (based on `aiohttp`) filesystem implementation provided by
`fsspec`. This project is ideal for environments where asynchronous operations are not
feasible or desired, allowing users to interact with HTTP-based filesystems using a
synchronous API.

If you're dealing with deadlocks potentially involving the default HTTP 'filesystem' in
`fsspec`, the implementation here may help with verification of behavior: just use the classes
provided here as a drop-in replacement for `HTTPFileSystem` and compare behaviors.

## Features
- Synchronous HTTP requests for file system operations.
- Fully compatible with the `fsspec` API, making it easy to drop in as a replacement.
- Uses `urllib3` for robust, production-ready HTTP communications.

## Installation

To install `httpfs-sync`, you can use pip:

```bash
pip install httpfs-sync
```

## Usage
Here's a simple example of how to use httpfs-sync to read a file from an HTTP server:
```python
import fsspec
from httpfs_sync.core import SyncHTTPFileSystem

# enable use of SyncHTTPFileSystem and associated files for both http and https
SyncHTTPFileSystem.overwrite_async_registration()

# Use the registered file system to access a remote file
with fsspec.open('http://example.com/data.txt', 'r') as f:
    data = f.read()
    print(data)
```

## License
httpfs-sync is distributed under the MIT License, allowing the code to be used in commercial applications as well as open-source projects.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "httpfs-sync",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "virtualenv, dependencies",
    "author": null,
    "author_email": "Nathan Zimmerman <npzimmerman@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/66/60/008de95cbbd5d712211f177793b00f5c34558613285c84a22edfc9325a94/httpfs_sync-0.0.2.tar.gz",
    "platform": null,
    "description": "# httpfs-sync\n\n## Overview\n`httpfs-sync` is an implementation of a filesystem interface for the Python `fsspec`\nlibrary that uses synchronous requests based on `urllib3`. This serves as an alternative\nto the default asynchronous (based on `aiohttp`) filesystem implementation provided by\n`fsspec`. This project is ideal for environments where asynchronous operations are not\nfeasible or desired, allowing users to interact with HTTP-based filesystems using a\nsynchronous API.\n\nIf you're dealing with deadlocks potentially involving the default HTTP 'filesystem' in\n`fsspec`, the implementation here may help with verification of behavior: just use the classes\nprovided here as a drop-in replacement for `HTTPFileSystem` and compare behaviors.\n\n## Features\n- Synchronous HTTP requests for file system operations.\n- Fully compatible with the `fsspec` API, making it easy to drop in as a replacement.\n- Uses `urllib3` for robust, production-ready HTTP communications.\n\n## Installation\n\nTo install `httpfs-sync`, you can use pip:\n\n```bash\npip install httpfs-sync\n```\n\n## Usage\nHere's a simple example of how to use httpfs-sync to read a file from an HTTP server:\n```python\nimport fsspec\nfrom httpfs_sync.core import SyncHTTPFileSystem\n\n# enable use of SyncHTTPFileSystem and associated files for both http and https\nSyncHTTPFileSystem.overwrite_async_registration()\n\n# Use the registered file system to access a remote file\nwith fsspec.open('http://example.com/data.txt', 'r') as f:\n    data = f.read()\n    print(data)\n```\n\n## License\nhttpfs-sync is distributed under the MIT License, allowing the code to be used in commercial applications as well as open-source projects.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Install requirements and run code in virtual environments from the comfort of your own GIL",
    "version": "0.0.2",
    "project_urls": {
        "homepage": "https://github.com/moradology/httpfs-sync",
        "repository": "https://github.com/moradology/httpfs-sync.git"
    },
    "split_keywords": [
        "virtualenv",
        " dependencies"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6b42c1e2acce42bb8597b215313de8dacbe07d90928c195dcaf7218fa461c543",
                "md5": "86e5f53fc456d2afbecf77f5105830a0",
                "sha256": "223c1bf44ace63f6f5b3a07678174133a701314c8bdf88a53f7fb7d71de8e521"
            },
            "downloads": -1,
            "filename": "httpfs_sync-0.0.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "86e5f53fc456d2afbecf77f5105830a0",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 12480,
            "upload_time": "2024-06-05T14:37:32",
            "upload_time_iso_8601": "2024-06-05T14:37:32.733529Z",
            "url": "https://files.pythonhosted.org/packages/6b/42/c1e2acce42bb8597b215313de8dacbe07d90928c195dcaf7218fa461c543/httpfs_sync-0.0.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6660008de95cbbd5d712211f177793b00f5c34558613285c84a22edfc9325a94",
                "md5": "fd0f7dd0039bb233c558289f831a6e53",
                "sha256": "9d1d3b699b0f6d6c4d9fddaf4ad8b8688b1a1ba3fefe80c1445247e56833a57c"
            },
            "downloads": -1,
            "filename": "httpfs_sync-0.0.2.tar.gz",
            "has_sig": false,
            "md5_digest": "fd0f7dd0039bb233c558289f831a6e53",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 12376,
            "upload_time": "2024-06-05T14:37:34",
            "upload_time_iso_8601": "2024-06-05T14:37:34.411465Z",
            "url": "https://files.pythonhosted.org/packages/66/60/008de95cbbd5d712211f177793b00f5c34558613285c84a22edfc9325a94/httpfs_sync-0.0.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-06-05 14:37:34",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "moradology",
    "github_project": "httpfs-sync",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "tox": true,
    "lcname": "httpfs-sync"
}
        
Elapsed time: 3.88640s