Project

General

Profile

Activity

From 2021-05-07 to 2021-06-05

2021-06-04

08:42 Revision ec834502: [TASK] Deprecate Application->run callback
The run() method for all Applications contained
a callback which was added in TYPO3 v7, before
proper solutions for s...
Benni Mack

2021-06-03

11:58 Revision f2f1679f: [TASK] Deprecate GeneralUtility::compileSelectedGetVarsFromArray
To reduce usages of GeneralUtility::_GP(),
GeneralUtility::compileSelectedGetVarsFromArray()
is deprecated. Its only ...
Oliver Bartsch

2021-06-02

09:32 Revision 7873a185: [TASK] Remove outdated comments in ShortcutButtonViewHelper
While reworking the Shortcut API in #93093, some
arguments in the ShortcutButtonViewHelper have
been deprecated.
How...
Oliver Bartsch
08:24 Revision b7677cce: [BUGFIX] Update modal instances stack when hiding a modal
The modal stack handling is slightly changed to update the instance stack
when a modal was requested to get closed al...
Andreas Fernandez
08:23 Revision 5fd9ff2b: [BUGFIX] Fix change=reload for group fields
This patch implements the "Refresh required" dialog for group fields
configured to request a reload once their value ...
Andreas Fernandez
07:29 Revision cea81f94: [BUGFIX] Force scheme if forceAbsoluteUrl.scheme is set
Allow overriding the scheme with forceAbsoluteUrl even if the page
is not protected.
Also the case is now covered wh...
Nikita Hovratov

2021-06-01

19:48 Revision 0090b13a: [DOCS] Add Settings.cfg to lowlevel extension
Documentation can be generated from the existing README.rst.
A Settings.cfg is necessary so that the title is set.
O...
Sybille Peters
19:44 Revision 99f777f7: [DOCS] Add Settings.cfg to lowlevel extension
Documentation can be generated from the existing README.rst.
A Settings.cfg is necessary so that the title is set.
O...
Sybille Peters
19:33 Revision 90816930: [BUGFIX] Re-allow pages with a trailing slash
This change enables the usage of pages containing a
trailing slash in their "slug" like "/my-page/subpage/"
to be wor...
Benni Mack
19:17 Revision 3a4dd1ee: [TASK] Enable TypesAssignedToPropertiesRule in phpstan
composer req friendsoftypo3/phpstan-typo3 ^0.8.1 --dev
This patch is the next step towards full level 3
compatibilit...
Daniel Goerz
18:43 Revision 87ca0fce: [BUGFIX] Re-allow pages with a trailing slash
This change enables the usage of pages containing a
trailing slash in their "slug" like "/my-page/subpage/"
to be wor...
Benni Mack
18:37 Revision 306ef1d4: [BUGFIX] No greedy Symfony DI in ext:install
We recently added a Services.yaml to ext:install.
This isn't an incredible great idea since the
install tool is desig...
Christian Kuhn
18:33 Revision eb27260d: [BUGFIX] Remove duplicated caret and re-add padding
* Removes duplicated dropdown caret and use bootstraps
css caret (gridelement inside/after and finisher)
* Fix prev...
Jochen Roth
17:44 Revision b161b248: [BUGFIX] Let site configuration recognize configured languages
Set inlineTopMostParentUid fallback to "null" as "0" is a valid
sys_language. "0" gives false positives in the check ...
André Buchmann
17:36 Revision 1e1dbff8: [TASK] Remove a library dependent view helper test
The removed unit test mocks the system under test
and checks for specific method calls. The test
relies on AbstractTa...
Christian Kuhn
17:36 Revision 4df0bc50: [TASK] Remove a library dependent view helper test
The removed unit test mocks the system under test
and checks for specific method calls. The test
relies on AbstractTa...
Christian Kuhn
17:35 Revision 16a78abc: [TASK] Remove a library dependent view helper test
The removed unit test mocks the system under test
and checks for specific method calls. The test
relies on AbstractTa...
Christian Kuhn
17:32 Revision 006fa9df: [BUGFIX] Fix phpstan errors from TypesAssignedToPropertiesRule
* EXT:core
Resolves: #94122
Releases: master
Change-Id: I843e50719c5e5a2c3de425f49eae2f112e0df32f
Reviewed-on: https...
Daniel Goerz
17:00 Revision 78baf883: [BUGFIX] Avoid reloading backend login form for checking HTTP referrer
In order to determine whether HTTP referrer headers would be submitted
to server-side backend API, a corresponding "r...
Oliver Hader
17:00 Revision 0a27a127: [BUGFIX] Avoid reloading backend login form for checking HTTP referrer
In order to determine whether HTTP referrer headers would be submitted
to server-side backend API, a corresponding "r...
Oliver Hader
10:41 Revision ab0d4fe2: [BUGFIX] Fix allowed value for mail format configuration
$GLOBALS['TYPO3_CONF_VARS']['MAIL']['format'] allows to
configure the format for the mails, sent by TYPO3. The
format...
André Buchmann
10:07 Revision f102eb07: [BUGFIX] Fix allowed value for mail format configuration
$GLOBALS['TYPO3_CONF_VARS']['MAIL']['format'] allows to
configure the format for the mails, sent by TYPO3. The
format...
André Buchmann
09:26 Revision 08116b2f: [BUGFIX] Avoid reloading backend login form for checking HTTP referrer
In order to determine whether HTTP referrer headers would be submitted
to server-side backend API, a corresponding "r...
Oliver Hader
05:40 Revision 6bd8291b: [FEATURE] Customize selectable columns in List module per table
In prior TYPO3 versions, it was possible to customize the list of fields
to be shown in the list view. This was only ...
Benni Mack
05:08 Revision c73e97fb: [TASK] Use CodeMirror for backend layout code preview
Currently the preview of the generated code for
a backend layout uses only ...
Jochen Roth

2021-05-31

19:58 Revision c2ba4543: [BUGFIX] Fix change=reload for group fields
This patch implements the "Refresh required" dialog for group fields
configured to request a reload once their value ...
Andreas Fernandez
19:33 Revision 12737d31: [TASK] Change password reset functionality
In case administrators don't want their users to
initiate the reset password process, they have to
set the global con...
Oliver Bartsch
19:01 Revision 58042b06: [FEATURE] Add excludePagesRecursive option to XML sitemap generation
With this option pages can be excluded recursive in the XML sitemap:
plugin.tx_seo.config.xmlSitemap.sitemaps.pa...
Christoph Lehmann
12:29 Revision b68c5d38: [TASK] Raise typo3fluid/fluid ^2.7.0
A minor raise from 2.6 to 2.7 brings an aria
related feature and a cleanup we adapt in core.
composer req typo3fluid...
Christian Kuhn
12:18 Revision 1e4c675f: [BUGFIX] Fix recipients checkboxes in "Send to stage" dialog
Classes and positioning of the recipients checkboxes
in the EXT:workspaces "Send to stage" dialog are
adjusted to be ...
Oliver Bartsch
10:46 Revision 17d0055e: [BUGFIX] Force scheme if forceAbsoluteUrl.scheme is set
Allow overriding the scheme with forceAbsoluteUrl even if the page
is not protected.
Also the case is now covered wh...
Nikita Hovratov
10:43 Revision 2086d00a: [TASK] Add EXT:seo sitemap constants to constant editor
This adds the EXT:seo XML sitemap related constants
to the constant editor.
Resolves: #94239
Releases: master, 10.4
...
Oliver Bartsch
10:30 Revision 6874ac23: [TASK] Add EXT:seo sitemap constants to constant editor
This adds the EXT:seo XML sitemap related constants
to the constant editor.
Resolves: #94239
Releases: master, 10.4
...
Oliver Bartsch
10:25 Revision 9405407f: [TASK] styleguide: Ignore a phpstan error since its a core issue
Christian Kuhn
09:37 Revision 0f6b9d8d: [TASK] Show image of distribution even if not installed
Previously the image of a distribution extension
was only shown in the extensionmanager, in case
the distribution was...
Thomas Löffler

2021-05-30

18:01 Revision bd92b362: [TASK] Reduce ObjectManager->get() usages in ext:form
ext:form is full of ObjectManager usages. This first
patch tackles a series of simple cases: Mostly things
we know ca...
Christian Kuhn
17:42 Revision a7eef0b5: [BUGFIX] Fix phpstan errors from TypesAssignedToPropertiesRule
* EXT:dashboard
* EXT:extbase
* EXT:extensionmanager
* EXT:filelist
Resolves: #94124
Releases: master
Change-Id: I57...
Daniel Goerz
17:35 Revision 9fa29262: [TASK] Deprecate f:base ViewHelper
The BaseViewHelper which renders a base tag is kinda
useless in our scope: Fluid based rendering typically
takes care...
Christian Kuhn
17:27 Revision 37ad6394: [BUGFIX] Update modal instances stack when hiding a modal
The modal stack handling is slightly changed to update the instance stack
when a modal was requested to get closed al...
Andreas Fernandez
17:14 Revision 13e76498: [TASK] Remove unused ext:beuser context menu entry code
Did you know there's supposed to be a context menu
entry on pages in 'more' section that jumps to the edit
access vie...
Christian Kuhn
16:54 Revision ce616aeb: [TASK] Deprecate extbase request getRequestUri()
The next step towards a PSR-7 compatible request
object in extbase is to get rid of getRequestUri()
and setRequestUri...
Christian Kuhn
16:50 Revision ca2bcfc1: [TASK] Streamline method name for doc header button registration
Change method name for doc header button registration to
`registerDocHeaderButtons`, since it strictly follows the PS...
Torben Hansen

2021-05-29

20:43 Revision e461b6c0: [TASK] Avoid ObjectManager->get() for Typo3QuerySettings
makeInstance() can be used as straight substitution
for now. Do this and clean up the test case a bit
along the way.
...
Christian Kuhn
20:40 Revision bf124818: [BUGFIX] Correct ext:beuser BackendUserRepository inheritance
ext:beuser BackendUserRepository extends ext:extbase
BackendUserGroupRepository, which is of course bogus.
It trigger...
Christian Kuhn
20:38 Revision 84f90c38: [TASK] Remove extbase Request->setMethod()
To further prepare towards a PSR-7 Request in extbase
we have to get rid of the setMethod() method.
Therefore, the i...
Oliver Bartsch
18:28 Revision ae812f17: [TASK] Better document extbase defaultQuerySettings behavior
Extbase tends to become a victim of its own magic. In this
case, whenever a repository method like initializeObject()...
Christian Kuhn
18:04 Revision 1f97a631: [TASK] Remove obsolete ext:beuser ext_typoscript_setup
Both settings are useless:
* The storagePid = 0 setting is ignored for be_users and be_groups
queries since the ext...
Christian Kuhn
17:59 Revision b81a4b85: [TASK] Better document extbase defaultQuerySettings behavior
Extbase tends to become a victim of its own magic. In this
case, whenever a repository method like initializeObject()...
Christian Kuhn

2021-05-28

19:22 Revision 4e8caf79: [TASK] Deprecate f:be.container ViewHelper
The fluid backend ContainerViewHelper is very similar to the
PageRenderViewHelper, with the exception that container ...
Christian Kuhn
19:02 Revision 220ac32c: [TASK] Remove unused helper_javascript_css.html template file
typo3/sysext/backend/Resources/Private/Templates/helper_javascript_css.html
is an unused left over since FormEngine r...
Christian Kuhn
18:36 Revision d6df0d5b: [BUGFIX] Prevent disabling and deleting of current user
Both, the recordlist as well as the backend user module
already check the currently logged in user when evaluating
th...
Oliver Bartsch
18:35 Revision 566b5bf1: [TASK] Deprecate extbase request getBaseUri()
To further prepare extbase towards a extbase Request
object compatible with PSR-7 ServerRequestInterface, we
need som...
Christian Kuhn
18:25 Revision c14a0bb6: [TASK] Remove unused blank.html template file
typo3/sysext/backend/Resources/Private/Templates/blank.html is
unused since the removal of DocumentTemplate and can b...
Christian Kuhn
18:16 Revision ceea4553: [BUGFIX] Prevent disabling and deleting of current user
Both, the recordlist as well as the backend user module
already check the currently logged in user when evaluating
th...
Oliver Bartsch
12:01 Revision d183e836: [TASK] Streamline Extbase return status code
The Extbase action controller does not worry about clearing
cache or changing plugins from USER to USER_INT as this i...
Benni Mack
09:07 Revision a73d8f39: [TASK] Simplify extension manager xml parser
When dealing with TER extensions in the extension manager,
the TER provides an XML file with extension details that
a...
Christian Kuhn
00:13 Revision 1b42c0d9: [TASK] styleguide: Avoid using ControllerContext
Christian Kuhn

2021-05-27

19:30 Revision 9c9dece7: [FEATURE] Add AbstractValidator::addErrorForProperty()
For complex validators, it often makes sense that a custom validator
can attribute an error to a specific property or...
Volker Diels-Grabsch
19:11 Revision 77409ded: [BUGFIX] Do not reset validation state when validating sections
Calling `FormEngineValidation.validate()` on a passed section resets the
overall validation state which may cause to ...
Andreas Fernandez
19:11 Revision e8719fb8: [TASK] Always use manually set canonical URL
If a canonical URL is set in the page properties, this will always be used
before checking the other options for defi...
Albrecht Köhnlein
19:05 Revision 5a456090: [TASK] Deprecate ext:backend ModuleLayout view helpers
A while after the PHP based ModuleTemplate API has been
introduced back in 2015, a couple of fluid view helpers
have ...
Christian Kuhn
19:01 Revision 6c08ab24: [TASK] Extend click area for toolbar links
In order to ease usage, icon and text are now both linked
in toolbar sections of open docs, user switch and bookmark ...
Jochen Roth
19:01 Revision 1db17db7: [FEATURE] Add field information for pages backend layout
This patch adds a new field information which displays the
actually used backend layout for the current page,
in case...
Oliver Bartsch
18:56 Revision 7687050d: [BUGFIX] Do not reset validation state when validating sections
Calling `FormEngineValidation.validate()` on a passed section resets the
overall validation state which may cause to ...
Andreas Fernandez
18:12 Revision b6e26a07: [TASK] Remove dependency of extension manager to install tool
During refactoring of LateBootService (in install tool)
to BootService (in core) a usage of LateBootService in
extens...
Helmut Hummel
17:24 Revision 934b11ef: [TASK] Avoid ObjectManager->get() in ext:irre_tutorial
The method containing the call is unused and can be dropped.
Change-Id: Ia4e233bd1d15b2bb2deb6f03a29e5ae873bb829b
Re...
Christian Kuhn
16:40 Revision 48e03903: [BUGFIX] Re-calculate z-index of modal and its backdrop
Bootstraps modals are not designed to have multiple instances opened at
once, which was workarounded in TYPO3 a while...
Andreas Fernandez
16:19 Revision d363e657: [TASK] Ensure all Extbase plugins can be cacheable and non-cacheable
This change moves the detection of USER/USER_INT from
the FrontendRequestHandler to Extbase Bootstrap->run(),
allowin...
Benni Mack
16:16 Revision a8c6ab06: [TASK] Move BackendLayoutWizardElement into correct namespace
Resolves: #94212
Releases: master
Change-Id: I785cc3d5a286274ad4b09d1de3fe55adced878c5
Reviewed-on: https://review.ty...
Oliver Bartsch
12:10 Revision c45f9bef: [BUGFIX] styleguide: Minor adaptions to User1Element
* onFocus has been dropped from FormEngine in v8
* sanitize 'color' better
Christian Kuhn
11:41 Revision 528b3a33: [BUGFIX] Fix success message of password reset command
To prevent information disclosure, the password reset
process does not reveal if an email was sent or not. The
corres...
Oliver Bartsch
11:37 Revision 8b0a8836: [TASK] Resolve still more PHP 8 issues
Resolves: #94057
Releases: master
Change-Id: I238a98d5161417465c02ae8683aef83f55a05ecc
Reviewed-on: https://review.ty...
Larry Garfield
11:35 Revision 295f2523: [BUGFIX] EXT:scheduler align input field and button height
This aligns the height of the input field and
the associated datepicker button in the edit
task form of EXT:scheduler...
Jochen Roth
11:27 Revision de8529b0: [BUGFIX] Fix success message of password reset command
To prevent information disclosure, the password reset
process does not reveal if an email was sent or not. The
corres...
Oliver Bartsch
10:29 Revision 7a503f6b: [TASK] Avoid ObjectManager->get() in EXT:frontend
Resolves: #94204
Related: #90803
Releases: master
Change-Id: I3da93d84ddc9caa9922ac65c6f7a99acdede6606
Reviewed-on: h...
Oliver Bartsch
08:35 Revision 3a44b002: [BUGFIX] Pass PSR-7 Request to RequestBuilder->build()
Since #93853, RequestBuilder->build() expects
a PSR-7 Request to be passed.
Because the FLUIDTEMPLATE content object...
Oliver Bartsch

2021-05-26

