All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
- Django 5.1 is now available as a version choice when generating template.
- Python 3.13 now selected by default in version list when generating template.
- Added both
CONTRIBUTING.md
andRELEASING.md
files to official documentation. - Added our documentation GitHub Team to
CODEOWNERS
.
- Added
allow-prereleases: true
to all Python setup steps in GitHub Actions workflows. This should allow for easy testing of future, unreleased versions of Python.
- Changed documentation comment style to actual CSS comments in
docs/_static/css/custom.css
.
- Added an initial
conftest.py
configuration for Pytest test suite. - Added an initial
test_conf.py
for testing custom app settings in package'sconf.py
.
- Python versions specified in all GitHub Actions workflows now surrounded by quotes, turning them from floats to strings. This avoids the potential for stripping trailing zeros, e.g.
3.10
to3.1
.
- Added
workflow_call
trigger totest.yml
GitHub Actions workflow, to allow for therelease.yml
workflow to use it before cutting a new release.
- In preparation of it's upcoming release, Python 3.13 is now available as an option when generating template.
- Removed
labels.yml
GitHub Action. This is now handled by a GitHub bot. - Removed use of
westerveltco/setup-ci-action
in favor of just inlining what that action does.
- Added ruff to template's
pyproject.toml
under dev extras. - Added
conf.py
to template for configuring library.
- Reworded two headers in the template README to better reflect their purpose.
- When cutting a release via
release.yml
GitHub Action workflow, run test suite before publishing package to PyPI. Previously the CLI toolsgh
andjq
were used to check the most recent run of the test suite.
- Removed unused Django 3.2 section from
should_skip
function in template'snoxfile.py
.
mypy
configuration now excludes these directories:docs
,migrations
,tests
, and.venv
/venv
.djlint
configuration expanded.
- Dropped support for Django 3.2.
- Repo and template now have a
CODEOWNERS
file for auto-assigning reviewers to PRs.
- Added the ability to pass in arguments to the
noxfile.py
test sessions. - New
just install
command in template package'sJustfile
installs the package in editable mode with[dev]
extras. - Added a GitHub Action workflow for syncing labels across all projects using this template.
just bootstrap
command in template package'sJustfile
now calls@just install
instead ofuv
installation command directly.
__template_version__
variable has been removed from the template package's__init__.py
file. This is already being set in the copier answers file, so it is unneeded.
- Python versions in template's
test.yml
GitHub Actions workflow are now correctly using the matrix version. - Adjusted how the
uv
package is installed in thesetup-ci-action
GitHub Actions workflow.
- Changed how the package within the template is referenced when bootstrapping in editable mode. Confusingly with
uv
in non-editable mode you must must specify the package name before the '@' symbol with a dot following, but in editable mode you do not need this and can reference it directly like you would expect.
- Now using
uv
for dependency management in template.
- Fixed alignment of badges in docs index.
- Now using
westerveltco/setup-ci-action
for common Python and Node.js CI/CD setup. This action sets up a Python and Node.js environment with caching and installs all dependencies for a project. - Added example generation job to
test.yml
GitHub Actions workflow.
- Updated the
ruff
configuration from deprecated settings to the newruff
configuration.
- Removed the unneeded
RUN_TESTS
environment variable from the GitHub Actions workflow.
- Added the
current_version
in.copier/package.yml
answers file tobumpver
configuration.
- Fixed a bug with the Python and Django versions in
.pre-commit-config.yaml
.
- All
pre-commit
hooks have been updated to use the latest versions of the tools.django-upgrade
to 1.16.0language-formatters-pre-commit-hooks
to v2.12.0prettier
to v4.0.0-alpha.8ruff-pre-commit
to 0.2.1rustywind
to 0.21.0validate-pyproject
to v0.16
djhtml
has been swapped out in favor ofdjLint
for HTML formatting.nox -l --json
is now used to generate GitHub Actions matrix for testing.
create-release-pr
command fromJustfile
was removed and moved to a personal script.
- Path to
just
command documentation in_cog
command.
just
is now installed when building documentation on Read the Docs.just _cog
private command added to run the relevant docs through thecog
tool. Useful for automatically generating documentation for cli tools such asjust
. Currently, only thejust
commands are documented, but this can be expanded in the future (e.g.nox
or Django management commands).
- Moved generation of the lists Python and Django versions in
noxfile.py
from Jinja2 template logic to Jinja2 extensions usingcopier-template-extensions
.
- Added missing
SECRET_KEY
setting totests/settings.py
to fix thetest
andtestall
commands on certain Django versions.
- Added the correct Jinja escape tags so that the
test
andtestall
commands render correctly when generating a template.
- Added additional descriptions to example headings in
CHANGELOG.md
. test
andtestall
Justfile commands now can take positional arguments to run specific tests.lint
Justfile command now runs the relevantnox
command instead ofpre-commit
directly.
- Moved the common test settings from plugin to
tests/settings.py
and added a note to the installation notes in README.
- Removed the
tests/plugins/dj_settings.py
file.
generate-examples
command now removes the previous example directory before generating an example.- Moved common test settings to separate plugin at
tests/plugins/dj_settings.py
.
- Removed the dummy
tests/settings.py
.
- A new
generate-examples
command to theJustfile
for generating all of the examples at once.
- Added a few missing configuration settings to the
pyproject.toml
file.
- Addressed a number of linting issues and nitpicks, detailed in issue #3.
Initial release! 🎉
- Initial project template.
- Initial documentation.
- Initial tests.
- Initial CI/CD (GitHub Actions).
- Josh Thomas [email protected] (maintainer)