eZ Publish / Releases / eZ Publish Community Project 2011 / ez-publish-community-project-2011-11

ez-publish-community-project-2011-11

eZ Publish Community Project 2011.11

Requirements

Version : Release date : Requirements :
Community Project 2011.11
OE 5.5.0-dev
Dec. 1st, 2011

PHP >= 5.2.14, 5.3 recommended (5.3.7 known to be bugged)
MySQL >= 5.0.51a
PostgreSQL >= 8

If using eZ Find : Java <= 1.6

Release Notes - ez-publish-community-project-2011-11

Kernel

Stats

  • 49 bug-fixes for registered issues (and some for bugs without an issue number)
  • 3 enhancements
  • 59 pull-requests merged (VERY IMPRESSIVE)

See the changelog for details

Upgrade Notes

Upgrading from eZ Publish Community Project 2011.10 to 2011.11

This section describes how to upgrade your existing eZ Publish Community Project 2011.10 installation to build 2011.11. Make sure that you have a working backup of the site before you do the actual upgrade, and make sure the installation you are performing the upgrade on is offline.

Important upgrade notes:

The procedure for upgrading directly from eZ Publish Community Project build 2011.10 to build 2011.11 consists of the following steps:

  • Backing up the website
  • Putting the website offline (optional)
  • Upgrading the distribution files to 2011.11
  • Upgrading custom extensions
  • Regenerate the autoload array for extensions
  • Clearing the caches
  • Putting the website online (optional)

 

Check for requirements

It is recommended to always verify the requirements for the new version of eZ Publish before attempting an upgrade. eZ Publish Community Project 2011.10  is compatible with PHP version 5.3 and above. So is eZ Publish Community Project 2011.11. For more information regarding system requirements check out http://doc.ez.no/eZ-Publish/Technical-manual/4.6/Installation/Requirements-4.6

 

Step 1: Backing up the website

  • Filesystem set: the extension and settings folders, plus any other folder where you have put your custom developments in (e.g. design/mydesign)
  • Content set: the var/storage, var/<vardir>/storage folders, and a dump of the database (nb: for ezdb cluster mode, a dump of the storage database is needed instead of the storage folders; for ezdfs cluster mode both a dump of the storage database and a backup of the shared var folder on nfs)
  • Optional: the complete installation directory of eZ Publish, except for the var directory and for the eZFind index directory. This is mandatory if you have customized the .htaccess or config.php files

Tip: if you have many user sessions, and the session data is stored in the database, it might be a good idea to remove all data from the session table before backing it up
Tip: in ezdb and ezdfs cluster modes, it is a good idea to clear all caches before dumping the storage database, as it is not easy to only backup storage and not caches

 

Step 2: Putting the website offline (optional)

This step is recommended but not mandatory

  • Put the public website offline and set up a courtesy page to prevent end users from accessing the website while you upgrade. This involves generally modifying the webserver configuration. Make sure you have a different vhost available to access the public website using a private IP address or hostname during the upgrade process
  • Disable execution of eZ Publish cronjobs

 

Step 3: Upgrading the distribution files

The easiest way to upgrade the distribution files is to unpack eZ Publish 2011.11 to a separate directory and then copy into it the directories that contain site-specific files from the existing installation. Make sure that you copy the following directories:

  • design/<mydesign>
  • design/<mydesign_admin>
  • var
  • settings/siteaccess
  • settings/override

Replace "mydesign" and "mydesign_admin" with the actual names of your designs.

Important note: Because the new directory has replaced the original directory, the directory permissions need to be fixed. Use the following commands to do this.

(You have the choice between Shell commands or Alternative shell commands):

  • Shell commands

These shell commands will give proper permission to the web server:

cd </path/to/your/eZ/Publish/directory>chmod -R a+rwx design extension settings var 
  • Alternative shell commands

 These commands will setup the permission more correctly, but require knowledge about the user account used for running the web server process.cd </path/to/your/eZ/Publish/directory>

cd </path/to/your/eZ/Publish/directory>chmod -R og+rwx design extension settings varchown -R <webuser>:<webusergroup> design extension settings var 

 

Step 4: Custom extensions

If you are using custom extensions, the sub-directories inside the "extension" directory will also have to be copied. However, make sure that you do not overwrite any extensions that are included in the eZ Publish 2011.11 tarball, which are currently:

  • ezcomments 1.4.0-dev
  • ezfind 2.7.0-dev
  • ezformtoken 1.0.0
  • ezie 1.4.0-dev
  • ezjscore 1.5.0-dev
  • ezmultiupload 1.6.0-dev
  • ezodf 2.8.0-dev
  • ezoe 5.5.0-dev
  • ezprestapiprovider 1.2.0-dev
  • ezscriptmonitor 1.4.0-dev

 

Step 5: Regenerate the autoload array for extensions

To regenerate the autoload array, execute the following script from the root of your eZ Publish installation:

php bin/php/ezpgenerateautoloads.php --extension

 

Step 6: Clearing the caches

Whenever an eZ Publish website is upgraded, all caches must be cleared in a proper way. This should be done from the root directory of your eZ Publish installation:

php bin/php/ezcache.php --clear-all --purge 

Tip : Purging ensures that the caches are physically removed. When the "--purge" parameter is not specified, the caches will be expired but not removed.

Sometimes the script is unable to clear all cache files because of restrictive file/directory permission settings. Make sure that all cache files have been cleared by inspecting the contents of the various cache sub-directories within the "var" directory (typically the "var/cache/" and "var/<name_of_siteaccess>/cache/" directories). If there are any cache files left, you need to remove them manually.

 

Step 7: Putting the website back online

This step is optional, and is only needed if you put the website offline at step 2

  • warm up the template cache by pre-compiling template files. This should be done from the root directory of your eZ Publish installation:
php bin/php/eztc.php --wwwdir=<value> --index-file=<value> 
  • re-enable the cronjobs
  • warm up the content cache: use a tool such as curl or wget that will navigate the website to force eZPublish to generate the view cache for all content
  • change the webserver / firewall configuration to allow public access to your website again

Changelog

Changelog from Community Project 2011.10 to Community Project 2011.11

Pull requests by the eZ Community (keep-on rocking guys! )

  • Merge pull request 160 from dpobel/fre-fr
  • Merge pull request 218 from trolek/localization
  • Merge pull request 215 from jeromegamez/ezpersistentobject_grouping
  • Merge pull request 138 from jeromegamez/ezpersistentobject
  • Merge pull request 213 from jdespatis/clean-code
  • Merge pull request 211 from jdespatis/unknown-constant1
  • Merge pull request 214 from jdespatis/clean-code1
  • Merge pull request 212 from jdespatis/undeclared-variable24
  • Merge pull request 189 from jdespatis/undeclared-variable24
  • Merge pull request 210 from jdespatis/too-many-args17
  • Merge pull request 209 from jdespatis/too-many-args16
  • Merge pull request 208 from jdespatis/too-many-args15
  • Merge pull request 207 from jdespatis/too-many-args14
  • Merge pull request 206 from jdespatis/too-many-args13
  • Merge pull request 205 from jdespatis/too-many-args12
  • Merge pull request 204 from jdespatis/too-many-args11
  • Merge pull request 202 from jdespatis/too-many-args9
  • Merge pull request 200 from jdespatis/too-many-args7
  • Merge pull request 199 from jdespatis/too-many-args6
  • Merge pull request 186 from jdespatis/undeclared-variable21
  • Merge pull request 177 from jdespatis/undeclared-variable12
  • Merge pull request 198 from jdespatis/too-many-args5
  • Merge pull request 197 from jdespatis/too-many-args4
  • Merge pull request 196 from jdespatis/too-many-args3
  • Merge pull request 195 from jdespatis/too-many-args2
  • Merge pull request 194 from jdespatis/too-many-args1
  • Merge pull request 193 from jdespatis/undeclared-variable28
  • Merge pull request 192 from jdespatis/undeclared-variable27
  • Merge pull request 191 from jdespatis/undeclared-variable26
  • Merge pull request 190 from jdespatis/undeclared-variable25
  • Merge pull request 188 from jdespatis/undeclared-variable23
  • Merge pull request 187 from jdespatis/undeclared-variable22
  • Merge pull request 185 from jdespatis/undeclared-variable20
  • Merge pull request 184 from jdespatis/undeclared-variable19
  • Merge pull request 183 from jdespatis/undeclared-variable18
  • Merge pull request 182 from jdespatis/undeclared-variable17
  • Merge pull request 181 from jdespatis/undeclared-variable16
  • Merge pull request 180 from jdespatis/undeclared-variable15
  • Merge pull request 179 from jdespatis/undeclared-variable14
  • Merge pull request 178 from jdespatis/undeclared-variable13
  • Merge pull request 176 from jdespatis/undeclared-variable11
  • Merge pull request 175 from jdespatis/undeclared-variable10
  • Merge pull request 174 from jdespatis/undeclared-variable9
  • Merge pull request 173 from jdespatis/undeclared-variable8
  • Merge pull request 172 from jdespatis/undeclared-variable7
  • Merge pull request 171 from jdespatis/undeclared-variable6
  • Merge pull request 170 from jdespatis/undeclared-variable5
  • Merge pull request 169 from jdespatis/undeclared-variable4
  • Merge pull request 168 from jdespatis/undeclared-variable3
  • Merge pull request 167 from jdespatis/undeclared-variable2
  • Merge pull request 166 from jdespatis/undeclared-variable
  • Merge pull request 164 from nfrp/localization
  • Merge pull request 163 from trolek/localization
  • Merge pull request 162 from vjeran/localization
  • Merge pull request 161 from nfrp/localization-ita-IT-Netbliss
  • Merge pull request 159 from svda/master
  • Merge pull request 158 from svda/master
  • Merge pull request 155 from SylvainGuittard/master

 

