Skip to content

Net 5 library that allows you to speed up a build process for faster iterations

Notifications You must be signed in to change notification settings

MaxEden/FastBuilder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FastBuilder

FastBuilder is a Net 5 library that allows you to speed up a build process for faster iterations. FastBuilder is based on the idea of omitting the full build process that includes checking nuget packages and references. FastBuilder parses the output of a common "dotnet build" command and retrieves the full dependency graph and all roslyn command arguments. After the initial dotnet build, FastBuilder watches for changes to the source and dependencies. If only source files have been changed or added, FastBuilder changes the arguments and calls only the final roslyn command, omitting all preparation steps.

There are no dependencies, so it can be integrated into any project with minimal impact. However, FastBuilder does assume that the dotnet cli tools are installed and working correctly.

Rough measurements for a hello world type of program where the sources are being changed by the introduction of new types

regular dotnet build

Finished dotnet build first in 2088,2467 ms

Finished dotnet build second in 1131,4602 ms

fast builder

FastBuilder: -> H:\GITS\Mandarin\FastBuilder\TestHelloWorld\bin\Debug\net5.0\TestHelloWorld.dll
Finished First build in 2139,0242 ms

FastBuilder: fast -> H:\GITS\Mandarin\FastBuilder\TestHelloWorld\bin\Debug\net5.0\TestHelloWorld.dll
Finished Second build 0 in 844,705 ms

FastBuilder: fast -> H:\GITS\Mandarin\FastBuilder\TestHelloWorld\bin\Debug\net5.0\TestHelloWorld.dll
Finished Second build 1 in 871,3692 ms

FastBuilder: fast -> H:\GITS\Mandarin\FastBuilder\TestHelloWorld\bin\Debug\net5.0\TestHelloWorld.dll
Finished Second build 2 in 891,5943 ms

FastBuilder: fast -> H:\GITS\Mandarin\FastBuilder\TestHelloWorld\bin\Debug\net5.0\TestHelloWorld.dll
Finished Second build 3 in 862,7999 ms

FastBuilder: fast -> H:\GITS\Mandarin\FastBuilder\TestHelloWorld\bin\Debug\net5.0\TestHelloWorld.dll
Finished Second build 4 in 936,6807 ms

About

Net 5 library that allows you to speed up a build process for faster iterations

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages