Add CHANGELOG.md and link it from the README
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019W3rwtugSE5NbbiWQCbbKX
This commit is contained in:
@@ -0,0 +1,70 @@
|
||||
# Changelog
|
||||
|
||||
All notable changes to this OctoWoW edition of Gentle GC. Versions follow
|
||||
`GentleGC.toc`. Dates are the commit dates (UTC).
|
||||
|
||||
## Unreleased
|
||||
|
||||
### Added
|
||||
- Collections and threshold changes that can't be tied to an addon now name the
|
||||
game event just before them, for example
|
||||
`collection by unknown addon (after PLAYER_ENTERING_WORLD)`, or
|
||||
`(no recent event)` after 5 seconds. `/ggc` lists them under
|
||||
"unknown addon collections came" and "unknown addon threshold changes came".
|
||||
It only labels; when GentleGC collects is unchanged.
|
||||
- `tests/test_unknown_context.lua`, `tests/run_all.sh` and `tests/README.md`.
|
||||
|
||||
### Repository
|
||||
- `.gitattributes` keeps LF line endings; `.gitignore` for editor and OS files.
|
||||
- README restructured with headings; the weirdperformance note moved under
|
||||
"Client mods".
|
||||
|
||||
## 2.7 - 2026-10-31
|
||||
|
||||
### Added
|
||||
- weirdperformance (WeirdUtils) support. Its collector does one full mark per
|
||||
cycle and then frees memory in small chunks. GentleGC detects it through
|
||||
`GetWeirdUtilsVersion`, doesn't count or log the chunks, never starts a
|
||||
collection in the middle of a cycle, lets the chunks keep running in combat,
|
||||
and uses the combat headroom only to keep the next cycle's full mark out of
|
||||
the fight. `/ggc` shows its cycles and chunks.
|
||||
- `tests/test_weirdperf.lua`.
|
||||
|
||||
### Notes
|
||||
- Don't run weirdperformance together with wow_turbo: both replace the same
|
||||
part of the game's collector.
|
||||
|
||||
## 2.6 - 2026-10-31
|
||||
|
||||
### Added
|
||||
- Detection of addons that wrap `collectgarbage` and turn GentleGC's
|
||||
collections into something else (for example, only moving the threshold to
|
||||
just above the memory in use). GentleGC says so once, names the addon when it
|
||||
can find it, and stops retrying.
|
||||
- Threshold changes made by other addons (set without collecting) are listed in
|
||||
`/ggc` and logged at `/ggc debug 2`.
|
||||
- `/ggc` estimates how a collection's pause splits into a fixed part and a part
|
||||
per MB freed, from GentleGC's own collections this session.
|
||||
|
||||
### Changed
|
||||
- Pressure collections are skipped when there would be almost nothing to free.
|
||||
|
||||
### Tests
|
||||
- `tests/test_threshold.lua`.
|
||||
|
||||
## 2.5 - 2026-10-30
|
||||
|
||||
First version in this repository: the unified edition, combining the original
|
||||
by MarcelineVQ (Weird Vibes) with the event-driven collection from
|
||||
jrc13245's fork and the separate report timer from TheRealFayz's fork.
|
||||
|
||||
- Schedules Lua garbage collection for quiet moments: loading screens, death,
|
||||
flight masters, vendor, bank, mail, auction house and trainer windows, AFK,
|
||||
and after combat.
|
||||
- Never collects in combat; raises the automatic-GC threshold on entering combat.
|
||||
- Careful mode when collections average 100 ms or more.
|
||||
- Time and attribution of other addons' collections; garbage creation rate.
|
||||
- Optional ClassicAPI support (stand-still collection, `C_Timer`).
|
||||
- Freeze detector (`/ggc hitch`).
|
||||
- Optional per-addon memory companion `!!!!GentleGC_Memory` (`/ggc addons`).
|
||||
- Test suite in `tests/`.
|
||||
Reference in New Issue
Block a user