Zum Inhalt

v2.5.39 – v2.5.50 — 2026-07-06

  • feat(import/plesk): per-domain package + IP mapping — domains on different service plans migrate into separate subscriptions (one webspace per package), IP set per domain, dropdowns in the import UI (15 languages)
  • feat(import/plesk): auto-detect each domain's service plan + IP from the Plesk database and pre-map onto matching panel packages/IPs
  • fix(import/plesk): re-sync heals a wrong customer/subscription link from an earlier partial migration; never create sites without a valid subscription
  • fix(import/plesk): domain-by-domain alias with an unmigrated parent was silently dropped — now created as a standalone site
  • fix(import): re-sync built a broken rsync source path (host left in the path)
  • fix(customer): real customer login showed an empty account — default to "All packages" so all domains are visible
  • fix(impersonation): reset the subscription filter in memory so an impersonated customer's view is never empty
  • fix(ssl): TLS-Health expiry column no longer wraps the date character by character; days-left now shows the number (15 languages)
  • security(deps): govulncheck added as a release gate + 7 CVEs fixed
  • chore(lint): golangci-lint cleaned to 0 in both modules and turned into a hard release gate
  • fix(agent): long system operations (apt, backup, mysqldump, certbot) run on a background context so they are not aborted when the HTTP request ends
  • i18n: 114 missing keys translated into all 13 languages; last hardcoded placeholders moved to t()
  • docs(changelog): entire changelog is now English
  • feat(import/plesk): import "Weiterleitung" (redirect) domains
  • feat(toolkit): actually run WordPress + Joomla auto-updates (they were stored but never executed)
  • docs(changelog): rewrite today's entry as a flat fix/feat list (no grouping)
  • fix(sites): add a "back" button on tool pages opened from an expanded site
  • fix(import): re-syncing a redirect domain shows a clear message instead of an rsync error
  • fix(backup): reject a second local backup schedule per customer (repo collision)