Skip to content
Snippets Groups Projects
  1. Apr 28, 2024
    • Chris Müller's avatar
      [DOCS] Fix typo in changelog to TypoScript provider for sites and sets · 9ff2b1b0
      Chris Müller authored
      Resolves: #103755
      Related: #103675
      Releases: main
      Change-Id: Ic94dc6bbff56f09233fec1b7cda42091d07dad2f
      Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/84077
      
      
      Tested-by: default avatarStefan Bürk <stefan@buerk.tech>
      Reviewed-by: default avatarStefan Bürk <stefan@buerk.tech>
      Tested-by: default avatarcore-ci <typo3@b13.com>
      9ff2b1b0
    • Andreas Kienast's avatar
      [BUGFIX] Migrate Bootstrap progress bars to bootstrap 5.3 · 9fafcec2
      Andreas Kienast authored
      With the update of Bootstrap to v5.3, the implementation of progress
      bars has changed for accessibility reasons [1].
      
      This commit updates all usages of progress bars to the new markup.
      
      [1] https://getbootstrap.com/docs/5.3/migration/#progress-bars
      
      Resolves: #103718
      Releases: main, 12.4
      Change-Id: I208e3561b4943e382caa09e23e75d350bd702a6a
      Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/84014
      
      
      Tested-by: default avatarBenjamin Franzke <ben@bnf.dev>
      Tested-by: default avatarAndreas Kienast <a.fernandez@scripting-base.de>
      Reviewed-by: default avatarBenjamin Franzke <ben@bnf.dev>
      Tested-by: default avatarAndreas Nedbal <andy@pixelde.su>
      Reviewed-by: default avatarAndreas Kienast <a.fernandez@scripting-base.de>
      Tested-by: default avatarcore-ci <typo3@b13.com>
      Reviewed-by: default avatarAndreas Nedbal <andy@pixelde.su>
      9fafcec2
    • Torben Hansen's avatar
      [TASK] Remove Flow framework related todos in Extbase · d47e7559
      Torben Hansen authored
      3 todos in Extbase refer to aligning classes or functionality
      closer to the Flow framework. Those todos have been added
      11 years ago with #47251.
      
      Since there are no plans to align Extbase closer to the Flow
      Framework functionality, the todos can safely be removed.
      
      Resolves: #103753
      Releases: main
      Change-Id: I9e81c0f3c27a4e690587f7f6a50a21376ba8ca2e
      Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/84076
      
      
      Reviewed-by: default avatarNikita Hovratov <nikita.h@live.de>
      Tested-by: default avatarNikita Hovratov <nikita.h@live.de>
      Tested-by: default avatarcore-ci <typo3@b13.com>
      Tested-by: default avatarOliver Klee <typo3-coding@oliverklee.de>
      Reviewed-by: default avatarOliver Klee <typo3-coding@oliverklee.de>
      d47e7559
    • Christian Kuhn's avatar
      [TASK] Enrich ReferenceIndex with more relation data · 28aac3c6
      Christian Kuhn authored
      ReferenceIndex (table sys_refindex) has two main jobs:
      * It registers "soft" relations, for instance when a
        bodytext sets a link in its text string. Similar things
        are done for relations in anonymous flex form strings.
      * It is a registry of DB relations attached to TCA based
        table records.
      
      This patch is about the DB relation part of refindex.
      
      When a TCA record needs to know all its database relations
      attached to it, it can either ask the (clumsy)
      RelationHandler for relations of each field, which then
      queries the foreign table for relations, OR it could ask
      the refindex for all relations with a single query. It
      is possible to do this for multiple records in one query.
      
      Refindex has significant test coverage within DataHandler:
      With over a thousand functional tests validating the
      refindex, we can be confident in the accuracy of the
      functionality. This coverage has been in place and
      continuously improved since TYPO3 v11.
      
      This de-normalized nature of having a single table that
      tracks all TCA DB relations of all TCA tables is a powerful
      structure that allows us to query relations in a performant
      way. This is currently only leveraged in a couple of places
      in the backend, though.
      
      Integrating refindex within the frontend is promising to
      alleviate the query load on not-yet-cached pages, though:
      There are various places that tend to hammer the database
      with hundreds or thousand of queries to look up relations,
      RootlineUtility in particular is very demanding.
      
      Refindex however does not carry relation details important
      in the frontend: It does not know about hidden, starttime
      and endtime restrictions applied to single relations.
      
      The patch changes this by adding a series of columns to
      sys_refindex, and adapts class ReferenceIndex to take care
      of them.
      
      Adding fields to sys_refindex has one drawback:
      Primary key 'hash' is a hash of all columns. Adding
      columns invalidates all existing hashes, refindex needs
      to be rebuild. This is why the patch is so huge: All tests
      checking refindex integrity need new rows. It also means
      instances need to update refindex. The patch dedicates
      an Important.rst to this.
      
      With forcing a full re-index for everyone, the patch takes
      the opportunity to use xxh128 over md5 for the hash, which
      is a significantly quicker hash algorithm with good
      collision protection, and with the same length of 128
      bit (128 bit = 16 bytes = 16 hex numbers = 32 chars).
      
      The patch also adds more fine grained table column and
      index definitions: Two changed indexes are designed to help
      queries having the typical query signature, and queries can
      be crafted to use large parts of the combined indexes.
      
      Another detail is that 'endtime' defaults to a high value:
      When a casual endtime-aware TCA record has no endtime set,
      it's column value is 0. This requires an OR in the query.
      refindex de-normalizes this to a high value instead, to
      always query rows with a "greater than now" where clause.
      
      The patch reveals a bug within MM when resorting rows. A
      single functional test is disabled for now. The situation
      will be fixed with another patch.
      
      sys_refindex contains columns for the "left" / "local" side,
      and columns for the "right" / "foreign" side. Foreign side
      columns are prefixed with "ref_". A quick rundown of
      sys_refindex table columns:
      
      hash:
      primaray key, xxh128 hash of the other column values
      
      tablename & ref_table:
      names of the involved tables. tablename is "_STRING" when
      dealing with a softref row.
      
      recuid & ref_uid:
      uids of the involved table rows.
      
      field & (new)ref_field:
      names of the involved table fields.
      
      sorting & ref_sorting:
      keep relations in a deterministic order.
      
      (new)hidden & (new)ref_hidden:
      int '1' if the table is TCA hidden aware and the row is hidden.
      
      (new)starttime & (new)ref_starttime:
      starttime timestamp of the row if the table is TCA starttime
      aware and a value is set, else '0'.
      
      (new)endtime & (new)ref_endtime:
      endtime timestamp of the row if the table is TCA endtime aware
      and a value is set, else 2^31-1 (year 2038) since postgres 32-bit
      int is always signed. Could be extended later.
      
      workspace:
      calculated workspace-uid this refindex row is relevant in. With
      MM relations, there can be rows with workspace-uid 0 on one side
      and workspace-uid 1 on the other side, with the sys_refindex
      row being valid for workspace-uid 1.
      
      (new)t3ver_state & (new)ref_t3ver_state:
      workspace versionState value of the table row, default int 0.
      Used to filter especially deleted placeholder rows (int 2).
      
      flexpointer, softref_key, softref_id, ref_string:
      softref and flex form path details fields.
      
      Resolves: #103748
      Related: #103735
      Related: #103680
      Related: #103655
      Releases: main
      Change-Id: I276eef06da4bbe5bd51d90fc850e27ebe6ff2130
      Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/84050
      
      
      Tested-by: default avatarChristian Kuhn <lolli@schwarzbu.ch>
      Reviewed-by: default avatarAnja Leichsenring <aleichsenring@ab-softlab.de>
      Tested-by: default avatarAnja Leichsenring <aleichsenring@ab-softlab.de>
      Tested-by: default avatarStefan Bürk <stefan@buerk.tech>
      Reviewed-by: default avatarStefan Bürk <stefan@buerk.tech>
      Tested-by: default avatarcore-ci <typo3@b13.com>
      Reviewed-by: default avatarChristian Kuhn <lolli@schwarzbu.ch>
      28aac3c6
  2. Apr 27, 2024
  3. Apr 26, 2024
  4. Apr 25, 2024
  5. Apr 24, 2024
  6. Apr 23, 2024