Message-ID: <1176770869.4156.1485857958193.JavaMail.confluence@ip-10-127-227-164> Subject: Exported From Confluence MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_Part_4155_1166456170.1485857958193" ------=_Part_4155_1166456170.1485857958193 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Location: file:///C:/exported.html
The first sub-release of eZ Platform 15.12 is now available for update.<= /p>
For the release notes of the corresponding eZ Studio sub-release, see eZ Studio 15.1= 2.1 Release Notes.
As already deprecated on requirements page, this release= does not support PHP 5.4 any longer.
For list of issues fixed in 15.12.1 see 13 issues , below i= s a list of notable bugs/features/enhancements done in the release. = p>
Several of the mentioned changes above where done by contributors for th= is release, notable contributions merged from among others:
New proposed upgrade process
This section reflects a proposed git based workflow for handling upgrade= s, feedback on how this works in practice and input on how to further impro= ve/simplify it is welcome.
Existing 15.12 (1.0) projects can also easily be updated using Composer.= From the project's root, create a new branch from the project's master, or= from the branch you're upgrading on:
git checkout -b upgrade-1.1.0=20
If it's not there, add ezsystems/ezplatform as an upstream remote:
git remote add ezplatform http://github.com/ezsystems/ezplatform.g= it=20
Then pull the tag into your branch:
git pull ezplatform v1.1.0=20
You will get conflicts, and it is perfectly normal. The most common ones=
will be on composer.json
 =
;and composer.lock
.
If you get a lot of conflicts (on the doc folder for instance), and eZ Platform was installed from the share.e=
z.no tarball, it might be because of incomplete history. You will have =
to run
git fetch ezplatform --unshallow
to load the =
full history, and run the merge again.
The latter can be ignored, as it will be regenerated when we execute com= poser update later. The easiest is to checkout the version from the tag, an= d add it to the changes:
git checkout --theirs composer.lock && git add composer.lo= ck=20
You may also run git remove composer.lock
if you do no=
t keep a copy of it in the branch.
Conflicts in composer.json
need to be fixed manually. =
If you're not familiar with the diff output, you may checkout the tag's ver=
sion, and inspect the changes. It should be readable for most:
git checkout --theirs composer.json && git diff composer.j= son=20
You should see what was changed, as compared to your own version, in the=
diff output. The 1.1.0-rc1 tag changes the requirements for all of the&nbs=
p;ezsystems/
packages. Those should be left untouched. All of =
the other changes should be removals of your project's additions. You can u=
se git checkout -p
to selectively cancel those changes:=
p>
git checkout -p composer.json=20
Answer no
(do not discard) to the requirement cha=
nges of ezsystems
dependencies, and yes
=
(discard) to removals of your changes.
You may also checkout your own composer.json
, and run the f=
ollowing commands to update the ezsystems
packages requir=
ements from v1.0.x to v1.1.0:
git checkout --ours composer.json composer require --no-update "ezsystems/ezpublish-kernel:~6.1.0" composer require --no-update "ezsystems/platform-ui-bundle:~1.1.0" composer require --dev --no-update "ezsystems/behatbundle:~6.1.0" # PHP requirement is now 5.5+, and 7.0 is now supported for dev use (see to= p of this page for requirements link) composer require --no-update "php:~5.5|~7.0" # As there are some bugs with Symfony 2.8, make sure to pull in Symfony 2.7= LTS updates composer require --no-update "symfony/symfony:~2.7.0" # This command will remove platform.php: "5.4.4" as php 5.4 is no longer su= pported composer config --unset platform.php=20
Depending on the local changes you have done, you may get other conflict= s: configuration files, kernel...
There shouldn't be many, and you should be able to figure out which valu= e is the right one for all of them:
git add conflicting-file
to add the changes<=
/li>
At this point, you should have a composer.json file with the correct req=
uirements. Run composer update
to update the dependencies=
.
composer update --with-dependencies ezsystems/ezpublish-kernel ezsy= stems/platform-ui-bundle ezsystems/behatbundle=20
In order to restrict the possibility of unforeseen updates of 3rd party =
packages, we recommend by default that composer update
is rest=
ricted to the list of packages we have tested the update for. You may remov=
e this restriction, but be aware that you might get a package combination w=
e have not tested.
On PHP conflict
Because from this release onwards eZ Platform is compatible only with PH= P 5.5 and higher, the update command above will fail if you use an older PH= P version. Please update PHP to proceed.
Once all the conflicts have been resolved, and composer.lock
updated, the merge can be committed. Note that you may or may not ke=
ep composer.lock
, depending on your version management wo=
rkflow. If you do not wish to keep it, run git reset HEAD <fi=
le>
to remove it from the changes. Run git commit
, and adapt the message if necessary=
. You can now test the project, run integration tests... once the upgrade h=
as been approved, go back to master=
code>, and merge the
upgrade-1.1.0 branch:
git checkout master git merge upgrade-1.1.0=20