mirror of
https://github.com/akuker/RASCSI.git
synced 2024-11-22 16:33:17 +00:00
5172d167e7
- Sanitize file paths with Path: for flat file structures, always extract Path().name, and for nested file structures either look for absolute paths, or someone trying to use ".." to traverse the dir strucutre. - Reduce redundancy in network bridge detection method, and return somewhat more informative messages - Make all endpoints return exactly one message - Move some warning messages to logging - Use tempfile for iso generation temp file handling |
||
---|---|---|
.. | ||
common | ||
ctrlboard | ||
loopback_test | ||
oled | ||
web | ||
__init__.py | ||
.pylintrc | ||
README.md |
RaSCSI Reloaded Python Apps
This directory contains Python-based clients for RaSCSI Reloaded 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:
- Python 3.9.2 in Debian Bullseye
- Python 3.7.3 in Debian Buster
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