instant-python 0.6.2__tar.gz → 0.7.0__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.
Files changed (298) hide show
  1. {instant_python-0.6.2 → instant_python-0.7.0}/CHANGELOG.md +11 -0
  2. {instant_python-0.6.2 → instant_python-0.7.0}/PKG-INFO +1 -1
  3. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/commands/init.py +4 -0
  4. instant_python-0.7.0/instant_python/formatter/project_formatter.py +19 -0
  5. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/clean_architecture/source.yml.j2 +4 -1
  6. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/domain_driven_design/source.yml.j2 +5 -2
  7. instant_python-0.7.0/instant_python/templates/project_structure/fastapi_domain.yml.j2 +7 -0
  8. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/standard_project/source.yml.j2 +1 -0
  9. {instant_python-0.6.2 → instant_python-0.7.0}/pyproject.toml +1 -1
  10. instant_python-0.7.0/test/formatter/mock_project_formatter.py +15 -0
  11. instant_python-0.7.0/test/formatter/test_project_formatter.py +13 -0
  12. instant_python-0.7.0/test/project_creator/__init__.py +0 -0
  13. instant_python-0.7.0/test/render/__init__.py +0 -0
  14. {instant_python-0.6.2 → instant_python-0.7.0}/uv.lock +1 -1
  15. {instant_python-0.6.2 → instant_python-0.7.0}/.github/FUNDING.yml +0 -0
  16. {instant_python-0.6.2 → instant_python-0.7.0}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  17. {instant_python-0.6.2 → instant_python-0.7.0}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  18. {instant_python-0.6.2 → instant_python-0.7.0}/.github/actions/python_setup/action.yml +0 -0
  19. {instant_python-0.6.2 → instant_python-0.7.0}/.github/workflows/pages.yml +0 -0
  20. {instant_python-0.6.2 → instant_python-0.7.0}/.github/workflows/publish.yml +0 -0
  21. {instant_python-0.6.2 → instant_python-0.7.0}/.github/workflows/release.yml +0 -0
  22. {instant_python-0.6.2 → instant_python-0.7.0}/.github/workflows/test_lint.yml +0 -0
  23. {instant_python-0.6.2 → instant_python-0.7.0}/.gitignore +0 -0
  24. {instant_python-0.6.2 → instant_python-0.7.0}/.python-version +0 -0
  25. {instant_python-0.6.2 → instant_python-0.7.0}/LICENSE +0 -0
  26. {instant_python-0.6.2 → instant_python-0.7.0}/README.md +0 -0
  27. {instant_python-0.6.2 → instant_python-0.7.0}/cz.yaml +0 -0
  28. {instant_python-0.6.2 → instant_python-0.7.0}/docs/assets/favicon.svg +0 -0
  29. {instant_python-0.6.2 → instant_python-0.7.0}/docs/assets/logo.svg +0 -0
  30. {instant_python-0.6.2 → instant_python-0.7.0}/docs/downloads_macro.py +0 -0
  31. {instant_python-0.6.2 → instant_python-0.7.0}/docs/examples/configuration.md +0 -0
  32. {instant_python-0.6.2 → instant_python-0.7.0}/docs/examples/custom_template.md +0 -0
  33. {instant_python-0.6.2 → instant_python-0.7.0}/docs/guide/command_config.md +0 -0
  34. {instant_python-0.6.2 → instant_python-0.7.0}/docs/guide/command_init.md +0 -0
  35. {instant_python-0.6.2 → instant_python-0.7.0}/docs/home/contributing.md +0 -0
  36. {instant_python-0.6.2 → instant_python-0.7.0}/docs/home/getting_started.md +0 -0
  37. {instant_python-0.6.2 → instant_python-0.7.0}/docs/home/index.md +0 -0
  38. {instant_python-0.6.2 → instant_python-0.7.0}/docs/home/releases.md +0 -0
  39. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/__init__.py +0 -0
  40. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/cli.py +0 -0
  41. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/commands/__init__.py +0 -0
  42. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/commands/config.py +0 -0
  43. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/__init__.py +0 -0
  44. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/configuration_schema.py +0 -0
  45. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/dependency/__init__.py +0 -0
  46. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/dependency/dependency_configuration.py +0 -0
  47. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/dependency/not_dev_dependency_included_in_group.py +0 -0
  48. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/general/__init__.py +0 -0
  49. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/general/general_configuration.py +0 -0
  50. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/general/invalid_dependency_manager_value.py +0 -0
  51. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/general/invalid_license_value.py +0 -0
  52. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/general/invalid_python_version_value.py +0 -0
  53. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/git/__init__.py +0 -0
  54. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/git/git_configuration.py +0 -0
  55. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/git/git_user_or_email_not_present.py +0 -0
  56. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/parser/__init__.py +0 -0
  57. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/parser/config_key_not_present.py +0 -0
  58. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/parser/configuration_file_not_found.py +0 -0
  59. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/parser/empty_configuration_not_allowed.py +0 -0
  60. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/parser/missing_mandatory_fields.py +0 -0
  61. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/parser/parser.py +0 -0
  62. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/question/__init__.py +0 -0
  63. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/question/boolean_question.py +0 -0
  64. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/question/choice_question.py +0 -0
  65. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/question/conditional_question.py +0 -0
  66. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/question/free_text_question.py +0 -0
  67. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/question/multiple_choice_question.py +0 -0
  68. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/question/question.py +0 -0
  69. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/question/questionary.py +0 -0
  70. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/question_wizard.py +0 -0
  71. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/step/__init__.py +0 -0
  72. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/step/dependencies_step.py +0 -0
  73. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/step/general_step.py +0 -0
  74. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/step/git_step.py +0 -0
  75. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/step/steps.py +0 -0
  76. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/step/template_step.py +0 -0
  77. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/template/__init__.py +0 -0
  78. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/template/bounded_context_not_applicable.py +0 -0
  79. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/template/bounded_context_not_especified.py +0 -0
  80. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/template/invalid_built_in_features_values.py +0 -0
  81. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/template/invalid_template_value.py +0 -0
  82. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/configuration/template/template_configuration.py +0 -0
  83. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/dependency_manager/__init__.py +0 -0
  84. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/dependency_manager/command_execution_error.py +0 -0
  85. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/dependency_manager/dependency_manager.py +0 -0
  86. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/dependency_manager/dependency_manager_factory.py +0 -0
  87. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/dependency_manager/pdm_dependency_manager.py +0 -0
  88. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/dependency_manager/unknown_dependency_manager_error.py +0 -0
  89. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/dependency_manager/uv_dependency_manager.py +0 -0
  90. {instant_python-0.6.2/instant_python/git → instant_python-0.7.0/instant_python/formatter}/__init__.py +0 -0
  91. {instant_python-0.6.2/instant_python/project_creator → instant_python-0.7.0/instant_python/git}/__init__.py +0 -0
  92. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/git/git_configurer.py +0 -0
  93. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/instant_python_typer.py +0 -0
  94. {instant_python-0.6.2/instant_python/render → instant_python-0.7.0/instant_python/project_creator}/__init__.py +0 -0
  95. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/project_creator/directory.py +0 -0
  96. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/project_creator/file.py +0 -0
  97. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/project_creator/file_has_not_been_created.py +0 -0
  98. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/project_creator/file_system.py +0 -0
  99. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/project_creator/node.py +0 -0
  100. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/project_creator/unknown_node_typer_error.py +0 -0
  101. {instant_python-0.6.2/instant_python/shared → instant_python-0.7.0/instant_python/render}/__init__.py +0 -0
  102. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/render/custom_project_renderer.py +0 -0
  103. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/render/jinja_custom_filters.py +0 -0
  104. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/render/jinja_environment.py +0 -0
  105. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/render/jinja_project_renderer.py +0 -0
  106. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/render/template_file_not_found_error.py +0 -0
  107. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/render/unknown_template_error.py +0 -0
  108. {instant_python-0.6.2/instant_python/templates/boilerplate/event_bus → instant_python-0.7.0/instant_python/shared}/__init__.py +0 -0
  109. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/shared/application_error.py +0 -0
  110. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/shared/error_types.py +0 -0
  111. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/shared/supported_built_in_features.py +0 -0
  112. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/shared/supported_licenses.py +0 -0
  113. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/shared/supported_managers.py +0 -0
  114. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/shared/supported_python_versions.py +0 -0
  115. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/shared/supported_templates.py +0 -0
  116. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/.gitignore +0 -0
  117. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/.pre-commit-config.yml +0 -0
  118. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/.python-version +0 -0
  119. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/LICENSE +0 -0
  120. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/README.md +0 -0
  121. {instant_python-0.6.2/instant_python/templates/boilerplate/exceptions → instant_python-0.7.0/instant_python/templates/boilerplate/event_bus}/__init__.py +0 -0
  122. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/event_bus/aggregate_root.py +0 -0
  123. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/event_bus/domain_event.py +0 -0
  124. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/event_bus/domain_event_json_deserializer.py +0 -0
  125. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/event_bus/domain_event_json_serializer.py +0 -0
  126. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/event_bus/domain_event_subscriber.py +0 -0
  127. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/event_bus/event_bus.py +0 -0
  128. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/event_bus/exchange_type.py +0 -0
  129. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/event_bus/mock_event_bus.py +0 -0
  130. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/event_bus/rabbit_mq_configurer.py +0 -0
  131. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/event_bus/rabbit_mq_connection.py +0 -0
  132. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/event_bus/rabbit_mq_consumer.py +0 -0
  133. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/event_bus/rabbit_mq_event_bus.py +0 -0
  134. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/event_bus/rabbit_mq_queue_formatter.py +0 -0
  135. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/event_bus/rabbit_mq_settings.py +0 -0
  136. {instant_python-0.6.2/instant_python/templates/boilerplate/fastapi → instant_python-0.7.0/instant_python/templates/boilerplate/exceptions}/__init__.py +0 -0
  137. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/exceptions/domain_error.py +0 -0
  138. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/exceptions/domain_event_type_not_found_error.py +0 -0
  139. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/exceptions/incorrect_value_type_error.py +0 -0
  140. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/exceptions/invalid_id_format_error.py +0 -0
  141. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/exceptions/invalid_negative_value_error.py +0 -0
  142. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/exceptions/rabbit_mq_connection_not_established_error.py +0 -0
  143. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/exceptions/required_value_error.py +0 -0
  144. {instant_python-0.6.2/instant_python/templates/boilerplate/logger → instant_python-0.7.0/instant_python/templates/boilerplate/fastapi}/__init__.py +0 -0
  145. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/fastapi/application.py +0 -0
  146. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/fastapi/http_response.py +0 -0
  147. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/fastapi/lifespan.py +0 -0
  148. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/fastapi/status_code.py +0 -0
  149. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/github/action.yml +0 -0
  150. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/github/lint.yml +0 -0
  151. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/github/test.yml +0 -0
  152. {instant_python-0.6.2/instant_python/templates/boilerplate/persistence → instant_python-0.7.0/instant_python/templates/boilerplate/logger}/__init__.py +0 -0
  153. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/logger/json_formatter.py +0 -0
  154. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/logger/logger.py +0 -0
  155. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/mypy.ini +0 -0
  156. {instant_python-0.6.2/instant_python/templates/boilerplate/persistence/async → instant_python-0.7.0/instant_python/templates/boilerplate/persistence}/__init__.py +0 -0
  157. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/persistence/alembic_migrator.py +0 -0
  158. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/persistence/async/README.md +0 -0
  159. {instant_python-0.6.2/instant_python/templates/boilerplate/persistence/synchronous → instant_python-0.7.0/instant_python/templates/boilerplate/persistence/async}/__init__.py +0 -0
  160. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/persistence/async/alembic.ini +0 -0
  161. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/persistence/async/async_engine_fixture.py +0 -0
  162. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/persistence/async/env.py +0 -0
  163. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/persistence/async/models_metadata.py +0 -0
  164. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/persistence/async/postgres_settings.py +0 -0
  165. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/persistence/async/script.py.mako +0 -0
  166. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/persistence/async/sqlalchemy_repository.py +0 -0
  167. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/persistence/base.py +0 -0
  168. {instant_python-0.6.2/instant_python/templates/boilerplate/value_object → instant_python-0.7.0/instant_python/templates/boilerplate/persistence/synchronous}/__init__.py +0 -0
  169. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/persistence/synchronous/session_maker.py +0 -0
  170. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/persistence/synchronous/sqlalchemy_repository.py +0 -0
  171. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/pyproject.toml +0 -0
  172. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/pytest.ini +0 -0
  173. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/random_generator.py +0 -0
  174. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/scripts/add_dependency.sh +0 -0
  175. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/scripts/create_aggregate.py +0 -0
  176. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/scripts/insert_template.py +0 -0
  177. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/scripts/integration.sh +0 -0
  178. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/scripts/local_setup.sh +0 -0
  179. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/scripts/makefile +0 -0
  180. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/scripts/post-merge +0 -0
  181. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/scripts/pre-commit +0 -0
  182. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/scripts/pre-push +0 -0
  183. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/scripts/remove_dependency.sh +0 -0
  184. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/scripts/unit.sh +0 -0
  185. {instant_python-0.6.2/test → instant_python-0.7.0/instant_python/templates/boilerplate/value_object}/__init__.py +0 -0
  186. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/value_object/int_value_object.py +0 -0
  187. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/value_object/string_value_object.py +0 -0
  188. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/value_object/uuid.py +0 -0
  189. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/boilerplate/value_object/value_object.py +0 -0
  190. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/alembic_migrator.yml.j2 +0 -0
  191. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/async_alembic.yml.j2 +0 -0
  192. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/async_sqlalchemy.yml.j2 +0 -0
  193. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/clean_architecture/main_structure.yml.j2 +0 -0
  194. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/clean_architecture/test.yml.j2 +0 -0
  195. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/domain_driven_design/bounded_context.yml.j2 +0 -0
  196. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/domain_driven_design/main_structure.yml.j2 +0 -0
  197. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/domain_driven_design/test.yml.j2 +0 -0
  198. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/event_bus_domain.yml.j2 +0 -0
  199. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/event_bus_infra.yml.j2 +0 -0
  200. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/fastapi_app.yml.j2 +0 -0
  201. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/fastapi_infra.yml.j2 +0 -0
  202. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/github_action.yml.j2 +0 -0
  203. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/gitignore.yml.j2 +0 -0
  204. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/license.yml.j2 +0 -0
  205. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/logger.yml.j2 +0 -0
  206. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/macros.j2 +0 -0
  207. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/makefile.yml.j2 +0 -0
  208. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/mypy.yml.j2 +0 -0
  209. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/pre_commit.yml.j2 +0 -0
  210. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/pyproject.yml.j2 +0 -0
  211. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/pytest.yml.j2 +0 -0
  212. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/python_version.yml.j2 +0 -0
  213. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/readme.yml.j2 +0 -0
  214. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/standard_project/main_structure.yml.j2 +0 -0
  215. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/standard_project/test.yml.j2 +0 -0
  216. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/synchronous_sqlalchemy.yml.j2 +0 -0
  217. {instant_python-0.6.2 → instant_python-0.7.0}/instant_python/templates/project_structure/value_objects.yml.j2 +0 -0
  218. {instant_python-0.6.2 → instant_python-0.7.0}/makefile +0 -0
  219. {instant_python-0.6.2 → instant_python-0.7.0}/mkdocs.yml +0 -0
  220. {instant_python-0.6.2 → instant_python-0.7.0}/mypy.ini +0 -0
  221. {instant_python-0.6.2 → instant_python-0.7.0}/scripts/add_dependency.sh +0 -0
  222. {instant_python-0.6.2 → instant_python-0.7.0}/scripts/remove_dependency.sh +0 -0
  223. {instant_python-0.6.2/test/configuration → instant_python-0.7.0/test}/__init__.py +0 -0
  224. {instant_python-0.6.2/test/configuration/dependency → instant_python-0.7.0/test/configuration}/__init__.py +0 -0
  225. {instant_python-0.6.2/test/configuration/general → instant_python-0.7.0/test/configuration/dependency}/__init__.py +0 -0
  226. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/dependency/dependency_configuration_mother.py +0 -0
  227. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/dependency/test_dependency_configuration.py +0 -0
  228. {instant_python-0.6.2/test/configuration/git → instant_python-0.7.0/test/configuration/general}/__init__.py +0 -0
  229. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/general/general_configuration_mother.py +0 -0
  230. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/general/test_general_configuration.py +0 -0
  231. {instant_python-0.6.2/test/configuration/parser → instant_python-0.7.0/test/configuration/git}/__init__.py +0 -0
  232. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/git/git_configuration_mother.py +0 -0
  233. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/git/test_git_configuration.py +0 -0
  234. {instant_python-0.6.2/test/configuration/parser/resources → instant_python-0.7.0/test/configuration/parser}/__init__.py +0 -0
  235. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/parser/approvaltests_config.json +0 -0
  236. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/parser/approved_files/TestParser.test_should_parse_configuration.approved.txt +0 -0
  237. {instant_python-0.6.2/test/configuration/question → instant_python-0.7.0/test/configuration/parser/resources}/__init__.py +0 -0
  238. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/parser/resources/config.yml +0 -0
  239. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/parser/resources/empty_config.yml +0 -0
  240. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/parser/resources/missing_dependencies_fields_config.yml +0 -0
  241. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/parser/resources/missing_general_fields_config.yml +0 -0
  242. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/parser/resources/missing_git_fields_config.yml +0 -0
  243. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/parser/resources/missing_keys_config.yml +0 -0
  244. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/parser/resources/missing_template_fields_config.yml +0 -0
  245. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/parser/test_parser.py +0 -0
  246. {instant_python-0.6.2/test/configuration/template → instant_python-0.7.0/test/configuration/question}/__init__.py +0 -0
  247. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/question/test_boolean_question.py +0 -0
  248. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/question/test_choice_question.py +0 -0
  249. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/question/test_free_text_question.py +0 -0
  250. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/question/test_multiple_choice_question.py +0 -0
  251. {instant_python-0.6.2/test/dependency_manager → instant_python-0.7.0/test/configuration/template}/__init__.py +0 -0
  252. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/template/template_configuration_mother.py +0 -0
  253. {instant_python-0.6.2 → instant_python-0.7.0}/test/configuration/template/test_template_configuration.py +0 -0
  254. {instant_python-0.6.2/test/git → instant_python-0.7.0/test/dependency_manager}/__init__.py +0 -0
  255. {instant_python-0.6.2 → instant_python-0.7.0}/test/dependency_manager/mock_pdm_dependency_manager.py +0 -0
  256. {instant_python-0.6.2 → instant_python-0.7.0}/test/dependency_manager/mock_uv_dependency_manager.py +0 -0
  257. {instant_python-0.6.2 → instant_python-0.7.0}/test/dependency_manager/test_pdm_dependency_manager.py +0 -0
  258. {instant_python-0.6.2 → instant_python-0.7.0}/test/dependency_manager/test_uv_dependency_manager.py +0 -0
  259. {instant_python-0.6.2/test/project_creator → instant_python-0.7.0/test/formatter}/__init__.py +0 -0
  260. {instant_python-0.6.2/test/render → instant_python-0.7.0/test/git}/__init__.py +0 -0
  261. {instant_python-0.6.2 → instant_python-0.7.0}/test/git/mock_git_configurer.py +0 -0
  262. {instant_python-0.6.2 → instant_python-0.7.0}/test/git/test_git_configurer.py +0 -0
  263. {instant_python-0.6.2 → instant_python-0.7.0}/test/project_creator/approvaltests_config.json +0 -0
  264. {instant_python-0.6.2 → instant_python-0.7.0}/test/project_creator/approved_files/TestFileSystem.test_should_create_file_system_in_disk.rendered_custom_project_structure.json.approved.txt +0 -0
  265. {instant_python-0.6.2 → instant_python-0.7.0}/test/project_creator/approved_files/TestFileSystem.test_should_create_file_system_in_disk.rendered_project_structure.json.approved.txt +0 -0
  266. {instant_python-0.6.2 → instant_python-0.7.0}/test/project_creator/approved_files/TestFileSystem.test_should_create_folders_and_files.approved.txt +0 -0
  267. {instant_python-0.6.2 → instant_python-0.7.0}/test/project_creator/approved_files/TestFileSystem.test_should_generate_file_system_tree.approved.txt +0 -0
  268. {instant_python-0.6.2 → instant_python-0.7.0}/test/project_creator/directory_mother.py +0 -0
  269. {instant_python-0.6.2 → instant_python-0.7.0}/test/project_creator/resources/boilerplate/exceptions/domain_error.py +0 -0
  270. {instant_python-0.6.2 → instant_python-0.7.0}/test/project_creator/resources/boilerplate/exceptions/domain_error_simple.py +0 -0
  271. {instant_python-0.6.2 → instant_python-0.7.0}/test/project_creator/resources/clean_architecture/main_structure.yml.j2 +0 -0
  272. {instant_python-0.6.2 → instant_python-0.7.0}/test/project_creator/resources/config.yml +0 -0
  273. {instant_python-0.6.2 → instant_python-0.7.0}/test/project_creator/resources/rendered_custom_project_structure.json +0 -0
  274. {instant_python-0.6.2 → instant_python-0.7.0}/test/project_creator/resources/rendered_project_structure.json +0 -0
  275. {instant_python-0.6.2 → instant_python-0.7.0}/test/project_creator/test_directory.py +0 -0
  276. {instant_python-0.6.2 → instant_python-0.7.0}/test/project_creator/test_file.py +0 -0
  277. {instant_python-0.6.2 → instant_python-0.7.0}/test/project_creator/test_file_system.py +0 -0
  278. {instant_python-0.6.2 → instant_python-0.7.0}/test/random_generator.py +0 -0
  279. {instant_python-0.6.2 → instant_python-0.7.0}/test/render/approvaltests_config.json +0 -0
  280. {instant_python-0.6.2 → instant_python-0.7.0}/test/render/approved_files/TestCustomProjectRenderer.test_should_render_custom_template.approved.txt +0 -0
  281. {instant_python-0.6.2 → instant_python-0.7.0}/test/render/approved_files/TestJinjaProjectRenderer.test_should_render_template_for.clean_architecture_config.yml.approved.txt +0 -0
  282. {instant_python-0.6.2 → instant_python-0.7.0}/test/render/approved_files/TestJinjaProjectRenderer.test_should_render_template_for.domain_driven_design_config.yml.approved.txt +0 -0
  283. {instant_python-0.6.2 → instant_python-0.7.0}/test/render/approved_files/TestJinjaProjectRenderer.test_should_render_template_for.received.txt +0 -0
  284. {instant_python-0.6.2 → instant_python-0.7.0}/test/render/approved_files/TestJinjaProjectRenderer.test_should_render_template_for.standard_project_with_dependency_config.yml.approved.txt +0 -0
  285. {instant_python-0.6.2 → instant_python-0.7.0}/test/render/approved_files/TestJinjaProjectRenderer.test_should_render_template_for.standard_project_with_git_config.yml.approved.txt +0 -0
  286. {instant_python-0.6.2 → instant_python-0.7.0}/test/render/resources/clean_architecture/main_structure.yml.j2 +0 -0
  287. {instant_python-0.6.2 → instant_python-0.7.0}/test/render/resources/clean_architecture_config.yml +0 -0
  288. {instant_python-0.6.2 → instant_python-0.7.0}/test/render/resources/custom_template.yml +0 -0
  289. {instant_python-0.6.2 → instant_python-0.7.0}/test/render/resources/domain_driven_design/main_structure.yml.j2 +0 -0
  290. {instant_python-0.6.2 → instant_python-0.7.0}/test/render/resources/domain_driven_design_config.yml +0 -0
  291. {instant_python-0.6.2 → instant_python-0.7.0}/test/render/resources/standard_project/main_structure.yml.j2 +0 -0
  292. {instant_python-0.6.2 → instant_python-0.7.0}/test/render/resources/standard_project_with_dependency_config.yml +0 -0
  293. {instant_python-0.6.2 → instant_python-0.7.0}/test/render/resources/standard_project_with_git_config.yml +0 -0
  294. {instant_python-0.6.2 → instant_python-0.7.0}/test/render/resources/test_template.j2 +0 -0
  295. {instant_python-0.6.2 → instant_python-0.7.0}/test/render/test_custom_project_renderer.py +0 -0
  296. {instant_python-0.6.2 → instant_python-0.7.0}/test/render/test_jinja_environment.py +0 -0
  297. {instant_python-0.6.2 → instant_python-0.7.0}/test/render/test_jinja_project_renderer.py +0 -0
  298. {instant_python-0.6.2 → instant_python-0.7.0}/tox.ini +0 -0
