00:27:55  <madewokherd>there is a mailing list
00:29:03  <qwebirc51590>i know
00:29:11  <qwebirc51590>as i said, i already registered
00:29:21  <qwebirc51590>but have been waiting to get approval
00:29:55  <qwebirc51590>for a couple of days now
00:30:20  <madewokherd>did you register on friday?
00:30:33  <qwebirc51590>night of friday to saturday, yes
00:30:41  <qwebirc51590>i guess over the weekend there's no moderator looking at it
00:30:54  <qwebirc51590>which is fair
00:31:02  <qwebirc51590>i like the developer coapp pages, don't get me wrong
00:31:17  <madewokherd>the people who you'd need to discuss this with probably don't read it then either
00:31:26  <qwebirc51590>i just think there should be a more agile means of persistent interaction
00:31:55  <qwebirc51590>anyway, i've just figured out how to share files between pivots
00:32:18  <qwebirc51590>it's pretty obvious actually, and just like you'd expect
00:32:34  <qwebirc51590>just remove the unused pivots for the specific shared files
00:32:50  <qwebirc51590>so if you have pivots like [x64,v110,debug] etc...
00:33:10  <qwebirc51590>and you want to share a specific file with both debug and release for example
00:33:18  <qwebirc51590>you can do
00:33:25  <qwebirc51590>[x64,v110]
00:33:31  <qwebirc51590>and just specify the file under this pivot
00:33:32  <madewokherd>I generally do that anyway to keep it tidy
00:33:51  <qwebirc51590>yeah, it makes sense
00:34:04  <qwebirc51590>is there a way to exclude files from the wildcard search?
00:34:23  <qwebirc51590>that would be super-helpful right now
00:34:28  <madewokherd>I think so, but I don't remember off-hand what it might be
00:34:52  <qwebirc51590>i also thought it was, but i can't seem to find it in the online docs
00:35:01  <qwebirc51590>can't remember where i saw it...
00:35:32  <madewokherd>well, it's not where I'd expect
00:35:45  <madewokherd>maybe it's not possible
00:38:19  <madewokherd>there used to be a reference to the "default" autopackage stuff in the docs, that was useful and I don't know where it went
00:38:40  <madewokherd>maybe it didn't make sense to maintain, but a link into github would still be useful
00:39:35  <qwebirc51590>ah, just remembered!
00:39:42  <qwebirc51590>it was in the nuget docs...
00:39:51  <qwebirc51590>unfortunately doesn't seem like coapp supports it
00:39:55  <qwebirc51590>but it should!
00:40:00  <qwebirc51590>for consistency if nothing else
00:40:17  <qwebirc51590>in nuspec you can add an "exclude" directive
00:40:26  <qwebirc51590>where you add additional wildcard searches for files to exclude
00:40:34  <qwebirc51590>very useful
00:40:45  <qwebirc51590>anyway, i'll try to work around it for now
01:03:56  * madewokherdquit (Ping timeout: 245 seconds)
02:11:27  * qwebirc51590quit (Ping timeout: 250 seconds)
02:17:51  * madewokherdjoined
02:21:05  * madewokherdquit (Remote host closed the connection)
04:58:46  * GarrettS-MSFTquit (Read error: Connection reset by peer)
04:59:08  * GarrettS-MSFTjoined
06:01:20  * ender`joined
10:39:59  * piscisaureus_joined
10:48:48  * [[zz]]quit (Ping timeout: 240 seconds)
11:02:11  * [[zz]]joined
13:03:28  * qwebirc24588joined
13:04:13  <qwebirc24588>hey guys
13:04:23  <GarrettS-MSFT>Howdy
13:04:29  <qwebirc24588>how do you declare an empty iconUrl in coapp?
13:04:48  <qwebirc24588>seems like if i delete that line, the resulting nuspec complains that the value of iconUrl is set to the default value
13:05:15  <GarrettS-MSFT>I think I've removed that in my current development version.
13:05:45  <GarrettS-MSFT>until I release that (sometime in th next day or so), you'll have to point to *something*
13:05:50  <qwebirc24588>i see
13:05:55  <qwebirc24588>also, is there a way to exclude wildcard searches, similar to what you can do in .nuspec?
13:06:50  <qwebirc24588>in nuspec you can write: <file src="tools\**\*.*" exclude="**\*.log" />
13:06:58  <GarrettS-MSFT>Yes, in my dev version, there is.
13:07:07  <qwebirc24588>cool, looks like i would want that dev version :P
13:07:25  <GarrettS-MSFT>I have to fix one bug, and you can try it out.
13:07:38  <GarrettS-MSFT>( I literally just woke up and wandered over to my computer)
13:07:42  <qwebirc24588>ah, btw, since we're burning through issues so fast
13:07:49  <qwebirc24588>good morning :)
13:08:05  <qwebirc24588>there's a typo in the redist package "summary" metadata
13:08:25  <GarrettS-MSFT>oh?
13:08:29  <qwebirc24588>it writes "Redistributable components for for package '{0}'"
13:08:33  <qwebirc24588>there's a double "for" there
13:08:51  <qwebirc24588>at least in my release, which is the latest beta, i think?
13:09:24  <GarrettS-MSFT>it's fixed in the dev version too. :D
13:10:28  <qwebirc24588>cool, thanks :)
13:11:01  <qwebirc24588>also, did you read my earlier thoughts on alternative uses for redist packages?
13:11:16  <qwebirc24588>they could be extremely useful for c# wrappers
13:12:36  <GarrettS-MSFT>Ah, that's a rather complex subject to say the least :D
13:13:05  <GarrettS-MSFT>The redist packages are changing to be much finer grained, and are essentially overlaid on the main package
13:13:16  <GarrettS-MSFT>they don't install into a separate folder anymore
13:13:48  <GarrettS-MSFT>this makes the initial download tiny, and you only ever get the variants that you compile with
13:14:05  <qwebirc24588>yeah, i've heard some bits about it
13:14:43  <GarrettS-MSFT>managed wrappers should really be their own package
13:14:49  <qwebirc24588>agreed
13:15:09  <qwebirc24588>but their native dependencies is a different matter, no?
13:15:21  <qwebirc24588>why should they duplicate the exact same native bits?
13:15:44  <qwebirc24588>seems unnecessary and ultimately more error-prone
13:15:50  <GarrettS-MSFT>the managed wrapper creator would really only choose a couple of the DLLs that are relavent
13:16:00  <GarrettS-MSFT>and since there can be dozens of variants
13:16:37  <GarrettS-MSFT>and the DLLs and the LIB files are now together in the overlay (redist) packages
13:17:08  <qwebirc24588>but can a managed wrapper declare a dependency on these overlay redist packages?
13:17:17  <GarrettS-MSFT>and there isn't an empirically predictable way to know the exact paths to the DLLs that are found in an individual redist package
13:17:28  <GarrettS-MSFT>it *could*
13:17:46  <GarrettS-MSFT>I suppose the managed package could easily do that.
13:18:01  <GarrettS-MSFT>there's nothing in the redist package anymore that would copy the files to the output directory
13:18:13  <GarrettS-MSFT>but you could do that in a .targets file in the managed packaeg
13:18:26  <GarrettS-MSFT>that probably wouldn't be terribly difficult
13:18:35  <qwebirc24588>yeah, that would work out
13:18:54  <qwebirc24588>i mean, you would assume the managed wrapper knows a bit about the structure of dependent packages
13:19:02  <GarrettS-MSFT>it would have to
13:19:58  <GarrettS-MSFT>https://gist.github.com/fearthecowboy/6867861
13:20:21  <GarrettS-MSFT>that's all that's in a typical redist pkg for zlib
13:20:42  <GarrettS-MSFT>and zlib has ~80 redists now :S
13:20:52  <qwebirc24588>i see...
13:21:11  <qwebirc24588>it will also include the PDB files?
13:21:42  <qwebirc24588>shouldn't that go to the symbols package
13:21:43  <qwebirc24588>?
13:21:50  <GarrettS-MSFT>Yeah; we can't effectively make standalone symbols packages (there are way too many problems with that)
13:22:51  <GarrettS-MSFT>so we dropped the symbols packages completely and have the PDBs hitch a ride with the redist itself.
13:25:25  <qwebirc24588>i see
13:25:47  <qwebirc24588>so they don't really look like redist packages anymore, i guess :P
13:26:02  <qwebirc24588>at least the way you usually think about a redist package
13:26:04  <GarrettS-MSFT>no, they are really just overlay packaegts
13:26:13  <qwebirc24588>i see
13:26:34  <GarrettS-MSFT>I should just do a rename now, before I release the next version
13:27:10  <qwebirc24588>so the next beta version will already have all of this?
13:27:21  <GarrettS-MSFT>Yeah
13:27:35  <qwebirc24588>ok
13:27:46  <qwebirc24588>i'll have to rethink my strategy then
13:28:04  <qwebirc24588>i'm currently working out deployment for both a native package AND its corresponding managed wrapper
13:28:34  <qwebirc24588>and i was planning to use the old "redist" packages as a way to deploy native binaries for both the native and managed package
13:29:13  <GarrettS-MSFT>I think that you're probably better off having the managed wrapper just contain the DLLs that you need (which would be the simplest)
13:29:30  <qwebirc24588>that alone is already 40 megabytes of duplication
13:29:41  <qwebirc24588>it's a lot of DLLs for both x86 and x64 configuration, at least
13:29:47  <GarrettS-MSFT>hmm
13:29:55  <qwebirc24588>which are both supported by the managed wrapper
13:30:06  <qwebirc24588>i got it to work just fine with the current "redist" model of deployment
13:30:13  <qwebirc24588>i'll have to rethink for the new overlay model
13:30:41  <GarrettS-MSFT>well, there is a bit of secret sauce you can leverage
13:31:18  <qwebirc24588>oh?
13:31:23  <GarrettS-MSFT>inside the native packages, it includes a nuget extension dll and a msbuild extension dll
13:31:42  <GarrettS-MSFT>which together can overlay a package at build time onto the main package
13:32:14  <GarrettS-MSFT>which you could just copy the lines from the C++ .targets file into a .targets file for the managed wrapper
13:32:24  <GarrettS-MSFT>and get the same benefits
13:32:36  <qwebirc24588>i see
13:32:57  <qwebirc24588>but would i need to take a dependency on the whole native package, or just the overlays?
13:32:58  * bcraigjoined
13:33:04  <GarrettS-MSFT>just the overlays
13:33:11  <qwebirc24588>should i just include those extension DLLs into the managed package itself?
13:33:19  <GarrettS-MSFT>yeah
13:33:24  <GarrettS-MSFT>they're pretty small
13:33:29  <qwebirc24588>i see
13:33:32  <qwebirc24588>that could work
13:33:36  <GarrettS-MSFT>42k combined
13:33:51  * bcraigquit (Quit: I love my HydraIRC -> http://www.hydrairc.com <-)
13:33:52  <GarrettS-MSFT>oh, and I include nuget.exe too (800k)
13:34:09  <GarrettS-MSFT>I had to include it since it's not guaranteed to be installed anywhere
13:34:18  * bcraigjoined
13:34:36  <GarrettS-MSFT>still, less than a meg to bring everything along.
13:34:37  <qwebirc24588>i thought the current nuget model already had a way to download nuget.exe by need
13:34:46  <qwebirc24588>can't you use the same mechanisms?
13:35:09  <GarrettS-MSFT>it *does*, but... it's a big pain in the ass
13:35:42  <qwebirc24588>well, maybe for next version then, but would save 800k out of every package
13:35:56  <GarrettS-MSFT>and doens't work when the consuming developer (or build manchine) doesn't have net access
13:36:07  <GarrettS-MSFT>which can happen in corp environments where they want to control all that
13:36:15  <qwebirc24588>well, but then none of the package downloads work also
13:36:26  <GarrettS-MSFT>if they have a private repo it does
13:36:39  <GarrettS-MSFT>but the nuget.exe download was reaching out to the internet
13:36:39  <qwebirc24588>of course, but then they have to have nuget.exe as well
13:36:53  <qwebirc24588>only if you don't have it already, i think
13:37:02  <qwebirc24588>if you check that it's there, then everything is fine
13:37:13  <GarrettS-MSFT>yeah, but *knowing* that it's always going to be there is troublesome
13:37:27  <GarrettS-MSFT>and it's not *that* big that I was going to worry about it.
13:37:53  <qwebirc24588>the only issue is updating
13:38:05  <qwebirc24588>because you're stuck with whatever nuget.exe version you had at package time
13:38:28  <GarrettS-MSFT>well, it *does* pick up the newest version that it finds (so if there is one newer anywhere in the PATH or the project directory structure, it uses it)
13:38:42  <qwebirc24588>i see,
13:38:52  <qwebirc24588>well then it seems you're sorted out then :P
13:39:01  <qwebirc24588>it's just a matter of changing the default strategy
13:39:04  <GarrettS-MSFT>and if you have 15 packages, and one has a newer version it will use the absolute newest one
13:39:10  <qwebirc24588>perfect
13:39:20  <GarrettS-MSFT>same thing with the nuget and msbuild extension DLLs
13:39:27  <GarrettS-MSFT>*that* was a tricky thing to engineer...
13:39:40  <qwebirc24588>seems you got the hardest parts right, so
13:39:47  <qwebirc24588>so again, why not download them from the internet?
13:39:58  <qwebirc24588>for the offline scenario, you already sorted it out
13:40:08  <qwebirc24588>you just need to deploy nuget.exe in the right place, done
13:40:42  <GarrettS-MSFT>since the worst case scenario is that someone is in a controlled environment where they have nuget in VS (which doens't have nuget.exe) and is installing packages from a local repo
13:41:13  <GarrettS-MSFT>and/or the canonical nuget.exe is inaccessable from nuget.org
13:41:21  <qwebirc24588>well, but then they can get into trouble anyway with managed repos and package restore anyway
13:41:50  <GarrettS-MSFT>I think that's why they changed package restore in the latest version of nuget
13:42:03  <qwebirc24588>ok
13:42:25  <qwebirc24588>i guess my recommendation would be that coapp uses the same strategy as nuget
13:42:28  <qwebirc24588>whatever that is
13:42:36  <qwebirc24588>just to keep consistency and so people know what to expect
13:42:48  <GarrettS-MSFT>which is not to rely on downloading the nuget.exe at build time.
13:43:12  <qwebirc24588>but managed packages don't carry around nuget with them, do they?
13:43:17  <GarrettS-MSFT>no
13:43:27  <qwebirc24588>so how do they do it?
13:43:50  <GarrettS-MSFT>in VS, the plugin handles all of that
13:44:03  <GarrettS-MSFT>they don't hook into the msbuild process to handle restore anymore
13:44:07  <GarrettS-MSFT>they handle it in the plugin
13:44:11  <qwebirc24588> i see
13:44:18  <GarrettS-MSFT>(that doesn't work for cmdline builds tho)
13:44:27  <qwebirc24588>couldn't you hook onto that process by using an install script?
13:44:37  <qwebirc24588>one of these powershell ".ps1" files
13:44:49  <GarrettS-MSFT>I will never *ever* use an ps1 script
13:45:23  <GarrettS-MSFT>that produces a package that is not verifiable (you really have no idea what the PS1 file is going to do at install time)
13:46:52  <GarrettS-MSFT>frankly the 800k cost of reducing a 1gb package to a couple of megabytes, and having it download only the overlays for ~20mb more, was such a win, that I'm willing to drag along nuget.exe to make it work
13:47:05  <qwebirc24588>i know
13:47:30  <qwebirc24588>sorry for being a pain, just trying to push to see if we can eat the cake and have it too
13:47:40  <bcraig>can nuget.exe be run through upx?
13:47:44  <GarrettS-MSFT>no
13:47:49  <qwebirc24588>but again, if that ps1 script is automatically generated, how different is it from msbuild?
13:47:53  <GarrettS-MSFT>upx doens't do .net binaries
13:48:30  <GarrettS-MSFT>the trouble is, the consumer doesn't *know* that the ps1 is autogenerated
13:48:49  <qwebirc24588>well, they also don't know that the .props and .targets are either
13:48:54  <qwebirc24588>they're just conventions in any case
13:49:36  <GarrettS-MSFT>true enough, I guess since the msbuild can have arbitrary scripts in place anyway.
13:50:15  <GarrettS-MSFT>still, wasn't worth the effort to introduce another way for soemthing to go wrong.
13:51:24  <qwebirc24588>sure
13:51:30  <qwebirc24588>as i said, maybe for next versions ;)
13:51:42  <qwebirc24588>nuget will also evolve anyway
13:51:55  <qwebirc24588>i guess my only gripe was with replicating nuget.exe all over the place
13:52:15  <qwebirc24588>somehow that doesn't feel right, but i agree it's more of an aesthetic argument at this point
13:54:31  <GarrettS-MSFT>that does depend on what changes that NuGet does in the coming months too :D
13:55:14  <GarrettS-MSFT>ok, I gotta go wake up the kids and wife; I'll be posting the newer build today
13:55:28  <qwebirc24588>cool, good luck
14:35:07  * vpovirkjoined
14:36:33  * TReKSTeRjoined
14:37:26  * TReKiEquit (Ping timeout: 240 seconds)
14:37:26  * TReKSTeRchanged nick to TReKiE
15:05:19  * sungamijoined
16:22:54  <GarrettS-MSFT>qwebirc24588 -> I've posted the new version of the tools as a development version; you can update with update-coapptools -development -killpowershells
16:23:18  <GarrettS-MSFT>(version right now is 2.4.183.0)
17:02:27  <qwebirc24588>cool
17:02:28  <qwebirc24588>thanks
17:02:36  * stalledquit (Ping timeout: 260 seconds)
17:12:04  * stalledjoined
17:19:47  * piscisaureus_quit (Quit: ~ Trillian Astra - www.trillian.im ~)
18:11:43  * qwebirc24588quit (Ping timeout: 250 seconds)
18:16:31  * vit122joined
21:29:31  * sungami_joined
21:29:32  * sungami_quit (Changing host)
21:29:32  * sungami_joined
21:34:51  * vit122quit (Ping timeout: 245 seconds)
21:34:51  * sungamiquit (Ping timeout: 245 seconds)
22:08:41  * vpovirkquit (Remote host closed the connection)
22:58:54  * ender`quit (Quit: But there, everything has its drawbacks, as the man said when his mother-in-law died, and they came down upon him for the funeral expenses.)