Packages/TYPO3.CMS.git
10 months ago[TASK] Change Site Base Handling to PSR-7 URI Interface 70/58070/7
Benni Mack [Wed, 29 Aug 2018 15:17:36 +0000 (17:17 +0200)]
[TASK] Change Site Base Handling to PSR-7 URI Interface

While working with Site Handling API, it's more than obvious
that we should utilize the UriInterface, to integrate PSR-7
more natively.

The Interface changes, however, as it was only introduced
recently, this should not be an issue.

Resolves: #86027
Releases: master
Change-Id: Id06ccbcf2bbced8408342866d295edc3f11a376a
Reviewed-on: https://review.typo3.org/58070
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
10 months ago[BUGFIX] Add missing table column type „SLUG“ 68/58068/2
Frank Naegler [Wed, 29 Aug 2018 08:06:54 +0000 (10:06 +0200)]
[BUGFIX] Add missing table column type „SLUG“

Resolves: #86017
Releases: master
Change-Id: Ic7315dfa4b287c42c88ff80e4040e1185273bd7c
Reviewed-on: https://review.typo3.org/58068
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Tobias Wollender <tliegl@gmail.com>
Tested-by: Tobias Wollender <tliegl@gmail.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Richard Haeser <richard@maxserv.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
10 months ago[BUGFIX] Allow returning null values for PageRouter::matchRoute() 73/58073/2
Andreas Fernandez [Wed, 29 Aug 2018 18:23:01 +0000 (20:23 +0200)]
[BUGFIX] Allow returning null values for PageRouter::matchRoute()

Resolves: #86030
Related: #86013
Releases: master
Change-Id: I337861f5dac4e3c7e7babd056e87630c22ec1f3e
Reviewed-on: https://review.typo3.org/58073
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
10 months ago[TASK] Mention table and record uid in DataHandler localize command log 71/58071/3
Tymoteusz Motylewski [Wed, 29 Aug 2018 15:49:24 +0000 (17:49 +0200)]
[TASK] Mention table and record uid in DataHandler localize command log

Resolves: #86029
Releases: master, 8.7
Change-Id: I75c5bf23537a987fbe16c9a6fb2464a853d12135
Reviewed-on: https://review.typo3.org/58071
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Markus Klein <markus.klein@typo3.org>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
10 months ago[TASK] Speed up functional tests using database snapshots 66/58066/10
Oliver Hader [Tue, 28 Aug 2018 22:04:48 +0000 (00:04 +0200)]
[TASK] Speed up functional tests using database snapshots

Resolves: #86019
Releases: master
Change-Id: Ia9951730c1d1eb8b1238b92907bfa243b9518c7d
Reviewed-on: https://review.typo3.org/58066
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
10 months ago[TASK] Separate site resolving from page slug resolving 62/58062/11
Benni Mack [Tue, 28 Aug 2018 16:41:59 +0000 (18:41 +0200)]
[TASK] Separate site resolving from page slug resolving

Currently, the site resolver checks for a valid site, and if so,
checks for valid page slugs. The latter is now moved to the
"PageResolver" middleware where the actual root line within
TSFE is resolved, and is now decoupled.

On top, a new "RouteResult" Array Access object is added
which is attached to the PSR-7 request as attribute "routing",
which will later be used for extensions
to add their own custom mappings.

The RouteResult object is now returned from the SiteMatcher
and PageRouter in order to encapsulate symfony/routing API
even more and to work with objects instead of array with magic
properties like "next" - which was actually renamed to "tail".

Fixes with this change:
- Proper and defined 307 redirect from a site (like www.domain.com)
to the default language (www.domain.com/en/)
- Proper and defined 307 redirect when a site/language is defined
without a trailing slash but accessed with a trailing slash and vice versa
- Proper and defined 307 redirect when a page slug is defined
without a trailing slash but accessed with a trailing slash and vice versa

Tests for SiteResolving have been streamlined and tests for
PageResolver have been added.

Please note:
The hook for checkAlternativeIdMethods() is now only called for
Frontend Requests without site handling.

Resolves: #86013
Releases: master
Change-Id: I9309d4092d007d555b37d575539ecf42303628de
Reviewed-on: https://review.typo3.org/58062
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
10 months ago[TASK] Deprecate IMGMENU/GMENU functionality 35/57435/11
Benni Mack [Tue, 3 Jul 2018 06:38:15 +0000 (08:38 +0200)]
[TASK] Deprecate IMGMENU/GMENU functionality

GraphicalMenuContentObject (GMENU/GMENUITEM) and
ImageMenuContentObject (IMGMENU/IMGMENUITEM) will
be removed in TYPO3 v10.0, and are marked as deprecated.

A lot of functionality related to HMENU in general,
previously exposed to the public, has
been migrated to be internal, now
throwing deprecation messages as well when accessed
from the public.

In addition the following TypoScript properties
will be removed in TYPO3 v10.0.

TMENU
- imgNamePrefix
- imgNameNotRandom

TMENU Item properties
- RO_chBgColor
- beforeImg
- beforeImgTagParams
- beforeImgLink
- beforeROImg
- RO
- afterImg
- afterImgTagParams
- afterImgLink
- afterROImg

Removed item states
- IFSUBRO
- ACTRO
- ACTIFSUBRO
- CURRO
- CURIFSUBRO
- USRRO
- USERDEF1RO
- USERDEF2RO

Also deprecated: TSFE->setJS('mouseOver');

Also not needed in TYPO3 v10.0 anymore:
Folder typo3temp/assets/menu/

Resolves: #85902
Releases: master
Change-Id: I1b5920e4727e97415e6527f5810c9b103c2c6fed
Reviewed-on: https://review.typo3.org/57435
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
10 months ago[TASK] Use typo3/phar-stream-wrapper package 42/58042/7
Oliver Hader [Sun, 26 Aug 2018 20:38:59 +0000 (22:38 +0200)]
[TASK] Use typo3/phar-stream-wrapper package

PharStreamWrapper has been released as standalone package under
the MIT license: https://github.com/TYPO3/phar-stream-wrapper

Stream invocation is handled by the new composer package, previous
classes PharStreamWrapper and PharStreamWrapperException have been
removed from the TYPO3 core but are still kept in class alias maps
for compatibility reasons. Since the standalone package is now
independent from TYPO3 constraints, the TYPO3 specific logic to
intercept Phar invocations has been moved to the new class
PharStreamWrapperInterceptor.

Resolves: #85984
Releases: master
Change-Id: I66692c3e75cfd174125e1923a2a9cb7fbbd78217
Reviewed-on: https://review.typo3.org/58042
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
10 months ago[TASK] Minor cleanup ContentObjectRenderer 65/58065/2
Benni Mack [Tue, 28 Aug 2018 19:16:06 +0000 (21:16 +0200)]
[TASK] Minor cleanup ContentObjectRenderer

ContentObjectRenderer has some minor flaws. Also the functional tests have
some unused code.

Resolves: #86015
Releases: master
Change-Id: I9ed00b32f4c00de7b667ad72052a0b7032901313
Reviewed-on: https://review.typo3.org/58065
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
10 months ago[TASK] Migrate extension commands to Symfony 55/58055/12
Benni Mack [Mon, 27 Aug 2018 14:24:00 +0000 (16:24 +0200)]
[TASK] Migrate extension commands to Symfony

The Extbase command controller from Extension Manager is the only
CommandController used in TYPO3 Core (apart from extbase:help), all
others have been migrated to symfony/console commands.

This however is now only possible due to the recent migration to define
these commands as "non-schedulable" so they do not show up in the
scheduler as a possible command to be called repeatedly.

For the "extensionmanager:extension:dumpclassloadinginformation"
call, the functionality is moved to EXT:core as this is not related to any
functionality in ExtensionManager, as it does not need any information
of this. This command has been made available under "dumpautoload"
to get closer on the naming scheme of native composer.

"install" and "uninstall" however rely on the DI concept of Extbase and
Extensionmanager to inject necessary components and is tightly
intertwined. These are now provided as "extension:activate" and
"extension:deactivate" respectively to convey their purpose and especially
show that the latter does not remove any data or code.

Releases: master
Resolves: #85996
Change-Id: I8025d8ba8f577c46815996bd3c7d13d17dec268a
Reviewed-on: https://review.typo3.org/58055
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Nicole Cordes <typo3@cordes.co>
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Tested-by: Mathias Brodala <mbrodala@pagemachine.de>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
10 months ago[BUGFIX] Site Configuration Module shows hidden languages 61/58061/3
Benni Mack [Tue, 28 Aug 2018 14:33:41 +0000 (16:33 +0200)]
[BUGFIX] Site Configuration Module shows hidden languages

Site Languages which are not shown in the frontend should be displayed
in the Backend module however this is a bug that Fluid accesses only
enabled languages, but needs to use "getAllLanguages()" instead.

Resolves: #86011
Releases: master
Change-Id: I24880604675b7d0bb5ced8169a2e3f461afa8dfb
Reviewed-on: https://review.typo3.org/58061
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Jan Stockfisch <typo3@jan-stockfisch.de>
Tested-by: Jan Stockfisch <typo3@jan-stockfisch.de>
Reviewed-by: Oliver Klee <typo3-coding@oliverklee.de>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
10 months ago[TASK] Decouple usage of cObject->editPanel and ->editIcons 30/58030/2
Benni Mack [Fri, 24 Aug 2018 16:22:09 +0000 (18:22 +0200)]
[TASK] Decouple usage of cObject->editPanel and ->editIcons

Both methods within "ContentObjectRenderer->editPanel()" and
"ContentObjectRenderer->editIcons()" were built to have "FrontendEditingController"
resolve the editing panel (EXT:feedit) which is not needed, so ContentObjectRenderer
is calling the extensions itself.

For that use, the FrontendBackendUserAuthentication gains functionality
for checking if a record can be edited.

Resolves: #85972
Releases: master
Change-Id: Ic8405fde4cdf5b6d1336fd0925cd0553bae6cf5f
Reviewed-on: https://review.typo3.org/58030
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Daniel Gorges <daniel.gorges@b13.de>
Tested-by: Daniel Gorges <daniel.gorges@b13.de>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
10 months ago[TASK] Deprecate TSFE constructor with no_cache parameter 34/58034/3
Benni Mack [Fri, 24 Aug 2018 22:30:16 +0000 (00:30 +0200)]
[TASK] Deprecate TSFE constructor with no_cache parameter

Instantiating TypoScriptFrontendController with the fourth
parameter set (except null) will now trigger a deprecation
message, as it is recommended to use the method `set_no_cache`
instead.

Resolves: #86002
Releases: master
Change-Id: I6d8bbdd79d6b6169d358b5d17b036006d3c3205e
Reviewed-on: https://review.typo3.org/58034
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Daniel Gorges <daniel.gorges@b13.de>
Tested-by: Daniel Gorges <daniel.gorges@b13.de>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
10 months ago[FEATURE] Move workspaces scheduler tasks to native symfony commands 56/58056/5
Benni Mack [Tue, 28 Aug 2018 04:51:18 +0000 (06:51 +0200)]
[FEATURE] Move workspaces scheduler tasks to native symfony commands

The previously available scheduler tasks for auto-publishing and cleaning up
preview links have been moved to a symfony/command, allowing them to be
scheduled, but also triggered manually on the command line without having
to create a task record in scheduler.

The old tasks have been deprecated, as there is the possibility to create
tasks out of symfony commands as well.

The AutoPublishService, which only acted as a wrapper, but had a major
design flaw has been deprecated as well.

The scheduler tasks will be removed in TYPO3 v10. For TYPO3 v9, their
labels have been updated, and they will trigger a deprecation notice.

Resolves: #86001
Releases: master
Change-Id: I9c1f1e31b6ff59d02b20ffc2df805e645bb3f675
Reviewed-on: https://review.typo3.org/58056
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
10 months ago[BUGFIX] Use namespaced class name for blog_example fe_users subclass 52/58052/2
Tymoteusz Motylewski [Mon, 27 Aug 2018 19:23:17 +0000 (21:23 +0200)]
[BUGFIX] Use namespaced class name for blog_example fe_users subclass

The last place which was missed when porting the extension to namespaces,
is now fixed.

Also slash sign has to be escaped in SQL.

Resolves: #85999
Releases: master, 8.7
Change-Id: I844b59b209ef1434298575b57fc7dc861ecab643
Reviewed-on: https://review.typo3.org/58052
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
Tested-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
10 months ago[TASK] Remove site caches if page is created on top level 17/58017/4
Christian Kuhn [Thu, 23 Aug 2018 22:02:32 +0000 (00:02 +0200)]
[TASK] Remove site caches if page is created on top level

The patch fixes a fatal php scenario if a page is created
on root level. The data handler now flushes site caches if that
happens and unsets the SiteMatcher singleton so it is forced
to be recalculated if re-used in current request.

Change-Id: Ie54f70b1bbfaaf1f6302f4e6b14abcf6af4c310f
Resolves: #85985
Releases: master
Reviewed-on: https://review.typo3.org/58017
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
10 months ago[TASK] Remove toggle function from page tree root element 11/57911/3
Paweł Rogowicz [Wed, 15 Aug 2018 10:06:08 +0000 (12:06 +0200)]
[TASK] Remove toggle function from page tree root element

Remove toggle function from root node and set expanded on true if there
is only one node on depth 0. If there is more then 1
(e.g. when using DB Mounts) then keep toggle option.

Releases: master
Resolves: #85809
Change-Id: I94f9e20d048760e3a35ba1e8ed170521406a92d3
Reviewed-on: https://review.typo3.org/57911
Tested-by: TYPO3com <no-reply@typo3.com>
Tested-by: Riccardo De Contardi <erredeco@gmail.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
Tested-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
10 months ago[TASK] Clean up unused / dead code 47/58047/4
Christian Kuhn [Mon, 27 Aug 2018 12:01:21 +0000 (14:01 +0200)]
[TASK] Clean up unused / dead code

A series of unused and dead code places are fixed with the patch:
* Switch + return + break -> the break is obsolete
* A couple of 'too many arguments' when calling methods
* Various assignments of variables that are never used

Change-Id: I8472597f73a739bce053cf6de772c111ae7044d7
Resolves: #85993
Releases: master
Reviewed-on: https://review.typo3.org/58047
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
10 months ago[FEATURE] Allow symfony commands to be non-schedulable 46/58046/5
Benni Mack [Mon, 27 Aug 2018 11:53:56 +0000 (13:53 +0200)]
[FEATURE] Allow symfony commands to be non-schedulable

When registering a Symfony Command, it is now possible to
define a new option `schedulable` which can explicitly set to false,
in order to have e.g. EXT:scheduler not show some.

This implements the functionality previously only available for
Extbase's CommandControllers.

Resolves: #85991
Releases: master
Change-Id: Ie2d8d3cc71d04263984a928debd257ecb88184e8
Reviewed-on: https://review.typo3.org/58046
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Tested-by: Mathias Brodala <mbrodala@pagemachine.de>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
10 months ago[TASK] Sort building process within PageLinkBuilder / TypoLink 22/58022/2
Benni Mack [Fri, 24 Aug 2018 13:32:53 +0000 (15:32 +0200)]
[TASK] Sort building process within PageLinkBuilder / TypoLink

This is a pre-cursor for unifying URL generation with slugs / based on sites,
in order to group things that belong together in the mass-method of generating
links in the frontend.

Tasks done:
- $linkText is moved to the very end, as it has no dependency.
- $targetDomain/$currentDomain handling is grouped together.
- absRefPrefix is now always taken from $tsfe->absRefPrefix, as this is the
  resolved path (not set to "auto")
- minor un-needed calls simplified (unneessary checks etc)

Resolves: #85964
Releases: master
Change-Id: Iba84cd98fa614ef7131c03a093c9cfa0a0056575
Reviewed-on: https://review.typo3.org/58022
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
10 months ago[FEATURE] Add Upgrade Wizard to migrate to pagepath segment for pages 91/57991/9
Benni Mack [Wed, 22 Aug 2018 16:21:21 +0000 (18:21 +0200)]
[FEATURE] Add Upgrade Wizard to migrate to pagepath segment for pages

A new upgrade wizard is introduced, which sets page URLs based on the
page title and rootline, if they are empty.

All root pages will get "/", all others will have a "/path-to/my/page/"
pagepath.

On top, if RealURL generated pagepaths already (works with v1 and v2 by
checking for the database table), they will be used instead of
generated slugs.

Pages with an alias field take priority over "regular" pages and
values from RealURL, whereas alias fields will result in a slug like
"/my-alias-value".

Resolves: #85928
Releases: master
Change-Id: Ie0cfbfb9e8472e15717ea39cb1af65896743f293
Reviewed-on: https://review.typo3.org/57991
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
10 months ago[BUGFIX] Only allow QueryResultInterface in Be.PaginateViewHelper 38/58038/5
Daniel Goerz [Sat, 25 Aug 2018 12:55:29 +0000 (14:55 +0200)]
[BUGFIX] Only allow QueryResultInterface in Be.PaginateViewHelper

Resolves: #85979
Related: #81200
Releases: master
Change-Id: Ibab30517c6380d1a7fda59656e12700d4193170a
Reviewed-on: https://review.typo3.org/58038
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Tested-by: Mathias Brodala <mbrodala@pagemachine.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
10 months agoRevert "[TASK] Deprecate @cli annotation" 44/58044/2
Mathias Brodala [Mon, 27 Aug 2018 09:11:52 +0000 (11:11 +0200)]
Revert "[TASK] Deprecate @cli annotation"

We do not have a replacement for TYPO3v9 so we cannot deprecate this annotation yet.

This reverts commit c7791b01fe420cd8ed7298635ba414d1b5ea2638.

Change-Id: Ie7228d6e13a5647698f2a5c26ebe9fd56de80aac
Resolves: #85988
Related: #85977
Reviewed-on: https://review.typo3.org/58044
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
10 months ago[BUGFIX] Add language configuration for model tag in EXT:blog_example 41/58041/2
Łukasz Uznański [Sun, 26 Aug 2018 13:59:49 +0000 (15:59 +0200)]
[BUGFIX] Add language configuration for model tag in EXT:blog_example

