Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 9 additions & 7 deletions .github/workflows/pull_request.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ jobs:
uses: liskin/gh-problem-matcher-wrap@e7b7beaaafa52524748b31a381160759d68d61fb
with:
linters: isort
run: isort --check --diff diskcollections tests
run: isort --check --diff src tests
black:
runs-on: ubuntu-latest
steps:
Expand All @@ -59,7 +59,6 @@ jobs:
strategy:
matrix:
python-version:
- "3.7"
- "3.8"
- "3.9"
- "3.10"
Expand All @@ -74,13 +73,16 @@ jobs:
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Install uv
uses: astral-sh/setup-uv@22695119d769bdb6f7032ad67b9bca0ef8c4a174 # v5
- name: Install required Python versions
run: |
uv python install ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip setuptools wheel tox>=4.2

- name: Run tox targets for ${{ matrix.python-version }}
run: tox run -f py$(echo ${{ matrix.python-version }} | tr -d .)
uv sync --frozen --all-groups
- name: Run tox targets for python ${{ matrix.python-version }}
run: uv run tox run -f $(echo ${{ matrix.python-version }} | tr -d .)

coverage:
name: Coverage
Expand Down
6 changes: 6 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
Version 0.1.0
-------------

Still in progress


Version 0.0.6
-------------

Expand Down
10 changes: 6 additions & 4 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -196,23 +196,25 @@ Contribute

#. Fork repository on GitHub to start making your changes to the **master** branch (or branch off of it).
#. Write tests that prove that bug or future works as expected
#. Install other python versions with **pyenv** together with **tox**:
#. Install other python versions with **uv** together with **tox**:

.. code-block:: bash

$ sudo apt-get install pyenv tox==4.23.2 virtualenv-pyenv==0.5.0
$ pip install uv
$ uv sync
$ uv tool install tox --with tox-uv

#. Install python versions

.. code-block:: bash

$ pyenv install 3.7 3.8 3.9 3.10 3.11 3.12 3.13
$ uv python install 3.8 3.9 3.10 3.11 3.12 3.13

#. Check your code and tests with **tox**

.. code-block:: bash

$ VIRTUALENV_DISCOVERY=pyenv tox
$ tox
---------- coverage: platform linux, python 3.13.2-final-0 -----------
Name Stmts Miss Branch BrPart Cover Missing
------------------------------------------------------------------------------------
Expand Down
53 changes: 52 additions & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,2 +1,53 @@
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[tool.hatch.build.targets.wheel]
packages = ["src/diskcollections"]
include = [
"src/*.py"
]

[project]
name = "python-disk-collections"
version = "0.1.0"
description = "Module contains class with extended python list that stores items at disk."
authors = [
{name = "Andrzej",email = "6695650+thegrymek@users.noreply.github.com"}
]
license = {text = "MIT"}
readme = "README.rst"
keywords = [
"pickle", "cache", "collections", "list", "deque", "json", "zlib", "disk",
]
classifiers = [
"Operating System :: OS Independent",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Topic :: Software Development :: Libraries :: Python Modules",
]
dependencies = [
]
requires-python = ">=3.8,<4.0"

[project.urls]
Repository = "https://github.com/thegrymek/python-disk-collections"
Releases = "https://github.com/thegrymek/python-disk-collections/releases"

[dependency-groups]
dev = [
"black>=23.3.0",
"flake8>=5.0.4",
"isort>=5.11.5",
"pytest>=7.4.4",
"pytest-cov>=4.1.0",
"tox>=3.28.0",
"tox-uv>=1.13.1",
]

[tool.black]
line-length = 79
line-length = 79
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
32 changes: 9 additions & 23 deletions tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -3,40 +3,26 @@ min_version = 4.2
use_develop = True
no_package = True
env_list =
lint
py{37,38,39,310,311,312,313}
lint, 37, 38, 39, 310, 311, 312, 313

[testenv]
deps =
pytest
pytest-cov
setenv =
PYTHONDONTWRITEBYTECODE=1
runner = uv-venv-lock-runner
dependency_groups = dev
commands = pytest -v \
--cov diskcollections \
--cov src \
--cov-config .coveragerc \
--cov-report term-missing \
--cov-fail-under 95 \
{posargs:tests}
passenv =
TRAVIS
TRAVIS_BRANCH
TRAVIS_JOB_ID


[testenv:lint]
skips_dist = True
skip_install = True
deps =
flake8
black
isort
readme_renderer
runner = uv-venv-lock-runner
dependency_groups = dev
commands =
black diskcollections tests
isort diskcollections tests
flake8 diskcollections tests
python setup.py check -r -s -m
black src tests
isort src tests
flake8 src tests


[flake8]
Expand Down
Loading