RASCSI/python
Daniel Markstedt dd00547f92
Formatted image file data structure that breaks down by subdir (#1102)
- New utility method for the web app, which sorts image files into dicts where the subdir is the key
- In the web ui, display each subdir in a table nested in a details tag.
- Allow for picking destination subdir when uploading files
- Style the expandable details blocks in the images table
- Add a check for ~ paths to the is_safe_path() utility method
2023-02-24 17:28:58 -08:00
..
common Descriptive comments for each h/fdisk command (#1106) 2023-02-24 12:58:51 -08:00
ctrlboard Rebrand project to PiSCSI (#1016) 2022-12-05 09:58:23 -08:00
loopback_test Rebrand project to PiSCSI (#1016) 2022-12-05 09:58:23 -08:00
oled Rebrand project to PiSCSI (#1016) 2022-12-05 09:58:23 -08:00
web Formatted image file data structure that breaks down by subdir (#1102) 2023-02-24 17:28:58 -08:00
__init__.py restructuring towards python client library #455 (#613) 2022-01-21 15:08:29 -08:00
.flake8 Rebrand project to PiSCSI (#1016) 2022-12-05 09:58:23 -08:00
.pylintrc Rebrand project to PiSCSI (#1016) 2022-12-05 09:58:23 -08:00
pyproject.toml Auto-format Python sources with black, fix all issues reported by flake8 (#1010) 2022-11-30 05:19:17 +00:00
README.md Rebrand project to PiSCSI (#1016) 2022-12-05 09:58:23 -08:00

PiSCSI Python Apps

This directory contains Python-based clients for PiSCSI as well as common packages that are shared among the clients.

The following paragraphs in this README contain instructions that are shared among all Python apps.

Supported Python interpreter

The policy in this project is to support the Python 3 interpreter that comes standard with the current stable, as well as previous stable release of Debian.

At the time of writing they are:

Static analysis with pylint

It is recommended to run pylint against new code to protect against bugs and keep the code readable and maintainable. The local pylint configuration lives in .pylintrc. In order for pylint to recognize venv libraries, the pylint-venv package is required.

sudo apt install pylint3
sudo pip install pylint-venv
source venv/bin/activate
pylint3 python_source_file.py

Examples:

# check a single file
pylint web/src/web.py

# check the python modules
pylint common/src
pylint web/src
pylint oled/src