FlubuCore v4.0.3.0 Release Notes
-
- FlubuCore interactive mode which offers target tab completition, options tab completition, toogle targets and options, executed commands history and more.
- Targets: Execute another target within target with AddTarget.
protected override void ConfigureTargets(ITaskContext context) { var exampleB = context.CreateTarget("TargetB") .Do(Something); context.CreateTarget("TargetA") .AddCoreTask(x => x.Build()) .AddTarget(exampleB) //Target is executed in the order it was added .Do(JustAnExample); } public void JustAnExample(ITaskContext context) { ... }
Target: Add tasks to target with a foreach loop.
protected override void ConfigureTargets(ITaskContext context) { var solution = context.Properties.Get<VSSolution>(BuildProps.Solution); context.CreateTarget("Pack") .ForEach(solution.Projects, (item, target) => { target.AddCoreTask(x => x.Pack().Project(item.ProjectName)) .Do(JustAnExample, item); }); }
private void JustAnExample(ITaskContext context, VSProjectInfo vsProjectInfo) { //// Do something. }
- Override existing options or add additional options to tasks through console <sup> Let's say you have target</sup> ```c# context.CreateTarget("Build")` .AddCoreTask(x => x.Build("MySolution.sln").Configuration("Release");
๐ and you wan't to build solution in debug configuration.
You could just write in console
๐
flubu build /o:configuration=Debug
or
๐
flubu build /o:c=Debug
flubu would execute
๐
dotnet build MySolution.sln -c Debug
- ๐ฒ sequentiall logging in asynchronus executed tasks and targets.
context.CreateTarget("Test") .SetAsDefault() .SequentialLogging(true) .AddCoreTaskAsync(x => x.Pack()) .AddCoreTaskAsync(x => x.Pack()) .DependsOnAsync(test2, test3);
- ๐ New plugins are available: Chocolatey, Gitter and Slack plugin.
- โ Added Get solution infromation as task context extension
- โ Added support for multiple Musts on target
- ๐ Logs have now indentation for better readability.
- ๐ Logs have now timemark (actions that takes more than 2sec).
- ๐ Improved build summary in logs.
- ๐ Loged build finish time and build duration
- ๐ Fixed GitVersionTask
- Targets: Must now accepts optional error message parameter.
- โก๏ธ UpdateNetCoreTask can now write version quality(version suffix)
- FetchBuildVersionFromFile can now fetch version quality(version suffix).
- ๐ฒ FetchBuildVersionFromFile improved logging.
- โ Added options to set versions in dotnet tasks (dotnet build, dotnet pack, dotnet publish)
- LoadSoluationTask returns solution information
- โ Added WithArgument to IRunProgramTask interface
- ๐ Fixed check of unknown targets.
- FlubuCore interactive mode which offers target tab completition, options tab completition, toogle targets and options, executed commands history and more.