Skip to content

Commit

Permalink
Mark oidc.signature_algorithm tag as legally unused
Browse files Browse the repository at this point in the history
  • Loading branch information
chalasr committed Mar 24, 2024
1 parent d930172 commit 15b26b2
Showing 1 changed file with 35 additions and 32 deletions.
Expand Up @@ -21,7 +21,40 @@
*/
class UnusedTagsPass implements CompilerPassInterface
{
public function process(ContainerBuilder $container): void
{
$tags = array_unique(array_merge($container->findTags(), self::KNOWN_TAGS));

foreach ($container->findUnusedTags() as $tag) {
// skip known tags
if (\in_array($tag, self::KNOWN_TAGS, true)) {
continue;
}

// check for typos
$candidates = [];
foreach ($tags as $definedTag) {
if ($definedTag === $tag) {
continue;
}

if (str_contains($definedTag, $tag) || levenshtein($tag, $definedTag) <= \strlen($tag) / 3) {
$candidates[] = $definedTag;
}
}

$services = array_keys($container->findTaggedServiceIds($tag));
$message = sprintf('Tag "%s" was defined on service(s) "%s", but was never used.', $tag, implode('", "', $services));
if ($candidates) {
$message .= sprintf(' Did you mean "%s"?', implode('", "', $candidates));
}

$container->log($this, $message);
}
}

private const KNOWN_TAGS = [
'annotations.cached_reader',
'asset_mapper.compiler',
'assets.package',
'auto_alias',
Expand All @@ -31,6 +64,7 @@ class UnusedTagsPass implements CompilerPassInterface
'chatter.transport_factory',
'config_cache.resource_checker',
'console.command',
'container.do_not_inline',
'container.env_var_loader',
'container.env_var_processor',
'container.excluded',
Expand Down Expand Up @@ -82,6 +116,7 @@ class UnusedTagsPass implements CompilerPassInterface
'routing.route_loader',
'scheduler.schedule_provider',
'scheduler.task',
'security.access_token_handler.oidc.signature_algorithm',
'security.authenticator.login_linker',
'security.expression_language_provider',
'security.remember_me_handler',
Expand All @@ -103,36 +138,4 @@ class UnusedTagsPass implements CompilerPassInterface
'validator.initializer',
'workflow',
];

public function process(ContainerBuilder $container): void
{
$tags = array_unique(array_merge($container->findTags(), self::KNOWN_TAGS));

foreach ($container->findUnusedTags() as $tag) {
// skip known tags
if (\in_array($tag, self::KNOWN_TAGS, true)) {
continue;
}

// check for typos
$candidates = [];
foreach ($tags as $definedTag) {
if ($definedTag === $tag) {
continue;
}

if (str_contains($definedTag, $tag) || levenshtein($tag, $definedTag) <= \strlen($tag) / 3) {
$candidates[] = $definedTag;
}
}

$services = array_keys($container->findTaggedServiceIds($tag));
$message = sprintf('Tag "%s" was defined on service(s) "%s", but was never used.', $tag, implode('", "', $services));
if ($candidates) {
$message .= sprintf(' Did you mean "%s"?', implode('", "', $candidates));
}

$container->log($this, $message);
}
}
}

0 comments on commit 15b26b2

Please sign in to comment.