python-checks 0.1.2__tar.gz → 0.2.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. {python_checks-0.1.2 → python_checks-0.2.0}/PKG-INFO +5 -1
  2. {python_checks-0.1.2 → python_checks-0.2.0}/README.md +4 -0
  3. {python_checks-0.1.2 → python_checks-0.2.0}/pyproject.toml +1 -1
  4. {python_checks-0.1.2 → python_checks-0.2.0}/pyproject.toml.orig +1 -1
  5. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/environment/_render.py +4 -1
  6. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/environment/_settings.py +5 -0
  7. {python_checks-0.1.2 → python_checks-0.2.0}/LICENSE +0 -0
  8. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/__init__.py +0 -0
  9. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/__init__.py +0 -0
  10. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/_kind.py +0 -0
  11. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/_location.py +0 -0
  12. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/_names.py +0 -0
  13. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/api/__init__.py +0 -0
  14. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/api/_endpoint_declarations.py +0 -0
  15. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/api/_marker.py +0 -0
  16. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/calls/__init__.py +0 -0
  17. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/calls/_confined_functions.py +0 -0
  18. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/calls/_marker.py +0 -0
  19. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/database/__init__.py +0 -0
  20. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/database/_bound_checks.py +0 -0
  21. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/database/_confined_calls.py +0 -0
  22. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/database/_marker.py +0 -0
  23. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/database/_model_boundary.py +0 -0
  24. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/database/_model_columns.py +0 -0
  25. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/database/_raw_sql.py +0 -0
  26. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/database/_schema_drift.py +0 -0
  27. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/database/_statement_keys.py +0 -0
  28. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/effects/__init__.py +0 -0
  29. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/effects/_determinism.py +0 -0
  30. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/effects/_log_events.py +0 -0
  31. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/effects/_marker.py +0 -0
  32. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/hygiene/__init__.py +0 -0
  33. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/hygiene/_dependency_bounds.py +0 -0
  34. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/hygiene/_marker.py +0 -0
  35. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/imports/__init__.py +0 -0
  36. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/imports/_confined.py +0 -0
  37. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/imports/_marker.py +0 -0
  38. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/imports/_sealed.py +0 -0
  39. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/imports/_statements.py +0 -0
  40. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/placement/__init__.py +0 -0
  41. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/placement/_class_modules.py +0 -0
  42. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/placement/_class_placement.py +0 -0
  43. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/placement/_marker.py +0 -0
  44. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/placement/_operation_shape.py +0 -0
  45. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/placement/_required_class.py +0 -0
  46. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/signatures/__init__.py +0 -0
  47. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/signatures/_function_length.py +0 -0
  48. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/signatures/_functions.py +0 -0
  49. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/signatures/_keyword_only.py +0 -0
  50. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/signatures/_marker.py +0 -0
  51. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/signatures/_module_length.py +0 -0
  52. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/signatures/_nesting.py +0 -0
  53. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/signatures/_signature_layout.py +0 -0
  54. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/types/__init__.py +0 -0
  55. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/types/_annotation_shapes.py +0 -0
  56. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/types/_config_fields.py +0 -0
  57. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/types/_confined_types.py +0 -0
  58. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/types/_constant_annotations.py +0 -0
  59. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/types/_frozen_dataclasses.py +0 -0
  60. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/checks/types/_marker.py +0 -0
  61. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/cli/__init__.py +0 -0
  62. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/cli/_app.py +0 -0
  63. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/cli/_protocols.py +0 -0
  64. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/cli/commands/__init__.py +0 -0
  65. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/cli/commands/_explain.py +0 -0
  66. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/cli/commands/_list.py +0 -0
  67. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/cli/commands/_run.py +0 -0
  68. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/cli/commands/_summary.py +0 -0
  69. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/cli/commands/_sync.py +0 -0
  70. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/config/__init__.py +0 -0
  71. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/config/_base.py +0 -0
  72. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/config/_config.py +0 -0
  73. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/config/_constants.py +0 -0
  74. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/config/_errors.py +0 -0
  75. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/config/_loader.py +0 -0
  76. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/config/_toml.py +0 -0
  77. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/contracts/__init__.py +0 -0
  78. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/contracts/_constants.py +0 -0
  79. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/contracts/_layout.py +0 -0
  80. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/contracts/_render.py +0 -0
  81. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/contracts/_settings.py +0 -0
  82. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/core/__init__.py +0 -0
  83. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/core/_constants.py +0 -0
  84. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/core/_discovery.py +0 -0
  85. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/core/_edit.py +0 -0
  86. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/core/_errors.py +0 -0
  87. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/core/_fixer.py +0 -0
  88. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/core/_format.py +0 -0
  89. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/core/_markers.py +0 -0
  90. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/core/_protocols.py +0 -0
  91. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/core/_registry.py +0 -0
  92. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/core/_report.py +0 -0
  93. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/core/_runner.py +0 -0
  94. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/core/_settings.py +0 -0
  95. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/core/_source.py +0 -0
  96. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/core/_violation.py +0 -0
  97. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/environment/__init__.py +0 -0
  98. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/environment/_constants.py +0 -0
  99. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/py.typed +0 -0
  100. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/sync/__init__.py +0 -0
  101. {python_checks-0.1.2 → python_checks-0.2.0}/src/py_checks/sync/_sync.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-checks
3
- Version: 0.1.2
3
+ Version: 0.2.0
4
4
  Summary: Проверки архитектурных соглашений проекта
5
5
  Author: Armontex
6
6
  Author-email: Armontex <windle1337@gmail.com>
@@ -253,6 +253,10 @@ settings = ["myservice.config.settings:Settings"]
253
253
  докстринга класса и `description` поля, если оно у него есть, — так объяснение
254
254
  живёт рядом с полем, а не в файле, который его переживёт.
255
255
 
256
+ Шапку файла можно написать свою — `header = "# Generated by py-checks."`,
257
+ вместе с `#`. Нужна она проекту, который пишет комментарии на другом языке;
258
+ пустая оставляет шапку библиотеки.
259
+
256
260
  Классы импортируются, а не читаются текстом: имя переменной — значение
257
261
  атрибута, собранное вызовом, и прочитать его исходником значит выполнить этот
258
262
  вызов самому.
@@ -237,6 +237,10 @@ settings = ["myservice.config.settings:Settings"]
237
237
  докстринга класса и `description` поля, если оно у него есть, — так объяснение
238
238
  живёт рядом с полем, а не в файле, который его переживёт.
239
239
 
240
+ Шапку файла можно написать свою — `header = "# Generated by py-checks."`,
241
+ вместе с `#`. Нужна она проекту, который пишет комментарии на другом языке;
242
+ пустая оставляет шапку библиотеки.
243
+
240
244
  Классы импортируются, а не читаются текстом: имя переменной — значение
241
245
  атрибута, собранное вызовом, и прочитать его исходником значит выполнить этот
242
246
  вызов самому.
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "python-checks"
3
- version = "0.1.2"
3
+ version = "0.2.0"
4
4
  description = "Проверки архитектурных соглашений проекта"
5
5
  readme = "README.md"
6
6
  license = "MIT"
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "python-checks"
3
- version = "0.1.2"
3
+ version = "0.2.0"
4
4
  description = "Проверки архитектурных соглашений проекта"
5
5
  readme = "README.md"
6
6
  license = "MIT"
@@ -56,9 +56,12 @@ def render(
56
56
  seen=set(),
57
57
  )
58
58
  ]
59
+ head = declared.header.strip() or HEADER.format(
60
+ section=f"{prefix(source=config.origin)}{SECTION}"
61
+ )
59
62
  return root / declared.path, "\n".join(
60
63
  [
61
- HEADER.format(section=f"{prefix(source=config.origin)}{SECTION}"),
64
+ f"{head.rstrip()}\n",
62
65
  *blocks,
63
66
  ]
64
67
  )
@@ -22,10 +22,15 @@ class Example(CheckSettings):
22
22
  «ничего не собирать»: проект без настроек из окружения — обычное дело.
23
23
 
24
24
  `path` — куда писать; по умолчанию `.env.example` в корне.
25
+
26
+ `header` — шапка файла со своим текстом, вместе с `#`. Пустая строка
27
+ оставляет шапку библиотеки: проекту, который пишет комментарии на другом
28
+ языке, своя нужна, остальным — нет.
25
29
  """
26
30
 
27
31
  settings: tuple[str, ...] = ()
28
32
  path: str = FILE
33
+ header: str = ""
29
34
 
30
35
 
31
36
  def example(*, config: Config) -> Example:
File without changes