Rash thoughts about .NET, C#, F# and Dynamics NAV.


"Every solution will only lead to new problems."

Wednesday, 21. May 2014


Changes in the FAKE contribution workflow

Filed under: F#,FAKE - F# Make — Steffen Forkmann at 10:20 Uhr

Two months ago I started to use the RELEASE_NOTES.md files feature in FAKE to describe FAKE’s own changelog. It’s working pretty well with FSharp.Formatting and the whole process got much easier for me. One of the intersting side effects is that I didn’t use the develop branch any more. Pre-release packages can be pushed directly from master.

So in order to make it easier for new contributors I will follow standard git workflow and remove the develop branch completely. Please send your pull request directly to the master branch.

Tuesday, 20. May 2014


Regression in Dynamics NAV 2013 R2 string formatting

Filed under: Diverses — Steffen Forkmann at 9:43 Uhr

We are still porting one of our products from Dynamics NAV 2009 R2 (Classic Client) to NAV 2013 R2 and found another strange issue:

On Dynamics NAV 2009 R2 Classic client (Build 6.00.33494):

FORMAT(13.5671,0,'<Integer,4>'); ==> 0013,5671
FORMAT(13.5671,0,'<Precision,0:0><Integer,4>'); ==> 0014

But on Dynamics NAV 2013 R2 (Build 7.10.36281) we get:

FORMAT(13.5671,0,'<Integer,4>'); ==> 0013,5671
FORMAT(13.5671,0,'<Precision,0:0><Integer,4>'); ==> 0013

Not sure if it is that important for practical purposes, but it’s breaking some of our unit tests. ;-(

Monday, 12. May 2014


Weird floating point arithmetic in Dynamics NAV 2013 R2

Filed under: Dynamics NAV 2009,Dynamics NAV 2013,Navision — Steffen Forkmann at 13:42 Uhr

At the moment we are porting one of our products from Dynamics NAV 2009 R2 (Classic Client) to NAV 2013 R2. We have thousands of unit tests and most of them work out of the box.
But now my colleague Matthias Schäfer found a very strange issue. Consider this snippet:

On Dynamics NAV 2009 R2 Classic client (Build 6.00.33494) we get the same message twice:

Dynamics NAV 2009 R2

But on Dynamics NAV 2013 R2 (Build 7.10.36281) we get:

Dynamics NAV 2013 R2

Dynamics NAV 2013 R2

Weird, isn’t it?

Update 1

This is what the Dynamics NAV compiler is emitting:

We assume this is what the Dynamics NAV compiler should do:

Tuesday, 22. April 2014


FAKE 2.14.0 released – OpenCover edition

Filed under: Diverses — Steffen Forkmann at 9:43 Uhr

Today I released FAKE 2.14 with some smaller bug fixes and improvements. The biggest feature is that we now have support for OpenCover and ReportGenerator. A big thanks to all of the 65 contributors.

What’s new?

Getting started

If you new to FAKE you should read the getting started guide or clone the F# ProjectScaffold.

Go and grab the bits

Feel free to contact me if you need help for the upgrade.

Monday, 31. March 2014


FAKE 2.12.0 released – NancyFx edition

Filed under: F#,FAKE - F# Make — Steffen Forkmann at 13:16 Uhr

FAKE logo

Today I released FAKE 2.12 with a lot of small bug fixes and improvements. The biggest feature is that we now use NancyFx for FAKE.Deploy. A big thanks to all of the 60 contributors.

What’s new?

  • Add getDependencies to NugetHelper #373
  • Add more F# friendly functions for IO.Path #374
  • SourceLink support #345
  • NancyFx instead of ASP.NET MVC for FAKE.Deploy #376 – big thanks to @MorganPersson
  • Allows to execute processes as unit tests #379
  • Allow to run MsTest test in isolation #367
  • Fixed Nuget.packSymbols #366
  • Fixed bug in SemVer parser #364
  • New title property in Nuspec parameters #359
  • Added option to disabled FAKE’s automatic process killing #357
  • Better AppyVeyor integration #353, #345
  • Added ability to define custom MSBuild loggers #352
  • Fix for getting the branch name with Git >= 1.9 #351
  • Added functions to write and delete from registry #350
  • NUnit NoThread, Domain and StopOnError parameters #349
  • Add support for VS2013 MSTest #346
  • Lots of small fixes

Getting started

If you new to FAKE you should read the getting started guide or clone the F# ProjectScaffold.

Go and grab the bits

Feel free to contact me if you need help for the upgrade.

Tags: ,

Sunday, 23. February 2014


FAKE 2.10 released – more stuff for Dynamics NAV, Windows Azure, FTP, Nuget

Filed under: Diverses — Steffen Forkmann at 15:41 Uhr

FAKE logoToday I released FAKE 2.10 with a lot of small bug fixes and improvements. A big thanks to all of the 55 contributors.

What’s new?

  • Support for Nuget Install
  • AzureHelper allows to control local Azure Emulator
  • Several fixes in FAKE.Deploy (#333)
  • Split Dynamics NAV object files (#335)
  • Support for Dynamics NAV test results (#336)
  • Export objects support for Dynamics NAV (#332)
  • Include/exclude traits support for xUnit (#329)
  • ISSExpress helper allows to host websites in IIS Express (#323)
  • FTP Helpers allow file upload (#322)
  • Breaking Change: OctoHelper contains Packages parameter instead of “PackageVersionOverride” (#320)

Getting started

If you new to FAKE you should read the getting started guide or clone the F# ProjectScaffold.

Go and grab the bits

Feel free to contact me if you need help for the upgrade.

https://pharmacieenlignefr.com

Sunday, 2. February 2014


FAKE 2.8 released – DotCover and TestFlight support

Filed under: Diverses — Steffen Forkmann at 15:53 Uhr

FAKE logoToday I released FAKE 2.8 with support for JetBrains DotCover and TestFlight.

It’s really awesome to see that this project is getting used more and more. We now have 51 contributors including people from GitHub and Xamarin. A big thanks to all of you.

What’s new?

  • DotCover support #318 (docs)
  • TestFlight support #304 (docs)
  • FAKE got a logo #308
  • Explicit references in NuGet params #295
  • Using F# 3.1.1 -> removed the F# compiler bundle from the repository
  • Removed dependency to Newtonsoft.JSON from FakeLib.dll
  • Ability to pass in F# Interactive Options, namely -d:MONO #302
  • “Goto github sources” is working from the docs #309
  • FSharp.Formatting task used here
  • Fix: ILMergeHelper uses correct TargetKind #312
  • Fix: Path resolution issue in MSBuildHelper #315
  • Fix: Better logging for git and mspec tasks
  • Fix: Make SQL Server Helper compatible with .NET 4.0 #243
  • Improvements in the docs

Getting started

If you new to FAKE you should read the getting started guide or clone the F# ProjectScaffold.

Go and grab the bits

Feel free to contact me if you need help for the upgrade.

Monday, 20. January 2014


FAKE 2.6 released – support for TravisCI

Filed under: Diverses — Steffen Forkmann at 13:24 Uhr

TravisCI support in FAKEToday I released FAKE 2.6 with support for TravisCI and much better mono support.

What’s new?

  • Fix: FileIncludes use stable order #270 
  • Fix: ReleaseNotes parsing was improved #275
  • Feature: Some new git helpers
  • Using latest SharpZipLib
  • Fix: Fixed all unit tests on mono
  • Feature: runWithRetry helper #289
  • Fix: FAKE is more careful when it tries to kill processes #291
  • FAKE has TravisCI build where it builds itself

Getting started

If you new to FAKE you should read the getting started guide or clone the F# ProjectScaffold.

Go and grab the bits

Feel free to contact me if you need help for the upgrade.

Wednesday, 15. January 2014


FSharp.Configuration 0.1 released

Filed under: C#,F#,Informatik — Steffen Forkmann at 13:40 Uhr

As part of a longer process of making FSharpx better maintainable I created a new project called FSharp.Configuration. It contains type providers for the configuration of .NET projects:

Yaml type provider

Additonal information:

Please tell me what you think.

Tuesday, 14. January 2014


FSharpx.Collections 1.9 released

Filed under: .NET,C#,F#,FAKE - F# Make,Informatik — Steffen Forkmann at 11:29 Uhr

I’m happy to annouce the new release of the FSharpx.Collections package on nuget.

Most important changes:

Please tell me if it works for you.