@@ -1,3 +1,14 @@
1
+ ## 0.7.0 (2025-06-30)
2
+
3
+ ### ✨ Features
4
+
5
+ - **commands**: call project formatter in 'init' command once the file system has been generated
6
+ - **formatter**: add project formatter to be able to format included code in the project
7
+
8
+ ### 🐛 Bug Fixes
9
+
10
+ - **templates**: include DomainError template when using fastapi application built in feature
11
+
1
12
  ## 0.6.2 (2025-06-30)
2
13
 
3
14
  ### 🐛 Bug Fixes
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: instant-python
3
- Version: 0.6.2
3
+ Version: 0.7.0
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/
@@ -2,6 +2,7 @@ import typer
2
2
 
3
3
  from instant_python.configuration.parser.parser import Parser
4
4
  from instant_python.dependency_manager.dependency_manager_factory import DependencyManagerFactory
5
+ from instant_python.formatter.project_formatter import ProjectFormatter
5
6
  from instant_python.git.git_configurer import GitConfigurer
6
7
  from instant_python.project_creator.file_system import FileSystem
7
8
  from instant_python.render.custom_project_renderer import CustomProjectRenderer
@@ -44,6 +45,9 @@ def create_new_project(
44
45
  dependencies=configuration.dependencies,
45
46
  )
