simple-module-core 0.0.31__tar.gz → 0.0.32__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 (59) hide show
  1. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/PKG-INFO +1 -1
  2. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/pyproject.toml +1 -1
  3. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/module.py +9 -5
  4. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/.gitignore +0 -0
  5. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/LICENSE +0 -0
  6. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/README.md +0 -0
  7. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/__init__.py +0 -0
  8. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/__main__.py +0 -0
  9. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/audit_links.py +0 -0
  10. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/csp.py +0 -0
  11. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/design_packs.py +0 -0
  12. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/diagnostics/__init__.py +0 -0
  13. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/diagnostics/_coupling.py +0 -0
  14. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/diagnostics/_css.py +0 -0
  15. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/diagnostics/_i18n.py +0 -0
  16. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/diagnostics/_inertia_api.py +0 -0
  17. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/diagnostics/_js_workspace.py +0 -0
  18. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/diagnostics/_migration.py +0 -0
  19. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/diagnostics/_module.py +0 -0
  20. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/diagnostics/_pages.py +0 -0
  21. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/diagnostics/_runner.py +0 -0
  22. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/diagnostics/_types.py +0 -0
  23. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/discovery.py +0 -0
  24. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/dotenv.py +0 -0
  25. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/environments.py +0 -0
  26. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/events.py +0 -0
  27. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/exceptions.py +0 -0
  28. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/feature_flags.py +0 -0
  29. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/health.py +0 -0
  30. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/i18n.py +0 -0
  31. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/menu.py +0 -0
  32. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/permissions.py +0 -0
  33. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/public_routes.py +0 -0
  34. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/py.typed +0 -0
  35. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/services.py +0 -0
  36. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/simple_module_core/versioning.py +0 -0
  37. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_audit_links.py +0 -0
  38. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_auth_provider_selection.py +0 -0
  39. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_csp_registry.py +0 -0
  40. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_css_diagnostics.py +0 -0
  41. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_css_scanner.py +0 -0
  42. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_design_packs.py +0 -0
  43. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_diagnostics.py +0 -0
  44. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_discovery.py +0 -0
  45. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_dotenv.py +0 -0
  46. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_environments.py +0 -0
  47. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_events.py +0 -0
  48. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_feature_flags.py +0 -0
  49. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_feature_flags_decorator.py +0 -0
  50. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_health_registry.py +0 -0
  51. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_i18n.py +0 -0
  52. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_i18n_diagnostics.py +0 -0
  53. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_menu.py +0 -0
  54. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_module_base.py +0 -0
  55. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_module_diagnostics.py +0 -0
  56. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_permissions.py +0 -0
  57. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_public_routes.py +0 -0
  58. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_services.py +0 -0
  59. {simple_module_core-0.0.31 → simple_module_core-0.0.32}/tests/test_versioning.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: simple_module_core
3
- Version: 0.0.31
3
+ Version: 0.0.32
4
4
  Summary: Module-system primitives for the simple_module framework — ModuleBase, discovery, diagnostics, events
5
5
  Project-URL: Homepage, https://github.com/antosubash/simple_module_python
6
6
  Project-URL: Repository, https://github.com/antosubash/simple_module_python
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "simple_module_core"
3
- version = "0.0.31"
3
+ version = "0.0.32"
4
4
  description = "Module-system primitives for the simple_module framework — ModuleBase, discovery, diagnostics, events"
5
5
  readme = "README.md"
6
6
  license = "MIT"
@@ -185,20 +185,24 @@ class ModuleBase(ABC):
185
185
  def register_audit_links(self, registry: AuditLinkRegistry) -> None:
186
186
  """Declare where this module's audited records can be viewed.
187
187
 
188
- An audit entry stores a table name and a primary key, which tells the
189
- reader what changed but gives them no way to open it. Override this
190
- hook to make your module's rows reachable from the audit log::
188
+ An audit entry stores a model class name and a primary key, which
189
+ tells the reader what changed but gives them no way to open it.
190
+ Override this hook to make your module's rows reachable from the audit
191
+ log::
191
192
 
192
193
  def register_audit_links(self, registry):
193
194
  registry.register(
194
195
  AuditLink(
195
- entity_type="users_user",
196
+ entity_type=User.__name__,
196
197
  url_template="/admin/users/{id}/edit",
197
198
  label="User",
198
199
  )
199
200
  )
200
201
 
201
- ``entity_type`` is the ``__tablename__`` the rows are audited under.
202
+ ``entity_type`` is the **model class name** the rows are audited under
203
+ (``"User"``), not the ``__tablename__`` (``"users_user"``):
204
+ ``snapshot_changes`` records ``type(obj).__name__``, so a table-name
205
+ key silently never matches.
202
206
  Registering only supplies the URL — the target route still enforces
203
207
  its own permissions, so linking never widens access. Called once at
204
208
  boot, in dependency order.