Skip to content

Commit f83ffad

Browse files
committed
Merge branch '7.2' into 7.3
* 7.2: (37 commits) fix dumped markup improve amqp connection issues [Serializer] [ObjectNormalizer] Filter int when using FILTER_BOOL Fix #53778 Issue 59387-2: make check with prefix more robust [PropertyInfo] Add missing test fix tests [Security][Validators] Review translations. [validator] Updated Dutch translation [FrameworkBundle] Fix wiring ConsoleProfilerListener [HttpKernel] Fix link to php doc [Lock] Make sure RedisStore will also support Valkey [Validator] Update sr_Cyrl 120:This value is not a valid slug. [Validator] Update sr_Latn 120:This value is not a valid slug. 6.4 Missing translations for Italian (it) #59419 tests(notifier): avoid failing SNS test with local AWS configuration Fix typo ratio comment chore: PropertyAccess - fix typo in DocBlock [Validator] Missing translations for Brazilian Portuguese (pt_BR) fix(dependency-injection): reset env vars with kernel.reset ...
2 parents 69d3f56 + 82b478c commit f83ffad

File tree

4 files changed

+59
-54
lines changed

4 files changed

+59
-54
lines changed

Dumper/HtmlDumper.php

Lines changed: 43 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -649,7 +649,7 @@ function showCurrent(state)
649649
height: 0;
650650
clear: both;
651651
}
652-
pre.sf-dump span {
652+
pre.sf-dump .sf-dump-ellipsization {
653653
display: inline-flex;
654654
}
655655
pre.sf-dump a {
@@ -667,16 +667,12 @@ function showCurrent(state)
667667
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAHUlEQVQY02O8zAABilCaiQEN0EeA8QuUcX9g3QEAAjcC5piyhyEAAAAASUVORK5CYII=) #D3D3D3;
668668
}
669669
pre.sf-dump .sf-dump-ellipsis {
670-
display: inline-block;
671-
overflow: visible;
672670
text-overflow: ellipsis;
673-
max-width: 5em;
674671
white-space: nowrap;
675672
overflow: hidden;
676-
vertical-align: top;
677673
}
678-
pre.sf-dump .sf-dump-ellipsis+.sf-dump-ellipsis {
679-
max-width: none;
674+
pre.sf-dump .sf-dump-ellipsis-tail {
675+
flex-shrink: 0;
680676
}
681677
pre.sf-dump code {
682678
display:inline;
@@ -840,66 +836,75 @@ protected function style(string $style, string $value, array $attr = []): string
840836
return \sprintf('<a class=sf-dump-ref href=#%s-ref%s title="%d occurrences">%s</a>', $this->dumpId, $r, 1 + $attr['count'], $v);
841837
}
842838

839+
$dumpClasses = ['sf-dump-'.$style];
840+
$dumpTitle = '';
841+
843842
if ('const' === $style && isset($attr['value'])) {
844-
$style .= \sprintf(' title="%s"', esc(\is_scalar($attr['value']) ? $attr['value'] : json_encode($attr['value'])));
843+
$dumpTitle = esc(\is_scalar($attr['value']) ? $attr['value'] : json_encode($attr['value']));
845844
} elseif ('public' === $style) {
846-
$style .= \sprintf(' title="%s"', empty($attr['dynamic']) ? 'Public property' : 'Runtime added dynamic property');
845+
$dumpTitle = empty($attr['dynamic']) ? 'Public property' : 'Runtime added dynamic property';
847846
} elseif ('str' === $style && 1 < $attr['length']) {
848-
$style .= \sprintf(' title="%d%s characters"', $attr['length'], $attr['binary'] ? ' binary or non-UTF-8' : '');
847+
$dumpTitle = \sprintf('%d%s characters', $attr['length'], $attr['binary'] ? ' binary or non-UTF-8' : '');
849848
} elseif ('note' === $style && 0 < ($attr['depth'] ?? 0) && false !== $c = strrpos($value, '\\')) {
850-
$style .= ' title=""';
851849
$attr += [
852850
'ellipsis' => \strlen($value) - $c,
853851
'ellipsis-type' => 'note',
854852
'ellipsis-tail' => 1,
855853
];
856854
} elseif ('protected' === $style) {
857-
$style .= ' title="Protected property"';
855+
$dumpTitle = 'Protected property';
858856
} elseif ('meta' === $style && isset($attr['title'])) {
859-
$style .= \sprintf(' title="%s"', esc($this->utf8Encode($attr['title'])));
857+
$dumpTitle = esc($this->utf8Encode($attr['title']));
860858
} elseif ('private' === $style) {
861-
$style .= \sprintf(' title="Private property defined in class:&#10;`%s`"', esc($this->utf8Encode($attr['class'])));
859+
$dumpTitle = \sprintf('Private property defined in class:&#10;`%s`', esc($this->utf8Encode($attr['class'])));
862860
}
863861

864862
if (isset($attr['ellipsis'])) {
865-
$class = 'sf-dump-ellipsis';
863+
$dumpClasses[] = 'sf-dump-ellipsization';
864+
$ellipsisClass = 'sf-dump-ellipsis';
866865
if (isset($attr['ellipsis-type'])) {
867-
$class = \sprintf('"%s sf-dump-ellipsis-%s"', $class, $attr['ellipsis-type']);
866+
$ellipsisClass .= ' sf-dump-ellipsis-'.$attr['ellipsis-type'];
868867
}
869868
$label = esc(substr($value, -$attr['ellipsis']));
870-
$style = str_replace(' title="', " title=\"$v\n", $style);
871-
$v = \sprintf('<span class=%s>%s</span>', $class, substr($v, 0, -\strlen($label)));
869+
$dumpTitle = $v."\n".$dumpTitle;
870+
$v = sprintf('<span class="%s">%s</span>', $ellipsisClass, substr($v, 0, -\strlen($label)));
872871

873872
if (!empty($attr['ellipsis-tail'])) {
874873
$tail = \strlen(esc(substr($value, -$attr['ellipsis'], $attr['ellipsis-tail'])));
875-
$v .= \sprintf('<span class=%s>%s</span>%s', $class, substr($label, 0, $tail), substr($label, $tail));
874+
$v .= sprintf('<span class="%s">%s</span><span class="sf-dump-ellipsis-tail">%s</span>', $ellipsisClass, substr($label, 0, $tail), substr($label, $tail));
876875
} else {
877-
$v .= $label;
876+
$v .= sprintf('<span class="sf-dump-ellipsis-tail">%s</span>', $label);
878877
}
879878
}
880879

881880
$map = static::$controlCharsMap;
882-
$v = "<span class=sf-dump-{$style}>".preg_replace_callback(static::$controlCharsRx, function ($c) use ($map) {
883-
$s = $b = '<span class="sf-dump-default';
884-
$c = $c[$i = 0];
885-
if ($ns = "\r" === $c[$i] || "\n" === $c[$i]) {
886-
$s .= ' sf-dump-ns';
887-
}
888-
$s .= '">';
889-
do {
890-
if (("\r" === $c[$i] || "\n" === $c[$i]) !== $ns) {
891-
$s .= '</span>'.$b;
892-
if ($ns = !$ns) {
893-
$s .= ' sf-dump-ns';
894-
}
895-
$s .= '">';
881+
$v = sprintf(
882+
'<span class=%s%s%1$s%s>%s</span>',
883+
1 === count($dumpClasses) ? '' : '"',
884+
implode(' ', $dumpClasses),
885+
$dumpTitle ? ' title="'.$dumpTitle.'"' : '',
886+
preg_replace_callback(static::$controlCharsRx, function ($c) use ($map) {
887+
$s = $b = '<span class="sf-dump-default';
888+
$c = $c[$i = 0];
889+
if ($ns = "\r" === $c[$i] || "\n" === $c[$i]) {
890+
$s .= ' sf-dump-ns';
896891
}
892+
$s .= '">';
893+
do {
894+
if (("\r" === $c[$i] || "\n" === $c[$i]) !== $ns) {
895+
$s .= '</span>'.$b;
896+
if ($ns = !$ns) {
897+
$s .= ' sf-dump-ns';
898+
}
899+
$s .= '">';
900+
}
897901

898-
$s .= $map[$c[$i]] ?? \sprintf('\x%02X', \ord($c[$i]));
899-
} while (isset($c[++$i]));
902+
$s .= $map[$c[$i]] ?? \sprintf('\x%02X', \ord($c[$i]));
903+
} while (isset($c[++$i]));
900904

901-
return $s.'</span>';
902-
}, $v).'</span>';
905+
return $s.'</span>';
906+
}, $v)
907+
);
903908

904909
if (!($attr['binary'] ?? false)) {
905910
$v = preg_replace_callback(static::$unicodeCharsRx, function ($c) {

Tests/Caster/ExceptionCasterTest.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -259,12 +259,12 @@ public function testHtmlDump()
259259
<foo></foo><bar><span class=sf-dump-note>Exception</span> {<samp data-depth=1 class=sf-dump-expanded>
260260
#<span class=sf-dump-protected title="Protected property">message</span>: "<span class=sf-dump-str>1</span>"
261261
#<span class=sf-dump-protected title="Protected property">code</span>: <span class=sf-dump-num>0</span>
262-
#<span class=sf-dump-protected title="Protected property">file</span>: "<span class=sf-dump-str title="%sExceptionCasterTest.php
263-
%d characters"><span class="sf-dump-ellipsis sf-dump-ellipsis-path">%s%eVarDumper</span><span class="sf-dump-ellipsis sf-dump-ellipsis-path">%e</span>Tests%eCaster%eExceptionCasterTest.php</span>"
262+
#<span class=sf-dump-protected title="Protected property">file</span>: "<span class="sf-dump-str sf-dump-ellipsization" title="%sExceptionCasterTest.php
263+
%d characters"><span class="sf-dump-ellipsis sf-dump-ellipsis-path">%s%eVarDumper</span><span class="sf-dump-ellipsis sf-dump-ellipsis-path">%e</span><span class="sf-dump-ellipsis-tail">Tests%eCaster%eExceptionCasterTest.php</span></span>"
264264
#<span class=sf-dump-protected title="Protected property">line</span>: <span class=sf-dump-num>%d</span>
265265
<span class=sf-dump-meta>trace</span>: {<samp data-depth=2 class=sf-dump-compact>
266-
<span class=sf-dump-meta title="%sExceptionCasterTest.php
267-
Stack level %d."><span class="sf-dump-ellipsis sf-dump-ellipsis-path">%s%eVarDumper</span><span class="sf-dump-ellipsis sf-dump-ellipsis-path">%e</span>Tests%eCaster%eExceptionCasterTest.php</span>:<span class=sf-dump-num>%d</span>
266+
<span class="sf-dump-meta sf-dump-ellipsization" title="%sExceptionCasterTest.php
267+
Stack level %d."><span class="sf-dump-ellipsis sf-dump-ellipsis-path">%s%eVarDumper</span><span class="sf-dump-ellipsis sf-dump-ellipsis-path">%e</span><span class="sf-dump-ellipsis-tail">Tests%eCaster%eExceptionCasterTest.php</span></span>:<span class=sf-dump-num>%d</span>
268268
&#8230;%d
269269
</samp>}
270270
</samp>}

Tests/Caster/StubCasterTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -211,8 +211,8 @@ public function testClassStubWithNotExistingClass()
211211

212212
$expectedDump = <<<'EODUMP'
213213
<foo></foo><bar><span class=sf-dump-note>array:1</span> [<samp data-depth=1 class=sf-dump-expanded>
214-
<span class=sf-dump-index>0</span> => "<span class=sf-dump-str title="Symfony\Component\VarDumper\Tests\Caster\NotExisting
215-
52 characters"><span class="sf-dump-ellipsis sf-dump-ellipsis-class">Symfony\Component\VarDumper\Tests\Caster</span><span class="sf-dump-ellipsis sf-dump-ellipsis-class">\</span>NotExisting</span>"
214+
<span class=sf-dump-index>0</span> => "<span class="sf-dump-str sf-dump-ellipsization" title="Symfony\Component\VarDumper\Tests\Caster\NotExisting
215+
52 characters"><span class="sf-dump-ellipsis sf-dump-ellipsis-class">Symfony\Component\VarDumper\Tests\Caster</span><span class="sf-dump-ellipsis sf-dump-ellipsis-class">\</span><span class="sf-dump-ellipsis-tail">NotExisting</span></span>"
216216
</samp>]
217217
</bar>
218218
EODUMP;

Tests/Dumper/HtmlDumperTest.php

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -80,18 +80,18 @@ public function testGet()
8080
<span class=sf-dump-meta>seekable</span>: <span class=sf-dump-const>true</span>
8181
%A <span class=sf-dump-meta>options</span>: []
8282
</samp>}
83-
"<span class=sf-dump-key>obj</span>" => <span class=sf-dump-note title="Symfony\Component\VarDumper\Tests\Fixture\DumbFoo
84-
"><span class="sf-dump-ellipsis sf-dump-ellipsis-note">Symfony\Component\VarDumper\Tests\Fixture</span><span class="sf-dump-ellipsis sf-dump-ellipsis-note">\</span>DumbFoo</span> {<a class=sf-dump-ref href=#{$dumpId}-ref2%d title="2 occurrences">#%d</a><samp data-depth=2 id={$dumpId}-ref2%d class=sf-dump-compact>
83+
"<span class=sf-dump-key>obj</span>" => <span class="sf-dump-note sf-dump-ellipsization" title="Symfony\Component\VarDumper\Tests\Fixture\DumbFoo
84+
"><span class="sf-dump-ellipsis sf-dump-ellipsis-note">Symfony\Component\VarDumper\Tests\Fixture</span><span class="sf-dump-ellipsis sf-dump-ellipsis-note">\</span><span class="sf-dump-ellipsis-tail">DumbFoo</span></span> {<a class=sf-dump-ref href=#{$dumpId}-ref2%d title="2 occurrences">#%d</a><samp data-depth=2 id={$dumpId}-ref2%d class=sf-dump-compact>
8585
+<span class=sf-dump-public title="Public property">foo</span>: "<span class=sf-dump-str title="3 characters">foo</span>"
8686
+"<span class=sf-dump-public title="Runtime added dynamic property">bar</span>": "<span class=sf-dump-str title="3 characters">bar</span>"
8787
</samp>}
8888
"<span class=sf-dump-key>closure</span>" => <span class=sf-dump-note>Closure(\$a, ?PDO &amp;\$b = null)</span> {<a class=sf-dump-ref>#%d</a><samp data-depth=2 class=sf-dump-compact>
89-
<span class=sf-dump-meta>class</span>: "<span class=sf-dump-str title="Symfony\Component\VarDumper\Tests\Dumper\HtmlDumperTest
90-
55 characters"><span class="sf-dump-ellipsis sf-dump-ellipsis-class">Symfony\Component\VarDumper\Tests\Dumper</span><span class="sf-dump-ellipsis sf-dump-ellipsis-class">\</span>HtmlDumperTest</span>"
91-
<span class=sf-dump-meta>this</span>: <span class=sf-dump-note title="Symfony\Component\VarDumper\Tests\Dumper\HtmlDumperTest
92-
"><span class="sf-dump-ellipsis sf-dump-ellipsis-note">Symfony\Component\VarDumper\Tests\Dumper</span><span class="sf-dump-ellipsis sf-dump-ellipsis-note">\</span>HtmlDumperTest</span> {<a class=sf-dump-ref>#%d</a> &%s;}
93-
<span class=sf-dump-meta>file</span>: "<span class=sf-dump-str title="{$var['file']}
94-
%d characters"><span class="sf-dump-ellipsis sf-dump-ellipsis-path">%s%eVarDumper</span><span class="sf-dump-ellipsis sf-dump-ellipsis-path">%e</span>Tests%eFixtures%edumb-var.php</span>"
89+
<span class=sf-dump-meta>class</span>: "<span class="sf-dump-str sf-dump-ellipsization" title="Symfony\Component\VarDumper\Tests\Dumper\HtmlDumperTest
90+
55 characters"><span class="sf-dump-ellipsis sf-dump-ellipsis-class">Symfony\Component\VarDumper\Tests\Dumper</span><span class="sf-dump-ellipsis sf-dump-ellipsis-class">\</span><span class="sf-dump-ellipsis-tail">HtmlDumperTest</span></span>"
91+
<span class=sf-dump-meta>this</span>: <span class="sf-dump-note sf-dump-ellipsization" title="Symfony\Component\VarDumper\Tests\Dumper\HtmlDumperTest
92+
"><span class="sf-dump-ellipsis sf-dump-ellipsis-note">Symfony\Component\VarDumper\Tests\Dumper</span><span class="sf-dump-ellipsis sf-dump-ellipsis-note">\</span><span class="sf-dump-ellipsis-tail">HtmlDumperTest</span></span> {<a class=sf-dump-ref>#%d</a> &%s;}
93+
<span class=sf-dump-meta>file</span>: "<span class="sf-dump-str sf-dump-ellipsization" title="{$var['file']}
94+
%d characters"><span class="sf-dump-ellipsis sf-dump-ellipsis-path">%s%eVarDumper</span><span class="sf-dump-ellipsis sf-dump-ellipsis-path">%e</span><span class="sf-dump-ellipsis-tail">Tests%eFixtures%edumb-var.php</span></span>"
9595
<span class=sf-dump-meta>line</span>: "<span class=sf-dump-str title="%d characters">{$var['line']} to {$var['line']}</span>"
9696
</samp>}
9797
"<span class=sf-dump-key>line</span>" => <span class=sf-dump-num>{$var['line']}</span>
@@ -102,8 +102,8 @@ public function testGet()
102102
<span class=sf-dump-index>0</span> => <a class=sf-dump-ref href=#{$dumpId}-ref04 title="2 occurrences">&amp;4</a> <span class=sf-dump-note>array:1</span> [<a class=sf-dump-ref href=#{$dumpId}-ref04 title="2 occurrences">&amp;4</a>]
103103
</samp>]
104104
<span class=sf-dump-key>8</span> => <a class=sf-dump-ref href=#{$dumpId}-ref01 title="2 occurrences">&amp;1</a> <span class=sf-dump-const>null</span>
105-
"<span class=sf-dump-key>sobj</span>" => <span class=sf-dump-note title="Symfony\Component\VarDumper\Tests\Fixture\DumbFoo
106-
"><span class="sf-dump-ellipsis sf-dump-ellipsis-note">Symfony\Component\VarDumper\Tests\Fixture</span><span class="sf-dump-ellipsis sf-dump-ellipsis-note">\</span>DumbFoo</span> {<a class=sf-dump-ref href=#{$dumpId}-ref2%d title="2 occurrences">#%d</a>}
105+
"<span class=sf-dump-key>sobj</span>" => <span class="sf-dump-note sf-dump-ellipsization" title="Symfony\Component\VarDumper\Tests\Fixture\DumbFoo
106+
"><span class="sf-dump-ellipsis sf-dump-ellipsis-note">Symfony\Component\VarDumper\Tests\Fixture</span><span class="sf-dump-ellipsis sf-dump-ellipsis-note">\</span><span class="sf-dump-ellipsis-tail">DumbFoo</span></span> {<a class=sf-dump-ref href=#{$dumpId}-ref2%d title="2 occurrences">#%d</a>}
107107
"<span class=sf-dump-key>snobj</span>" => <a class=sf-dump-ref href=#{$dumpId}-ref03 title="2 occurrences">&amp;3</a> {<a class=sf-dump-ref href=#{$dumpId}-ref2%d title="3 occurrences">#%d</a>}
108108
"<span class=sf-dump-key>snobj2</span>" => {<a class=sf-dump-ref href=#{$dumpId}-ref2%d title="3 occurrences">#%d</a>}
109109
"<span class=sf-dump-key>file</span>" => "<span class=sf-dump-str title="%d characters">{$var['file']}</span>"

0 commit comments

Comments
 (0)