46
47
 
48
+ formatter = ProjectFormatter(project_directory=configuration.project_folder_name)
49
+ formatter.format()
50
+
47
51
  git_configurer = GitConfigurer(project_directory=configuration.project_folder_name)
48
52
  git_configurer.setup_repository(configuration.git)
49
53
  configuration.save_on_project_folder()
@@ -0,0 +1,19 @@
1
+ import subprocess
2
+
3
+
4
+ class ProjectFormatter:
5
+ def __init__(self, project_directory: str) -> None:
6
+ self._project_directory = project_directory
7
+
8
+ def format(self) -> None:
9
+ self._run_command(command="uvx ruff format")
10
+
11
+ def _run_command(self, command: str) -> None:
12
+ subprocess.run(
13
+ command,
14
+ shell=True,
15
+ check=True,
16
+ cwd=self._project_directory,
17
+ stdout=subprocess.DEVNULL,
18
+ stderr=subprocess.PIPE,
19
+ )
@@ -13,7 +13,7 @@
13
13
  - name: domain
14
14
  type: directory
15
15
  python: True
16
- {% if ["value_objects", "event_bus"] | is_in(template.built_in_features) %}
16
+ {% if ["value_objects", "event_bus", "fastapi_application"] | is_in(template.built_in_features) %}
17
17
  children:
18
18
  {% if "value_objects" in template.built_in_features %}
19
19
  {{ macros.include_and_indent("project_structure/value_objects.yml.j2", 8) }}
@@ -21,6 +21,9 @@
21
21
  {% if "event_bus" in template.built_in_features %}
22
22
  {{ macros.include_and_indent("project_structure/event_bus_domain.yml.j2", 8) }}
23
23
  {% endif %}
24
+ {% if "fastapi_application" in template.built_in_features %}
25
+ {{ macros.include_and_indent("project_structure/fastapi_domain.yml.j2", 8) }}
26
+ {% endif %}
24
27
  {% endif %}
25
28
  - name: application
26
29
  type: directory
@@ -13,9 +13,9 @@
13
13
  - name: shared
14
14
  type: directory
15
15
  python: True
16
- {% if ["value_objects", "synchronous_sqlalchemy", "event_bus", "async_alembic"] | is_in(template.built_in_features) %}
16
+ {% if ["value_objects", "synchronous_sqlalchemy", "event_bus", "async_alembic", "fastapi_application"] | is_in(template.built_in_features) %}
17
17
  children:
18
- {% if ["value_objects", "event_bus"] | is_in(template.built_in_features) %}
18
+ {% if ["value_objects", "event_bus", "fastapi_application"] | is_in(template.built_in_features) %}
19
19
  - name: domain
