Skip to main content

Python package containing useful file system operations

Project description

File System IO

Badges
License License: MIT
PyPI PyPI version PyPI - Python Version
Version Build Status
Main GitHub Build main GitHub Build main

File System IO or simply FSIO is a Python package containing useful file system operations.

Table of contents

Installation

Installing the main package is as simple as downloading from PyPI.

pip install 'fsio==$VERSION'

If you also require use of the CLI, then you can install with extras as follows.

pip install 'fsio[cli]==$VERSION'

Getting Started

This package was designed for simplifying some file system operations. Its original design was for detecting file types of a file, but it has been expanded beyond this. The main code lives within the core directory. Here, for example, you will see the file_type class which supports the detect-file-type commands within the CLI. Moreover, we can use this within Python code provided we have the object in BytesIO form. For example, suppose we have a .parquet file without an extension and we want to establish its type, and confirm that it really is of type parquet. To do this, we could do something as follows.

>>> from io import BytesIO
>>> from pathlib import Path
>>> 
>>> from fsio.core import FileType
>>> 
>>> path_to_file = Path('path/to/suspected/parquet')
>>> 
>>> with path_to_file.open('rb') as f:
>>>     body = BytesIO(f.read())
>>> 
>>> FileType.detect_file_type(body)
'parquet'

CLI

If you optionally installed the cli subpackage, then you get extra functionality and are able to use most of the functionality from the core package. For example, you can detect the file type of a given file using the command

fsio detect-file-type path/to/file.ext

This will return the type of the file to the stdout, for example parquet. You can get more information about each command by using the --help flag on each command. The CLI was designed using typer, from the creators of FastAPI. A list of the following CLI commands which are available are below.

Commands
fsio detect-file-type FILE Detect the type of FILE given as input
fsio supported-types List the current supportoed file types

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fsio-1.3.0.tar.gz (14.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fsio-1.3.0-py3-none-any.whl (7.4 kB view details)

Uploaded Python 3

File details

Details for the file fsio-1.3.0.tar.gz.

File metadata

  • Download URL: fsio-1.3.0.tar.gz
  • Upload date:
  • Size: 14.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for fsio-1.3.0.tar.gz
Algorithm Hash digest
SHA256 d632d7ebcfc8c51d6654dc1975809b0d31c8e68942d01c16391bbaeef7f3a953
MD5 06ead414d31a0bbdb077a7d4790684ce
BLAKE2b-256 eb0065816d019d08514fd6ebcdf789cf2d7b2fc1a1f7ca0549bd38a9afb37ec1

See more details on using hashes here.

Provenance

The following attestation bundles were made for fsio-1.3.0.tar.gz:

Publisher: python-publish.yaml on collier-p-charlie/fsio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fsio-1.3.0-py3-none-any.whl.

File metadata

  • Download URL: fsio-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 7.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for fsio-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 63334f0cd027c8e202d0bf9a35ad1ed311889cad92bd3c5904c6dd6270a1db4d
MD5 0ec811fdc0f73b332ef094d2c6a3e4ac
BLAKE2b-256 916bcc3b15ecc7ecd855729ac664d414444f70377710c43679254cd7a76ebb59

See more details on using hashes here.

Provenance

The following attestation bundles were made for fsio-1.3.0-py3-none-any.whl:

Publisher: python-publish.yaml on collier-p-charlie/fsio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page