Tools

Repository Author Commit message Committed SHA  
 
phpstan-rules by dg enabled strict PHPStan analysis parameters

Added 9 strict analysis parameters to extension.neon to enforce stricter
type checking in Nette libraries: callable signatures, function/class name
casing, nullable types in signatures and PHPDocs, redundant conditions,
and @var tag validation.

phpstan-rules by dg treat #[Inject] attribute properties as initialized

New InjectPropertyExtension (ReadWritePropertiesExtension) marks properties
annotated with #[Nette\DI\Attributes\Inject] as always-written and
initialized, since Nette DI assigns them after instantiation. Only the
attribute form is recognized, not the legacy @inject phpDoc.

Also teaches TypeAssert::assertNoErrors() to pass the analysed file into
analysedPaths (like assertTypes already does), so classes defined in the
test file are in reflection scope.

phpstan-rules by dg added TypeAssert helper for type inference testing with Nette Tester
phpstan-rules by dg added Forms\Container::getComponent() and $form['…'] return type narrowing based on addXxx() calls
phpstan-rules by dg added universalObjectCratesClasses for Nette
phpstan-rules by dg added Helpers::falseToNull() return type narrowing (string|false → string|null)
phpstan-rules by dg added readme.md
phpstan-rules by dg added Strings::match/matchAll/split() return type narrowing based on boolean arguments
phpstan-rules by dg RemoveFailingReturnTypeExtension: preg_replace/filter null return type removal
phpstan-rules by dg added ClosureTypeCheckIgnoreExtension for runtime type validation pattern (function(Type ...$p) {})(...$args)
phpstan-rules by dg infer $matches type in Strings::replace() callback from regex

New StringsReplaceClosureTypeExtension derives the exact capture-group
shape of the $matches argument of a Strings::replace() callback from the
constant pattern, via RegexArrayShapeMatcher. Falls back to no inference
for non-constant patterns/flags. NativeParameterReflection is internal
phpstan API, so phpstanApi.constructor is ignored for this file.

phpstan-rules by dg uses dresscode
latte-tools by dg added copy of Twig 3.2
latte-tools by dg cs
latte-tools by dg readme: updated links
latte-tools by dg changed namespace to Twiggy
latte-tools by dg twiggy: removed Compiler::addDebugInfo, indent(), outdent()
latte-tools by dg updated .gitattributes
latte-tools by dg twiggy: uses class consts
latte-tools by dg Lexer: removed whitespace trimming
latte-tools by dg twiggy: |default compiles as ??
latte-tools by dg twiggy: fixed In operator
latte-tools by dg twiggy Compiler: generates Latte strings
latte-tools by dg twiggy: round(), ceil(), floor() in Latte 2.10.2
latte-tools by dg twiggy: compiles to Latte
latte-tools by dg added TwigConverter
latte-tools by dg twiggy: changes extension .twig -> .latte
latte-tools by dg twiggy: compiles html_classes as n:class
latte-tools by dg added Php2Latte converter
latte-tools by dg twiggy: fixed WithNode
latte-tools by dg twiggy: |join in Latte 2.10.2
latte-tools by dg twiggy: added Latte keywords

Last synchronization: 2026-09-27 02:02:33