Raise `PluginError` when the `url` attr is set and it doesn't match any of the plugin's matchers, not just once upon class initialization. Remove `None` type from `Plugin.matcher` and `Plugin.match`: Since the input URL must always match, it is pointless to annotate these attributes as potentially being `None`. This causes lots of headaches in plugin implementations because it requires type-narrowing. Initialize them with `None`, so plugin tests without matchers don't have to call `hasattr()`.
bastimeyer deleted the plugin/matcher-and-match-check-in-url-setter branch
February 2, 2026 18:09Merged