Merge branch '2.7' into 2.8

* 2.7:
  [SecurityBundle] Fix syntax error in test
  [Console] Remove remaining dead code
  bumped Symfony version to 2.7.39
  updated VERSION for 2.7.38
  updated CHANGELOG for 2.7.38
  Replace array|\Traversable by iterable
  Fix ambiguous pattern
This commit is contained in:
Nicolas Grekas 2017-11-19 20:39:05 +02:00
commit 7215acb66f
12 changed files with 52 additions and 45 deletions

View File

@ -7,6 +7,13 @@ in 2.7 minor versions.
To get the diff for a specific change, go to https://github.com/symfony/symfony/commit/XXX where XXX is the change hash
To get the diff between two versions, go to https://github.com/symfony/symfony/compare/v2.7.0...v2.7.1
* 2.7.38 (2017-11-16)
* security #24995 Validate redirect targets using the session cookie domain (nicolas-grekas)
* security #24994 Prevent bundle readers from breaking out of paths (xabbuh)
* security #24993 Ensure that submitted data are uploaded files (xabbuh)
* security #24992 Namespace generated CSRF tokens depending of the current scheme (dunglas)
* 2.7.37 (2017-11-13)
* bug #24952 [HttpFoundation] Fix session-related BC break (nicolas-grekas, sroze)

View File

@ -124,7 +124,8 @@ class AddSessionDomainConstraintPassTest extends TestCase
$ext = new SecurityExtension();
$ext->load($config, $container);
(new AddSessionDomainConstraintPass())->process($container);
$pass = new AddSessionDomainConstraintPass();
$pass->process($container);
return $container;
}

View File

@ -116,11 +116,10 @@ class Application
$e = null;
$exitCode = $this->doRun($input, $output);
} catch (\Exception $e) {
} catch (\Throwable $e) {
}
if (null !== $e) {
if (!$this->catchExceptions || !$e instanceof \Exception) {
if (!$this->catchExceptions) {
throw $e;
}
@ -1026,8 +1025,8 @@ class Application
* Finds alternative of $name among $collection,
* if nothing is found in $collection, try in $abbrevs.
*
* @param string $name The string
* @param array|\Traversable $collection The collection
* @param string $name The string
* @param iterable $collection The collection
*
* @return string[] A sorted array of similar string
*/

View File

@ -117,7 +117,7 @@ class Question
/**
* Gets values for the autocompleter.
*
* @return null|array|\Traversable
* @return null|iterable
*/
public function getAutocompleterValues()
{
@ -127,7 +127,7 @@ class Question
/**
* Sets values for the autocompleter.
*
* @param null|array|\Traversable $values
* @param null|iterable $values
*
* @return $this
*

View File

@ -83,8 +83,8 @@ class Filesystem
/**
* Creates a directory recursively.
*
* @param string|array|\Traversable $dirs The directory path
* @param int $mode The directory mode
* @param string|iterable $dirs The directory path
* @param int $mode The directory mode
*
* @throws IOException On any directory creation failure
*/
@ -111,7 +111,7 @@ class Filesystem
/**
* Checks the existence of files or directories.
*
* @param string|array|\Traversable $files A filename, an array of files, or a \Traversable instance to check
* @param string|iterable $files A filename, an array of files, or a \Traversable instance to check
*
* @return bool true if the file exists, false otherwise
*/
@ -135,9 +135,9 @@ class Filesystem
/**
* Sets access and modification time of file.
*
* @param string|array|\Traversable $files A filename, an array of files, or a \Traversable instance to create
* @param int $time The touch time as a Unix timestamp
* @param int $atime The access time as a Unix timestamp
* @param string|iterable $files A filename, an array of files, or a \Traversable instance to create
* @param int $time The touch time as a Unix timestamp
* @param int $atime The access time as a Unix timestamp
*
* @throws IOException When touch fails
*/
@ -154,7 +154,7 @@ class Filesystem
/**
* Removes files or directories.
*
* @param string|array|\Traversable $files A filename, an array of files, or a \Traversable instance to remove
* @param string|iterable $files A filename, an array of files, or a \Traversable instance to remove
*
* @throws IOException When removal fails
*/
@ -190,10 +190,10 @@ class Filesystem
/**
* Change mode for an array of files or directories.
*
* @param string|array|\Traversable $files A filename, an array of files, or a \Traversable instance to change mode
* @param int $mode The new mode (octal)
* @param int $umask The mode mask (octal)
* @param bool $recursive Whether change the mod recursively or not
* @param string|iterable $files A filename, an array of files, or a \Traversable instance to change mode
* @param int $mode The new mode (octal)
* @param int $umask The mode mask (octal)
* @param bool $recursive Whether change the mod recursively or not
*
* @throws IOException When the change fail
*/
@ -212,9 +212,9 @@ class Filesystem
/**
* Change the owner of an array of files or directories.
*
* @param string|array|\Traversable $files A filename, an array of files, or a \Traversable instance to change owner
* @param string $user The new owner user name
* @param bool $recursive Whether change the owner recursively or not
* @param string|iterable $files A filename, an array of files, or a \Traversable instance to change owner
* @param string $user The new owner user name
* @param bool $recursive Whether change the owner recursively or not
*
* @throws IOException When the change fail
*/
@ -239,9 +239,9 @@ class Filesystem
/**
* Change the group of an array of files or directories.
*
* @param string|array|\Traversable $files A filename, an array of files, or a \Traversable instance to change group
* @param string $group The group name
* @param bool $recursive Whether change the group recursively or not
* @param string|iterable $files A filename, an array of files, or a \Traversable instance to change group
* @param string $group The group name
* @param bool $recursive Whether change the group recursively or not
*
* @throws IOException When the change fail
*/

View File

@ -58,11 +58,11 @@ class ArrayChoiceList implements ChoiceListInterface
*
* The given choice array must have the same array keys as the value array.
*
* @param array|\Traversable $choices The selectable choices
* @param callable|null $value The callable for creating the value
* for a choice. If `null` is passed,
* incrementing integers are used as
* values
* @param iterable $choices The selectable choices
* @param callable|null $value The callable for creating the value
* for a choice. If `null` is passed,
* incrementing integers are used as
* values
*/
public function __construct($choices, $value = null)
{

View File

@ -31,9 +31,9 @@ interface ChoiceListFactoryInterface
* The callable receives the choice as first and the array key as the second
* argument.
*
* @param array|\Traversable $choices The choices
* @param null|callable $value The callable generating the choice
* values
* @param iterable $choices The choices
* @param null|callable $value The callable generating the choice
* values
*
* @return ChoiceListInterface The choice list
*/

View File

@ -63,7 +63,7 @@ class PropertyAccessDecorator implements ChoiceListFactoryInterface
/**
* {@inheritdoc}
*
* @param array|\Traversable $choices The choices
* @param iterable $choices The choices
* @param null|callable|string|PropertyPath $value The callable or path for
* generating the choice values
*

View File

@ -195,11 +195,11 @@ class TextBundleWriter implements BundleWriterInterface
/**
* Writes a "table" node.
*
* @param resource $file The file handle to write to
* @param array|\Traversable $value The value of the node
* @param int $indentation The number of levels to indent
* @param bool $fallback Whether the table should be merged
* with the fallback locale
* @param resource $file The file handle to write to
* @param iterable $value The value of the node
* @param int $indentation The number of levels to indent
* @param bool $fallback Whether the table should be merged
* with the fallback locale
*
* @throws UnexpectedTypeException when $value is not an array and not a
* \Traversable instance

View File

@ -611,11 +611,11 @@ class PropertyAccessor implements PropertyAccessorInterface
/**
* Adjusts a collection-valued property by calling add*() and remove*() methods.
*
* @param array $zval The array containing the object to write to
* @param string $property The property to write
* @param array|\Traversable $collection The collection to write
* @param string $addMethod The add*() method
* @param string $removeMethod The remove*() method
* @param array $zval The array containing the object to write to
* @param string $property The property to write
* @param iterable $collection The collection to write
* @param string $addMethod The add*() method
* @param string $removeMethod The remove*() method
*/
private function writeCollection($zval, $property, $collection, $addMethod, $removeMethod)
{

View File

@ -25,7 +25,7 @@ class UrlValidator extends ConstraintValidator
(%s):// # protocol
(([\.\pL\pN-]+:)?([\.\pL\pN-]+)@)? # basic auth
(
([\pL\pN\pS-\.])+(\.?([\pL\pN]|xn\-\-[\pL\pN-]+)+\.?) # a domain name
([\pL\pN\pS\-\.])+(\.?([\pL\pN]|xn\-\-[\pL\pN-]+)+\.?) # a domain name
| # or
\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} # an IP address
| # or

View File

@ -378,7 +378,7 @@ class RecursiveContextualValidator implements ContextualValidatorInterface
* objects are iterated as well. Nested arrays are always iterated,
* regardless of the value of $recursive.
*
* @param array|\Traversable $collection The collection
* @param iterable $collection The collection
* @param string $propertyPath The current property path
* @param string[] $groups The validated groups
* @param bool $stopRecursion Whether to disable