1. 12 Apr, 2021 1 commit
  2. 09 Mar, 2021 1 commit
  3. 20 Jan, 2021 1 commit
  4. 16 Nov, 2020 3 commits
  5. 04 Nov, 2020 1 commit
    • Oliver Bartsch's avatar
      [TASK] Add new field for a list of compatible typo3 versions · fd4ebcdf
      Oliver Bartsch authored
      This adds a new field `compatible_typo3_versions` to the
      `tx_terfe2_domain_model_version` table to provide a list of
      compatible TYPO3 versions for each extension version.
      
      This information is needed in the database to allow simple SQL
      queries, e.g. used for the REST API `GET /extension` endpoint.
      
      The information is automatically added while uploading a new
      extension version. Furthermore, a one time migration symfony
      command is available to add this data to already existing records.
      fd4ebcdf
  6. 02 Nov, 2020 2 commits
    • Oliver Bartsch's avatar
      [TASK] Add new field for a list of compatible typo3 versions · 25200f66
      Oliver Bartsch authored
      This adds a new field `compatible_typo3_versions` to the
      `tx_terfe2_domain_model_version` table to provide a list of
      compatible TYPO3 versions for each extension version.
      
      This information is needed in the database to allow simple SQL
      queries, e.g. used for the REST API `GET /extension` endpoint.
      
      The information is automatically added while uploading a new
      extension version. Furthermore, a one time migration symfony
      command is available to add this data to already existing records.
      25200f66
    • Oliver Bartsch's avatar
      db9d8328
  7. 15 Oct, 2020 7 commits
  8. 10 Sep, 2020 1 commit
  9. 09 Sep, 2020 1 commit
  10. 08 Sep, 2020 1 commit
  11. 17 Aug, 2020 1 commit
  12. 11 Aug, 2020 2 commits
  13. 07 Aug, 2020 6 commits
    • Thomas Löffler's avatar
      fe2c536a
    • Benni Mack's avatar
      [TASK] Migrate get.typo3.org cache file fetching into separate CLI command · b1e3460f
      Benni Mack authored
      The downloading of the current corejson file is happening in an
      outdated scheduler task, which is now needed anymore,
      as all jobs within the task are now handled through a CLI command, the
      latest being added is "ter:fetchCoreVersion".
      
      This way, the original "UpdateCurrentVersionListTask" can be removed,
      and in addition, the actual path of the cache file is now located in
      one single PHP class and encapsulated there.
      b1e3460f
    • Benni Mack's avatar
      [BUGFIX] Fix issues related to merging DB tables · 0bc0449c
      Benni Mack authored
      Two changes are needed since the unification of the database tables
      
      * When an extension version is uploaded or removed, the *_extension table
      needs an update (which was not the case before) with the current version
      information.
      For this reason the "ExtensionKey" API has a "UpdateExtensionInformation"
      method now, and some internal functions are moved to the ExtensionKey class
      
      * When an extension version (or extension) is deleted, Extbase attempted
      to also delete the information (which already happened in the TER)
      
      The SolR Re-Indexing is now placed at a more central point.
      0bc0449c
    • Benni Mack's avatar
      4a2de475
    • Benni Mack's avatar
      [TASK] Add Namespace to SOAP API handler class · c5a15264
      Benni Mack authored
      With the recent changes, the SOAP API is pretty much isolated and only
      called within one place now, so adding a proper PSR-4 namespace
      is finally possible with only a few minor changes.
      c5a15264
    • Benni Mack's avatar
      [TASK] Use Environment API instead of PATH_site · 7a5416f7
      Benni Mack authored
      The constant is dropped in TYPO3 v10, so the new Environment API
      should be used instead.
      
      The main difference is that Environment::getPublicPath() does not
      hold a "/" at the very end.
      7a5416f7
  14. 06 Aug, 2020 2 commits
    • Benni Mack's avatar
    • Benni Mack's avatar
      [!!!][TASK] Remove tx_ter_extensions & queue & importer task · ff3c42b3
      Benni Mack authored
      This change is the final change to remove any database tables
      from "EXT:ter", and remove any migration from TER v1 (SOAP) to
      TER v2 via a scheduler task.
      
      This change removes:
      * tx_ter_extensions (versions of an extension)
      * tx_ter_extensionqueue (+ its UploadQueue API object)
      * ImportExtensionsFromQueueTask (all migrated to ExtensionVersion for now)
      
      All DB rows are written directly into tx_terfe2_domain_model_version and
      its related tables.
      
      The API "ExtensionVersion->upload()" now produces everything necessary
      including notifications (which can be built via PSR-14 in the future).
      
      This also actually means that extensions are automatically available
      RIGHT AWAY after uploading an extension via the GUI or the SOAP API.
      
      Next Steps:
      * Refactor our upload API to make it more resistent and moving into a Event Sourcing concept (thinning out all underlying logic from ExtensionVersion again)
      * Refactor the permission concept and integrate it nicely
      * Remove dependencies to the SOAP API in EXT:ter_fe2
      ff3c42b3
  15. 04 Aug, 2020 1 commit
    • Benni Mack's avatar
      [TASK] Reduce usage to tx_ter_extensions · 99038b21
      Benni Mack authored
      This patch changes
      - the extensions.xml generator
      - various logic regarding checks if a version exists
      to not query the tx_ter_extensions database table anymore.
      
      Now the only place where tx_ter_extensions is actually used
      is the SOAP API Upload and the Migration to tx_terfe2_* db structure
      which will be migrated in the next patch.
      99038b21
  16. 01 Aug, 2020 1 commit
    • Benni Mack's avatar
      [TASK] Add additional fields to version table for TER v1 migration · 8d64a717
      Benni Mack authored
      Four new fields are added to the tx_terfe2_domain_model_version table,
      which are migrated through a one-time-command "ter:migratedetailstov2"
      from TER v1 tables, and updated on TER v1 Upload as well.
      
      These fields are available in a normalized way, but are also needed
      flat for the extensions.xml.gz file, which makes the SQL query for building
      the XML faster in the future (next update), and allows for dropping the
      tx_ter_extensions table in the next iteration.
      
      The fields are currently not added to TCA as they serve no purpose
      (yet) for the frontend as it is up to decide if we keep the "*_authors" table
      or keep the extension version information in the main *_version table.
      8d64a717
  17. 23 Jul, 2020 2 commits
  18. 21 Jul, 2020 3 commits
    • Benni Mack's avatar
      [!!!][TASK] Drop usage of tx_ter_extensionkeys · e5ee1dcd
      Benni Mack authored
      The database table tx_ter_extensionkeys containing all registered
      extensionkeys is dropped in favor of "tx_terfe2_domain_model_extension".
      
      This table was synced already anyways, and can now be used within extensions.typo3.org
      without having to sync with a cronjob anymore.
      
      Breaking: The information about "title" and "description" is removed, as it wasn't
      required via the Web GUI when registering a key already.
      
      The sync task / TER importer now only imports the uploaded versions, the SOAP API
      now creates records directly in tx_terfe2_domain_model_extension when
      registering a new extension key.
      
      The One-Time-Migration-Script by tomalo (ImportAllExtensionKeysTask) is
      now removed as it is not needed anymore.
      e5ee1dcd
    • Benni Mack's avatar
      [BUGFIX] Use dirname instead of basename to create new upload · 1b0dd52e
      Benni Mack authored
      When uploading via SOAP API a wrong folder structure was created
      as basename() instead of dirname() was used.
      1b0dd52e
    • Benni Mack's avatar
      [BUGFIX] Use current user if no owner was specified · a60d6dd0
      Benni Mack authored
      Fixes: #459
      a60d6dd0
  19. 15 Jul, 2020 1 commit
  20. 14 Jul, 2020 2 commits
    • Benni Mack's avatar
      [BUGFIX] Apply coding guidelines · 41c23ac5
      Benni Mack authored
      41c23ac5
    • Benni Mack's avatar
      [!!!][TASK] Merge tx_ter_extensiondetails into tx_ter_extensions · 30ee6168
      Benni Mack authored
      There is a simple connection between tx_ter_extensiondetails and tx_ter_extensions
      (extensionuid field), but both tables always need to be kept in sync. This is unnecessary
      overhead. For this reason, all data is now moved into tx_ter_extensions (which will
      later be moved into tx_terfe2_domain_model_version).
      
      After adding the new fields to the database table "tx_ter_extensions",
      A onetime CLI command "ter:migrateextensiondetails" is executed
      and syncs all existing data into the main "tx_ter_extensions".
      
      "tx_ter_extensiondetails" can be dropped after the migration, as it is not
      used anymore at all.
      30ee6168