Permalink
Browse files

RELEASE_1_4_16 => v1.4.16 commit

  • Loading branch information...
1 parent c932b32 commit 09ad32171c4bce9b8f904772b3e75213f90fdf65 @pylebecq pylebecq committed Dec 22, 2011
Showing 484 changed files with 25,262 additions and 14 deletions.
View
@@ -1,6 +1,16 @@
CHANGELOG
=========
+12/13/12: Version 1.4.16
+------------------------
+
+ * [33251] fixed sfChoiceFormat when a string to translate contains a valid range (closes #9973)
+ * [33250] fixed saving i18n fields in subforms (closes #7626, patch from yoshy71)
+ * [33249] fixed last modified date calculation in sfMessageSource_Aggregate (closes #9981, patch from jamiel)
+ * [33226] fixed merging problem for the routing configuration (closes #8348)
+ * [33214] fixed ob_start() behavior on CLI (closes #9970)
+ * [33208] fixed ob_start usage (to avoid warning in PHP 5.4, closes #9970)
+
10/27/11: Version 1.4.15
------------------------
@@ -11,7 +11,7 @@
/**
* The current symfony version.
*/
-define('SYMFONY_VERSION', '1.4.15');
+define('SYMFONY_VERSION', '1.4.16');
/**
* sfCoreAutoload class.
@@ -14,7 +14,7 @@
* @package symfony
* @subpackage config
* @author Fabien Potencier <fabien.potencier@symfony-project.com>
- * @version SVN: $Id: sfApplicationConfiguration.class.php 29526 2010-05-19 13:06:40Z fabien $
+ * @version SVN: $Id: sfApplicationConfiguration.class.php 33214 2011-11-19 13:47:24Z fabien $
*/
abstract class sfApplicationConfiguration extends ProjectConfiguration
{
@@ -150,9 +150,9 @@ public function initConfiguration()
$this->initializePlugins();
// compress output
- if (!self::$coreLoaded)
+ if (!self::$coreLoaded && sfConfig::get('sf_compressed'))
{
- ob_start(sfConfig::get('sf_compressed') ? 'ob_gzhandler' : '');
+ ob_start('ob_gzhandler');
}
self::$coreLoaded = true;
@@ -17,7 +17,7 @@
* @subpackage config
* @author Fabien Potencier <fabien.potencier@symfony-project.com>
* @author Sean Kerr <sean@code-box.org>
- * @version SVN: $Id: sfFactoryConfigHandler.class.php 23810 2009-11-12 11:07:44Z Kris.Wallsmith $
+ * @version SVN: $Id: sfFactoryConfigHandler.class.php 33226 2011-11-23 17:29:18Z fabien $
*/
class sfFactoryConfigHandler extends sfYamlConfigHandler
{
@@ -163,7 +163,7 @@ public function execute($configFiles)
$instances[] = sprintf(" \$class = sfConfig::get('sf_factory_routing', '%s');\n".
" %s\n".
- "\$this->factories['routing'] = new \$class(\$this->dispatcher, \$cache, array_merge(array('auto_shutdown' => false, 'context' => \$this->factories['request']->getRequestContext()), sfConfig::get('sf_factory_routing_parameters', %s)));\n".
+ "\$this->factories['routing'] = new \$class(\$this->dispatcher, \$cache, sfToolkit::arrayDeepMerge(array('auto_shutdown' => false, 'context' => \$this->factories['request']->getRequestContext()), sfConfig::get('sf_factory_routing_parameters', %s)));\n".
"if (\$parameters = \$this->factories['routing']->parse(\$this->factories['request']->getPathInfo()))\n".
"{\n".
" \$this->factories['request']->addRequestParameters(\$parameters);\n".
@@ -18,7 +18,7 @@
* @subpackage exception
* @author Fabien Potencier <fabien.potencier@symfony-project.com>
* @author Sean Kerr <sean@code-box.org>
- * @version SVN: $Id: sfException.class.php 32641 2011-06-11 13:39:35Z fabien $
+ * @version SVN: $Id: sfException.class.php 33214 2011-11-19 13:47:24Z fabien $
*/
class sfException extends Exception
{
@@ -100,7 +100,9 @@ public function printStackTrace()
}
}
- ob_start(sfConfig::get('sf_compressed') ? 'ob_gzhandler' : '');
+ if (sfConfig::get('sf_compressed')) {
+ ob_start('ob_gzhandler');
+ }
header('HTTP/1.0 500 Internal Server Error');
}
@@ -14,7 +14,7 @@
* @package symfony
* @subpackage form
* @author Kris Wallsmith <kris.wallsmith@symfony-project.com>
- * @version SVN: $Id: sfFormObject.class.php 22917 2009-10-10 13:44:53Z Kris.Wallsmith $
+ * @version SVN: $Id: sfFormObject.class.php 33250 2011-12-12 16:02:15Z fabien $
*/
abstract class sfFormObject extends BaseForm
{
@@ -241,8 +241,8 @@ public function saveEmbeddedForms($con = null, $forms = null)
{
if ($form instanceof sfFormObject)
{
- $form->saveEmbeddedForms($con);
$form->getObject()->save($con);
+ $form->saveEmbeddedForms($con);
}
else
{
@@ -13,7 +13,7 @@
* {@link http://prado.sourceforge.net/}
*
* @author Wei Zhuo <weizhuo[at]gmail[dot]com>
- * @version $Id: sfChoiceFormat.class.php 23810 2009-11-12 11:07:44Z Kris.Wallsmith $
+ * @version $Id: sfChoiceFormat.class.php 33251 2011-12-12 16:30:59Z fabien $
* @package symfony
* @subpackage i18n
*/
@@ -65,7 +65,7 @@ class sfChoiceFormat
/**
* The pattern to parse the formatting string.
*/
- protected $parse = '/\s*\|?([\(\[\{]([-Inf\d:\s]+,?[\+Inf\d\s:\?\-=!><%\|&\(\)]*)+[\)\]\}])\s*/';
+ protected $parse = '/(?:^\s*|\s*\|)([\(\[\{]([-Inf\d:\s]+,?[\+Inf\d\s:\?\-=!><%\|&\(\)]*)+[\)\]\}])\s*/';
/**
* The value for positive infinity.
@@ -14,7 +14,7 @@
* @package symfony
* @subpackage i18n
* @author Fabien Potencier <fabien.potencier@symfony-project.com>
- * @version SVN: $Id: sfMessageSource_Aggregate.class.php 13401 2008-11-27 11:18:39Z fabien $
+ * @version SVN: $Id: sfMessageSource_Aggregate.class.php 33249 2011-12-12 15:50:45Z fabien $
*/
class sfMessageSource_Aggregate extends sfMessageSource
{
@@ -51,7 +51,10 @@ protected function getLastModified($sources)
$lastModified = time();
foreach ($sources as $source)
{
- $lastModified = min($lastModified, $source[0]->getLastModified($source[1]));
+ if (0 !== $sourceLastModified = $source[0]->getLastModified($source[1]))
+ {
+ $lastModified = min($lastModified, $sourceLastModified);
+ }
}
return $lastModified;
View
@@ -0,0 +1,102 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<package packagerversion="1.4.1" version="2.0" xmlns="http://pear.php.net/dtd/package-2.0" xmlns:tasks="http://pear.php.net/dtd/tasks-1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://pear.php.net/dtd/tasks-1.0 http://pear.php.net/dtd/tasks-1.0.xsd http://pear.php.net/dtd/package-2.0 http://pear.php.net/dtd/package-2.0.xsd">
+ <name>symfony</name>
+ <channel>pear.symfony-project.com</channel>
+ <summary>Symfony is a complete framework designed to optimize the development of web applications.</summary>
+ <description>
+ Symfony is a complete framework designed to optimize the development of web applications by way of several key features.
+ For starters, it separates a web application's business rules, server logic, and presentation views.
+ It contains numerous tools and classes aimed at shortening the development time of a complex web application.
+ Additionally, it automates common tasks so that the developer can focus entirely on the specifics of an application.
+ The end result of these advantages means there is no need to reinvent the wheel every time a new web application is built!
+ </description>
+ <lead>
+ <name>Fabien POTENCIER</name>
+ <user>fabpot</user>
+ <email>fabien.potencier@symfony-project.com</email>
+ <active>yes</active>
+ </lead>
+ <date>##CURRENT_DATE##</date>
+ <version>
+ <release>##SYMFONY_VERSION##</release>
+ <api>1.4.0</api>
+ </version>
+ <stability>
+ <release>##STABILITY##</release>
+ <api>##STABILITY##</api>
+ </stability>
+ <license uri="http://www.symfony-project.org/license">MIT license</license>
+ <notes>-</notes>
+
+ <contents>
+ <dir name="/">
+
+ ##CLASS_FILES##
+
+ <file role="script" baseinstalldir="/" install-as="symfony" name="data/bin/symfony">
+ <tasks:replace type="pear-config" from="@DATA-DIR@" to="data_dir" />
+ <tasks:replace type="pear-config" from="@PEAR-DIR@" to="php_dir" />
+ </file>
+
+ <file role="script" baseinstalldir="/" name="data/bin/symfony.bat" />
+
+ <file role="doc" baseinstalldir="symfony" name="CHANGELOG" />
+ <file role="doc" baseinstalldir="symfony" name="COPYRIGHT" />
+ <file role="doc" baseinstalldir="symfony" name="LICENSE" />
+ <file role="doc" baseinstalldir="symfony" name="README" />
+ <file role="doc" baseinstalldir="symfony" name="licenses/LICENSE.ICU" />
+ <file role="doc" baseinstalldir="symfony" name="licenses/LICENSE.lime" />
+ <file role="doc" baseinstalldir="symfony" name="licenses/LICENSE.prado" />
+ <file role="doc" baseinstalldir="symfony" name="licenses/LICENSE.swiftmailer" />
+ </dir>
+ </contents>
+
+ <dependencies>
+ <required>
+ <php>
+ <min>5.2.4</min>
+ </php>
+ <pearinstaller>
+ <min>1.4.1</min>
+ </pearinstaller>
+ <extension>
+ <name>reflection</name>
+ </extension>
+ <extension>
+ <name>ctype</name>
+ </extension>
+ <extension>
+ <name>pcre</name>
+ </extension>
+ <extension>
+ <name>simplexml</name>
+ </extension>
+ <extension>
+ <name>xml</name>
+ </extension>
+ <extension>
+ <name>dom</name>
+ </extension>
+ </required>
+ </dependencies>
+
+ <phprelease>
+ <installconditions>
+ <os>
+ <name>windows</name>
+ </os>
+ </installconditions>
+ <filelist>
+ <install as="symfony.bat" name="data/bin/symfony.bat" />
+ </filelist>
+ </phprelease>
+
+ <phprelease>
+ <filelist>
+ <ignore name="data/bin/symfony.bat" />
+ </filelist>
+ </phprelease>
+
+ <changelog>
+ </changelog>
+</package>
View
@@ -0,0 +1,35 @@
+<?php
+
+/*
+ * This file is part of the symfony package.
+ * (c) 2004-2006 Fabien Potencier <fabien.potencier@symfony-project.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+require_once(dirname(__FILE__).'/../../lib/vendor/lime/lime.php');
+require_once(dirname(__FILE__).'/../../lib/util/sfFinder.class.php');
+
+$h = new lime_harness();
+$h->base_dir = realpath(dirname(__FILE__).'/..');
+
+// unit tests
+$h->register_glob($h->base_dir.'/unit/*/*Test.php');
+$h->register_glob($h->base_dir.'/unit/*/*/*Test.php');
+$h->register_glob($h->base_dir.'/../lib/plugins/*/unit/*Test.php');
+$h->register_glob($h->base_dir.'/../lib/plugins/*/unit/*/*Test.php');
+
+// functional tests
+$h->register_glob($h->base_dir.'/functional/*Test.php');
+$h->register_glob($h->base_dir.'/functional/*/*Test.php');
+$h->register_glob($h->base_dir.'/../lib/plugins/*/functional/*Test.php');
+
+$c = new lime_coverage($h);
+$c->extension = '.class.php';
+$c->verbose = false;
+$c->base_dir = realpath(dirname(__FILE__).'/../../lib');
+
+$finder = sfFinder::type('file')->name('*.php')->prune('vendor')->prune('test')->prune('data');
+$c->register($finder->in($c->base_dir));
+$c->run();
View
@@ -0,0 +1,45 @@
+<?php
+
+$root_dir = realpath(dirname(__FILE__).'/../..');
+require_once($root_dir.'/lib/vendor/lime/lime.php');
+require_once($root_dir.'/lib/util/sfFinder.class.php');
+
+require_once($root_dir.'/lib/autoload/sfCoreAutoload.class.php');
+$version = SYMFONY_VERSION;
+
+printf("symfony LOC (%s)\n", $version);
+printf("==============%s\n\n", str_repeat('=', strlen($version)));
+
+// symfony core LOC
+$total_loc = 0;
+$files = sfFinder::type('file')->name('*.php')->prune('vendor', 'plugins')->in($root_dir.'/lib');
+foreach ($files as $file)
+{
+ $total_loc += count(lime_coverage::get_php_lines($file));
+}
+$files = sfFinder::type('file')->name('*.php')->prune('vendor')->in($root_dir.'/lib/plugins/*/lib');
+foreach ($files as $file)
+{
+ $total_loc += count(lime_coverage::get_php_lines($file));
+}
+
+// symfony tests LOC
+$total_tests_loc = 0;
+$files = sfFinder::type('file')->name('*Test.php')->in(array(
+ $root_dir.'/lib/plugins/sfPropelPlugin/test/unit',
+ $root_dir.'/lib/plugins/sfPropelPlugin/test/functional',
+ $root_dir.'/lib/plugins/sfDoctrinePlugin/test/unit',
+ $root_dir.'/lib/plugins/sfDoctrinePlugin/test/functional',
+ $root_dir.'/test/unit',
+ $root_dir.'/test/functional',
+ $root_dir.'/test/other',
+));
+foreach ($files as $file)
+{
+ $total_tests_loc += count(lime_coverage::get_php_lines($file));
+}
+
+printf("core librairies: %6d\n", $total_loc);
+printf("unit and functional tests: %6d\n", $total_tests_loc);
+echo "---------------------------------\n";
+printf("ratio tests/librairies: %5d%%\n", $total_tests_loc / $total_loc * 100);
Oops, something went wrong.

0 comments on commit 09ad321

Please sign in to comment.