20:25 Revision 7dda917a: [FEATURE] Add download and filename options to FileDumpController
The FileDumpController is extended for two new options:
- `dl`: Force download of the file
- `fn`: Use of an alterna...
Christian Eßl
15:24 Revision 21cfa8f4: [BUGFIX] Fix data attribute for modal content
With the bootstrap update in #93126 the data
attribute name to set the modal content changed
from `data-content` to `...
Oliver Bartsch
13:52 Revision e5cf4b94: [TASK] Deprecate "relativeToCurrentScript" in FAL API
The additional argument "relativeToCurrentScript" through
out the File Abstraction Layer is a faulty conceptual
imple...
Benni Mack
13:08 Revision 41ea787e: [TASK] Follow best practice on returning PSR-7 response
Since #94186, extbase controller actions are
required to return a PSR-7 response interface.
To ease the use for exte...
Oliver Bartsch
13:04 Revision 2cba0bac: [TASK] Set proper title of window in backend
With the introduction of the new backend module web component router,
the title of the backend windows will be set to...
Richard Haeser
12:07 Revision df3b793f: [BUGFIX] Fix reset password for backend user
Remove groupData filemounts property because it causes
GeneralUtility::intExplode to crash when $this->groupData['fil...
Jochen Roth
05:52 Revision 5002e536: [TASK] Update url to license information
As the page about licensing changed, the url should be
updated to avoid unneeded redirects.
Resolves: #94188
Release...
Georg Ringer
05:52 Revision 8bf610a0: [TASK] Update url to license information
As the page about licensing changed, the url should be
updated to avoid unneeded redirects.
Resolves: #94188
Release...
Georg Ringer
05:03 Revision b2e481e8: [TASK] Clean up JavaScript code smells
Several JavaScript code smells are cleaned up
and duplicate/superfluous parts removed.
Resolves: #94164
Releases: ma...
Oliver Hader
04:37 Revision 70f19efd: [TASK] Clean up JavaScript code smells
Several JavaScript code smells are cleaned up
and duplicate/superfluous parts removed.
Resolves: #94164
Releases: ma...
Oliver Hader

2021-05-25

19:45 Revision e20f9a19: [TASK] Streamline PackageManager internals
This change removes and modifies a few places within
PackageManager code which was built before composer
files contai...
Helmut Hummel
17:14 Revision 217eb7df: [BUGFIX] Support extra test arguments on acceptance tests
Resolves: #94189
Releases: master, 10.4
Change-Id: Idd70dda6b26c4e6462b351d61ac03e76b7fd9533
Reviewed-on: https://rev...
Larry Garfield
16:51 Revision f432c7e9: [BUGFIX] Support extra test arguments on acceptance tests
Resolves: #94189
Releases: master, 10.4
Change-Id: Idd70dda6b26c4e6462b351d61ac03e76b7fd9533
Reviewed-on: https://rev...
Larry Garfield
16:47 Revision 0bdf3e75: [TASK] Deprecate sys_language database table
The database table sys_language has become obsolete
with the introduction of site handling and site
languages. Since ...
Benni Mack
16:00 Revision c012b205: [TASK] Update url to license information
As the page about licensing changed, the url should be
updated to avoid unneeded redirects.
Resolves: #94188
Release...
Georg Ringer
13:28 Revision ddda5182: [BUGFIX] Only show contextual language information in List module
The List module shows the site information next to a language,
which is not needed in case when listing languages of ...
Benni Mack
12:08 Revision a6ffc9e6: [TASK] Extract CSV output into separate functionality
The CSV output of the database record list (= list module)
is one of the only parts that cannot be modified via middl...
Benni Mack
07:53 Revision 491bf92a: [BUGFIX] Unset accent background color for tables
After bootstrap update striped tables with hover
lost the background color due to a new instroduced
custom property i...
Jochen Roth
07:51 Revision dfcbf42b: [BUGFIX] Only show contextual language information in List module
The List module shows the site information next to a language,
which is not needed in case when listing languages of ...
Benni Mack
07:37 Revision d39f54cc: [BUGFIX] Fix phpstan errors from TypesAssignedToPropertiesRule
* EXT:indexed_search
* EXT:impexp
* EXT:frontend
* EXT:form
* EXT:fluid
Resolves: #94123
Releases: master
Change-Id:...
Daniel Goerz

2021-05-24

13:19 Revision 6f000257: [DOCS] Document ext:dashboard new refreshAvailable option
Adds the new refreshAvailable implementation (added via 9560e0a )
to documentation of EXT:dashboard.
Relates: #93210...
Daniel Siepmann

2021-05-22

14:58 Revision 1fe6e3ea: [BUGFIX] Return PSR-7 responses in EXT:extensionmanager
Since #92784, all extbase actions are required to return
a PSR-7 response interface. Because the controllers in
EXT:e...
Oliver Bartsch

2021-05-21

13:40 Revision 5398a239: [TASK] Add tests for route enhancers having nested arguments declaration
Resolves: #94185
Releases: master, 10.4, 9.5
Change-Id: Ic5a9f3a00a64e13a84b8f420ca1fed29838873d2
Reviewed-on: https:...
Oliver Hader
13:35 Revision 5895a037: [TASK] Add tests for route enhancers having nested arguments declaration
Resolves: #94185
Releases: master, 10.4, 9.5
Change-Id: Ic5a9f3a00a64e13a84b8f420ca1fed29838873d2
Reviewed-on: https:...
Oliver Hader
13:35 Revision 060f7300: [TASK] Add tests for route enhancers having nested arguments declaration
Resolves: #94185
Releases: master, 10.4, 9.5
Change-Id: Ic5a9f3a00a64e13a84b8f420ca1fed29838873d2
Reviewed-on: https:...
Oliver Hader
11:47 Revision c8375c58: [BUGFIX] Fix extension upload form
Submitting the extension upload form in the
extension manager module, without adding
an extension file, previously tr...
Oliver Bartsch
11:29 Revision d5dd2b9a: [BUGFIX] Fix extension upload form
Submitting the extension upload form in the
extension manager module, without adding
an extension file, previously tr...
Oliver Bartsch
08:52 Revision 73fc82f1: [BUGFIX] Cache page TsConfig depending on site
Similar to frontend TypoScript, constants must be replaced before
parsing and caching. This way, one cache entry per ...
Marco Huber
08:36 Revision 5ee70254: [TASK] Use codemirror web component for composer proposal
Previously the FormEngine t3editor element was used
for rendering the composer proposal. This however
required to fak...
Oliver Bartsch
08:34 Revision 6a40c1e7: [BUGFIX] Cache page TsConfig depending on site
Similar to frontend TypoScript, constants must be replaced before
parsing and caching. This way, one cache entry per ...
Marco Huber

2021-05-20

21:08 Revision e3d0eab2: [BUGFIX] Define missing fieldChangeFunc property
The composer proposal view is using FormEngine
to render the composer.json content with t3editor.
Therefore, a "fake...
Oliver Bartsch
20:59 Revision 990cc60e: [BUGFIX] Add missing grid class in composer proposal view
Resolves: #94180
Releases: master, 10.4
Change-Id: I70b97d1c364651cb73a298823902ba37d8174511
Reviewed-on: https://rev...
Oliver Bartsch
20:57 Revision c428369e: [BUGFIX] Add missing grid class in composer proposal view
Resolves: #94180
Releases: master, 10.4
Change-Id: I70b97d1c364651cb73a298823902ba37d8174511
Reviewed-on: https://rev...
Oliver Bartsch
20:56 Revision 5c68cc82: [BUGFIX] Define missing fieldChangeFunc property
The composer proposal view is using FormEngine
to render the composer.json content with t3editor.
Therefore, a "fake...
Oliver Bartsch
20:52 Revision ebcbd857: [TASK] Deprecate BackendUtility::viewOnClick
Core invocations of BackendUtility::viewOnClick() have
been removed with issue #91123 in v10 to reduce the amount
of ...
Oliver Hader
20:46 Revision ee4fa1e4: [TASK] Resolve more PHP 8 acceptance tests
More array type mishandling correction.
Resolves: #94057
Releases: master
Change-Id: If1dbb57028c327ac64e228970f21d6...
Larry Garfield
18:40 Revision 667274f8: [BUGFIX] Handle LEFT JOINs in Extbase correctly
Since Core's query builder now uses correct outer joins
including enable field filters, Extbase can rely on this
beha...
Markus Klein
17:56 Revision 05500a90: [BUGFIX] Avoid PHP TypeError in EXT:lowlevel
EXT:lowlevel gathers some statistics, e.g. deleted
records in general. However, by looking at the code,
recStats[dele...
Benni Mack
17:46 Revision 107e2dca: [BUGFIX] Handle LEFT JOINs in Extbase correctly
Since Core's query builder now uses correct outer joins
including enable field filters, Extbase can rely on this
beha...
Markus Klein
17:42 Revision 652bae7a: [BUGFIX] Avoid PHP TypeError in EXT:lowlevel
EXT:lowlevel gathers some statistics, e.g. deleted
records in general. However, by looking at the code,
recStats[dele...
Benni Mack
17:30 Revision e0411d4f: [BUGFIX] Use native "recordTitle" for FormEngine title
The PHP8 incompatible FormEngineUtility::databaseRowCompatibility()
is not needed since TYPO3 v7 LTS, as the TcaRecor...
Benni Mack
17:28 Revision b1175c90: [BUGFIX] Handle LEFT JOINs in Extbase correctly
Since Core's query builder now uses correct outer joins
including enable field filters, Extbase can rely on this
beha...
Markus Klein
17:27 Revision 19f4a436: [BUGFIX] Remove legacy foreign_selector conversion
During TYPO3 v7 the FormEngine got rewritten, and a "todo"
was left, which can be removed as it now contains wrong
in...
Benni Mack
17:03 Revision 7f76a259: [BUGFIX] Fix typo in PHPdoc of trimExplode()
The mentioned variable $onlyNonEmptyValues does
not exist. It has to be $removeEmptyValues.
Resolves: #94175
Release...
Oliver Bartsch
16:55 Revision 2f2b1a0e: [BUGFIX] Fix typo in PHPdoc of trimExplode()
The mentioned variable $onlyNonEmptyValues does
not exist. It has to be $removeEmptyValues.
Resolves: #94175
Release...
Oliver Bartsch
16:18 Revision 8c8af8c0: [TASK] Simplify trimExplode()
Make the code a bit more declarative and compact.
This also improves the documentation to make clear
the actual behav...
Larry Garfield
15:27 Revision 2cc09dd9: [TASK] Simplify trimExplode()
Make the code a bit more declarative and compact.
This also improves the documentation to make clear
the actual behav...
Larry Garfield
15:12 Revision 1cb65983: [BUGFIX] Check request object in ExtensionComposerStatus
Although the ExtensionComposerStatus report implements the
RequestAwareStatusProviderInterface, there is no guarantee...
Jochen Roth
14:59 Revision 72e0faea: [BUGFIX] Check request object in ExtensionComposerStatus
Although the ExtensionComposerStatus report implements the
RequestAwareStatusProviderInterface, there is no guarantee...
Jochen Roth
14:32 Revision b7e4d9fc: [BUGFIX] Use native "recordTitle" for FormEngine title
The PHP8 incompatible FormEngineUtility::databaseRowCompatibility()
is not needed since TYPO3 v7 LTS, as the TcaRecor...
Benni Mack
13:57 Revision e0a47f74: [TASK] Render TS and pageTS snippets with CodeMirror
The TypoScript parser has a built in syntax hightlighter.
This is used by ext:tstemplate template analyzer and a sub
...
Christian Kuhn
11:48 Revision 4bf76405: [BUGFIX] Include TYPO3 version in PageRenderer requireJS cacheIdentifier
Invalidate PageRenderer requireJS caches during TYPO3 updates,
otherwise a stale config and cache busting parameter i...
Benjamin Franzke
11:38 Revision cea30a0d: [BUGFIX] Allow editing and copying of composer proposal
The composer manifest proposal, introduced in #93931,
uses t3editor to display the composer.json content.
The corresp...
Oliver Bartsch
11:25 Revision 3e02b00e: [BUGFIX] Allow editing and copying of composer proposal
The composer manifest proposal, introduced in #93931,
uses t3editor to display the composer.json content.
The corresp...
Oliver Bartsch
10:57 Revision 59509b68: [BUGFIX] Include TYPO3 version in PageRenderer requireJS cacheIdentifier
Invalidate PageRenderer requireJS caches during TYPO3 updates,
otherwise a stale config and cache busting parameter i...
Benjamin Franzke
10:13 Revision e9c3c317: [BUGFIX] Allow copying content from readonly t3editor field
With #94081, a new option was introduced to
set a FormEngine t3editor field to "readOnly",
as it was already possible...
Oliver Bartsch
08:27 Revision 07a16a17: [TASK] Raise typo3/cms-styleguide to 11.2.2
Brings a PHP 8 fix and adaptions to recent core works.
composer req --dev typo3/cms-styleguide:~11.2.2
Change-Id: I...
Christian Kuhn

2021-05-19

15:42 Revision 65f310f6: [BUGFIX] Allow persisting PseudoFileReference via database form finisher
To "encapsulate" resources that were uploaded using a form element, a
new PseudoFileReference class was introduced in...
Oliver Hader
15:42 Revision 30410da8: [RELEASE] styleguide: 11.2.2 Adaption to v11 features
Christian Kuhn
15:37 Revision 1546bfc0: [TASK] styleguide: package-lock.json to .gitignore
Christian Kuhn
15:36 Revision f5fbf07d: [TASK] styleguide: grunt ~1.3.0
Christian Kuhn
15:28 Revision 57f0110e: [TASK] styleguide: Drop some example fields that did not make it to core
Christian Kuhn
15:10 Revision 7e59a389: [BUGFIX] Restore FormEngine field label and description margins
Since #93519, the form-control-wrap class did not longer
define any margin-top. Therefore TCA field descriptions
were...
Oliver Bartsch
14:43 Revision 55b85a38: [BUGFIX] Fix HTTP_HOST verification when HTTPS is proxied to HTTP
The HTTP_HOST verification failed if the proxy server port was
different to the local webserver port, due to an assum...
Benjamin Franzke
14:38 Revision 0c6590a1: [TASK] Improve input fields in the authentication step of MFA
The input fields for entering the one-time password in
the authentication views of TOTP and recovery codes
are improv...
Oliver Bartsch
14:27 Revision 2da5fed0: [BUGFIX] Fix HTTP_HOST verification when HTTPS is proxied to HTTP
The HTTP_HOST verification failed if the proxy server port was
different to the local webserver port, due to an assum...
Benjamin Franzke
14:20 Revision 1afed573: [FEATURE] Add support of readOnly in t3editor
This allows to disable editing of text in FormEngine
t3editor, while syntax highlighting is still applied.
ext:style...
Christian Kuhn
14:16 Revision 1cfbf51a: [TASK] Streamline spinner web component size and animation
This change performs the following optimizations:
* Detach spinner from content flow using a relative+absolute
pos...
Benjamin Franzke
10:40 Revision bce4af7c: [TASK] increase z-index of extbase-debugger
increase z-index for extbase-debugger to from 999 to 99990 (same as the
admin-panel) to prevent the debug output to b...
Johannes Seipelt
09:25 Revision cc6329b5: [BUGFIX] Fix phpstan errors from TypesAssignedToPropertiesRule
* EXT: backend
* EXT: belog
* EXT: beuser
In addition an adjustment is added that was forgotten in
https://review.ty...
Daniel Goerz
09:02 Revision 1181b126: [BUGFIX] Do not break list module due to TypeError
The given condition should check if two fields are configured within
TCA.
Both fields are required in order to query ...
Daniel Siepmann
06:45 Revision aac29ad6: [BUGFIX] Allow persisting PseudoFileReference via database form finisher
To "encapsulate" resources that were uploaded using a form element, a
new PseudoFileReference class was introduced in...
Oliver Hader

2021-05-18

19:43 Revision f0f8ab76: [BUGFIX] Allow persisting PseudoFileReference via database form finisher
To "encapsulate" resources that were uploaded using a form element, a
new PseudoFileReference class was introduced in...
Oliver Hader
09:40 Revision d978d4e4: [BUGFIX] Ensure throwStatus in Extbase stops the execution workflow
Extbase's throwStatus() method is mentioned that
the execution workflow indeed should be stopped
right away, but neve...
Benni Mack
08:54 Revision 9560e0a6: [FEATURE] Possibility to refresh dashboard widgets
For some widgets it makes sense for users to be able to refresh the widget
without reloading the complete dashboard. ...
Richard Haeser
08:44 Revision c43fa05c: [FEATURE] Show creation date of redirects
To improve the usability of the "Redirects hit count"
feature, the creation date is now also shown in the
"Statistics...
Oliver Bartsch

2021-05-17

21:03 Revision 0b41b5a9: [TASK] Streamline routing related phpDoc comments & annotations
Resolves: #94148
Releases: master, 10.4, 9.5
Change-Id: If1378f2d471f18099b55b05a84dc81adc247bc69
Reviewed-on: https:...
Oliver Hader
21:02 Revision 3cf15c59: [TASK] Streamline routing related phpDoc comments & annotations
Resolves: #94148
Releases: master, 10.4, 9.5
Change-Id: If1378f2d471f18099b55b05a84dc81adc247bc69
Reviewed-on: https:...
Oliver Hader
21:02 Revision 894ec08f: [TASK] Streamline routing related phpDoc comments & annotations
Resolves: #94148
Releases: master, 10.4, 9.5
Change-Id: If1378f2d471f18099b55b05a84dc81adc247bc69
Reviewed-on: https:...
Oliver Hader
18:59 Revision 3b0fffbf: [BUGFIX] Fix Drag+Drop in Page Module in Workspaces
When using Drag+Drop in Page Module a different
functionality is used than using Clipboard (Move+Paste)
while moving ...
Benni Mack
14:39 Revision c1be5540: [BUGFIX] Fix Drag+Drop in Page Module in Workspaces
When using Drag+Drop in Page Module a different
functionality is used than using Clipboard (Move+Paste)
while moving ...
Benni Mack
13:05 Revision 73d836c0: [BUGFIX] Fix description list in distribution detail view
This fixes display issues of the description list in
the distribution detail view, which were introduced
with the boo...
Thomas Löffler
11:10 Revision 7cda0782: [TASK] Initialize Install Tool layout without inline JavaScript
Pass startup module and bust parameter as data tags
to avoid inline javascript initialization.
Resolves: #94136
Rele...
Benjamin Franzke
07:26 Revision 023864e3: [BUGFIX] Correct return type for FileReference methods
The @return annotation for the following FileReference methods is set
to "string", but these methods can also return ...
Chris Müller

2021-05-14

14:28 Revision b50d8a7f: [TASK] Update Bootstrap to 5.0.1
Executed command:
yarn add "bootstrap@^5.0.1"
Also, some minor coding issues were solved that popped up
with the ...
Andreas Fernandez
13:58 Revision 169eb06e: [BUGFIX] Resolve PHP 8 issues in acceptance tests
PHP 8 promotes a lot of notices (previously ignored) to warnings.
That means they can no longer be ignored.
Resolves...
Larry Garfield
13:37 Revision 268aa62d: [TASK] Switch behavior of ArrayUtility::arrayDiffAssocRecursive()
Despite its name, the method `ArrayUtility::arrayDiffAssocRecursive()`
mimics the behavior of `array_diff_key()` and ...
Andreas Fernandez
12:51 Revision 29ec4f38: [TASK] Switch behavior of ArrayUtility::arrayDiffAssocRecursive()
Despite its name, the method `ArrayUtility::arrayDiffAssocRecursive()`
mimics the behavior of `array_diff_key()` and ...
Andreas Fernandez
11:49 Revision cf162bf0: [BUGFIX] Make label clickable in "Dependencies could not be resolved" dialog
Resolves: #94139
Releases: master
Change-Id: I645c03ae9ddb411dae7ef6b55a8e3fde479785c0
Reviewed-on: https://review.ty...
Andreas Fernandez
10:14 Revision 71aebd5f: [BUGFIX] Respect icon size defined by tree
The SVG Tree now builds a SVG-in-SVG element around all
icons (icon + overlay) to ensure the sizes are consistent
and...
Benni Mack

2021-05-13

22:46 Revision 31f5cc7d: [BUGFIX] Fix Typo3DbQueryParserTest for custom php timezones
The test setup used to initialize the DateAspect from a string,
that means the local php timezone has been taken into...
Benjamin Franzke
22:46 Revision 5b672dc5: [BUGFIX] Fix Typo3DbQueryParserTest for custom php timezones
The test setup used to initialize the DateAspect from a string,
that means the local php timezone has been taken into...
Benjamin Franzke
22:15 Revision 06d5edd6: [BUGFIX] Fix Typo3DbQueryParserTest for custom php timezones
The test setup used to initialize the DateAspect from a string,
that means the local php timezone has been taken into...
Benjamin Franzke
10:26 Revision fe1f18ff: [TASK] Migrate SiteInlineActions to TypeScript
Resolves: #94133
Releases: master
Change-Id: I2101f3acc5c32c45efa3a8330bb7b6aa1d9716ce
Reviewed-on: https://review.ty...
Oliver Bartsch
10:14 Revision a5e131c0: [TASK] Implement ValuePicker as custom web component
TCA's value picker uses a lot inline JavaScript for its
picker handling, therefore, the handling has been moved
into ...
Andreas Fernandez

2021-05-12

18:06 Revision 14e0c88f: [BUGFIX] Ensure UriBuilder always contains a cObj
When UriBuilder is used outside of an initialized ExtbaseAction
and not within StandaloneView, the cObj is not proper...
Benni Mack
16:43 Revision b5eab03e: [BUGFIX] Ensure UriBuilder always contains a cObj
When UriBuilder is used outside of an initialized ExtbaseAction
and not within StandaloneView, the cObj is not proper...
Benni Mack
13:58 Revision 96e43f7c: [BUGFIX] Harden RootlineUtility::enrichWithRelationFields
In some rare cases (e.g., for some Console commands),
RootlineUtility::enrichWithRelationFields might be run without
...
Oliver Klee
13:38 Revision 01a7fe12: [BUGFIX] Harden RootlineUtility::enrichWithRelationFields
In some rare cases (e.g., for some Console commands),
RootlineUtility::enrichWithRelationFields might be run without
...
Oliver Klee
13:14 Revision 2f940fd5: [TASK] Remove objectManager from various Extbase places
This change adapts certain areas within EXT:extbase
Persistence to avoid ObjectManager and rely on constructor
DI and...
Benni Mack
12:03 Revision ca75ff4b: [BUGFIX] Fix phpstan errors from TypesAssignedToPropertiesRule
in
* EXT:workspaces
* EXT:tstemplate
* EXT:setup
* EXT:scheduler
* EXT:recycler
* EXT:lowlevel
* EXT:linkvalidator
*...
Alexander Schnitzler
10:03 Revision b5249bed: [TASK] Remove Extbase's BackendRequestHandler
This change removes the internal BackendRequestHandler
of Extbase as TYPO3 Backend modules are now dispatched
directl...
Benni Mack
07:17 Revision a40fd16e: [BUGFIX] Avoid SQL error for scheduler task on PostgreSQL
This patch makes sure tx_scheduler_task.task_group contains an integer
in order to avoid a SQL error when saving the ...
Stephan Großberndt
04:02 Revision bd0b2929: [TASK] Only persist on POST requests in EditDocumentController
This change ensures that writing to EditDocumentController
only happens for POST requests, as EditDocumentController
...
Benni Mack

2021-05-11

21:01 Revision 712e8fea: [BUGFIX] Fix InputLinkElement to be visible again
Since the bootstrap v5 update, the inputLinkElement is styled with flex
form instead of display table. This became a ...
Nikita Hovratov
20:18 Revision 7ccc93c1: [TASK] Dashboard: Adjust toolbar items look
Use the standard layout for toolbar items to make recurring elements
look the same in the various core modules.
Reso...
Daniel Windloff
20:16 Revision 65270f2e: [BUGFIX] Normalize slug before converting Unicode characters to ascii
This change adds a normalization for slug source before converting it
to ascii. This helps to avoid issues with vario...
Dmitry Dulepov
20:11 Revision 69df2514: [BUGFIX] Allow to disable allowed aspect ratios
When overriding aspect ratios via TCA overrides,
one can also now disable allowed aspect ratios in cropVariants.
Res...
Daniel Dorndorf
20:02 Revision 59289da4: [BUGFIX] Normalize slug before converting Unicode characters to ascii
This change adds a normalization for slug source before converting it
to ascii. This helps to avoid issues with vario...
Dmitry Dulepov
19:56 Revision def9a820: [BUGFIX] Allow to disable allowed aspect ratios
When overriding aspect ratios via TCA overrides,
one can also now disable allowed aspect ratios in cropVariants.
Res...
Daniel Dorndorf
19:23 Revision 8d09feb7: [FEATURE] Add Shona (sn) as supported language
Shona is a Bantu language of the Shona people of Zimbabwe.
It is one of the most widely spoken Bantu languages.
Also...
Benni Mack
19:19 Revision d36ca4ca: [BUGFIX] Log DataHandler errors instead of FlashMessage
DataHandler should log instead of creating FlashMessages
since FlashMessages fail in CLI context. Method
->printLogEr...
Benni Mack
19:17 Revision 517c2a4d: [BUGFIX] Only return translation count message for a non-zero count
With #93979, `BackendUtility::translationCount()` was changed and always
returned the message "This record has X tran...
Andreas Fernandez
18:49 Revision 6602e0ed: [BUGFIX] Avoid SQL error for scheduler task on PostgreSQL
This patch makes sure tx_scheduler_task.task_group contains an integer
in order to avoid a SQL error when saving the ...
Stephan Großberndt
18:36 Revision 236f81a1: [BUGFIX] Delay error handler registration
The ErrorHandler is not be fully configured (missing logger) by the
time the object is constructed, but the error han...
Benjamin Franzke
18:33 Revision 3694b33e: [BUGFIX] Delay error handler registration
The ErrorHandler is not be fully configured (missing logger) by the
time the object is constructed, but the error han...
Benjamin Franzke
18:21 Revision 75890120: [BUGFIX] Use forgot message from FlexForm
The password recovery page was not displaying custom messages from the
plugin FlexForm. This is fixed by using the Re...
Mathias Bolt Lesniak
18:20 Revision 6e50012c: [TASK] Streamline backend UriBuilder dependency injection
The Router dependency should not be optional and rather always be
injected, and in reality it always was, as the null...
Benjamin Franzke
18:16 Revision fb25eb33: [BUGFIX] Delay error handler registration
The ErrorHandler is not be fully configured (missing logger) by the
time the object is constructed, but the error han...
Benjamin Franzke
18:09 Revision 31ac96e4: [BUGFIX] ElementInformationController: Always show records meta info
Use the TCA to get the field names of the meta info.
Add the folder name as a title, if folder information are shown....
Daniel Windloff
18:05 Revision ba4afdfa: [BUGFIX] Use forgot message from FlexForm
The password recovery page was not displaying custom messages from the
plugin FlexForm. This is fixed by using the Re...
Mathias Bolt Lesniak
17:55 Revision c1423eda: [BUGFIX] ElementInformationController: Always show records meta info
Use the TCA to get the field names of the meta info.
Add the folder name as a title, if folder information are shown....
Daniel Windloff
16:57 Revision 364649aa: [TASK] Align configuration module search bar
As a follow up of #94042, the search bar in
the configuration module is now also aligned
with the rest of the backend...
Oliver Bartsch
16:50 Revision ec24a03d: [BUGFIX] Call `TBE_EDITOR.fieldChanged()` again
With #93975 the calls to `TBE_EDITOR.fieldChanged()` as onchange handlers
have been removed which was an accidental b...
Andreas Fernandez
13:03 Revision 8d6f3f6f: [TASK] Update to Lit v2-rc2
Executed commands:
cd Build/
yarn upgrade lit@^2.0.0-rc.2 lit-html@^2.0.0-rc.3 lit-element@^3.0.0-rc.2
grunt roll...
Benjamin Franzke
12:30 Revision 70ec97d8: [TASK] Avoid ObjectManager->get() in EXT:backend
Resolves: #94107
Related: #90803
Releases: master
Change-Id: Iccb0eab82275feb250180ae6674c5b9d2a176fd4
Reviewed-on: h...
Oliver Bartsch
10:02 Revision 13aa4320: [TASK] Set TYPO3 version to 9.5.28-dev
Change-Id: If9f47532a98f9681d26deb276a89d9c6a7da09eb
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/691...
Benni Mack
10:00 Revision c0297cb9: [TASK] Set TYPO3 version to 10.4.17-dev
Change-Id: I7832399a163411f5cdc60eb3b811a4692516cbe7
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/691...
Benni Mack
09:44 Revision c4ea833b: [RELEASE] Release of TYPO3 9.5.27
Change-Id: I7147fc137eb3df320e6e4f68ec13a98abbc02e70
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/691...
Benni Mack
09:32 Revision 437d88b5: [RELEASE] Release of TYPO3 10.4.16
Change-Id: I785f92e1069703d3008d4b940ff671b5806cf66a
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/691...
Benni Mack
09:13 Revision 56f9da97: [BUGFIX] Fix row highlighting in extension listing
Since the extension listing makes use of the
bootstrap "Zebra-striping", highlighting of
rows, e.g. when being insecu...
Oliver Bartsch

2021-05-10

19:27 Revision eda84c1a: [BUGFIX] Keep unmapped ?type parameter when using PageTypeDecorator
This change keeps the type parameter (e.g. ?type=13) even
if PageTypeDecorator is used when building URLs but "13" is...
Benni Mack
15:31 Revision e7811882: [BUGFIX] Keep unmapped ?type parameter when using PageTypeDecorator
This change keeps the type parameter (e.g. ?type=13) even
if PageTypeDecorator is used when building URLs but "13" is...
Benni Mack
14:56 Revision 2625d6b4: [BUGFIX] Keep unmapped ?type parameter when using PageTypeDecorator
This change keeps the type parameter (e.g. ?type=13) even
if PageTypeDecorator is used when building URLs but "13" is...
Benni Mack
13:56 Revision 6c99d1ad: [TASK] Remove unused key "name" in TBE_STYLES
There is no usage of the key "name" in
$GLOBALS['TBE_STYLES']['skins']['backend'].
Even in earlier versions of TYPO3...
Nikita Hovratov
13:15 Revision 7d9aa758: [BUGFIX] Do not render unassigned label in info module
Since #94042, the Localization overview in the
info module is equipped with proper labels. These
labels should howeve...
Oliver Bartsch
13:10 Revision d3830985: [BUGFIX] Do not override disabled user settings
When the realName or email field of a user is disabled
by TSconfig, the current values will remain when saving.
Reso...
Alexander Stehlik
12:42 Revision 2593f5e3: [BUGFIX] Do not override disabled user settings
When the realName or email field of a user is disabled
by TSconfig, the current values will remain when saving.
Reso...
Alexander Stehlik
11:22 Revision f9753264: [DOCS] Reference to function for better usage does not exist
Function getScriptPath is not implemented. PHPDoc block of function
getPathInfo points to getScriptName.
Resolves: #...
Marc Bastian Heinrichs
10:48 Revision 06d1e468: [DOCS] Reference to function for better usage does not exist
Function getScriptPath is not implemented. PHPDoc block of function
getPathInfo points to getScriptName.
Resolves: #...
Marc Bastian Heinrichs
10:35 Revision 4e459ff8: [DOCS] Reference to function for better usage does not exist
Function getScriptPath is not implemented. PHPDoc block of function
getPathInfo points to getScriptName.
Resolves: #...
Marc Bastian Heinrichs
09:41 Revision 1bf66b3d: [TASK] Activate AppendedArrayItemTypeRule phpstan rule
Releases: master
Resolves: #94073
Change-Id: I2a17bfd5d9cf4fce0915e466dd48e266dc6485b7
Reviewed-on: https://review.ty...
Alexander Schnitzler

2021-05-08

10:04 Revision 06455d8e: [TASK] Reduce ObjectManager usages within ConfigurationManager
This change removes any objectManager usages within Configuration
Manager.
Resolves: #94093
Releases: master
Change-...
Benni Mack

2021-05-07

20:14 Revision 3456ae0a: [TASK] Remove usages of call_user_func() and call_user_func_array()
Using direct calls and variadics is slightly faster, and usually cleaner to read.
I left in the instant-call call_us...
Larry Garfield
13:58 Revision 9fd59c58: [TASK] Update to Twitter Bootstrap 5.0.0
This change updates the Twitter Bootstrap
dependency to version 5.0.0
See https://blog.getbootstrap.com/2021/05/05/b...
Benjamin Franzke
 

Also available in: Atom