Eliote / SimpleAddonManager

A simple to use Addon Manager with profile, search, category filter, and more.
https://www.curseforge.com/wow/addons/simple-addon-manager
MIT License
4 stars 3 forks source link

Feature Request: Add sort addons by install/update date #13

Open ryankhart opened 1 year ago

ryankhart commented 1 year ago

I'm no WoW addon developer (yet), but is it possible within the WoW API and Lua to read the modification date on the files/folders and then sort by that?

If so, the install date can probably be deduced by logging when the first time an addon is installed.

The reason why I would find this useful is because I sometimes go on addon install binges, but I don't necessarily go immediately in game to test them out. So I'll often forget which addons are the new ones. Often times, the new addons clash or spam me with error messages or tutorial popups, and I just want to sort by modification date and disable all the new addons and then enable them one by one when I feel like it. I know that I could just use profiles for this, but I often change which addons I install so often that I often forget to save my setup as a profile after testing for long enough that everything is good.

I'd be willing to learn and implement this feature myself as a learning experience, but I just don't know if it is viable to do this. Or, if you or someone else implements this, I will definitely look at the commits to learn more about addon development as I did to learn about plugin development for FFXIV. I'm a code contributor for the FFXIV TextToTalk plugin.

Eliote commented 1 year ago

We don't have any access to the file system, at least not in code, all we can do is declare what we use in the .toc file.

Just tracking the first time I see an addon is an incomplete solution, since updates would be ignored. Maybe I can deduce the date by watching when the version of an addon changes, but version metadata is not a required attribute, so it would also be an incomplete solution.

There's a new boolean parameter in the addoninfo API that blizzard calls "newVersion" maybe it can help us here, but apparently it's not used. I'll have to do some tests to find out. (https://wowpedia.fandom.com/wiki/API_GetAddOnInfo)

ryankhart commented 1 year ago

Interesting. Thank you for your response. I was not aware of the file system access limitation. It seems like all the good ideas I have are already taken and done already, and whatever I can think of that doesn't exist yet is flat out infeasible.

Even sort by initial install date would be fantastic for me if not just a simple "new" badge (text or graphic) on the first login after installing a bunch of addons.

I'm not sure if I would have much use in-game for sorting by motivation date anyway, since I tend to look those over within Curseforge before installing.

That gets me thinking... maybe I should be making this feature request to Curseforge instead since alt-tabbing out to see an addon list sorted by update or install time would be a key stroke away. Then again, I'm not holding my breath for Curseforge to make any changes any time soon. I've tried WowUp, but it seems to have problems updating Curseforge addons through Wago, and I end up having to open up the Curseforge app to manage everything anyway. Plus, the "Updated At" column in WowUp is confusingly inaccurate as well.

For now, I've just realized that as long as alt-tabbing is an option, it's almost as easy to open up the AddOns folder in Windows Explorer and sort by "Date Modified" and that sorts everything how I was imagining for update time just not the initial install time.

I might poke around in the code myself to challenge myself to just get it to detect new addons, maybe in this function, UpdateList().