Compare commits

..

4 commits

Author SHA1 Message Date
bronsen
b3b26d0e03 [meta] Update badge 2025-06-21 03:11:10 +02:00
bronsen
6a89e4aefd [doc] make the markdown linter happy 2025-06-21 03:10:46 +02:00
bronsen
948ab10773 [deps] add pytest-randomly to run tests in random order
ATM it is intended for use in dev env, not test env.

On test/ci we want a more reproducable order (...I think).
2025-06-21 03:10:15 +02:00
bronsen
463c824f5c [deps] update dependencies 2025-06-21 02:50:19 +02:00
6 changed files with 127 additions and 26 deletions

View file

@ -8,6 +8,7 @@
![Coverage Status](./docs/coverage-badge.svg) ![Coverage Status](./docs/coverage-badge.svg)
<!--toc:start--> <!--toc:start-->
- [Teilchensammler: Collect parts in a list](#teilchensammler-collect-parts-in-a-list) - [Teilchensammler: Collect parts in a list](#teilchensammler-collect-parts-in-a-list)
- [Badges](#badges) - [Badges](#badges)
- [Development](#development) - [Development](#development)
@ -23,6 +24,7 @@
- [Direnv (automatic venv)](#direnv-automatic-venv) - [Direnv (automatic venv)](#direnv-automatic-venv)
- [Subshells or Shells started from Editors](#subshells-or-shells-started-from-editors) - [Subshells or Shells started from Editors](#subshells-or-shells-started-from-editors)
- [just](#just) - [just](#just)
<!--toc:end--> <!--toc:end-->
## Development ## Development

View file

@ -1 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="114" height="20" role="img" aria-label="coverage: 91.06%"><title>coverage: 91.06%</title><linearGradient id="s" x2="0" y2="100%"><stop offset="0" stop-color="#bbb" stop-opacity=".1"/><stop offset="1" stop-opacity=".1"/></linearGradient><clipPath id="r"><rect width="114" height="20" rx="3" fill="#fff"/></clipPath><g clip-path="url(#r)"><rect width="61" height="20" fill="#555"/><rect x="61" width="53" height="20" fill="#4c1"/><rect width="114" height="20" fill="url(#s)"/></g><g fill="#fff" text-anchor="middle" font-family="Verdana,Geneva,DejaVu Sans,sans-serif" text-rendering="geometricPrecision" font-size="110"><text aria-hidden="true" x="315" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="510">coverage</text><text x="315" y="140" transform="scale(.1)" fill="#fff" textLength="510">coverage</text><text aria-hidden="true" x="865" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="430">91.06%</text><text x="865" y="140" transform="scale(.1)" fill="#fff" textLength="430">91.06%</text></g></svg> <svg xmlns="http://www.w3.org/2000/svg" width="114" height="20" role="img" aria-label="coverage: 91.11%"><title>coverage: 91.11%</title><linearGradient id="s" x2="0" y2="100%"><stop offset="0" stop-color="#bbb" stop-opacity=".1"/><stop offset="1" stop-opacity=".1"/></linearGradient><clipPath id="r"><rect width="114" height="20" rx="3" fill="#fff"/></clipPath><g clip-path="url(#r)"><rect width="61" height="20" fill="#555"/><rect x="61" width="53" height="20" fill="#4c1"/><rect width="114" height="20" fill="url(#s)"/></g><g fill="#fff" text-anchor="middle" font-family="Verdana,Geneva,DejaVu Sans,sans-serif" text-rendering="geometricPrecision" font-size="110"><text aria-hidden="true" x="315" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="510">coverage</text><text x="315" y="140" transform="scale(.1)" fill="#fff" textLength="510">coverage</text><text aria-hidden="true" x="865" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="430">91.11%</text><text x="865" y="140" transform="scale(.1)" fill="#fff" textLength="430">91.11%</text></g></svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Before After
Before After

View file

@ -9,3 +9,4 @@ ruff # linter
uv # resolver for pip-compile-multi uv # resolver for pip-compile-multi
genbadge[tests,coverage] # create badges from coverage reports and pytest genbadge[tests,coverage] # create badges from coverage reports and pytest
pymarkdownlnt # lint markdown files, note: it's "lnt" at the end, not "lint" pymarkdownlnt # lint markdown files, note: it's "lnt" at the end, not "lint"
pytest-randomly # run tests in random order; installed in dev env because in test/ci we want more reproducibility

View file

@ -1,4 +1,4 @@
# SHA1:0fe30e8de6a24fe0b1d50d82a23038919d203909 # SHA1:596eaea6df10023a3db5f9b26c0cf974c97cb86e
# #
# This file was generated by pip-compile-multi. # This file was generated by pip-compile-multi.
# To update, run: # To update, run:
@ -6,51 +6,110 @@
# requirements upgrade # requirements upgrade
# #
-r test.txt -r test.txt
application-properties==0.8.2 application-properties==0.8.3
# via pymarkdownlnt
asttokens==3.0.0 asttokens==3.0.0
# via stack-data
build==1.2.2.post1 build==1.2.2.post1
certifi==2025.4.26 # via pip-tools
certifi==2025.6.15
# via requests
charset-normalizer==3.4.2 charset-normalizer==3.4.2
click==8.1.8 # via requests
click==8.2.1
# via
# genbadge
# pip-compile-multi
# pip-tools
columnar==1.4.1 columnar==1.4.1
# via pymarkdownlnt
decorator==5.2.1 decorator==5.2.1
# via ipython
defusedxml==0.7.1 defusedxml==0.7.1
# via genbadge
django-debug-toolbar==5.2.0 django-debug-toolbar==5.2.0
django-stubs==5.2.0 # via -r requirements/dev.in
django-stubs-ext==5.2.0 django-stubs==5.2.1
# via -r requirements/dev.in
django-stubs-ext==5.2.1
# via django-stubs
executing==2.2.0 executing==2.2.0
# via stack-data
genbadge==1.1.2 genbadge==1.1.2
# via -r requirements/dev.in
idna==3.10 idna==3.10
ipython==9.2.0 # via requests
ipython==9.3.0
# via -r requirements/dev.in
ipython-pygments-lexers==1.1.1 ipython-pygments-lexers==1.1.1
# via ipython
jedi==0.19.2 jedi==0.19.2
# via ipython
markdown-it-py==3.0.0 markdown-it-py==3.0.0
# via rich
matplotlib-inline==0.1.7 matplotlib-inline==0.1.7
# via ipython
mdurl==0.1.2 mdurl==0.1.2
# via markdown-it-py
parso==0.8.4 parso==0.8.4
# via jedi
pexpect==4.9.0 pexpect==4.9.0
# via ipython
pillow==11.2.1 pillow==11.2.1
# via genbadge
pip==25.1.1 pip==25.1.1
pip-compile-multi==3.0.0 # via pip-tools
pip-compile-multi==3.2.1
# via -r requirements/dev.in
pip-tools==7.4.1 pip-tools==7.4.1
# via pip-compile-multi
prompt-toolkit==3.0.51 prompt-toolkit==3.0.51
# via ipython
ptyprocess==0.7.0 ptyprocess==0.7.0
# via pexpect
pure-eval==0.2.3 pure-eval==0.2.3
pygments==2.19.1 # via stack-data
pymarkdownlnt==0.9.29 pymarkdownlnt==0.9.30
# via -r requirements/dev.in
pyproject-hooks==1.2.0 pyproject-hooks==1.2.0
# via
# build
# pip-tools
pytest-randomly==3.16.0
# via -r requirements/dev.in
pyyaml==6.0.2 pyyaml==6.0.2
requests==2.32.3 # via application-properties
requests==2.32.4
# via genbadge
rich==14.0.0 rich==14.0.0
ruff==0.11.8 # via -r requirements/dev.in
setuptools==80.3.1 ruff==0.12.0
# via -r requirements/dev.in
setuptools==80.9.0
# via
# genbadge
# pip-tools
stack-data==0.6.3 stack-data==0.6.3
# via ipython
tomli==2.2.1 tomli==2.2.1
# via application-properties
toolz==1.0.0 toolz==1.0.0
# via columnar
toposort==1.10 toposort==1.10
# via pip-compile-multi
traitlets==5.14.3 traitlets==5.14.3
types-pyyaml==6.0.12.20250402 # via
urllib3==2.4.0 # ipython
uv==0.7.3 # matplotlib-inline
types-pyyaml==6.0.12.20250516
# via django-stubs
urllib3==2.5.0
# via requests
uv==0.7.13
# via -r requirements/dev.in
wcwidth==0.2.13 wcwidth==0.2.13
# via
# columnar
# prompt-toolkit
wheel==0.45.1 wheel==0.45.1
# via pip-tools

View file

@ -6,15 +6,37 @@
# requirements upgrade # requirements upgrade
# #
asgiref==3.8.1 asgiref==3.8.1
django==5.2.1 # via
# django
# django-structlog
django==5.2.3
# via
# -r requirements/prod.in
# django-extensions
# django-structlog
django-environ==0.12.0 django-environ==0.12.0
# via -r requirements/prod.in
django-extensions==4.1 django-extensions==4.1
# via
# -r requirements/prod.in
# django-structlog
django-ipware==7.0.1 django-ipware==7.0.1
# via django-structlog
django-structlog==9.1.1 django-structlog==9.1.1
psycopg==3.2.7 # via -r requirements/prod.in
psycopg-binary==3.2.7 psycopg==3.2.9
# via -r requirements/prod.in
psycopg-binary==3.2.9
# via psycopg
psycopg-pool==3.2.6 psycopg-pool==3.2.6
# via psycopg
python-ipware==3.0.0 python-ipware==3.0.0
# via django-ipware
sqlparse==0.5.3 sqlparse==0.5.3
# via django
structlog==24.4.0 structlog==24.4.0
typing-extensions==4.13.2 # via
# -r requirements/prod.in
# django-structlog
typing-extensions==4.14.0
# via psycopg-pool

View file

@ -7,12 +7,29 @@
# #
-r prod.txt -r prod.txt
attrs==25.3.0 attrs==25.3.0
coverage==7.8.0 # via hypothesis
hypothesis==6.131.15 coverage==7.9.1
# via pytest-cov
hypothesis==6.135.14
# via -r requirements/test.in
iniconfig==2.1.0 iniconfig==2.1.0
# via pytest
packaging==25.0 packaging==25.0
pluggy==1.5.0 # via pytest
pytest==8.3.5 pluggy==1.6.0
pytest-cov==6.1.1 # via
# pytest
# pytest-cov
pygments==2.19.1
# via pytest
pytest==8.4.1
# via
# -r requirements/test.in
# pytest-cov
# pytest-django
pytest-cov==6.2.1
# via -r requirements/test.in
pytest-django==4.11.1 pytest-django==4.11.1
# via -r requirements/test.in
sortedcontainers==2.4.0 sortedcontainers==2.4.0
# via hypothesis