Permalink
Browse files

Updated composer.json to use sensio 2.1.x to work with the package

  • Loading branch information...
1 parent 9bb16f5 commit 05e866d688ade1df38ee19c7881c5e02148427a3 Joel Kasslin committed Sep 20, 2012
Showing with 120 additions and 80 deletions.
  1. +77 −42 app/SymfonyRequirements.php
  2. +5 −3 app/bootstrap.php.cache
  3. +1 −1 app/check.php
  4. +3 −3 composer.json
  5. +34 −31 composer.lock
View
@@ -9,21 +9,24 @@
* file that was distributed with this source code.
*/
-/**
- * Represents a single PHP requirement, e.g. an installed extension.
- * It can be a mandatory requirement or an optional recommendation.
- * There is a special subclass, named PhpIniRequirement, to check a php.ini configuration.
- *
- * This file must be compatible with PHP 5.2+.
+/*
+ * Users of PHP 5.2 should be able to run the requirements checks.
+ * This is why the file and all classes must be compatible with PHP 5.2+
+ * (e.g. not using namespaces and closures).
*
* ************** CAUTION **************
*
- * DO NOT EDIT THIS FILE AS IT WILL BE OVERRIDEN BY COMPOSER
- *
- * If you want to change this file, edit the one in the
- * SensioDistributionBundle instead.
+ * DO NOT EDIT THIS FILE as it will be overriden by Composer as part of
+ * the installation/update process. The original file resides in the
+ * SensioDistributionBundle.
*
* ************** CAUTION **************
+ */
+
+/**
+ * Represents a single PHP requirement, e.g. an installed extension.
+ * It can be a mandatory requirement or an optional recommendation.
+ * There is a special subclass, named PhpIniRequirement, to check a php.ini configuration.
*
* @author Tobias Schultze <http://tobion.de>
*/
@@ -120,8 +123,8 @@ class PhpIniRequirement extends Requirement
* @param Boolean $approveCfgAbsence If true the Requirement will be fulfilled even if the configuration option does not exist, i.e. ini_get() returns false.
This is helpful for abandoned configs in later PHP versions or configs of an optional extension, like Suhosin.
Example: You require a config to be true but PHP later removes this config and defaults it to true internally.
- * @param string $testMessage The message for testing the requirement (when null and $evaluation is a Boolean a default message is derived)
- * @param string $helpHtml The help text formatted in HTML for resolving the problem (when null and $evaluation is a Boolean a default help is derived)
+ * @param string|null $testMessage The message for testing the requirement (when null and $evaluation is a Boolean a default message is derived)
+ * @param string|null $helpHtml The help text formatted in HTML for resolving the problem (when null and $evaluation is a Boolean a default help is derived)
* @param string|null $helpText The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags)
* @param Boolean $optional Whether this is only an optional recommendation not a mandatory requirement
*/
@@ -161,10 +164,6 @@ public function __construct($cfgName, $evaluation, $approveCfgAbsence = false, $
/**
* A RequirementCollection represents a set of Requirement instances.
*
- * Users of PHP 5.2 should be able to run the requirements checks.
- * This is why the class must be compatible with PHP 5.2
- * (e.g. not using namespaces and closures).
- *
* @author Tobias Schultze <http://tobion.de>
*/
class RequirementCollection implements IteratorAggregate
@@ -373,6 +372,7 @@ public function getPhpIniConfigPath()
* are necessary to run the Symfony Standard Edition.
*
* @author Tobias Schultze <http://tobion.de>
+ * @author Fabien Potencier <fabien@symfony.com>
*/
class SymfonyRequirements extends RequirementCollection
{
@@ -397,19 +397,20 @@ public function __construct()
);
$this->addRequirement(
+ version_compare($installedPhpVersion, '5.3.16', '!='),
+ 'PHP version must not be 5.3.16 as Symfony won\'t work properly with it',
+ 'Install PHP 5.3.17 or newer (or downgrade to an earlier PHP version)'
+ );
+
+ $this->addRequirement(
is_dir(__DIR__.'/../vendor/composer'),
'Vendor libraries must be installed',
'Vendor libraries are missing. Install composer following instructions from <a href="http://getcomposer.org/">http://getcomposer.org/</a>. ' .
'Then run "<strong>php composer.phar install</strong>" to install them.'
);
- $this->addRequirement(
- file_get_contents(__FILE__) == file_get_contents(__DIR__.'/../vendor/sensio/distribution-bundle/Sensio/Bundle/DistributionBundle/Resources/skeleton/app/SymfonyRequirements.php'),
- 'Outdated requirements file',
- 'Your requirements file is outdated. Run composer install and re-check your configuration.'
- );
-
$baseDir = basename(__DIR__);
+
$this->addRequirement(
is_writable(__DIR__.'/cache'),
"$baseDir/cache/ directory must be writable",
@@ -431,8 +432,8 @@ public function __construct()
if (version_compare($installedPhpVersion, self::REQUIRED_PHP_VERSION, '>=')) {
$this->addRequirement(
(in_array(date_default_timezone_get(), DateTimeZone::listIdentifiers())),
- sprintf('Default timezone "%s" is not supported by your installation of PHP', date_default_timezone_get()),
- 'Fix your <strong>php.ini</strong> file (check for typos and have a look at the list of deprecated timezones http://php.net/manual/en/timezones.others.php).'
+ sprintf('Configured default timezone "%s" must be supported by your installation of PHP', date_default_timezone_get()),
+ 'Your default timezone is not supported by PHP. Check for typos in your <strong>php.ini</strong> file and have a look at the list of deprecated timezones at <a href="http://php.net/manual/en/timezones.others.php">http://php.net/manual/en/timezones.others.php</a>.'
);
}
@@ -466,42 +467,68 @@ function_exists('simplexml_import_dom'),
'Install and enable the <strong>SimpleXML</strong> extension.'
);
- $this->addRequirement(
- !(function_exists('apc_store') && ini_get('apc.enabled')) || version_compare(phpversion('apc'), '3.0.17', '>='),
- 'APC version must be at least 3.0.17',
- 'Upgrade your <strong>APC</strong> extension (3.0.17+)'
- );
+ if (function_exists('apc_store') && ini_get('apc.enabled')) {
+ $this->addRequirement(
+ version_compare(phpversion('apc'), '3.0.17', '>='),
+ 'APC version must be at least 3.0.17',
+ 'Upgrade your <strong>APC</strong> extension (3.0.17+).'
+ );
+ }
$this->addPhpIniRequirement('detect_unicode', false);
- $this->addPhpIniRequirement(
- 'suhosin.executor.include.whitelist',
- create_function('$cfgValue', 'return false !== stripos($cfgValue, "phar");'),
- true,
- 'suhosin.executor.include.whitelist must be configured correctly in php.ini',
- 'Add "<strong>phar</strong>" to <strong>suhosin.executor.include.whitelist</strong> in php.ini<a href="#phpini">*</a>.'
- );
+ if (extension_loaded('suhosin')) {
+ $this->addPhpIniRequirement(
+ 'suhosin.executor.include.whitelist',
+ create_function('$cfgValue', 'return false !== stripos($cfgValue, "phar");'),
+ false,
+ 'suhosin.executor.include.whitelist must be configured correctly in php.ini',
+ 'Add "<strong>phar</strong>" to <strong>suhosin.executor.include.whitelist</strong> in php.ini<a href="#phpini">*</a>.'
+ );
+ }
+
+ if (extension_loaded('xdebug')) {
+ $this->addPhpIniRequirement(
+ 'xdebug.show_exception_trace', false, true
+ );
+
+ $this->addPhpIniRequirement(
+ 'xdebug.scream', false, true
+ );
+ }
$pcreVersion = defined('PCRE_VERSION') ? (float) PCRE_VERSION : null;
$this->addRequirement(
null !== $pcreVersion && $pcreVersion > 8.0,
sprintf('PCRE extension must be available and at least 8.0 (%s installed)', $pcreVersion ? $pcreVersion : 'not'),
- 'Upgrade your <strong>PCRE</strong> extension (8.0+)'
+ 'Upgrade your <strong>PCRE</strong> extension (8.0+).'
);
/* optional recommendations follow */
$this->addRecommendation(
- version_compare($installedPhpVersion, '5.3.4', '>='),
- sprintf('Your project might not work properly ("Notice: Trying to get property of non-object") due to the PHP bug #52083 before PHP 5.3.4 (%s installed)', $installedPhpVersion),
- 'Install PHP 5.3.4 or newer'
+ file_get_contents(__FILE__) === file_get_contents(__DIR__.'/../vendor/sensio/distribution-bundle/Sensio/Bundle/DistributionBundle/Resources/skeleton/app/SymfonyRequirements.php'),
+ 'Requirements file should be up-to-date',
+ 'Your requirements file is outdated. Run composer install and re-check your configuration.'
);
$this->addRecommendation(
+ version_compare($installedPhpVersion, '5.3.4', '>='),
+ 'You should use at least PHP 5.3.4 due to PHP bug #52083 in earlier versions',
+ 'Your project might malfunction randomly due to PHP bug #52083 ("Notice: Trying to get property of non-object"). Install PHP 5.3.4 or newer.'
+ );
+
+ $this->addRecommendation(
version_compare($installedPhpVersion, '5.3.8', '>='),
- sprintf('Annotations might not work properly due to the PHP bug #55156 before PHP 5.3.8 (%s installed)', $installedPhpVersion),
- 'Install PHP 5.3.8 or newer if your project uses annotations'
+ 'When using annotations you should have at least PHP 5.3.8 due to PHP bug #55156',
+ 'Install PHP 5.3.8 or newer if your project uses annotations.'
+ );
+
+ $this->addRecommendation(
+ version_compare($installedPhpVersion, '5.4.0', '!='),
+ 'You should not use PHP 5.4.0 due to the PHP bug #61453',
+ 'Your project might not work properly due to the PHP bug #61453 ("Cannot dump definitions which have method calls"). Install PHP 5.4.1 or newer.'
);
$this->addRecommendation(
@@ -542,6 +569,14 @@ class_exists('Locale'),
'Install and enable the <strong>intl</strong> extension (used for validators).'
);
+ if (class_exists('Collator')) {
+ $this->addRecommendation(
+ null !== new Collator('fr_FR'),
+ 'intl extension should be correctly configured',
+ 'The intl extension does not behave properly. This problem is typical on PHP 5.3.X x64 WIN builds.'
+ );
+ }
+
if (class_exists('Locale')) {
if (defined('INTL_ICU_VERSION')) {
$version = INTL_ICU_VERSION;
View
@@ -24,6 +24,8 @@ namespace Symfony\Component\DependencyInjection
{
use Symfony\Component\DependencyInjection\Exception\InvalidArgumentException;
+use Symfony\Component\DependencyInjection\Exception\ServiceCircularReferenceException;
+use Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException;
interface ContainerInterface
@@ -502,11 +504,11 @@ abstract class Kernel implements KernelInterface, TerminableInterface
protected $classes;
protected $errorReportingLevel;
- const VERSION = '2.1.0-DEV';
+ const VERSION = '2.1.2-DEV';
const VERSION_ID = '20100';
const MAJOR_VERSION = '2';
const MINOR_VERSION = '1';
- const RELEASE_VERSION = '0';
+ const RELEASE_VERSION = '2';
const EXTRA_VERSION = 'DEV';
@@ -638,7 +640,7 @@ abstract class Kernel implements KernelInterface, TerminableInterface
public function getBundle($name, $first = true)
{
if (!isset($this->bundleMap[$name])) {
- throw new \InvalidArgumentException(sprintf('Bundle "%s" does not exist or it is not enabled. Maybe you forgot to add it in the registerBundles() function of your %s.php file?', $name, get_class($this)));
+ throw new \InvalidArgumentException(sprintf('Bundle "%s" does not exist or it is not enabled. Maybe you forgot to add it in the registerBundles() method of your %s.php file?', $name, get_class($this)));
}
if (true === $first) {
View
@@ -1,6 +1,6 @@
<?php
-require_once dirname(__FILE__) . '/SymfonyRequirements.php';
+require_once dirname(__FILE__).'/SymfonyRequirements.php';
$symfonyRequirements = new SymfonyRequirements();
View
@@ -9,9 +9,9 @@
"symfony/symfony": "2.1.*",
"twig/extensions": "dev-master",
"symfony/assetic-bundle": "dev-master",
- "sensio/distribution-bundle": "dev-master",
- "sensio/framework-extra-bundle": "dev-master",
- "sensio/generator-bundle": "dev-master"
+ "sensio/distribution-bundle": "2.1.*",
+ "sensio/framework-extra-bundle": "2.1.*",
+ "sensio/generator-bundle": "2.1.*"
},
"scripts": {
"post-install-cmd": [
View

Some generated files are not rendered by default. Learn more.

Oops, something went wrong.

0 comments on commit 05e866d

Please sign in to comment.