Add language configuratin for model tag in EXT:blog_example, reformat TCA files,
unify sys_language_uid field configuration across all TCA files in extension

Resolves: #85983
Releases: master
Change-Id: I8e32f389216e279d59ed92a3af7e870d076b35a8
Reviewed-on: https://review.typo3.org/58041
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
Tested-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
10 months ago[TASK] Deprecate @cli annotation 37/58037/3
Alexander Schnitzler [Sat, 25 Aug 2018 12:27:25 +0000 (14:27 +0200)]
[TASK] Deprecate @cli annotation

Back then, the PHPDoc annotation `@cli` was added to indicate
Extbase CommandController commands to be usable on CLI only
instead of also be usable as a scheduler task.

The scheduler implementation will be refactored in TYPO3 10
and the execution of commands from the backend will vanish.
Therefore it will not be necessary any more to define if
commands can only be used on the command line or not.
In the future, all commands will only be executable
from the command line.

Releases: master
Resolves: #85977
Change-Id: I52330517b51c5c747177cab55e34a721a0df5f67
Reviewed-on: https://review.typo3.org/58037
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
10 months ago[TASK] Inject TSFE object into ContentObjectRenderer 26/58026/2
Benni Mack [Fri, 24 Aug 2018 15:28:18 +0000 (17:28 +0200)]
[TASK] Inject TSFE object into ContentObjectRenderer

The class ContentObjectRenderer expects $typoScriptFrontendController
as first argument inside the constructor.

When creating cObj from within TypoScriptFrontendController, it is very valuable
to actually use the actual current object instead of doing the regular fallback
to $GLOBALS['TSFE'], to use this in proper recursions.

Resolves: #85968
Releases: master
Change-Id: I2238c8fc4d4d76f177b02630ed5627a3c9a7a060
Reviewed-on: https://review.typo3.org/58026
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
10 months ago[TASK] Deprecate PageRepository->getFirstWebPage() 29/58029/4
Benni Mack [Fri, 24 Aug 2018 16:18:42 +0000 (18:18 +0200)]
[TASK] Deprecate PageRepository->getFirstWebPage()

The method PageRepository->getFirstWebPage() is only used when
no "?id" parameter is given, and no rootpage was resolved. As this is the only
use-case, a more generic "getMenu" method can be used, which does the
same except for not "limiting" the query to one result, so there is a minimal
memory penalty when doing so, however due to Pseudo-Site functionality
this drawback is only in use for rare cases.

Resolves: #85971
Releases: master
Change-Id: I42fec4251963a0ab2baa038defde39cf0eac4bbf
Reviewed-on: https://review.typo3.org/58029
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
10 months ago[TASK] Deprecate GraphicalFunctions->init method 23/58023/3
Benni Mack [Fri, 24 Aug 2018 15:15:35 +0000 (17:15 +0200)]
[TASK] Deprecate GraphicalFunctions->init method

The init method of GraphicalFunctions/Gifbuilder was used instead of
a constructor to set up various internal properties, and is now
shifted into a new constructor, making the extra call to init() superfluous.

Resolves: #85978
Releases: master
Change-Id: I71ee3bc8045f48b1636e46681dddd742ba1f56c4
Reviewed-on: https://review.typo3.org/58023
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
10 months ago[TASK] Remove unused TimeTracker->fixContent() method argument 25/58025/2
Benni Mack [Fri, 24 Aug 2018 15:23:23 +0000 (17:23 +0200)]
[TASK] Remove unused TimeTracker->fixContent() method argument

The protected method TimeTracker->fixContent() has an argument $first
which is always set to "0", so the functionality can be removed.

Resolves: #85967
Releases: master
Change-Id: I4fbe73bd6d15b892dcc21b1cdd4456af4f80eeb3
Reviewed-on: https://review.typo3.org/58025
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
10 months ago[BUGFIX] Throw exception in case FileWriter's logFile is invalid 31/58031/2
Oliver Hader [Fri, 24 Aug 2018 16:23:19 +0000 (18:23 +0200)]
[BUGFIX] Throw exception in case FileWriter's logFile is invalid

GeneralUtility::getFileAbsFileName($logFile) never results in `null`,
but in some empty string in case the $logFile is invalid.

Resolves: #85973
Releases: master, 8.7
Change-Id: I2890bbf172c8f540dd2fa2775a9479d5c644b172
Reviewed-on: https://review.typo3.org/58031
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Markus Klein <markus.klein@typo3.org>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
10 months ago[BUGFIX] Fix various wrong phpDoc comments 27/58027/2
Benni Mack [Fri, 24 Aug 2018 15:36:26 +0000 (17:36 +0200)]
[BUGFIX] Fix various wrong phpDoc comments

Return types in phpDoc method annotations are wrong and should be adapted
to the actual return value in the PHP code.

Resolves: #85969
Releases: master
Change-Id: I10f31957db1c863510a1bff97293c0bad336568d
Reviewed-on: https://review.typo3.org/58027
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
10 months ago[TASK] Use strict bool calls for TimeTracker->LR 24/58024/2
Benni Mack [Fri, 24 Aug 2018 15:18:40 +0000 (17:18 +0200)]
[TASK] Use strict bool calls for TimeTracker->LR

The public property "TimeTracker->$LR" is declared as boolean, but used
with integer. Let's have TYPO3 use it that way it was documented.

Resolves: #85966
Releases: master
Change-Id: I19faa67425440cb35b00924baee760b919a42ef3
Reviewed-on: https://review.typo3.org/58024
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
10 months ago[TASK] Move LocalConfiguration* files to config folder 17/56517/41
Benni Mack [Sat, 9 Jun 2018 15:04:13 +0000 (17:04 +0200)]
[TASK] Move LocalConfiguration* files to config folder

With the introduction of the environment API, composer-based
installations have the configuration folder outside of
"public-webroot"/typo3conf/, but in the project
paths folder config/.

All checks on PATH_typo3conf/
- LocalConfiguration.php
- AdditionalConfiguration.php
- AdditionalFactoryConfiguration.php

are now done against Environment::getConfigPath(), resulting in
different locations for projects having the environment variable
"TYPO3_PATH_APP" set to something else than the "PATH_site" constant,
the configuration is now found in "TYPO3_PATH_APP" . /config/.

A migration to move all config files into the new directory
is done when accessing the Install Tool automatically.

Resolves: #84623
Releases: master
Change-Id: I94020b1df4c9ffaec66310a4e1564927dbd8cb67
Reviewed-on: https://review.typo3.org/56517
Reviewed-by: Richard Haeser <richard@maxserv.com>
Tested-by: Richard Haeser <richard@maxserv.com>
Reviewed-by: Stephan Großberndt <stephan.grossberndt@typo3.org>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Helmut Hummel <typo3@helhum.io>
Tested-by: Helmut Hummel <typo3@helhum.io>
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Reviewed-by: Andreas Wolf <andreas.wolf@typo3.org>
Tested-by: Andreas Wolf <andreas.wolf@typo3.org>
10 months ago[BUGFIX] Use correct image references for LiveDefaultElements 33/58033/8
Markus Klein [Fri, 24 Aug 2018 21:52:00 +0000 (23:52 +0200)]
[BUGFIX] Use correct image references for LiveDefaultElements

Resolves: #85976
Releases: master, 8.7
Change-Id: I0f6588aa58be317da51cff59a5eb915831fc0774
Reviewed-on: https://review.typo3.org/58033
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
Tested-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Markus Klein <markus.klein@typo3.org>
10 months ago[BUGFIX] Fix PSR-7 URI generation without scheme 14/58014/4
Benni Mack [Thu, 23 Aug 2018 21:10:45 +0000 (23:10 +0200)]
[BUGFIX] Fix PSR-7 URI generation without scheme

When a new Uri('//newpage.com/') is added, TYPO3's PSR-7
implementation lacks the functionality to render that
properly to a string, as - like the specs - say, when there
is an authority, the implementation HAS to prefix the
authority with '//', regardless if there is a scheme or not.

Resolves: #85956
Releases: master
Change-Id: Id888c4425ac2f4a3d9bc9f2a1a3213a872bc55b4
Reviewed-on: https://review.typo3.org/58014
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Helmut Hummel <typo3@helhum.io>
Tested-by: Helmut Hummel <typo3@helhum.io>
10 months ago[TASK] Remove a series of SOBE assignments 18/58018/3
Christian Kuhn [Thu, 23 Aug 2018 23:17:23 +0000 (01:17 +0200)]
[TASK] Remove a series of SOBE assignments

The infamous $GLOBALS['SOBE'] object is still used at various
places is the core. This "talk to the hand" object registered
as runtime global to make itself available as "parent object"
is an even worse anti pattern than the also infamous $pObj.

The patch removes a series of "$GLOBALS['SOBE'] = $this" assignments
in some controllers that have no further dependency to this global
anymore for a while, are easy to review and b/w compatible.