Bugfixes

  • 13270 : Wrong logic to fetch temporary workflows in workflowlist view
  • 17781 : image aliases not restored when restoring object from trash
  • 18066 : optimize product statistics view (webshop)
  • 18207 : Lots of errors when clearing cache with --purge
  • 18561 : IE users are logged out in result of comment posting
  • 18613 : Empty ezcontentlanguage_cache.php not being regenerated
  • 18636 : Deleting an user that has been updated raises an error
  • 18669 : ajax uploader not working with IE8 in Windows7
  • 18670 : Media Attribute not showing correctly in class preview
  • 18681 : Media Attribute not showing correctly when creating a new object
  • 18703 : A user can remove any locations if he has right to delete one
  • 18729 : Wrong account activation message
  • 18776 : Admin2 Number of items per page returns always to 25
  • 18790 : Unable to publish content when object relation list is made required after another required attribute was missing
  • 18815 : REST api can not add filters
  • 18832 : editing unactivated registered user causes fatal error
  • 18842 : Float values stored using DOUBLE PRECISION instead of REAL in PostgreSQL
  • 18843 : PHP Fatal error in Asynchronous publishing
  • 18847 : Delay Indexing is not working on Oracle
  • 18851 : ctrl+c doesn't stop bin/php/ezasynchronouspublisher.php (oracle)
  • 18857 : Error eZPostgreSQLDB when adding a new Section
  • 18881 : Stop producing an error on normal redirection
  • 18897 : Driving with brakes on // sql wildcards not escaped // slow queries
  • 18905 : DFS If port param is left empty --> Fatal Error
  • 18908 : Error when removing an object
  • 18909 : Wrong link in install wizard
  • 18912 : eZPgsqlSchema::generateDropFieldSql() does not quote reserved column names
  • 18914 : eZPgsqlSchema::generateDropIndexSql uses wrong constraint name
  • 18937 : REST Having a v inside provider prefix makes the request parsing fail
  • 18970 : Password in email
  • 18975 : order of HostUriMatchMapItems items is crucial when using host_uri matchorder
  • Revert "Fixed #17279: Unable to publish when object relation list is required"
  • Fixed too many args used when calling eZURLAliasML::generateFullSelect
  • Fixed eZURLAliasMLRegression::testURLAliasSplitParentTranslation() to not fail while being run with others tests
  • Fixed eZObjectRelationListDatatypeRegression::testIssue18249() to not fail while being run with others tests
  • Fixed test eZObjectRelationListDatatypeRegression::testIssue18249
  • Made eZMySQLDBFKTest working without db per test option
  • Fixed eZURLAliasML regression tests
  • Fixed unit test on attribute template operator
  • Fixed eZURLAliasMLTest::testChoosePrioritizedRow() to work with any language setup
  • Fixed eZContentObjectTest::testRelatedObjectCount() to empty the trash
  • Fixed a PHP warning when using eZFile::downloadContent() with a non-existent file
  • Fixed some inconsistencies and issues in the french translation
  • Fixed a mistake in the french translation
  • Fixed: decreased dfscleanup sleep time down to 10ms
  • Fixed: eZClusterFileHandler::preFork() should me called BEFORE forking
  • Fixed integer casting
  • Ref #013270: still typo in variable

 

Enhancements

  • 18862 : Fallback on mysql_escape_string to escape string if no connection initialized.
  • Implemented support for PUT and DELETE (REST)
  • Made MySQLi as default for eZDB cluster backend instead of MySQL

Tags

eZ Publish 2011