instant-python 0.8.2__tar.gz → 0.9.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {instant_python-0.8.2 → instant_python-0.9.1}/.github/workflows/ci.yml +0 -77
- {instant_python-0.8.2 → instant_python-0.9.1}/.github/workflows/release.yml +7 -8
- {instant_python-0.8.2 → instant_python-0.9.1}/CHANGELOG.md +144 -1
- {instant_python-0.8.2 → instant_python-0.9.1}/PKG-INFO +4 -2
- instant_python-0.9.1/docs/guide/command_init.md +622 -0
- {instant_python-0.8.2/instant_python → instant_python-0.9.1/instant_python/cli}/cli.py +1 -1
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/shared/supported_built_in_features.py +4 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/.pre-commit-config.yml +71 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/CITATION.cff +13 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/SECURITY.md +43 -0
- instant_python-0.8.2/instant_python/templates/boilerplate/event_bus/aggregate_root.py → instant_python-0.9.1/instant_python/templates/boilerplate/event_bus/event_aggregate.py +2 -1
- instant_python-0.9.1/instant_python/templates/boilerplate/exceptions/domain_error.py +6 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/exceptions/error.py +24 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/fastapi/application.py +68 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/fastapi/error_handlers.py +64 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/fastapi/error_response.py +31 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/fastapi/fastapi_log_middleware.py +33 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/fastapi/success_response.py +13 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/github/action.yml +35 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/github/bug_report.yml +60 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/github/ci.yml +199 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/github/feature_request.yml +21 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/github/release.yml +85 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/logger/file_logger.py +56 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/logger/file_rotating_handler.py +37 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/logger/json_formatter.py +2 -2
- instant_python-0.9.1/instant_python/templates/boilerplate/pyproject.toml +109 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/scripts/add_dependency.py +45 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/scripts/local_setup.py +12 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/scripts/makefile +184 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/scripts/post-merge.py +40 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/scripts/pre-commit.py +15 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/scripts/remove_dependency.py +40 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/value_object/aggregate.py +99 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/value_object/int_value_object.py +23 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/value_object/string_value_object.py +17 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/value_object/uuid.py +25 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/value_object/validation.py +7 -0
- instant_python-0.9.1/instant_python/templates/boilerplate/value_object/value_object.py +119 -0
- instant_python-0.9.1/instant_python/templates/project_structure/citation.yml.j2 +3 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/clean_architecture/main_structure.yml.j2 +17 -4
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/domain_driven_design/main_structure.yml.j2 +17 -4
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/event_bus_domain.yml.j2 +20 -4
- instant_python-0.9.1/instant_python/templates/project_structure/fastapi_app.yml.j2 +28 -0
- instant_python-0.8.2/instant_python/templates/project_structure/logger.yml.j2 → instant_python-0.9.1/instant_python/templates/project_structure/fastapi_domain.yml.j2 +3 -3
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/fastapi_infra.yml.j2 +2 -2
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/github_action.yml.j2 +2 -2
- instant_python-0.9.1/instant_python/templates/project_structure/github_issues_template.yml.j2 +12 -0
- instant_python-0.9.1/instant_python/templates/project_structure/logger.yml.j2 +13 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/makefile.yml.j2 +7 -16
- instant_python-0.8.2/instant_python/templates/project_structure/pre_commit.yml.j2 → instant_python-0.9.1/instant_python/templates/project_structure/precommit_hook.yml.j2 +1 -1
- instant_python-0.9.1/instant_python/templates/project_structure/security.yml.j2 +3 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/standard_project/main_structure.yml.j2 +18 -5
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/value_objects.yml.j2 +26 -9
- {instant_python-0.8.2 → instant_python-0.9.1}/pyproject.toml +12 -6
- instant_python-0.9.1/test/render/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/tox.ini +1 -1
- {instant_python-0.8.2 → instant_python-0.9.1}/uv.lock +33 -1
- instant_python-0.8.2/docs/guide/command_init.md +0 -386
- instant_python-0.8.2/instant_python/templates/boilerplate/.pre-commit-config.yml +0 -33
- instant_python-0.8.2/instant_python/templates/boilerplate/fastapi/application.py +0 -31
- instant_python-0.8.2/instant_python/templates/boilerplate/fastapi/http_response.py +0 -67
- instant_python-0.8.2/instant_python/templates/boilerplate/fastapi/status_code.py +0 -9
- instant_python-0.8.2/instant_python/templates/boilerplate/github/action.yml +0 -22
- instant_python-0.8.2/instant_python/templates/boilerplate/github/lint.yml +0 -30
- instant_python-0.8.2/instant_python/templates/boilerplate/github/test.yml +0 -30
- instant_python-0.8.2/instant_python/templates/boilerplate/logger/logger.py +0 -48
- instant_python-0.8.2/instant_python/templates/boilerplate/pyproject.toml +0 -63
- instant_python-0.8.2/instant_python/templates/boilerplate/scripts/add_dependency.sh +0 -37
- instant_python-0.8.2/instant_python/templates/boilerplate/scripts/local_setup.sh +0 -15
- instant_python-0.8.2/instant_python/templates/boilerplate/scripts/makefile +0 -125
- instant_python-0.8.2/instant_python/templates/boilerplate/scripts/post-merge +0 -11
- instant_python-0.8.2/instant_python/templates/boilerplate/scripts/pre-commit +0 -4
- instant_python-0.8.2/instant_python/templates/boilerplate/scripts/remove_dependency.sh +0 -36
- instant_python-0.8.2/instant_python/templates/boilerplate/value_object/int_value_object.py +0 -14
- instant_python-0.8.2/instant_python/templates/boilerplate/value_object/string_value_object.py +0 -19
- instant_python-0.8.2/instant_python/templates/boilerplate/value_object/uuid.py +0 -17
- instant_python-0.8.2/instant_python/templates/boilerplate/value_object/value_object.py +0 -48
- instant_python-0.8.2/instant_python/templates/project_structure/fastapi_app.yml.j2 +0 -12
- instant_python-0.8.2/instant_python/templates/project_structure/fastapi_domain.yml.j2 +0 -7
- instant_python-0.8.2/test/project_creator/resources/boilerplate/exceptions/domain_error.py +0 -22
- {instant_python-0.8.2 → instant_python-0.9.1}/.github/FUNDING.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/.github/actions/python_setup/action.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/.github/pull_request_template.md +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/.github/workflows/pages.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/.gitignore +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/.pre-commit-config.yaml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/.python-version +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/CITATION.cff +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/LICENSE +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/README.md +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/SECURITY.md +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/codeql-config.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/docs/assets/favicon.svg +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/docs/assets/logo.svg +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/docs/changelog/.components/changelog_header.md.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/docs/changelog/.components/changelog_init.md.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/docs/changelog/.components/changelog_update.md.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/docs/changelog/.components/changes.md.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/docs/changelog/.components/first_release.md.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/docs/changelog/.components/macros.md.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/docs/changelog/.components/versioned_changes.md.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/docs/changelog/.release_notes.md.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/docs/changelog/CHANGELOG.md.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/docs/downloads_macro.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/docs/examples/configuration.md +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/docs/examples/custom_template.md +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/docs/guide/command_config.md +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/docs/home/contributing.md +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/docs/home/getting_started.md +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/docs/home/index.md +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/docs/home/releases.md +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/docs/home/security.md +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/__init__.py +0 -0
- {instant_python-0.8.2/instant_python/commands → instant_python-0.9.1/instant_python/cli}/__init__.py +0 -0
- {instant_python-0.8.2/instant_python → instant_python-0.9.1/instant_python/cli}/instant_python_typer.py +0 -0
- {instant_python-0.8.2/instant_python/configuration → instant_python-0.9.1/instant_python/commands}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/commands/config.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/commands/init.py +0 -0
- {instant_python-0.8.2/instant_python/configuration/dependency → instant_python-0.9.1/instant_python/configuration}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/configuration_schema.py +0 -0
- {instant_python-0.8.2/instant_python/configuration/general → instant_python-0.9.1/instant_python/configuration/dependency}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/dependency/dependency_configuration.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/dependency/not_dev_dependency_included_in_group.py +0 -0
- {instant_python-0.8.2/instant_python/configuration/git → instant_python-0.9.1/instant_python/configuration/general}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/general/general_configuration.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/general/invalid_dependency_manager_value.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/general/invalid_license_value.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/general/invalid_python_version_value.py +0 -0
- {instant_python-0.8.2/instant_python/configuration/parser → instant_python-0.9.1/instant_python/configuration/git}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/git/git_configuration.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/git/git_user_or_email_not_present.py +0 -0
- {instant_python-0.8.2/instant_python/configuration/question → instant_python-0.9.1/instant_python/configuration/parser}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/parser/config_key_not_present.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/parser/configuration_file_not_found.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/parser/empty_configuration_not_allowed.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/parser/missing_mandatory_fields.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/parser/parser.py +0 -0
- {instant_python-0.8.2/instant_python/configuration/step → instant_python-0.9.1/instant_python/configuration/question}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/question/boolean_question.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/question/choice_question.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/question/conditional_question.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/question/free_text_question.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/question/multiple_choice_question.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/question/question.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/question/questionary.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/question_wizard.py +0 -0
- {instant_python-0.8.2/instant_python/configuration/template → instant_python-0.9.1/instant_python/configuration/step}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/step/dependencies_step.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/step/general_step.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/step/git_step.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/step/steps.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/step/template_step.py +0 -0
- {instant_python-0.8.2/instant_python/dependency_manager → instant_python-0.9.1/instant_python/configuration/template}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/template/bounded_context_not_applicable.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/template/bounded_context_not_especified.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/template/invalid_built_in_features_values.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/template/invalid_template_value.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/configuration/template/template_configuration.py +0 -0
- {instant_python-0.8.2/instant_python/formatter → instant_python-0.9.1/instant_python/dependency_manager}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/dependency_manager/command_execution_error.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/dependency_manager/dependency_manager.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/dependency_manager/dependency_manager_factory.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/dependency_manager/pdm_dependency_manager.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/dependency_manager/unknown_dependency_manager_error.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/dependency_manager/uv_dependency_manager.py +0 -0
- {instant_python-0.8.2/instant_python/git → instant_python-0.9.1/instant_python/formatter}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/formatter/project_formatter.py +0 -0
- {instant_python-0.8.2/instant_python/project_creator → instant_python-0.9.1/instant_python/git}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/git/git_configurer.py +0 -0
- {instant_python-0.8.2/instant_python/render → instant_python-0.9.1/instant_python/project_creator}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/project_creator/directory.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/project_creator/file.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/project_creator/file_has_not_been_created.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/project_creator/file_system.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/project_creator/node.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/project_creator/unknown_node_typer_error.py +0 -0
- {instant_python-0.8.2/instant_python/shared → instant_python-0.9.1/instant_python/render}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/render/custom_project_renderer.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/render/jinja_custom_filters.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/render/jinja_environment.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/render/jinja_project_renderer.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/render/template_file_not_found_error.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/render/unknown_template_error.py +0 -0
- {instant_python-0.8.2/instant_python/templates/boilerplate/event_bus → instant_python-0.9.1/instant_python/shared}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/shared/application_error.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/shared/error_types.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/shared/supported_licenses.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/shared/supported_managers.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/shared/supported_python_versions.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/shared/supported_templates.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/.gitignore +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/.python-version +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/LICENSE +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/README.md +0 -0
- {instant_python-0.8.2/instant_python/templates/boilerplate/exceptions → instant_python-0.9.1/instant_python/templates/boilerplate/event_bus}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/event_bus/domain_event.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/event_bus/domain_event_json_deserializer.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/event_bus/domain_event_json_serializer.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/event_bus/domain_event_subscriber.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/event_bus/event_bus.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/event_bus/exchange_type.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/event_bus/mock_event_bus.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/event_bus/rabbit_mq_configurer.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/event_bus/rabbit_mq_connection.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/event_bus/rabbit_mq_consumer.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/event_bus/rabbit_mq_event_bus.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/event_bus/rabbit_mq_queue_formatter.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/event_bus/rabbit_mq_settings.py +0 -0
- {instant_python-0.8.2/instant_python/templates/boilerplate/fastapi → instant_python-0.9.1/instant_python/templates/boilerplate/exceptions}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/exceptions/domain_event_type_not_found_error.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/exceptions/incorrect_value_type_error.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/exceptions/invalid_id_format_error.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/exceptions/invalid_negative_value_error.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/exceptions/rabbit_mq_connection_not_established_error.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/exceptions/required_value_error.py +0 -0
- {instant_python-0.8.2/instant_python/templates/boilerplate/logger → instant_python-0.9.1/instant_python/templates/boilerplate/fastapi}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/fastapi/lifespan.py +0 -0
- {instant_python-0.8.2/instant_python/templates/boilerplate/persistence → instant_python-0.9.1/instant_python/templates/boilerplate/logger}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/mypy.ini +0 -0
- {instant_python-0.8.2/instant_python/templates/boilerplate/persistence/async → instant_python-0.9.1/instant_python/templates/boilerplate/persistence}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/persistence/alembic_migrator.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/persistence/async/README.md +0 -0
- {instant_python-0.8.2/instant_python/templates/boilerplate/persistence/synchronous → instant_python-0.9.1/instant_python/templates/boilerplate/persistence/async}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/persistence/async/alembic.ini +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/persistence/async/async_engine_fixture.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/persistence/async/env.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/persistence/async/models_metadata.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/persistence/async/postgres_settings.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/persistence/async/script.py.mako +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/persistence/async/sqlalchemy_repository.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/persistence/base.py +0 -0
- {instant_python-0.8.2/instant_python/templates/boilerplate/value_object → instant_python-0.9.1/instant_python/templates/boilerplate/persistence/synchronous}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/persistence/synchronous/session_maker.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/persistence/synchronous/sqlalchemy_repository.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/pytest.ini +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/random_generator.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/scripts/create_aggregate.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/scripts/insert_template.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/scripts/integration.sh +0 -0
- /instant_python-0.8.2/instant_python/templates/boilerplate/scripts/pre-push → /instant_python-0.9.1/instant_python/templates/boilerplate/scripts/pre-push.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/boilerplate/scripts/unit.sh +0 -0
- {instant_python-0.8.2/test → instant_python-0.9.1/instant_python/templates/boilerplate/value_object}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/alembic_migrator.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/async_alembic.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/async_sqlalchemy.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/clean_architecture/source.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/clean_architecture/test.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/domain_driven_design/bounded_context.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/domain_driven_design/source.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/domain_driven_design/test.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/event_bus_infra.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/gitignore.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/license.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/macros.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/mypy.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/pyproject.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/pytest.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/python_version.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/readme.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/standard_project/source.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/standard_project/test.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/instant_python/templates/project_structure/synchronous_sqlalchemy.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/makefile +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/mkdocs.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/mypy.ini +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/scripts/add_dependency.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/scripts/remove_dependency.py +0 -0
- {instant_python-0.8.2/test/configuration → instant_python-0.9.1/test}/__init__.py +0 -0
- {instant_python-0.8.2/test/configuration/dependency → instant_python-0.9.1/test/configuration}/__init__.py +0 -0
- {instant_python-0.8.2/test/configuration/general → instant_python-0.9.1/test/configuration/dependency}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/dependency/dependency_configuration_mother.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/dependency/test_dependency_configuration.py +0 -0
- {instant_python-0.8.2/test/configuration/git → instant_python-0.9.1/test/configuration/general}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/general/general_configuration_mother.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/general/test_general_configuration.py +0 -0
- {instant_python-0.8.2/test/configuration/parser → instant_python-0.9.1/test/configuration/git}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/git/git_configuration_mother.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/git/test_git_configuration.py +0 -0
- {instant_python-0.8.2/test/configuration/parser/resources → instant_python-0.9.1/test/configuration/parser}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/parser/approvaltests_config.json +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/parser/approved_files/TestParser.test_should_parse_configuration.approved.txt +0 -0
- {instant_python-0.8.2/test/configuration/question → instant_python-0.9.1/test/configuration/parser/resources}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/parser/resources/config.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/parser/resources/empty_config.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/parser/resources/missing_dependencies_fields_config.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/parser/resources/missing_general_fields_config.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/parser/resources/missing_git_fields_config.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/parser/resources/missing_keys_config.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/parser/resources/missing_template_fields_config.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/parser/test_parser.py +0 -0
- {instant_python-0.8.2/test/configuration/template → instant_python-0.9.1/test/configuration/question}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/question/test_boolean_question.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/question/test_choice_question.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/question/test_free_text_question.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/question/test_multiple_choice_question.py +0 -0
- {instant_python-0.8.2/test/dependency_manager → instant_python-0.9.1/test/configuration/template}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/template/template_configuration_mother.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/configuration/template/test_template_configuration.py +0 -0
- {instant_python-0.8.2/test/formatter → instant_python-0.9.1/test/dependency_manager}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/dependency_manager/mock_pdm_dependency_manager.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/dependency_manager/mock_uv_dependency_manager.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/dependency_manager/test_pdm_dependency_manager.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/dependency_manager/test_uv_dependency_manager.py +0 -0
- {instant_python-0.8.2/test/git → instant_python-0.9.1/test/formatter}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/formatter/mock_project_formatter.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/formatter/test_project_formatter.py +0 -0
- {instant_python-0.8.2/test/project_creator → instant_python-0.9.1/test/git}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/git/mock_git_configurer.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/git/test_git_configurer.py +0 -0
- {instant_python-0.8.2/test/project_creator/resources/boilerplate/fastapi → instant_python-0.9.1/test/project_creator}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/approvaltests_config.json +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/approved_files/TestFileSystem.test_should_create_file_system_in_disk.rendered_custom_project_structure.json.approved.txt +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/approved_files/TestFileSystem.test_should_create_file_system_in_disk.rendered_project_structure.json.approved.txt +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/approved_files/TestFileSystem.test_should_create_file_system_in_disk.rendered_project_structure_fastapi_with_logger.json.approved.txt +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/approved_files/TestFileSystem.test_should_create_file_system_in_disk.rendered_project_structure_fastapi_with_migrator.json.approved.txt +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/approved_files/TestFileSystem.test_should_create_file_system_in_disk.rendered_project_structure_only_with_fastapi.json.approved.txt +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/approved_files/TestFileSystem.test_should_create_folders_and_files.approved.txt +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/approved_files/TestFileSystem.test_should_generate_file_system_tree.approved.txt +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/directory_mother.py +0 -0
- {instant_python-0.8.2/instant_python/templates → instant_python-0.9.1/test/project_creator/resources}/boilerplate/exceptions/domain_error.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/resources/boilerplate/exceptions/domain_error_simple.py +0 -0
- {instant_python-0.8.2/test/project_creator/resources/boilerplate/logger → instant_python-0.9.1/test/project_creator/resources/boilerplate/fastapi}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/resources/boilerplate/fastapi/application.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/resources/boilerplate/fastapi/http_response.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/resources/boilerplate/fastapi/lifespan.py +0 -0
- {instant_python-0.8.2/test/render → instant_python-0.9.1/test/project_creator/resources/boilerplate/logger}/__init__.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/resources/boilerplate/logger/logger.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/resources/boilerplate/persistence/alembic_migrator.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/resources/clean_architecture/main_structure.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/resources/config.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/resources/config_fastapi_with_logger.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/resources/config_fastapi_with_migrator.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/resources/config_with_only_fastapi.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/resources/rendered_custom_project_structure.json +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/resources/rendered_project_structure.json +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/resources/rendered_project_structure_fastapi_with_logger.json +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/resources/rendered_project_structure_fastapi_with_migrator.json +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/resources/rendered_project_structure_only_with_fastapi.json +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/test_directory.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/test_file.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/project_creator/test_file_system.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/random_generator.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/render/approvaltests_config.json +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/render/approved_files/TestCustomProjectRenderer.test_should_render_custom_template.approved.txt +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/render/approved_files/TestJinjaProjectRenderer.test_should_render_template_for.clean_architecture_config.yml.approved.txt +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/render/approved_files/TestJinjaProjectRenderer.test_should_render_template_for.domain_driven_design_config.yml.approved.txt +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/render/approved_files/TestJinjaProjectRenderer.test_should_render_template_for.received.txt +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/render/approved_files/TestJinjaProjectRenderer.test_should_render_template_for.standard_project_with_dependency_config.yml.approved.txt +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/render/approved_files/TestJinjaProjectRenderer.test_should_render_template_for.standard_project_with_git_config.yml.approved.txt +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/render/resources/clean_architecture/main_structure.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/render/resources/clean_architecture_config.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/render/resources/custom_template.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/render/resources/domain_driven_design/main_structure.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/render/resources/domain_driven_design_config.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/render/resources/standard_project/main_structure.yml.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/render/resources/standard_project_with_dependency_config.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/render/resources/standard_project_with_git_config.yml +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/render/resources/test_template.j2 +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/render/test_custom_project_renderer.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/render/test_jinja_environment.py +0 -0
- {instant_python-0.8.2 → instant_python-0.9.1}/test/render/test_jinja_project_renderer.py +0 -0
|
@@ -10,25 +10,9 @@ permissions:
|
|
|
10
10
|
id-token: write
|
|
11
11
|
|
|
12
12
|
jobs:
|
|
13
|
-
check_user:
|
|
14
|
-
name: check-user
|
|
15
|
-
runs-on: ubuntu-latest
|
|
16
|
-
outputs:
|
|
17
|
-
should_run: ${{ github.actor == 'dimanu-py' }}
|
|
18
|
-
steps:
|
|
19
|
-
- name: 🛡️ Harden runner
|
|
20
|
-
uses: step-security/harden-runner@6c439dc8bdf85cadbbce9ed30d1c7b959517bc49 # v2.12.2
|
|
21
|
-
with:
|
|
22
|
-
egress-policy: audit
|
|
23
|
-
|
|
24
|
-
- name: 👍 Check triggering user
|
|
25
|
-
run: echo "Workflow triggered by ${{ github.actor }}"
|
|
26
|
-
|
|
27
13
|
lint:
|
|
28
14
|
name: lint
|
|
29
15
|
runs-on: ubuntu-latest
|
|
30
|
-
needs: check_user
|
|
31
|
-
if: ${{ needs.check_user.outputs.should_run == 'true' }}
|
|
32
16
|
steps:
|
|
33
17
|
- name: 🛡️ Harden runner
|
|
34
18
|
uses: step-security/harden-runner@6c439dc8bdf85cadbbce9ed30d1c7b959517bc49 # v2.12.2
|
|
@@ -47,42 +31,11 @@ jobs:
|
|
|
47
31
|
|
|
48
32
|
- name: 🧐 Check linting
|
|
49
33
|
id: check_lint
|
|
50
|
-
run: |
|
|
51
|
-
git pull --rebase origin main
|
|
52
|
-
uvx ruff check --exclude "instant_python/templates,test/**/resources/**" instant_python test
|
|
53
|
-
continue-on-error: true
|
|
54
|
-
|
|
55
|
-
- name: 🚨 Auto fix lint errors
|
|
56
|
-
id: fix_lint
|
|
57
|
-
if: ${{ steps.check_lint.outcome == 'failure' }}
|
|
58
|
-
run: |
|
|
59
|
-
git pull --rebase origin main
|
|
60
|
-
uvx ruff check --fix --exclude "instant_python/templates,test/**/resources/**" instant_python test
|
|
61
|
-
|
|
62
|
-
- name: ✏️ Commit lint fixes
|
|
63
|
-
if: ${{ steps.fix_lint.outcome == 'success' }}
|
|
64
|
-
run: |
|
|
65
|
-
git config user.name ${{ vars.GIT_COMMITTER_NAME }}
|
|
66
|
-
git config user.email ${{ vars.GIT_COMMITTER_EMAIL }}
|
|
67
|
-
|
|
68
|
-
if git diff --quiet; then
|
|
69
|
-
echo "No changes to commit."
|
|
70
|
-
else
|
|
71
|
-
git add .
|
|
72
|
-
git commit -m "🚨 chore: fix linting issues via GitHub Actions"
|
|
73
|
-
git push
|
|
74
|
-
fi
|
|
75
|
-
env:
|
|
76
|
-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
77
|
-
|
|
78
|
-
- name: 🧐 Check linting again
|
|
79
34
|
run: uvx ruff check --exclude "instant_python/templates,test/**/resources/**" instant_python test
|
|
80
35
|
|
|
81
36
|
format:
|
|
82
37
|
name: format
|
|
83
38
|
runs-on: ubuntu-latest
|
|
84
|
-
needs: check_user
|
|
85
|
-
if: ${{ needs.check_user.outputs.should_run == 'true' }}
|
|
86
39
|
steps:
|
|
87
40
|
- name: 🛡️ Harden runner
|
|
88
41
|
uses: step-security/harden-runner@6c439dc8bdf85cadbbce9ed30d1c7b959517bc49 # v2.12.2
|
|
@@ -101,35 +54,6 @@ jobs:
|
|
|
101
54
|
|
|
102
55
|
- name: 🧐 Check code format
|
|
103
56
|
id: check_format
|
|
104
|
-
run: |
|
|
105
|
-
git pull --rebase origin main
|
|
106
|
-
uvx ruff format --check --exclude "instant_python/templates,test/**/resources/**" instant_python test
|
|
107
|
-
continue-on-error: true
|
|
108
|
-
|
|
109
|
-
- name: 🎨 Auto format code
|
|
110
|
-
id: format_code
|
|
111
|
-
if: ${{ steps.check_format.outcome == 'failure' }}
|
|
112
|
-
run: |
|
|
113
|
-
git pull --rebase origin main
|
|
114
|
-
uvx ruff format --exclude "instant_python/templates,test/**/resources/**" instant_python test
|
|
115
|
-
|
|
116
|
-
- name: ✏️ Commit formatted code
|
|
117
|
-
if: ${{ steps.format_code.outcome == 'success' }}
|
|
118
|
-
run: |
|
|
119
|
-
git config user.name ${{ vars.GIT_COMMITTER_NAME }}
|
|
120
|
-
git config user.email ${{ vars.GIT_COMMITTER_EMAIL }}
|
|
121
|
-
|
|
122
|
-
if git diff --quiet; then
|
|
123
|
-
echo "No changes to commit."
|
|
124
|
-
else
|
|
125
|
-
git add .
|
|
126
|
-
git commit -m "🎨 style: format code via GitHub Actions"
|
|
127
|
-
git push
|
|
128
|
-
fi
|
|
129
|
-
env:
|
|
130
|
-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
131
|
-
|
|
132
|
-
- name: 🧐 Check code format again
|
|
133
57
|
run: uvx ruff format --check --exclude "instant_python/templates,test/**/resources/**" instant_python test
|
|
134
58
|
|
|
135
59
|
analyze-code-quality:
|
|
@@ -165,7 +89,6 @@ jobs:
|
|
|
165
89
|
with:
|
|
166
90
|
category: '/language:python'
|
|
167
91
|
|
|
168
|
-
|
|
169
92
|
secrets:
|
|
170
93
|
name: secrets-scan
|
|
171
94
|
runs-on: ubuntu-latest
|
|
@@ -9,8 +9,6 @@ jobs:
|
|
|
9
9
|
runs-on: ubuntu-latest
|
|
10
10
|
permissions:
|
|
11
11
|
contents: write
|
|
12
|
-
pull-requests: write
|
|
13
|
-
|
|
14
12
|
outputs:
|
|
15
13
|
released: ${{ steps.released.outputs.released }}
|
|
16
14
|
tag: ${{ steps.released.outputs.tag }}
|
|
@@ -25,13 +23,14 @@ jobs:
|
|
|
25
23
|
uses: actions/checkout@v4
|
|
26
24
|
with:
|
|
27
25
|
fetch-depth: 0
|
|
26
|
+
fetch-tags: true
|
|
28
27
|
persist-credentials: false
|
|
29
28
|
|
|
30
|
-
- name: 🔖
|
|
29
|
+
- name: 🔖 Create release
|
|
31
30
|
id: released
|
|
32
31
|
uses: python-semantic-release/python-semantic-release@2896129e02bb7809d2cf0c1b8e9e795ee27acbcf # v10.0.2
|
|
33
32
|
with:
|
|
34
|
-
build:
|
|
33
|
+
build: true
|
|
35
34
|
push: true
|
|
36
35
|
changelog: true
|
|
37
36
|
commit: true
|
|
@@ -45,12 +44,12 @@ jobs:
|
|
|
45
44
|
ssh_private_signing_key: ${{ secrets.SSH_PRIVATE_SIGNING_KEY }}
|
|
46
45
|
|
|
47
46
|
build-and-publish:
|
|
48
|
-
name: Publish
|
|
49
|
-
needs:
|
|
50
|
-
|
|
47
|
+
name: Publish to PyPI
|
|
48
|
+
needs:
|
|
49
|
+
- release
|
|
50
|
+
if: needs.release.outputs.released == 'true'
|
|
51
51
|
runs-on: ubuntu-latest
|
|
52
52
|
environment: release
|
|
53
|
-
|
|
54
53
|
permissions:
|
|
55
54
|
id-token: write
|
|
56
55
|
|
|
@@ -1,6 +1,149 @@
|
|
|
1
1
|
# CHANGELOG
|
|
2
2
|
|
|
3
|
-
## v0.9.0 (2025-07-
|
|
3
|
+
## v0.9.0 (2025-07-18)
|
|
4
|
+
|
|
5
|
+
### ✨ Features
|
|
6
|
+
|
|
7
|
+
- **templates**: Add github action release to project structure for github actions ([`9e3309f`](https://github.com/dimanu-py/instant-python/commit/9e3309f8154a72954427f947ae61753d37253060))
|
|
8
|
+
|
|
9
|
+
- **templates**: Include python semantic release library in default dependencies if github actions is selected ([`5374ba4`](https://github.com/dimanu-py/instant-python/commit/5374ba4e77f8790dc6d5b691d3f511889df87f24))
|
|
10
|
+
|
|
11
|
+
- **shared**: Add github issues template as possible built in feature ([`9d97ce5`](https://github.com/dimanu-py/instant-python/commit/9d97ce53baded8ed6e782ea437daa9110c74c316))
|
|
12
|
+
|
|
13
|
+
- **templates**: Add template for release with python semantic release ([`23569a0`](https://github.com/dimanu-py/instant-python/commit/23569a0bafb33b1726beab47bf11e6f7fde95065))
|
|
14
|
+
|
|
15
|
+
- **templates**: Include github issues template into project structure templates ([`36a2975`](https://github.com/dimanu-py/instant-python/commit/36a2975e726db3172965e2f8866b2af48488c193))
|
|
16
|
+
|
|
17
|
+
- **templates**: Add templates for github issues templates ([`fec68e4`](https://github.com/dimanu-py/instant-python/commit/fec68e48418875c57e98a16dbc041e3eeeffdea9))
|
|
18
|
+
|
|
19
|
+
- **templates**: Include pip audit and precommit as default dependencies if they are selected as built in features ([`86a8af5`](https://github.com/dimanu-py/instant-python/commit/86a8af5592c03046d0228131beb4b9718bd00f57))
|
|
20
|
+
|
|
21
|
+
- **templates**: Include audit command in makefile template if github actions is selected ([`8035fab`](https://github.com/dimanu-py/instant-python/commit/8035fab7a66b1735da07d6a750bc754b1f6c4d48))
|
|
22
|
+
|
|
23
|
+
- **templates**: Modify project structure for github action including joined ci workflow ([`4ae4bd7`](https://github.com/dimanu-py/instant-python/commit/4ae4bd77d292697761dd4b631a6f87b32dc0796e))
|
|
24
|
+
|
|
25
|
+
- **templates**: Join lint and test github workflows into one single file and include more security and code quality jobs ([`a21eafe`](https://github.com/dimanu-py/instant-python/commit/a21eafebc11da2fe2d440acdfc96e3d6910e8bdc))
|
|
26
|
+
|
|
27
|
+
- **shared**: Include security as supported built in feature ([`5cfa228`](https://github.com/dimanu-py/instant-python/commit/5cfa228abca91b5e0d09ca7f68baa0a910f5da26))
|
|
28
|
+
|
|
29
|
+
- **templates**: Include security template into project structures ([`65c9b84`](https://github.com/dimanu-py/instant-python/commit/65c9b849f2b37faf5c0fcae8993e9981b71da829))
|
|
30
|
+
|
|
31
|
+
- **templates**: Create security file template ([`21b1bb0`](https://github.com/dimanu-py/instant-python/commit/21b1bb0257e1caa23db66e645e9e047010c10920))
|
|
32
|
+
|
|
33
|
+
- **shared**: Add citation as supported built in feature ([`893abab`](https://github.com/dimanu-py/instant-python/commit/893abab4e16a66b0da7e8b9e26d2f2ed452453d5))
|
|
34
|
+
|
|
35
|
+
- **templates**: Add citation project structure template to default templates ([`0a798d5`](https://github.com/dimanu-py/instant-python/commit/0a798d57642eb990f42b2e614d840f543829c767))
|
|
36
|
+
|
|
37
|
+
- **templates**: Add citation file template ([`888e8c6`](https://github.com/dimanu-py/instant-python/commit/888e8c696ad1ab2ce9916fa4a85c6ceae529cf14))
|
|
38
|
+
|
|
39
|
+
- **shared**: Add precommit option in SupportedBuiltInFeatures enum ([`f69cadb`](https://github.com/dimanu-py/instant-python/commit/f69cadb733634a6ecb4e9ab092e2a2bb375f98c9))
|
|
40
|
+
|
|
41
|
+
- **templates**: Include precommit template project structure in all default templates ([`8601841`](https://github.com/dimanu-py/instant-python/commit/8601841cb74c7a3a68b1d06daa89c25b3b23c0f3))
|
|
42
|
+
|
|
43
|
+
- **templates**: Include specific make commands in template based on installed dependencies and selected built in features ([`62688c0`](https://github.com/dimanu-py/instant-python/commit/62688c072cb6bfa1d00e7f6a08f82a1ed975aa8e))
|
|
44
|
+
|
|
45
|
+
- **templates**: Include pre commit hook in makefile if it's selected as built in features ([`2c391fb`](https://github.com/dimanu-py/instant-python/commit/2c391fb6c1c69990ae551c6bf8621bb1b40811d1))
|
|
46
|
+
|
|
47
|
+
- **templates**: Update pre commit config file to be included as built in feature ([`972aaa4`](https://github.com/dimanu-py/instant-python/commit/972aaa4131e54d3e875b14e3d117ea30a23bc0e9))
|
|
48
|
+
|
|
49
|
+
- **templates**: Include new base aggregate in value objects and when in EDA project structure ([`4f038ef`](https://github.com/dimanu-py/instant-python/commit/4f038ef59fd4f0c54ba2880c4a505984560a4254))
|
|
50
|
+
|
|
51
|
+
- **templates**: Create base aggregate class and make aggregate for event driven architecture inherit from it ([`44f843d`](https://github.com/dimanu-py/instant-python/commit/44f843de0c6fcf739309f37350e9ba8b4c7bc650))
|
|
52
|
+
|
|
53
|
+
- **templates**: Include error handlers in fastapi application template for project structure ([`add3634`](https://github.com/dimanu-py/instant-python/commit/add36343fb11e4be42c96dca42ef00153d178187))
|
|
54
|
+
|
|
55
|
+
- **templates**: Separate template files for fastapi error handlers ([`cfd7d14`](https://github.com/dimanu-py/instant-python/commit/cfd7d14cd1f515b513774df5f25f2180baee2cb3))
|
|
56
|
+
|
|
57
|
+
- **templates**: Include new model for value objects in project structure ([`39d2ba1`](https://github.com/dimanu-py/instant-python/commit/39d2ba101aab089addd80ce38ee1753c0dff7883))
|
|
58
|
+
|
|
59
|
+
- **templates**: Update value object templates to use new version that autovalidates using @validate decorator ([`186ecd5`](https://github.com/dimanu-py/instant-python/commit/186ecd518b8c9ca685a4db04598eb55e27fc3316))
|
|
60
|
+
|
|
61
|
+
- **templates**: Update project structure templates that were using old version of domain error an include error base class as well as rename the folder to errors instead of exceptions ([`5c363b6`](https://github.com/dimanu-py/instant-python/commit/5c363b6e126942531f6bb1ca5990ede9dc92bf18))
|
|
62
|
+
|
|
63
|
+
- **templates**: Implement new error template as base class for errors and let domain error inherit from it ([`1e15d5d`](https://github.com/dimanu-py/instant-python/commit/1e15d5d58dbb583fb681df648ddda573ef2c1679))
|
|
64
|
+
|
|
65
|
+
- **templates**: Update logger project structure template to include new handler and new logger implementation ([`b33bd1e`](https://github.com/dimanu-py/instant-python/commit/b33bd1e4021006b236607d28dd7472431bfc3ddf))
|
|
66
|
+
|
|
67
|
+
- **templates**: Include log middleware in fastapi application project structure if logger is selected ([`4ca7641`](https://github.com/dimanu-py/instant-python/commit/4ca76411a0f906ec51aac38653ec29cec9cdf9b1))
|
|
68
|
+
|
|
69
|
+
- **templates**: Update fastapi main application template to include log middleware if logger is selected too ([`c92810c`](https://github.com/dimanu-py/instant-python/commit/c92810ce79b199892a03ce7e29dd03daacf00130))
|
|
70
|
+
|
|
71
|
+
- **templates**: Create fastapi log middleware template ([`b196afc`](https://github.com/dimanu-py/instant-python/commit/b196afce1838180439c2a4a900816fdda5063ef5))
|
|
72
|
+
|
|
73
|
+
- **templates**: Modify fastapi main application template with new logger ([`021039d`](https://github.com/dimanu-py/instant-python/commit/021039de56a92bf018dbbbd68d57bc60bbd2126d))
|
|
74
|
+
|
|
75
|
+
- **templates**: Add new templates for logger implementation ([`d937478`](https://github.com/dimanu-py/instant-python/commit/d9374786fd1cb95c89933331b678ef6fa0e2d7cf))
|
|
76
|
+
|
|
77
|
+
- **templates**: Remove http_response and status_code templates ([`5f75969`](https://github.com/dimanu-py/instant-python/commit/5f759699f15818cf0b73e9c88e13cc4ff567dc57))
|
|
78
|
+
|
|
79
|
+
- **templates**: Use new response model in fastapi error handlers ([`ef4e543`](https://github.com/dimanu-py/instant-python/commit/ef4e54308ae783360fb0eaa75fab8642c896a0d7))
|
|
80
|
+
|
|
81
|
+
- **templates**: Substitute http_response and status_code templates from fastapi infra for success and error responses model ([`2c086be`](https://github.com/dimanu-py/instant-python/commit/2c086bebdb646d34447f82f2cdf93aef894b0e66))
|
|
82
|
+
|
|
83
|
+
- **templates**: Add ErrorResponse and SuccessResponse templates for fastapi application ([`9ec98f1`](https://github.com/dimanu-py/instant-python/commit/9ec98f1e8db59386f76c636825f889f117ff9871))
|
|
84
|
+
|
|
85
|
+
### 🪲 Bug Fixes
|
|
86
|
+
|
|
87
|
+
- **templates**: Add semantic release config to pyproject template if github actions is selected ([`a6533ce`](https://github.com/dimanu-py/instant-python/commit/a6533ceeb62b2877b5698f4ca39eb1e4cdb2a374))
|
|
88
|
+
|
|
89
|
+
- **templates**: Fix indentations in github actions templates ([`cd0d882`](https://github.com/dimanu-py/instant-python/commit/cd0d88293612e4e83206615b903ff40af69b5dac))
|
|
90
|
+
|
|
91
|
+
- **templates**: Add {% raw %} and {% endraw %} tags in github actions templates when they access repository variables ([`46ec5c1`](https://github.com/dimanu-py/instant-python/commit/46ec5c1489b937065b6ebd8a1723ae581adc9445))
|
|
92
|
+
|
|
93
|
+
- **templates**: Correct forma of helper scripts when makefile built in feature is selected and include custom hooks only if precommit feature is not selected ([`fe15d7e`](https://github.com/dimanu-py/instant-python/commit/fe15d7e7521bd70879490e1a96973477524518f3))
|
|
94
|
+
|
|
95
|
+
- **templates**: Correct error in conditional in makefile template ([`b126eed`](https://github.com/dimanu-py/instant-python/commit/b126eed146787cf254070e4169afbde1433b5ce2))
|
|
96
|
+
|
|
97
|
+
- **templates**: Use selected dependency manager for new make commands ([`80bf833`](https://github.com/dimanu-py/instant-python/commit/80bf8333d06facae66b3f15992f0d59bc5bab785))
|
|
98
|
+
|
|
99
|
+
- **templates**: Include makefile if precommit built in feature is selected ([`9dcec97`](https://github.com/dimanu-py/instant-python/commit/9dcec97973b1a91a78d2bdf11a3bd20e097e8c68))
|
|
100
|
+
|
|
101
|
+
- **templates**: Write correct name for aggregate template file in value objects project structure ([`d651243`](https://github.com/dimanu-py/instant-python/commit/d651243d7baf602f262ed63d31bc4b0d0c2c2952))
|
|
102
|
+
|
|
103
|
+
- **render**: Create jinja environment with autoscape argument enabled to avoid potential XSS attacks ([`976d459`](https://github.com/dimanu-py/instant-python/commit/976d459538ae8eea403c65300304e6405fec46b6))
|
|
104
|
+
|
|
105
|
+
- **templates**: Format correctly if statement in application.py template ([`409d606`](https://github.com/dimanu-py/instant-python/commit/409d6064d97ef016c34dab57d3c9456a47e6542f))
|
|
106
|
+
|
|
107
|
+
- **templates**: Include logger and migrator in fastapi application only if they are selected too for DDD and standard project templates ([`f5a8087`](https://github.com/dimanu-py/instant-python/commit/f5a80870d0ecdd2f47419ad5e51d20131649b422))
|
|
108
|
+
|
|
109
|
+
- **templates**: Include logger and migrator in fastapi application only if they are selected as built in feature too in clean architecture template ([`191d81f`](https://github.com/dimanu-py/instant-python/commit/191d81fd8ace560f3a6359bc9cf767c73c310d50))
|
|
110
|
+
|
|
111
|
+
### ⚙️ Build System
|
|
112
|
+
|
|
113
|
+
- Modify release job and semantic release configuration to be able to update uv.lock with the new version ([`2d52828`](https://github.com/dimanu-py/instant-python/commit/2d5282804956e4e5ab31c20b320663f9184f0a84))
|
|
114
|
+
|
|
115
|
+
- Update version in uv.lock ([`9d1bd2c`](https://github.com/dimanu-py/instant-python/commit/9d1bd2c380293c7e1635a03da0654e7084b9e1eb))
|
|
116
|
+
|
|
117
|
+
- Update semantic release to not update major version if is zero and to allow 0 major version ([`34d251e`](https://github.com/dimanu-py/instant-python/commit/34d251e8a57eafa595a0c54e314238f389218dd6))
|
|
118
|
+
|
|
119
|
+
- Remove test hook in precommit config ([`b8d451d`](https://github.com/dimanu-py/instant-python/commit/b8d451db1a024ae41a6958dbf9513801f3b69627))
|
|
120
|
+
|
|
121
|
+
- Remove final echo from makefile commands to let output of the command itself inform the user ([`cd895ad`](https://github.com/dimanu-py/instant-python/commit/cd895adacfe1e470a746165380369c9c365996e8))
|
|
122
|
+
|
|
123
|
+
- Remove -e command from echo in makefile ([`6a624a3`](https://github.com/dimanu-py/instant-python/commit/6a624a3cacf8b96adaeba20bb635b7e43d853002))
|
|
124
|
+
|
|
125
|
+
- Exclude resources folder from being formatted or linted ([`cf00038`](https://github.com/dimanu-py/instant-python/commit/cf000382ba13a0bc4dbda8eb346e9cdeb4fe4541))
|
|
126
|
+
|
|
127
|
+
- Remove AST check from pre commit hook ([`b46437e`](https://github.com/dimanu-py/instant-python/commit/b46437e804a1d54f13444e92827bd15d9fb2fd57))
|
|
128
|
+
|
|
129
|
+
- Add docs-serve command to makefile ([`9430934`](https://github.com/dimanu-py/instant-python/commit/943093498f168f49cc8b2593ea17911321f2e012))
|
|
130
|
+
|
|
131
|
+
- Improve messages of make command and add build and clean commands ([`6a0e428`](https://github.com/dimanu-py/instant-python/commit/6a0e4285d3bb43f9e88dad32fd2f93732ab271c8))
|
|
132
|
+
|
|
133
|
+
- Remove commitizen config as is not longer needed ([`0ed6a8b`](https://github.com/dimanu-py/instant-python/commit/0ed6a8bd50c6ebf30b71e4734fd3e4a81123b280))
|
|
134
|
+
|
|
135
|
+
### ♻️ Refactoring
|
|
136
|
+
|
|
137
|
+
- **templates**: Improve format of github action template ([`a01b4b0`](https://github.com/dimanu-py/instant-python/commit/a01b4b0c5f57ecbc5c66995abda26157b923ecd8))
|
|
138
|
+
|
|
139
|
+
- **templates**: Improve formatting of makefile and reorganize commands ([`efa8de5`](https://github.com/dimanu-py/instant-python/commit/efa8de5c5bae2bd79c8e4a0a01ef4aa016b0e54c))
|
|
140
|
+
|
|
141
|
+
- **templates**: Convert local setup and custom hooks into python scripts ([`12af46c`](https://github.com/dimanu-py/instant-python/commit/12af46c7cf2bd437f2f81b412ceb615a7cd563e5))
|
|
142
|
+
|
|
143
|
+
- **templates**: Convert add and remove dependency scripts into python scripts instead of bash scripts ([`0d29c14`](https://github.com/dimanu-py/instant-python/commit/0d29c14a7aa7a113fe365d1e30055ead52908b29))
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
## v0.8.2 (2025-07-16)
|
|
4
147
|
|
|
5
148
|
### 🪲 Bug Fixes
|
|
6
149
|
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: instant-python
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.9.1
|
|
4
4
|
Summary: Instant boilerplate generation for Python projects
|
|
5
5
|
Project-URL: documentation, https://dimanu-py.github.io/instant-python/
|
|
6
6
|
Project-URL: repository, https://github.com/dimanu-py/instant-python/
|
|
7
|
-
Author-email: dimanu-py <
|
|
7
|
+
Author-email: dimanu-py <dimanu.py@gmail.com>
|
|
8
8
|
License: Apache License
|
|
9
9
|
Version 2.0, January 2004
|
|
10
10
|
http://www.apache.org/licenses/
|
|
@@ -223,6 +223,8 @@ Requires-Dist: jinja2>=3.1.6
|
|
|
223
223
|
Requires-Dist: pyyaml>=6.0.2
|
|
224
224
|
Requires-Dist: questionary>=2.1.0
|
|
225
225
|
Requires-Dist: typer>=0.15.1
|
|
226
|
+
Provides-Extra: build
|
|
227
|
+
Requires-Dist: uv>=0.7.21; extra == 'build'
|
|
226
228
|
Description-Content-Type: text/markdown
|
|
227
229
|
|
|
228
230
|
<div align="center">
|