# AllTheThings

## [SL-2.8.7-37-gc412723](https://github.com/DFortun81/AllTheThings/tree/c412723d8145b3fc9ca94f5f81c2fbae2aaebe0c) (2022-07-14)
[Full Changelog](https://github.com/DFortun81/AllTheThings/compare/SL-2.8.7...c412723d8145b3fc9ca94f5f81c2fbae2aaebe0c) [Previous Releases](https://github.com/DFortun81/AllTheThings/releases)

- Profession Recipes which are not associated with an Item will still associate/merge the Profession skill with the raw Recipe when Parsing, so that the 'requireSkill' field does not need to be used in Source Locations of the Recipes  
- Parser will now merge proper Recipe data (u, requireSkill) for raw Recipes when stored in 'RecipeDB'  
- -- Partial BS push  
- Added timelines for some loremaster achievements in classic zones.  
- Various #errors  
    Moved/Organized/Cleaned Legion Mining content  
    Symlinked a lot of Rare-specific WQ's with their specific Rare (Will probably do this to more WQ's like this in the future for better visibility to available Rares in /attwq)  
- A flight path was added to Thondroril River, Western Plaguelands with Wrath. (later moved to EPL in Cata...)  
- Fixed Goblin's Guide to Elementium for Wrath.  
- Blackrock Mountain now uses a more available icon.  
- Fixed some classic zones for Wrath.  
- Updated exploration data for Eastern Plaguelands during Wrath of the Lich King.  
- Found some more.  
- Fixed some Goblin/Gnomish Engineering Craftables.  
- Learn to Ride in Tirisfal Glades is actually Horde Only.  
- Missing Object  
    Redundant maps  
    Now utilizing symlinks instead of old altQuest interaction for Argus WQ / Rare relationships  
- Death Tracker Lib update.  
- Realigned some wrongly-commented Achievement criteria  
- Add achievement requirements for cooking (#1050)  
    Co-authored-by: Tomas Neumaier <tomas.neumaier@zasilkovna.cz>  
- Added some 'async' logic to handle symlink processing for groups (when in the scope of an ATT Window) such that the processing time for pulling in sym-linked content can be spread over multiple game frames instead of lumped entirely into a single game frame. (i.e. loading into Dalaran is now a slight spike followed by a few seconds of loading, with relatively negligible impact to frame rate while the minilist continues updating. Previously it was roughly a ~2 sec flat lag spike)  
- Updated Alterac Mountains.  
    Added a parser for Wrath Classic. (and build scripts for all versions up to Dragonflight, should they be necessary in the future)  
- Add dates to "The Great Push" toy description  
- Sourced the unique materials for crafting the Mecha-Mogul Mk2  
- Fixed a Lua bug when showing tooltip of collected Followers  
    Other follower logic clean up  
- New Store Mount  
    New Banner for TGP  
- 1 more zone drop item update  
- updated some ZM zone drops with information  
- Comment fix  
- Various #errors (back to 2.7.11 only, whew)  
- Various #errors  
    Couple Ghostlands adjustments based on what likely changed in BFA at some point  
- Can no longer lock ATT windows which aren't already movable (i.e. locking TradeSkill window accidentally, which apparently causes other issues)  
    Non-movable ATT windows will clear their stored position when loading if they for some reason have a position stored  
- Fixed Mechagon HQT source  
    Added Dynamic groups for Artifacts, Azerite Essences & Followers  
- Fixing some source quests for breadcrumbs  
- Fixed some Faction standing logic to work consistently between regular Factions and Friendships, and use Faction standing colors/standings more accurately  
    Various errors and errors and errors  
- Small Naxxramas Fix  
- Factions are now re-cached when refreshing (apparently at some point in the distant past, characters had certain Factions cached as 'saved'/Exalted due to criteria other than actually being 'saved' with that Faction)  
- Dynamic Professions / Function Runner (#1047)  
    * Added a FunctionRunner which will make it very easy to call many functions in a single game frame and allow them to process in batches over multiple game frames to reduce any stutter or frame spikes which are caused when running a lot of logic per frame
  
    * Replaced the initial Quest queue processing with generic Function Runner
  
    * Re-designed Dynamic Group population to utilize the FunctionRunner for data population followed by the Direct Group Update callback. This will allow us to greatly expand the quantity of Dynamic groups without needing to worry about the performance of additional data being populated
  
    * Some debugging prints and stuff that will be removed later...
  
    * Added a Dynamic Professions category which populates iteratively to avoid having a super gigantic lag spike at the end of loading the Main list [WIP]
  
    Dynamic groups now cache their data after all Dynamic groups are populated via the Function Runner, this way we don't have to verify Dynamic data is not from another Dynamic category
  
    * Testing a different idea for logic in processing Simple Dynamic categories to attempt to make it faster (seems to work as an initial test)
  
    * Reduced some chat spam
  
    * Moved Dynamic Group creation on the Main list into a separate, user-initiated process so that the user can control when/if they want the extra lag to occur for generating all the Dynamic content
  
    * Enchanting update for Dynamic Professions
  
    * Removed remaining Function Runner debug spam
  
    Added capability of saving an OnEnd function to run when the FunctionRunner queue finishes
  
    Added chat notification for Loading/Loaded of Dynamic Groups (not localized yet)
  
    * Some Enchanting updates
  
    * Removed more debug messages
  
    Attempted to improve the usage of BuildSearchResponse such that unnecessary processing is not performed (but it's still super slow to literally scan every piece of data in the entire addon....)
  
    * Fixed derp with Nested Dynamic groups not loading at all, but they're still wayyyy too laggy... will have to test out other ideas to make it faster like Simple...
  
    * Don't need to check .g
  
    * Couple more chat debug clean up
  
    * -- Classic BS
  
    * Cache for 'requireSkill' can be used instead of 'professionID' as well
  
    Implemented a different type of logic for building search results if the search criteria is a cached field (this performs WAY faster)
  
    Some micro improvements to group nesting
  
    * Existing Flight Paths category now acts as a proper Dynamic Group
  
    * Consolidated logic for genertation of Dynamic categories that consist of value-based Dynamic categories (Factions & Professions)
  
    Removed Dynamic Conduits/Runeforge Powers for now
  
    * minReputation and maxReputation fields will now cache that group for the respective FactionID
  
    * Commented old flight path code
  
    * -- TBC BS
  
    * Small change
  
    * Some update-based fields shouldn't actually merge when cloning existing groups
  
    Adjusted some logic for dynamic groups so that the top dynamic group contains the existing filter values from their Sourced groups
  
    Skipped caching map information when caching generated Dynamic content
  
    * Removed Debug and Performance tracking being enabled
  
    Commented out further Debug messages
  
    Co-authored-by: gbrage <gbrage@kth.se>  
- Added comment to Maw Herald rares  
- Enable autochangelog  