anchor.diff:      let parse (v:string) = SemVer.parse(v)
   
       //Versions in form of e.g 6.1.0 is inferred as datetime so we bake the json shape into the provider like this
  -    type SdkVersion = { Version:string;  }
  -    type GlobalJson = { Sdk: SdkVersion; Version:string; }
  +    type SdkVersion = { version:string;  }
  +    type GlobalJson = { sdk: SdkVersion; version:string; }
           
       let private globalJson () =
           let jsonString = File.ReadAllText "global.json"
  
positive.code:             match version with
              | NoChange _ -> failwithf "cannot run release because no explicit version number was passed on the command line"
              | Update (newVersion, currentVersion) -> 
                  // fail if current is greater or equal to the new version
                  if (currentVersion >= newVersion) then
                      failwithf "Can not release %O its lower then current %O" newVersion.Full currentVersion.Full
                  writeVersionIntoGlobalJson newVersion.Full
          | _ -> ignore()
      
  
negative.code:         
      let writeVersionIntoGlobalJson version =
          let globalJson = globalJson ()
          let newGlobalJson = { globalJson with version = version.ToString(); }
          File.WriteAllText("global.json", JsonConvert.SerializeObject(newGlobalJson, Formatting.Indented))
          printfn "Written (%s) to global.json as the current version will use this version from now on as current in the build" (version.ToString()) 
  
      let GlobalJsonVersion = parse <| globalJson().version
      
      let private getVersion (args:Commandline.PassedArguments) =
          match (args.Target, args.CommandArguments) with
  