Web.Auth.Authenticator
has a similar problem as !3440 (merged), !3450 (merged) - it's both a behaviour and a config Wrapper module, creating compile-time cycles.
I broke it up into 3 separate modules:
-
Web.Auth.Authenticator
- now strictly a behaviour, only contains@callback
's -
Web.Auth.WrapperAuthenticator
- anAuthenticator
implementation that dynamically selects the auth module based on config -
Web.Auth.Helpers
- contains helper functions originally fromWeb.Auth.Authenticator
Now there's one less cycle (a big one) and the code is more idiomatic: https://www.diffchecker.com/534XPg3w