Skip to content

Commit

Permalink
Merge pull request #129 from bird-house/updates-2025
Browse files Browse the repository at this point in the history
Updates 2025
  • Loading branch information
Zeitsperre authored Feb 4, 2025
2 parents 22a83cb + 3f04c0b commit 66499f4
Show file tree
Hide file tree
Showing 37 changed files with 1,284 additions and 196 deletions.
9 changes: 6 additions & 3 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
directory: "/.github/workflows"
schedule:
interval: "monthly"
groups:
Expand All @@ -15,10 +15,13 @@ updates:
- "*"

- package-ecosystem: "pip"
directory: "/CI"
directory: "/"
schedule:
interval: "monthly"
groups:
ci:
patterns:
- "CI/*"
python:
patterns:
- "*"
- "pyproject.toml"
18 changes: 9 additions & 9 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,26 +17,26 @@ jobs:
strategy:
matrix:
include:
- tox-env: py39
python-version: "3.9"
- tox-env: py310
python-version: "3.10"
- tox-env: py311
python-version: "3.11"
- tox-env: py312
python-version: "3.12"
- tox-env: pypy39
python-version: "pypy-3.9"
- tox-env: py313
python-version: "3.13"
- tox-env: pypy310
python-version: "pypy-3.10"
steps:
- name: Checkout repository and submodules
- name: Harden Runner
uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4
with:
disable-sudo: true
egress-policy: audit
- name: Checkout Repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
submodules: recursive
- name: Install packages
run: |
sudo apt-get -y install pandoc
persist-credentials: false
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4.0
with:
Expand Down
7 changes: 5 additions & 2 deletions .readthedocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,12 @@ version: 2

# Set the version of Python and other tools you might need
build:
os: ubuntu-22.04
os: "ubuntu-24.04"
tools:
python: mambaforge-22.9
python: "mambaforge-23.11"

# Optionally build your docs in additional formats such as PDF and ePub
formats: [ ]

# Build documentation in the docs/ directory with Sphinx
sphinx:
Expand Down
14 changes: 14 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,20 @@
CHANGES
********

1.1.0 (2025-02-04)
==================

Changes:

