Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Oct 21 15:29
    yazeedobaid synchronize #2609
  • Oct 21 15:25
    yazeedobaid synchronize #2609
  • Oct 21 14:10
    yazeedobaid synchronize #2609
  • Oct 20 09:48
    yazeedobaid synchronize #2609
  • Oct 20 09:43
    yazeedobaid synchronize #2609
  • Oct 20 08:42
    yazeedobaid synchronize #2609
  • Oct 20 08:32
    yazeedobaid synchronize #2609
  • Oct 19 15:26
    yazeedobaid closed #2610
  • Oct 19 15:15
    yazeedobaid edited #2606
  • Oct 19 15:15
    yazeedobaid edited #2606
  • Oct 19 15:11
    yazeedobaid synchronize #2609
  • Oct 19 12:59
    yazeedobaid synchronize #2609
  • Oct 18 15:15
    yazeedobaid synchronize #2609
  • Oct 18 13:22
    yazeedobaid synchronize #2609
  • Oct 16 19:17
    sergey-tihon closed #2604
  • Oct 16 19:17
    sergey-tihon commented #2604
  • Oct 16 19:14
    sergey-tihon closed #2605
  • Oct 16 19:14
    sergey-tihon commented #2605
  • Oct 14 17:19
    dsyme commented #2609
  • Oct 14 16:47
    yazeedobaid synchronize #2609
Matthias Dittrich
@matthid
By the way this was already discussed here: fsharp/FAKE#2100
DavidSSL
@DavidSSL
My googlefu wasn't powerful enough :(
Matthias Dittrich
@matthid
To be honest it took me quite a while to find it as well, even knowing that it existed somewhere :D
DavidSSL
@DavidSSL
:D
Masashi Fujita
@objectx
CreateProcess.warnOnExitCode have a signature string -> CreateProcess<unit> -> CreateProcess<unit>. Is it intended?
I think this caused by the eprintf "%s" msg line. Type inference engine fills the <_> with <unit>.
Matthias Dittrich
@matthid
@objectx Probably not intended
BahKoo
@BahKoo
My MSBuild.build targets are significantly faster when I set DisableInternalBinLog to true but I don't understand what I'm losing by disabling this. Does anyone know?
Masashi Fujita
@objectx
I've created the fsharp/FAKE#2534 for relaxing CreateProcess.warnOnExitCode usage.
Andreas Vilinski
@vilinski

I have a library targeting appnetcore3.1 in a private nuget feed. Having trouble using it from fake.
the source line in paket.dependencies looks like this:

// [ FAKE GROUP ]
group Build
    storage none
    source https://jfrog.private.com/artifactory/api/nuget/nuget-repo username: "%ARTIFACTORY_USER%" password: "%ARTIFACTORY_USER_PASS%"
    nuget Fake.DotNet.Cli
    nuget Fake.IO.FileSystem
    nuget Fake.Core.Target
    nuget MyLib // <- libray from private nuget source

I suspect the package handling in fake is outsorced to paket. It actually wors for me in another solution.
The problem with fake is - the resulting intellisense_lazy.fsx file doesn't include my library and fake complains about unknown namespace in open statement in the build script. I have no clue why it should not work out of the box...
Is there any way how I can diagnose this?

Andreas Vilinski
@vilinski
I think it is also not yet usable with "nuget: MyLib" from F# preview?
Matthias Dittrich
@matthid
@vilinski You need to target netstandard2.0
Andreas Vilinski
@vilinski
@matthid I can't - there are some apis used, not included in netstandard2.0.
Matthias Dittrich
@matthid
The current situation is that you then cannot use it in fake or need to add a workaround (for example using reflection)
Tomas Jansson
@mastoj

Hello. Trying to run some xunit tests, but I get this error:

Script reported an error:
-> BuildFailedException: Target 'Test' failed.
-> One or more errors occurred. (trying to start a .NET process on a non-windows platform, but mono could not be found. Try to set the MONO environment variable or add mono to the PATH.)
-> trying to start a .NET process on a non-windows platform, but mono could not be found. Try to set the MONO environment variable or add mono to the PATH.

My target looks like:

open Fake.Core
open Fake.DotNet
open Fake.DotNet.Testing
open Fake.IO.Globbing.Operators
open Fake.IO.FileSystemOperators
open System.IO

Target.create "Test" (fun _ ->
    Trace.log " --- Running tests --- "
    !! (testDir @@ "**/Release/bin/*.Tests.dll")
    |> XUnit2.run (fun p -> { p with HtmlOutputPath = Some (testDir @@ "xunit.html") })
)

Isn't that supposed to run on dotnet core?

Tomas Jansson
@mastoj
I figured I could use DotNet.test, but how do I get the html output if I use that?
kariem-ali
@kariem-ali
Hi everyone!
I am trying to run tests targeting multiple test frameworks (nunit, vstest, xunit) as part of the same target. They all have failing tests. I want them all to run, but it seems whichever runs first (with failing tests) causes Fake to shortcircuit and report a failed build without running the other tests targeting the other frameworks. Is there a way to make fake run them all? (I am running Fake 4 on full .NET framework)
using:
Fake.DotNet.Testing.VSTest
Fake.DotNet.Testing.NUnit3
kariem-ali
@kariem-ali
Fake.DotNet.Testing.XUnit2
Andreas Vilinski
@vilinski
Hi, does anybody know how to solve the error here? Can't build a project anymore. I have latest fake-cli and paket:
There was a problem while setting up the environment:
-> Error during parsing of '/home/bla/myrepo/paket.lock'.
-> failed to parse line '      System.Text.Json (>= 5.0) - restriction: || (>= net461) (&& (< net5.0) (>= netstandard2.1)) (&& (>= netstandard2.0) (< netstandard2.1))' (invalid parameter 'net5.0' after >= or < in '< net5.0) (>= netstandard2.1)) (&& (>= netstandard2.0) (< netstandard2.1))') (Could not parse 'framework: restriction: || (>= net461) (&& (< net5.0) (>= netstandard2.1)) (&& (>= netstandard2.0) (< netstandard2.1))' as key/value pairs.)
        -  invalid parameter 'net5.0' after >= or < in '< net5.0) (>= netstandard2.1)) (&& (>= netstandard2.0) (< netstandard2.1))'
        -  Could not parse 'framework: restriction: || (>= net461) (&& (< net5.0) (>= netstandard2.1)) (&& (>= netstandard2.0) (< netstandard2.1))' as key/value pairs.
        -> invalid delimiter at position 22
mecusorin
@mecusorin_twitter
@vilinski this is a paket message, nothing to do with fake. Try again in fsprojects/Paket gitter channel
mecusorin
@mecusorin_twitter
@vilinski most probably, Paket doesn't recognize the net5.0 from the restrictions tokens
Andreas Vilinski
@vilinski
thank you
yes, the problem is surely related to net5.0. But the installed paket tool has no problem with producing and parsing paket.lock file.
can it be fake-cli uses own, older paket version, different from installed one?
latest alpha of fake-cli did it, don't know why
Return null
@VoidAsync_twitter
It looks like Fake is referencing Paket 5.251, I think Paket 6 is needed for .net5 support
But I could be wrong - Paket 5.250 release notes say allow net5.0 moniker
Return null
@VoidAsync_twitter
But I am seeing similar issues as Andreas. Dotnet Paket tool works fine, but seeing crash from Paket.Lockfile.Parse being called from Fake.Runtime\FakeRuntime.fs
Florian Verdonck
@nojaf
How does <== work again for targets?
Cody Johnson
@Shmew
It defines the list of targets as needing to run before the target to the left
Florian Verdonck
@nojaf
Gotcha, thanks
Justin Wick
@JustinWick
@VoidAsync_twitter: I'm likewise having problems with fake, and it's referencing an old paket, despite the fact that I'm using paket 6.0-beta1.
I even tried upgrading to the latest fake alpha, that did not fix it.
Justin Wick
@JustinWick

I upgraded my project to use net5.0. When I run dotnet fake --version:
FAKE 5 - F# Make (5.20.4-alpha.1642+vsts.cc9c2d6e6d38fde57081cbefcd940f247425f904)
Paket.Core: 5.251.0

When I run dotnet fake build:
\build.fsx (8,5)-(8,9): Error FS0039: The namespace or module 'Fake' is not defined."

Also more errors about 'Farmer' is not defined, 'Target' is not defined, 'Path' is not defined, etc...

I'm using the SAFE Stack Template from here:
https://github.com/SAFE-Stack/SAFE-template

Is it missing some kind of assembly reference I need for 5.0? I changed my paket.dependencies to have group Build use framework "net5.0", maybe that's a mistake?

Ah, that seems to be the issue, Fake doesn't want to run in net5.0 yet, changing it back to netstandard2.0 works.
Damian Reeves
@DamianReeves
Is this still the correct area to ask questions about Fake? No activity since November seems strange
Balinth
@Balinth
This is just not such a widely used tool (which is a shame) that there is always discussion. If you look back, there was a similiar jump from july to october.
Daniel Blendea
@bdaniel7

Hi,
I'm trying to pass the version parameter to DotNet.publish, like

|> DotNet.publish (fun p ->
{ p with
OutputPath = Some publishPath
MSBuildParams = { p.MSBuildParams with
Properties = [ "/p:Version" version ]
}
Configuration = DotNet.BuildConfiguration.fromString "Release" })

but I get an error.

Daniel Blendea
@bdaniel7
Is there a way to send the version to the publish target?
Balinth
@Balinth
Well what is the error? at first sight Properties = [ "/p:Version" version ] is kind of suspect, aren't you missing a comma (meaning one item that is a tuple) or a semi colon (meaning two items)?
seanamosw
@seanamosw
@bdaniel7 Try
    "ProjectPath"
    |> DotNet.publish (fun p ->
        { p with
            OutputPath = Some "OutputPath" }
        |> DotNet.Options.withAdditionalArgs [ "-p:Version=1.0.0" ])
gsuuon
@gsuuon:matrix.org
[m]
Is there any way to get fake to be less noisy? I've passed in quiet verbosity settings to the task, and set a custom trace listener but I still get the command the task executes outputted. Is it possible to just see when a task is ran and if there are errors?
Balinth
@Balinth
@gsuuon:matrix.org you could add the commands as secrets
nexaddo
@nexaddo
Quck question, I'm migrating to Fake 5 and have some common fsx scripts that are declared as modules. For the Fake Modules that are used in those common fsx files, do I need a #r "paket: ... //" header in each fsx, or just all the required modules in the main build.fsx?
Gauthier Segay
@smoothdeveloper

Unsupported log file format. Latest supported version is 9, the log file has version 13.

anyone hitting this after updating to latest VS 16.10?

Gauthier Segay
@smoothdeveloper
DisableInternalBinLog = true work around this issue
nexaddo
@nexaddo

I'm having problems with docopt
In build.cmd I have:

dotnet fake run build.fsx -t "%*"

Calling it like:

.\build.cmd Test --tier=an-dev --clientId=guid --key=<secret> --subscriptionId=guid --output

In my build.fsx I have:

let cli = """
usage: prog [options]

options:
    --tier=TIER                           environment to build against [default: an-dev]
    --config=CONFIG                       dotnet Debug build configuration
    --artifact-resource-group-name=NAME   azure resource group to use for ARM deployment
    --artifact-storage-account-name=NAME  azure storage account to use for ARM templates
    --clientId=ID                         azure jenkins service principal id
    --key=KEY                             azure jenkins service principal secret
    --subscriptionId=ID                   azure subscription id
    --tenantId=ID                         azure AD tenant id
    --no-sass-token                       don't use sass token for ARM deployment
    --gen-reports                         generate coverage report
    --output                              print ARM template output
"""

I can't get it to work with a target and use docopt

What am I missing here?