8000 Merge branch '3.0' · symfony/symfony@1509ec9 · GitHub
[go: up one dir, main page]

Skip to content

Commit 1509ec9

Browse files
Merge branch '3.0'
* 3.0: Fix merge [Form] fix BC break introduced with prototype_data option [Ldap] Escape carriage returns in LDAP DNs. Upgrade for 2.8: ContainerAware was deprecated in favour of ContainerAwareTrait [ci skip] simplify debug error_reporting levels given php version > 5.3 Fix wrong method name mapping in UPGRADE-3.0.md Use correct height for clearer [Validator] fixed raising violations to a maximum of one
2 parents 28e0f7b + f9ba2cd commit 1509ec9

File tree

12 files changed

+94
-25
lines changed
  • Tests/Extension/Core/Type
  • HttpKernel/EventListener
  • Ldap
  • Validator/Constraints
  • 12 files changed

    +94
    -25
    lines changed

    UPGRADE-3.0.md

    Lines changed: 1 addition & 1 deletion
    Original file line numberDiff line numberDiff line change
    @@ -11,7 +11,7 @@ UPGRADE FROM 2.x to 3.0
    1111
    | `registerNamespaces()` | `addPrefixes()`
    1212
    | `registerPrefixes()` | `addPrefixes()`
    1313
    | `registerNamespaces()` | `addPrefix()`
    14-
    | `registerPrefixes()` | `addPrefix()`
    14+
    | `registerPrefix()` | `addPrefix()`
    1515
    | `getNamespaces()` | `getPrefixes()`
    1616
    | `getNamespaceFallbacks()` | `getFallbackDirs()`
    1717
    | `getPrefixFallbacks()` | `getFallbackDirs()`

    src/Symfony/Bridge/Doctrine/Tests/Form/Type/EntityTypeTest.php

    Lines changed: 5 additions & 5 deletions
    Original file line numberDiff line numberDiff line change
    @@ -603,7 +603,7 @@ public function testSubmitSingleNonExpandedStringCastableIdentifier()
    603603

    604604
    $this->persist(array($entity1, $entity2));
    605605

    606-
    $field = $this->factory->createNamed('name', 'entity', null, array(
    606+
    $field = $this->factory->createNamed('name', EntityType::class, null, array(
    607607
    'multiple' => false,
    608608
    'expanded' => false,
    609609
    'em' => 'default',
    @@ -625,7 +625,7 @@ public function testSubmitSingleStringCastableIdentifierExpanded()
    625625

    626626
    $this->persist(array($entity1, $entity2));
    627627

    628-
    $field = $this->factory->createNamed('name', 'entity', null, array(
    628+
    $field = $this->factory->createNamed('name', EntityType::class, null, array(
    629629
    'multiple' => false,
    630630
    'expanded' => true,
    631631
    'em' => 'default',
    @@ -651,7 +651,7 @@ public function testSubmitMultipleNonExpandedStringCastableIdentifierForExisting
    651651

    652652
    $this->persist(array($entity1, $entity2, $entity3));
    653653

    654-
    $field = $this->factory->createNamed('name', 'entity', null, array(
    654+
    $field = $this->factory->createNamed('name', EntityType::class, null, array(
    655655
    'multiple' => true,
    656656
    'expanded' => false,
    657657
    'em' => 'default',
    @@ -682,7 +682,7 @@ public function testSubmitMultipleNonExpandedStringCastableIdentifier()
    682682

    683683
    $this->persist(array($entity1, $entity2, $entity3));
    684684

    685-
    $field = $this->factory->createNamed('name', 'entity', null, array(
    685+
    $field = $this->factory->createNamed('name', EntityType::class, null, array(
    686686
    'multiple' => true,
    687687
    'expanded' => false,
    688688
    'em' => 'default',
    @@ -707,7 +707,7 @@ public function testSubmitMultipleStringCastableIdentifierExpanded()
    707707

    708708
    $this->persist(array($entity1, $entity2, $entity3));
    709709

    710-
    $field = $this->factory->createNamed('name', 'entity', null, array(
    710+
    $field = $this->factory->createNamed('name', EntityType::class, null, array(
    711711
    'multiple' => true,
    712712
    'expanded' => true,
    713713
    'em' => 'default',

    src/Symfony/Bundle/WebProfilerBundle/Resources/views/Profiler/toolbar.html.twig

    Lines changed: 1 addition & 1 deletion
    Original file line numberDiff line numberDiff line change
    @@ -21,7 +21,7 @@
    2121
    <style>
    2222
    {{ include('@WebProfiler/Profiler/toolbar.css.twig', { 'position': position, 'floatable': true }) }}
    2323
    </style>
    24-
    <div id="sfToolbarClearer-{{ token }}" style="clear: both; height: 38px;"></div>
    24+
    <div id="sfToolbarClearer-{{ token }}" style="clear: both; height: 36px;"></div>
    2525
    {% endif %}
    2626

    2727
    <div id="sfToolbarMainContent-{{ token }}" class="sf-toolbarreset clear-fix" data-no-turbolink>

    src/Symfony/Component/Debug/Debug.php

    Lines changed: 2 additions & 2 deletions
    Original file line numberDiff line numberDiff line change
    @@ -31,7 +31,7 @@ class Debug
    3131
    * @param int $errorReportingLevel The level of error reporting you want
    3232
    * @param bool $displayErrors Whether to display errors (for development) or just log them (for production)
    3333
    */
    34-
    public static function enable($errorReportingLevel = null, $displayErrors = true)
    34+
    public static function enable($errorReportingLevel = E_ALL, $displayErrors = true)
    3535
    {
    3636
    if (static::$enabled) {
    3737
    return;
    @@ -42,7 +42,7 @@ public static function enable($errorReportingLevel = null, $displayErrors = true
    4242
    if (null !== $errorReportingLevel) {
    4343
    error_reporting($errorReportingLevel);
    4444
    } else {
    45-
    error_reporting(-1);
    45+
    error_reporting(E_ALL);
    4646
    }
    4747

    4848
    if ('cli' !== php_sapi_name()) {

    src/Symfony/Component/Debug/ErrorHandler.php

    Lines changed: 4 additions & 6 deletions
    Original file line numberDiff line numberDiff line change
    @@ -113,8 +113,6 @@ public static function register(self $handler = null, $replace = true)
    113113
    register_shutdown_function(__CLASS__.'::handleFatalError');
    114114
    }
    115115

    116-
    $levels = -1;
    117-
    118116
    if ($handlerIsNew = null === $handler) {
    119117
    $handler = new static();
    120118
    }
    @@ -131,7 +129,7 @@ public static function register(self $handler = null, $replace = true)
    131129
    restore_error_handler();
    132130
    }
    133131

    134-
    $handler->throwAt($levels & $handler->thrownErrors, true);
    132+
    $handler->throwAt(E_ALL & $handler->thrownErrors, true);
    135133

    136134
    return $handler;
    137135
    }
    @@ -151,7 +149,7 @@ public function __construct(BufferingLogger $bootstrappingLogger = null)
    151149
    * @param array|int $levels An array map of E_* to LogLevel::* or an integer bit field of E_* constants
    152150
    * @param bool $replace Whether to replace or not any existing logger
    153151
    */
    154-
    public function setDefaultLogger(LoggerInterface $logger, $levels = null, $replace = false)
    152+
    public function setDefaultLogger(LoggerInterface $logger, $levels = E_ALL, $replace = false)
    155153
    {
    156154
    $loggers = array();
    157155

    @@ -163,7 +161,7 @@ public function setDefaultLogger(LoggerInterface $logger, $levels = null, $repla
    163161
    }
    164162
    } else {
    165163
    if (null === $levels) {
    166-
    $levels = E_ALL | E_STRICT;
    164+
    $levels = E_ALL;
    167165
    }
    168166
    foreach ($this->loggers as $type => $log) {
    169167
    if (($type & $levels) && (empty($log[0]) || $replace || $log[0] === $this->bootstrappingLogger)) {
    @@ -255,7 +253,7 @@ public function setExceptionHandler(callable $handler = null)
    255253
    public function throwAt($levels, $replace = false)
    256254
    {
    257255
    $prev = $this->thrownErrors;
    258-
    $this->thrownErrors = (E_ALL | E_STRICT) & ($levels | E_RECOVERABLE_ERROR | E_USER_ERROR) & ~E_USER_DEPRECATED & ~E_DEPRECATED;
    256+
    $this->thrownErrors = E_ALL & ($levels | E_RECOVERABLE_ERROR | E_USER_ERROR) & ~E_USER_DEPRECATED & ~E_DEPRECATED;
    259257
    if (!$replace) {
    260258
    $this->thrownErrors |= $prev;
    261259
    }

    src/Symfony/Component/Debug/Tests/DebugClassLoaderTest.php

    Lines changed: 1 addition & 1 deletion
    Original file line numberDiff line numberDiff line change
    @@ -26,7 +26,7 @@ class DebugClassLoaderTest extends \PHPUnit_Framework_TestCase
    2626

    2727
    protected function setUp()
    2828
    {
    29-
    $this->errorReporting = error_reporting(E_ALL | E_STRICT);
    29+
    $this->errorReporting = error_reporting(E_ALL);
    3030
    $this->loader = new ClassLoader();
    3131
    spl_autoload_register(array($this->loader, 'loadClass'), true, true);
    3232
    DebugClassLoader::enable();

    src/Symfony/Component/Form/Extension/Core/Type/CollectionType.php

    Lines changed: 8 additions & 4 deletions
    Original file line numberDiff line numberDiff line change
    @@ -27,11 +27,15 @@ class CollectionType extends AbstractType
    2727
    public function buildForm(FormBuilderInterface $builder, array $options)
    2828
    {
    2929
    if ($options['allow_add'] && $options['prototype']) {
    30-
    $prototype = $builder->create($options['prototype_name'], $options['entry_type'], array_replace(array(
    30+
    $prototypeOptions = array_replace(array(
    3131
    'label' => $options['prototype_name'].'label__',
    32-
    ), $options['entry_options'], array(
    33-
    'data' => $options['prototype_data'],
    34-
    )));
    32+
    ), $options['options']);
    33+
    34+
    if (null !== $options['prototype_data']) {
    35+
    $prototypeOptions['data'] = $options['prototype_data'];
    36+
    }
    37+
    38+
    $prototype = $builder->create($options['prototype_name'], $options['entry_type'], $prototypeOptions);
    3539
    $builder->setAttribute('prototype', $prototype->getForm());
    3640
    }
    3741

    src/Symfony/Component/Form/Tests/Extension/Core/Type/CollectionTypeTest.php

    Lines changed: 16 additions & 0 deletions
    CDAC
    Original file line numberDiff line numberDiff line change
    @@ -288,4 +288,20 @@ public function testPrototypeData()
    288288

    289289
    $this->assertSame('foo', $form->createView()->vars['prototype']->vars['value']);
    290290
    }
    291+
    292+
    /**
    293+
    * @group legacy
    294+
    */
    295+
    public function testLegacyPrototypeData()
    296+
    {
    297+
    $form = $this->factory->create('Symfony\Component\Form\Extension\Core\Type\CollectionType', array(), array(
    298+
    'allow_add' => true,
    299+
    'prototype' => true,
    300+
    'type' => 'Symfony\Component\Form\Extension\Core\Type\TextType',
    301+
    'options' => array(
    302+
    'data' => 'bar',
    303+
    ),
    304+
    ));
    305+
    $this->assertSame('bar', $form->createView()->vars['prototype']->vars['value']);
    306+
    }
    291307
    }

    src/Symfony/Component/HttpKernel/EventListener/DebugHandlersListener.php

    Lines changed: 4 additions & 4 deletions
    Original file line numberDiff line numberDiff line change
    @@ -45,12 +45,12 @@ class DebugHandlersListener implements EventSubscriberInterface
    4545
    * @param bool $scream Enables/disables screaming mode, where even silenced errors are logged
    4646
    * @param string $fileLinkFormat The format for links to source files
    4747
    */
    48-
    public function __construct(callable $exceptionHandler = null, LoggerInterface $logger = null, $levels = null, $throwAt = -1, $scream = true, $fileLinkFormat = null)
    48+
    public function __construct(callable $exceptionHandler = null, LoggerInterface $logger = null, $levels = E_ALL, $throwAt = E_ALL, $scream = true, $fileLinkFormat = null)
    4949
    {
    5050
    $this->exceptionHandler = $exceptionHandler;
    5151
    $this->logger = $logger;
    52-
    $this->levels = $levels;
    53-
    $this->throwAt = is_numeric($throwAt) ? (int) $throwAt : (null === $throwAt ? null : ($throwAt ? -1 : null));
    52+
    $this->levels = null === $levels ? E_ALL : $levels;
    53+
    $this->throwAt = is_numeric($throwAt) ? (int) $throwAt : (null === $throwAt ? null : ($throwAt ? E_ALL : null));
    5454
    $this->scream = (bool) $scream;
    5555
    $this->fileLinkFormat = $fileLinkFormat ?: ini_get('xdebug.file_link_format') ?: get_cfg_var('xdebug.file_link_format');
    5656
    }
    @@ -79,7 +79,7 @@ public function configure(Event $event = null)
    7979
    $scream |= $type;
    8080
    }
    8181
    } else {
    82-
    $scream = null === $this->levels ? E_ALL | E_STRICT : $this->levels;
    82+
    $scream = $this->levels;
    8383
    }
    8484
    if ($this->scream) {
    8585
    $handler->screamAt($scream);

    src/Symfony/Component/Ldap/LdapClient.php

    Lines changed: 14 additions & 1 deletion
    Original file line numberDiff line numberDiff line change
    @@ -99,7 +99,20 @@ public function find($dn, $query, $filter = '*')
    9999
    */
    100100
    public function escape($subject, $ignore = '', $flags = 0)
    101101
    {
    102-
    return ldap_escape($subject, $ignore, $flags);
    102+
    $value = ldap_escape($subject, $ignore, $flags);
    103+
    104+
    // Per RFC 4514, leading/trailing spaces should be encoded in DNs, as well as carriage returns.
    105+
    if ((int) $flags & LDAP_ESCAPE_DN) {
    106+
    if (!empty($value) && $value[0] === ' ') {
    107+
    $value = '\\20'.substr($value, 1);
    108+
    }
    109+
    if (!empty($value) && $value[strlen($value) - 1] === ' ') {
    110+
    $value = substr($value, 0, -1).'\\20';
    111+
    }
    112+
    $value = str_replace("\r", '\0d', $value);
    113+
    }
    114+
    115+
    return $value;
    103116
    }
    104117

    105118
    private function connect()

    0 commit comments

    Comments
     (0)
    0