* Fixed a bug the Dockerfile configuration. (hotfix)
* Added several workflows to help with testing, docker images, and version bumping. (#129).
* Reorganized README files to organize badges better. (#129).
* Added several pre-commit hooks to help with code organization, docstrings, finding dead code blocks, etc. (#129).
* Dropped support for Python3.9, extended support for Python3.13. (#129).
* Now using a CI folder for managing CI-specific Python dependencies.(#129).
* Updated several development dependencies. (#129).
* Now using a Dependabot configuration for managing Python and GitHub Actions updates. (#129).

1.0.0 (2024-10-03)
==================

Expand Down
4 changes: 2 additions & 2 deletions CI/requirements_ci.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# This file is autogenerated by pip-compile with Python 3.8
# This file is autogenerated by pip-compile with Python 3.10
# by the following command:
#
# pip-compile --generate-hashes --output-file=CI/requirements_ci.txt CI/requirements_ci.in
Expand Down Expand Up @@ -85,7 +85,7 @@ tomli==2.2.1 \
tox==4.24.1 \
--hash=sha256:083a720adbc6166fff0b7d1df9d154f9d00bfccb9403b8abf6bc0ee435d6a62e \
--hash=sha256:57ba7df7d199002c6df8c2db9e6484f3de6ca8f42013c083ea2d4d1e5c6bdc75
# via -r requirements_ci.in
# via -r CI/requirements_ci.in
typing-extensions==4.12.2 \
--hash=sha256:04e5ca0351e0f3f85c6853954072df659d0d13fac324d0072316b67d7794700d \
--hash=sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8
Expand Down
53 changes: 26 additions & 27 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,25 +2,7 @@
Cookiecutter for Birdhouse
==========================

.. image:: https://img.shields.io/badge/docs-latest-brightgreen.svg
:target: http://cookiecutter-birdhouse.readthedocs.org/en/latest/?badge=latest
:alt: Documentation Status

.. image:: https://github.com/bird-house/cookiecutter-birdhouse/actions/workflows/main.yml/badge.svg
:target: https://github.com/bird-house/cookiecutter-birdhouse/actions/workflows/main.yml
:alt: GitHub Workflows

.. image:: https://readthedocs.org/projects/cookiecutter-pypackage/badge/?version=latest
:target: https://cookiecutter-pypackage.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status

.. image:: https://img.shields.io/github/license/bird-house/cookiecutter-birdhouse.svg
:target: https://github.com/bird-house/cookiecutter-birdhouse/blob/master/LICENSE
:alt: GitHub license

.. image:: https://badges.gitter.im/bird-house/birdhouse.svg
:target: https://gitter.im/bird-house/birdhouse?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
:alt: Join the chat at https://gitter.im/bird-house/birdhouse
|build| |docs| |license| |gitter|

Cookiecutter_ template for a Python package.

Expand Down Expand Up @@ -197,16 +179,33 @@ Make a new version of this Cookiecutter in the following steps:

See the bump-my-version_ documentation for details.

.. _0.2.x: https://github.com/bird-house/cookiecutter-birdhouse/tree/0.2.x
.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _Cruft: https://cruft.github.io/cruft/
.. _`cookiecutter-pypackage tutorial`: https://cookiecutter-pypackage.readthedocs.io/en/latest/tutorial.html
.. _cruft_skip: https://github.com/bird-house/emu/commit/fb1ff9ffdf9e7f0282b36ff0727996cba3bf081a
.. _cruft_link: https://github.com/bird-house/finch/pull/128/commits/0b0d7f37966cbb5bf345dfd4b4ac7953f38f4867
.. _GitHub_Workflows: https://docs.github.com/en/actions/using-workflows
.. _Tox: http://testrun.org/tox/
.. _Sphinx: http://sphinx-doc.org/
.. _Mkdocs: https://pypi.org/project/mkdocs/
.. _PyPI: https://pypi.python.org/pypi
.. _ReadTheDocs: https://readthedocs.io/
.. _Sphinx: http://sphinx-doc.org/
.. _Tox: http://testrun.org/tox/
.. _`cookiecutter-pypackage tutorial`: https://cookiecutter-pypackage.readthedocs.io/en/latest/tutorial.html
.. _bump-my-version: https://github.com/callowayproject/bump-my-version
.. _0.2.x: https://github.com/bird-house/cookiecutter-birdhouse/tree/0.2.x
.. _PyPI: https://pypi.python.org/pypi
.. _Mkdocs: https://pypi.org/project/mkdocs/
.. _cruft_link: https://github.com/bird-house/finch/pull/128/commits/0b0d7f37966cbb5bf345dfd4b4ac7953f38f4867
.. _cruft_skip: https://github.com/bird-house/emu/commit/fb1ff9ffdf9e7f0282b36ff0727996cba3bf081a


.. |docs| image:: https://img.shields.io/badge/docs-latest-brightgreen.svg
:target: http://cookiecutter-birdhouse.readthedocs.org/en/latest/?badge=latest
:alt: Documentation Status

.. |build| image:: https://github.com/bird-house/cookiecutter-birdhouse/actions/workflows/main.yml/badge.svg
:target: https://github.com/bird-house/cookiecutter-birdhouse/actions/workflows/main.yml
:alt: GitHub Workflows

.. |license| image:: https://img.shields.io/github/license/bird-house/cookiecutter-birdhouse.svg
:target: https://github.com/bird-house/cookiecutter-birdhouse/blob/master/LICENSE
:alt: License

.. |gitter| image:: https://badges.gitter.im/bird-house/birdhouse.svg
:target: https://gitter.im/bird-house/birdhouse?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
:alt: Bird-house Gitter chat
1 change: 1 addition & 0 deletions docs/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ Getting Started
readme
tutorial
pypi_release_checklist
troubleshooting

Basics
------
Expand Down
44 changes: 44 additions & 0 deletions docs/source/troubleshooting.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
.. _troubleshooting:

===============
Troubleshooting
===============

I created a cookiecutter, but it doesn't work, and I can't figure out why
-------------------------------------------------------------------------

* Try upgrading to Cookiecutter 0.8.0, which prints better error
messages and has fixes for several common bugs.

I'm having trouble generating Jinja templates from Jinja templates
------------------------------------------------------------------

Make sure you escape things properly, like this::

{{ "{{" }}

Or this::

{% raw %}
<p>Go <a href="{{ url_for('home') }}">Home</a></p>
{% endraw %}

Or this::

{{ {{ url_for('home') }} }}

See https://jinja.palletsprojects.com/en/latest/templates/#escaping for more info.

You can also use the `_copy_without_render`_ key in your `cookiecutter.json`
file to escape entire files and directories.

.. _`_copy_without_render`: http://cookiecutter.readthedocs.io/en/latest/advanced/copy_without_render.html


Other common issues
-------------------

TODO: add a bunch of common new user issues here.

This document is incomplete. If you have knowledge that could help other users,
adding a section or filing an issue with details would be greatly appreciated.
16 changes: 9 additions & 7 deletions environment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,21 @@ name: cookiecutter-birdhouse
channels:
- conda-forge
dependencies:
- python>=3.9,<3.13
- alabaster >=0.7.16
- bump-my-version >=0.26.0
- python>=3.10,<3.14
- alabaster >=1.0.0
- python-build >=1.2.2
- bump-my-version >=0.30.1
- cookiecutter >=2.6.0
- cruft >=2.15.0
- cryptography
- pip >=24.2.0
- pip >=25.0
- pre-commit >=4.0.0
- psutil >=6.0.0
- pytest >=8.0.0
- pytest-cookies >=0.7.0
- pywps >=4.6
- pyyaml >=6.0.2
- ruff >=0.5.7
- sphinx >=7.0.0
- tox >=4.18.0
- ruff >=0.9.0
- sphinx >=7.1.0
- tox >=4.24.1
- watchdog >=4.0.0
34 changes: 19 additions & 15 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ maintainers = [
]
license = {file = "LICENSE"}
keywords = ["cookiecutter", "template", "package", "wps", "pywps", "birdhouse"]
requires-python = ">=3.9"
requires-python = ">=3.10"
classifiers = [
"Development Status :: 4 - Beta",
"Environment :: Console",
Expand All @@ -26,31 +26,35 @@ classifiers = [
"License :: OSI Approved :: BSD License",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python :: Implementation :: PyPy",
"Topic :: Software Development"
]
dependencies = [
"cookiecutter >=2.6.0",
]

[project.optional-dependencies]
dev = [
"alabaster>=0.7.16",
"build>=1.2.1",
"cookiecutter>=2.6.0",
"coverage>=7.5.1",
"flit>=3.9.0,<4.0",
"pre-commit>=3.8.0",
"pytest>=8.2.0",
"pytest-cookies>=0.7.0",
"alabaster >=1.0",
"build >=1.2.2",
"bump-my-version >=0.30.1",
"coverage >=7.5.1",
"cruft >=2.15.0",
"flit >=3.9.0,<4.0",
"pre-commit >=4.0.0",
"pytest >=8.2.0",
"pytest-cookies >=0.7.0",
"pyyaml >=6.0.0",
"ruff>=0.5.7",
"sphinx>=7.0.0",
"tox>=4.18.0",
"twine>=5.1.1",
"watchdog>=4.0.0"
"ruff >=0.5.7",
"sphinx >=7.1.0",
"tox >=4.24.1",
"twine >=5.1.1",
"watchdog >=4.0.0"
]

[project.urls]
Expand Down
1 change: 0 additions & 1 deletion tests/test_bake_project.py
Original file line number Diff line number Diff line change
Expand Up @@ -212,7 +212,6 @@ def test_bake_selecting_license(cookies):
)



def test_bake_not_open_source(cookies):
with bake_in_temp_dir(
cookies,
Expand Down
8 changes: 4 additions & 4 deletions tox.ini
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
[tox]
min_version = 4.18.0
min_version = 4.24.1
envlist =
py{39,310,311,312},
pypy{39,310,311,312},
py{310,311,312,313}
pypy{39,310}
docs
requires = pip >= 24.2.0
requires = pip >= 25.0
opts = --verbose

[testenv:docs]
Expand Down
27 changes: 27 additions & 0 deletions {{cookiecutter.project_slug}}/.github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file

version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/.github/workflows"
schedule:
interval: "monthly"
groups:
actions:
patterns:
- "*"

- package-ecosystem: "pip"
directory: "/"
schedule:
interval: "monthly"
groups:
ci:
patterns:
- "CI/*"
python:
patterns:
- "pyproject.toml"
Loading

0 comments on commit 66499f4

Please sign in to comment.