Skip to content

Commit 26a06b4

Browse files
committed
Merge branch '6.4' into 7.1
* 6.4: (29 commits) Fix #53778 [PropertyInfo] Add missing test fix tests [Security][Validators] Review translations. [validator] Updated Dutch translation [FrameworkBundle] Fix wiring ConsoleProfilerListener [HttpKernel] Fix link to php doc [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 [Validator] Missing translations for Brazilian Portuguese (pt_BR) [Translation][Validator] Review Russian translation (114 - 120) Review validator-related persian translation with id 120 [Scheduler] Clarify description of exclusion time [HttpFoundation][FrameworkBundle] Reset Request's formats using the service resetter [Mailer] Fix SMTP stream EOF handling on Windows by using feof() [Translations] Make sure PL translations validators.pl.xlf follow the same style [Validator] Checked Turkish validators translations and confirmed [VarDumper] Fix blank strings display ...
2 parents 4509255 + 60de0f3 commit 26a06b4

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
@@ -647,7 +647,7 @@ function showCurrent(state)
647647
height: 0;
648648
clear: both;
649649
}
650-
pre.sf-dump span {
650+
pre.sf-dump .sf-dump-ellipsization {
651651
display: inline-flex;
652652
}
653653
pre.sf-dump a {
@@ -665,16 +665,12 @@ function showCurrent(state)
665665
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAHUlEQVQY02O8zAABilCaiQEN0EeA8QuUcX9g3QEAAjcC5piyhyEAAAAASUVORK5CYII=) #D3D3D3;
666666
}
667667
pre.sf-dump .sf-dump-ellipsis {
668-
display: inline-block;
669-
overflow: visible;
670668
text-overflow: ellipsis;
671-
max-width: 5em;
672669
white-space: nowrap;
673670
overflow: hidden;
674-
vertical-align: top;
675671
}
676-
pre.sf-dump .sf-dump-ellipsis+.sf-dump-ellipsis {
677-
max-width: none;
672+
pre.sf-dump .sf-dump-ellipsis-tail {
673+
flex-shrink: 0;
678674
}
679675
pre.sf-dump code {
680676
display:inline;
@@ -838,66 +834,75 @@ protected function style(string $style, string $value, array $attr = []): string
838834
return sprintf('<a class=sf-dump-ref href=#%s-ref%s title="%d occurrences">%s</a>', $this->dumpId, $r, 1 + $attr['count'], $v);
839835
}
840836

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

862860
if (isset($attr['ellipsis'])) {
863-
$class = 'sf-dump-ellipsis';
861+
$dumpClasses[] = 'sf-dump-ellipsization';
862+
$ellipsisClass = 'sf-dump-ellipsis';
864863
if (isset($attr['ellipsis-type'])) {
865-
$class = sprintf('"%s sf-dump-ellipsis-%s"', $class, $attr['ellipsis-type']);
864+
$ellipsisClass .= ' sf-dump-ellipsis-'.$attr['ellipsis-type'];
866865
}
867866
$label = esc(substr($value, -$attr['ellipsis']));
868-
$style = str_replace(' title="', " title=\"$v\n", $style);
869-
$v = sprintf('<span class=%s>%s</span>', $class, substr($v, 0, -\strlen($label)));
867+
$dumpTitle = $v."\n".$dumpTitle;
868+
$v = sprintf('<span class="%s">%s</span>', $ellipsisClass, substr($v, 0, -\strlen($label)));
870869

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

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

896-
$s .= $map[$c[$i]] ?? sprintf('\x%02X', \ord($c[$i]));
897-
} while (isset($c[++$i]));
900+
$s .= $map[$c[$i]] ?? sprintf('\x%02X', \ord($c[$i]));
901+
} while (isset($c[++$i]));
898902

899-
return $s.'</span>';
900-
}, $v).'</span>';
903+
return $s.'</span>';
904+
}, $v)
905+
);
901906

902907
if (!($attr['binary'] ?? false)) {
903908
$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
@@ -175,8 +175,8 @@ public function testClassStubWithNotExistingClass()
175175

176176
$expectedDump = <<<'EODUMP'
177177
<foo></foo><bar><span class=sf-dump-note>array:1</span> [<samp data-depth=1 class=sf-dump-expanded>
178-
<span class=sf-dump-index>0</span> => "<span class=sf-dump-str title="Symfony\Component\VarDumper\Tests\Caster\NotExisting
179-
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>"
178+
<span class=sf-dump-index>0</span> => "<span class="sf-dump-str sf-dump-ellipsization" title="Symfony\Component\VarDumper\Tests\Caster\NotExisting
179+
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>"
180180
</samp>]
181181
</bar>
182182
EODUMP;

Tests/Dumper/HtmlDumperTest.php

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -79,18 +79,18 @@ public function testGet()
7979
<span class=sf-dump-meta>seekable</span>: <span class=sf-dump-const>true</span>
8080
%A <span class=sf-dump-meta>options</span>: []
8181
</samp>}
82-
"<span class=sf-dump-key>obj</span>" => <span class=sf-dump-note title="Symfony\Component\VarDumper\Tests\Fixture\DumbFoo
83-
"><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>
82+
"<span class=sf-dump-key>obj</span>" => <span class="sf-dump-note sf-dump-ellipsization" title="Symfony\Component\VarDumper\Tests\Fixture\DumbFoo
83+
"><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>
8484
+<span class=sf-dump-public title="Public property">foo</span>: "<span class=sf-dump-str title="3 characters">foo</span>"
8585
+"<span class=sf-dump-public title="Runtime added dynamic property">bar</span>": "<span class=sf-dump-str title="3 characters">bar</span>"
8686
</samp>}
8787
"<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>
88-
<span class=sf-dump-meta>class</span>: "<span class=sf-dump-str title="Symfony\Component\VarDumper\Tests\Dumper\HtmlDumperTest
89-
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>"
90-
<span class=sf-dump-meta>this</span>: <span class=sf-dump-note title="Symfony\Component\VarDumper\Tests\Dumper\HtmlDumperTest
91-
"><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;}
92-
<span class=sf-dump-meta>file</span>: "<span class=sf-dump-str title="{$var['file']}
93-
%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>"
88+
<span class=sf-dump-meta>class</span>: "<span class="sf-dump-str sf-dump-ellipsization" title="Symfony\Component\VarDumper\Tests\Dumper\HtmlDumperTest
89+
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>"
90+
<span class=sf-dump-meta>this</span>: <span class="sf-dump-note sf-dump-ellipsization" title="Symfony\Component\VarDumper\Tests\Dumper\HtmlDumperTest
91+
"><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;}
92+
<span class=sf-dump-meta>file</span>: "<span class="sf-dump-str sf-dump-ellipsization" title="{$var['file']}
93+
%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>"
9494
<span class=sf-dump-meta>line</span>: "<span class=sf-dump-str title="%d characters">{$var['line']} to {$var['line']}</span>"
9595
</samp>}
9696
"<span class=sf-dump-key>line</span>" => <span class=sf-dump-num>{$var['line']}</span>
@@ -101,8 +101,8 @@ public function testGet()
101101
<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>]
102102
</samp>]
103103
<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>
104-
"<span class=sf-dump-key>sobj</span>" => <span class=sf-dump-note title="Symfony\Component\VarDumper\Tests\Fixture\DumbFoo
105-
"><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>}
104+
"<span class=sf-dump-key>sobj</span>" => <span class="sf-dump-note sf-dump-ellipsization" title="Symfony\Component\VarDumper\Tests\Fixture\DumbFoo
105+
"><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>}
106106
"<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>}
107107
"<span class=sf-dump-key>snobj2</span>" => {<a class=sf-dump-ref href=#{$dumpId}-ref2%d title="3 occurrences">#%d</a>}
108108
"<span class=sf-dump-key>file</span>" => "<span class=sf-dump-str title="%d characters">{$var['file']}</span>"

0 commit comments

Comments
 (0)