Git Product home page Git Product logo

cake.recipe's Introduction

Cake.Recipe

Cake.Recipe is a set of convention based Cake scripts.

More about Cake at the Cake website.

License

Information

Stable Pre-release
GitHub Release - GitHub release
NuGet NuGet NuGet

Build Status

Develop Master
Build status Build status

Quick Links

Discussion

If you have questions, search for an existing one, or create a new discussion on the Cake GitHub repository, using the extension-q-a category.

Join in the discussion on the Cake repository

Build

To build this package we are using Cake.

On Windows PowerShell run:

.\build.ps1

On OSX/Linux run:

./build.sh

cake.recipe's People

Contributors

admiringworm avatar arturcic avatar augustoproiete avatar bjorkstromm avatar cake-contrib-bot avatar codemonkey256 avatar daveaglick avatar dependabot[bot] avatar devlead avatar gep13 avatar ghuntley avatar jericho avatar jokay avatar kcamp avatar nikhilagrawaldotnet avatar nils-a avatar nmbro avatar pascalberger avatar phillipsj avatar rasane avatar richicoder1 avatar rlittlesii avatar tjackadams avatar vhatsura avatar wozzo avatar wwwlicious avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cake.recipe's Issues

Fix loading of Reports on error

When an error is detected in DupFinder or InspectCode, the idea is that the generated report is opened. However, this simply currently opens a Windows Explorer to the incorrect location.

Should be able to not include SourceFiles - Wyam

Right now, Cake.Recipe assumes that Source Files (for API generation) are always included, but this might not actually be required. For example, in the case of ChocolateyGUI.

It should be possible to override the default.

Fix usage of Cake.Recipe on Travis

When running Cake.Recipe on Travis, the following error occurs:

https://travis-ci.org/cake-contrib/Cake.Plist/jobs/209156414#L1435

Compiling build script...
Error: Cake.Core.CakeException: An error occurred while executing build script.
  at Cake.Scripting.Mono.MonoScriptSession.Execute (Cake.Core.Scripting.Script script) [0x0007f] in <077b4364678d402f9df8bb48e9f0a543>:0 
  at Cake.Core.Scripting.ScriptRunner.Run (Cake.Core.Scripting.IScriptHost host, Cake.Core.IO.FilePath scriptPath, System.Collections.Generic.IDictionary`2[TKey,TValue] arguments) [0x00314] in <78602f51bc554886aeaf7e173d0ce2e7>:0 
  at Cake.Commands.BuildCommand.Execute (Cake.CakeOptions options) [0x0002d] in <077b4364678d402f9df8bb48e9f0a543>:0 
  at Cake.CakeApplication.Run (Cake.CakeOptions options) [0x0001d] in <077b4364678d402f9df8bb48e9f0a543>:0 
  at Cake.Program.Main () [0x000dc] in <077b4364678d402f9df8bb48e9f0a543>:0

I have been able to reproduce this error by compiling and running Cake on an Ubuntu VM, using JetBrains Rider. The issue comes down to the Cake.AppVeyor addin.

Now, some of you might be thinking, why are you using the Cake.AppVeyor addin when you are running on Travis, and this is due to the fact that you can't conditionally reference an addin, so it has to be included.

While debugging, it is the following method in the Cake.AppVeyor addin that is causing the problem:

image

Which reports the following error message:

System.Nullable [System.Int32] is not a supported constant type

The suspicion is that something in the Mono Compiler for Cake is either confused, or does not support what this method is trying to do.

Remove the need to set all project level variables

var rootDirectoryPath         = MakeAbsolute(Context.Environment.WorkingDirectory);
var solutionFilePath          = "./Source/Cake.Gem.sln";
var sourceDirectoryPath       = "./Source";
var solutionDirectoryPath     = "./Source/Cake.Gem";
var title                     = "Cake.Gem";
var resharperSettingsFileName = "Cake.Gem.sln.DotSettings";
var repositoryOwner           = "cake-contrib";
var repositoryName            = "Cake.Gem";
var appVeyorAccountName       = "cakecontrib";
var appVeyorProjectSlug       = "cake-gem";

Many of these can be inferred from the combination of the Project Name and Source folder.

These should be allowed to be set to something else, but by default, let's infer them.

Handle errors in project parsing

While trying to use Cake.Recipe on the ChocolateyGUI project, there were some issues with parsing of the Project Files, which is required for copying output files to the correct locations.

Some required information was missing, and as a result, errors were being thrown. Cake.Recipe should handle this a bit more gracefully.

Store build log in build artifacts

For certain tasks it might be helpful if a log of the build was stored for further processing (eg. I'm currently working on a Cake Addin for writing code analysis issues as comments to pull requests).

Remove the need to settings build actions

var sendMessageToGitterRoom = true;
var sendMessageToSlackChannel = true;
var sendMessageToTwitter = false;
var sendMessageToMicrosoftTeams = true;

This can be inferred from whether the environment variables have been set

Add suport for VS test

VS test can be used instead of MS test and an added benefit is that VS test can be used with OpenCover while MS test cannot.
MS test in your testing.cake does not work with OpenCover (there's a TODO comment). When I add VS test, I will make sure it works with OpenCover.

Edited to more clearly reflect what I was trying to say

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.