uninstalling Gatherer nukes Swatter and SlideBar from Auctioneer
  • using Curse Client, today i decided to uninstall Gatherer but keep Auctioneer Suite... after uninstalling Gatherer and going back into WoW i found that Swatter and SlideBar have also been nuked, even though they are components of Auctioneer


    digging deeper into this i discovered that Gatherer also includes them as components and Curse Client uninstalled them because it considered them as belonging to Gatherer rather than to Auctioneer Suite.

    http://addons-origin.cursecdn.com/files/831/443/Gatherer-5.0.0.zip
    http://addons-origin.cursecdn.com/files/909/568/AuctioneerSuite-5.21f.5579.zip

    they both contain different versions of Swatter and SlideBar... whichever gets installed last will overwrite the other one's files. As Gatherer (2014) is older than Auctioneer (2016), installing Gatherer after installing Auctioneer will overwrite the new versions from Auctioneer with the old ones delivered with Gatherer.

    As Swatter and SlideBar are installed and needed by both packages, please publish them as separate addons on Curse and add them as required (or optional) dependencies otherwise this will keep happening.
  • update: this is still happening.. i think it's an addon folder layout design issue that occurs with other addons too:

    https://www.curseforge.com/forums/wow-sites/wow-sites-feedback/129514-curse-app-deleting-necessary-library
  • Both do use the same unembedded libraries. We don't really control how the curse client works, so there's not much we can do to stop or fix it. In general, a simply reinstall will fix it.
  • yes, a reinstall will fix it.

    and both come with those same library folders... the issue is that whichever addon is installed last will overwrite those folders.

    there's currently no mechanism in the curse client/app to detect the fact that it's trying to install an older version of some lib by overwriting an already-existing newer version.

    In march when i started this thread the issue was that Gatherer had not been updated since 2014 and installing the 2014 edition of Gatherer (+those libs) would overwrite the 2016 edition of those libs that were delivered with Auctioneer and install instead the 2014 version of them.

    Gatherer was updated since then and it doesn't matter much these days when they overwrite each other but back in march 2016 this was a weird bug... and it will probably happen again when Auctioneer + Gatherer are updated out of sync with each other.
  • Agreed. One potential solution is to embed the libraries instead. Most of our libraries are embedded. There are a few which we distribute as standalone. To be honest, I remember there being good technical reasons for doing so beyond just performance and memory, but I can't recall what they were now.

    In any case, now that I am able to push new version of Gatherer as well, this should be less of an issue going forward, so there's that at least.
  • took the time to test things more... this is a comparison of recursive checksums created before installing Gatherer with the file content present after installing Gatherer:

    before = Auctioneer - included files
    after = files present after installing Gatherer

    image

    i looked through the diffs of the modified versions, there are no important changes that i can see, the only differences are their version numbers... but still enough to generate different file checksums

    e.g. for !Swatter.toc
    Auctioneer = ## Version: 7.2.5688 (TasmanianThylacine)
    Gatherer = ## Version: 7.0.3 (<%codename%>)


  • Swatter is our bug catcher, so it needs to load before any other AddOn to catch any errors at load time.

    Also, both Swatter and SlideBar have their own saved variables, which means they can't be embedded (at least, not without a major redesign).
  • i know, but i think you should publish them as a separate required/optional dependency addons and not include them directly in the Auctioneer and Gatherer zips.

    This way they won't be overwritten by Curse with older versions when Auctioneer/Gatherer are published out of sync with each other and you can publish updates for these helpers independently of Auctioneer of Gatherer.

    (also, maybe also publish LibExtraTip as an external required dependency helper too? i think that one has seen more fixes recently than all other Auctioneer files and is used by a lot of other addons)
  • We definitely won't do that, because then the vast majority of people who try to install the addon will get errors because they don't know they have to install the required dependencies as well. They are (I believe) all required, not optional.

    Or at least, we won't only publish them standalone, they will always be part of the base auc and gatherer download packages. We may also eventually publish some of our helper addons as standalone as well, but I don't think it will solve this problem.
  • how about publishing them as both as included folders and as separate addons?

    Thaoky already does that with Altoholic and its various Datastore* modules... works quite ok for him.
  • That's what I meant in the second paragraph. We may start distributing them as separate standalone addons as well. It's on my to do list, but I will need to modify our packaging scripts to do it, and I haven't had any time to work on it. It also adds some workload to the releases.

    But either way, it won't solve this problem. If the addon is included in the base package, curse will delete it if you uninstall any package that includes it, much as it does today.

    As bryksys noted above, there are good reasons why we can't just package them as embedded libraries instead.
Start a New Discussion

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

In this Discussion

privacy
norganna's addons network · tf2 warehouse · scrap warehouse · auctioneer addon · gatherer addon · addon forums · rdrct