﻿# Changelog

All notable changes to this project will be documented in this file.

## [Unreleased]

- Planned: finer data selection and more regions/brackets configurable via repository variables
- Monitor scheduled alpha auto-updates and polish fetcher logging

## [v0.1.19] – 2025-09-21

### Fixes & UX

- Minimap: ensure visibility and apply a reliable circular mask; keep position updated on show
- Tooltip: show placeholder rows per bracket when no data is available yet
- Options: added "Reload UI" button; bracket order updates now immediately affect tooltips
- Lint: silence remaining warnings by guarding globals and adjusting calls

## [v0.1.18] – 2025-09-21

### UX improvements

- Minimap: icon uses a circular mask (looks like other minimap buttons)
- Options navigation: registered under AddOns via the modern Settings API; improved fallbacks
- New slash command: /pvpscoutaddons opens the AddOns pane directly

## [v0.1.17] – 2025-09-21

### Quality of Life

- Startup message on login (English): shows version, where to find settings (/pvpscout), minimap visibility, and selected brackets

### Fixes

- Tooltip hook: use TooltipDataProcessor with fallback to avoid errors on modern clients
- Options: slider label updates no longer rely on global names (fixes nil concatenation)
- Icons: prefer .blp/.tga for minimap icon; TOC IconTexture points to .blp

## [v0.1.16] – 2025-09-21

### UX

- Minimap: right-click menu now has
  - Show/Hide minimap icon
  - Reset minimap position (back to 45°)
- Options: added a "Reset minimap position" button next to the visibility toggle

### Fixes & Maintenance

- TOC: Interface bumped to 110200 (Retail 11.0.2)
- Lint: removed usage of math.atan2 (not available in WoW) with a safe angle helper
- Docs/Fetcher: added an offline fallback for local testing (JSON/CSV via OFFLINE_SOURCE)

## [v0.1.15] – 2025-09-21

### Enhancements

- Localization: enUS and deDE for UI labels, tooltip text, and minimap menu
- Options panel: added toggles for “Show header”, “Show updated X ago”, and “Color by rating”
- New slider: configurable stale-data threshold (1–72h, default 24h)
- Tooltip/minimap strings localized; consistent bracket labels

### Internal

- Added luacheck/stylua configs and a CI lint workflow
- Removed a duplicate, unused tooltip file from the old subfolder

## [v0.1.14] – 2025-09-21

### Features

- Options panel: enable/disable addon, show rank toggle, show minimap icon, and per-bracket visibility
- Bracket ordering: reorder which brackets appear first in the tooltip via Up/Down controls
- Minimap button: draggable icon with a right-click context menu for quick toggles (enable, show rank/header/updated age, per-bracket)
- Tooltip polish:
  - Header with region and season, optional “updated X ago” timestamp
  - Optional stale-data notice when older than a configurable threshold
  - Color-by-rating option, aligned values (AddDoubleLine), and a clear “No data” fallback
- Slash command: `/pvpscout` opens options; `/pvpscout enable` and `/pvpscout disable` still supported

### Data & automation

- Scheduled alpha updates continue to run every 3 hours (if secrets are configured)
- No changes to tag-based releases: create a tag like `v0.2.0` to publish a proper release

### Internal

- SavedVariables migration: backfills new fields with safe defaults (e.g., `bracketOrder`, UI toggles)
- Docs & lint: changelog formatting and markdownlint config adjusted

## [v0.1.13] – 2025-09-21

### Fixes & Packaging

- Flatten addon layout to repository root (TOC + Lua files at root)
- Stabilize packager (BigWigsMods/packager v2.4.3); fix 400 changelog error
- Simplify .pkgmeta (manual changelog; drop move-folders)

## [v0.1.12] – 2025-09-21

### Fixes

- Correct TOC detection for the packager; resolve conflicts caused by `move-folders`
- Add debug steps to workflows

## [v0.1.11] – 2025-09-21

### Workflow fixes

- Remove duplicate `run` keys in YAML; harden upload workflow when secrets are missing

## [v0.1.10] – 2025-09-21

### New

- Set up tag-triggered release workflow (CurseForge upload); first successful release

## Data pipeline

- New scheduled workflow “Update PvP data (scheduled alpha)”: fetches data via Blizzard Game Data API and uploads alpha builds to CurseForge – without tagging
- Fetcher (`tools/fetch.js`) improvements:
  - Auto-discover leaderboard slugs via the season index (with fallback probing)
  - Configurable locale (default: `en_US`)
  - Writes `Data.lua` either to the WoW Addon directory (when `WOW_ADDON_DIR` is set) or to the repository root

## Notes

- Required Actions secrets for automatic data updates: `BLIZZARD_CLIENT_ID`, `BLIZZARD_CLIENT_SECRET`, `CF_API_KEY`
- Optional Actions variables: `REGIONS` (e.g. `eu,us`), `BRACKETS` (e.g. `2v2,3v3,shuffle,rbg,blitz`), `LOCALE` (e.g. `de_DE`)

[Unreleased]: https://github.com/dominikreckziegel/PvPScout/compare/v0.1.19...HEAD
[v0.1.19]: https://github.com/dominikreckziegel/PvPScout/releases/tag/v0.1.19
[v0.1.18]: https://github.com/dominikreckziegel/PvPScout/releases/tag/v0.1.18
[v0.1.17]: https://github.com/dominikreckziegel/PvPScout/releases/tag/v0.1.17
[v0.1.16]: https://github.com/dominikreckziegel/PvPScout/releases/tag/v0.1.16
[v0.1.15]: https://github.com/dominikreckziegel/PvPScout/releases/tag/v0.1.15
[v0.1.14]: https://github.com/dominikreckziegel/PvPScout/releases/tag/v0.1.14
[v0.1.13]: https://github.com/dominikreckziegel/PvPScout/releases/tag/v0.1.13
[v0.1.12]: https://github.com/dominikreckziegel/PvPScout/releases/tag/v0.1.12
[v0.1.11]: https://github.com/dominikreckziegel/PvPScout/releases/tag/v0.1.11
[v0.1.10]: https://github.com/dominikreckziegel/PvPScout/releases/tag/v0.1.10
