techno-solutionist-collective / dreadlocks

:lock: A cross-platform file-locking software library for Python that supports thread-level locks, process-level locks, and both simultaneously.
https://techno-solutionist-collective.github.io/dreadlocks/latest
Other
1 stars 0 forks source link

๐Ÿ”’ dreadlocks PyPI - Version Codecov

A cross-platform file-locking software library for Python that supports thread-level locks, process-level locks, and both simultaneously.

๐Ÿ“š Documentation

See GitHub pages:

๐Ÿ‘ฉโ€๐Ÿ’ป Development

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).

๐Ÿช Local git hooks

To enable local git hooks, run

make install-git-hooks

๐Ÿ“ฆ Dependencies

Manage dependencies with poetry {add,remove} [-G <group>] .... Update the lock file with

make lock

๐Ÿ‘• Lint

./s lint-check

:information_source: Some linting errors can be automatically fixed with ./s lint.

โ˜‘๏ธ Type check

./s type-check

๐Ÿงช Tests

:information_source: Add the -cover suffix to generate coverage information.

๐Ÿ”ฌ Unit tests

./s unit

๐Ÿ“‘ Doctests

./s doctest

โ˜” Coverage

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

Dependencies licenses can be checked with ./s licenses.

โš–๏ธ Licensing

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

๐Ÿ‘€ See also