aboutsummaryrefslogtreecommitdiff
path: root/src/api
diff options
context:
space:
mode:
Diffstat (limited to 'src/api')
-rw-r--r--src/api/burn/WixToolset.BootstrapperApplicationApi/Engine.cs8
-rw-r--r--src/api/burn/WixToolset.BootstrapperApplicationApi/IBootstrapperEngine.cs8
-rw-r--r--src/api/burn/WixToolset.BootstrapperApplicationApi/IDefaultBootstrapperApplication.cs4
-rw-r--r--src/api/burn/WixToolset.BootstrapperApplicationApi/IEngine.cs6
-rw-r--r--src/api/burn/WixToolset.BootstrapperApplicationApi/README.md37
-rw-r--r--src/api/burn/WixToolset.BootstrapperApplicationApi/WixToolset.BootstrapperApplicationApi.nuspec2
-rw-r--r--src/api/burn/bextutil/README.md30
-rw-r--r--src/api/burn/bextutil/bextutil.nuspec2
-rw-r--r--src/api/wix/WixToolset.Data/ErrorMessages.cs19
-rw-r--r--src/api/wix/WixToolset.Data/README.md30
-rw-r--r--src/api/wix/WixToolset.Data/Symbols/HarvestPayloadsSymbol.cs68
-rw-r--r--src/api/wix/WixToolset.Data/Symbols/SymbolDefinitions.cs1
-rw-r--r--src/api/wix/WixToolset.Data/WarningMessages.cs6
-rw-r--r--src/api/wix/WixToolset.Data/WixToolset.Data.csproj7
-rw-r--r--src/api/wix/WixToolset.Extensibility/README.md30
-rw-r--r--src/api/wix/WixToolset.Extensibility/WixToolset.Extensibility.csproj8
16 files changed, 228 insertions, 38 deletions
diff --git a/src/api/burn/WixToolset.BootstrapperApplicationApi/Engine.cs b/src/api/burn/WixToolset.BootstrapperApplicationApi/Engine.cs
index 44d77359..25413790 100644
--- a/src/api/burn/WixToolset.BootstrapperApplicationApi/Engine.cs
+++ b/src/api/burn/WixToolset.BootstrapperApplicationApi/Engine.cs
@@ -259,9 +259,9 @@ namespace WixToolset.BootstrapperApplicationApi
259 } 259 }
260 260
261 /// <inheritdoc/> 261 /// <inheritdoc/>
262 public void SetUpdateSource(string url) 262 public void SetUpdateSource(string url, string authorizationHeader)
263 { 263 {
264 this.engine.SetUpdateSource(url); 264 this.engine.SetUpdateSource(url, authorizationHeader);
265 } 265 }
266 266
267 /// <inheritdoc/> 267 /// <inheritdoc/>
@@ -271,9 +271,9 @@ namespace WixToolset.BootstrapperApplicationApi
271 } 271 }
272 272
273 /// <inheritdoc/> 273 /// <inheritdoc/>
274 public void SetDownloadSource(string packageOrContainerId, string payloadId, string url, string user, string password) 274 public void SetDownloadSource(string packageOrContainerId, string payloadId, string url, string user, string password, string authorizationHeader)
275 { 275 {
276 this.engine.SetDownloadSource(packageOrContainerId, payloadId, url, user, password); 276 this.engine.SetDownloadSource(packageOrContainerId, payloadId, url, user, password, authorizationHeader);
277 } 277 }
278 278
279 /// <inheritdoc/> 279 /// <inheritdoc/>
diff --git a/src/api/burn/WixToolset.BootstrapperApplicationApi/IBootstrapperEngine.cs b/src/api/burn/WixToolset.BootstrapperApplicationApi/IBootstrapperEngine.cs
index c7b0c003..13702757 100644
--- a/src/api/burn/WixToolset.BootstrapperApplicationApi/IBootstrapperEngine.cs
+++ b/src/api/burn/WixToolset.BootstrapperApplicationApi/IBootstrapperEngine.cs
@@ -129,14 +129,15 @@ namespace WixToolset.BootstrapperApplicationApi
129 ); 129 );
130 130
131 /// <summary> 131 /// <summary>
132 /// See <see cref="IEngine.SetDownloadSource(string, string, string, string, string)"/>. 132 /// See <see cref="IEngine.SetDownloadSource(string, string, string, string, string, string)"/>.
133 /// </summary> 133 /// </summary>
134 void SetDownloadSource( 134 void SetDownloadSource(
135 [MarshalAs(UnmanagedType.LPWStr)] string wzPackageOrContainerId, 135 [MarshalAs(UnmanagedType.LPWStr)] string wzPackageOrContainerId,
136 [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId, 136 [MarshalAs(UnmanagedType.LPWStr)] string wzPayloadId,
137 [MarshalAs(UnmanagedType.LPWStr)] string wzUrl, 137 [MarshalAs(UnmanagedType.LPWStr)] string wzUrl,
138 [MarshalAs(UnmanagedType.LPWStr)] string wzUser, 138 [MarshalAs(UnmanagedType.LPWStr)] string wzUser,
139 [MarshalAs(UnmanagedType.LPWStr)] string wzPassword 139 [MarshalAs(UnmanagedType.LPWStr)] string wzPassword,
140 [MarshalAs(UnmanagedType.LPWStr)] string wzAuthorizationHeader
140 ); 141 );
141 142
142 /// <summary> 143 /// <summary>
@@ -219,7 +220,8 @@ namespace WixToolset.BootstrapperApplicationApi
219 /// Sets the URL to the update feed. 220 /// Sets the URL to the update feed.
220 /// </summary> 221 /// </summary>
221 void SetUpdateSource( 222 void SetUpdateSource(
222 [MarshalAs(UnmanagedType.LPWStr)] string url 223 [MarshalAs(UnmanagedType.LPWStr)] string url,
224 [MarshalAs(UnmanagedType.LPWStr)] string wzAuthorizationHeader
223 ); 225 );
224 226
225 /// <summary> 227 /// <summary>
diff --git a/src/api/burn/WixToolset.BootstrapperApplicationApi/IDefaultBootstrapperApplication.cs b/src/api/burn/WixToolset.BootstrapperApplicationApi/IDefaultBootstrapperApplication.cs
index ad51b2be..1ff12c28 100644
--- a/src/api/burn/WixToolset.BootstrapperApplicationApi/IDefaultBootstrapperApplication.cs
+++ b/src/api/burn/WixToolset.BootstrapperApplicationApi/IDefaultBootstrapperApplication.cs
@@ -37,14 +37,14 @@ namespace WixToolset.BootstrapperApplicationApi
37 /// <summary> 37 /// <summary>
38 /// Fired when the engine has begun acquiring the payload or container. 38 /// Fired when the engine has begun acquiring the payload or container.
39 /// The BA can change the source using <see cref="IEngine.SetLocalSource(String, String, String)"/> 39 /// The BA can change the source using <see cref="IEngine.SetLocalSource(String, String, String)"/>
40 /// or <see cref="IEngine.SetDownloadSource(String, String, String, String, String)"/>. 40 /// or <see cref="IEngine.SetDownloadSource(String, String, String, String, String, String)"/>.
41 /// </summary> 41 /// </summary>
42 event EventHandler<CacheAcquireBeginEventArgs> CacheAcquireBegin; 42 event EventHandler<CacheAcquireBeginEventArgs> CacheAcquireBegin;
43 43
44 /// <summary> 44 /// <summary>
45 /// Fired when the engine has completed the acquisition of the payload or container. 45 /// Fired when the engine has completed the acquisition of the payload or container.
46 /// The BA can change the source using <see cref="IEngine.SetLocalSource(String, String, String)"/> 46 /// The BA can change the source using <see cref="IEngine.SetLocalSource(String, String, String)"/>
47 /// or <see cref="IEngine.SetDownloadSource(String, String, String, String, String)"/>. 47 /// or <see cref="IEngine.SetDownloadSource(String, String, String, String, String, String)"/>.
48 /// </summary> 48 /// </summary>
49 event EventHandler<CacheAcquireCompleteEventArgs> CacheAcquireComplete; 49 event EventHandler<CacheAcquireCompleteEventArgs> CacheAcquireComplete;
50 50
diff --git a/src/api/burn/WixToolset.BootstrapperApplicationApi/IEngine.cs b/src/api/burn/WixToolset.BootstrapperApplicationApi/IEngine.cs
index bd78409b..03ceed06 100644
--- a/src/api/burn/WixToolset.BootstrapperApplicationApi/IEngine.cs
+++ b/src/api/burn/WixToolset.BootstrapperApplicationApi/IEngine.cs
@@ -156,7 +156,8 @@ namespace WixToolset.BootstrapperApplicationApi
156 /// Sets the URL to the update feed. 156 /// Sets the URL to the update feed.
157 /// </summary> 157 /// </summary>
158 /// <param name="url">URL of the update feed.</param> 158 /// <param name="url">URL of the update feed.</param>
159 void SetUpdateSource(string url); 159 /// <param name="authorizationHeader">Additional proxy authentication header. Not currently used.</param>
160 void SetUpdateSource(string url, string authorizationHeader);
160 161
161 /// <summary> 162 /// <summary>
162 /// Set the local source for a package or container. 163 /// Set the local source for a package or container.
@@ -174,7 +175,8 @@ namespace WixToolset.BootstrapperApplicationApi
174 /// <param name="url">The new url.</param> 175 /// <param name="url">The new url.</param>
175 /// <param name="user">The user name for proxy authentication.</param> 176 /// <param name="user">The user name for proxy authentication.</param>
176 /// <param name="password">The password for proxy authentication.</param> 177 /// <param name="password">The password for proxy authentication.</param>
177 void SetDownloadSource(string packageOrContainerId, string payloadId, string url, string user, string password); 178 /// <param name="authorizationHeader">Additional proxy authentication header. Not currently used.</param>
179 void SetDownloadSource(string packageOrContainerId, string payloadId, string url, string user, string password, string authorizationHeader);
178 180
179 /// <summary> 181 /// <summary>
180 /// Sets numeric variables for the engine. 182 /// Sets numeric variables for the engine.
diff --git a/src/api/burn/WixToolset.BootstrapperApplicationApi/README.md b/src/api/burn/WixToolset.BootstrapperApplicationApi/README.md
new file mode 100644
index 00000000..eeedbf9f
--- /dev/null
+++ b/src/api/burn/WixToolset.BootstrapperApplicationApi/README.md
@@ -0,0 +1,37 @@
1# WixToolset.BootstrapperApplicationApi - managed BootstrapperApplication API
2
3The `WixToolset.BootstrapperApplicationApi` package contains the SDK for building managed BootstrapperApplications.
4
5[Web Site][web] | [Documentation][docs] | [Issue Tracker][issues] | [Discussions][discussions]
6
7
8## Open Source Maintenance Fee
9
10To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an [Open Source Maintenance Fee][osmf]. While the source code is freely available under the terms of the [LICENSE][license], this package and other aspects of the project require [adherence to the Open Source Maintenance Fee EULA][eula].
11
12To pay the Maintenance Fee, [become a Sponsor](https://github.com/sponsors/wixtoolset).
13
14
15## Getting started
16
17BAFunctions are native-code DLLs (typically written in C++) that let you supplement the behavior of WixStdBA, rather than writing an entirely new BA to tweak existing BA behavior.
18
19The best way to learn is via the samples at: https://github.com/wixtoolset/wix/tree/HEAD/src/ext/Bal/Samples/bafunctions
20
21
22## Additional resources
23
24* [WiX Website][web]
25* [WiX Documentation][docs]
26* [WiX Issue Tracker][issues]
27* [WiX Discussions][discussions]
28
29
30[web]: https://www.firegiant.com/wixtoolset/
31[docs]: https://docs.firegiant.com/wixtoolset/
32[issues]: https://github.com/wixtoolset/issues/issues
33[discussions]: https://github.com/orgs/wixtoolset/discussions
34[sdk]: https://www.nuget.org/packages/WixToolset.Sdk/
35[osmf]: https://opensourcemaintenancefee.org/
36[license]: https://github.com/wixtoolset/wix/blob/main/LICENSE.TXT
37[eula]: https://github.com/wixtoolset/wix/blob/main/OSMFEULA.txt
diff --git a/src/api/burn/WixToolset.BootstrapperApplicationApi/WixToolset.BootstrapperApplicationApi.nuspec b/src/api/burn/WixToolset.BootstrapperApplicationApi/WixToolset.BootstrapperApplicationApi.nuspec
index 63acc895..73fef99b 100644
--- a/src/api/burn/WixToolset.BootstrapperApplicationApi/WixToolset.BootstrapperApplicationApi.nuspec
+++ b/src/api/burn/WixToolset.BootstrapperApplicationApi/WixToolset.BootstrapperApplicationApi.nuspec
@@ -7,6 +7,7 @@
7 <description>$description$</description> 7 <description>$description$</description>
8 <authors>$authors$</authors> 8 <authors>$authors$</authors>
9 <icon>icon.png</icon> 9 <icon>icon.png</icon>
10 <readme>README.md</readme>
10 <license type="file">OSMFEULA.txt</license> 11 <license type="file">OSMFEULA.txt</license>
11 <requireLicenseAcceptance>true</requireLicenseAcceptance> 12 <requireLicenseAcceptance>true</requireLicenseAcceptance>
12 <tags>$packageTags$</tags> 13 <tags>$packageTags$</tags>
@@ -25,6 +26,7 @@
25 <files> 26 <files>
26 <file src="$eulaTxt$" /> 27 <file src="$eulaTxt$" />
27 <file src="$iconPng$" /> 28 <file src="$iconPng$" />
29 <file src="$projectFolder$\README.md" />
28 30
29 <file src="$projectFolder$\build\WixToolset.BootstrapperApplicationApi.props" target="build\" /> 31 <file src="$projectFolder$\build\WixToolset.BootstrapperApplicationApi.props" target="build\" />
30 32
diff --git a/src/api/burn/bextutil/README.md b/src/api/burn/bextutil/README.md
new file mode 100644
index 00000000..cee7e98c
--- /dev/null
+++ b/src/api/burn/bextutil/README.md
@@ -0,0 +1,30 @@
1# WixToolset.BootstrapperExtensionApi - extend WiX Bootstrapper Engine
2
3The `WixToolset.BootstrapperExtensionApi` package contains the SDK for extending the WiX Bootstrapper Engine, better known as "burn".
4
5[Web Site][web] | [Documentation][docs] | [Issue Tracker][issues] | [Discussions][discussions]
6
7
8## Open Source Maintenance Fee
9
10To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an [Open Source Maintenance Fee][osmf]. While the source code is freely available under the terms of the [LICENSE][license], this package and other aspects of the project require [adherence to the Open Source Maintenance Fee EULA][eula].
11
12To pay the Maintenance Fee, [become a Sponsor](https://github.com/sponsors/wixtoolset).
13
14
15## Additional resources
16
17* [WiX Website][web]
18* [WiX Documentation][docs]
19* [WiX Issue Tracker][issues]
20* [WiX Discussions][discussions]
21
22
23[web]: https://www.firegiant.com/wixtoolset/
24[docs]: https://docs.firegiant.com/wixtoolset/
25[issues]: https://github.com/wixtoolset/issues/issues
26[discussions]: https://github.com/orgs/wixtoolset/discussions
27[sdk]: https://www.nuget.org/packages/WixToolset.Sdk/
28[osmf]: https://opensourcemaintenancefee.org/
29[license]: https://github.com/wixtoolset/wix/blob/main/LICENSE.TXT
30[eula]: https://github.com/wixtoolset/wix/blob/main/OSMFEULA.txt
diff --git a/src/api/burn/bextutil/bextutil.nuspec b/src/api/burn/bextutil/bextutil.nuspec
index f790e0b8..065b72a3 100644
--- a/src/api/burn/bextutil/bextutil.nuspec
+++ b/src/api/burn/bextutil/bextutil.nuspec
@@ -7,6 +7,7 @@
7 <description>$description$</description> 7 <description>$description$</description>
8 <authors>$authors$</authors> 8 <authors>$authors$</authors>
9 <icon>icon.png</icon> 9 <icon>icon.png</icon>
10 <readme>README.md</readme>
10 <license type="file">OSMFEULA.txt</license> 11 <license type="file">OSMFEULA.txt</license>
11 <requireLicenseAcceptance>true</requireLicenseAcceptance> 12 <requireLicenseAcceptance>true</requireLicenseAcceptance>
12 <tags>$packageTags$</tags> 13 <tags>$packageTags$</tags>
@@ -21,6 +22,7 @@
21 <files> 22 <files>
22 <file src="$eulaTxt$" /> 23 <file src="$eulaTxt$" />
23 <file src="$iconPng$" /> 24 <file src="$iconPng$" />
25 <file src="$projectFolder$\README.md" />
24 <file src="$projectFolder$\build\$id$.props" target="build\" /> 26 <file src="$projectFolder$\build\$id$.props" target="build\" />
25 <file src="$projectFolder$\inc\*" target="build\native\include" /> 27 <file src="$projectFolder$\inc\*" target="build\native\include" />
26 <file src="$projectFolder$\..\inc\BootstrapperExtensionTypes.h" target="build\native\include" /> 28 <file src="$projectFolder$\..\inc\BootstrapperExtensionTypes.h" target="build\native\include" />
diff --git a/src/api/wix/WixToolset.Data/ErrorMessages.cs b/src/api/wix/WixToolset.Data/ErrorMessages.cs
index ef70ebc4..23ba5151 100644
--- a/src/api/wix/WixToolset.Data/ErrorMessages.cs
+++ b/src/api/wix/WixToolset.Data/ErrorMessages.cs
@@ -248,11 +248,6 @@ namespace WixToolset.Data
248 return Message(sourceLineNumbers, Ids.DuplicateCabinetName2, "Duplicate cabinet name '{0}' error related to previous error.", cabinetName); 248 return Message(sourceLineNumbers, Ids.DuplicateCabinetName2, "Duplicate cabinet name '{0}' error related to previous error.", cabinetName);
249 } 249 }
250 250
251 public static Message DuplicateCommandLineOptionInExtension(string arg)
252 {
253 return Message(null, Ids.DuplicateCommandLineOptionInExtension, "The command line option '{0}' has already been loaded by another Heat extension.", arg);
254 }
255
256 public static Message DuplicateComponentGuids(SourceLineNumber sourceLineNumbers, string componentId, string guid, string type, string keyPath) 251 public static Message DuplicateComponentGuids(SourceLineNumber sourceLineNumbers, string componentId, string guid, string type, string keyPath)
257 { 252 {
258 return Message(sourceLineNumbers, Ids.DuplicateComponentGuids, "Component/@Id='{0}' with {2} '{3}' has a @Guid value '{1}' that duplicates another component in this package. It is recommended to give each component its own unique GUID.", componentId, guid, type, keyPath); 253 return Message(sourceLineNumbers, Ids.DuplicateComponentGuids, "Component/@Id='{0}' with {2} '{3}' has a @Guid value '{1}' that duplicates another component in this package. It is recommended to give each component its own unique GUID.", componentId, guid, type, keyPath);
@@ -295,7 +290,7 @@ namespace WixToolset.Data
295 290
296 public static Message DuplicateLocalizationIdentifier(SourceLineNumber sourceLineNumbers, string localizationId) 291 public static Message DuplicateLocalizationIdentifier(SourceLineNumber sourceLineNumbers, string localizationId)
297 { 292 {
298 return Message(sourceLineNumbers, Ids.DuplicateLocalizationIdentifier, "The localization identifier '{0}' has been duplicated in multiple locations. Please resolve the conflict.", localizationId); 293 return Message(sourceLineNumbers, Ids.DuplicateLocalizationIdentifier, "The localization identifier '{0}' has been duplicated in multiple locations. A common cause is a bundle .wixproj that automatically loads .wxl files that are intended for the bootstrapper application. You can turn off that behavior by setting the EnableDefaultEmbeddedResourceItems property to false.", localizationId);
299 } 294 }
300 295
301 public static Message DuplicateModuleCaseInsensitiveFileIdentifier(SourceLineNumber sourceLineNumbers, string moduleId, string fileId1, string fileId2) 296 public static Message DuplicateModuleCaseInsensitiveFileIdentifier(SourceLineNumber sourceLineNumbers, string moduleId, string fileId1, string fileId2)
@@ -705,16 +700,6 @@ namespace WixToolset.Data
705 return Message(null, Ids.HarvestSourceNotSpecified, "A harvest source must be specified after the harvest type and can be followed by harvester arguments."); 700 return Message(null, Ids.HarvestSourceNotSpecified, "A harvest source must be specified after the harvest type and can be followed by harvester arguments.");
706 } 701 }
707 702
708 public static Message HarvestTypeNotFound()
709 {
710 return Message(null, Ids.HarvestTypeNotFound, "The harvest type was not found in the list of loaded Heat extensions.");
711 }
712
713 public static Message HarvestTypeNotFound(string harvestType)
714 {
715 return Message(null, Ids.HarvestTypeNotFound, "The harvest type '{0}' was specified. Harvest types cannot start with a '-'. Remove the '-' to specify a valid harvest type.", harvestType);
716 }
717
718 public static Message IdentifierNotFound(string type, string identifier) 703 public static Message IdentifierNotFound(string type, string identifier)
719 { 704 {
720 return Message(null, Ids.IdentifierNotFound, "An expected identifier ('{1}', of type '{0}') was not found.", type, identifier); 705 return Message(null, Ids.IdentifierNotFound, "An expected identifier ('{1}', of type '{0}') was not found.", type, identifier);
@@ -2588,8 +2573,6 @@ namespace WixToolset.Data
2588 SameFileIdDifferentSource = 317, 2573 SameFileIdDifferentSource = 317,
2589 HarvestSourceNotSpecified = 318, 2574 HarvestSourceNotSpecified = 318,
2590 OutputTargetNotSpecified = 319, 2575 OutputTargetNotSpecified = 319,
2591 DuplicateCommandLineOptionInExtension = 320,
2592 HarvestTypeNotFound = 321,
2593 BothUpgradeCodesRequired = 322, 2576 BothUpgradeCodesRequired = 322,
2594 IllegalBinderClassName = 323, 2577 IllegalBinderClassName = 323,
2595 SpecifiedBinderNotFound = 324, 2578 SpecifiedBinderNotFound = 324,
diff --git a/src/api/wix/WixToolset.Data/README.md b/src/api/wix/WixToolset.Data/README.md
new file mode 100644
index 00000000..192e7993
--- /dev/null
+++ b/src/api/wix/WixToolset.Data/README.md
@@ -0,0 +1,30 @@
1# WixToolset.Data - fundamental data types for the WiX Toolset
2
3The `WixToolset.Data` package provides the fundamental data types used throughout the WiX Toolset.
4
5[Web Site][web] | [Documentation][docs] | [Issue Tracker][issues] | [Discussions][discussions]
6
7
8## Open Source Maintenance Fee
9
10To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an [Open Source Maintenance Fee][osmf]. While the source code is freely available under the terms of the [LICENSE][license], this package and other aspects of the project require [adherence to the Open Source Maintenance Fee EULA][eula].
11
12To pay the Maintenance Fee, [become a Sponsor](https://github.com/sponsors/wixtoolset).
13
14
15## Additional resources
16
17* [WiX Website][web]
18* [WiX Documentation][docs]
19* [WiX Issue Tracker][issues]
20* [WiX Discussions][discussions]
21
22
23[web]: https://www.firegiant.com/wixtoolset/
24[docs]: https://docs.firegiant.com/wixtoolset/
25[issues]: https://github.com/wixtoolset/issues/issues
26[discussions]: https://github.com/orgs/wixtoolset/discussions
27[sdk]: https://www.nuget.org/packages/WixToolset.Sdk/
28[osmf]: https://opensourcemaintenancefee.org/
29[license]: https://github.com/wixtoolset/wix/blob/main/LICENSE.TXT
30[eula]: https://github.com/wixtoolset/wix/blob/main/OSMFEULA.txt
diff --git a/src/api/wix/WixToolset.Data/Symbols/HarvestPayloadsSymbol.cs b/src/api/wix/WixToolset.Data/Symbols/HarvestPayloadsSymbol.cs
new file mode 100644
index 00000000..976214dd
--- /dev/null
+++ b/src/api/wix/WixToolset.Data/Symbols/HarvestPayloadsSymbol.cs
@@ -0,0 +1,68 @@
1// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
2
3namespace WixToolset.Data
4{
5 using WixToolset.Data.Symbols;
6
7 public static partial class SymbolDefinitions
8 {
9 public static readonly IntermediateSymbolDefinition HarvestPayloads = new IntermediateSymbolDefinition(
10 SymbolDefinitionType.HarvestPayloads,
11 new[]
12 {
13 new IntermediateFieldDefinition(nameof(HarvestPayloadsSymbolFields.Inclusions), IntermediateFieldType.String),
14 new IntermediateFieldDefinition(nameof(HarvestPayloadsSymbolFields.Exclusions), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(HarvestPayloadsSymbolFields.ComplexReferenceParentType), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(HarvestPayloadsSymbolFields.ParentId), IntermediateFieldType.String),
17 },
18 typeof(HarvestPayloadsSymbol));
19 }
20}
21
22namespace WixToolset.Data.Symbols
23{
24 public enum HarvestPayloadsSymbolFields
25 {
26 Inclusions,
27 Exclusions,
28 ComplexReferenceParentType,
29 ParentId,
30 }
31
32 public class HarvestPayloadsSymbol : IntermediateSymbol
33 {
34 public HarvestPayloadsSymbol() : base(SymbolDefinitions.HarvestPayloads, null, null)
35 {
36 }
37
38 public HarvestPayloadsSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(SymbolDefinitions.HarvestPayloads, sourceLineNumber, id)
39 {
40 }
41
42 public IntermediateField this[HarvestPayloadsSymbolFields index] => this.Fields[(int)index];
43
44 public string Inclusions
45 {
46 get => (string)this.Fields[(int)HarvestPayloadsSymbolFields.Inclusions];
47 set => this.Set((int)HarvestPayloadsSymbolFields.Inclusions, value);
48 }
49
50 public string Exclusions
51 {
52 get => (string)this.Fields[(int)HarvestPayloadsSymbolFields.Exclusions];
53 set => this.Set((int)HarvestPayloadsSymbolFields.Exclusions, value);
54 }
55
56 public string ComplexReferenceParentType
57 {
58 get => (string)this.Fields[(int)HarvestPayloadsSymbolFields.ComplexReferenceParentType];
59 set => this.Set((int)HarvestPayloadsSymbolFields.ComplexReferenceParentType, value);
60 }
61
62 public string ParentId
63 {
64 get => (string)this.Fields[(int)HarvestPayloadsSymbolFields.ParentId];
65 set => this.Set((int)HarvestPayloadsSymbolFields.ParentId, value);
66 }
67 }
68}
diff --git a/src/api/wix/WixToolset.Data/Symbols/SymbolDefinitions.cs b/src/api/wix/WixToolset.Data/Symbols/SymbolDefinitions.cs
index 64f51162..64c1a2a5 100644
--- a/src/api/wix/WixToolset.Data/Symbols/SymbolDefinitions.cs
+++ b/src/api/wix/WixToolset.Data/Symbols/SymbolDefinitions.cs
@@ -41,6 +41,7 @@ namespace WixToolset.Data
41 File, 41 File,
42 FileSFPCatalog, 42 FileSFPCatalog,
43 HarvestFiles, 43 HarvestFiles,
44 HarvestPayloads,
44 Icon, 45 Icon,
45 ImageFamilies, 46 ImageFamilies,
46 IniFile, 47 IniFile,
diff --git a/src/api/wix/WixToolset.Data/WarningMessages.cs b/src/api/wix/WixToolset.Data/WarningMessages.cs
index 15068a90..83d9dc51 100644
--- a/src/api/wix/WixToolset.Data/WarningMessages.cs
+++ b/src/api/wix/WixToolset.Data/WarningMessages.cs
@@ -357,11 +357,6 @@ namespace WixToolset.Data
357 return Message(null, Ids.ImplicitMergeModulePrimaryFeature, "The merge module '{0}' does not have an explicit primary feature parent specified. If the source files are linked in a different order, the primary parent feature may change. To prevent accidental changes, the primary feature parent should be set to 'yes' in one of the MergeRef/@Primary or FeatureGroupRef/@Primary locations for this component.", componentId); 357 return Message(null, Ids.ImplicitMergeModulePrimaryFeature, "The merge module '{0}' does not have an explicit primary feature parent specified. If the source files are linked in a different order, the primary parent feature may change. To prevent accidental changes, the primary feature parent should be set to 'yes' in one of the MergeRef/@Primary or FeatureGroupRef/@Primary locations for this component.", componentId);
358 } 358 }
359 359
360 public static Message InsufficientPermissionHarvestTypeLib()
361 {
362 return Message(null, Ids.InsufficientPermissionHarvestTypeLib, "Not enough permissions to harvest type library. On Windows Vista, you must either run Heat elevated, or install Windows Vista SP1 (or higher).");
363 }
364
365 public static Message InvalidAttributeCombination(SourceLineNumber sourceLineNumbers, string attrib1, string attrib2, string name, string value) 360 public static Message InvalidAttributeCombination(SourceLineNumber sourceLineNumbers, string attrib1, string attrib2, string name, string value)
366 { 361 {
367 return Message(sourceLineNumbers, Ids.InvalidAttributeCombination, "It is invalid to combine attributes {0} and {1}. The decompiled output will set attribute {2} to {3}.", attrib1, attrib2, name, value); 362 return Message(sourceLineNumbers, Ids.InvalidAttributeCombination, "It is invalid to combine attributes {0} and {1}. The decompiled output will set attribute {2} to {3}.", attrib1, attrib2, name, value);
@@ -813,7 +808,6 @@ namespace WixToolset.Data
813 UnexpectedEntrySection = 1109, 808 UnexpectedEntrySection = 1109,
814 NewComponentAddedToExistingFeature = 1110, 809 NewComponentAddedToExistingFeature = 1110,
815 DeprecatedAttributeValue = 1111, 810 DeprecatedAttributeValue = 1111,
816 InsufficientPermissionHarvestTypeLib = 1112,
817 UnclearShortcut = 1113, 811 UnclearShortcut = 1113,
818 TooManyProgIds = 1114, 812 TooManyProgIds = 1114,
819 BadColumnDataIgnored = 1115, 813 BadColumnDataIgnored = 1115,
diff --git a/src/api/wix/WixToolset.Data/WixToolset.Data.csproj b/src/api/wix/WixToolset.Data/WixToolset.Data.csproj
index e2d71e87..257b9415 100644
--- a/src/api/wix/WixToolset.Data/WixToolset.Data.csproj
+++ b/src/api/wix/WixToolset.Data/WixToolset.Data.csproj
@@ -6,8 +6,9 @@
6 <TargetFrameworks>netstandard2.0</TargetFrameworks> 6 <TargetFrameworks>netstandard2.0</TargetFrameworks>
7 <TargetFrameworks Condition=" '$(Configuration)'=='Release' ">$(TargetFrameworks);net472</TargetFrameworks> 7 <TargetFrameworks Condition=" '$(Configuration)'=='Release' ">$(TargetFrameworks);net472</TargetFrameworks>
8 <LangVersion>7.3</LangVersion> 8 <LangVersion>7.3</LangVersion>
9 <Description>WiX Toolset Data</Description>
10 <DebugType>embedded</DebugType> 9 <DebugType>embedded</DebugType>
10 <Description>WiX Toolset Data</Description>
11 <PackageReadmeFile>README.md</PackageReadmeFile>
11 <PublishRepositoryUrl>true</PublishRepositoryUrl> 12 <PublishRepositoryUrl>true</PublishRepositoryUrl>
12 <CreateDocumentationFile>true</CreateDocumentationFile> 13 <CreateDocumentationFile>true</CreateDocumentationFile>
13 <!-- TODO: This shouldn't be ignored because this is public-facing --> 14 <!-- TODO: This shouldn't be ignored because this is public-facing -->
@@ -15,6 +16,10 @@
15 </PropertyGroup> 16 </PropertyGroup>
16 17
17 <ItemGroup> 18 <ItemGroup>
19 <None Include="README.md" Pack="true" PackagePath="\" />
20 </ItemGroup>
21
22 <ItemGroup>
18 <PackageReference Include="System.IO.Compression" /> 23 <PackageReference Include="System.IO.Compression" />
19 </ItemGroup> 24 </ItemGroup>
20</Project> 25</Project>
diff --git a/src/api/wix/WixToolset.Extensibility/README.md b/src/api/wix/WixToolset.Extensibility/README.md
new file mode 100644
index 00000000..62dee501
--- /dev/null
+++ b/src/api/wix/WixToolset.Extensibility/README.md
@@ -0,0 +1,30 @@
1# WixToolset.Extensibility - extensibility interfaces for the WiX Toolset
2
3The `WixToolset.Extensibility` package provides the interfaces and base classes WiX Extensions implement to extend the WiX Toolset.
4
5[Web Site][web] | [Documentation][docs] | [Issue Tracker][issues] | [Discussions][discussions]
6
7
8## Open Source Maintenance Fee
9
10To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an [Open Source Maintenance Fee][osmf]. While the source code is freely available under the terms of the [LICENSE][license], this package and other aspects of the project require [adherence to the Open Source Maintenance Fee EULA][eula].
11
12To pay the Maintenance Fee, [become a Sponsor](https://github.com/sponsors/wixtoolset).
13
14
15## Additional resources
16
17* [WiX Website][web]
18* [WiX Documentation][docs]
19* [WiX Issue Tracker][issues]
20* [WiX Discussions][discussions]
21
22
23[web]: https://www.firegiant.com/wixtoolset/
24[docs]: https://docs.firegiant.com/wixtoolset/
25[issues]: https://github.com/wixtoolset/issues/issues
26[discussions]: https://github.com/orgs/wixtoolset/discussions
27[sdk]: https://www.nuget.org/packages/WixToolset.Sdk/
28[osmf]: https://opensourcemaintenancefee.org/
29[license]: https://github.com/wixtoolset/wix/blob/main/LICENSE.TXT
30[eula]: https://github.com/wixtoolset/wix/blob/main/OSMFEULA.txt
diff --git a/src/api/wix/WixToolset.Extensibility/WixToolset.Extensibility.csproj b/src/api/wix/WixToolset.Extensibility/WixToolset.Extensibility.csproj
index 86ee754d..f0938b6f 100644
--- a/src/api/wix/WixToolset.Extensibility/WixToolset.Extensibility.csproj
+++ b/src/api/wix/WixToolset.Extensibility/WixToolset.Extensibility.csproj
@@ -5,14 +5,18 @@
5 <PropertyGroup> 5 <PropertyGroup>
6 <TargetFrameworks>netstandard2.0</TargetFrameworks> 6 <TargetFrameworks>netstandard2.0</TargetFrameworks>
7 <TargetFrameworks Condition=" '$(Configuration)'=='Release' ">$(TargetFrameworks);net472</TargetFrameworks> 7 <TargetFrameworks Condition=" '$(Configuration)'=='Release' ">$(TargetFrameworks);net472</TargetFrameworks>
8 <Title>WiX Toolset Extensibility</Title>
9 <Description></Description>
10 <DebugType>embedded</DebugType> 8 <DebugType>embedded</DebugType>
9 <Description>WiX Toolset Extensibility</Description>
10 <PackageReadmeFile>README.md</PackageReadmeFile>
11 <PublishRepositoryUrl>true</PublishRepositoryUrl> 11 <PublishRepositoryUrl>true</PublishRepositoryUrl>
12 <CreateDocumentationFile>true</CreateDocumentationFile> 12 <CreateDocumentationFile>true</CreateDocumentationFile>
13 </PropertyGroup> 13 </PropertyGroup>
14 14
15 <ItemGroup> 15 <ItemGroup>
16 <None Include="README.md" Pack="true" PackagePath="\" />
17 </ItemGroup>
18
19 <ItemGroup>
16 <ProjectReference Include="..\WixToolset.Data\WixToolset.Data.csproj" /> 20 <ProjectReference Include="..\WixToolset.Data\WixToolset.Data.csproj" />
17 </ItemGroup> 21 </ItemGroup>
18</Project> 22</Project>