Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 0bc6523fb2 | |||
| c166f65316 | |||
| bb7c47a4d6 | |||
| 52e66fcf4b | |||
| b22361f758 |
@@ -2,7 +2,7 @@
|
||||
|
||||
Target: Turtle WoW 1.18.x / Octo client.
|
||||
|
||||
## Fixed in 1.4.6-compat.1
|
||||
## Fixed in 1.4.6
|
||||
|
||||
- **Horizontal mail bar crash:** the upstream code creates `MailHorizontalBarLeft/Right` and then assumes the textures are exported as globals. Some client/UI combinations return the textures without the expected global, causing `attempt to index field 'MailHorizontalBarLeft' (a nil value)`. The compatibility layer guarantees valid texture references before setup and updates.
|
||||
- **Autocomplete SavedVariables crash:** `TurtleMail_AutoCompleteNames` and its realm/faction table are used without schema validation. The patch initializes/repairs missing or malformed SavedVariables before `ADDON_LOADED`, `PLAYER_LOGIN`, slash commands, and autocomplete.
|
||||
@@ -26,23 +26,16 @@ These are intentionally not rewritten in the compatibility layer because changin
|
||||
3. Several layouts rely on specific Blizzard frame names and region ordering. The compatibility layer protects the confirmed/high-risk cases, but a full mail-frame replacement can still be incompatible.
|
||||
4. The pfUI skin accesses pfUI internals (`MailFrame.backdrop`, `pfUI_config`, specific widget members). A future pfUI layout change can therefore break the skin even when core TurtleMail remains functional.
|
||||
5. Inbox polling is frame-count based (`200` OnUpdate ticks), so the interval changes with FPS. It is not a correctness bug but is less predictable than elapsed-time polling.
|
||||
6. The addon has no automated runtime test harness for Turtle WoW mail APIs; final validation still needs an in-game test with empty mail, item mail, gold, COD, AH mail, multi-attachment send, autocomplete, and (if used) pfUI.
|
||||
6. The addon has no automated runtime test harness for Turtle WoW mail APIs; future changes still need in-game validation with representative mail/send scenarios.
|
||||
|
||||
## Compatibility context
|
||||
|
||||
The upstream repository already had a Turtle WoW 1.18.1 report where `MailFrame` became nil; that report was ultimately traced to MoveAnything. This reinforces that TurtleMail is sensitive to addons that replace or re-parent the mail UI.
|
||||
|
||||
## Suggested in-game validation
|
||||
## Validation
|
||||
|
||||
- Open and close the mailbox repeatedly.
|
||||
- Open a normal letter, item mail, gold mail, AH mail, and returned mail.
|
||||
- Confirm COD mail is skipped by Open All.
|
||||
- Send one item and then several items.
|
||||
- Send money and confirm the log records it.
|
||||
- Type a previously seen sender in the recipient field and confirm autocomplete.
|
||||
- Switch inbox pages and verify AH/returned icons do not remain on empty rows.
|
||||
- If pfUI is installed, test with its mailbox skin both enabled and disabled.
|
||||
The compatibility build was tested in-game on Turtle WoW 1.18.x and the reported setup produced no Lua errors after the fixes were applied. Because mailbox behavior can be affected by other UI addons, future changes should still be checked with normal mail, item mail, gold, COD, AH/returned mail, multi-attachment send, autocomplete, logging, and pfUI when applicable.
|
||||
|
||||
## Status
|
||||
|
||||
`1.4.6-compat.1` is a **test build**, not a final release. The fixes are intentionally isolated in `TurtleMailFix.lua` so upstream code stays easy to compare and future upstream changes remain easier to merge.
|
||||
**1.4.6 is the current stable release.** The fixes remain isolated in `TurtleMailFix.lua` so upstream code stays easy to compare and future upstream changes remain easier to merge.
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
# TurtleMail - WoW 1.12 / Turtle WoW
|
||||
|
||||
This fork keeps the original TurtleMail features while adding a small compatibility layer for **Turtle WoW 1.18.x / Octo**.
|
||||
This fork keeps the original TurtleMail features while adding a compatibility and safety layer for **Turtle WoW 1.18.x / Octo**.
|
||||
|
||||
> Current test build: **1.4.6-compat.1**
|
||||
> Stable release: **1.4.6**
|
||||
> Based on upstream **sica42/TurtleMail 1.4.5**.
|
||||
> The compatibility work is isolated in `TurtleMailFix.lua` so upstream changes remain easy to compare and merge.
|
||||
|
||||
@@ -26,7 +26,7 @@ Logging is disabled by default. Enable with `/tm log`.
|
||||
|
||||
## Turtle WoW compatibility fixes
|
||||
|
||||
`1.4.6-compat.1` currently addresses:
|
||||
Version **1.4.6** addresses:
|
||||
|
||||
- `MailHorizontalBarLeft` / `MailHorizontalBarRight` nil crashes.
|
||||
- Missing or malformed `TurtleMail_AutoCompleteNames` SavedVariables.
|
||||
@@ -36,21 +36,15 @@ Logging is disabled by default. Enable with `/tm log`.
|
||||
- Stale AH/returned icons on empty inbox rows.
|
||||
- Fragile mailbox/package-frame lookups.
|
||||
- A calendar tooltip nil/stale-value edge case.
|
||||
- Several additional guards around mailbox UI replacements and malformed state.
|
||||
|
||||
See [`AUDIT.md`](AUDIT.md) for the full audit, remaining architectural risks, and the in-game validation checklist.
|
||||
See [`AUDIT.md`](AUDIT.md) for the full audit and remaining architectural risks.
|
||||
|
||||
## Test status
|
||||
## Validation status
|
||||
|
||||
This is intentionally marked as a **test build** until it has been validated in-game on Turtle WoW 1.18.x. Core mail sending/opening behavior has not been deliberately redesigned; the patch focuses on compatibility and safety around the upstream implementation.
|
||||
Version **1.4.6** has been promoted to stable after in-game testing on Turtle WoW 1.18.x completed without Lua errors in the tested setup.
|
||||
|
||||
Recommended checks after installing:
|
||||
|
||||
1. Open/close the mailbox repeatedly.
|
||||
2. Test normal mail, item mail, gold, AH, returned mail, and COD.
|
||||
3. Test one-item and multi-item sends.
|
||||
4. Test recipient autocomplete.
|
||||
5. Test the sent/received log.
|
||||
6. If you use pfUI, test with its mailbox skin enabled and disabled.
|
||||
The patch intentionally keeps the original send/open workflow instead of redesigning it. Addons that heavily replace or re-parent the Blizzard mail UI can still create compatibility issues; known architectural risks are documented in `AUDIT.md`.
|
||||
|
||||
## Screenshots
|
||||
|
||||
|
||||
+2
-2
@@ -2,8 +2,8 @@
|
||||
## Interface: 11200
|
||||
## Title: |cffabd473Turtle|cffffffffMail
|
||||
## Author: shirsig/sica, Dusk-92 (compatibility fixes)
|
||||
## Version: 1.4.6-compat.1
|
||||
## Notes: Mailbox enhancement - Turtle WoW 1.18.x compatibility fixes
|
||||
## Version: 1.4.6
|
||||
## Notes: Mailbox enhancement - Turtle WoW 1.18.x compatibility
|
||||
## SavedVariables: TurtleMail_AutoCompleteNames
|
||||
## SavedVariablesPerCharacter: TurtleMail_To TurtleMail_Point TurtleMail_Log
|
||||
|
||||
|
||||
+1
-1
@@ -8,7 +8,7 @@ local m = TurtleMail
|
||||
local getn = table.getn
|
||||
local function pack( ... ) return arg end
|
||||
|
||||
m.compat_version = "1.4.6-compat.1"
|
||||
m.compat_version = "1.4.6"
|
||||
|
||||
local DEFAULT_SENT_FILTERS = {
|
||||
Money = 1,
|
||||
|
||||
Reference in New Issue
Block a user