1. 17 Jun, 2022 1 commit
  2. 07 Jun, 2022 1 commit
  3. 02 Feb, 2022 1 commit
  4. 18 Jan, 2022 1 commit
    • Stefan Bürk's avatar
      [TASK] Use proper QueryBuilder execute() replacement methods · 597a92fd
      Stefan Bürk authored and Benni Mack's avatar Benni Mack committed
      doctrine/dbal implemented single purpose method to replace the
      compound 'execute()' in QueryBuilder to avoid the incompatible
      return typehint tuple of 'Doctrine\DBAL\Result|int' in favour
      of 'executeQuery()' and 'executeStatement()' which was added
      forward-compatible with #96247 marking the old one internal
      but not deprecated for now to keep a eventually longer grace
      period to mitigate for extensions developers.
      
      This patch however goes through the core and replace these
      methods to be clean as possible and is a first preparation
      to remove the 'checkThisOnly' option from phpstan which are
      swallowed by this option.
      
      * replace 'execute' with 'executeQuery()' for select and
        count queries generating results ('Doctrine\DBAL\Result').
      * use 'executeStatement()' for insert, update and delete
        queries return affected rows as return value (int)
      * adjust return typehints to match the single return type
        signature on really minor places to match the return type
        of the wrapped replaced execute method.
      * replace one really old 'exec()' from connection with
        corresponding replacement method along the way.
      * add several todos on two places which are weird and do
        not make any sense for further investigation and fixing,
        as declared as out-of-the-scope for this wide-area patch.
      
      Resolves: #96551
      Related: #96247
      Related: #96521
      Releases: main, 11.5
      Change-Id: Ie8d40f3882f1694ab7f7e5053729fa1c798a9c5f
      Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/73032
      
      
      Tested-by: Christian Kuhn's avatarChristian Kuhn <lolli@schwarzbu.ch>
      Tested-by: core-ci's avatarcore-ci <typo3@b13.com>
      Tested-by: Benni Mack's avatarBenni Mack <benni@typo3.org>
      Reviewed-by: Christian Kuhn's avatarChristian Kuhn <lolli@schwarzbu.ch>
      Reviewed-by: Benni Mack's avatarBenni Mack <benni@typo3.org>
      597a92fd
  5. 02 Dec, 2021 1 commit
  6. 24 Sep, 2021 1 commit
  7. 09 Sep, 2021 1 commit
  8. 03 Sep, 2021 1 commit
  9. 02 Aug, 2021 1 commit
    • Oliver Bartsch's avatar
      [FEATURE] Introduce TCA type "category" · 1e7653ce
      Oliver Bartsch authored and Benni Mack's avatar Benni Mack committed
      A new TCA type "category" is introduced, which
      allows to simplify the configuration of category
      TCA columns. Besides the benefit for integrators,
      this allows to deprecate the CategoryRegistry
      in the next step.
      
      The new type can also be used for other use cases.
      Therefore, the TCA option "relationship" is available
      for this TCA type. Besides "manyToMany" (default), this
      can also be set to "oneToOne" or "oneToMany".
      
      Using the new type, FormEngine will always render a
      category tree. This means, no additional `renderType`
      is defined. In such case, TCA type "select" can
      still be used as before, without any limitation. However,
      all relevant places in core are adjusted in this patch.
      
      The category element is rendered through a custom element
      (web component), reducing inline javascript.
      
      Resolves: #94622
      Releases: master
      Change-Id: I1b95c42288b070fa6bac114266f5ad246a045b21
      Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/69899
      
      
      Tested-by: core-ci's avatarcore-ci <typo3@b13.com>
      Tested-by: Christian Kuhn's avatarChristian Kuhn <lolli@schwarzbu.ch>
      Tested-by: Benni Mack's avatarBenni Mack <benni@typo3.org>
      Reviewed-by: Christian Kuhn's avatarChristian Kuhn <lolli@schwarzbu.ch>
      Reviewed-by: Benni Mack's avatarBenni Mack <benni@typo3.org>
      1e7653ce
  10. 29 Jul, 2021 1 commit
  11. 28 Jul, 2021 1 commit
  12. 27 May, 2021 1 commit
  13. 14 May, 2021 1 commit
  14. 18 Sep, 2020 1 commit
  15. 29 May, 2020 1 commit
  16. 16 Apr, 2020 1 commit
  17. 15 Apr, 2020 1 commit
  18. 14 Apr, 2020 1 commit
  19. 22 Nov, 2019 1 commit
    • Benni Mack's avatar
      [FEATURE] Migrate various Signal Slots to PSR-14 events · b9d67bc7
      Benni Mack authored and Daniel Goerz's avatar Daniel Goerz committed
      This change migrates existing Extbase Signal Slots in EXT:core
      to the new PSR-14 events, which allow to define a proper API
      for each event fired.
      
      The following new Events are in place:
      - TYPO3\CMS\Core\Imaging\Event\ModifyIconForResourcePropertiesEvent
      - TYPO3\CMS\Core\DataHandling\Event\IsTableExcludedFromReferenceIndexEvent
      - TYPO3\CMS\Core\DataHandling\Event\AppendLinkHandlerElementsEvent
      - TYPO3\CMS\Core\Configuration\Event\AfterTcaCompilationEvent
      - TYPO3\CMS\Core\Database\Event\AlterTableDefinitionStatementsEvent
      - TYPO3\CMS\Core\Tree\Event\ModifyTreeDataEvent
      
      The following signals are now deprecated:
      - TYPO3\CMS\Core\Imaging\IconFactory::buildIconForResourceSignal
      - TYPO3\CMS\Core\Database\SoftReferenceIndex::setTypoLinkPartsElement
      - TYPO3\CMS\Core\Database\ReferenceIndex::shouldExcludeTableFromReferenceIndex
      - TYPO3\CMS\Core\Utility\ExtensionManagementUtility::tcaIsBeingBuilt
      - TYPO3\CMS\Install\Service\SqlExpectedSchemaService::tablesDefinitionIsBeingBuilt
      - TYPO3\CMS\Core\Tree\TableConfiguration\DatabaseTreeDataProvider::PostProcessTreeData
      
      Resolves: #89733
      Releases: master
      Change-Id: I0747c1de3b77a6be2870d87a054522a7df2fdb18
      Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/62331
      
      
      Tested-by: default avatarTYPO3com <noreply@typo3.com>
      Tested-by: Susanne Moog's avatarSusanne Moog <look@susi.dev>
      Tested-by: Daniel Goerz's avatarDaniel Goerz <daniel.goerz@posteo.de>
      Reviewed-by: Susanne Moog's avatarSusanne Moog <look@susi.dev>
      Reviewed-by: Daniel Goerz's avatarDaniel Goerz <daniel.goerz@posteo.de>
      b9d67bc7
  20. 07 Oct, 2019 1 commit
  21. 01 Feb, 2019 1 commit
  22. 03 Sep, 2018 1 commit
  23. 02 Sep, 2018 1 commit
  24. 27 Nov, 2017 2 commits
  25. 05 May, 2017 1 commit
  26. 28 Mar, 2017 1 commit
    • Wouter Wolters's avatar
      [TASK] Streamline return tags in phpdocs · eb049dba
      Wouter Wolters authored and Benni Mack's avatar Benni Mack committed
      The TYPO3 Core currently has no guidline how to handle phpdoc
      comments regarding @return annoations related to "void" and "null".
      
      In practice, these annotations have no additional value if no additional
      documentation is given.
      
      With this change, the php-cs-fixer will remove any unnecessary linebreaks
      within the comments above the @return annotation, as well as remove completely
      empty phpdoc comments because the @return annotation is removed.
      
      Please be aware, that once PSR-5 is accepted, this coding standard
      within the TYPO3 Core will change again, where there are currently
      some further proposal details like inheritance information.
      
      Resolves: #80454
      Releases: master
      Change-Id: Ie969d720684c0a75919fe5addd1c36ef5b12eb04
      Reviewed-on: https://review.typo3.org/51686
      
      
      Reviewed-by: Nicole Cordes's avatarNicole Cordes <typo3@cordes.co>
      Tested-by: Nicole Cordes's avatarNicole Cordes <typo3@cordes.co>
      Reviewed-by: Benni Mack's avatarBenni Mack <benni@typo3.org>
      Tested-by: Benni Mack's avatarBenni Mack <benni@typo3.org>
      eb049dba
  27. 20 Feb, 2017 1 commit
  28. 26 Oct, 2016 1 commit
  29. 30 Aug, 2016 2 commits
  30. 23 Aug, 2016 1 commit
    • Tymoteusz Motylewski's avatar
      [FEATURE] Refactor category tree to SVG · 4aa12a3a
      Tymoteusz Motylewski authored and Georg Ringer's avatar Georg Ringer committed
      Replace ExtJS category tree implementation with SVG based one.
      
      Current approach reuses as much of the category logic as possible
      (e.g. ExtJsJsonTreeRenderer)
      
      The SVG tree js component is added as requirejs module.
      Standalone version of the js component lives here:
      https://github.com/wmdbsystems/TYPO3.Tree
      
      Done:
      - virtual scrolling (we render only the number of nodes
        which fits the current viewport) so there are minor workarounds in place
      - displaying of the category tree in category record (including checked checkbox)
      - a new ajax controller is added which returns full tree as json
      - icons are displayed
      - searching/filtering through tree
      - collapse all and expand all buttons
      - toolbar (search, expand all, collapse all)
      - indeterminate state for checkboxes (parent is marked if child is selected)
      - selection saving in the record
      - maxItems handling
      - new svgTree is used in all records (pages, tt_content, categories, ...)
      - TCA settings: 'expandAll', 'showHeader', 'size', 'maxLevels'
        'nonSelectableLevels', 'requestUpdate', 'exclusiveKeys'
      - toolbar tooltips and input placehoder
      - replace collapse-all and expand-all icons with new ones from T3.icons
      - remove extjs JS file (tree.js)
      - readonly mode (it's possible to navigate the tree (scroll,collapse,expand,etc),
       before it was not possible)
      - marking record “red” if validation fails
      - icon overlay handling (for e.g. disabled categories)
      - tooltip with category id
      
      Resolves: #76108
      Resolves: #74126
      Resolves: #65780
      Releases: master
      Change-Id: Ib8d3c879b0b0584ff50cf0f6842bb655f9753ddd
      Reviewed-on: https://review.typo3.org/48060
      
      
      Tested-by: default avatarBamboo TYPO3com <info@typo3.com>
      Reviewed-by: Benni Mack's avatarBenni Mack <benni@typo3.org>
      Tested-by: Benni Mack's avatarBenni Mack <benni@typo3.org>
      Reviewed-by: Wouter Wolters's avatarWouter Wolters <typo3@wouterwolters.nl>
      Tested-by: Wouter Wolters's avatarWouter Wolters <typo3@wouterwolters.nl>
      Reviewed-by: Georg Ringer's avatarGeorg Ringer <georg.ringer@gmail.com>
      Tested-by: Georg Ringer's avatarGeorg Ringer <georg.ringer@gmail.com>
      4aa12a3a
  31. 11 Aug, 2016 1 commit
  32. 20 Apr, 2016 1 commit
  33. 24 Jan, 2016 1 commit
  34. 28 Dec, 2015 1 commit
  35. 08 Oct, 2015 1 commit
  36. 22 Sep, 2015 1 commit
  37. 22 Jul, 2015 1 commit
    • Morton Jonuschat's avatar
      [BUGFIX] dbal: Cast field to CHAR for FIND_IN_SET() · 14f04a6a
      Morton Jonuschat authored and Markus Klein's avatar Markus Klein committed
      Implement explicit casting of fields to a character representation.
      Most DBMS are stricter in regard to data type checking and emit an
      error when trying to use FIND_IN_SET() on non-text field types.
      
      On the DBAL side of things the DBMS specifics are used to define that
      an explicit cast is required for FIND_IN_SET() so that a query including
      the CAST() statement gets generated.
      
      A PostgreSQL Specific has been added to enable the explicit casting in
      conjuction with DBAL. To avoid checking repeatedly if a DBMS has defined
      specific requirements a NullSpecific has been implemented that gets used
      as a default.
      
      In the DatabaseTreeDataProvider the listFieldQuery() function has been
      changed to use an explicit CAST() instead of relying on the implicit
      cast done by MySQL when comparing it to an empty string.
      
      The SqlParser has been extended with the support for CAST().
      
      Resolves: #67155
      Resolves: #67172
      Resolves: #46271
      Releases: master, 6.2
      Change-Id: Ic77d1700e0fb4e3723c90b34e131dafb456038e0
      Reviewed-on: http://review.typo3.org/39779
      
      
      Reviewed-by: Andreas Fernandez's avatarAndreas Fernandez <typo3@scripting-base.de>
      Tested-by: Andreas Fernandez's avatarAndreas Fernandez <typo3@scripting-base.de>
      Reviewed-by: Markus Klein's avatarMarkus Klein <markus.klein@typo3.org>
      Tested-by: Markus Klein's avatarMarkus Klein <markus.klein@typo3.org>
      14f04a6a
  38. 15 Jul, 2015 1 commit