Skip to content
This repository was archived by the owner on Mar 5, 2026. It is now read-only.

Commit 6e7648d

Browse files
Add Py3.14, Drop Py3.9 (#53)
- Adds support for Python 3.14 - Drops support for Python 3.9 - Update field mapping
1 parent 69e233d commit 6e7648d

24 files changed

Lines changed: 583 additions & 335 deletions

.editorconfig

Lines changed: 0 additions & 33 deletions
This file was deleted.
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
---
2+
name: Bug report
3+
about: Create a report to help us improve
4+
title: ''
5+
labels: bug
6+
assignees: Buried-In-Code
7+
8+
---
9+
10+
**Describe the bug**
11+
A clear and concise description of what the bug is.
12+
13+
**To Reproduce**
14+
Steps to reproduce the behavior:
15+
1. Go to '...'
16+
2. Click on '....'
17+
3. Scroll down to '....'
18+
4. See error
19+
20+
**Expected behavior**
21+
A clear and concise description of what you expected to happen.
22+
23+
**Desktop (please complete the following information):**
24+
- OS: [e.g. iOS]
25+
26+
**Additional context**
27+
Add any other context about the problem here.
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for this project
4+
title: ''
5+
labels: enhancement
6+
assignees: Buried-In-Code
7+
8+
---
9+
10+
**Is your feature request related to a problem? Please describe.**
11+
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12+
13+
**Describe the solution you'd like**
14+
A clear and concise description of what you want to happen.
15+
16+
**Describe alternatives you've considered**
17+
A clear and concise description of any alternative solutions or features you've considered.
18+
19+
**Additional context**
20+
Add any other context or screenshots about the feature request here.

.github/dependabot.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ updates:
99
patterns:
1010
- "*"
1111

12-
- package-ecosystem: pip
12+
- package-ecosystem: uv
1313
directory: /
1414
schedule:
1515
interval: daily

.github/workflows/publishing.yaml

Lines changed: 30 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,33 +5,52 @@ on: push
55
jobs:
66
build:
77
name: Build
8+
permissions:
9+
contents: read
810
runs-on: ubuntu-latest
911

1012
steps:
1113
- uses: actions/checkout@v5
12-
- uses: actions/setup-python@v6
13-
with:
14-
python-version: '3.13'
15-
- name: Install pypa/build
16-
run: pip install build
17-
- name: Build a binary wheel and a source tarball
18-
run: python -m build
14+
- uses: astral-sh/setup-uv@v7
15+
- name: Setup Python
16+
run: uv python install 3.14
17+
- name: Build wheel and source tarball
18+
run: uv build
1919
- uses: actions/upload-artifact@v4
2020
with:
2121
name: python-package-distributions
2222
path: dist/
2323

24-
publish-to-pypi:
25-
name: Publish to PyPI
26-
if: startsWith(github.ref, 'refs/tags/')
24+
validate:
25+
name: Validate dist
2726
needs:
2827
- build
28+
permissions: {}
2929
runs-on: ubuntu-latest
30+
31+
steps:
32+
- uses: actions/download-artifact@v5
33+
with:
34+
name: python-package-distributions
35+
path: dist/
36+
- uses: astral-sh/setup-uv@v7
37+
- name: Setup Python
38+
run: uv python install 3.14
39+
- name: Validate dist
40+
run: uv run --with twine twine check dist/*
41+
42+
publish:
3043
environment:
3144
name: pypi
32-
url: https://pypi.org/p/himon
45+
url: https://pypi.org/p/Himon
46+
if: startsWith(github.ref, 'refs/tags/')
47+
name: Publish to PyPI
48+
needs:
49+
- build
50+
- validate
3351
permissions:
3452
id-token: write
53+
runs-on: ubuntu-latest
3554

3655
steps:
3756
- uses: actions/download-artifact@v5

.github/workflows/testing.yaml

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,19 +22,23 @@ jobs:
2222
fail-fast: false
2323
matrix:
2424
python-version:
25-
- '3.9'
2625
- '3.10'
2726
- '3.11'
2827
- '3.12'
2928
- '3.13'
29+
- '3.14'
3030
os:
3131
- ubuntu-latest
3232
- macos-latest
3333
- windows-latest
34+
35+
permissions:
36+
contents: read
3437
runs-on: ${{ matrix.os }}
38+
3539
steps:
3640
- uses: actions/checkout@v5
37-
- uses: astral-sh/setup-uv@v6
41+
- uses: astral-sh/setup-uv@v7
3842
- name: Setup Python
3943
run: uv python install ${{ matrix.python-version }}
4044
- name: Install project
@@ -45,10 +49,15 @@ jobs:
4549
LEAGUE_OF_COMIC_GEEKS__CLIENT_SECRET: IGNORED
4650
LEAGUE_OF_COMIC_GEEKS__ACCESS_TOKEN: IGNORED
4751
run: uv run pytest
52+
4853
collector:
49-
needs: [ pytest ]
5054
if: always()
55+
needs:
56+
- pytest
57+
58+
permissions: {}
5159
runs-on: ubuntu-latest
60+
5261
steps:
5362
- name: Check for failures
5463
if: contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled')

.pre-commit-config.yaml

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
repos:
22
- repo: https://github.com/astral-sh/ruff-pre-commit
3-
rev: v0.9.2
3+
rev: v0.14.0
44
hooks:
55
- id: ruff-format
6-
- id: ruff
6+
- id: ruff-check
77
- repo: https://github.com/executablebooks/mdformat
8-
rev: 0.7.21
8+
rev: 0.7.22
99
hooks:
1010
- id: mdformat
1111
additional_dependencies:
@@ -14,20 +14,29 @@ repos:
1414
args:
1515
- --number
1616
- --wrap=keep
17+
exclude: ".github\/ISSUE_TEMPLATE\/.*.md"
1718
- repo: https://github.com/pre-commit/pre-commit-hooks
18-
rev: v5.0.0
19+
rev: v6.0.0
1920
hooks:
21+
- id: check-added-large-files
2022
- id: check-ast
2123
- id: check-builtin-literals
2224
- id: check-case-conflict
2325
- id: check-docstring-first
26+
# - id: check-executables-have-shebangs
27+
- id: check-illegal-windows-names
28+
# - id: check-json
2429
- id: check-merge-conflict
2530
args:
2631
- --assume-in-merge
32+
- id: check-shebang-scripts-are-executable
2733
- id: check-toml
34+
- id: check-vcs-permalinks
35+
# - id: check-xml
2836
- id: check-yaml
2937
args:
3038
- --allow-multiple-documents
39+
- id: debug-statements
3140
- id: end-of-file-fixer
3241
exclude_types:
3342
- json
@@ -37,14 +46,18 @@ repos:
3746
- id: mixed-line-ending
3847
args:
3948
- --fix=auto
40-
# - id: name-tests-test
49+
- id: name-tests-test
50+
# - id: pretty-format-json
51+
# args:
52+
# - --autofix
53+
# - --indent=2
4154
- id: trailing-whitespace
4255
args:
4356
- --markdown-linebreak-ext=md
4457
exclude_types:
4558
- svg
4659
- repo: https://github.com/pappasam/toml-sort
47-
rev: v0.24.2
60+
rev: v0.24.3
4861
hooks:
4962
- id: toml-sort
5063
args:

.readthedocs.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ version: 2
66

77
# Set the version of Python and other tools you might need
88
build:
9-
os: ubuntu-22.04
9+
os: ubuntu-24.04
1010
tools:
1111
python: "3.13"
1212
jobs:

docs/himon/schemas/comic.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
# Comic
22

33
::: himon.schemas.comic.Character
4+
::: himon.schemas.comic.CharacterType
45
::: himon.schemas.comic.Comic
5-
::: himon.schemas.comic.CommunityReview
66
::: himon.schemas.comic.Creator
7-
::: himon.schemas.comic.FeedData
87
::: himon.schemas.comic.KeyEvent
8+
::: himon.schemas.comic.KeyEventType
99
::: himon.schemas.comic.Variant

docs/himon/schemas/generic.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
# Generic
22

3+
::: himon.schemas.generic.ComicFormat
4+
::: himon.schemas.generic.CoverType
35
::: himon.schemas.generic.GenericComic
46
::: himon.schemas.generic.GenericCover

0 commit comments

Comments
 (0)