@joebigelow / wix / commits / 33f14b79

Fix crossplat pathing and other small issues in extension caching

Rob Mensching committed Jun 10, 2020 at 07:44 UTC 33f14b793d674355f87f0224f5be3329c3c12d56
4 files changed +11 -15
src/WixToolset.Core.ExtensionCache/CachedExtension.cs
+2 -2
@@ -2,9 +2,9 @@
2
3 namespace WixToolset.Core.ExtensionCache
4 {
5 - public class CachedExtension
5 + internal class CachedExtension
6 {
7 - internal CachedExtension(string id, string version, bool damaged)
7 + public CachedExtension(string id, string version, bool damaged)
8 {
9 this.Id = id;
10 this.Version = version;
src/WixToolset.Core.ExtensionCache/ExtensionCacheManager.cs
+5 -9
@@ -19,16 +19,16 @@ namespace WixToolset.Core.ExtensionCache
19 /// <summary>
20 /// Extension cache manager.
21 /// </summary>
22 - public class ExtensionCacheManager
22 + internal class ExtensionCacheManager
23 {
24 public string CacheFolder(bool global) => global ? this.GlobalCacheFolder() : this.LocalCacheFolder();
25
26 - public string LocalCacheFolder() => Path.Combine(Environment.CurrentDirectory, @".wix\extensions\");
26 + public string LocalCacheFolder() => Path.Combine(Environment.CurrentDirectory, ".wix", "extensions");
27
28 public string GlobalCacheFolder()
29 {
30 var baseFolder = Environment.GetEnvironmentVariable("WIX_EXTENSIONS") ?? Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);
31 - return Path.Combine(baseFolder, @".wix\extensions\");
31 + return Path.Combine(baseFolder, ".wix", "extensions");
32 }
33
34 public async Task<bool> AddAsync(bool global, string extension, CancellationToken cancellationToken)
@@ -84,12 +84,8 @@ namespace WixToolset.Core.ExtensionCache
84 }
85 else if (!String.IsNullOrEmpty(extensionVersion)) // looking for an explicit version of an extension.
86 {
87 - var extensionFolder = Path.Combine(cacheFolder, extensionId, extensionVersion);
88 - if (Directory.Exists(extensionFolder))
89 - {
90 - var present = ExtensionFileExists(cacheFolder, extensionId, extensionVersion);
91 - found.Add(new CachedExtension(extensionId, extensionVersion, !present));
92 - }
87 + var present = ExtensionFileExists(cacheFolder, extensionId, extensionVersion);
88 + found.Add(new CachedExtension(extensionId, extensionVersion, !present));
89 }
90 else // looking for all versions of an extension or all versions of all extensions.
91 {
src/WixToolset.Core.ExtensionCache/ExtensionCacheManagerCommand.cs
+2 -2
@@ -116,7 +116,7 @@ namespace WixToolset.Core.ExtensionCache
116
117 private async Task<bool> AddExtensions(ExtensionCacheManager cacheManager, CancellationToken cancellationToken)
118 {
119 - var success = true;
119 + var success = false;
120
121 foreach (var extensionRef in this.ExtensionReferences)
122 {
@@ -129,7 +129,7 @@ namespace WixToolset.Core.ExtensionCache
129
130 private async Task<bool> RemoveExtensions(ExtensionCacheManager cacheManager, CancellationToken cancellationToken)
131 {
132 - var success = true;
132 + var success = false;
133
134 foreach (var extensionRef in this.ExtensionReferences)
135 {
src/WixToolset.Core/ExtensibilityServices/ExtensionManager.cs
+2 -2
@@ -123,14 +123,14 @@ namespace WixToolset.Core.ExtensibilityServices
123
124 private IEnumerable<string> CacheLocations()
125 {
126 - var path = Path.Combine(Environment.CurrentDirectory, @".wix\extensions\");
126 + var path = Path.Combine(Environment.CurrentDirectory, ".wix", "extensions");
127 if (Directory.Exists(path))
128 {
129 yield return path;
130 }
131
132 path = Environment.GetEnvironmentVariable("WIX_EXTENSIONS") ?? Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);
133 - path = Path.Combine(path, @".wix\extensions\");
133 + path = Path.Combine(path, ".wix", "extensions");
134 if (Directory.Exists(path))
135 {
136 yield return path;