Open
Conversation
Previously, _copy_without_render prevented Jinja2 from rendering
{{cookiecutter.*}} variables in workflow files, causing generated
projects to have literal {{cookiecutter.python_version}} in CI.
Fixed by removing the setting and wrapping GitHub Actions ${{ }}
expressions in {% raw %} blocks instead.
Changes:
- Add test for workflow file rendering validation
- Remove _copy_without_render from cookiecutter.json
- Wrap GitHub Actions expressions in test.yml with {% raw %} blocks
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
The prettier pre-commit hook creates node_modules/.cache in the generated project root. Without an explicit build-system config, setuptools discovers it as a top-level package, causing "Multiple top-level packages discovered" errors. Changes: - Add [build-system] with hatchling backend to pyproject.toml - Explicitly specify package name in [tool.hatch.build.targets.wheel] - Add node_modules/ to .gitignore to prevent accidental commits Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
The old `license = { text = "..." }` format triggers a
SetuptoolsDeprecationWarning. Modern pyproject.toml should use
a plain SPDX string instead of a TOML table.
Changes:
- Add test for SPDX string license format validation
- Update pyproject.toml to use license = "MIT" format
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
The root pyproject.toml used [project.optional-dependencies] for dev tools, but `uv sync --dev` only recognizes [dependency-groups]. This meant dev dependencies required `--extra dev` instead. Changes: - Change [project.optional-dependencies] to [dependency-groups] - Regenerate uv.lock to reflect the change Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
The hooks/pre_gen_project.py requires pre-commit to be installed globally, but the README only listed uv and cookiecutter. Users would encounter errors without knowing they needed pre-commit. Changes: - Add pre-commit installation as step 3 in Portuguese section - Add pre-commit installation as step 3 in English section - Renumber subsequent steps accordingly Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR implements 5 critical and minor fixes to the cookiecutter template, all tested and committed atomically:
Test Results
All 10 integration tests pass (8 existing + 2 new). Generated projects now build successfully with uv build and have properly rendered templates.
🤖 Generated with Claude Code