Resolves: #85958
Releases: master
Change-Id: Ia961289c344c96eab250fa7f206c677cb65e047c
Reviewed-on: https://review.typo3.org/58018
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
10 months ago[TASK] Deprecate authentication related compareUident() method 20/58020/2
Christian Kuhn [Thu, 23 Aug 2018 23:46:06 +0000 (01:46 +0200)]
[TASK] Deprecate authentication related compareUident() method

The patch deprecates the unused compareUident() from
AbstractAuthenticationService that calls the also unused method
with the same name from AbstractUserAuthentication.

The code is dead left over stuff from pre password hashing era
and can be safely deprecated now.

Resolves: #85960
Releases: master
Change-Id: I5f02562e35abb27a4126998193edf827edb168ac
Reviewed-on: https://review.typo3.org/58020
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
10 months ago[BUGFIX] Adapt a broken namespace in SaltedPasswordService 19/58019/2
Christian Kuhn [Thu, 23 Aug 2018 23:36:30 +0000 (01:36 +0200)]
[BUGFIX] Adapt a broken namespace in SaltedPasswordService

Fixes two broken namespaces that went wrong when moving and
aliasing the salted password classes. The patch only affects
the deprecated and unused SaltedPasswordService.

Resolves: #85959
Related: #85833
Releases: master
Change-Id: Iad8c95a3b9bef60fe240a2010e9910df40c75825
Reviewed-on: https://review.typo3.org/58019
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
10 months ago[TASK] Improved slug generation for translated pages 10/58010/3
Christian Kuhn [Thu, 23 Aug 2018 18:34:11 +0000 (20:34 +0200)]
[TASK] Improved slug generation for translated pages

If a slug is generated for a nested translated page that
has a not translated page up in its rootline, the slug
generator now considers the default language page instead
of not including the upper tree pages at all.

Change-Id: Id5b4d3b1b815124413919bc8b48e03f2785573d9
Resolves: #85952
Releases: master
Reviewed-on: https://review.typo3.org/58010
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Richard Haeser <richard@maxserv.com>
Tested-by: Richard Haeser <richard@maxserv.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
10 months ago[TASK] Show slug in Info->Pagetree overview 11/58011/2
Christian Kuhn [Thu, 23 Aug 2018 19:26:59 +0000 (21:26 +0200)]
[TASK] Show slug in Info->Pagetree overview

Add the new slug "URL Segment" field to the Info
Pagetree overview directly after "Alias".

Resolves: #85953
Releases: master
Change-Id: I1d5706dfe7098f9f3983d222f4344f42d1bc197c
Reviewed-on: https://review.typo3.org/58011
Reviewed-by: Richard Haeser <richard@maxserv.com>
Tested-by: Richard Haeser <richard@maxserv.com>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
10 months ago[FEATURE] Introduce Page-based URL handling 94/57994/21
Benni Mack [Wed, 22 Aug 2018 21:08:22 +0000 (23:08 +0200)]
[FEATURE] Introduce Page-based URL handling

This feature adds a new database field "pages.slug" which
allows to fill the database with URL segments which can then
be resolved and built with for URLs for a specific page.

On top, when a site is found with a proper "slug", the
PageRouter of a site now resolves a /home/my-products/
to the correct page ID.

Next steps:
- Add URL enhancers API to allow to further resolve more parts.

Resolves: #85947
Releases: master
Change-Id: Ic64a758e847520b9a8dfc8b484c7613c9ba1f869
Reviewed-on: https://review.typo3.org/57994
Tested-by: Björn Jacob <bjoern.jacob@tritum.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Richard Haeser <richard@maxserv.com>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
10 months ago[TASK] Move domainStartPage setting to PageResolver 09/58009/2
Benni Mack [Thu, 23 Aug 2018 16:41:40 +0000 (18:41 +0200)]
[TASK] Move domainStartPage setting to PageResolver

The setting of the domainStartPage has been simplified with the PseudoSite
introduction, and, as it belongs to the enriching of the PageResolver,
the functionality is moved from the SiteResolver to the PageResolver.

Resolves: #85951
Releases: master
Change-Id: I67f88c1b6369450f63b582be1205a8639217304e
Reviewed-on: https://review.typo3.org/58009
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: TYPO3com <no-reply@typo3.com>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
10 months ago[BUGFIX] Mitigate deprecations in early bootstrap 03/58003/5
Helmut Hummel [Mon, 13 Aug 2018 15:33:39 +0000 (17:33 +0200)]
[BUGFIX] Mitigate deprecations in early bootstrap

Deprecations that trigger an error in early bootstrap
lead to the situation that code that is using this
(mostly declared) internal API will likely fail due
to these errors, as they are not caught by the
regular error handling, which is initialized later on.

Userland code using this API will notice the depreaction
even without those errors triggered.

Therefore remove those deprecations errors in most
places again so that tools like TYPO3 Console will be able
to stay compatible with older TYPO3 versions as well.

Also protect some methods straight away and add a deprecation
layer for them.

Resolves: #85944
Releases: master
Change-Id: I97485dfd947028cf02ff62b17b453d2f174a531a
Reviewed-on: https://review.typo3.org/58003
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
10 months ago[TASK] Fix typo and add example for requireCHashArgumentForActionArguments 02/58002/3
andypa [Thu, 23 Aug 2018 11:20:25 +0000 (13:20 +0200)]
[TASK] Fix typo and add example for requireCHashArgumentForActionArguments

Fixed a typo and added an example for EXT:indexed_search.

Releases: master, 8.7
Resolves: #85942
Change-Id: Iffcecd753843733ef96c9e41da808a47b943405e
Reviewed-on: https://review.typo3.org/58002
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Tested-by: Mathias Brodala <mbrodala@pagemachine.de>
10 months ago[TASK] Reduce amount of executed functional frontend tests 01/58001/2
Oliver Hader [Thu, 23 Aug 2018 10:17:18 +0000 (12:17 +0200)]
[TASK] Reduce amount of executed functional frontend tests

Resolves: #85941
Releases: master
Change-Id: Icbbeb31e8c905fc52523ee1c0267ac219e19c15f
Reviewed-on: https://review.typo3.org/58001
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Frank Naegler <frank.naegler@typo3.org>
Tested-by: Frank Naegler <frank.naegler@typo3.org>
10 months ago[FEATURE] Add SQL Logging to AdminPanel 89/57889/12
Susanne Moog [Tue, 7 Aug 2018 19:15:34 +0000 (21:15 +0200)]
[FEATURE] Add SQL Logging to AdminPanel

To better debug websites SQL logging has been added to the admin panel.
SQL queries will be logged whenever the admin panel is installed and
activated for the current user and request.

Queries using query parameters are displayed with all occuring parameter
values (grouped by the main query). To find where queries came from a
short backtrace has additionally been added to the query logging.

The logging itself has been implemented using the doctrine query
logging functionality.

Resolves: #84609
Releases: master
Change-Id: I84eebc8a23d6fa15c20dc48781409d4ab03f1bb1
Reviewed-on: https://review.typo3.org/57889
Reviewed-by: Benjamin Kott <benjamin.kott@outlook.com>
Tested-by: Benjamin Kott <benjamin.kott@outlook.com>
Reviewed-by: Willi Wehmeier <wwwehmeier@gmail.com>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
10 months ago[FEATURE] Add a new TCA type "slug" 89/56889/28
Benni Mack [Wed, 22 Aug 2018 21:05:20 +0000 (23:05 +0200)]
[FEATURE] Add a new TCA type "slug"

A new TCA type "slug" is added, which allows to generate a part of a URL
which can later be used for adding URL segments to any kind of record.

The new slug TCA type will be added to the pages database table separately
to fill a page with the rootline "Home => Products => My Product" with
"/products/my-product/details/" into the slug field when creating
a subpage "Details" under "My Product".

Once the slug field is added when persisting the record, changing a title
(like the page title) will not modify the slug anymore, but instead this
has to be modified separately.

Next steps:
- Add the TCA type "slug" to pages table
- Introduce an upgrade wizard for that pages table
- Improve FormEngine via AJAX validation of "uniqueInSite" for slugs
- Implement slug resolving for pages.

Resolves: #84729
Releases: master
Change-Id: I079267f42308f40da71ab4765ba7e0251e79f736
Reviewed-on: https://review.typo3.org/56889
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
10 months ago[BUGFIX] UnableToLinkException::getLinkText() must be of the type string, null returned 95/57995/2
Gerald Aistleitner [Thu, 23 Aug 2018 06:28:58 +0000 (08:28 +0200)]
[BUGFIX] UnableToLinkException::getLinkText() must be of the type string, null returned

Changed the default value of linkText to '' instead of null to prevent strict_type throwing an error.

Resolves: #85933
Releases: master, 8.7
Change-Id: I0a7567cd784360654649c11e686784ad3867858d
Reviewed-on: https://review.typo3.org/57995
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Joerg Kummer <typo3@enobe.de>
Tested-by: Joerg Kummer <typo3@enobe.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
10 months ago[BUGFIX] Add white-space to CSS class in FieldControl 96/57996/2
Stefan Froemken [Thu, 23 Aug 2018 08:12:16 +0000 (10:12 +0200)]
[BUGFIX] Add white-space to CSS class in FieldControl

Add a white-space in front of default CSS class
for buttons in field control wizards.

Resolves: #85935
Releases: master, 8.7
Change-Id: Ie4889b20ba95cf96f6895d5fc2e5375c70c48cc9
Reviewed-on: https://review.typo3.org/57996
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
10 months ago[TASK] Add API to hide PseudoSite functionality 92/57992/6
Benni Mack [Wed, 22 Aug 2018 17:18:57 +0000 (19:18 +0200)]
[TASK] Add API to hide PseudoSite functionality

In order to avoid usages of using PseudoSite objects directly,
the following changes have been made:

The main entrypoint for finding sites is now encapsulated the
SiteMatcher class.

* SiteMatcher->matchByPageId($pageId)
which consistently checks for Sites and Pseudo Sites. This is now
a singleton as it factors PseudoSiteFinder directly.

* NullSite for PID=0 (which is a slim version of a PseudoSite
and will stay around for longer than the PseudoSite).

This marks the last part of the Site API functionality, as
TYPO3 is now ready to work with the Site API in all places
throughout Frontend and Backend.

Resolves: #85930
Releases: master
Change-Id: I5e75da22337e126a39b459388e21d7f9fe05e556
Reviewed-on: https://review.typo3.org/57992
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
10 months ago[TASK] Add resolved site object to FormEngine 90/57990/3
Christian Kuhn [Wed, 22 Aug 2018 16:00:30 +0000 (18:00 +0200)]
[TASK] Add resolved site object to FormEngine

With pseudo sites we now always have a site object in backend.
The site object is needed multiple times in FormEngine, the
upcoming slug handling adds another usage.
The patch adds a FormEngine data provider to resolve the
site object for any given page or record and adds it as 'site'
to the result array.

Resolves: #85927
Releases: master
Change-Id: I7ebbd2e6591b54a54b6a5b56f95161b4ba6e5cee
Reviewed-on: https://review.typo3.org/57990
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
10 months ago[BUGFIX] Show correct example in comment block of SaveToDatabaseFinisher 88/57988/2
Daniel Goerz [Wed, 22 Aug 2018 13:50:02 +0000 (15:50 +0200)]
[BUGFIX] Show correct example in comment block of SaveToDatabaseFinisher

Resolves: #85926
Releases: master,8.7

Change-Id: Iaa36ce61de922d367d285ad5f98bfef8f2ee4714
Reviewed-on: https://review.typo3.org/57988
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Achim Fritz <af@achimfritz.de>
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Tested-by: Mathias Brodala <mbrodala@pagemachine.de>
10 months ago[FEATURE] Show only sys_languages in Backend which are available 72/57672/30
Georg Ringer [Tue, 24 Jul 2018 11:00:50 +0000 (13:00 +0200)]
[FEATURE] Show only sys_languages in Backend which are available

Instead of rendering all languages, only the ones provided by the
site module are now shown in forms of the FormEngine, in the List
module, the Info->Translation Overview and the Page module.

Fallbacks to pseudo sites are considered if no site configuration
for a page / page tree exists.

Resolves: #85164
Releases: master
Change-Id: I95b394cd3a31773e62f7e2cc40197aceb97705d8
Reviewed-on: https://review.typo3.org/57672
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
10 months ago[TEST] Extend site handling link generation tests 23/57923/10
Oliver Hader [Sat, 18 Aug 2018 21:14:57 +0000 (23:14 +0200)]
[TEST] Extend site handling link generation tests

Current side handling functional test cases only support link
resolving and rendering. The opposite part of generating links
has been introduced with this change.

Besides that, existing rendering tests have been extended for
frontend restricted page rendering.

Resolves: #85922
Releases: master
Change-Id: Ie12c2883463e5560dd03e18dab3dc3a277076815
Reviewed-on: https://review.typo3.org/57923
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
10 months ago[BUGFIX] Consequently forward backend user context in DataHandler 85/57985/3
Oliver Hader [Wed, 22 Aug 2018 09:13:20 +0000 (11:13 +0200)]
[BUGFIX] Consequently forward backend user context in DataHandler

DataHandler can be invoked with an individual backend user context and
will fall back to $GLOBALS['BE_USER'] in case it's not defined. In order
to make use of that behavior completely this individual context has to
be forwarded to all nested DataHandler instances as well.

Resolves: #85920
Releases: master
Change-Id: Ibcbba7d04d0967955937f838b6514a478b88d038
Reviewed-on: https://review.typo3.org/57985
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Daniel Gorges <daniel.gorges@b13.de>
Tested-by: Daniel Gorges <daniel.gorges@b13.de>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
10 months ago[TASK] Use suggestedInsertUids feature for new version placeholders 86/57986/2
Oliver Hader [Wed, 22 Aug 2018 09:17:31 +0000 (11:17 +0200)]
[TASK] Use suggestedInsertUids feature for new version placeholders

The DataHandler::$suggestedInsertUids feature is currently only used
for regular live records, however not for new version placeholders -
which in fact are the pendant for a regular live records, with the
additional binding to a specific workspace context.

Resolves: #85921
Releases: master
Change-Id: I320ab26be3c60983640d3c5f61338689b9068209
Reviewed-on: https://review.typo3.org/57986
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Daniel Gorges <daniel.gorges@b13.de>
Tested-by: Daniel Gorges <daniel.gorges@b13.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
10 months ago[BUGFIX] Show correct rendering times in admin panel 90/57890/4
Susanne Moog [Mon, 20 Aug 2018 16:13:33 +0000 (18:13 +0200)]
[BUGFIX] Show correct rendering times in admin panel

* adds missing timetracker->push()
* removes unnecessary call to printTSlog
* reuse existing variable in fixContent, to avoid notices

Resolves: #85916
Releases: master
Change-Id: I6e7b1f8872d1f058abc93802660ba625bbcf2d24
Reviewed-on: https://review.typo3.org/57890
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
10 months ago[BUGFIX] Flush site caches if sys_domain or sys_language was modified 84/57984/2
Benni Mack [Tue, 21 Aug 2018 19:02:53 +0000 (21:02 +0200)]
[BUGFIX] Flush site caches if sys_domain or sys_language was modified

Whenever a sys_domain or sys_language record, the information a Pseudo Site
is built by, is modified, created, deleted, moved (for sys_domain only),
the caches need to be flushed so they can be rebuilt.

Resolves: #85919
Releases: master
Change-Id: Icc6b018a15b5679b666d0050405d502f35963dbe
Reviewed-on: https://review.typo3.org/57984
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Joerg Kummer <typo3@enobe.de>
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Tested-by: Mathias Brodala <mbrodala@pagemachine.de>
10 months ago[BUGFIX] Decouple pasting from drag & drop handling 70/57970/3
Andreas Fernandez [Mon, 20 Aug 2018 17:25:15 +0000 (19:25 +0200)]
[BUGFIX] Decouple pasting from drag & drop handling

The "Paste" action now does not depend on the `DragDrop` anymore.
Previously, the `onDrop` event callback was called manually which is
wrong in that case, as the callback does far more calculations than
necessary when doing a simple paste action.

In the same run, the DragDrop module has been simplified, the module now
doesn't know anything about pasting content elements anymore.

Resolves: #85912
Releases: master
Change-Id: I3a8943e90a92c0ad4afec9e87091f9cd1878c34c
Reviewed-on: https://review.typo3.org/57970
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Reviewed-by: Manuel Selbach <manuel_selbach@yahoo.de>
Tested-by: Manuel Selbach <manuel_selbach@yahoo.de>
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Tested-by: Mathias Brodala <mbrodala@pagemachine.de>
10 months ago[FEATURE] Add "Pseudo" Site functionality 67/57767/22
Benni Mack [Wed, 1 Aug 2018 20:44:58 +0000 (22:44 +0200)]
[FEATURE] Add "Pseudo" Site functionality

All pages on rootlevel or with "is-siteroot" need
to have a site object as well, but populated
by sys_domain (optional) and all available sys_language
records.

However, this information needs to be compiled
within an entity called "PseudoSite".

This way, the page-based routing ("slug handling")
can use the functionality to detect the uniqueness
of a slug within a page tree.

The routing of sites is moved to a "SiteMatcher" API
class, returning all found information on a request
for a site, also encapsulating the Symfony/Routing
component in there.

This would be exactly the step where further information
about a URL will then be resolved.

Next steps are the usage of Sites and PseudoSites
in TYPO3 Backend, allowing to only show e.g.
languages that are configured, which can be done
via $site->getAvailableLanguages().

Resolves: #85900
Releases: master
Change-Id: Ia2d27e58f21b5c89dc67dffcbc82d6612b350988
Reviewed-on: https://review.typo3.org/57767
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
11 months ago[TASK] Use ServerRequestInterface in PageLayoutController 29/57329/24
Aljoscha Weber [Thu, 2 Aug 2018 10:43:25 +0000 (12:43 +0200)]
[TASK] Use ServerRequestInterface in PageLayoutController

