dreadlocks
A cross-platform file-locking software library for Python that supports thread-level locks, process-level locks, and both simultaneously.
See GitHub pages:
The only external requirements are Python and poetry
.
poetry
takes care of setting up a minimal environment with tox
and pre-commit
installed.
For that run:
make i
All other environments are managed by tox
(and uses poetry
internally).
To enable local git
hooks, run
make install-git-hooks
Manage dependencies with poetry {add,remove} [-G <group>] ...
. Update the
lock file with
make lock
./s lint-check
:information_source: Some linting errors can be automatically fixed with
./s lint
.
./s type-check
:information_source: Add the
-cover
suffix to generate coverage information.
./s unit
./s doctest
If tests have been run with the -cover
suffix, coverage reports can be
generated with ./s coverage
.
The HTML coverage report can be served to port 8000
with ./s coverage-serve
.
Dependencies licenses can be checked with ./s licenses
.
This software library is triple-licensed under the BSD 2-clause, LGPLv3 or later, and GPLv3 or later.
You must choose to be bound by at least one of these licenses when you use this work.
SPDX-License-Identifier: BSD-2-Clause OR LGPL-3.0-or-later OR GPL-3.0-or-later