Merge pull request #2757 from dotnet/pakrym/shared-refs

Trim non split assemblies from published `refs` folder.
This commit is contained in:
Pavel Krymets 2016-05-02 11:14:20 -07:00
commit 5d164b5a2f
11 changed files with 352 additions and 166 deletions

View file

@ -694,30 +694,40 @@ namespace Microsoft.DotNet.Cli.Build
deps = JObject.ReadFrom(reader);
}
var target = deps["targets"][deps["runtimeTarget"]["name"].Value<string>()];
var library = target.Children<JProperty>().First();
var version = library.Name.Substring(library.Name.IndexOf('/') + 1);
if (newName == null)
string version = null;
foreach (JProperty target in deps["targets"])
{
library.Remove();
var targetLibrary = target.Value.Children<JProperty>().FirstOrDefault();
if (targetLibrary == null)
{
continue;
}
version = targetLibrary.Name.Substring(targetLibrary.Name.IndexOf('/') + 1);
if (newName == null)
{
targetLibrary.Remove();
}
else
{
targetLibrary.Replace(new JProperty(newName + '/' + version, targetLibrary.Value));
}
}
else
if (version != null)
{
library.Replace(new JProperty(newName + '/' + version, library.Value));
}
library = deps["libraries"].Children<JProperty>().First();
if (newName == null)
{
library.Remove();
}
else
{
library.Replace(new JProperty(newName + '/' + version, library.Value));
}
using (var file = File.CreateText(depsFile))
using (var writer = new JsonTextWriter(file) { Formatting = Formatting.Indented })
{
deps.WriteTo(writer);
var library = deps["libraries"].Children<JProperty>().First();
if (newName == null)
{
library.Remove();
}
else
{
library.Replace(new JProperty(newName + '/' + version, library.Value));
}
using (var file = File.CreateText(depsFile))
using (var writer = new JsonTextWriter(file) { Formatting = Formatting.Indented })
{
deps.WriteTo(writer);
}
}
}