interfacy 0.6.3__tar.gz → 0.6.4__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 (142) hide show
  1. {interfacy-0.6.3 → interfacy-0.6.4}/PKG-INFO +1 -1
  2. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/console.py +2 -3
  3. {interfacy-0.6.3 → interfacy-0.6.4}/pyproject.toml +1 -1
  4. {interfacy-0.6.3 → interfacy-0.6.4}/.editorconfig +0 -0
  5. {interfacy-0.6.3 → interfacy-0.6.4}/.github/workflows/lint.yml +0 -0
  6. {interfacy-0.6.3 → interfacy-0.6.4}/.github/workflows/python-publish.yml +0 -0
  7. {interfacy-0.6.3 → interfacy-0.6.4}/.github/workflows/tests.yml +0 -0
  8. {interfacy-0.6.3 → interfacy-0.6.4}/.gitignore +0 -0
  9. {interfacy-0.6.3 → interfacy-0.6.4}/.pre-commit-config.yaml +0 -0
  10. {interfacy-0.6.3 → interfacy-0.6.4}/.python-version +0 -0
  11. {interfacy-0.6.3 → interfacy-0.6.4}/.readthedocs.yaml +0 -0
  12. {interfacy-0.6.3 → interfacy-0.6.4}/CONTRIBUTING.md +0 -0
  13. {interfacy-0.6.3 → interfacy-0.6.4}/Justfile +0 -0
  14. {interfacy-0.6.3 → interfacy-0.6.4}/LICENSE +0 -0
  15. {interfacy-0.6.3 → interfacy-0.6.4}/README.md +0 -0
  16. {interfacy-0.6.3 → interfacy-0.6.4}/docs/_ext/__init__.py +0 -0
  17. {interfacy-0.6.3 → interfacy-0.6.4}/docs/_ext/darker_modern_pygments.py +0 -0
  18. {interfacy-0.6.3 → interfacy-0.6.4}/docs/_intersphinx/click.inv +0 -0
  19. {interfacy-0.6.3 → interfacy-0.6.4}/docs/_intersphinx/python.inv +0 -0
  20. {interfacy-0.6.3 → interfacy-0.6.4}/docs/_static/copy_as_markdown.js +0 -0
  21. {interfacy-0.6.3 → interfacy-0.6.4}/docs/_static/custom.css +0 -0
  22. {interfacy-0.6.3 → interfacy-0.6.4}/docs/_templates/badges.html +0 -0
  23. {interfacy-0.6.3 → interfacy-0.6.4}/docs/_templates/meta.html +0 -0
  24. {interfacy-0.6.3 → interfacy-0.6.4}/docs/api/appearance.md +0 -0
  25. {interfacy-0.6.3 → interfacy-0.6.4}/docs/api/groups.md +0 -0
  26. {interfacy-0.6.3 → interfacy-0.6.4}/docs/api/index.md +0 -0
  27. {interfacy-0.6.3 → interfacy-0.6.4}/docs/api/parsers.md +0 -0
  28. {interfacy-0.6.3 → interfacy-0.6.4}/docs/api/schema.md +0 -0
  29. {interfacy-0.6.3 → interfacy-0.6.4}/docs/api/support.md +0 -0
  30. {interfacy-0.6.3 → interfacy-0.6.4}/docs/conf.py +0 -0
  31. {interfacy-0.6.3 → interfacy-0.6.4}/docs/contributing.md +0 -0
  32. {interfacy-0.6.3 → interfacy-0.6.4}/docs/index.md +0 -0
  33. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/.agents/skills/interfacy/SKILL.md +0 -0
  34. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/.agents/skills/interfacy/agents/openai.yaml +0 -0
  35. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/.agents/skills/interfacy/references/api-patterns.md +0 -0
  36. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/.agents/skills/interfacy/references/structured-parameters.md +0 -0
  37. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/__init__.py +0 -0
  38. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/appearance/__init__.py +0 -0
  39. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/appearance/colors.py +0 -0
  40. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/appearance/help_sort.py +0 -0
  41. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/appearance/layout.py +0 -0
  42. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/appearance/layouts.py +0 -0
  43. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/appearance/renderer.py +0 -0
  44. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/appearance/type_help.py +0 -0
  45. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/argparse_backend/__init__.py +0 -0
  46. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/argparse_backend/argparser.py +0 -0
  47. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/argparse_backend/argument_parser.py +0 -0
  48. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/argparse_backend/help_formatter.py +0 -0
  49. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/argparse_backend/runner.py +0 -0
  50. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/cli/__init__.py +0 -0
  51. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/cli/config.py +0 -0
  52. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/cli/main.py +0 -0
  53. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/click_backend/__init__.py +0 -0
  54. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/click_backend/click_parser.py +0 -0
  55. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/click_backend/commands.py +0 -0
  56. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/click_backend/core.py +0 -0
  57. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/click_backend/parser.py +0 -0
  58. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/click_backend/types.py +0 -0
  59. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/core.py +0 -0
  60. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/exceptions.py +0 -0
  61. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/executable_flag.py +0 -0
  62. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/group.py +0 -0
  63. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/interfacy.py +0 -0
  64. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/logger.py +0 -0
  65. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/naming/__init__.py +0 -0
  66. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/naming/abbreviations.py +0 -0
  67. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/naming/command_naming.py +0 -0
  68. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/naming/flag_strategy.py +0 -0
  69. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/naming/name_mapping.py +0 -0
  70. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/pipe.py +0 -0
  71. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/plugins/__init__.py +0 -0
  72. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/plugins/base.py +0 -0
  73. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/py.typed +0 -0
  74. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/runner.py +0 -0
  75. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/schema/__init__.py +0 -0
  76. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/schema/builder.py +0 -0
  77. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/schema/model_argument_mapper.py +0 -0
  78. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/schema/schema.py +0 -0
  79. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/schema/value_plan.py +0 -0
  80. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/type_parsers.py +0 -0
  81. {interfacy-0.6.3 → interfacy-0.6.4}/interfacy/util.py +0 -0
  82. {interfacy-0.6.3 → interfacy-0.6.4}/tests/__init__.py +0 -0
  83. {interfacy-0.6.3 → interfacy-0.6.4}/tests/argparse/__init__.py +0 -0
  84. {interfacy-0.6.3 → interfacy-0.6.4}/tests/argparse/layout/__init__.py +0 -0
  85. {interfacy-0.6.3 → interfacy-0.6.4}/tests/argparse/layout/test_help_layout_edges.py +0 -0
  86. {interfacy-0.6.3 → interfacy-0.6.4}/tests/argparse/layout/test_help_layout_matrix.py +0 -0
  87. {interfacy-0.6.3 → interfacy-0.6.4}/tests/argparse/layout/test_help_rendering_regressions.py +0 -0
  88. {interfacy-0.6.3 → interfacy-0.6.4}/tests/argparse/test_argument_parser_fromfile.py +0 -0
  89. {interfacy-0.6.3 → interfacy-0.6.4}/tests/argparse/test_command_names.py +0 -0
  90. {interfacy-0.6.3 → interfacy-0.6.4}/tests/argparse/test_interface_contract.py +0 -0
  91. {interfacy-0.6.3 → interfacy-0.6.4}/tests/argparse/test_schema_edges.py +0 -0
  92. {interfacy-0.6.3 → interfacy-0.6.4}/tests/argparse/test_tab_completion.py +0 -0
  93. {interfacy-0.6.3 → interfacy-0.6.4}/tests/argparse/test_types/test_containers.py +0 -0
  94. {interfacy-0.6.3 → interfacy-0.6.4}/tests/argparse/test_types/test_legacy_typing.py +0 -0
  95. {interfacy-0.6.3 → interfacy-0.6.4}/tests/argparse/test_types/test_literal_aliases.py +0 -0
  96. {interfacy-0.6.3 → interfacy-0.6.4}/tests/argparse/test_types/test_optional_choices.py +0 -0
  97. {interfacy-0.6.3 → interfacy-0.6.4}/tests/argparse/test_types/test_optionals.py +0 -0
  98. {interfacy-0.6.3 → interfacy-0.6.4}/tests/argparse/test_types/test_param_kinds.py +0 -0
  99. {interfacy-0.6.3 → interfacy-0.6.4}/tests/argparse/test_types/test_primitives.py +0 -0
  100. {interfacy-0.6.3 → interfacy-0.6.4}/tests/argparse/test_types/test_type_aliases.py +0 -0
  101. {interfacy-0.6.3 → interfacy-0.6.4}/tests/cli/test_main.py +0 -0
  102. {interfacy-0.6.3 → interfacy-0.6.4}/tests/click/__init__.py +0 -0
  103. {interfacy-0.6.3 → interfacy-0.6.4}/tests/click/conftest.py +0 -0
  104. {interfacy-0.6.3 → interfacy-0.6.4}/tests/click/test_click_parity.py +0 -0
  105. {interfacy-0.6.3 → interfacy-0.6.4}/tests/click/test_import_shims.py +0 -0
  106. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/__init__.py +0 -0
  107. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_async_runner.py +0 -0
  108. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_command_decorator.py +0 -0
  109. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_command_group.py +0 -0
  110. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_config.py +0 -0
  111. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_executable_flags.py +0 -0
  112. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_exit_code_paths.py +0 -0
  113. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_help_command_groups.py +0 -0
  114. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_help_missing_subcommand.py +0 -0
  115. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_help_option_sort.py +0 -0
  116. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_help_subcommand_sort.py +0 -0
  117. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_interrupt.py +0 -0
  118. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_logger.py +0 -0
  119. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_multi_command.py +0 -0
  120. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_naming.py +0 -0
  121. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_parsing.py +0 -0
  122. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_pipe_execution.py +0 -0
  123. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_plugins.py +0 -0
  124. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_process_title.py +0 -0
  125. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_runner.py +0 -0
  126. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_runner_varargs.py +0 -0
  127. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_system_exit_handling.py +0 -0
  128. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_type_help_tokenization.py +0 -0
  129. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_type_parsers.py +0 -0
  130. {interfacy-0.6.3 → interfacy-0.6.4}/tests/common/test_util.py +0 -0
  131. {interfacy-0.6.3 → interfacy-0.6.4}/tests/conftest.py +0 -0
  132. {interfacy-0.6.3 → interfacy-0.6.4}/tests/schema/__init__.py +0 -0
  133. {interfacy-0.6.3 → interfacy-0.6.4}/tests/schema/conftest.py +0 -0
  134. {interfacy-0.6.3 → interfacy-0.6.4}/tests/schema/test_list_schema.py +0 -0
  135. {interfacy-0.6.3 → interfacy-0.6.4}/tests/schema/test_model_expansion.py +0 -0
  136. {interfacy-0.6.3 → interfacy-0.6.4}/tests/schema/test_parser_schema.py +0 -0
  137. {interfacy-0.6.3 → interfacy-0.6.4}/tests/schema/test_schema_builder_arguments.py +0 -0
  138. {interfacy-0.6.3 → interfacy-0.6.4}/tests/schema/test_schema_builder_commands.py +0 -0
  139. {interfacy-0.6.3 → interfacy-0.6.4}/tests/specs/__init__.py +0 -0
  140. {interfacy-0.6.3 → interfacy-0.6.4}/tests/specs/test_parser_spec_builder.py +0 -0
  141. {interfacy-0.6.3 → interfacy-0.6.4}/tests/test_interfacy_entrypoint.py +0 -0
  142. {interfacy-0.6.3 → interfacy-0.6.4}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: interfacy
3
- Version: 0.6.3
3
+ Version: 0.6.4
4
4
  Summary: Framework for building CLIs from Python callables
5
5
  Project-URL: Repository, https://github.com/zigai/interfacy
6
6
  Project-URL: Issues, https://github.com/zigai/interfacy/issues
@@ -30,13 +30,12 @@ def log_error(tag: str, message: str) -> None:
30
30
  error(formatted)
31
31
 
32
32
 
33
- def log_exception(tag: str, exc: BaseException, *, full_traceback: bool) -> None:
33
+ def log_exception(_tag: str, exc: BaseException, *, full_traceback: bool) -> None:
34
34
  if full_traceback:
35
35
  error(traceback.format_exc())
36
36
 
37
37
  exception_str = type_name(str(type(exc))) + ": " + str(exc)
38
- message = f"[{tag}] {colored(exception_str, color='red')}"
39
- message = colored(message, color="red")
38
+ message = colored(exception_str, color="red")
40
39
  error(message)
41
40
 
42
41
 
@@ -1,7 +1,7 @@
1
1
 
2
2
  [project]
3
3
  name = "interfacy"
4
- version = "0.6.3"
4
+ version = "0.6.4"
5
5
  description = "Framework for building CLIs from Python callables"
6
6
  authors = [{ name = "Žiga Ivanšek", email = "ziga.ivansek@gmail.com" }]
7
7
  license = { file = "LICENSE" }
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes