Skip to content

Compat shims carry no removal version; add an enforced REMOVE_IN and retire them in a batch #515

Closed

Description

@antosubash

Tier 3: deprecations

Shims with no end date

  • host/routes_legacy.py:15: "Scheduled for removal one minor release after the move", with no version named. Added 2026-09-10. The redirects are cacheable 301s.
  • simple_module_hosting/settings.py:1 calls Settings a "back-compat shim", yet it is the main type in about 35 files. Either it isn't a shim, or the migration was never finished.
  • _registrations.py:66-78 keeps the one-argument register_event_handlers form. No module in the repo uses it any more.
  • props.lazy() is deprecated in simple_module_inertia.
  • Public routes have two mechanisms: the legacy AuthProvider.get_public_paths, which maintenance.py:106 still consults, and PublicRouteRegistry.

Fix

  • Add a deprecated(remove_in="0.1.0") helper and a test that fails once the package version reaches remove_in. That forces a decision instead of letting shims live forever.
  • Decide on the Settings naming: rename, or drop the "shim" wording.
  • Move maintenance.py to PublicRouteRegistry and deprecate get_public_paths.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions