Skip to content

Commit 5461a9d

Browse files
authored
Merge branch 'main' into more-en-version-texts
2 parents aff9379 + c1958b4 commit 5461a9d

22 files changed

Lines changed: 3790 additions & 73 deletions

.github/dependabot.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,11 @@ updates:
55
directory: "/"
66
schedule:
77
interval: "daily"
8+
groups:
9+
production-dependencies:
10+
dependency-type: "production"
11+
development-dependencies:
12+
dependency-type: "development"
813

914
# Maintain dependencies for GitHub Actions
1015
- package-ecosystem: "github-actions"

.github/workflows/codeql-analysis.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727

2828
steps:
2929
- name: Checkout repository
30-
uses: actions/checkout@v4
30+
uses: actions/checkout@v5
3131
with:
3232
# We must fetch at least the immediate parents so that if this is
3333
# a pull request then we can checkout the head.
@@ -40,7 +40,7 @@ jobs:
4040

4141
# Initializes the CodeQL tools for scanning.
4242
- name: Initialize CodeQL
43-
uses: github/codeql-action/init@v3
43+
uses: github/codeql-action/init@v4
4444
with:
4545
languages: ${{ matrix.language }}
4646
# If you wish to specify custom queries, you can do so here or in a config file.
@@ -51,7 +51,7 @@ jobs:
5151
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
5252
# If this step fails, then you should remove it and run the build manually (see below)
5353
- name: Autobuild
54-
uses: github/codeql-action/autobuild@v3
54+
uses: github/codeql-action/autobuild@v4
5555

5656
# ℹ️ Command-line programs to run using the OS shell.
5757
# 📚 https://git.io/JvXDl
@@ -65,4 +65,4 @@ jobs:
6565
# make release
6666

6767
- name: Perform CodeQL Analysis
68-
uses: github/codeql-action/analyze@v3
68+
uses: github/codeql-action/analyze@v4

.github/workflows/python-package.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@ jobs:
1414
matrix:
1515
python-version: ["3.11"]
1616
steps:
17-
- uses: actions/checkout@v4
17+
- uses: actions/checkout@v5
1818
- name: Set up Python ${{ matrix.python-version }}
19-
uses: actions/setup-python@v5
19+
uses: actions/setup-python@v6
2020
with:
2121
python-version: ${{ matrix.python-version }}
2222
- name: Install dependencies

.github/workflows/release.yml

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
name: release
2+
3+
on:
4+
release:
5+
types: [published]
6+
7+
permissions:
8+
contents: read
9+
id-token: write
10+
11+
jobs:
12+
build-and-publish:
13+
runs-on: ubuntu-latest
14+
environment: pypi
15+
steps:
16+
- name: Checkout
17+
uses: actions/checkout@v5
18+
with:
19+
fetch-depth: 0
20+
21+
- name: Install uv
22+
uses: astral-sh/setup-uv@v7
23+
24+
- name: Ensure Python (uses your .python-version / requires-python)
25+
run: uv python install
26+
27+
- name: Verify version matches release tag
28+
shell: bash
29+
run: |
30+
TAG="${GITHUB_EVENT_NAME:-release}"
31+
# On release event, the tag name is here:
32+
TAG_NAME="${{ github.event.release.tag_name }}"
33+
VERSION="$(uv version --short)"
34+
echo "tag=${TAG_NAME} pyproject=${VERSION}"
35+
# Accept tags like v1.2.3 -> 1.2.3
36+
TAG_STRIPPED="${TAG_NAME#v}"
37+
if [ "${VERSION}" != "${TAG_STRIPPED}" ]; then
38+
echo "::error::Version mismatch detected!"
39+
echo "Release tag: ${TAG_NAME}"
40+
echo "pyproject.toml version: ${VERSION}"
41+
echo ""
42+
echo "To fix:"
43+
echo " - Ensure the release tag matches the version in pyproject.toml (e.g., tag 'v${VERSION}')"
44+
echo " - If the tag is incorrect, delete and recreate the release with the correct tag."
45+
exit 1
46+
fi
47+
48+
- name: Build distributions
49+
run: uv build --no-sources
50+
51+
- name: Publish to PyPI
52+
run: uv publish

.github/workflows/tests.yml

Lines changed: 7 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -8,24 +8,15 @@ on:
88

99
jobs:
1010
tests:
11-
runs-on: ${{ matrix.os }}
12-
strategy:
13-
matrix:
14-
os:
15-
[
16-
# ubuntu-20.04,
17-
ubuntu-22.04,
18-
# windows-2019,
19-
# windows-2022,
20-
# macos-11,
21-
# macos-12,
22-
# macos-13,
23-
]
11+
runs-on: ubuntu-latest
2412
steps:
25-
- uses: actions/checkout@v4
26-
- uses: wntrblm/nox@2025.02.09
13+
- uses: actions/checkout@v5
14+
- name: Install uv
15+
uses: astral-sh/setup-uv@v7
16+
- name: Setup NOX
17+
uses: wntrblm/nox@2025.10.16
2718
with:
28-
python-versions: "3.8, 3.9, 3.10, 3.11, 3.12"
19+
python-versions: "3.10, 3.11, 3.12, 3.13, 3.14"
2920
- name: Test with NOX
3021
run: |
3122
nox --session tests

.pre-commit-config.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ ci:
33

44
repos:
55
- repo: https://github.com/pre-commit/pre-commit-hooks
6-
rev: v5.0.0
6+
rev: v6.0.0
77
hooks:
88
- id: check-ast
99
- id: check-builtin-literals
@@ -28,19 +28,19 @@ repos:
2828
- id: sort-simple-yaml
2929
- id: trailing-whitespace
3030
- repo: https://github.com/astral-sh/ruff-pre-commit
31-
rev: v0.11.2
31+
rev: v0.14.4
3232
hooks:
3333
- id: ruff
3434
args: [--fix, --exit-non-zero-on-fix]
3535
- id: ruff-format
3636
- repo: https://github.com/pre-commit/mirrors-mypy
37-
rev: v1.15.0
37+
rev: v1.18.2
3838
hooks:
3939
- id: mypy
4040
args: ["--config-file", "pyproject.toml", "--ignore-missing-imports"]
4141
#args: [--strict, --ignore-missing-imports]
4242
- repo: https://github.com/sourcery-ai/sourcery
43-
rev: v1.35.0
43+
rev: v1.40.1b10
4444
hooks:
4545
- id: sourcery
4646
# The best way to use Sourcery in a pre-commit hook:

.sourcery.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@ ignore:
1212
- docs/build
1313

1414
rule_settings:
15-
python_version: '3.8'
15+
python_version: '3.10'

CHANGELOG.md

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,23 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
4444
- The parser has also been updated to set those values to None unless they are explicitly set in the reference string. As we added more version/translation Bible texts, we realized the differences in chapter and verse numbers between versions/translations was much greater than initially assumed. This change allows for more flexibility in handling those differences.
4545
- The formatter has also been updated to get the appropriate start chapter, start verse, end chapter, and end verse at format time rather than parse time.
4646

47+
## [0.14.0] - 2024-06-10
48+
49+
### Added
50+
51+
- Added Python 3.14 to the list of supported Python versions.
52+
53+
### Changed
54+
55+
- Modified the header image url to be an absolute url so that it hopefully shows up in PyPI correctly.
56+
- Switched package build and publish tool from flit to uv.
57+
- Updated GitHub Actions workflow to use uv for building and publishing to PyPI.
58+
59+
### Removed
60+
61+
- Removed Python 3.8 from the list of supported Python versions.
62+
- Removed Python 3.9 from the list of supported Python versions.
63+
4764
## [0.13.1] - 2024-05-21
4865

