Skip to content

Releases: rfluethi/Training-Translation-Tracker

v0.4.10

24 May 18:26

Choose a tag to compare

v0.4.10 Pre-release
Pre-release

Install the plugin ZIP

  1. Download the ZIP below.
  2. WordPress admin: Plugins -> Upload Plugin -> choose the ZIP.
  3. Activate the plugin.

Changelog v0.4.10

  • Repository renamed from Training-Translation-Tracker-Inventory-Plugin to
    Training-Translation-Tracker. Default tracker.json URL updated
    accordingly: existing installations that still point at the old
    raw.githubusercontent.com path will get a 404 — adjust the URL in
    Settings → Translation Tracker, or reinstall this version which carries
    the new default. Plugin URI, bug-tracker URL in translation headers,
    schema $id fields and the GitHub Action's User-Agent string have been
    updated in lockstep.

v0.4.9

23 May 07:38

Choose a tag to compare

v0.4.9 Pre-release
Pre-release

Install the plugin ZIP

  1. Download the ZIP below.
  2. WordPress admin: Plugins -> Upload Plugin -> choose the ZIP.
  3. Activate the plugin.

Changelog v0.4.9

  • UI: brand icon added to the header of the settings page (under
    Settings > Translation Tracker). Purely cosmetic; the icon lives at
    assets/icons/header-icon.svg and is loaded as a decorative image
    (alt=""), so screen readers continue to read just the page title.

v0.4.8

22 May 19:41

Choose a tag to compare

v0.4.8 Pre-release
Pre-release

Install the plugin ZIP

  1. Download the ZIP below.
  2. WordPress admin: Plugins -> Upload Plugin -> choose the ZIP.
  3. Activate the plugin.

Changelog v0.4.8

  • Security polish: tracker URL setting is now validated against an
    allow-list of hosts at save time. Default allow-list contains only
    raw.githubusercontent.com; admins can extend via the new filter
    hook ttt_tracker_url_allowed_hosts. URLs that are not HTTPS or
    whose host is not on the list are rejected and the previous saved
    value is kept (with an admin notice). Mitigates accidental
    misconfiguration and an SSRF-style risk vector.
  • Docs (User-Guide, EN + DE): combined component+status filter and
    the "unspecified" pill (introduced in 0.4.4 / 0.4.5) are now
    documented; a CSP hint for avatars.githubusercontent.com was
    added to the troubleshooting section.
  • Docs (Developer.md, EN + DE): describe the new filter hook
    ttt_tracker_url_allowed_hosts.
  • i18n: languages/training-translation-tracker.pot regenerated from
    scratch out of the current PHP sources. The old file still
    contained extractor comments left over from earlier German
    docblocks; the new file has 87 entries with clean file:line
    references. The German .mo was rebuilt against the new .po
    (translates "unspecified" -> "keine Angabe").

v0.4.7

22 May 19:17

Choose a tag to compare

v0.4.7 Pre-release
Pre-release

Install the plugin ZIP

  1. Download the ZIP below.
  2. WordPress admin: Plugins -> Upload Plugin -> choose the ZIP.
  3. Activate the plugin.

