Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Incompatibility and Workflow Complications when Directly Referencing .NET Libraries in WiX Projects #7757

Open
nickhoeferpickpro opened this issue Sep 26, 2023 · 1 comment
Assignees

Comments

@nickhoeferpickpro
Copy link

Scenario and Benefits:

Developers, especially those aiming to create reusable libraries of custom actions, face significant hurdles and inefficiencies due to the inability to directly incorporate .NET libraries or NuGet packages into WiX projects. Achieving a seamless integration between .NET libraries and WiX projects is pivotal, as it would allow the creation of reusable and easily distributable libraries of custom actions, streamlining the development workflow, and reducing both project complexity and the potential for errors.

Current Approach:

To leverage .NET libraries in WiX projects currently, a “wrapper” or an intermediary .NET Class Library project is required to host the .NET libraries and custom actions. This intermediary project must be compiled separately, and the resulting DLL is then referenced in the WiX project. This process, although functional, results in increased development time, complexity, and the necessity to manage additional projects merely acting as bridges between WiX and .NET environments.

Desired Feature:

I would like WiX to natively support and recognize .NET libraries and NuGet packages, thereby enabling direct referencing of reusable libraries of custom actions in WiX projects without the necessity for intermediary projects or “wrappers”.

Specifics:
Direct inclusion of .NET libraries and NuGet packages in .wixproj should be seamless and without compatibility errors.
Robust compatibility mechanisms should be developed within WiX to allow direct and seamless interaction with .NET dependencies, eliminating the need for “wrapper” projects and enhancing reusability and distribution of custom actions libraries.

Current Behavior:

Direct inclusion of .NET package references in a .wixproj results in compatibility errors, as .wixproj is fundamentally native and does not natively understand or interact well with .NET package references.
Example Error:
Error NU1202: Package <PackageName> <Version> is not compatible with native (native,Version=v0.0). Package <PackageName> <Version> supports: net7.0 (.NETCoreApp,Version=v7.0)

Expected Behavior:

Developers should ideally be able to reference .NET libraries and NuGet packages directly in WiX projects without the need for intermediary projects.
A more seamless integration between WiX and .NET ecosystems would significantly streamline the development workflow, reduce project complexity, and minimize the potential for errors.

Additional Context:

The development of reusable libraries of custom actions is pivotal for many developers, and the current method proves to be cumbersome, non-scalable, and developer-unfriendly, especially for projects with extensive dependencies and custom actions. A solution to this problem is crucial for improving the overall developer experience and promoting more coherent, manageable, and scalable project structures.

@robmen robmen self-assigned this Oct 17, 2023
@robmen robmen removed the triage label Oct 17, 2023
@NinjaCross
Copy link

This would be extremely usefull indeed !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants