diff --git a/.github/workflows/python-package.yaml b/.github/workflows/python-package.yaml index aa0eb5c..931e514 100644 --- a/.github/workflows/python-package.yaml +++ b/.github/workflows/python-package.yaml @@ -1,12 +1,9 @@ -name: CI/CD Pipeline - on: - push - pull_request jobs: test: - name: Test Python ${{ matrix.python-version }} on ${{ matrix.os }} runs-on: ${{ matrix.os }} strategy: diff --git a/.readthedocs.yaml b/.readthedocs.yaml index 150d739..6448c43 100644 --- a/.readthedocs.yaml +++ b/.readthedocs.yaml @@ -3,13 +3,13 @@ version: 2 build: os: ubuntu-22.04 tools: - python: "3.11" + python: "3.12" mkdocs: configuration: mkdocs.yml python: install: - - requirements: requirements.txt - - requirements: requirements-dev.txt - - path: . + - path: . + extra_requirements: + - dev diff --git a/CHANGELOG.md b/CHANGELOG.md index 0bd0a3e..dc714b4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,16 @@ # Changelog -## [unreleased] +## [unreleased] -- +* Removed requirements.txt and requirements-dev.txt + +## [2.3.3] -- 2025-04-27 + +* Fixed Atom feed encoding to 'utf-8' * Added Python 3.13 to github actions +* `requirements*.txt` files are handled by pip-tools. Updates are handled by + make update-requirements based on the dependencies described in the + pyproject.toml ## [2.3.2] -- 2024-10-13 diff --git a/Makefile b/Makefile index cbaadaa..116c0dc 100644 --- a/Makefile +++ b/Makefile @@ -16,11 +16,9 @@ endif .PHONY: all all: lint mypy test test-release -$(VENV): requirements.txt requirements-dev.txt pyproject.toml +$(VENV): pyproject.toml $(PY) -m venv $(VENV) - $(BIN)/pip install --upgrade -r requirements.txt - $(BIN)/pip install --upgrade -r requirements-dev.txt - $(BIN)/pip install -e .['dev'] + $(BIN)/pip install --upgrade -e .['dev'] touch $(VENV) .PHONY: test diff --git a/blag/blag.py b/blag/blag.py index ed6db15..99b70e2 100644 --- a/blag/blag.py +++ b/blag/blag.py @@ -396,7 +396,7 @@ def generate_feed( ) with open(f"{output_dir}/atom.xml", "w") as fh: - feed.write(fh, encoding="utf8") + feed.write(fh, encoding='utf-8') def generate_index( diff --git a/blag/version.py b/blag/version.py index deff8d1..2cf16d9 100644 --- a/blag/version.py +++ b/blag/version.py @@ -1,3 +1,3 @@ """Version information for the blag package.""" -__VERSION__ = "2.3.2" +__VERSION__ = "2.3.3" diff --git a/debian/changelog b/debian/changelog index 453e93e..98e3816 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,13 @@ +blag (2.3.3) unstable; urgency=medium + + * Fixed Atom feed encoding to 'utf-8' + * Added Python 3.13 to github actions + * `requirements*.txt` files are handled by pip-tools. Updates are handled by + make update-requirements based on the dependencies described in the + pyproject.toml + + -- Bastian Venthur Sun, 27 Apr 2025 11:42:13 +0200 + blag (2.3.2) unstable; urgency=medium * Ignore FileNotFoundError when trying to get the last modified time of diff --git a/pyproject.toml b/pyproject.toml index c51e644..0a2aa14 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -10,13 +10,13 @@ authors = [ description = "blog-aware, static site generator" keywords = ["markdown", "blag", "blog", "static site generator", "cli"] readme = "README.md" -license = { file="LICENSE" } +license-files = ["LICENSE"] requires-python = ">=3.10" dynamic = ["version"] dependencies = [ - "markdown", "feedgenerator", "jinja2", + "markdown", "pygments", ] @@ -34,13 +34,13 @@ dev = [ "mkdocs", "mkdocs-material", "mkdocstrings[python]", - "twine", - "wheel", + "mypy", "pytest", "pytest-cov", "ruff", - "mypy", + "twine", "types-markdown", + "wheel", ] [tool.setuptools.dynamic] diff --git a/requirements-dev.txt b/requirements-dev.txt deleted file mode 100644 index 3bf2a90..0000000 --- a/requirements-dev.txt +++ /dev/null @@ -1,11 +0,0 @@ -build==1.2.2.post1 -mkdocs==1.6.1 -mkdocs-material==9.5.49 -mkdocstrings[python]==0.27.0 -twine==6.0.1 -wheel==0.45.1 -pytest==8.3.4 -pytest-cov==6.0.0 -ruff==0.8.4 -mypy==1.14.0 -types-markdown==3.7.0.20241204 diff --git a/requirements.txt b/requirements.txt deleted file mode 100644 index 9a67d85..0000000 --- a/requirements.txt +++ /dev/null @@ -1,4 +0,0 @@ -markdown==3.7 -feedgenerator==2.1.0 -jinja2==3.1.5 -pygments==2.18.0 diff --git a/tests/test_blag.py b/tests/test_blag.py index c7d1ca8..9311b39 100644 --- a/tests/test_blag.py +++ b/tests/test_blag.py @@ -99,6 +99,15 @@ def test_generate_feed_with_description(cleandir: str) -> None: assert 'content' in feed +def test_feed_is_unicode(cleandir: str) -> None: + """Test generate_feed.""" + articles: list[tuple[str, dict[str, Any]]] = [] + blag.generate_feed(articles, "build", " ", " ", " ", " ") + with open("build/atom.xml") as fh: + feed = fh.read() + assert 'encoding="utf-8"' in feed + + def test_parse_args_build() -> None: """Test parse_args with build.""" # test default args