A comment precisely constructed with a hyperlink immediately after the // on the same line as your #addin preprocessor directive when just using the Package Name causes nuget to fail to find the package.
See original GitHub issueWhat You Are Seeing?
When I construct my addin directive with a comment that is a hyperlink and it immediately follows the // and is on the same line as the #addin and uses the package name only like below:
#addin "Cake.WebDeploy" //https://github.com/SharpeRAD/Cake.WebDeploy
Produces the following command line messages:
Installing addins....
Unable to find package 'Cake.WebDeploy'
Nuget exited with 1
Could not find any assemblies compatible with .NETFramework,Version=v4.5
If the comment is not a hyperlink OR does not immediately start as a hyperlink in the comment, it works.
#addin "Cake.WebDeploy" // https://github.com/SharpeRAD/Cake.WebDeploy => works, noting a space immediately following the //
#addin "Cake.WebDeploy" //see https://github.com/SharpeRAD/Cake.WebDeploy => works
#addin "Cake.WebDeploy" //allows for web deploy client installation usage => works
Move the comment above the #addin directive, works.
//https://github.com/SharpeRAD/Cake.WebDeploy
#addin "Cake.WebDeploy"
If I use the longer version of the directive that gives the package URI with the comment on the same line it works.
#addin nuget:?package=Cake.WebDeploy&version=0.1.9 //https://github.com/SharpeRAD/Cake.WebDeploy
What version of Cake are you using?
0.17.0
Are you running on a 32 or 64 bit system?
64 bit
What environment are you running on? Windows? Linux? Mac?
Windows 7
Are you running on a CI Server? If so, which one?
Not yet. 😃
How Did You Get This To Happen? (Steps to Reproduce)
using a build.cake constructed like:
#addin Cake.WebDeploy //https:github.com/SharpeRAD/Cake.WebDeploy repo has usage samples
//////////////////////////////////////////////////////////////////////
// ARGUMENTS
//////////////////////////////////////////////////////////////////////
var target = Argument("target", "Default");
var configuration = Argument("configuration", "Debug");
with just build task that runs MSBUILD and executed as .\build.ps1 -t build
Output Log
Using the diagnostic logging level produces:
Installing addins...
Creating directory C:/Projects/TestProject/tools/Addins
Installing NuGet package Cake.WebDeploy...
Executing: "C:/Projects/TestProject/tools/nuget.exe" install "Cake.WebDeploy" -OutputDirectory "C:/Projects/TestProject/tools/Addins" -Source "file://github.com/SharpeRAD/Cake.WebDeploy/" -ExcludeVersion -NonInteractive -NoCache
NuGet exited with 1
Feeds used:
file://github.com/SharpeRAD/Cake.WebDeploy/
Output:
Feeds used:
file://github.com/SharpeRAD/Cake.WebDeploy/
Could not find any assemblies compatible with .NETFramework,Version=v4.5.
With the diagnostic level turned on the command line also produces:
Preparing to run build script...
Running build script...
Unable to find package 'Cake.WebDeploy'
Error: Cake.Core.CakeException: Failed to install addin 'Cake.WebDeploy'.
at Cake.Core.Scripting.ScriptProcessor.InstallAddins(ScriptAnalyzerResult ana
lyzerResult, DirectoryPath installPath)
at Cake.Core.Scripting.ScriptRunner.Run(IScriptHost host, FilePath scriptPath
, IDictionary`2 arguments)
at Cake.Commands.BuildCommand.Execute(CakeOptions options)
at Cake.CakeApplication.Run(CakeOptions options)
at Cake.Program.Main()
Issue Analytics
- State:
- Created 7 years ago
- Comments:6 (3 by maintainers)
Top GitHub Comments
Y’all are awesome! Keep up the great work!
Thank you! Didn’t see your previous comment until now (answered on my phone) 😄
We could definitely make the preprocessor parsers more strict which would remove any future confusion. Let’s keep the issue open so we don’t forget it.
Thanks!