Changelog v0.4.7

  • Accessibility: WCAG-AA contrast for status icons. The icon foreground
    tokens --ttt-color-open and --ttt-color-review were darkened
    (open: #facc15 -> #ca8a04, 3.8:1; review: #d4a017 -> #b45309, 5.2:1)
    so the component icons meet the 3:1 graphics contrast threshold
    against a white card. Pill backgrounds and other token uses remain
    unchanged.
  • Polish: removed redundant title= attribute on component icons
    (kept only aria-label=). Screen readers no longer double-announce
    the same string. The popover remains the primary affordance for
    sighted users.
  • Polish: class-fetcher.php now rejects JSON top-level arrays as
    well as non-array values via array_is_list(). Previously a JSON
    list slipped through to the deeper schema validation; now it is
    caught at the first guard.
  • Polish: explicit return; after the capability-check failure in
    handle_clear_cache() to make the early-out obvious (no functional
    change because wp_send_json_* already calls wp_die()).
  • Credits: README.md and CONTRIBUTING.md now mention Andy Rudorfer
    (@Bigod) as the source of the frontend UI design concept (card
    layout, status pills, component icons, filter bar).
  • Maintainer rule: documentation must be maintained in both English
    (GitHub repo) and German (Konzept/ mirror). Documented in
    Arbeitsplan.md, no impact on shipped plugin.

v0.4.4

22 May 16:56

Choose a tag to compare

v0.4.4 Pre-release
Pre-release

Install the plugin ZIP

  1. Download the ZIP below.
  2. WordPress admin: Plugins -> Upload Plugin -> choose the ZIP.
  3. Activate the plugin.

Changelog v0.4.4

  • Open component icons are now highlighted yellow (#facc15 on a pale
    yellow pill background) instead of muted gray, so that components still
    needing work jump out visually. The icon opacity dampening on open is
    removed. Other status colors are unchanged (green for done, gold for
    review, blue for wip, light gray for n/a).
  • New combined filter in the filter bar: two dropdowns "Filter by
    component" and "Filter component by status". Selecting only a component
    shows cards that contain that component. Selecting both shows cards
    where the chosen component is in the chosen status. Example: pick
    text + open to see every item whose text translation is still
    open. The component status dropdown is ignored when no component is
    selected (overall-status filtering remains on the stats pills above).
    The new dropdown choices are persisted via localStorage so they
    survive page reloads.
  • Stats pill counts now also reflect the combined component filter, so
    the pill numbers always match the cards visible below.
  • Docs (docs/User-Guide.md, docs/Issue-Templates-DACH.md): the
    parser has always accepted GitHub usernames both with and without the
    @ prefix (it strips a leading @); the documentation now says so
    explicitly. Both rfluethi and @rfluethi are valid in the status
    table.

v0.4.3

22 May 15:32

Choose a tag to compare

v0.4.3 Pre-release
Pre-release

Install the plugin ZIP

  1. Download the ZIP below.
  2. WordPress admin: Plugins -> Upload Plugin -> choose the ZIP.
  3. Activate the plugin.

Changelog v0.4.3

  • Maintenance release. Full English translation of the entire repository:
    Markdown documentation (docs/Architecture.md, Developer.md, Operations.md,
    User-Guide.md, Issue-Templates-DACH.md), README and CONTRIBUTING files,
    PHP code comments (training-translation-tracker.php, includes/*.php,
    uninstall.php), JavaScript comments (assets/tracker.js, assets/admin.js),
    Python code comments and docstrings across action/src and action/tests
    (76/76 tests still green), GitHub workflow YAMLs, issue templates, the
    .gitignore and the build-plugin-zip.sh helper.
  • Two documentation files were renamed for consistency: docs/Architektur.md
    -> docs/Architecture.md, docs/Issue-Vorlagen-DACH.md ->
    docs/Issue-Templates-DACH.md. German originals kept under the maintainer's
    local Konzept/docs-de-backup/ folder.
  • Legacy changelog entries (0.2.3 and the 2.x pre-beta series) translated to
    English to match the rest of readme.txt.
  • WordPress plugin audit: PASS with 0 CRITICAL / HIGH / MEDIUM findings.
    No code changes were required, the plugin is Plugin-Check clean.
  • GitHub repo audit: no blocking findings. Minor housekeeping items (stale
    action/.github duplicate, empty Konzept/_archiv-css folder) are not in
    this release and will be cleaned up on the next pass.
  • Tracker-data, frontend behavior and feature set are unchanged from 0.4.2.
    No user action required when upgrading.

v0.4.2

22 May 13:44

Choose a tag to compare

v0.4.2 Pre-release
Pre-release

Plugin-ZIP installieren

  1. ZIP unten herunterladen
  2. WordPress-Admin → Plugins → Plugin hochladen → ZIP wählen
  3. Plugin aktivieren

Changelog v0.4.2

  • The auto-update mechanism introduced in 0.4.0 (plugin-update-checker
    by Yahnis Elsts) has been removed. Rationale: the library is itself an
    update mechanism, which Plugin Check forbids by design ("Plugin updater
    detected"). Bundling it produced ~80 noise findings that drowned out
    real review feedback on our own code, making the QA workflow worse.
    The DACH team is small enough that manual updates (download new ZIP
    from the GitHub release tab, replace plugin) are no real burden.
  • Fix: escape JSON output for the inline i18n bundle with JSON_HEX_TAG
    so Plugin Check no longer flags EscapeOutput.OutputNotEscaped.
  • Fix: Tested up to: 7.0 so Plugin Check no longer flags outdated.
  • Fix: explicit phpcs:ignore annotation on load_plugin_textdomain(),
    with comment explaining why a GitHub-distributed plugin needs the
    manual call (wp.org auto-load convention does not apply).
  • Fix: release-plugin.yml unzip | awk | head chain now disables
    pipefail for that one diagnostic line, so SIGPIPE from head doesn't
    fail the whole release workflow.

v0.3.3

22 May 12:46

Choose a tag to compare

v0.3.3 Pre-release
Pre-release

Plugin-ZIP installieren

  1. ZIP unten herunterladen
  2. WordPress-Admin → Plugins → Plugin hochladen → ZIP wählen
  3. Plugin aktivieren

Changelog v0.3.3

  • Component icons are now data-driven: the SVG paths live in
    action/component-templates.yml (icons: block) and are delivered with
    the tracker.json as an optional top-level component_icons field. The
    plugin reads them, falls back to its hardcoded defaults if not present,
    and the ttt_component_icons filter remains the final override. Adding
    a new icon to the Action no longer requires a plugin code change.

v0.3.1

22 May 11:27

Choose a tag to compare

v0.3.1 Pre-release
Pre-release

Plugin-ZIP installieren

  1. ZIP unten herunterladen
  2. WordPress-Admin → Plugins → Plugin hochladen → ZIP wählen
  3. Plugin aktivieren

Changelog v0.3.1

  • i18n: source language switched from German to English (WordPress convention).
    Plugin shows English by default; German is delivered as a translation via
    languages/training-translation-tracker-de_DE.mo. WP installations with
    WPLANG=de_DE continue to show German.
  • Domain Path: /languages re-added to the plugin header and
    load_plugin_textdomain() re-enabled so the bundled .mo is found in
    GitHub-distributed builds (where wp.org auto-load doesn't apply).

v0.3.0

22 May 11:03

Choose a tag to compare

v0.3.0 Pre-release
Pre-release

Plugin-ZIP installieren

  1. ZIP unten herunterladen
  2. WordPress-Admin → Plugins → Plugin hochladen → ZIP wählen
  3. Plugin aktivieren

Changelog v0.3.0

  • Accessibility: section toggles are now real <button> elements (instead
    of <h4 role="button">) — semantically correct and natively
    keyboard-friendly. Component icons gained aria-haspopup="dialog" and
    aria-expanded state, kept in sync by the JS when the popover opens/closes.
  • New filter hook ttt_component_icons — themes and companion plugins can
    override SVG icon paths per component without modifying plugin code. See
    developer docs.
  • i18n: full .pot file shipped in languages/training-translation-tracker.pot
    (70 strings, 6 translator comments). Ready for de_DE, de_CH and any
    other locale.
  • Documentation: top-level docs/-suite (Architecture, Developer, Operations,
    User Guide, Issue Templates) — absorbed the previous wp-plugin/docs/ and
    centralized everything for both Action and Plugin.