View Poll Results: How interested are you in a WoW specific NuGet feed?
I'm interested and would use it if it was avaiable 0 0%
Not that interested 6 100.00%
Voters: 6. You may not vote on this poll

Thread Tools Display Modes
11-02-11, 12:42 PM   #1
Arxae
A Cyclonian
AddOn Author - Click to view addons
Join Date: Aug 2009
Posts: 44
NuGet for wow development

I was thinking the other day. Why not make a WoW specific nuget feed?

For those who don't know, nuget is a visual studio addon (altho there are external programs too) that acts as a package manager. These packages are usually external libraries but can be anything (pure content, or a script that changes your project)
The current official feed has thousands of packages for a variety of purposes.

I did some research and it is quite easy to set it up. It is also language independent (except for automatically adding references i think) so it could be used for both lua libraries and .NET code (and others, xml for example)

So basically, when the plan goes trough and we have the wow feed. You can start developing your addon and when you know you need a specific library you execute the command "nuget Install-Package <name>" and its in your project (you can also use a GUI if you use it inside visual studio)
It also has a complete scripting backend so you can actually add the library call as soon as you install it.
Another advantage is. If you decided you don't need the library after all you just use the command "nuget Uninstall-Package <name>" (or again, GUI) and it will completely rollback the previous installation of that package.

A third advantage is, it is easy to update: nuget Update-Package <name> (i believe nuget Update-Package witouth parameter updates all the packages, also GUI blabla )

So we have package management + a central repository with easy access + easy updating.

Now after this short explanation (google nuget, probably does a better job of explaining itself then me )

I was wondering how much interest there is in this? If enough interest is shown i might look off setting the feed up. If not, then there won't be much benefit for anyone if i continue on this

So toughts? Votes?
Shoot
  Reply With Quote
11-02-11, 12:44 PM   #2
Phanx
Cat.
 
Phanx's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2006
Posts: 5,617
Sounds like a horrible overcomplication of a system that's already in place, works just fine, and is pretty easy to use.
  Reply With Quote
11-02-11, 12:50 PM   #3
Arxae
A Cyclonian
AddOn Author - Click to view addons
Join Date: Aug 2009
Posts: 44
I probably did a bad job explaining it tho
The GUI is alot more userfriendly then the commandline ofc. But it's kinda only avaiable for visual studio (works for express too tho) where its basicly just calling up a package list, selecting the one you need and press install. Nuget handles everything and sets it up in the way the package author ment it
  Reply With Quote
11-02-11, 08:16 PM   #4
Phanx
Cat.
 
Phanx's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2006
Posts: 5,617
I've been writing and distributing WoW addons for about 5 years now, and I've never typed a single console command for any purpose remotely related to WoW addons. If someone's ever used Windows Explorer, they can learn to use TortoiseSVN in less than 5 minutes. For those who prefer other UI styles, there are dozens of other SVN clients with full-on GUIs that don't even require the user to be aware that something called the command line exists.

Also, if someone can't figure out how to use SVN externals (or Curse's .pkgmeta file) despite there being thousands of working examples (eg. other addons) and any number of websites with step-by-step instructions, they probably are not writing WoW addons either.

Finally, given that every established library has an equally established code repository from which dozens (if not hundreds, in the case of things like LibStub) of addons include it, it seems pretty unlikely that you'd ever convince any library author to move his/her code to some new "central" repository, or even to spend extra time maintaining some kind of listing in a central directory.

You could compile your own directory, of course, but you'd end up maintaining it yourself, and honestly it doesn't seem like it would be very useful. If you want to know what libraries are available, look at the addons you already use, or browse the library categories here on WoWI or over on WowAce/CurseForge.

Plus, you'd only be installing the library on your own computer. Unless your addon is very simple (in which case it probably does not benefit from using libraries anyway) you should be using some kind of version control system (usually SVN), and both WoWI and Curse offer SVN (and Git) repositories for addon authors that can automate the process of creating ZIP files for new versions of your addon and posting those ZIP files on your addon's public download page for users. It is generally a bad idea to hard-embed library files in your SVN repository. Instead, you should use the svn:externals property (and also the .pkgmeta file if you are using Curse's repository system) so that the libraries your addon use are automatically pulled in from the library's own repository. This ensures that both you and users have up-to-date copies of libraries, and that WoWI/Curse are not hosting 5000 copies of the same file.

Last edited by Phanx : 11-02-11 at 08:21 PM.
  Reply With Quote

WoWInterface » Developer Discussions » General Authoring Discussion » NuGet for wow development

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off