====================
2.1.1
====================

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Base Distribution
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
TYPO3.Eel
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

[BUGFIX] Fix unwrapping of left hand side operand for substractions
-----------------------------------------------------------------------------------------

This change fixes a missing unwrap on the Eel context for substraction
expressions in the CompilingEelParser.

All expressions should be re-generated by flushing the Eel expression
cache.

* Commit: `69afae8 <https://git.typo3.org/Packages/TYPO3.Eel.git/commit/69afae87e90ea2d076f4bdf586a51b92b05c8484>`_

[BUGFIX] Prevent race conditions in Eel Expression Cache
-----------------------------------------------------------------------------------------

This should prevent race conditions where the included cache
file contained less expressions than the file that ends up in
the code to be cached string.

* Fixes: `#54487 <http://forge.typo3.org/issues/54487>`_
* Commit: `854789c <https://git.typo3.org/Packages/TYPO3.Eel.git/commit/854789c380f9d81e5a658bb3155c5a9694af0eb3>`_

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
TYPO3.Flow
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

[TASK] Update references in documentation
-----------------------------------------------------------------------------------------

See http://ci.typo3.robertlemke.net/job/typo3-flow-release/11/

* Commit: `74ce49d <https://git.typo3.org/Packages/TYPO3.Flow.git/commit/74ce49d3572bd3672090c9c724082d22c316db41>`_

[TASK] Add changelog for TYPO3 Flow 2.0.2
-----------------------------------------------------------------------------------------

See http://ci.typo3.robertlemke.net/job/typo3-flow-release/10/

* Commit: `3e97719 <https://git.typo3.org/Packages/TYPO3.Flow.git/commit/3e97719f5d6b432a32da2df5b85ddaed888e55b5>`_

[!!!][BUGFIX] Translation not working with single numeric argument
-----------------------------------------------------------------------------------------

This removes the option to provide the plural quantity as a single numeric
argument, as this was used nowhere but prevented translations from working
with such single arguments.

This change is breaking for cases where an application depends on previous
behavior that translateBy* calls with a single numeric argument would implicate
a quantity for plural form. Also classes extending I18n\\Translator and using
protected method getPluralForm() will break due to a signature change.

* Fixes: `#45062 <http://forge.typo3.org/issues/45062>`_
* Commit: `79e26ae <https://git.typo3.org/Packages/TYPO3.Flow.git/commit/79e26ae931177af7af18ec3cacc1f856ce58a1b0>`_

[BUGFIX] Set Max-Age for Cookies
-----------------------------------------------------------------------------------------

If the configured session cookie lifetime is > 0, the Max-Age property of the
cookie is set accordingly in the response header.

Before this change the lifetime would be used as the expiry time, leading to
cookies having session lifetime only.

* Fixes: `#55369 <http://forge.typo3.org/issues/55369>`_
* Commit: `de82f24 <https://git.typo3.org/Packages/TYPO3.Flow.git/commit/de82f2445647c6ccd2938bcec30730d8ef5662fd>`_

[BUGFIX] route caching should take hostnames into account
-----------------------------------------------------------------------------------------

With several Sites / Domains in Neos the routing cache identifier
is not unique for nodes with the same name

This change takes the hostname into account and ensures the
cache Identifier is unique for all Sites

* Resolves: `#54632 <http://forge.typo3.org/issues/54632>`_
* Commit: `b47c850 <https://git.typo3.org/Packages/TYPO3.Flow.git/commit/b47c850cb958ac52ad2c000a5ef6522c9b3734dc>`_

[TASK] Add notice about php path for windows users
-----------------------------------------------------------------------------------------

Adds an additional note to set the php path in Settings.yaml for
windows users as most won't have php in C:/php/php.

* Commit: `5bb8755 <https://git.typo3.org/Packages/TYPO3.Flow.git/commit/5bb87551779811efef88bb008bb52686f12141c5>`_

[!!!][BUGFIX] Sort packages by dependency
-----------------------------------------------------------------------------------------

Before this, packages were sorted with PHP sort functions which did
not work in all cases due to the insufficiently determined order of
package dependencies.

With this change the sorting is done with an depth-first algorithm
that makes sure that package settings overrule settings from
depending packages.

The algorithm is an adapted version of
http://en.wikipedia.org/wiki/Topological_sorting

This is a breaking change in case you relied on the previous (and
sometimes incorrect) sorting of packages.

* Commit: `9966f75 <https://git.typo3.org/Packages/TYPO3.Flow.git/commit/9966f752ba9fa091a07fddbff56d4d0743f04fc4>`_

[TASK] Tweak documentation rendering
-----------------------------------------------------------------------------------------

* fix broken TOC
* exclude change logs from PDF
* use parts for PDF rendering

All changes have been merged for master already and are consolidated
here for the branch.

* Commit: `6666435 <https://git.typo3.org/Packages/TYPO3.Flow.git/commit/6666435f9ac4371815f293d2191377e9917f6b24>`_

[BUGFIX] Make getPackageOfObject() work for proxy objects
-----------------------------------------------------------------------------------------

The method ``PackageManager::getPackageOfObject()`` failed to
resolve the package of a given object if it was a proxy.

This change fixes this by comparing the namespace of the object
with the package namespaces rather than the file locations.

Background:

The Flow/Doctrine proxy classes usually reside in a folder underneath
``Data/Temporary``. Comparing those paths with the package root paths
led to invalid results.

In addition this adjusts the ``getPackageKeyFromMigrationVersion()``
of the ``Doctrine\\Service`` not to rely on ``getPackageOfObject()``
as all doctrine migrations reside in the ``TYPO3\\Flow`` namespace.

* Fixes: `#55309 <http://forge.typo3.org/issues/55309>`_
* Commit: `a24c683 <https://git.typo3.org/Packages/TYPO3.Flow.git/commit/a24c68375c3159819c30099706914e022db5d735>`_

[BUGFIX] Fix configuration schema for Routes
-----------------------------------------------------------------------------------------

This adjusts the Routes.schema.yaml to the "httpMethods"
setting introduced with #27117

* Related: `#27117 <http://forge.typo3.org/issues/27117>`_
* Commit: `3b8223c <https://git.typo3.org/Packages/TYPO3.Flow.git/commit/3b8223c2b2483ed69f485590cc35d27ed3d7d14e>`_

[BUGFIX] Fix configuration schema for package settings
-----------------------------------------------------------------------------------------

This adjusts the TYPO3.Flow.package.schema.yaml to the "packagesPathByType"
setting introduced with Ic87ebaece612e25898318795c748941e5a96b8cb.

* Commit: `84f1e6f <https://git.typo3.org/Packages/TYPO3.Flow.git/commit/84f1e6f76e8cb714fadc88a9d879e086aaa06ebb>`_

[BUGFIX] Classes without namespace create invalid proxy code
-----------------------------------------------------------------------------------------

This change makes classes without namespace create proper proxy
class code, by optionally skipping the namespace declaration.
Before such classes would create an empty namespace statement,
which resulted in syntax errors, i.e.::

   namespace ;

=> "syntax error, unexpected ';', expecting T_STRING or
T_NS_SEPARATOR or '{' in [filename]"

* Fixes: `#52944 <http://forge.typo3.org/issues/52944>`_
* Commit: `d9e103d <https://git.typo3.org/Packages/TYPO3.Flow.git/commit/d9e103d24ada569e9492224f6ce96de6e76ccd54>`_

[BUGFIX] Browser must not directly handle cookie
-----------------------------------------------------------------------------------------

Request::create() doesn't support "cookies" parameter.

Cookie argument has been removed from Request::create
with change Icdf7fea74d8331abcf95f1ec361abc78e31bfb8c.

* Fixes: `#48290 <http://forge.typo3.org/issues/48290>`_
* Commit: `b8b1142 <https://git.typo3.org/Packages/TYPO3.Flow.git/commit/b8b11424bd03b5f15d33a7685a7b82174c8d435e>`_

[BUGFIX] Respect X-Forwarded-Proto header consistently
-----------------------------------------------------------------------------------------

The ``Http\\Request`` currently only considers ``X-Forwarded-Proto``
headers in its isSecure() method.

With this change the header is checked in the constructor so that it
overrules the requested protocol if set.

Before::

 GET http://acme.com:8080 HTTP/1.1
 X-Forwarded-Proto: https
 X-Forwarded-Port: 443

Generated URIs like ``http://acme.com:8080``. With this change the
result is ``https://acme.com``.

* Fixes: `#54453 <http://forge.typo3.org/issues/54453>`_
* Commit: `a5c3398 <https://git.typo3.org/Packages/TYPO3.Flow.git/commit/a5c3398363278a2c28fd67f4edca58f448c420a1>`_

[TASK] Tweak documentation settings, enable PDF
-----------------------------------------------------------------------------------------

* Commit: `c4b5ced <https://git.typo3.org/Packages/TYPO3.Flow.git/commit/c4b5ced677ec6ca273488921642aa76af3405a54>`_

[TASK] Add change logs for TYPO3 Flow 2.0.0, 2.0.1
-----------------------------------------------------------------------------------------

* Commit: `48c4657 <https://git.typo3.org/Packages/TYPO3.Flow.git/commit/48c46577ec5efbf708cb34d7f3eab3cb0a67a9c5>`_

[TASK] Fix and tweak rST markup
-----------------------------------------------------------------------------------------

Note especially the changes to Förthner and Föder! :)

Yes, they fix PDF rendering of the documentation.

* Commit: `3fae2f8 <https://git.typo3.org/Packages/TYPO3.Flow.git/commit/3fae2f8e7cc7469eefbf0e3ac74ecb84660c2468>`_

[TASK] Fix tables in rST documents
-----------------------------------------------------------------------------------------

Although working for HTML rendering the syntax was wrong, breaking PDF
rendering.

* Commit: `3d208c1 <https://git.typo3.org/Packages/TYPO3.Flow.git/commit/3d208c17661633a79646d6588d42682669c2347c>`_

[BUGFIX] HTTP accept header parsing was not case-insensitive
-----------------------------------------------------------------------------------------

Some browsers send the Accept-Language header with uppercase letters for
the region. This was not correctly matched by the
parseAcceptLanguageHeader utility function.

* Commit: `db8857f <https://git.typo3.org/Packages/TYPO3.Flow.git/commit/db8857ff394908d2a0614aa692b9f52be899995d>`_

[BUGFIX] Filebackend is prone to race condition while writing cache entry
-----------------------------------------------------------------------------------------

This change improves protection against race conditions by adding a unique
identifier to the temporary file name while writing cache entry files.

* Commit: `b47acdf <https://git.typo3.org/Packages/TYPO3.Flow.git/commit/b47acdf1873ee776ed1f69fbef98fabca6a1e807>`_

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
TYPO3.Fluid
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

No changes

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
TYPO3.Kickstart
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

[TASK] Remove PHP closing tag in templates
-----------------------------------------------------------------------------------------

* Commit: `7656394 <https://git.typo3.org/Packages/TYPO3.Kickstart.git/commit/7656394f939e29f42887f38479859fdc237c2b72>`_

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
TYPO3.Party
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

No changes

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
TYPO3.Welcome
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

No changes