Replace _GP, getIndpEnv usages with request related functions.

Also deprecate public access to all method except the entry point.

Resolves: #84375
Releases: master
Change-Id: I8050afe519dcbabfd6381c55844c81713482687e
Reviewed-on: https://review.typo3.org/57329
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Tested-by: Mathias Brodala <mbrodala@pagemachine.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
11 months ago[BUGFIX] Use extension key instead of an array for data reload 79/57979/3
Stephan Großberndt [Tue, 21 Aug 2018 09:00:13 +0000 (11:00 +0200)]
[BUGFIX] Use extension key instead of an array for data reload

Due to some database changes during the installation process of an
extension, the patch https://review.typo3.org/57486/ misses to pass
the extension key instead of the enriched extension information array.

Resolves: #85915
Related: #79094
Releases: master, 8.7
Change-Id: I708a99f47a2c493f68d224b9ffca4ec6c008f827
Reviewed-on: https://review.typo3.org/57979
Reviewed-by: Nicole Cordes <typo3@cordes.co>
Tested-by: Nicole Cordes <typo3@cordes.co>
Reviewed-by: Joerg Kummer <typo3@enobe.de>
Tested-by: Joerg Kummer <typo3@enobe.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Helmut Hummel <typo3@helhum.io>
Tested-by: Helmut Hummel <typo3@helhum.io>
11 months ago[BUGFIX] Do not depend on global env to define cli mode 16/57816/15
Helmut Hummel [Sun, 5 Aug 2018 10:42:50 +0000 (12:42 +0200)]
[BUGFIX] Do not depend on global env to define cli mode

Instead of depending on a global environment variable
to set the TYPO3 environment in cli mode, we inject the mode
properly from within the entry point.

We now move the code to initialize the environment
to SystemEnvironmentBuilder:run() where we can evaluate
the request type passed to this method, to properly
set cli or non cli mode.

Depending on a global env to set the TYPO3 environment
would require hacks, like changing the global env to
properly select the cli mode (currently done in testing framework).
Using an application sub context for that purpose isn't ideal either,
because at best we would need to also test for magic contexts
like "Production/Frontend" or "Development/Frontend" and at worst
it conflicts with user defined contexts. It wouldn't be possible
to define a sub context and still properly start a frontend application
within this context.

composer req --dev typo3/testing-framework ~4.4.1

Resolves: #85757
Releases: master
Change-Id: Ia64d358e731d9ddf717497ae120acb009e0f26fa
Reviewed-on: https://review.typo3.org/57816
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
11 months ago[TASK] Use proper label shortcut method in adminpanel and feedit 64/57964/2
Benni Mack [Mon, 20 Aug 2018 07:02:59 +0000 (09:02 +0200)]
[TASK] Use proper label shortcut method in adminpanel and feedit

The legacy naming for the shorthand method "extGetLL" was moved
to "getLabel" for both the edit toolbar and the EXT:feedit panel.

Resolves: #85905
Releases: master
Change-Id: I4fdad2127d40cc2850237311f3bc3f56c85ca394
Reviewed-on: https://review.typo3.org/57964
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
11 months ago[TASK] Add more remarks for flags regarding temporary content 65/57965/4
Benni Mack [Mon, 20 Aug 2018 07:05:17 +0000 (09:05 +0200)]
[TASK] Add more remarks for flags regarding temporary content

Just additional comments in TSFE.

Resolves: #85906
Releases: master
Change-Id: I7301370fab406bd5d9c395b7d092688d56bac9e3
Reviewed-on: https://review.typo3.org/57965
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Markus Klein <markus.klein@typo3.org>
11 months ago[TASK] Remove unused protected getter 61/57961/2
Benni Mack [Mon, 20 Aug 2018 05:25:24 +0000 (07:25 +0200)]
[TASK] Remove unused protected getter

The felogin plugin implements a protected short-hand getter
"getTypoScriptFrontendController" although this is never used.

Resolves: #85903
Releases: master
Change-Id: I0ee7e88a196739d0c3ef64bb80536f5c3372c79d
Reviewed-on: https://review.typo3.org/57961
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
11 months ago[BUGFIX] Remove check for TYPO3_MODE in ext_tables 63/57963/2
Benni Mack [Mon, 20 Aug 2018 06:46:04 +0000 (08:46 +0200)]
[BUGFIX] Remove check for TYPO3_MODE in ext_tables

With TYPO3 v9.0, all simple TYPO3_MODE checks of all system extensions
were removed, however EXT:rsaauth was somehow forgotten.

Resolves: #85904
Releases: master
Change-Id: If76b25813d323e0604a0a48596f2cd3d113f833a
Reviewed-on: https://review.typo3.org/57963
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Björn Jacob <bjoern.jacob@tritum.de>
Tested-by: Björn Jacob <bjoern.jacob@tritum.de>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
11 months ago[BUGFIX] Extract metadata for new files in storage 42/57842/5
Andreas Fernandez [Thu, 9 Aug 2018 14:18:03 +0000 (16:18 +0200)]
[BUGFIX] Extract metadata for new files in storage

If files in a remote storage are fetched the first time by FAL, the
metadata of these files is now extracted automatically, if the storage
supports this feature.

Resolves: #85786
Releases: master, 8.7
Change-Id: I4006ea2f39bbbbf0d6fe6a1f2adf2e79cdfbd5c5
Reviewed-on: https://review.typo3.org/57842
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Frans Saris <franssaris@gmail.com>
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Reviewed-by: Frank Naegler <frank.naegler@typo3.org>
Tested-by: Frank Naegler <frank.naegler@typo3.org>
Reviewed-by: Jigal van Hemert <jigal.van.hemert@typo3.org>
Tested-by: Jigal van Hemert <jigal.van.hemert@typo3.org>
11 months ago[TASK] Update codeception version from 2.4.4 58/57958/5
Anja [Sun, 19 Aug 2018 09:53:25 +0000 (11:53 +0200)]
[TASK] Update codeception version from 2.4.4

command used:
composer require codeception/codeception:^2.4.5

Change-Id: Ie3a81ef7591d1beb7beadf06c3e009444c6d5180
Resolves: #85899
Releases: master
Reviewed-on: https://review.typo3.org/57958
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
11 months ago[TASK] Stabilize acceptance test 57/57957/4
Anja [Sun, 19 Aug 2018 08:46:46 +0000 (10:46 +0200)]
[TASK] Stabilize acceptance test

Change-Id: I034b11478e2ac8b5d15c298d69afcc944626eb1d
Resolves: #85898
Releases: master
Reviewed-on: https://review.typo3.org/57957
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
11 months ago[TASK] Fix spelling and streamline @deprecated notations 48/57948/2
Wouter Wolters [Fri, 17 Aug 2018 12:26:31 +0000 (14:26 +0200)]
[TASK] Fix spelling and streamline @deprecated notations

Resolves: #85891
Releases: master
Change-Id: Ie848059591cb69d9e6fad6c2c6275b9655e6ff87
Reviewed-on: https://review.typo3.org/57948
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
11 months ago[TASK] Centralize sys_domain resolving 49/57949/12
Benni Mack [Fri, 17 Aug 2018 12:40:56 +0000 (14:40 +0200)]
[TASK] Centralize sys_domain resolving

Core provides various places to either retrieve the pageId
of a sys_domain record, or to find out the root page ID
given a request (previously domain + path).

However, due to the inclusion of symfony/routing, the
detection can now be handled by this new component.

For this purpose, a new class LegacyDomainResolver is
introduced (internal) which utilizes symfony/routing
under the hood and does proper caching.

This way, the following methods can be deprecated:
- TypoScriptFrontendController->domainNameMatchesCurrentRequest()
- TypoScriptFrontendController->getDomainDataForPid()
- BackendUtility::getDomainStartPage()
- BackendUtility::firstDomainRecord()

This is a precursor for fetching all sys_domain data,
to minimize the efforts later-on to wrap the LegacyDomainResolver
into a proper Router, and also to build pseudo-sites
on top.

Resolves: #85892
Releases: master
Change-Id: I831d33ac06f090cbe4d2a16e592549739489f99a
Reviewed-on: https://review.typo3.org/57949
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
11 months ago[FEATURE] Add feature toggle interface to Settings 52/57952/4
Christian Kuhn [Fri, 17 Aug 2018 15:15:19 +0000 (17:15 +0200)]
[FEATURE] Add feature toggle interface to Settings

Admin tools -> Settings is extended by a GUI to manipulate
feature toggles. Note this interface lists only core features
at the moment since extensions currently have no way to
extend DefaultConfigurationDescrition.yml with additional
information.

Resolves: #85894
Related: #83429
Releases: master
Change-Id: I7ae03c87f2bf94281d4d63d2ff80c6f0460807cb
Reviewed-on: https://review.typo3.org/57952
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
11 months ago[TASK] Let deprecation notices contain class and method/property names 56/57956/2
Alexander Schnitzler [Sat, 18 Aug 2018 17:10:22 +0000 (19:10 +0200)]
[TASK] Let deprecation notices contain class and method/property names

Instead of using generic deprecation messages like "Tagging methods with
@ignorevalidation is deprecated and will be removed...", deprecation
messages should contain the affected class and method/property name.

Releases: master
Resolves: #83255
Change-Id: I0ec1a5739c7b9eaa39e8447d19c410de27d2d3c8
Reviewed-on: https://review.typo3.org/57956
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
11 months ago[TASK] Streamline site handling functional tests 55/57955/4
Oliver Hader [Sat, 18 Aug 2018 11:48:24 +0000 (13:48 +0200)]
[TASK] Streamline site handling functional tests

Some additional tests are added and the scenario
is extended with pagetrees without a site (sys_domain
in use).

Resolves: #85897
Releases: master
Change-Id: I5c6f61c59e9383de2199dbbc687fdd0924cde1af
Reviewed-on: https://review.typo3.org/57955
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
11 months ago[TASK] Cleanup in LiveSearch class 46/57946/3
Wouter Wolters [Fri, 17 Aug 2018 11:56:47 +0000 (13:56 +0200)]
[TASK] Cleanup in LiveSearch class

* Simplify FQN of QueryParser
* Use correct typehint for $pageIdList, is an array and not a string
* Switch if statement order to use the less expensive one first
* Surround hard to read or-statement with parentheses
* Directyly return result in getAvailablePageIds

Resolves: #85889
Releases: master
Change-Id: I93b11a4d1480767902435d392a6f6af518bac53f
Reviewed-on: https://review.typo3.org/57946
Reviewed-by: Jan Helke <typo3@helke.de>
Tested-by: Jan Helke <typo3@helke.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
11 months ago[SECURITY] Ensure validity of parameters submitted to ThumbnailController 43/57943/7
Oliver Hader [Fri, 17 Aug 2018 06:49:14 +0000 (08:49 +0200)]
[SECURITY] Ensure validity of parameters submitted to ThumbnailController

Parameters submitted to ThumbnailController via HTTP GET query parameters
can contain arbitrary information. Thus, it has to be verified that those
parameters are valid by signing them with a HMAC.

Prior to that the source code was vulnerable to information disclosure as
well as denial of service attacks due to unsanitized user input. A valid
backend user account was required in order to make use of these flaws.

Since the change which introduced this behavior was not released yet, the
security fixes are handled in public without additional announcements.

Resolves: #85875
Releases: master, 8.7
Change-Id: Ia53ba3756f140b0728b8fd1fb7e0527836639a6b
Reviewed-on: https://review.typo3.org/57943
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Frank Naegler <frank.naegler@typo3.org>
Tested-by: Frank Naegler <frank.naegler@typo3.org>
11 months ago[BUGFIX] Fix "enabled" in array representation of SiteLanguage 51/57951/4
Benni Mack [Fri, 17 Aug 2018 12:46:40 +0000 (14:46 +0200)]
[BUGFIX] Fix "enabled" in array representation of SiteLanguage

A minor issue with the wrong property when calling enabled()
vs. "isEnabled()" was introduced.

Resolves: #85164
Releases: master
Change-Id: I99afd802db480c6c4b03263c5972867a4273020e
Reviewed-on: https://review.typo3.org/57951
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
11 months ago[BUGFIX] Correct extension scanner matcher definitions 50/57950/3
Christian Kuhn [Fri, 17 Aug 2018 12:43:50 +0000 (14:43 +0200)]
[BUGFIX] Correct extension scanner matcher definitions

Add a couple of missing numberOfMandatoryArguments lines
to the MethodCallMatcher definitions to fix the extension
scanner that validates these files at runtime.

Change-Id: I029d16d4d63b275c134b0483200a716111c913c2
Resolves: #85893
Releases: master
Reviewed-on: https://review.typo3.org/57950
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
11 months ago[BUGFIX] Trigger close & save modal if an IRRE record was removed 47/57947/2
Daniel Goerz [Fri, 17 Aug 2018 11:58:01 +0000 (13:58 +0200)]
[BUGFIX] Trigger close & save modal if an IRRE record was removed

Resolves: #85890
Releases: master
Change-Id: I73972920dbb7046e8ab7cf95577cb2f5af99c095
Reviewed-on: https://review.typo3.org/57947
Reviewed-by: Jan Helke <typo3@helke.de>
Tested-by: Jan Helke <typo3@helke.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
11 months ago[TASK] Improve description for EidUtility deprecation 45/57945/2
Wouter Wolters [Fri, 17 Aug 2018 11:39:42 +0000 (13:39 +0200)]
[TASK] Improve description for EidUtility deprecation

Resolves: #85878
Releases: master
Change-Id: If35be25607823ab40ad1dc91843bc60562e6752f
Reviewed-on: https://review.typo3.org/57945
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Markus Klein <markus.klein@typo3.org>
Reviewed-by: Jan Helke <typo3@helke.de>
Tested-by: Jan Helke <typo3@helke.de>
11 months ago[TASK] Extract Persistence of FrontendEditing in separate class 32/57932/6
Benni Mack [Thu, 16 Aug 2018 19:33:49 +0000 (21:33 +0200)]
[TASK] Extract Persistence of FrontendEditing in separate class

FrontendEditingController calls up DataHandler if the right
get/post parameters are added. This code is specific for
EXT:feedit and extracted into EXT:feedit, as FrontendEditingController
is mixing concerns (rendering panels and persisting).

Resolves: #85877
Releases: master
Change-Id: Ib39fe8b7ddcf68fb9e93d8a08564ae7f550e95f3
Reviewed-on: https://review.typo3.org/57932
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
11 months ago[TASK] Deprecate PageGenerator class 41/57941/9
Benni Mack [Fri, 17 Aug 2018 05:49:58 +0000 (07:49 +0200)]
[TASK] Deprecate PageGenerator class

The static class PageGenerator is a list of
static methods previouly found in "pagegen.php", which
has now been moved within the RequestHandler which
is now fully responsible for turning a request object
with support from TSFE and PageRenderer into a response object.

This removes one further dependency built around a
legacy class and enjoys the concept that RequestHandler+TSFE
now share the responsibility for building $TSFE->content.

This also means that all tests can now be built without
having to use any global variables or some special Singleton
functionality but with a clean structure in mind.

Resolves: #85884
Related: #85822
Releases: master
Change-Id: I298795ea485f3c9850af23c0c5e69a3a6d43df99
Reviewed-on: https://review.typo3.org/57941
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
11 months ago[BUGFIX] Port for Symfony-Route must be a string 28/57928/2
Julian Wundrak [Thu, 16 Aug 2018 11:41:36 +0000 (13:41 +0200)]
[BUGFIX] Port for Symfony-Route must be a string

We use parse_url to determine the port, but symfony-route requires a string.

Resolves: #85872
Releases: master
Change-Id: I45140e0c3c1820e77dcdd9b9b41d68a7755d7477
Reviewed-on: https://review.typo3.org/57928
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Jörg Bösche <typo3@joergboesche.de>
Reviewed-by: Jan Helke <typo3@helke.de>
Tested-by: Jan Helke <typo3@helke.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
11 months ago[BUGFIX] Ensure cObj only contains valid property objects 44/57944/2
Benni Mack [Fri, 17 Aug 2018 09:49:01 +0000 (11:49 +0200)]
[BUGFIX] Ensure cObj only contains valid property objects

If a cObj instance is serialized (which happens very often), all sub-objects are
serialized with it.

This has a bad side-effect with Logging (as we've seen in other places like scheduler tasks)
when a logger with a FileWriter (to a resource pointer) is used, as the __wakeup() basically
destroys everything.

Therefore the logger is instantiated separately in __wakeup() - the same behaviour
as done with TSFE in ContentObjectRenderer.

Additionally, in order to improve memory footprint, the MarkerBasedTemplateService
is only instantiated whenever used (and not serialized).

Resolves: #85886
Releases: master
Change-Id: I3347485c2a6dcb6cf86a4f8182df6aa004582bb5
Reviewed-on: https://review.typo3.org/57944
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Stephan Großberndt <stephan.grossberndt@typo3.org>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
11 months ago[FEATURE] Enable/disable a specific SiteLanguage in Frontend 34/57934/5
Benni Mack [Thu, 16 Aug 2018 20:25:28 +0000 (22:25 +0200)]
[FEATURE] Enable/disable a specific SiteLanguage in Frontend

When adding a new language/translation it is quite common
to disable a language until it's "going live", so only logged-in
users can see the language variant.

A new checkbox "enabled in Frontend" is added to the site
configuration.

Resolves: #85164
Releases: master
Change-Id: Ib4265e76f3ace29c4942cd165182191042ae54a6
Reviewed-on: https://review.typo3.org/57934
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Jan Helke <typo3@helke.de>
Tested-by: Jan Helke <typo3@helke.de>
Reviewed-by: Frank Naegler <frank.naegler@typo3.org>
Tested-by: Frank Naegler <frank.naegler@typo3.org>
11 months ago[TASK] Fix click path to configure trustedHostsPattern 42/57942/2
Jan Helke [Fri, 17 Aug 2018 08:19:32 +0000 (10:19 +0200)]
[TASK] Fix click path to configure trustedHostsPattern

Replace the click path from the old install tool with the one of
the new admin tools.

Releases: master
Resolves: #85885
Change-Id: I3bedae58ee4a020a4edbbc0fcf8df1be25e15430
Reviewed-on: https://review.typo3.org/57942
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
11 months ago[BUGFIX] Fix calling checkIncludeLines non statically in BackendLayoutView 39/57939/2
Wouter Wolters [Thu, 16 Aug 2018 21:19:51 +0000 (23:19 +0200)]
[BUGFIX] Fix calling checkIncludeLines non statically in BackendLayoutView

The method checkIncludeLines in TypoScriptParser should be called
statically in the class BackendLayoutView.

Resolves: #85882
Releases: master,8.7
Change-Id: Ib774ee41528741953576acb82f046ed45e7acc75
Reviewed-on: https://review.typo3.org/57939
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Jan Helke <typo3@helke.de>
Tested-by: Jan Helke <typo3@helke.de>
11 months ago[TASK] Centralize sending HTTP headers in TSFE 40/57940/3
Benni Mack [Fri, 17 Aug 2018 05:37:29 +0000 (07:37 +0200)]
[TASK] Centralize sending HTTP headers in TSFE

This patch marks the last change of reordering
sending HTTP response headers via TSFE via
header(), sending all headers within TSFE->processOutput().

Once centralized, the headers can now put into a
PSR-7 response object, if wanted.

Resolves: #85883
Releases: master
Change-Id: I4c9289a43748f02fb571421e34aa7f66ce34cc4a
Reviewed-on: https://review.typo3.org/57940
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Frank Naegler <frank.naegler@typo3.org>
Tested-by: Frank Naegler <frank.naegler@typo3.org>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
11 months ago[BUGFIX] Fix non-static call to getLogger in TypoScriptParser 38/57938/2
Wouter Wolters [Thu, 16 Aug 2018 21:03:31 +0000 (23:03 +0200)]
[BUGFIX] Fix non-static call to getLogger in TypoScriptParser

The method getLogger is static and is called statically now.

Resolves: #85881
Releases: master
Change-Id: Ia9bf834f011e113c05b1da46d34dace0d0c5012c
Reviewed-on: https://review.typo3.org/57938
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
Tested-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
11 months ago[BUGFIX] Fix calling getInstance() twice to get ResourceFactory 37/57937/3
Wouter Wolters [Thu, 16 Aug 2018 20:55:57 +0000 (22:55 +0200)]
[BUGFIX] Fix calling getInstance() twice to get ResourceFactory

In the class MetaInformation the ResourceFactory instance is fetched
twice instead of once. Remove one call that is too much.

Resolves: #85880
Releases: master
Change-Id: Ic22b82ff2f68fc2936a0583ae77cb3c0226a0c3d
Reviewed-on: https://review.typo3.org/57937
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Markus Klein <markus.klein@typo3.org>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
11 months ago[BUGFIX] Make headline of adminpanel sub module settings dynamic 31/57931/2
Susanne Moog [Thu, 16 Aug 2018 18:30:52 +0000 (20:30 +0200)]
[BUGFIX] Make headline of adminpanel sub module settings dynamic

The headline of an admin panel submodule settings group was hardcoded
to "Submodule Settings". This has been changed to "<Submodule Name>
Settings". In addition two missing translations have been introduced.

Releases: master
Resolves: #85876
Change-Id: Ifea4898317a04465776671b766418dbdcf29fcc3
Reviewed-on: https://review.typo3.org/57931
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
11 months ago[TASK] Deprecate EidUtility and methods within TSFE 76/57876/9
Benni Mack [Sat, 11 Aug 2018 18:16:17 +0000 (20:16 +0200)]
[TASK] Deprecate EidUtility and methods within TSFE

EidUtility is a poor-mans middleware functionality with
lots of side-effects, and is marked as deprecated.

On top, the following methods in
TypoScriptFrontendController are deprecated:
- initFEuser()
- storeSessionData()
- previewInfo()
- hook_eofe()
- addTempContentHttpHeaders()
- sendCacheHeaders()

Additionally, the PreviewInfo Hook
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['tslib/class.tslib_fe.php']['hook_previewInfo']
is deprecated, as the eofe hook solves the same issues.

Resolves: #85878
Releases: master
Change-Id: I49cdb8c9c0b3cdf08fa90ce54cc5e570cfd13dce
Reviewed-on: https://review.typo3.org/57876
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
11 months ago[BUGFIX] Use non-static method getCache in Avatar class 35/57935/2
Wouter Wolters [Thu, 16 Aug 2018 20:28:03 +0000 (22:28 +0200)]
[BUGFIX] Use non-static method getCache in Avatar class

The getCache method is not static but called as static twice.
Use $this->getCache() instead.

Resolves: #85879
Releases: master,8.7
Change-Id: Icfb28989c201894d0bfd2867642d7703426fabc2
Reviewed-on: https://review.typo3.org/57935
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Markus Klein <markus.klein@typo3.org>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
11 months ago[TASK] Clean up FrontendEditing Controller 25/57925/2
Benni Mack [Wed, 15 Aug 2018 20:19:07 +0000 (22:19 +0200)]
[TASK] Clean up FrontendEditing Controller

The FrontendEditingController class in EXT:core does two things:
- persisting incoming GET/POST requests (actually only when EXT:feedit is installed)
- rendering editIcons and editIconPanel

In order to separate these concerns, the first patch extracts some minor functionality into
EXT:feedit, and cleans up code which should have been done long ago.

The next iteration will be to deprecate unused methods and properties, and to move
FrontendEditingController into EXT:feedit, however, using an Interface to
render editIcons and editPanels instead.

Resolves: #85869
Releases: master
Change-Id: I78ed1da9e619099dc56b970961c90c34f8dff1e4
Reviewed-on: https://review.typo3.org/57925
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Frank Naegler <frank.naegler@typo3.org>
Tested-by: Frank Naegler <frank.naegler@typo3.org>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Jörg Bösche <typo3@joergboesche.de>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
11 months ago[TASK] Raise typo3/testing-framework to 4.4.0 27/57927/4
Christian Kuhn [Thu, 16 Aug 2018 11:12:24 +0000 (13:12 +0200)]
[TASK] Raise typo3/testing-framework to 4.4.0

composer require --dev typo3/testing-framework:~4.4.0

With the removal of all '$suppressNotices = true' settings from
existing unit tests, this flag has now been removed from the
testing-framework. Core unit tests from now on must never trigger
notices, or fix the subject code along with new tests.

Resolves: #84280
Releases: master
Change-Id: Iffe6f6fa056a0203d2cb5474c25c36d2ef651578
Reviewed-on: https://review.typo3.org/57927
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
11 months ago[TASK] Make GeneralUtility tests notice free 26/57926/3
Christian Kuhn [Thu, 16 Aug 2018 10:38:59 +0000 (12:38 +0200)]
[TASK] Make GeneralUtility tests notice free

Resolves: #85871
Releases: master
Change-Id: Idca3e0bef85849eff4de818e0c736ac9aec281c2
Reviewed-on: https://review.typo3.org/57926
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
11 months ago[TASK] Make DataHandler tests notice free 13/57913/7
Wouter Wolters [Wed, 15 Aug 2018 13:12:12 +0000 (15:12 +0200)]
[TASK] Make DataHandler tests notice free

Resolves: #85862
Releases: master
Change-Id: I19ef49799b2a5a0704072b1758ceba7a28aaee5f
Reviewed-on: https://review.typo3.org/57913
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
11 months ago[BUGFIX] Make functional frontend tests work again 94/57894/2
Helmut Hummel [Tue, 14 Aug 2018 13:31:26 +0000 (15:31 +0200)]
[BUGFIX] Make functional frontend tests work again

On systems that populate $_ENV['_'] with the path
to the PHP binary, frontend functional tests fail.

This is due to the fact that TYPO3 tries to determine paths
based on a cli environment, while we in fact emulate
a frontend (HTTP server) environment in this scenario.

This can be fixed with checking for the "magic"
context "Testing/Frontend", which was added beforehand
already in a different place.

At the same time we simplify the code used to make
functional tests work without process isolation, to
make it better communicate the intention and also
make it more robust.

Resolves: #85842
Related: #85712
Related: #85649
Releases: master
Change-Id: Ie1f9d220f70ecfe5ff00d8bf421e58df2b411d23
Reviewed-on: https://review.typo3.org/57894
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Riny van Tiggelen <info@online-gamer.nl>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
11 months ago[TASK] Make sysext/core/Tests/Unit/Resource/ notice free 28/57228/8
Jan Helke [Fri, 22 Jun 2018 16:00:27 +0000 (18:00 +0200)]
[TASK] Make sysext/core/Tests/Unit/Resource/ notice free

Releases: master
Resolves: #85270
Change-Id: I31794c8e5ac90cce3c93bca8a8c0b502ada42c24
Reviewed-on: https://review.typo3.org/57228
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>