4966
### Changed
@@ -174,7 +191,8 @@ The goal of this release was to address [Issue #90], and to make things related
174191

175192
## [0.0.1] - 2020-10-08
176193

177-
[unreleased]: https://github.com/avendesora/pythonbible/compare/v0.13.1...HEAD
194+
[unreleased]: https://github.com/avendesora/pythonbible/compare/v0.14.0...HEAD
195+
[0.14.0]: https://github.com/avendesora/pythonbible/compare/v0.13.1...v0.14.0
178196
[0.13.1]: https://github.com/avendesora/pythonbible/compare/v0.13.0...v0.13.1
179197
[0.13.0]: https://github.com/avendesora/pythonbible/compare/v0.12.0...v0.13.0
180198
[0.12.0]: https://github.com/avendesora/pythonbible/compare/v0.11.1...v0.12.0

README.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ The pythonbible library serves several purposes related to the Christian Bible a
66
<tr>
77
<td>Latest Version</td>
88
<td>
9-
<a href="https://pypi.org/project/pythonbible/"><img src="https://img.shields.io/pypi/v/pythonbible?color=gold&logo=pypi&logoColor=lightgray"></a>
9+
<a href="https://pypi.org/project/pythonbible/"><img src="https://img.shields.io/pypi/v/pythonbible?color=gold&logo=pypi&logoColor=lightgray"></a><br />
1010
<img src="https://img.shields.io/pypi/dm/pythonbible?color=gold">
1111
</td>
1212
</tr>
@@ -15,25 +15,25 @@ The pythonbible library serves several purposes related to the Christian Bible a
1515
<td><a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/license-MIT-orange.svg"></a></td>
1616
</tr>
1717
<tr>
18-
<td>Tests</td>
18+
<td>Workflows</td>
1919
<td>
20-
<img src="https://github.com/avendesora/pythonbible/actions/workflows/tests.yml/badge.svg">
2120
<img src="https://github.com/avendesora/pythonbible/actions/workflows/python-package.yml/badge.svg"><br/>
22-
<a href="https://www.codacy.com/gh/avendesora/pythonbible/dashboard?utm_source=github.com&utm_medium=referral&utm_content=avendesora/pythonbible&utm_campaign=Badge_Coverage"><img src="https://app.codacy.com/project/badge/Coverage/dc1333c64b434f7bb813d08750462921"></a>
21+
<img src="https://github.com/avendesora/pythonbible/workflows/CodeQL/badge.svg"><br />
22+
<img src="https://github.com/avendesora/pythonbible/actions/workflows/tests.yml/badge.svg">
2323
</td>
2424
</tr>
2525
<tr>
2626
<td>Code Quality</td>
2727
<td>
28-
<img src="https://github.com/avendesora/pythonbible/workflows/CodeQL/badge.svg">
2928
<a href="https://www.codacy.com/gh/avendesora/pythonbible/dashboard?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=avendesora/pythonbible&amp;utm_campaign=Badge_Grade"><img src="https://app.codacy.com/project/badge/Grade/dc1333c64b434f7bb813d08750462921"></a><br/>
30-
<a href="https://results.pre-commit.ci/latest/github/avendesora/pythonbible/main"><img src="https://results.pre-commit.ci/badge/github/avendesora/pythonbible/main.svg"></a>
31-
<a href="https://github.com/psf/black"><img src="https://img.shields.io/badge/code%20style-black-000000.svg"></a>
29+
<a href="https://app.codacy.com/gh/avendesora/pythonbible/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_coverage"><img src="https://app.codacy.com/project/badge/Coverage/dc1333c64b434f7bb813d08750462921"></a><br />
30+
<a href="https://results.pre-commit.ci/latest/github/avendesora/pythonbible/main"><img src="https://results.pre-commit.ci/badge/github/avendesora/pythonbible/main.svg"></a><br />
31+
<a href="https://sourcery.ai"><img src="https://img.shields.io/badge/Sourcery-enabled-brightgreen"></a>
3232
</td>
3333
</tr>
3434
<tr>
3535
<td>Supported Python Versions</td>
36-
<td><a href="https://www.python.org/downloads/"><img src="https://img.shields.io/badge/python-3.8%20%7C%203.9%20%7C%203.10%20%7C%203.11%20%7C%203.12-blue?logo=python&logoColor=lightgray"></a></td>
36+
<td><a href="https://www.python.org/downloads/"><img src="https://img.shields.io/badge/python-3.10%20%7C%203.11%20%7C%203.12%20%7C%203.13%20%7C%203.14-blue?logo=python&logoColor=lightgray"></a></td>
3737
</tr>
3838
</table>
3939

docs/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
# You can set these variables from the command line, and also
55
# from the environment for the first two.
66
SPHINXOPTS ?=
7-
SPHINXBUILD ?= sphinx-build
7+
SPHINXBUILD ?= uv run --project=.. --group docs --locked sphinx-build
88
SOURCEDIR = source
99
BUILDDIR = build
1010

0 commit comments

Comments
 (0)