After these two changes, each time you tell Curse packer to pack your project, it will AUTOMATICALLY create two files:
"If your project has libraries, two zips will be made, one with libraries (main one) and one without, the -nolib version."
The -nolib version will ONLY be accessible from Curse Client and if the user has set his client to nolib mode. In that case it downloads the -nolib zip as well as all libraries (if you don't already have them).
Nolib leads to faster loading (no need for WoW to parse let's say 1500 extra files, IF the libraries had been embedded for every addon I use), less problems (ensures that the latest version of a library loads cleanly without 20 other versions running their load procedures, seeing that another version was loaded, and aborting load), and as mentioned it puts less strain on the file system too. The file system is a big database and it's the snappiest at lookups when you don't overload it with frivolous files that could be avoided.
So give it a spin kunda, it's not hard, it's just a big benefit to everyone, and you won't get user reports since there's nothing to report (the client ensures the libraries are downloaded, and it also makes clear that enabling nolib mode is for experts). From curse.com's manual download, and for 99% of users with the client, things will carry on as usual, but for that 1% they'll get an autogenerated zip without libraries. Could it be easier?
Hahaha, yeah I feel your pain. You managed to solve the -nolib boogie with the newly updated version to replace the old one. Good work!
However, why are you so afraid of a nolib version? Yes, you don't want people to whine that the libraries are missing. But they WON'T be missing, because the only way to get the nolib version is to use the curse client, and if you do that, it installs the libraries.
Perhaps you're thinking about the 3.2 LoadAddOn() bug? It doesn't matter, Blizzard is bound to fix that, because it causes errors even in their default UI without any addons (Blizzard_BattlefieldMap is load on demand).
Also think about all the successful addons with nolib versions, here are some high profile examples: Ackis Recipe List
Why not make a nolib version with the method above? There's no harm if done right. It benefits the user who has less files to load during WoW launch, less files to fill up the filesystem, less conflicts, and less strain on the Curse servers (nolib versions are smaller downloads), as well as ensuring that the library is always up to date. Also, if the reason for bundling the library was to make sure you only use supported versions of that lib (and not newer versions that may break your addon), that's futile, because if you have a newer version of that library anywhere (inside another addon or as a separate folder), that version will overwrite the old one in memory.
So those are some reasons to not fear a nolib version. :-)
I see, then that file is not properly deleted from CurseForge or WowAce (whichever upload method you're using), because Curse Clients keeps re-downloading "30200-1-nolib (Released: 2009/08/05)" which lacks the libraries.
Anyway, to make a no-lib version is very easy, just do this to the .toc file:
That's enough to make it load the libraries separately if they exist, or internally if you bundled them. You'll then just have to do something in the packer so CurseClient knows which libraries to download separately for the nolib version.
Error occured in: Global
Message: ..\AddOns\AHsearch\AHsearch.lua line 51:
Cannot find a library instance of Dewdrop-2.0.
AHsearch\AHsearch.lua:51: in main chunk