20
20
  type: directory
21
21
  python: True
@@ -26,6 +26,9 @@
26
26
  {% if "event_bus" in template.built_in_features %}
27
27
  {{ macros.include_and_indent("project_structure/event_bus_domain.yml.j2", 12) }}
28
28
  {% endif %}
29
+ {% if "fastapi_application" in template.built_in_features %}
30
+ {{ macros.include_and_indent("project_structure/fastapi_domain.yml.j2", 12) }}
31
+ {% endif %}
29
32
  {% endif %}
30
33
  {% if ["synchronous_sqlalchemy", "event_bus", "logger", "async_sqlalchemy", "async_alembic", "fastapi_application"] | is_in(template.built_in_features) %}
31
34
  - name: infra
@@ -0,0 +1,7 @@
1
+ - name: exceptions
2
+ type: directory
3
+ python: True
4
+ children:
5
+ - name: exceptions/domain_error
6
+ type: boilerplate_file
7
+ extension: .py
@@ -26,5 +26,6 @@
26
26
  {% if "fastapi_application" in template.built_in_features %}
27
27
  {{ macros.include_and_indent("project_structure/fastapi_app.yml.j2", 4) }}
28
28
  {{ macros.include_and_indent("project_structure/fastapi_infra.yml.j2", 4) }}
29
+ {{ macros.include_and_indent("project_structure/fastapi_domain.yml.j2", 4) }}
29
30
  {% endif %}
30
31
  {% endif %}
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "instant-python"
7
- version = "0.6.2"
7
+ version = "0.7.0"
8
8
  description = "Instant boilerplate generation for Python projects"
9
9
  readme = "README.md"
10
10
  license = { file = "LICENSE" }
@@ -0,0 +1,15 @@
1
+ from expects import expect, contain
2
+
3
+ from instant_python.formatter.project_formatter import ProjectFormatter
4
+
5
+
6
+ class MockProjectFormatter(ProjectFormatter):
7
+ def __init__(self, project_directory: str) -> None:
8
+ super().__init__(project_directory)
9
+ self._commands: list[str] = []
10
+
11
+ def _run_command(self, command: str) -> None:
12
+ self._commands.append(command)
13
+
14
+ def expect_to_have_been_called_with(self, command: str) -> None:
15
+ expect(self._commands).to(contain(command))
@@ -0,0 +1,13 @@
1
+ import os
2
+
3
+ from test.formatter.mock_project_formatter import MockProjectFormatter
4
+
5
+
6
+ class TestProjectFormatter:
7
+ def setup_method(self) -> None:
8
+ self._formatter = MockProjectFormatter(project_directory=os.getcwd())
9
+
10
+ def test_should_format_project_files(self) -> None:
11
+ self._formatter.format()
12
+
13
+ self._formatter.expect_to_have_been_called_with("uvx ruff format")
File without changes
File without changes
@@ -378,7 +378,7 @@ wheels = [
378
378
 
379
379
  [[package]]
380
380
  name = "instant-python"
381
- version = "0.6.2"
381
+ version = "0.7.0"
382
382
  source = { editable = "." }
383
383
  dependencies = [
384
384
  { name = "jinja2" },
File without changes
File without changes
File without changes