Skip to content

Commit 7a1bb4e

Browse files
authored
feat: yassg_picture (#222)
* feat: yassg_picture * fix: improve error messages in yassg_thumbnail() for clarity
1 parent be7cf4e commit 7a1bb4e

File tree

16 files changed

+363
-163
lines changed

16 files changed

+363
-163
lines changed

phpstan.baseline.neon

Lines changed: 82 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -337,28 +337,100 @@ parameters:
337337
path: src/Bridge/Twig/Extension/DatabaseExtension.php
338338

339339
-
340-
message: '#^Binary operation "\*" between int and mixed results in an error\.$#'
341-
identifier: binaryOp.invalid
340+
message: '#^Call to function is_object\(\) with string will always evaluate to false\.$#'
341+
identifier: function.impossibleType
342342
count: 1
343-
path: src/Bridge/Twig/Extension/PaginatorExtension.php
343+
path: src/Bridge/Twig/Extension/ImageExtension.php
344344

345345
-
346-
message: '#^Parameter \#1 \$condition of method Sigwin\\YASSG\\Database\<object\>\:\:findAll\(\) expects string\|null, mixed given\.$#'
347-
identifier: argument.type
346+
message: '#^Call to function is_string\(\) with string will always evaluate to true\.$#'
347+
identifier: function.alreadyNarrowedType
348348
count: 1
349-
path: src/Bridge/Twig/Extension/PaginatorExtension.php
349+
path: src/Bridge/Twig/Extension/ImageExtension.php
350350

351351
-
352-
message: '#^Cannot cast mixed to string\.$#'
353-
identifier: cast.string
352+
message: '#^Cannot cast mixed to int\.$#'
353+
identifier: cast.int
354+
count: 2
355+
path: src/Bridge/Twig/Extension/ImageExtension.php
356+
357+
-
358+
message: '#^Method Sigwin\\YASSG\\Bridge\\Twig\\Extension\\ImageExtension\:\:scheduleThumbnail\(\) has parameter \$context with no value type specified in iterable type array\.$#'
359+
identifier: missingType.iterableValue
360+
count: 1
361+
path: src/Bridge/Twig/Extension/ImageExtension.php
362+
363+
-
364+
message: '#^Method Sigwin\\YASSG\\Bridge\\Twig\\Extension\\ImageExtension\:\:scheduleThumbnail\(\) has parameter \$options with no value type specified in iterable type array\.$#'
365+
identifier: missingType.iterableValue
354366
count: 1
355-
path: src/Bridge/Twig/Extension/ThumbnailExtension.php
367+
path: src/Bridge/Twig/Extension/ImageExtension.php
368+
369+
-
370+
message: '#^Only booleans are allowed in a ternary operator condition, string\|null given\.$#'
371+
identifier: ternary.condNotBoolean
372+
count: 3
373+
path: src/Bridge/Twig/Extension/ImageExtension.php
374+
375+
-
376+
message: '#^Parameter \#1 \$options of method Sigwin\\YASSG\\Bridge\\Twig\\Extension\\ImageExtension\:\:buildImgproxyFilter\(\) expects array\<string, string\>, array given\.$#'
377+
identifier: argument.type
378+
count: 1
379+
path: src/Bridge/Twig/Extension/ImageExtension.php
356380

357381
-
358382
message: '#^Parameter \#1 \$search of function str_replace expects array\<string\>\|string, mixed given\.$#'
359383
identifier: argument.type
384+
count: 2
385+
path: src/Bridge/Twig/Extension/ImageExtension.php
386+
387+
-
388+
message: '#^Parameter \#2 \$context of method Sigwin\\YASSG\\Bridge\\Twig\\Extension\\ImageExtension\:\:buildOriginAbsolutePath\(\) expects array\{__path\?\: string\}, array given\.$#'
389+
identifier: argument.type
390+
count: 2
391+
path: src/Bridge/Twig/Extension/ImageExtension.php
392+
393+
-
394+
message: '#^Parameter \#2 \$format of method Sigwin\\YASSG\\Bridge\\Twig\\Extension\\ImageExtension\:\:scheduleThumbnail\(\) expects string, mixed given\.$#'
395+
identifier: argument.type
396+
count: 1
397+
path: src/Bridge/Twig/Extension/ImageExtension.php
398+
399+
-
400+
message: '#^Parameter \#3 \$options of method Sigwin\\YASSG\\Bridge\\Twig\\Extension\\ImageExtension\:\:buildOriginAbsolutePath\(\) expects array\<string, object\|string\>, array given\.$#'
401+
identifier: argument.type
402+
count: 2
403+
path: src/Bridge/Twig/Extension/ImageExtension.php
404+
405+
-
406+
message: '#^Result of && is always false\.$#'
407+
identifier: booleanAnd.alwaysFalse
408+
count: 2
409+
path: src/Bridge/Twig/Extension/ImageExtension.php
410+
411+
-
412+
message: '#^Strict comparison using \!\=\= between 0 and 1 will always evaluate to true\.$#'
413+
identifier: notIdentical.alwaysTrue
414+
count: 1
415+
path: src/Bridge/Twig/Extension/ImageExtension.php
416+
417+
-
418+
message: '#^Unreachable statement \- code above always terminates\.$#'
419+
identifier: deadCode.unreachable
420+
count: 1
421+
path: src/Bridge/Twig/Extension/ImageExtension.php
422+
423+
-
424+
message: '#^Binary operation "\*" between int and mixed results in an error\.$#'
425+
identifier: binaryOp.invalid
426+
count: 1
427+
path: src/Bridge/Twig/Extension/PaginatorExtension.php
428+
429+
-
430+
message: '#^Parameter \#1 \$condition of method Sigwin\\YASSG\\Database\<object\>\:\:findAll\(\) expects string\|null, mixed given\.$#'
431+
identifier: argument.type
360432
count: 1
361-
path: src/Bridge/Twig/Extension/ThumbnailExtension.php
433+
path: src/Bridge/Twig/Extension/PaginatorExtension.php
362434

363435
-
364436
message: '#^Method Sigwin\\YASSG\\BuildOptions\:\:__construct\(\) has parameter \$requestHeaders with no value type specified in iterable type array\.$#'

psalm.baseline.xml

Lines changed: 46 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -456,6 +456,52 @@
456456
<code><![CDATA[DatabaseExtension]]></code>
457457
</UnusedClass>
458458
</file>
459+
<file src="src/Bridge/Twig/Extension/ImageExtension.php">
460+
<DocblockTypeContradiction>
461+
<code><![CDATA[\is_object($item)]]></code>
462+
<code><![CDATA[\is_string($value)]]></code>
463+
</DocblockTypeContradiction>
464+
<InvalidCast>
465+
<code><![CDATA[$options['height']]]></code>
466+
<code><![CDATA[$options['width']]]></code>
467+
</InvalidCast>
468+
<MixedArgument>
469+
<code><![CDATA[$GLOBALS['YASSG_BASEDIR']]]></code>
470+
<code><![CDATA[$GLOBALS['YASSG_BASEDIR']]]></code>
471+
</MixedArgument>
472+
<MixedArgumentTypeCoercion>
473+
<code><![CDATA[$context]]></code>
474+
<code><![CDATA[$options]]></code>
475+
<code><![CDATA[$options]]></code>
476+
</MixedArgumentTypeCoercion>
477+
<MixedPropertyFetch>
478+
<code><![CDATA[$item->__metadata]]></code>
479+
</MixedPropertyFetch>
480+
<NoValue>
481+
<code><![CDATA[$item]]></code>
482+
</NoValue>
483+
<PossiblyFalseOperand>
484+
<code><![CDATA[md5_file($origin)]]></code>
485+
</PossiblyFalseOperand>
486+
<PossiblyInvalidArgument>
487+
<code><![CDATA[$options['format'] ?? 'webp']]></code>
488+
</PossiblyInvalidArgument>
489+
<PossiblyInvalidCast>
490+
<code><![CDATA[$options['format'] ?? 'webp']]></code>
491+
</PossiblyInvalidCast>
492+
<PossiblyUndefinedStringArrayOffset>
493+
<code><![CDATA[$GLOBALS['YASSG_BASEDIR']]]></code>
494+
<code><![CDATA[$GLOBALS['YASSG_BASEDIR']]]></code>
495+
</PossiblyUndefinedStringArrayOffset>
496+
<RiskyTruthyFalsyComparison>
497+
<code><![CDATA[$srcAvif2x]]></code>
498+
<code><![CDATA[$srcFallback2x]]></code>
499+
<code><![CDATA[$srcWebp2x]]></code>
500+
</RiskyTruthyFalsyComparison>
501+
<UnusedClass>
502+
<code><![CDATA[ImageExtension]]></code>
503+
</UnusedClass>
504+
</file>
459505
<file src="src/Bridge/Twig/Extension/IndexExtension.php">
460506
<UnusedClass>
461507
<code><![CDATA[IndexExtension]]></code>
@@ -485,28 +531,6 @@
485531
<code><![CDATA[PaginatorExtension]]></code>
486532
</UnusedClass>
487533
</file>
488-
<file src="src/Bridge/Twig/Extension/ThumbnailExtension.php">
489-
<MixedArgument>
490-
<code><![CDATA[$GLOBALS['YASSG_BASEDIR']]]></code>
491-
</MixedArgument>
492-
<MixedAssignment>
493-
<code><![CDATA[$context['__path']]]></code>
494-
<code><![CDATA[$context['__path']]]></code>
495-
<code><![CDATA[$item]]></code>
496-
</MixedAssignment>
497-
<PossiblyFalseOperand>
498-
<code><![CDATA[md5_file($path)]]></code>
499-
</PossiblyFalseOperand>
500-
<PossiblyNullArgument>
501-
<code><![CDATA[$this->imgproxyUrl]]></code>
502-
</PossiblyNullArgument>
503-
<PossiblyUndefinedStringArrayOffset>
504-
<code><![CDATA[$GLOBALS['YASSG_BASEDIR']]]></code>
505-
</PossiblyUndefinedStringArrayOffset>
506-
<UnusedClass>
507-
<code><![CDATA[ThumbnailExtension]]></code>
508-
</UnusedClass>
509-
</file>
510534
<file src="src/Collection.php">
511535
<PossiblyUnusedMethod>
512536
<code><![CDATA[column]]></code>

0 commit comments

Comments
 (0)