From 48fd909f502d25cbe7ef7732c44734f593c6e022 Mon Sep 17 00:00:00 2001 From: Matthias Baumgartner Date: Thu, 2 Mar 2023 14:57:49 +0100 Subject: README, CHANGELOG, and minor style fixes --- README.md | 64 ++++++++++++++++++++++++++++++--------------------------------- 1 file changed, 30 insertions(+), 34 deletions(-) (limited to 'README.md') diff --git a/README.md b/README.md index da066f6..1956752 100644 --- a/README.md +++ b/README.md @@ -1,57 +1,53 @@ -The Black Star File System -========================== +# The Black Star File System +The Black Star File System (BSFS) is a semantic file system, meaning that it organizes files +by association, and can record files, their metadata and content in a structured manner. -### Developer tools setup -#### Test coverage (coverage) +## Installation -Resources: -* https://coverage.readthedocs.io/en/6.5.0/index.html -* https://nedbatchelder.com/blog/200710/flaws_in_coverage_measurement.html +You can install BSFS via pip: -Commands: -$ pip install coverage -$ coverage run ; coverage html ; xdg-open .htmlcov/index.html + $ pip install --extra-index-url https://pip.bsfs.io bsfs +## Development -#### Static code analysis (pylint) +Set up a virtual environment: -Resources: -* https://github.com/PyCQA/pylint -* https://pylint.org/ -* https://pylint.pycqa.org/en/latest/user_guide/messages/messages_overview.html#messages-overview + $ virtualenv env + $ source env/bin/activate -Commands: -$ pip install pylint -$ pylint bsfs +Install bsfs as editable from the git repository: + $ git clone https://git.bsfs.io/bsfs.git + $ cd bsfs + $ pip install -e . +Install the following additional packages besides bsfs: -#### Type analysis (mypy) + $ pip install coverage mypy pylint + $ pip install sphinx sphinx-copybutton furo + $ pip install build -Resources: -* https://github.com/python/mypy -* https://mypy.readthedocs.io/en/stable/ +To ensure code style discipline, run the following commands: -Commands: -$ pip install mypy -$ mypy + $ coverage run ; coverage html ; xdg-open .htmlcov/index.html + $ pylint bsfs + $ mypy +To build the package, do: + $ python -m build -#### Documentation (sphinx) - -Resources: -* -* - -Commands: -$ pip install ... -$ +To run only the tests (without coverage), run the following command from the **test folder**: + $ python -m unittest +To build the documentation, run the following commands from the **doc folder**: + $ sphinx-apidoc -f -o source/api ../bsfs/ --module-first -d 1 --separate + $ make html + $ xdg-open build/html/index.html -- cgit v1.2.3