instant-python 0.14.0__tar.gz → 0.15.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.
Files changed (460) hide show
  1. {instant_python-0.14.0 → instant_python-0.15.1}/CHANGELOG.md +449 -0
  2. {instant_python-0.14.0 → instant_python-0.15.1}/PKG-INFO +24 -28
  3. {instant_python-0.14.0 → instant_python-0.15.1}/README.md +23 -27
  4. instant_python-0.15.1/docs/getting_started/first_steps.md +88 -0
  5. instant_python-0.15.1/docs/getting_started/installation.md +40 -0
  6. instant_python-0.15.1/docs/guide/command_config.md +306 -0
  7. instant_python-0.15.1/docs/guide/command_init.md +67 -0
  8. instant_python-0.15.1/docs/guide/custom_projects.md +207 -0
  9. instant_python-0.14.0/docs/guide/command_init.md → instant_python-0.15.1/docs/guide/default_features.md +173 -217
  10. instant_python-0.15.1/docs/guide/index.md +38 -0
  11. {instant_python-0.14.0 → instant_python-0.15.1}/docs/home/index.md +23 -28
  12. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/config/application/config_generator.py +3 -8
  13. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/config/delivery/cli.py +3 -3
  14. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/config/domain/config_writer.py +1 -1
  15. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/config/infra/writer/yaml_config_writer.py +1 -1
  16. instant_python-0.15.1/instant_python/initialize/application/project_initializer.py +47 -0
  17. instant_python-0.15.1/instant_python/initialize/delivery/cli.py +48 -0
  18. instant_python-0.15.1/instant_python/initialize/domain/config_repository.py +14 -0
  19. instant_python-0.15.1/instant_python/initialize/domain/env_manager.py +9 -0
  20. instant_python-0.15.1/instant_python/initialize/domain/node.py +73 -0
  21. instant_python-0.14.0/instant_python/initialize/domain/config_repository.py → instant_python-0.15.1/instant_python/initialize/domain/project_formatter.py +2 -2
  22. instant_python-0.15.1/instant_python/initialize/domain/project_renderer.py +10 -0
  23. instant_python-0.15.1/instant_python/initialize/domain/project_structure.py +77 -0
  24. instant_python-0.15.1/instant_python/initialize/domain/project_writer.py +20 -0
  25. instant_python-0.15.1/instant_python/initialize/domain/version_control_configurer.py +9 -0
  26. instant_python-0.15.1/instant_python/initialize/infra/env_manager/env_manager_factory.py +27 -0
  27. instant_python-0.14.0/instant_python/dependency_manager/pdm_dependency_manager.py → instant_python-0.15.1/instant_python/initialize/infra/env_manager/pdm_env_manager.py +23 -26
  28. instant_python-0.15.1/instant_python/initialize/infra/env_manager/system_console.py +65 -0
  29. instant_python-0.14.0/instant_python/dependency_manager/uv_dependency_manager.py → instant_python-0.15.1/instant_python/initialize/infra/env_manager/uv_env_manager.py +23 -26
  30. instant_python-0.15.1/instant_python/initialize/infra/formatter/ruff_project_formatter.py +10 -0
  31. instant_python-0.15.1/instant_python/initialize/infra/persistence/yaml_config_repository.py +30 -0
  32. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/initialize/infra/renderer/jinja_environment.py +9 -5
  33. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/initialize/infra/renderer/jinja_project_renderer.py +22 -14
  34. instant_python-0.15.1/instant_python/initialize/infra/version_control/git_configurer.py +29 -0
  35. instant_python-0.15.1/instant_python/initialize/infra/writer/file_system_project_writer.py +23 -0
  36. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/shared/application_error.py +1 -6
  37. instant_python-0.15.1/instant_python/shared/domain/config_schema.py +113 -0
  38. {instant_python-0.14.0/instant_python/config → instant_python-0.15.1/instant_python/shared}/domain/dependency_config.py +3 -3
  39. {instant_python-0.14.0/instant_python/config → instant_python-0.15.1/instant_python/shared}/domain/general_config.py +7 -7
  40. {instant_python-0.14.0/instant_python/config → instant_python-0.15.1/instant_python/shared}/domain/git_config.py +1 -3
  41. {instant_python-0.14.0/instant_python/config → instant_python-0.15.1/instant_python/shared}/domain/template_config.py +11 -10
  42. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/event_bus/domain_event_json_deserializer.py +1 -3
  43. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/event_bus/domain_event_subscriber.py +1 -1
  44. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/event_bus/event_aggregate.py +5 -0
  45. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/event_bus/mock_event_bus.py +7 -8
  46. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/event_bus/rabbit_mq_configurer.py +3 -9
  47. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/event_bus/rabbit_mq_connection.py +2 -6
  48. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/event_bus/rabbit_mq_queue_formatter.py +7 -0
  49. instant_python-0.15.1/instant_python/templates/project_structure/alembic_migrator.yml.j2 +4 -0
  50. instant_python-0.15.1/instant_python/templates/project_structure/async_alembic.yml.j2 +25 -0
  51. instant_python-0.15.1/instant_python/templates/project_structure/async_sqlalchemy.yml.j2 +20 -0
  52. instant_python-0.15.1/instant_python/templates/project_structure/citation.yml.j2 +4 -0
  53. instant_python-0.15.1/instant_python/templates/project_structure/clean_architecture/main_structure.yml.j2 +39 -0
  54. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/project_structure/clean_architecture/source.yml.j2 +10 -10
  55. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/project_structure/clean_architecture/test.yml.j2 +7 -5
  56. instant_python-0.15.1/instant_python/templates/project_structure/domain_driven_design/main_structure.yml.j2 +39 -0
  57. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/project_structure/domain_driven_design/source.yml.j2 +11 -11
  58. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/project_structure/domain_driven_design/test.yml.j2 +8 -6
  59. instant_python-0.15.1/instant_python/templates/project_structure/event_bus_domain.yml.j2 +56 -0
  60. instant_python-0.15.1/instant_python/templates/project_structure/event_bus_infra.yml.j2 +40 -0
  61. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/project_structure/fastapi_app.yml.j2 +12 -8
  62. instant_python-0.15.1/instant_python/templates/project_structure/fastapi_domain.yml.j2 +12 -0
  63. instant_python-0.15.1/instant_python/templates/project_structure/fastapi_infra.yml.j2 +12 -0
  64. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/project_structure/github_action.yml.j2 +10 -7
  65. instant_python-0.15.1/instant_python/templates/project_structure/github_issues_template.yml.j2 +14 -0
  66. instant_python-0.15.1/instant_python/templates/project_structure/gitignore.yml.j2 +3 -0
  67. instant_python-0.15.1/instant_python/templates/project_structure/license.yml.j2 +3 -0
  68. instant_python-0.15.1/instant_python/templates/project_structure/logger.yml.j2 +16 -0
  69. instant_python-0.15.1/instant_python/templates/project_structure/makefile.yml.j2 +3 -0
  70. instant_python-0.15.1/instant_python/templates/project_structure/mypy.yml.j2 +4 -0
  71. instant_python-0.15.1/instant_python/templates/project_structure/precommit_hook.yml.j2 +4 -0
  72. instant_python-0.15.1/instant_python/templates/project_structure/pyproject.yml.j2 +4 -0
  73. instant_python-0.15.1/instant_python/templates/project_structure/pytest.yml.j2 +4 -0
  74. instant_python-0.15.1/instant_python/templates/project_structure/python_version.yml.j2 +3 -0
  75. instant_python-0.15.1/instant_python/templates/project_structure/readme.yml.j2 +4 -0
  76. instant_python-0.15.1/instant_python/templates/project_structure/security.yml.j2 +4 -0
  77. instant_python-0.15.1/instant_python/templates/project_structure/standard_project/main_structure.yml.j2 +39 -0
  78. instant_python-0.15.1/instant_python/templates/project_structure/standard_project/source.yml.j2 +28 -0
  79. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/project_structure/standard_project/test.yml.j2 +7 -5
  80. instant_python-0.15.1/instant_python/templates/project_structure/synchronous_sqlalchemy.yml.j2 +20 -0
  81. instant_python-0.15.1/instant_python/templates/project_structure/test_value_objects.yml.j2 +32 -0
  82. instant_python-0.15.1/instant_python/templates/project_structure/value_objects.yml.j2 +64 -0
  83. {instant_python-0.14.0 → instant_python-0.15.1}/mkdocs.yml +14 -12
  84. {instant_python-0.14.0 → instant_python-0.15.1}/pyproject.toml +2 -2
  85. {instant_python-0.14.0 → instant_python-0.15.1}/test/config/application/test_config_generator.py +2 -10
  86. {instant_python-0.14.0 → instant_python-0.15.1}/test/config/infra/writer/test_yaml_config_writer.py +1 -1
  87. instant_python-0.15.1/test/initialize/application/test_project_initializer.py +67 -0
  88. instant_python-0.15.1/test/initialize/delivery/approved_files/TestInitCli.test_should_initialize_project_with_custom_project_structure.approved.txt +1 -0
  89. instant_python-0.14.0/test/initialize/delivery/approved_files/TestInitCli.test_initializes_project_with_template_section_combinations.approved.txt → instant_python-0.15.1/test/initialize/delivery/approved_files/TestInitCli.test_should_initialize_project_with_template_section_combinations.approved.txt +13 -13
  90. {instant_python-0.14.0 → instant_python-0.15.1}/test/initialize/delivery/test_init_cli.py +40 -6
  91. instant_python-0.15.1/test/initialize/domain/mothers/node_mother.py +36 -0
  92. instant_python-0.15.1/test/initialize/domain/mothers/project_structure_mother.py +53 -0
  93. instant_python-0.15.1/test/initialize/domain/test_node.py +74 -0
  94. instant_python-0.15.1/test/initialize/infra/env_manager/mother/command_execution_result_mother.py +24 -0
  95. instant_python-0.15.1/test/initialize/infra/env_manager/test_pdm_env_manager.py +93 -0
  96. instant_python-0.15.1/test/initialize/infra/env_manager/test_system_console.py +51 -0
  97. instant_python-0.15.1/test/initialize/infra/env_manager/test_uv_env_manager.py +93 -0
  98. instant_python-0.15.1/test/initialize/infra/formatter/test_ruff_project_formatter.py +32 -0
  99. instant_python-0.14.0/test/initialize/infra/persistence/approved_files/TestConfigurationRepository.test_should_read_existing_config_file.approved.txt → instant_python-0.15.1/test/initialize/infra/persistence/approved_files/TestYamlConfigRepository.test_should_read_existing_config_file.approved.txt +15 -15
  100. instant_python-0.15.1/test/initialize/infra/persistence/test_yaml_config_repository.py +59 -0
  101. {instant_python-0.14.0 → instant_python-0.15.1}/test/initialize/infra/renderer/test_jinja_environment.py +1 -1
  102. instant_python-0.15.1/test/initialize/infra/renderer/test_jinja_project_renderer.py +56 -0
  103. instant_python-0.15.1/test/initialize/infra/version_control/test_git_configurer.py +63 -0
  104. instant_python-0.15.1/test/initialize/infra/writer/TestFileSystemProjectWriter.test_should_create_file_in_file_system.approved.txt +3 -0
  105. instant_python-0.15.1/test/initialize/infra/writer/TestFileSystemProjectWriter.test_should_create_python_module_in_file_system.approved.txt +5 -0
  106. instant_python-0.15.1/test/initialize/infra/writer/TestFileSystemProjectWriter.test_should_create_standard_directory_in_file_system.approved.txt +3 -0
  107. instant_python-0.15.1/test/initialize/infra/writer/test_file_system_project_writer.py +57 -0
  108. instant_python-0.15.1/test/resources/main_structure.yml.j2 +24 -0
  109. {instant_python-0.14.0 → instant_python-0.15.1}/test/resources/standard_project/main_structure.yml.j2 +3 -0
  110. {instant_python-0.14.0/test/config → instant_python-0.15.1/test/shared}/domain/mothers/config_schema_mother.py +14 -5
  111. {instant_python-0.14.0/test/config → instant_python-0.15.1/test/shared}/domain/mothers/dependency_config_mother.py +1 -1
  112. {instant_python-0.14.0/test/config → instant_python-0.15.1/test/shared}/domain/mothers/general_config_mother.py +1 -1
  113. {instant_python-0.14.0/test/config → instant_python-0.15.1/test/shared}/domain/mothers/git_config_mother.py +1 -1
  114. {instant_python-0.14.0/test/config → instant_python-0.15.1/test/shared}/domain/mothers/template_config_mother.py +1 -1
  115. instant_python-0.15.1/test/shared/domain/test_config_schema.py +51 -0
  116. {instant_python-0.14.0/test/config → instant_python-0.15.1/test/shared}/domain/test_dependency_config.py +2 -2
  117. {instant_python-0.14.0/test/config → instant_python-0.15.1/test/shared}/domain/test_general_config.py +2 -2
  118. {instant_python-0.14.0/test/config → instant_python-0.15.1/test/shared}/domain/test_git_config.py +2 -2
  119. {instant_python-0.14.0/test/config → instant_python-0.15.1/test/shared}/domain/test_template_configuration.py +2 -2
  120. {instant_python-0.14.0 → instant_python-0.15.1}/uv.lock +1 -1
  121. instant_python-0.14.0/docs/examples/configuration.md +0 -147
  122. instant_python-0.14.0/docs/examples/custom_template.md +0 -58
  123. instant_python-0.14.0/docs/guide/command_config.md +0 -59
  124. instant_python-0.14.0/docs/home/getting_started.md +0 -73
  125. instant_python-0.14.0/instant_python/config/domain/config_parser.py +0 -10
  126. instant_python-0.14.0/instant_python/config/domain/config_schema.py +0 -79
  127. instant_python-0.14.0/instant_python/config/infra/parser/errors.py +0 -25
  128. instant_python-0.14.0/instant_python/config/infra/parser/parser.py +0 -101
  129. instant_python-0.14.0/instant_python/configuration/parser/configuration_file_not_found.py +0 -8
  130. instant_python-0.14.0/instant_python/configuration/parser/parser.py +0 -146
  131. instant_python-0.14.0/instant_python/dependency_manager/command_execution_error.py +0 -10
  132. instant_python-0.14.0/instant_python/dependency_manager/dependency_manager.py +0 -25
  133. instant_python-0.14.0/instant_python/dependency_manager/dependency_manager_factory.py +0 -18
  134. instant_python-0.14.0/instant_python/dependency_manager/unknown_dependency_manager_error.py +0 -8
  135. instant_python-0.14.0/instant_python/formatter/project_formatter.py +0 -19
  136. instant_python-0.14.0/instant_python/git/git_configurer.py +0 -42
  137. instant_python-0.14.0/instant_python/initialize/application/config_reader.py +0 -14
  138. instant_python-0.14.0/instant_python/initialize/application/project_initializer.py +0 -13
  139. instant_python-0.14.0/instant_python/initialize/delivery/cli.py +0 -63
  140. instant_python-0.14.0/instant_python/initialize/domain/nodes.py +0 -8
  141. instant_python-0.14.0/instant_python/initialize/domain/project_renderer.py +0 -9
  142. instant_python-0.14.0/instant_python/initialize/infra/persistence/config_repository.py +0 -15
  143. instant_python-0.14.0/instant_python/project_creator/directory.py +0 -26
  144. instant_python-0.14.0/instant_python/project_creator/file.py +0 -31
  145. instant_python-0.14.0/instant_python/project_creator/file_has_not_been_created.py +0 -8
  146. instant_python-0.14.0/instant_python/project_creator/file_system.py +0 -46
  147. instant_python-0.14.0/instant_python/project_creator/node.py +0 -15
  148. instant_python-0.14.0/instant_python/project_creator/unknown_node_typer_error.py +0 -8
  149. instant_python-0.14.0/instant_python/render/custom_project_renderer.py +0 -18
  150. instant_python-0.14.0/instant_python/render/jinja_custom_filters.py +0 -23
  151. instant_python-0.14.0/instant_python/render/jinja_environment.py +0 -34
  152. instant_python-0.14.0/instant_python/render/jinja_project_renderer.py +0 -30
  153. instant_python-0.14.0/instant_python/render/template_file_not_found_error.py +0 -10
  154. instant_python-0.14.0/instant_python/render/unknown_template_error.py +0 -8
  155. instant_python-0.14.0/instant_python/shared/error_types.py +0 -7
  156. instant_python-0.14.0/instant_python/templates/project_structure/alembic_migrator.yml.j2 +0 -3
  157. instant_python-0.14.0/instant_python/templates/project_structure/async_alembic.yml.j2 +0 -20
  158. instant_python-0.14.0/instant_python/templates/project_structure/async_sqlalchemy.yml.j2 +0 -17
  159. instant_python-0.14.0/instant_python/templates/project_structure/citation.yml.j2 +0 -3
  160. instant_python-0.14.0/instant_python/templates/project_structure/clean_architecture/main_structure.yml.j2 +0 -39
  161. instant_python-0.14.0/instant_python/templates/project_structure/domain_driven_design/main_structure.yml.j2 +0 -39
  162. instant_python-0.14.0/instant_python/templates/project_structure/event_bus_domain.yml.j2 +0 -45
  163. instant_python-0.14.0/instant_python/templates/project_structure/event_bus_infra.yml.j2 +0 -32
  164. instant_python-0.14.0/instant_python/templates/project_structure/fastapi_domain.yml.j2 +0 -10
  165. instant_python-0.14.0/instant_python/templates/project_structure/fastapi_infra.yml.j2 +0 -10
  166. instant_python-0.14.0/instant_python/templates/project_structure/github_issues_template.yml.j2 +0 -12
  167. instant_python-0.14.0/instant_python/templates/project_structure/gitignore.yml.j2 +0 -2
  168. instant_python-0.14.0/instant_python/templates/project_structure/license.yml.j2 +0 -2
  169. instant_python-0.14.0/instant_python/templates/project_structure/logger.yml.j2 +0 -13
  170. instant_python-0.14.0/instant_python/templates/project_structure/makefile.yml.j2 +0 -3
  171. instant_python-0.14.0/instant_python/templates/project_structure/mypy.yml.j2 +0 -3
  172. instant_python-0.14.0/instant_python/templates/project_structure/precommit_hook.yml.j2 +0 -3
  173. instant_python-0.14.0/instant_python/templates/project_structure/pyproject.yml.j2 +0 -3
  174. instant_python-0.14.0/instant_python/templates/project_structure/pytest.yml.j2 +0 -3
  175. instant_python-0.14.0/instant_python/templates/project_structure/python_version.yml.j2 +0 -2
  176. instant_python-0.14.0/instant_python/templates/project_structure/readme.yml.j2 +0 -3
  177. instant_python-0.14.0/instant_python/templates/project_structure/security.yml.j2 +0 -3
  178. instant_python-0.14.0/instant_python/templates/project_structure/standard_project/main_structure.yml.j2 +0 -39
  179. instant_python-0.14.0/instant_python/templates/project_structure/standard_project/source.yml.j2 +0 -28
  180. instant_python-0.14.0/instant_python/templates/project_structure/synchronous_sqlalchemy.yml.j2 +0 -17
  181. instant_python-0.14.0/instant_python/templates/project_structure/test_value_objects.yml.j2 +0 -26
  182. instant_python-0.14.0/instant_python/templates/project_structure/value_objects.yml.j2 +0 -52
  183. instant_python-0.14.0/test/config/infra/parser/approved_files/TestParser.test_should_parse_valid_answers.approved.txt +0 -39
  184. instant_python-0.14.0/test/config/infra/parser/resources/missing_dependencies_fields.yml +0 -21
  185. instant_python-0.14.0/test/config/infra/parser/resources/missing_general_fields.yml +0 -23
  186. instant_python-0.14.0/test/config/infra/parser/resources/missing_git_fields.yml +0 -25
  187. instant_python-0.14.0/test/config/infra/parser/resources/missing_keys_answers.yml +0 -13
  188. instant_python-0.14.0/test/config/infra/parser/resources/missing_template_fields.yml +0 -23
  189. instant_python-0.14.0/test/config/infra/parser/resources/valid_answers.yml +0 -23
  190. instant_python-0.14.0/test/config/infra/parser/test_parser.py +0 -56
  191. instant_python-0.14.0/test/configuration/parser/approved_files/TestParser.test_should_parse_configuration.approved.txt +0 -39
  192. instant_python-0.14.0/test/configuration/parser/resources/config.yml +0 -23
  193. instant_python-0.14.0/test/configuration/parser/resources/empty_config.yml +0 -0
  194. instant_python-0.14.0/test/configuration/parser/resources/missing_dependencies_fields_config.yml +0 -21
  195. instant_python-0.14.0/test/configuration/parser/resources/missing_general_fields_config.yml +0 -23
  196. instant_python-0.14.0/test/configuration/parser/resources/missing_git_fields_config.yml +0 -25
  197. instant_python-0.14.0/test/configuration/parser/resources/missing_keys_config.yml +0 -13
  198. instant_python-0.14.0/test/configuration/parser/resources/missing_template_fields_config.yml +0 -23
  199. instant_python-0.14.0/test/configuration/parser/test_parser.py +0 -66
  200. instant_python-0.14.0/test/dependency_manager/mock_pdm_dependency_manager.py +0 -33
  201. instant_python-0.14.0/test/dependency_manager/mock_uv_dependency_manager.py +0 -33
  202. instant_python-0.14.0/test/dependency_manager/test_pdm_dependency_manager.py +0 -60
  203. instant_python-0.14.0/test/dependency_manager/test_uv_dependency_manager.py +0 -59
  204. instant_python-0.14.0/test/formatter/mock_project_formatter.py +0 -15
  205. instant_python-0.14.0/test/formatter/test_project_formatter.py +0 -13
  206. instant_python-0.14.0/test/git/mock_git_configurer.py +0 -19
  207. instant_python-0.14.0/test/git/test_git_configurer.py +0 -53
  208. instant_python-0.14.0/test/initialize/application/test_config_reader.py +0 -29
  209. instant_python-0.14.0/test/initialize/application/test_project_initializer.py +0 -22
  210. instant_python-0.14.0/test/initialize/delivery/approvaltests_config.json +0 -3
  211. instant_python-0.14.0/test/initialize/domain/__init__.py +0 -0
  212. instant_python-0.14.0/test/initialize/domain/test_nodes.py +0 -12
  213. instant_python-0.14.0/test/initialize/infra/__init__.py +0 -0
  214. instant_python-0.14.0/test/initialize/infra/persistence/__init__.py +0 -0
  215. instant_python-0.14.0/test/initialize/infra/persistence/approvaltests_config.json +0 -3
  216. instant_python-0.14.0/test/initialize/infra/persistence/test_configuration_repository.py +0 -25
  217. instant_python-0.14.0/test/initialize/infra/renderer/__init__.py +0 -0
  218. instant_python-0.14.0/test/initialize/infra/renderer/test_jinja_project_renderer.py +0 -37
  219. instant_python-0.14.0/test/project_creator/__init__.py +0 -0
  220. instant_python-0.14.0/test/project_creator/approvaltests_config.json +0 -3
  221. instant_python-0.14.0/test/project_creator/approved_files/TestFileSystem.test_should_create_file_system_in_disk.rendered_custom_project_structure.json.approved.txt +0 -1
  222. instant_python-0.14.0/test/project_creator/approved_files/TestFileSystem.test_should_create_file_system_in_disk.rendered_project_structure.json.approved.txt +0 -1
  223. instant_python-0.14.0/test/project_creator/approved_files/TestFileSystem.test_should_create_file_system_in_disk.rendered_project_structure_fastapi_with_logger.json.approved.txt +0 -1
  224. instant_python-0.14.0/test/project_creator/approved_files/TestFileSystem.test_should_create_file_system_in_disk.rendered_project_structure_fastapi_with_migrator.json.approved.txt +0 -1
  225. instant_python-0.14.0/test/project_creator/approved_files/TestFileSystem.test_should_create_file_system_in_disk.rendered_project_structure_only_with_fastapi.json.approved.txt +0 -1
  226. instant_python-0.14.0/test/project_creator/approved_files/TestFileSystem.test_should_create_folders_and_files.approved.txt +0 -1
  227. instant_python-0.14.0/test/project_creator/approved_files/TestFileSystem.test_should_generate_file_system_tree.approved.txt +0 -1
  228. instant_python-0.14.0/test/project_creator/directory_mother.py +0 -31
  229. instant_python-0.14.0/test/project_creator/resources/boilerplate/exceptions/domain_error.py +0 -22
  230. instant_python-0.14.0/test/project_creator/resources/boilerplate/exceptions/domain_error_simple.py +0 -2
  231. instant_python-0.14.0/test/project_creator/resources/boilerplate/fastapi/__init__.py +0 -0
  232. instant_python-0.14.0/test/project_creator/resources/boilerplate/fastapi/application.py +0 -21
  233. instant_python-0.14.0/test/project_creator/resources/boilerplate/fastapi/http_response.py +0 -62
  234. instant_python-0.14.0/test/project_creator/resources/boilerplate/fastapi/lifespan.py +0 -11
  235. instant_python-0.14.0/test/project_creator/resources/boilerplate/logger/__init__.py +0 -0
  236. instant_python-0.14.0/test/project_creator/resources/boilerplate/logger/logger.py +0 -44
  237. instant_python-0.14.0/test/project_creator/resources/boilerplate/persistence/alembic_migrator.py +0 -18
  238. instant_python-0.14.0/test/project_creator/resources/clean_architecture/main_structure.yml.j2 +0 -69
  239. instant_python-0.14.0/test/project_creator/resources/config.yml +0 -25
  240. instant_python-0.14.0/test/project_creator/resources/config_fastapi_with_logger.yml +0 -26
  241. instant_python-0.14.0/test/project_creator/resources/config_fastapi_with_migrator.yml +0 -26
  242. instant_python-0.14.0/test/project_creator/resources/config_with_only_fastapi.yml +0 -25
  243. instant_python-0.14.0/test/project_creator/resources/rendered_custom_project_structure.json +0 -36
  244. instant_python-0.14.0/test/project_creator/resources/rendered_project_structure.json +0 -33
  245. instant_python-0.14.0/test/project_creator/resources/rendered_project_structure_fastapi_with_logger.json +0 -64
  246. instant_python-0.14.0/test/project_creator/resources/rendered_project_structure_fastapi_with_migrator.json +0 -62
  247. instant_python-0.14.0/test/project_creator/resources/rendered_project_structure_only_with_fastapi.json +0 -52
  248. instant_python-0.14.0/test/project_creator/test_directory.py +0 -50
  249. instant_python-0.14.0/test/project_creator/test_file.py +0 -52
  250. instant_python-0.14.0/test/project_creator/test_file_system.py +0 -73
  251. instant_python-0.14.0/test/render/__init__.py +0 -0
  252. instant_python-0.14.0/test/render/approvaltests_config.json +0 -3
  253. instant_python-0.14.0/test/render/approved_files/TestCustomProjectRenderer.test_should_render_custom_template.approved.txt +0 -86
  254. instant_python-0.14.0/test/render/approved_files/TestJinjaProjectRenderer.test_should_render_template_for.clean_architecture_config.yml.approved.txt +0 -33
  255. instant_python-0.14.0/test/render/approved_files/TestJinjaProjectRenderer.test_should_render_template_for.domain_driven_design_config.yml.approved.txt +0 -57
  256. instant_python-0.14.0/test/render/approved_files/TestJinjaProjectRenderer.test_should_render_template_for.received.txt +0 -33
  257. instant_python-0.14.0/test/render/approved_files/TestJinjaProjectRenderer.test_should_render_template_for.standard_project_with_dependency_config.yml.approved.txt +0 -26
  258. instant_python-0.14.0/test/render/approved_files/TestJinjaProjectRenderer.test_should_render_template_for.standard_project_with_git_config.yml.approved.txt +0 -30
  259. instant_python-0.14.0/test/render/resources/clean_architecture/main_structure.yml.j2 +0 -22
  260. instant_python-0.14.0/test/render/resources/clean_architecture_config.yml +0 -16
  261. instant_python-0.14.0/test/render/resources/custom_template.yml +0 -46
  262. instant_python-0.14.0/test/render/resources/domain_driven_design/main_structure.yml.j2 +0 -38
  263. instant_python-0.14.0/test/render/resources/domain_driven_design_config.yml +0 -19
  264. instant_python-0.14.0/test/render/resources/standard_project/main_structure.yml.j2 +0 -27
  265. instant_python-0.14.0/test/render/resources/standard_project_with_dependency_config.yml +0 -20
  266. instant_python-0.14.0/test/render/resources/standard_project_with_git_config.yml +0 -18
  267. instant_python-0.14.0/test/render/resources/test_template.j2 +0 -2
  268. instant_python-0.14.0/test/render/test_custom_project_renderer.py +0 -18
  269. instant_python-0.14.0/test/render/test_jinja_environment.py +0 -23
  270. instant_python-0.14.0/test/render/test_jinja_project_renderer.py +0 -36
  271. {instant_python-0.14.0 → instant_python-0.15.1}/.github/FUNDING.yml +0 -0
  272. {instant_python-0.14.0 → instant_python-0.15.1}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
  273. {instant_python-0.14.0 → instant_python-0.15.1}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  274. {instant_python-0.14.0 → instant_python-0.15.1}/.github/actions/python_setup/action.yml +0 -0
  275. {instant_python-0.14.0 → instant_python-0.15.1}/.github/pull_request_template.md +0 -0
  276. {instant_python-0.14.0 → instant_python-0.15.1}/.github/workflows/ci.yml +0 -0
  277. {instant_python-0.14.0 → instant_python-0.15.1}/.github/workflows/pages.yml +0 -0
  278. {instant_python-0.14.0 → instant_python-0.15.1}/.github/workflows/release.yml +0 -0
  279. {instant_python-0.14.0 → instant_python-0.15.1}/.gitignore +0 -0
  280. {instant_python-0.14.0 → instant_python-0.15.1}/.pre-commit-config.yaml +0 -0
  281. {instant_python-0.14.0 → instant_python-0.15.1}/.python-version +0 -0
  282. {instant_python-0.14.0 → instant_python-0.15.1}/CITATION.cff +0 -0
  283. {instant_python-0.14.0 → instant_python-0.15.1}/LICENSE +0 -0
  284. {instant_python-0.14.0 → instant_python-0.15.1}/SECURITY.md +0 -0
  285. {instant_python-0.14.0 → instant_python-0.15.1}/codeql-config.yml +0 -0
  286. {instant_python-0.14.0 → instant_python-0.15.1}/docs/assets/favicon.svg +0 -0
  287. {instant_python-0.14.0 → instant_python-0.15.1}/docs/assets/logo.svg +0 -0
  288. {instant_python-0.14.0 → instant_python-0.15.1}/docs/changelog/.components/changelog_header.md.j2 +0 -0
  289. {instant_python-0.14.0 → instant_python-0.15.1}/docs/changelog/.components/changelog_init.md.j2 +0 -0
  290. {instant_python-0.14.0 → instant_python-0.15.1}/docs/changelog/.components/changelog_update.md.j2 +0 -0
  291. {instant_python-0.14.0 → instant_python-0.15.1}/docs/changelog/.components/changes.md.j2 +0 -0
  292. {instant_python-0.14.0 → instant_python-0.15.1}/docs/changelog/.components/first_release.md.j2 +0 -0
  293. {instant_python-0.14.0 → instant_python-0.15.1}/docs/changelog/.components/macros.md.j2 +0 -0
  294. {instant_python-0.14.0 → instant_python-0.15.1}/docs/changelog/.components/versioned_changes.md.j2 +0 -0
  295. {instant_python-0.14.0 → instant_python-0.15.1}/docs/changelog/.release_notes.md.j2 +0 -0
  296. {instant_python-0.14.0 → instant_python-0.15.1}/docs/changelog/CHANGELOG.md.j2 +0 -0
  297. {instant_python-0.14.0/docs/home → instant_python-0.15.1/docs/development}/contributing.md +0 -0
  298. {instant_python-0.14.0/docs/home → instant_python-0.15.1/docs/development}/releases.md +0 -0
  299. {instant_python-0.14.0/docs/home → instant_python-0.15.1/docs/development}/security.md +0 -0
  300. {instant_python-0.14.0 → instant_python-0.15.1}/docs/downloads_macro.py +0 -0
  301. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/__init__.py +0 -0
  302. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/cli/__init__.py +0 -0
  303. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/cli/cli.py +0 -0
  304. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/cli/instant_python_typer.py +0 -0
  305. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/config/__init__.py +0 -0
  306. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/config/application/__init__.py +0 -0
  307. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/config/delivery/__init__.py +0 -0
  308. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/config/domain/__init__.py +0 -0
  309. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/config/domain/question_wizard.py +0 -0
  310. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/config/infra/__init__.py +0 -0
  311. {instant_python-0.14.0/instant_python/config/infra/parser → instant_python-0.15.1/instant_python/config/infra/question_wizard}/__init__.py +0 -0
  312. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/config/infra/question_wizard/questionary_console_wizard.py +0 -0
  313. {instant_python-0.14.0/instant_python/config/infra/question_wizard → instant_python-0.15.1/instant_python/config/infra/question_wizard/step}/__init__.py +0 -0
  314. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/config/infra/question_wizard/step/dependencies_step.py +0 -0
  315. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/config/infra/question_wizard/step/general_step.py +0 -0
  316. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/config/infra/question_wizard/step/git_step.py +0 -0
  317. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/config/infra/question_wizard/step/questionary.py +0 -0
  318. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/config/infra/question_wizard/step/steps.py +0 -0
  319. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/config/infra/question_wizard/step/template_step.py +0 -0
  320. {instant_python-0.14.0/instant_python/config/infra/question_wizard/step → instant_python-0.15.1/instant_python/config/infra/writer}/__init__.py +0 -0
  321. {instant_python-0.14.0/instant_python/config/infra/writer → instant_python-0.15.1/instant_python/initialize}/__init__.py +0 -0
  322. {instant_python-0.14.0/instant_python/configuration → instant_python-0.15.1/instant_python/initialize/application}/__init__.py +0 -0
  323. {instant_python-0.14.0/instant_python/configuration/parser → instant_python-0.15.1/instant_python/initialize/delivery}/__init__.py +0 -0
  324. {instant_python-0.14.0/instant_python/dependency_manager → instant_python-0.15.1/instant_python/initialize/domain}/__init__.py +0 -0
  325. {instant_python-0.14.0/instant_python/formatter → instant_python-0.15.1/instant_python/initialize/infra}/__init__.py +0 -0
  326. {instant_python-0.14.0/instant_python/git → instant_python-0.15.1/instant_python/initialize/infra/env_manager}/__init__.py +0 -0
  327. {instant_python-0.14.0/instant_python/initialize → instant_python-0.15.1/instant_python/initialize/infra/formatter}/__init__.py +0 -0
  328. {instant_python-0.14.0/instant_python/initialize/application → instant_python-0.15.1/instant_python/initialize/infra/persistence}/__init__.py +0 -0
  329. {instant_python-0.14.0/instant_python/initialize/delivery → instant_python-0.15.1/instant_python/initialize/infra/renderer}/__init__.py +0 -0
  330. {instant_python-0.14.0/instant_python/initialize/domain → instant_python-0.15.1/instant_python/initialize/infra/version_control}/__init__.py +0 -0
  331. {instant_python-0.14.0/instant_python/initialize/infra → instant_python-0.15.1/instant_python/initialize/infra/writer}/__init__.py +0 -0
  332. {instant_python-0.14.0/instant_python/initialize/infra/persistence → instant_python-0.15.1/instant_python/shared}/__init__.py +0 -0
  333. {instant_python-0.14.0/instant_python/initialize/infra/renderer → instant_python-0.15.1/instant_python/shared/domain}/__init__.py +0 -0
  334. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/shared/supported_built_in_features.py +0 -0
  335. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/shared/supported_licenses.py +0 -0
  336. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/shared/supported_managers.py +0 -0
  337. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/shared/supported_python_versions.py +0 -0
  338. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/shared/supported_templates.py +0 -0
  339. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/.gitignore +0 -0
  340. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/.pre-commit-config.yml +0 -0
  341. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/.python-version +0 -0
  342. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/CITATION.cff +0 -0
  343. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/LICENSE +0 -0
  344. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/README.md +0 -0
  345. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/SECURITY.md +0 -0
  346. {instant_python-0.14.0/instant_python/project_creator → instant_python-0.15.1/instant_python/templates/boilerplate/event_bus}/__init__.py +0 -0
  347. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/event_bus/domain_event.py +0 -0
  348. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/event_bus/domain_event_json_serializer.py +0 -0
  349. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/event_bus/event_bus.py +0 -0
  350. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/event_bus/exchange_type.py +0 -0
  351. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/event_bus/rabbit_mq_consumer.py +0 -0
  352. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/event_bus/rabbit_mq_event_bus.py +0 -0
  353. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/event_bus/rabbit_mq_settings.py +0 -0
  354. {instant_python-0.14.0/instant_python/render → instant_python-0.15.1/instant_python/templates/boilerplate/exceptions}/__init__.py +0 -0
  355. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/exceptions/base_error.py +0 -0
  356. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/exceptions/domain_error.py +0 -0
  357. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/exceptions/domain_event_type_not_found_error.py +0 -0
  358. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/exceptions/incorrect_value_type_error.py +0 -0
  359. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/exceptions/invalid_id_format_error.py +0 -0
  360. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/exceptions/invalid_negative_value_error.py +0 -0
  361. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/exceptions/rabbit_mq_connection_not_established_error.py +0 -0
  362. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/exceptions/required_value_error.py +0 -0
  363. {instant_python-0.14.0/instant_python/shared → instant_python-0.15.1/instant_python/templates/boilerplate/fastapi}/__init__.py +0 -0
  364. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/fastapi/application.py +0 -0
  365. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/fastapi/error_handlers.py +0 -0
  366. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/fastapi/error_response.py +0 -0
  367. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/fastapi/fastapi_log_middleware.py +0 -0
  368. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/fastapi/lifespan.py +0 -0
  369. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/fastapi/success_response.py +0 -0
  370. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/github/action.yml +0 -0
  371. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/github/bug_report.yml +0 -0
  372. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/github/ci.yml +0 -0
  373. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/github/feature_request.yml +0 -0
  374. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/github/release.yml +0 -0
  375. {instant_python-0.14.0/instant_python/templates/boilerplate/event_bus → instant_python-0.15.1/instant_python/templates/boilerplate/logger}/__init__.py +0 -0
  376. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/logger/file_logger.py +0 -0
  377. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/logger/file_rotating_handler.py +0 -0
  378. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/logger/json_formatter.py +0 -0
  379. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/mypy.ini +0 -0
  380. {instant_python-0.14.0/instant_python/templates/boilerplate/exceptions → instant_python-0.15.1/instant_python/templates/boilerplate/persistence}/__init__.py +0 -0
  381. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/persistence/alembic_migrator.py +0 -0
  382. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/persistence/async/README.md +0 -0
  383. {instant_python-0.14.0/instant_python/templates/boilerplate/fastapi → instant_python-0.15.1/instant_python/templates/boilerplate/persistence/async}/__init__.py +0 -0
  384. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/persistence/async/alembic.ini +0 -0
  385. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/persistence/async/async_engine_fixture.py +0 -0
  386. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/persistence/async/async_session.py +0 -0
  387. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/persistence/async/env.py +0 -0
  388. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/persistence/async/models_metadata.py +0 -0
  389. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/persistence/async/postgres_settings.py +0 -0
  390. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/persistence/async/script.py.mako +0 -0
  391. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/persistence/async/sqlalchemy_repository.py +0 -0
  392. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/persistence/base.py +0 -0
  393. {instant_python-0.14.0/instant_python/templates/boilerplate/logger → instant_python-0.15.1/instant_python/templates/boilerplate/persistence/synchronous}/__init__.py +0 -0
  394. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/persistence/synchronous/session_maker.py +0 -0
  395. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/persistence/synchronous/sqlalchemy_repository.py +0 -0
  396. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/pyproject.toml +0 -0
  397. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/pytest.ini +0 -0
  398. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/random_generator.py +0 -0
  399. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/scripts/add_dependency.py +0 -0
  400. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/scripts/create_aggregate.py +0 -0
  401. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/scripts/insert_template.py +0 -0
  402. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/scripts/integration.sh +0 -0
  403. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/scripts/local_setup.py +0 -0
  404. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/scripts/makefile +0 -0
  405. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/scripts/post-merge.py +0 -0
  406. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/scripts/pre-commit.py +0 -0
  407. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/scripts/pre-push.py +0 -0
  408. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/scripts/remove_dependency.py +0 -0
  409. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/scripts/unit.sh +0 -0
  410. {instant_python-0.14.0/instant_python/templates/boilerplate/persistence → instant_python-0.15.1/instant_python/templates/boilerplate/value_object}/__init__.py +0 -0
  411. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/value_object/aggregate.py +0 -0
  412. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/value_object/int_primitives_mother.py +0 -0
  413. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/value_object/int_value_object.py +0 -0
  414. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/value_object/string_primitives_mother.py +0 -0
  415. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/value_object/string_value_object.py +0 -0
  416. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/value_object/test_int_value_object.py +0 -0
  417. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/value_object/test_string_value_object.py +0 -0
  418. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/value_object/test_uuid_value_object.py +0 -0
  419. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/value_object/uuid.py +0 -0
  420. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/value_object/uuid_primitives_mother.py +0 -0
  421. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/value_object/validation.py +0 -0
  422. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/boilerplate/value_object/value_object.py +0 -0
  423. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/project_structure/domain_driven_design/bounded_context.yml.j2 +0 -0
  424. {instant_python-0.14.0 → instant_python-0.15.1}/instant_python/templates/project_structure/macros.j2 +0 -0
  425. {instant_python-0.14.0 → instant_python-0.15.1}/makefile +0 -0
  426. {instant_python-0.14.0 → instant_python-0.15.1}/mypy.ini +0 -0
  427. {instant_python-0.14.0 → instant_python-0.15.1}/scripts/add_dependency.py +0 -0
  428. {instant_python-0.14.0 → instant_python-0.15.1}/scripts/remove_dependency.py +0 -0
  429. {instant_python-0.14.0/instant_python/templates/boilerplate/persistence/async → instant_python-0.15.1/test}/__init__.py +0 -0
  430. {instant_python-0.14.0/instant_python/templates/boilerplate/persistence/synchronous → instant_python-0.15.1/test/config}/__init__.py +0 -0
  431. {instant_python-0.14.0/instant_python/templates/boilerplate/value_object → instant_python-0.15.1/test/config/application}/__init__.py +0 -0
  432. {instant_python-0.14.0/test → instant_python-0.15.1/test/config/infra}/__init__.py +0 -0
  433. {instant_python-0.14.0/test/config → instant_python-0.15.1/test/config/infra/writer}/__init__.py +0 -0
  434. {instant_python-0.14.0/test/config/application → instant_python-0.15.1/test/initialize}/__init__.py +0 -0
  435. {instant_python-0.14.0/test/config/domain → instant_python-0.15.1/test/initialize/application}/__init__.py +0 -0
  436. {instant_python-0.14.0/test/config/domain/mothers → instant_python-0.15.1/test/initialize/delivery}/__init__.py +0 -0
  437. {instant_python-0.14.0/test/config/infra/parser → instant_python-0.15.1/test/initialize/delivery}/approvaltests_config.json +0 -0
  438. /instant_python-0.14.0/test/initialize/delivery/approved_files/TestInitCli.test_initializes_project_with_general_section_combinations.approved.txt → /instant_python-0.15.1/test/initialize/delivery/approved_files/TestInitCli.test_should_initialize_project_with_general_section_combinations.approved.txt +0 -0
  439. /instant_python-0.14.0/test/initialize/delivery/approved_files/TestInitCli.test_initializes_project_with_git_section_combinations.approved.txt → /instant_python-0.15.1/test/initialize/delivery/approved_files/TestInitCli.test_should_initialize_project_with_git_section_combinations.approved.txt +0 -0
  440. /instant_python-0.14.0/test/initialize/delivery/approved_files/TestInitCli.test_should_initializes_project_with_predefined_dependencies_and_different_managers.approved.txt → /instant_python-0.15.1/test/initialize/delivery/approved_files/TestInitCli.test_should_initialize_project_with_predefined_dependencies_and_different_managers.approved.txt +0 -0
  441. {instant_python-0.14.0/test/config/infra → instant_python-0.15.1/test/initialize/domain}/__init__.py +0 -0
  442. {instant_python-0.14.0/test/config/infra/parser → instant_python-0.15.1/test/initialize/domain/mothers}/__init__.py +0 -0
  443. {instant_python-0.14.0/test/config/infra/parser/resources → instant_python-0.15.1/test/initialize/infra}/__init__.py +0 -0
  444. {instant_python-0.14.0/test/config/infra/writer → instant_python-0.15.1/test/initialize/infra/env_manager}/__init__.py +0 -0
  445. {instant_python-0.14.0/test/configuration → instant_python-0.15.1/test/initialize/infra/env_manager/mother}/__init__.py +0 -0
  446. {instant_python-0.14.0/test/configuration/parser → instant_python-0.15.1/test/initialize/infra/formatter}/__init__.py +0 -0
  447. {instant_python-0.14.0/test/configuration/parser/resources → instant_python-0.15.1/test/initialize/infra/persistence}/__init__.py +0 -0
  448. {instant_python-0.14.0/test/configuration/parser → instant_python-0.15.1/test/initialize/infra/persistence}/approvaltests_config.json +0 -0
  449. {instant_python-0.14.0/test/dependency_manager → instant_python-0.15.1/test/initialize/infra/renderer}/__init__.py +0 -0
  450. {instant_python-0.14.0/test/formatter → instant_python-0.15.1/test/initialize/infra/version_control}/__init__.py +0 -0
  451. {instant_python-0.14.0/test/git → instant_python-0.15.1/test/initialize/infra/writer}/__init__.py +0 -0
  452. {instant_python-0.14.0 → instant_python-0.15.1}/test/random_generator.py +0 -0
  453. {instant_python-0.14.0 → instant_python-0.15.1}/test/resources/base_ipy_config.yml +0 -0
  454. {instant_python-0.14.0 → instant_python-0.15.1}/test/resources/domain_error_template.py +0 -0
  455. {instant_python-0.14.0 → instant_python-0.15.1}/test/resources/hello_world.j2 +0 -0
  456. {instant_python-0.14.0/test/initialize → instant_python-0.15.1/test/shared}/__init__.py +0 -0
  457. {instant_python-0.14.0/test/initialize/application → instant_python-0.15.1/test/shared/domain}/__init__.py +0 -0
  458. {instant_python-0.14.0/test/initialize/delivery → instant_python-0.15.1/test/shared/domain/mothers}/__init__.py +0 -0
  459. {instant_python-0.14.0/test/initialize → instant_python-0.15.1/test}/utils.py +0 -0
  460. {instant_python-0.14.0 → instant_python-0.15.1}/tox.ini +0 -0
@@ -2,6 +2,455 @@
2
2
 
3
3
  <!-- version list -->
4
4
 
5
+ ## v0.15.1 (2025-11-10)
6
+
7
+ ### 🪲 Bug Fixes
8
+
9
+ - **initialize**: Handle KeyError in template rendering
10
+ ([`cedeb7b`](https://github.com/dimanu-py/instant-python/commit/cedeb7b065c6032a21490c9e256a882376fdfe3d))
11
+
12
+
13
+ ## v0.15.0 (2025-11-10)
14
+
15
+ ### ✨ Features
16
+
17
+ - **initialize**: Modify how custom project structure is discover but not making compulsory create a
18
+ folder named 'custom'
19
+ ([`e35d882`](https://github.com/dimanu-py/instant-python/commit/e35d8825083c5fe1a542b6fb3d39b0a5c9dea828))
20
+
21
+ - **initialize**: Ensure presence of pyproject.toml file in project structure
22
+ ([`d677228`](https://github.com/dimanu-py/instant-python/commit/d677228541cf87838b899908c013ac4ff73f1d43))
23
+
24
+ - **shared**: Temporary remove source_path attribute in template section if custom template is
25
+ selected
26
+ ([`c6f9e0c`](https://github.com/dimanu-py/instant-python/commit/c6f9e0c9c4c6daa148e41ffdb6e353b1bb55e980))
27
+
28
+ - **initialize**: Modify 'move' method from yaml config repository to store config file always with
29
+ the name ipy.yml even if it's a file created by the user
30
+ ([`2e3d53f`](https://github.com/dimanu-py/instant-python/commit/2e3d53febea46247c0939aa61fb6c372eaec509e))
31
+
32
+ - **initialize**: Handle missing templates by setting content to None
33
+ ([`deb6195`](https://github.com/dimanu-py/instant-python/commit/deb61959f62184f7e7881eabf0d17d4cc4749344))
34
+
35
+ - **shared**: Prompt user for custom template file path when selecting custom template
36
+ ([`1b30673`](https://github.com/dimanu-py/instant-python/commit/1b3067327b20cc2937c932ab4f009730161bbba4))
37
+
38
+ - **shared**: Ensure source path is set for custom templates
39
+ ([`5f51c83`](https://github.com/dimanu-py/instant-python/commit/5f51c8300ad70439007b5a2e7c79eaf8532166b9))
40
+
41
+ - **shared**: Add source path attribute to template config object
42
+ ([`a3f5e40`](https://github.com/dimanu-py/instant-python/commit/a3f5e4066ffa8d14a220619f7c368ec75f7fbdc0))
43
+
44
+ - Delete old implementation for init command
45
+ ([`c99e43d`](https://github.com/dimanu-py/instant-python/commit/c99e43dbd1a3195b02e386f6876a8b7b70b85fdb))
46
+
47
+ - **initialize**: Update path parameters to use Path type for improved type safety
48
+ ([`8dc2bc2`](https://github.com/dimanu-py/instant-python/commit/8dc2bc21058bfbd803407639f7bec0cb06f9689b))
49
+
50
+ - **initialize**: Implement write method in YamlConfigRepository to move config file
51
+ ([`39f6c88`](https://github.com/dimanu-py/instant-python/commit/39f6c88b856709c9e9a0b7c6c80e6f2f67321310))
52
+
53
+ - **initialize**: Remove config parameter from ProjectInitializer execute method
54
+ ([`459c8c2`](https://github.com/dimanu-py/instant-python/commit/459c8c266135dc041d5a2af13ca13661dafb7b5e))
55
+
56
+ - **initialize**: Invoke repository write method in ProjectInitializer
57
+ ([`20d1c1d`](https://github.com/dimanu-py/instant-python/commit/20d1c1dc027fb641a346739c95c563e4e679bbf3))
58
+
59
+ - **initialize**: Add config_path parameter to ProjectInitializer execute method
60
+ ([`fa92d33`](https://github.com/dimanu-py/instant-python/commit/fa92d33f6789b546c0287571fe79c17fc89cb164))
61
+
62
+ - **repository**: Add write method to ConfigRepository interface
63
+ ([`04ab916`](https://github.com/dimanu-py/instant-python/commit/04ab916492accc666a763adba74e213223524332))
64
+
65
+ - **config**: Update ConfigSchema class to allow instantiation from primitives and validate content
66
+ structure to avoid inconsistent data
67
+ ([`a6dc931`](https://github.com/dimanu-py/instant-python/commit/a6dc9311f1d363294ee1a35e5a08844b0fd818d6))
68
+
69
+ - **initialize**: Add 'execute_or_raise' method to SystemConsole to encapsulate command execution
70
+ and error handling when needed
71
+ ([`87f2b6f`](https://github.com/dimanu-py/instant-python/commit/87f2b6ff55bf0d26176b5d842cf9efba549d8844))
72
+
73
+ - **initialize**: Add property to check if version control needs initialization
74
+ ([`ac41ab0`](https://github.com/dimanu-py/instant-python/commit/ac41ab07d407193f579cb5f6e3d9067d298822ba))
75
+
76
+ - **initialize**: Conditionally initialize git repository based on config setting
77
+ ([`187f334`](https://github.com/dimanu-py/instant-python/commit/187f33432b4300ff97dfa290a94ba0e152035888))
78
+
79
+ - **initialize**: Integrate version control setup in ProjectInitializer
80
+ ([`0a706c2`](https://github.com/dimanu-py/instant-python/commit/0a706c2b020821718638d62b15fa8ac7bda0f17c))
81
+
82
+ - **initialize**: Inject VersionControlConfigurer into ProjectInitializer
83
+ ([`5cf1669`](https://github.com/dimanu-py/instant-python/commit/5cf16697aa9864019aa8f7958fc53ffb0d13b620))
84
+
85
+ - **initialize**: Add abstract VersionControlConfigurer class for git configuration setup
86
+ ([`43a24a5`](https://github.com/dimanu-py/instant-python/commit/43a24a58d7751d1a03b410592fcfc8541a1ba3f7))
87
+
88
+ - **initialize**: Add abstract ProjectFormatter class for project formatting
89
+ ([`ab8c177`](https://github.com/dimanu-py/instant-python/commit/ab8c1777ae31bc9673be26adefd6354f5db71036))
90
+
91
+ - **initialize**: Add error handling for command execution in RuffProjectFormatter
92
+ ([`2bc7b2d`](https://github.com/dimanu-py/instant-python/commit/2bc7b2d58fa776ff0a0e69872f25babccadd39b6))
93
+
94
+ - **initialize**: Call formatter after project configuration for improved output formatting
95
+ ([`7c467cd`](https://github.com/dimanu-py/instant-python/commit/7c467cd72bc578ee2b6c2c21fa8d7925dd7d1efa))
96
+
97
+ - **initialize**: Use console when is injected to install uv
98
+ ([`8feeb28`](https://github.com/dimanu-py/instant-python/commit/8feeb28e8a015c2aac625b59afb4d15ce0b11670))
99
+
100
+ - **initialize**: Use console when is injected to install dependencies
101
+ ([`e74c046`](https://github.com/dimanu-py/instant-python/commit/e74c0464bfaeeeac7213de10bff99cbe91200e78))
102
+
103
+ - **initialize**: Use console when is injected to create virtual environment
104
+ ([`38f85ab`](https://github.com/dimanu-py/instant-python/commit/38f85ab218c16d7537e80c1ad8bf4cf2fb92d784))
105
+
106
+ - **initialize**: Use console when is injected to install python version
107
+ ([`8eb81e4`](https://github.com/dimanu-py/instant-python/commit/8eb81e407c372c603be3c68ae79687afd6eaaace))
108
+
109
+ - **initialize**: Use console when is injected to check if uv has been installed
110
+ ([`f202a3d`](https://github.com/dimanu-py/instant-python/commit/f202a3d97056eb81b48ef356b84a98106de40013))
111
+
112
+ - **initialize**: Inject system console to uv manager
113
+ ([`a5b6dae`](https://github.com/dimanu-py/instant-python/commit/a5b6daedc080276f8c39aa82d67a7b0df2982dbd))
114
+
115
+ - **initialize**: Handle unexpected errors during command execution
116
+ ([`951398c`](https://github.com/dimanu-py/instant-python/commit/951398c2a6ea07848c5e7bc98d734df4b704ee33))
117
+
118
+ - **initialize**: Add method to CommandExecutionResult to know if it has succeeded or not
119
+ ([`6dd97dc`](https://github.com/dimanu-py/instant-python/commit/6dd97dc085f4d1c254ffdf4b029b6af1efb59ca8))
120
+
121
+ - **initialize**: Implement command execution using subprocess
122
+ ([`1bad062`](https://github.com/dimanu-py/instant-python/commit/1bad062dcac0f61aa2167d82bd34e96cee5d306a))
123
+
124
+ - **initialize**: Modify EnvManager interface to adhere to previous DependencyManager manager to
125
+ keep the same behavior until refactor
126
+ ([`09d68fc`](https://github.com/dimanu-py/instant-python/commit/09d68fcdfbd630054b8b42d3bcc96dbfd7a2e79b))
127
+
128
+ - **initialize**: Integrate EnvManager into ProjectInitializer for environment setup
129
+ ([`e307135`](https://github.com/dimanu-py/instant-python/commit/e3071354d0bef7316cd5b9d1052f9870b0d13783))
130
+
131
+ - **initialize**: Introduce abstract Node class with create method for extensibility
132
+ ([`8fbde36`](https://github.com/dimanu-py/instant-python/commit/8fbde36ab47a7ece26d79377af13229926d603e6))
133
+
134
+ - **initialize**: Implement directory and file creation methods in FileSystemNodeWriter
135
+ ([`126f87c`](https://github.com/dimanu-py/instant-python/commit/126f87c8f202d4d1cfaa3c56742290322321a9f8))
136
+
137
+ - **initialize**: Add FileSystemNodeWriter for directory and file creation
138
+ ([`6d555da`](https://github.com/dimanu-py/instant-python/commit/6d555da88f086f05457b7ddd4a3a4f5fd6c415d2))
139
+
140
+ - **initialize**: Implement recursive creation of child nodes in directory
141
+ ([`94a0a46`](https://github.com/dimanu-py/instant-python/commit/94a0a46e3b1e9c8639facd159b59108f8fcc7de6))
142
+
143
+ - **initialize**: Add support for creating __init__.py in Python modules
144
+ ([`45d77c2`](https://github.com/dimanu-py/instant-python/commit/45d77c2a91fb7e1c120f5bfc8a0debc274cbe0af))
145
+
146
+ - **initialize**: Add create method to handle directory creation with NodeWriter
147
+ ([`f97ebb1`](https://github.com/dimanu-py/instant-python/commit/f97ebb185dd43309e4441fcfcf3920de455f2efc))
148
+
149
+ - **initialize**: Add create method to handle file creation using NodeWriter
150
+ ([`dd741c4`](https://github.com/dimanu-py/instant-python/commit/dd741c4a44a4092caa3a78c05802d99ff78de2eb))
151
+
152
+ - **initialize**: Create abstract base class for file and directory creation
153
+ ([`339ca96`](https://github.com/dimanu-py/instant-python/commit/339ca961bb4aab8f1a492ac98c02a85116bb4f6a))
154
+
155
+ - **initialize**: Add support for creating files in the file system
156
+ ([`7845c4d`](https://github.com/dimanu-py/instant-python/commit/7845c4d47188c0e13fbc5796042921afb252373e))
157
+
158
+ - **writer**: Implement write method to create directories and __init__.py for Python modules
159
+ ([`d720f7d`](https://github.com/dimanu-py/instant-python/commit/d720f7db78d24e273daa0808cf9b5d0af65e0889))
160
+
161
+ - **initialize**: Modify project initializer use case to receive the folder where the project will
162
+ be created
163
+ ([`b507bc4`](https://github.com/dimanu-py/instant-python/commit/b507bc4d263ccdb1db97bbc5e9b3bc6a2fa17b9f))
164
+
165
+ - **initialize**: Write project structure using writer
166
+ ([`c9952ba`](https://github.com/dimanu-py/instant-python/commit/c9952baa7d070eb84c1365153ffcddde91d65299))
167
+
168
+ - **initialize**: Add ProjectWriter dependency to ProjectInitializer
169
+ ([`16a645c`](https://github.com/dimanu-py/instant-python/commit/16a645c6560e4315de1f52413ce51eba12cd746c))
170
+
171
+ - **initialize**: Make Directory iterable through iteration of its children
172
+ ([`0c4bf05`](https://github.com/dimanu-py/instant-python/commit/0c4bf05f5c122bafca870a42f856ef166873d390))
173
+
174
+ - **initialize**: Add flatten method to ProjectStructure for iterating through nodes
175
+ ([`724b96c`](https://github.com/dimanu-py/instant-python/commit/724b96cfa6dff7bdd00599787306c57be0fa660d))
176
+
177
+ - **initialize**: Modify ProjectRenderer port and adapter signatures to return a ProjectStructure
178
+ ([`b0c251f`](https://github.com/dimanu-py/instant-python/commit/b0c251f7df1820240b81ef74375c808d9ee34cef))
179
+
180
+ - **initialize**: Add __iter__ and __len__ methods to ProjectStructure class to be able to iterate
181
+ through them
182
+ ([`d733664`](https://github.com/dimanu-py/instant-python/commit/d733664053ee8f13e0da2756659415d8cf6e7091))
183
+
184
+ - **initialize**: Implement ProjectStructure class for building project nodes
185
+ ([`a8a36c2`](https://github.com/dimanu-py/instant-python/commit/a8a36c29a92d847e59b81c043bb355cfaf9dbc11))
186
+
187
+ - **initialize**: Add Directory class with path building and representation methods
188
+ ([`bdfcd14`](https://github.com/dimanu-py/instant-python/commit/bdfcd143205a16da9f2ae5d0a8a961b78f052180))
189
+
190
+ - **initialize**: Add __repr__ method to File class
191
+ ([`2e88d75`](https://github.com/dimanu-py/instant-python/commit/2e88d75f678d5d422efed04f836723c751431363))
192
+
193
+ ### 🪲 Bug Fixes
194
+
195
+ - **initialize**: Add pyproject file to standard template in acceptance tests
196
+ ([`1a9e6e3`](https://github.com/dimanu-py/instant-python/commit/1a9e6e3531b07d2d865a8899b27ebcf26ccc021e))
197
+
198
+ - **initialize**: Use file name and extension as default template name if not provided in file node
199
+ ([`e07a2cb`](https://github.com/dimanu-py/instant-python/commit/e07a2cb6129aea90f4720b7268f1b647ec544e24))
200
+
201
+ - **templates**: Correct template path for value_object in YAML configuration
202
+ ([`cd4d6a4`](https://github.com/dimanu-py/instant-python/commit/cd4d6a4b956adb7f82131512b5e39f6d15a46d83))
203
+
204
+ - **templates**: Write correct template name for python version file
205
+ ([`b6adb23`](https://github.com/dimanu-py/instant-python/commit/b6adb236ce1cea9b021f2b4296321c04d5c87ecd))
206
+
207
+ - **templates**: Remove 'project_structure/' prefix from all templates
208
+ ([`60cecf0`](https://github.com/dimanu-py/instant-python/commit/60cecf08ea9592a3733aa8511343acb055562024))
209
+
210
+ - **initialize**: Introduce UnknownTemplateError
211
+ ([`d507ed7`](https://github.com/dimanu-py/instant-python/commit/d507ed726ccc4cddc5be75a7dd68a28d644c06e1))
212
+
213
+ - **initialize**: Introduce UnknownNodeTypeError
214
+ ([`b155055`](https://github.com/dimanu-py/instant-python/commit/b1550557508b6af6b8377530c1e000bc0bf7beb0))
215
+
216
+ - **templates**: Format templates correctly so ruff formatter does not fail
217
+ ([`30bb6b1`](https://github.com/dimanu-py/instant-python/commit/30bb6b1cbeaf5969eace22f40997af95db1bfd4a))
218
+
219
+ - **initialize**: Improve error message formatting for command execution failures
220
+ ([`d8bfc8d`](https://github.com/dimanu-py/instant-python/commit/d8bfc8dcafb8d6a35133eb4c138e1c80fbd60ae9))
221
+
222
+ - **initialize**: Correct failing uv test due to interface change
223
+ ([`a65910f`](https://github.com/dimanu-py/instant-python/commit/a65910f7a207c96d23f75077c479d600756ca357))
224
+
225
+ - **initialize**: Update import of NodeWriter to be conditional for type checking
226
+ ([`1afe2ad`](https://github.com/dimanu-py/instant-python/commit/1afe2adc7d2d50afcd3838d5e3e4a37f504a30cb))
227
+
228
+ ### ⚙️ Build System
229
+
230
+ - Fix misspelling in pyproject.toml pytest config section
231
+ ([`84cf27c`](https://github.com/dimanu-py/instant-python/commit/84cf27ce01d6aca47f79f90e572f6220c3e62b1e))
232
+
233
+ ### ♻️ Refactoring
234
+
235
+ - **shared**: Remove unused methods from ConfigSchema class
236
+ ([`5ef231f`](https://github.com/dimanu-py/instant-python/commit/5ef231fd3d36ce1801cdf4d0c9d84d0e9af4b0a9))
237
+
238
+ - Inline all messages in call to super method in application errors
239
+ ([`3980af5`](https://github.com/dimanu-py/instant-python/commit/3980af5bc6252bf036838c431d2ac456d548105a))
240
+
241
+ - **shared**: Delete error types enum
242
+ ([`9ef7981`](https://github.com/dimanu-py/instant-python/commit/9ef798172abce517ddec1bcfa9e2558657ea0642))
243
+
244
+ - **shared**: Remove 'type' attribute in application errors as it's not used
245
+ ([`00674fa`](https://github.com/dimanu-py/instant-python/commit/00674fa87a429330c1ee1de3d36d19f016dd3a70))
246
+
247
+ - **initialize**: Streamline project setup process by modularizing methods
248
+ ([`f9f0632`](https://github.com/dimanu-py/instant-python/commit/f9f063286bfaf95b29e6fe1f1b7f13a2f81f3d21))
249
+
250
+ - **config**: Move ConfigSchema domain object to shared folder
251
+ ([`fbd8bd0`](https://github.com/dimanu-py/instant-python/commit/fbd8bd0febca0f1890e991f364429e4036f64e87))
252
+
253
+ - **initialize**: Delete config reader use case
254
+ ([`2bfe0cc`](https://github.com/dimanu-py/instant-python/commit/2bfe0cc824ca166ea8130ed9baac24861dd2ff96))
255
+
256
+ - **initialize**: Rename destination_path to base_directory for clarity
257
+ ([`bc96230`](https://github.com/dimanu-py/instant-python/commit/bc96230ecffab2407fd68c12a2e57f5107283032))
258
+
259
+ - **cli**: Update working directory handling for project initialization
260
+ ([`b9025e8`](https://github.com/dimanu-py/instant-python/commit/b9025e8a359841388d220caac691bca32f23be93))
261
+
262
+ - **initialize**: Add custom error for missing configuration files
263
+ ([`1daec9d`](https://github.com/dimanu-py/instant-python/commit/1daec9dcc27a456022fea9e09cc7d3cb299bf760))
264
+
265
+ - **initialize**: Rename write method to move for clarity
266
+ ([`f29dbaa`](https://github.com/dimanu-py/instant-python/commit/f29dbaabda7caccbd42ea8a0a21413685ad54410))
267
+
268
+ - **initialize**: Allow optional user template path in initializer
269
+ ([`6b722e2`](https://github.com/dimanu-py/instant-python/commit/6b722e2cc852d1d40b9de4e57a5aa9e72566751c))
270
+
271
+ - **initialize**: Streamline project initialization by integrating ProjectInitializer and
272
+ simplifying config handling
273
+ ([`791a841`](https://github.com/dimanu-py/instant-python/commit/791a8410fe8ca06e808d6408f72f40c65989cc73))
274
+
275
+ - **templates**: Add 'template' field to all templates structures
276
+ ([`745bcd7`](https://github.com/dimanu-py/instant-python/commit/745bcd76ee6efdf5a400d20b59e08d431184fcd8))
277
+
278
+ - **initialize**: Remove repository dependency and update execute method signature
279
+ ([`148d3bb`](https://github.com/dimanu-py/instant-python/commit/148d3bb4afed116be36cc71066562f16fe7f1d5d))
280
+
281
+ - **initialize**: Simplify project creation by removing custom template option
282
+ ([`ca697d0`](https://github.com/dimanu-py/instant-python/commit/ca697d0a9d1b58779edc114b14530fca80e2bf04))
283
+
284
+ - **initialize**: Change config_file_path type to str and convert to Path in execute method
285
+ ([`961b162`](https://github.com/dimanu-py/instant-python/commit/961b162df244136d0771edb18897474038782458))
286
+
287
+ - **repository**: Rename config_repository to yaml_config_repository and update imports
288
+ ([`688937a`](https://github.com/dimanu-py/instant-python/commit/688937a66f1caa239298509f1efbd9f7a86caa23))
289
+
290
+ - **config**: Update ConfigRepository to return ConfigSchema instead of dict
291
+ ([`4d5e4ed`](https://github.com/dimanu-py/instant-python/commit/4d5e4ed1e6fa7584f5c4e6dbe27e5bb33223ba25))
292
+
293
+ - **initialize**: Add ConfigRepository dependency to ProjectInitializer
294
+ ([`440a420`](https://github.com/dimanu-py/instant-python/commit/440a420143b5f5a21777f8ad036a8e88c89c1221))
295
+
296
+ - **config**: Remove parser port and adapter now that config schema validates structure
297
+ ([`d228200`](https://github.com/dimanu-py/instant-python/commit/d22820066f8437f87e9eab4c9e79e66a9ae2a54a))
298
+
299
+ - **initialize**: Simplify ConfigReader by removing parser dependency and using ConfigSchema for
300
+ configuration parsing
301
+ ([`ed8b871`](https://github.com/dimanu-py/instant-python/commit/ed8b871dd15b2bd7944315d996c4ebecd2ad2f55))
302
+
303
+ - **config**: Modify config generator to instantiate a ConfigSchema instead of using parser
304
+ ([`4ac7e15`](https://github.com/dimanu-py/instant-python/commit/4ac7e158bb812c413927e5844f10d2ce19385fcd))
305
+
306
+ - **config**: Move ConfigKeyNotPresent and EmptyConfigurationNotAllowed to config_schema.py
307
+ ([`0ecb482`](https://github.com/dimanu-py/instant-python/commit/0ecb48244e31c3b8b7c7f27bb7f90e6d43bbb271))
308
+
309
+ - **initialize**: Replace command execution with execute_or_raise for improved error handling in pdm
310
+ env manager
311
+ ([`4903ece`](https://github.com/dimanu-py/instant-python/commit/4903ece3c63a9485d01ea8086400b3799b4d7db2))
312
+
313
+ - **initialize**: Replace command execution with execute_or_raise for improved error handling in uv
314
+ env manager
315
+ ([`2972f57`](https://github.com/dimanu-py/instant-python/commit/2972f57083c8fa8e9e3ce01f341f69a2698d5d00))
316
+
317
+ - **initialize**: Replace command execution with execute_or_raise for improved error handling
318
+ ([`506cd56`](https://github.com/dimanu-py/instant-python/commit/506cd561d2be59e537a46d46019b55fe1b4ca0a4))
319
+
320
+ - **initialize**: Modify GitConfigurer internal methods to use 'execute_or_raise' from console for
321
+ those commands that can fail
322
+ ([`3c18406`](https://github.com/dimanu-py/instant-python/commit/3c18406d27da61b4633f5a239a5540468aaf6514))
323
+
324
+ - **initialize**: Inject console into GitConfigurer and update setup method
325
+ ([`551419c`](https://github.com/dimanu-py/instant-python/commit/551419c35e4070c2477ac1767110989611ab132a))
326
+
327
+ - **initialize**: Remove project_directory parameter from GitConfigurer
328
+ ([`d376364`](https://github.com/dimanu-py/instant-python/commit/d37636439f2ed519a40ff5037b4914f02bc245dd))
329
+
330
+ - **initialize**: Remove unused _run_command method from GitConfigurer
331
+ ([`ac76479`](https://github.com/dimanu-py/instant-python/commit/ac76479eb0e3a116bcf2806447c17b294ac675c2))
332
+
333
+ - **initialize**: Streamline command execution by removing console checks in GitConfigurer methods
334
+ ([`cd88a92`](https://github.com/dimanu-py/instant-python/commit/cd88a9233da914e6399ca200c446e146884e4eff))
335
+
336
+ - **initialize**: Use console when is injected to execute git commands
337
+ ([`1299f0a`](https://github.com/dimanu-py/instant-python/commit/1299f0a6483342cfd8cf329ed754a8b5bc14f2ad))
338
+
339
+ - **initialize**: Add console parameter to GitConfigurer constructor
340
+ ([`4f9e9e9`](https://github.com/dimanu-py/instant-python/commit/4f9e9e9baa4aef3b796c7037f8b1191357f11063))
341
+
342
+ - **initialize**: Rename setup_repository to setup and update parameter naming
343
+ ([`4bff249`](https://github.com/dimanu-py/instant-python/commit/4bff249562649645babb821ae66061346ef07847))
344
+
345
+ - **initialize**: Reorganize git configurer imports and file structure
346
+ ([`e894a87`](https://github.com/dimanu-py/instant-python/commit/e894a87b899481a5e484c905dfafa61f1720ccaa))
347
+
348
+ - **initialize**: Make RuffProjectFormatter inherit from ProjectFormatter
349
+ ([`278b16e`](https://github.com/dimanu-py/instant-python/commit/278b16e89344f8159f2663868c4dd4383776d2dc))
350
+
351
+ - **initialize**: Reorganize CommandExecutionError import and remove redundant definitions
352
+ ([`b8f1074`](https://github.com/dimanu-py/instant-python/commit/b8f1074e20cf2900b5fe6a69ad32a857f5b50e8d))
353
+
354
+ - **initialize**: Inject console into RuffProjectFormatter
355
+ ([`4e147b7`](https://github.com/dimanu-py/instant-python/commit/4e147b788411ef67c6bd036d05129f2746807237))
356
+
357
+ - **initialize**: Remove project_directory parameter from RuffProjectFormatter
358
+ ([`0a6d292`](https://github.com/dimanu-py/instant-python/commit/0a6d292de9bb733b3d67260c264a4c004410763b))
359
+
360
+ - **initialize**: Use console when is injected to run format command
361
+ ([`f87905c`](https://github.com/dimanu-py/instant-python/commit/f87905cfd83472e4bc299479272a3740fabfb9ce))
362
+
363
+ - **formatter**: Add console parameter to RuffProjectFormatter for enhanced flexibility
364
+ ([`b741778`](https://github.com/dimanu-py/instant-python/commit/b7417781d08f39e0543aafb398eab92aa26417f5))
365
+
366
+ - **initialize**: Rename ProjectFormatter to UvxProjectFormatter and update references
367
+ ([`bf3078c`](https://github.com/dimanu-py/instant-python/commit/bf3078c04f85cc58dedea911ab0ff0283aeeac4d))
368
+
369
+ - **initialize**: Move ProjectFormatter to initialize.infra for better organization
370
+ ([`8be7870`](https://github.com/dimanu-py/instant-python/commit/8be787092f02ada1584c251332c6ab5452e5f909))
371
+
372
+ - **initialize**: Add ProjectFormatter to ProjectInitializer for enhanced project formatting
373
+ ([`2603d66`](https://github.com/dimanu-py/instant-python/commit/2603d665c75a5618416941086c014ee2034126ad))
374
+
375
+ - **initialize**: Inject console instance into env manager factory instead of passing project folder
376
+ path
377
+ ([`bc695ef`](https://github.com/dimanu-py/instant-python/commit/bc695eff244709a8fdd6843e7b0afcb1e1e5a969))
378
+
379
+ - **initialize**: Remove 'project_directory' attribute from env managers as is console who executes
380
+ the commands
381
+ ([`327922f`](https://github.com/dimanu-py/instant-python/commit/327922f9d6bab25f2cce1e475350f560d13dbfe2))
382
+
383
+ - **initialize**: Replace subprocess calls with SystemConsole for command execution in pdm env
384
+ manager
385
+ ([`fba2167`](https://github.com/dimanu-py/instant-python/commit/fba2167a5210ff7ed32f24097344509e74cd4a10))
386
+
387
+ - **initialize**: Extract method to encapsulate all the logic executed to install one dependency
388
+ ([`750f7e7`](https://github.com/dimanu-py/instant-python/commit/750f7e785776e812e115b1cf8ccd75d5976aef1c))
389
+
390
+ - **initialize**: Extract method for raising command execution error
391
+ ([`02edb57`](https://github.com/dimanu-py/instant-python/commit/02edb57777f0d3037db96e7b17e5c526d281856f))
392
+
393
+ - **initialize**: Remove unused subprocess command execution method
394
+ ([`380bb4f`](https://github.com/dimanu-py/instant-python/commit/380bb4fc78ff042bcd82d50e5032ec8743ceb70c))
395
+
396
+ - **initialize**: Simplify setup method by removing unnecessary try-except block
397
+ ([`88bb72a`](https://github.com/dimanu-py/instant-python/commit/88bb72aa61ed4e3a006ad33a222713fac19ebcd3))
398
+
399
+ - **initialize**: Clean up UvEnvManager removing old implementation that run directly commands in
400
+ the console
401
+ ([`699db31`](https://github.com/dimanu-py/instant-python/commit/699db31414748d6e428bbae7f1dc8377ec8c0936))
402
+
403
+ - **initialize**: Pull down _run_command and attributes from EnvManager to leave it as a pure
404
+ interface and begin refactor to inject SystemConsole
405
+ ([`b197e68`](https://github.com/dimanu-py/instant-python/commit/b197e68b622a719ac13c5ed63c67dbd71ee4fcd3))
406
+
407
+ - **initialize**: Extract command execution method to run commands
408
+ ([`1753fd4`](https://github.com/dimanu-py/instant-python/commit/1753fd40e05f984be3e5943bd1649c2e1312ce13))
409
+
410
+ - **initialize**: Enhance error message for unknown dependency managers
411
+ ([`e1dcb29`](https://github.com/dimanu-py/instant-python/commit/e1dcb290a70b7999b4b57dc34017671b4eedfcd2))
412
+
413
+ - **dependency-manager**: Remove old files for dependency manager concept
414
+ ([`41b2558`](https://github.com/dimanu-py/instant-python/commit/41b255870f8138e3abcd7f71e68821348f364a33))
415
+
416
+ - **initialize**: Move previous implementation for dependencies managers to env manager concept in
417
+ new initialize command architecture
418
+ ([`aacc3d3`](https://github.com/dimanu-py/instant-python/commit/aacc3d3d4e864be902d732d6080d78da7b453bae))
419
+
420
+ - **initialize**: Remove config parameter from write method in ProjectWriter and
421
+ FileSystemProjectWriter
422
+ ([`d30d142`](https://github.com/dimanu-py/instant-python/commit/d30d142b68e80f2459a80a64d358485b972ec65f))
423
+
424
+ - **initialize**: Convert File and Directory classes to inherit from Node
425
+ ([`6abad70`](https://github.com/dimanu-py/instant-python/commit/6abad7077d45d212d070683ecb5c15ae0ffc3073))
426
+
427
+ - **initialize**: Rename nodes module to node and update imports
428
+ ([`f91b46c`](https://github.com/dimanu-py/instant-python/commit/f91b46c0cfe59949e51ee274eb693766126694e1))
429
+
430
+ - **initialize**: Simplify node writing logic by delegating to node's create method
431
+ ([`ad2b780`](https://github.com/dimanu-py/instant-python/commit/ad2b78082da62cbb6b2fbed01194f86cea23604a))
432
+
433
+ - **initialize**: Rename build_path_for to _build_path_for and update create method
434
+ ([`5fc167d`](https://github.com/dimanu-py/instant-python/commit/5fc167de71228d2e2003336bed8c8cc2a33d5654))
435
+
436
+ - **initialize**: Convert 'build_path_for' method in File to protected as now it wont be accessed
437
+ from outside
438
+ ([`f211a85`](https://github.com/dimanu-py/instant-python/commit/f211a857047072f33575406da612463142637bf4))
439
+
440
+ - **initialize**: Build path for file and directory using Path instead of string
441
+ ([`a0ca50c`](https://github.com/dimanu-py/instant-python/commit/a0ca50c0fe6e36374bd0b481b756f7c00ffcf126))
442
+
443
+ - **initialize**: Update import statement for NodeType in jinja_project_renderer.py
444
+ ([`6c1531c`](https://github.com/dimanu-py/instant-python/commit/6c1531c43899c9f82d027c2b12d9bcbaeaf938a9))
445
+
446
+ - **initialize**: Update jinja project renderer to return ProjectStructure using named constructor
447
+ ([`6e20b78`](https://github.com/dimanu-py/instant-python/commit/6e20b78fe29767f70ea95a0a3516239b611d80e5))
448
+
449
+ - **initialize**: Modify project structure constructor to receive the list of Nodes and implement a
450
+ named constructor to build the nodes from raw structure
451
+ ([`2eeba6f`](https://github.com/dimanu-py/instant-python/commit/2eeba6fbb87186c039a3852ae5d1fd81a9f5698c))
452
+
453
+
5
454
  ## v0.14.0 (2025-11-03)
6
455
 
7
456
  ### ✨ Features
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: instant-python
3
- Version: 0.14.0
3
+ Version: 0.15.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/
@@ -238,20 +238,12 @@ Description-Content-Type: text/markdown
238
238
  <a href="https://dimanu-py.github.io/instant-python/examples/configuration/">Examples</a>&nbsp;&nbsp;•&nbsp;
239
239
  <a href="https://dimanu-py.github.io/instant-python/home/contributing/">Contributing</a>
240
240
  </p>
241
- <p align="center">
242
- <img
243
- src="https://github.com/user-attachments/assets/132513c0-e472-4523-a0fd-c27b70dfd78a"
244
- alt="instant-python-demo"
245
- width="80%"
246
- />
247
- <br>
248
- </p>
249
241
 
250
242
  <div align="center"><table><tr><td>
251
243
  <b>Instant Python</b> replaces extensive manual setup with a simple command to get started quickly. Its motivation is to emulate
252
244
  commands like `ng new` or `create-react-app`, but for Python projects.
253
245
 
254
- <br><br>
246
+ <br>
255
247
 
256
248
  <b>Why use Instant Python?</b> Generating your Python project with Instant Python lets you:
257
249
 
@@ -267,38 +259,42 @@ commands like `ng new` or `create-react-app`, but for Python projects.
267
259
 
268
260
  </td></tr></table></div>
269
261
 
270
- ## Documentation
262
+ ## Navigation Guide
271
263
 
272
- This section provides a high-level overview of the `instant-python` library, its features, and how to get started.
273
- For detailed instructions and examples, please refer to the [full Instant Python documentation](https://dimanu-py.github.io/instant-python/home/).
264
+ This section provides a high-level overview of the `instant-python` documentation
265
+ so can quickly find what you need.
274
266
 
275
267
  - [Installation](https://dimanu-py.github.io/instant-python/home/#installation)
276
268
  - [Getting Started](https://dimanu-py.github.io/instant-python/home/getting_started/)
277
269
  - [Examples](https://dimanu-py.github.io/instant-python/examples/configuration/)
278
270
 
279
- ### Need help?
271
+ ### For Users
280
272
 
281
- - Join a discussion 💬 on [GitHub Discussions]
282
- - [Raise an issue][GitHub Issues] on GitHub
273
+ - [Installation]: begin by learning how to install `instant-python`.
274
+ - [First Steps]: get started with the basic features of `instant-python`.
275
+ - [Advanced Usage and Customization]: explore advanced features and customization options.
283
276
 
284
- [GitHub Discussions]: https://github.com/dimanu-py/instant-python/discussions
285
- [GitHub Issues]: https://github.com/dimanu-py/instant-python/issues
277
+ [Installation]: https://dimanu-py.github.io/instant-python/getting_started/installation/
278
+ [First Steps]: https://dimanu-py.github.io/instant-python/getting_started/first_steps/
279
+ [Advanced Usage and Customization]: https://dimanu-py.github.io/instant-python/guide/
286
280
 
287
- ## Installation
281
+ ### For Developers
288
282
 
289
- The latest version of `instant-python` can be installed from PyPI:
283
+ - [Contributing]: learn how to contribute to `instant-python` development.
284
+ - [Releases]: understand our release process and versioning.
285
+ - [Security]: understand our security policies and reporting procedures.
290
286
 
291
- ```bash
292
- pip install instant-python
293
- ```
287
+ [Contributing]: https://dimanu-py.github.io/instant-python/development/contributing/
288
+ [Releases]: https://dimanu-py.github.io/instant-python/development/releases/
289
+ [Security]: https://dimanu-py.github.io/instant-python/development/security/
294
290
 
295
- > [!TIP]
296
- > We highly recommend using a virtual environment to avoid conflicts with other Python packages.
291
+ ### Need help?
297
292
 
298
- ### Requirements
293
+ - Join a discussion 💬 on [GitHub Discussions]
294
+ - [Raise an issue][GitHub Issues] on GitHub
299
295
 
300
- Instant Python tries to support the latest Python versions, we officially support from Python 3.10 to 3.13.
301
- Older versions of Python may work, but they are not guaranteed to be compatible.
296
+ [GitHub Discussions]: https://github.com/dimanu-py/instant-python/discussions
297
+ [GitHub Issues]: https://github.com/dimanu-py/instant-python/issues
302
298
 
303
299
  [//]: # (### Do Not Track)
304
300
 
@@ -9,20 +9,12 @@
9
9
  <a href="https://dimanu-py.github.io/instant-python/examples/configuration/">Examples</a>&nbsp;&nbsp;•&nbsp;
10
10
  <a href="https://dimanu-py.github.io/instant-python/home/contributing/">Contributing</a>
11
11
  </p>
12
- <p align="center">
13
- <img
14
- src="https://github.com/user-attachments/assets/132513c0-e472-4523-a0fd-c27b70dfd78a"
15
- alt="instant-python-demo"
16
- width="80%"
17
- />
18
- <br>
19
- </p>
20
12
 
21
13
  <div align="center"><table><tr><td>
22
14
  <b>Instant Python</b> replaces extensive manual setup with a simple command to get started quickly. Its motivation is to emulate
23
15
  commands like `ng new` or `create-react-app`, but for Python projects.
24
16
 
25
- <br><br>
17
+ <br>
26
18
 
27
19
  <b>Why use Instant Python?</b> Generating your Python project with Instant Python lets you:
28
20
 
@@ -38,38 +30,42 @@ commands like `ng new` or `create-react-app`, but for Python projects.
38
30
 
39
31
  </td></tr></table></div>
40
32
 
41
- ## Documentation
33
+ ## Navigation Guide
42
34
 
43
- This section provides a high-level overview of the `instant-python` library, its features, and how to get started.
44
- For detailed instructions and examples, please refer to the [full Instant Python documentation](https://dimanu-py.github.io/instant-python/home/).
35
+ This section provides a high-level overview of the `instant-python` documentation
36
+ so can quickly find what you need.
45
37
 
46
38
  - [Installation](https://dimanu-py.github.io/instant-python/home/#installation)
47
39
  - [Getting Started](https://dimanu-py.github.io/instant-python/home/getting_started/)
48
40
  - [Examples](https://dimanu-py.github.io/instant-python/examples/configuration/)
49
41
 
50
- ### Need help?
42
+ ### For Users
51
43
 
52
- - Join a discussion 💬 on [GitHub Discussions]
53
- - [Raise an issue][GitHub Issues] on GitHub
44
+ - [Installation]: begin by learning how to install `instant-python`.
45
+ - [First Steps]: get started with the basic features of `instant-python`.
46
+ - [Advanced Usage and Customization]: explore advanced features and customization options.
54
47
 
55
- [GitHub Discussions]: https://github.com/dimanu-py/instant-python/discussions
56
- [GitHub Issues]: https://github.com/dimanu-py/instant-python/issues
48
+ [Installation]: https://dimanu-py.github.io/instant-python/getting_started/installation/
49
+ [First Steps]: https://dimanu-py.github.io/instant-python/getting_started/first_steps/
50
+ [Advanced Usage and Customization]: https://dimanu-py.github.io/instant-python/guide/
57
51
 
58
- ## Installation
52
+ ### For Developers
59
53
 
60
- The latest version of `instant-python` can be installed from PyPI:
54
+ - [Contributing]: learn how to contribute to `instant-python` development.
55
+ - [Releases]: understand our release process and versioning.
56
+ - [Security]: understand our security policies and reporting procedures.
61
57
 
62
- ```bash
63
- pip install instant-python
64
- ```
58
+ [Contributing]: https://dimanu-py.github.io/instant-python/development/contributing/
59
+ [Releases]: https://dimanu-py.github.io/instant-python/development/releases/
60
+ [Security]: https://dimanu-py.github.io/instant-python/development/security/
65
61
 
66
- > [!TIP]
67
- > We highly recommend using a virtual environment to avoid conflicts with other Python packages.
62
+ ### Need help?
68
63
 
69
- ### Requirements
64
+ - Join a discussion 💬 on [GitHub Discussions]
65
+ - [Raise an issue][GitHub Issues] on GitHub
70
66
 
71
- Instant Python tries to support the latest Python versions, we officially support from Python 3.10 to 3.13.
72
- Older versions of Python may work, but they are not guaranteed to be compatible.
67
+ [GitHub Discussions]: https://github.com/dimanu-py/instant-python/discussions
68
+ [GitHub Issues]: https://github.com/dimanu-py/instant-python/issues
73
69
 
74
70
  [//]: # (### Do Not Track)
75
71