8000 Use twig.file_name_pattern for lint:twig command · symfony/symfony@c458418 · GitHub
[go: up one dir, main page]

Skip to content

Commit c458418

Browse files
committed
Use twig.file_name_pattern for lint:twig command
1 parent c8cc93b commit c458418

File tree

6 files changed

+12
-9
lines changed

6 files changed

+12
-9
lines changed

src/Symfony/Bridge/Twig/Command/LintCommand.php

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,12 +41,14 @@ class LintCommand extends Command
4141
{
4242
private Environment $twig;
4343
private string $format;
44+
protected array $namePatterns;
4445

45-
public function __construct(Environment $twig)
46+
public function __construct(Environment $twig, array $namePatterns = ['*.twig'])
4647
{
4748
parent::__construct();
4849

4950
$this->twig = $twig;
51+
$this->namePatterns = $namePatterns;
5052
}
5153

5254
protected function configure()
@@ -146,7 +148,7 @@ protected function findFiles(string $filename)
146148
if (is_file($filename)) {
147149
return [$filename];
148150
} elseif (is_dir($filename)) {
149-
return Finder::create()->files()->in($filename)->name('*.twig');
151+
return Finder::create()->files()->in($filename)->name($this->namePatterns);
150152
}
151153

152154
throw new RuntimeException(sprintf('File or directory "%s" is not readable.', $filename));

src/Symfony/Bundle/TwigBundle/CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ CHANGELOG
44
6.1
55
---
66

7-
* Add option `twig.file_name_pattern` to restrict which files are compiled by cache warmer.
7+
* Add option `twig.file_name_pattern` to restrict which files are compiled by cache warmer and linter.
88

99
6.0
1010
---

src/Symfony/Bundle/TwigBundle/Command/LintCommand.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ protected function findFiles(string $filename): iterable
4949
if (str_starts_with($filename, '@')) {
5050
$dir = $this->getApplication()->getKernel()->locateResource($filename);
5151

52-
return Finder::create()->files()->in($dir)->name('*.twig');
52+
return Finder::create()->files()->in($dir)->name($this->namePatterns);
5353
}
5454

5555
return parent::findFiles($filename);

src/Symfony/Bundle/TwigBundle/DependencyInjection/Configuration.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,7 @@ private function addTwigOptions(ArrayNodeDefinition $rootNode)
143143
->end()
144144
->arrayNode('file_name_pattern')
145145
->example('*.twig')
146-
->info('Pattern of file name used for cache warmer')
146+
->info('Pattern of file name used for cache warmer and linter')
147147
->beforeNormalization()
148148
->ifString()
149149
->then(function ($value) { return [$value]; })

src/Symfony/Bundle/TwigBundle/DependencyInjection/TwigExtension.php

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -95,9 +95,10 @@ public function load(array $configs, ContainerBuilder $container)
9595
}
9696

9797
// paths are modified in ExtensionPass if forms are enabled
98-
$container->getDefinition('twig.template_iterator')
99-
->replaceArgument(1, $config['paths'])
100-
->replaceArgument(3, $config['file_name_pattern']);
98+
$container->getDefinition('twig.template_iterator')->replaceArgument(1, $config['paths']);
99+
100+
$container->getDefinition('twig.template_iterator')->replaceArgument(3, $config['file_name_pattern']);
101+
$container->getDefinition('twig.command.lint')->replaceArgument(1, $config['file_name_pattern'] ?: ['*.twig']);
101102

102103
foreach ($this->getBundleTemplatePaths($container, $config) as $name => $paths) {
103104
$namespace = $this->normalizeBundleName($name);

src/Symfony/Bundle/TwigBundle/Resources/config/console.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
->tag('console.command')
2828

2929
->set('twig.command.lint', LintCommand::class)
30-
->args([service('twig')])
30+
->args([service('twig'), abstract_arg('File name pattern')])
3131
->tag('console.command')
3232
;
3333
};

0 commit comments

Comments
 (0)
0