Skip to content

Commit bc2099c

Browse files
committed
Update project packaging and dependencies
1 parent 5afc44e commit bc2099c

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+1861
-347
lines changed

.coveragerc

Lines changed: 0 additions & 6 deletions
This file was deleted.

.editorconfig

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,17 @@
1-
# EditorConfig is awesome: http://EditorConfig.org
1+
# http://editorconfig.org
22

3-
# top-most EditorConfig file
43
root = true
54

6-
# Unix-style newlines with a newline ending every file
75
[*]
8-
end_of_line = lf
6+
indent_style = space
7+
indent_size = 2
8+
trim_trailing_whitespace = true
99
insert_final_newline = true
10+
charset = utf-8
11+
end_of_line = lf
1012

11-
# Matches multiple files with brace expansion notation
12-
# Set default charset
1313
[*.{js,py}]
14-
charset = utf-8
15-
indent_style = space
1614
indent_size = 4
1715

18-
# Matches the exact files either package.json or .travis.yml
19-
[{.travis.yml}]
20-
indent_style = space
21-
indent_size = 2
16+
[Makefile]
17+
indent_style = tab

.github/CODE_OF_CONDUCT.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
This project follows [Django's Code of Conduct](https://www.djangoproject.com/conduct/).

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
blank_issues_enabled: false
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
name: Feature Request
2+
description: Request an enhancement or new feature.
3+
body:
4+
- type: textarea
5+
id: description
6+
attributes:
7+
label: Description
8+
description: Please describe your feature request with appropriate detail.
9+
validations:
10+
required: true

.github/ISSUE_TEMPLATE/issue.yml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: Issue
2+
description: File an issue
3+
body:
4+
- type: input
5+
id: python_version
6+
attributes:
7+
label: Python Version
8+
description: Which version of Python were you using?
9+
placeholder: 3.9.0
10+
validations:
11+
required: false
12+
- type: input
13+
id: django_version
14+
attributes:
15+
label: Django Version
16+
description: Which version of Django were you using?
17+
placeholder: 3.2.0
18+
validations:
19+
required: false
20+
- type: input
21+
id: package_version
22+
attributes:
23+
label: Package Version
24+
description: Which version of this package were you using? If not the latest version, please check this issue has not since been resolved.
25+
placeholder: 1.0.0
26+
validations:
27+
required: false
28+
- type: textarea
29+
id: description
30+
attributes:
31+
label: Description
32+
description: Please describe your issue.
33+
validations:
34+
required: true

.github/SECURITY.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Please report security issues directly over email to info@markusholtermann.eu.

.github/dependabot.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: github-actions
4+
directory: "/"
5+
groups:
6+
"GitHub Actions":
7+
patterns:
8+
- "*"
9+
schedule:
10+
interval: monthly

.github/workflows/main.yml

Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,112 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
tags:
8+
- '**'
9+
pull_request:
10+
11+
concurrency:
12+
group: ${{ github.head_ref || github.run_id }}
13+
cancel-in-progress: true
14+
15+
jobs:
16+
tests:
17+
name: Python ${{ matrix.python-version }}
18+
runs-on: ubuntu-24.04
19+
20+
strategy:
21+
matrix:
22+
python-version:
23+
- '3.8'
24+
- '3.9'
25+
- '3.10'
26+
- '3.11'
27+
- '3.12'
28+
- '3.13'
29+
- '3.14'
30+
31+
steps:
32+
- uses: actions/checkout@v5
33+
34+
- uses: actions/setup-python@v6
35+
with:
36+
python-version: ${{ matrix.python-version }}
37+
allow-prereleases: true
38+
39+
- name: Install uv
40+
uses: astral-sh/setup-uv@v7
41+
with:
42+
enable-cache: true
43+
44+
- name: Run tox targets for ${{ matrix.python-version }}
45+
run: uvx --with tox-uv tox run -f py$(echo ${{ matrix.python-version }} | tr -d .)
46+
47+
- name: Upload coverage data
48+
uses: actions/upload-artifact@v5
49+
with:
50+
name: coverage-data-${{ matrix.python-version }}
51+
path: '${{ github.workspace }}/.coverage.*'
52+
include-hidden-files: true
53+
if-no-files-found: error
54+
55+
coverage:
56+
name: Coverage
57+
runs-on: ubuntu-24.04
58+
needs: tests
59+
steps:
60+
- uses: actions/checkout@v5
61+
62+
- uses: actions/setup-python@v6
63+
with:
64+
python-version: '3.13'
65+
66+
- name: Install uv
67+
uses: astral-sh/setup-uv@v7
68+
69+
- name: Install dependencies
70+
run: uv pip install --system coverage[toml]
71+
72+
- name: Download data
73+
uses: actions/download-artifact@v6
74+
with:
75+
path: ${{ github.workspace }}
76+
pattern: coverage-data-*
77+
merge-multiple: true
78+
79+
- name: Combine coverage and fail if it's <100%
80+
run: |
81+
python -m coverage combine
82+
python -m coverage html --skip-covered --skip-empty
83+
python -m coverage report --fail-under=100
84+
echo "## Coverage summary" >> $GITHUB_STEP_SUMMARY
85+
python -m coverage report --format=markdown >> $GITHUB_STEP_SUMMARY
86+
87+
- name: Upload HTML report
88+
if: ${{ failure() }}
89+
uses: actions/upload-artifact@v5
90+
with:
91+
name: html-report
92+
path: htmlcov
93+
94+
release:
95+
needs: [coverage]
96+
if: success() && startsWith(github.ref, 'refs/tags/')
97+
runs-on: ubuntu-24.04
98+
environment: release
99+
100+
permissions:
101+
contents: read
102+
id-token: write
103+
104+
steps:
105+
- uses: actions/checkout@v5
106+
107+
- uses: astral-sh/setup-uv@v7
108+
109+
- name: Build
110+
run: uv build
111+
112+
- uses: pypa/gh-action-pypi-publish@release/v1

.github/workflows/test-deploy.yml

Lines changed: 0 additions & 105 deletions
This file was deleted.

0 commit comments

Comments
 (0)