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

Implement bootstrap as MSBuild task #23

Merged
merged 1 commit into from Mar 4, 2019
Merged

Implement bootstrap as MSBuild task #23

merged 1 commit into from Mar 4, 2019

Conversation

brantburnett
Copy link
Collaborator

Motivation

Improve performance by running bootstrap in-process and will make
implementing .NET Core builds (#18) easier.

Modifications

Add Aspekt.Bootstrap.Tasks assembly, and change Aspekt NuGet package
to use this task instead of Aspekt.Bootstrap.Host.

Add build property to allow consumers to disable automatic bootstrap,
as well as some points for build customization.

Update Bootstrap to accept a list of referenced assemblies, which are
resolved using PreregisteredAssemblyResolver. This supports bootstrap
in the obj folder instead of the bin folder, accepting the list of
assemblies located in other folders from MSBuild.

Results

Consumers have the bootstrap performing in-process. Still only
works on MSBuild Full flavor, not the MSBuild Core flavor.

Note: Test assemblies are still using Aspekt.Bootstrap.Host due to
problems with file locks being held by MSBuild in Visual Studio.

Motivation
----------
Improve performance by running bootstrap in-process and will make
implementing .NET Core builds (#18) easier.

Modifications
-------------
Add Aspekt.Bootstrap.Tasks assembly, and change Aspekt NuGet package
to use this task instead of Aspekt.Bootstrap.Host.

Add build property to allow consumers to disable automatic bootstrap,
as well as some points for build customization.

Update Bootstrap to accept a list of referenced assemblies, which are
resolved using PreregisteredAssemblyResolver. This supports bootstrap
in the obj folder instead of the bin folder, accepting the list of
assemblies located in other folders from MSBuild.

Results
--------
Consumers have the bootstrap performing in-process. Still only
works on MSBuild Full flavor, not the MSBuild Core flavor.

*Note:* Test assemblies are still using Aspekt.Bootstrap.Host due to
problems with file locks being held by MSBuild in Visual Studio.
@brantburnett brantburnett requested a review from mvpete March 3, 2019 19:48
Copy link
Owner

@mvpete mvpete left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good.

@mvpete mvpete merged commit 18bda93 into master Mar 4, 2019
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

Successfully merging this pull request may close these issues.

None yet

2 participants