Skip to content

Conversation

@pepe5p
Copy link
Owner

@pepe5p pepe5p commented Jan 31, 2026

BREAKING CHANGE: questions contract

solves #8

@pepe5p pepe5p requested a review from Copilot January 31, 2026 21:49
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds automatic GitHub release functionality based on conventional commits and refactors the question flow to make author information optional. The changes introduce breaking changes to the questions contract by adding new configuration options and making existing questions conditional.

Changes:

  • Added automatic GitHub release workflow that triggers on successful CI runs
  • Made author information optional via a new specify_author question
  • Introduced enforce_conventional_commits and automatic_gh_release configuration options
  • Refactored test fixtures to use parametrized answers covering different project configurations
  • Renamed project_name_snake_case references to source_catalog_name for clarity

Reviewed changes

Copilot reviewed 17 out of 19 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
copier.yaml Added new questions for author specification, conventional commits, and automatic releases with conditional logic
tests/conftest.py Refactored to create parametrized fixture with multiple answer configurations and introduced helper functions
tests/test_syntax.py Removed project type parametrization in favor of fixture-based approach
skeleton/.github/workflows/release.yml New workflow file for automatic GitHub releases using conventional commits
skeleton/pyproject.toml.jinja Updated to conditionally include author information and use new variable name
skeleton/Dockerfile.jinja Changed variable reference from project_name_snake_case to source_catalog_name
skeleton/tests/test_lambda_function.py.jinja Changed import path to use source_catalog_name variable
skeleton/justfile.jinja Updated all path references to use source_catalog_name
justfile Renamed copy command to copy_from_file and added new copy command without data file parameter
test_answers/*.yml Updated answer files to include new configuration options
skeleton/.github/workflows/*.yml Added emoji prefixes to workflow names for better visibility
.github/workflows/*.yml Added emoji prefixes to workflow names for consistency

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

[project]
name = "{{ project_name_kebab_case }}"
version = "0.0.0" # This is a placeholder, version is determined by git tag during CI/CD
version = "0.0.0"{% if is_lambda_project %} # This is a placeholder, version is determined by git tag and commits{% endif %}
Copy link

Copilot AI Jan 31, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The comment about version determination should apply to all project types when automatic releases are enabled, not just lambda projects. Consider using {% if automatic_gh_release %} instead of {% if is_lambda_project %} for this comment, or remove the conditional entirely since the comment is informative regardless of project type.

Suggested change
version = "0.0.0"{% if is_lambda_project %} # This is a placeholder, version is determined by git tag and commits{% endif %}
version = "0.0.0"{% if automatic_gh_release %} # This is a placeholder, version is determined by git tag and commits{% endif %}

Copilot uses AI. Check for mistakes.
@pepe5p pepe5p merged commit 5afc4aa into main Jan 31, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants