-
Notifications
You must be signed in to change notification settings - Fork 158
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update test and build infrastructure #430
Conversation
can you rebase and look into the.version3 branch please? I think we already upgraded to nunit3 somewhere... |
Maybe related? fsharp/fsharp#684 |
@matthid I checked out version3 after you merged the razor split PR to start this, what am I supposed to rebase onto? |
@cloudRoutine sorry my bad, everything is fine.. the mobile view ... |
Can you merge/compare with #416 there we have the working version of the nunit upgrade :) |
I've already covered more than that (targets and fsproj config changes so builds don't break on machines with vs2017 installed) and my PR takes into account all the changes to accommodate the Razor split. I didn't move all of the FsUnit tests to the latest syntax, just the stuff that had to changed. |
2d25327
to
26c7782
Compare
6e94e84
to
b529526
Compare
@cloudRoutine I don't think I'm ready for the VS2017 upgrade ;). Can we make it compatible with both? |
With both I mean the latest VS2015 and VS2017... |
the vs 2017 install puts msbuild at a different path so the targets don't resolve properly, fixing the target resolution so it works in light of this change doesn't affect the vs 2015 compatibility. |
dce443a
to
a3c7783
Compare
a3c7783
to
381216e
Compare
@matthid now it's good on windows with vs2017 and the CI, the annoying part is done so now the real work can begin 😺 |
@cloudRoutine perfect, thanks. Can you please merge the related conflicting PR so I don't have to resolve conflicts later? |
just don't merge that one, what's the point of doing so? |
? |
I think some changes are conflicting and some are not. I don't want to miss some... |
there's no real benefit to the other one anymore, it's outdated compared to this, you'd just be creating a headache for yourself trying to merge the other one and there wouldn't be an advantage to doing so |
@cloudRoutine sorry but did you review and compare? For example FSUnit was upgraded and extracted via paket files... |
Ok you did the same. I'm confused :) |
yea I reviewed it, that's how I knew there was no point in using the other one anymore 😉 |
I'm wondering why did you not start from there? |
because it was a PR onto master a year ago and you just merged some big changes into version3 and it was old enough that most of what had been done would just need to be redone |
also I had no idea it even existed XD |
OK :). Anyway thanks for this. Should this be merged or do you want do do some other things? |
merged please, I want to do the other stuff in smaller stages. this is big enough as it is |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some questions asked. But overall looks good.
<PropertyGroup> | ||
<FSharpTargetsPath>$(MSBuildExtensionsPath32)\..\Microsoft SDKs\F#\4.0\Framework\v4.0\Microsoft.FSharp.Targets</FSharpTargetsPath> | ||
</PropertyGroup> | ||
</When> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should this be the first when clause ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I changed the order based on other fsproj I found that were successfully building on Travis, the projects are all targeting FSharp.Core 4.0 so it makes sense to me.
> | ||
> Here's some example code: | ||
> | ||
> return shell_exec("echo $input | $markdown_script"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why change this test?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
whoops
redirects: on | ||
|
||
nuget FSharp.Data | ||
nuget FAKE | ||
nuget CommandLineParser | ||
nuget FSharp.Core | ||
nuget FSharp.Core 4.0.0.1 redirects:force |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I assume upgrading this did lead to errors (same as FSharp.Compiler.Service)?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
there were some binding redirect issues that popped up like NUnit was the problem initially
NUGET
remote: https://api.nuget.org/v3/index.json
CommandLineParser (1.9.71)
FAKE (4.56)
FSharp.Compiler.Service (2.0.0.6)
FSharp.Core (4.0.0.1) - redirects: force
FSharp.Data (2.3.2)
I didn't upgrade FCS though
build.fsx
Outdated
// Excludes = [] } | ||
// |> MSBuildRelease "" "Build" | ||
// |> ignore | ||
//) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we enable this later?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nah, forgot to delete it
@@ -1,3 +1,5 @@ | |||
System.IO.Directory.SetCurrentDirectory __SOURCE_DIRECTORY__ | |||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just wondering... Does this need to be on top now?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ideally setting the directory should be the first thing that you do, i changed the way it's done because the old environment way doesn't work on netcore
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think after opening the namespaces works as well and makes the code shorter :).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you have to load the packages before you can open the namespaces, you need to set the dir if you want to load the packages properly, this is to account for the weird working dir that fsi is set to automatically when you use it in VS
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To be honest I don't even remember why its needed (I'm pretty sure the author of this). Now you are :)
> | ||
> Here's some example code: | ||
> | ||
> return shell_exec("echo $input | $markdown_script"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe your editor prevents you from using tab characters? But they are required in this repository for some tests...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yup that's what it was
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just be careful with this setting in this repository. Whitespace (at least within strings) matters a lot here :)
05e2a93
to
21eb2f4
Compare
Some cleanup and build process enhancement and an upgrade to NUnit3