Skip to content

3.6.0 - #154

Merged
skerbis merged 1 commit into
mainfrom
3.6.0
Aug 7, 2026
Merged

3.6.0#154
skerbis merged 1 commit into
mainfrom
3.6.0

Conversation

@skerbis

@skerbis skerbis commented Aug 7, 2026

Copy link
Copy Markdown
Member

[3.6.0] - 07.08.2026

  • Unbenutzte Abhängigkeiten und Frontend-Assets bereinigt: exceljs.min.js und jspdf.umd.min.js entfernt sowie die nicht mehr benötigten Composer-Abhängigkeiten phpoffice/phpspreadsheet und matomo/referrer-spam-blacklist aus dem Addon entfernt
  • Release-Paketierung ergänzt: Entwicklungsordner .tools und .github werden über installer_ignore sowie per .gitattributes (export-ignore) aus Release-Archiven ausgeschlossen
  • Frontend-Vendor-Assets aktualisiert (DataTables auf 1.13.11, ECharts auf 5.6.1) und automatischen GitHub-Workflow für regelmäßige Asset-Update-PRs ergänzt (.github/workflows/update-frontend-assets.yml)
  • Tracking-SQL gehärtet und vereinheitlicht: bisherige String-SQL mit addslashes in Visit auf parametrisierte Upsert-Queries umgestellt, wiederholte Counter-Upserts in Visit/EventRequest über interne Helper konsolidiert und den pagestats_data-Write-Path per Bulk-Upsert reduziert
  • Data-Aggregationen für Browser/Brand/Browsertype/OS/Model/Country/Hour/Weekday zusammengeführt: statt mehrerer Einzelabfragen je Klasse werden die Typen zentral über eine gemeinsame Query geladen und intern wiederverwendet
  • REDAXO-Härtung ergänzt: direkte $_SERVER-Zugriffe in Visit/EventRequest durch REDAXO-Serverzugriff ersetzt (u. a. Client-Hints und HTTP_VIA)
  • Wartungs- und Analyseballast reduziert: veraltete psalm.xml entfernt und README um eine Maintainer-Sektion für .tools erweitert

Copilot AI lite review requested due to automatic review settings August 7, 2026 11:58

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Release 3.6.0 focuses on hardening and consolidating the addon’s tracking write-path and reducing redundant aggregation queries by introducing a shared in-memory repository for pagestats_data type aggregations.

Changes:

  • Refactors tracking writes in Visit (and parts of EventRequest) from manual string SQL to parameterized upsert helpers, including a bulk upsert path for pagestats_data.
  • Introduces DataTypeAggregationRepository to load and cache multiple pagestats_data aggregation types via a single query, reused by the various lib/data/* classes.
  • Replaces direct $_SERVER usage for specific headers/client hints with REDAXO server access (rex_server) and a dedicated client-hints server bag builder.

Reviewed changes

Copilot reviewed 12 out of 12 changed files in this pull request and generated no comments.

Show a summary per file
File Description
lib/Visit.php Consolidates counter upserts into helper(s), adds bulk upsert for pagestats_data, and replaces certain $_SERVER reads with rex_server/client-hints bag.
lib/DataTypeAggregationRepository.php New static repository that loads multiple pagestats_data types in one query and caches per request.
lib/data/Weekday.php Switches weekday aggregation loading to the shared repository.
lib/data/OS.php Switches OS aggregation loading to the shared repository.
lib/data/Model.php Switches model aggregation loading to the shared repository.
lib/data/Hour.php Switches hour aggregation loading to the shared repository.
lib/data/Country.php Switches country aggregation loading to the shared repository.
lib/data/Browsertype.php Switches browsertype aggregation loading to the shared repository.
lib/data/Browser.php Switches browser aggregation loading to the shared repository.
lib/data/Brand.php Switches brand aggregation loading to the shared repository.
lib/api/EventRequest.php Consolidates hash “touch” into an upsert helper and switches client-hints input away from raw $_SERVER.
Changelog.md Extends 3.6.0 notes to include the SQL hardening, aggregation consolidation, and REDAXO $_SERVER hardening items.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@skerbis
skerbis merged commit 3cffe06 into main Aug 7, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants