https://c2rsetup.officeapps.live.com/c2r/downloadVS.aspx?sku=community&channel=Stable&version=VS18
https://c2rsetup.officeapps.live.com/c2r/downloadVS.aspx?sku=enterprise&channel=Stable&version=VS18
| class EncodingRepairer | |
| REPLACEMENTS = { | |
| "€" => "€", "‚" => "‚", "„" => "„", "…" => "…", "ˆ" => "ˆ", | |
| "‹" => "‹", "‘" => "‘", "’" => "’", "“" => "“", "â€" => "”", | |
| "•" => "•", "–" => "–", "—" => "—", "Ëœ" => "˜", "â„¢" => "™", | |
| "›" => "›", "Å“" => "œ", "Å’" => "Œ", "ž" => "ž", "Ÿ" => "Ÿ", | |
| "Å¡" => "š", "Ž" => "Ž", "¡" => "¡", "¢" => "¢", "£" => "£", | |
| "¤" => "¤", "Â¥" => "¥", "¦" => "¦", "§" => "§", "¨" => "¨", | |
| "©" => "©", "ª" => "ª", "«" => "«", "¬" => "¬", "®" => "®", |
| =Navigating= | |
| visit('/projects') | |
| visit(post_comments_path(post)) | |
| =Clicking links and buttons= | |
| click_link('id-of-link') | |
| click_link('Link Text') | |
| click_button('Save') | |
| click('Link Text') # Click either a link or a button | |
| click('Button Value') |
| C:\projects\FSharpPlus>fsi buildDocs.fsx | |
| TARGET ---> CleanDocs | |
| TARGET ---> Build | |
| Microsoft (R) Build Engine version 16.4.0+e901037fe for .NET Core | |
| Copyright (C) Microsoft Corporation. All rights reserved. | |
| Microsoft (R) Build Engine version 16.4.0+e901037fe for .NET Core | |
| Copyright (C) Microsoft Corporation. All rights reserved. | |
| Restore completed in 46.69 ms for C:\projects\FSharpPlus\src\FSharpPlus\FSharpPlus.fsproj. |
| C:\projects\FSharpPlus (adz-document-generic-ops -> adz) | |
| λ dotnet fsi buildDocs.fsx | |
| TARGET ---> CleanDocs | |
| TARGET ---> Build | |
| Microsoft (R) Build Engine version 16.4.0+e901037fe for .NET Core | |
| Copyright (C) Microsoft Corporation. All rights reserved. | |
| Microsoft (R) Build Engine version 16.4.0+e901037fe for .NET Core | |
| Copyright (C) Microsoft Corporation. All rights reserved. |
| Extracted Paket.Restore.targets to: /home/adam/projects/libs/FSharpPlus/.paket/Paket.Restore.targets (Can be disabled with PAKET_SKIP_RESTORE_TARGETS=true) | |
| The last restore is still up to date. Nothing left to do. | |
| run ReleaseDocs | |
| Building project with version: LocalBuild | |
| Shortened DependencyGraph for Target ReleaseDocs: | |
| <== ReleaseDocs | |
| <== All | |
| <== BuildDocs | |
| <== BuildPackage | |
| <== CopyNuGet |
| Processing help: /home/adam/projects/libs/FSharpPlus/docsrc/tools/../content/type-choicet.fsx | |
| Processing help: /home/adam/projects/libs/FSharpPlus/docsrc/tools/../content/type-endo.fsx | |
| Processing help: /home/adam/projects/libs/FSharpPlus/docsrc/tools/../content/abstraction-monoid.fsx | |
| SourceError | |
| ((0, 0),(0, 0),Error, | |
| "The type 'OptionalAttribute' is required here and is unavailable. You must add a reference to assembly 'System.Runtime.InteropServices, Version=4.2.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.") | |
| SourceError | |
| ((2, 0),(2, 6),Error, | |
| "Unexpected keyword 'static' in definition. Expected incomplete structured construct at or before this point or other token.") | |
| Processing help: /home/adam/projects/libs/FSharpPlus/docsrc/tools/../content/type-free.fsx |
| module Async | |
| let delayBy (timespan : TimeSpan) a = | |
| async { | |
| do! Async.Sleep (Convert.ToInt32 timespan.TotalMilliseconds) | |
| return! a | |
| } | |
| let rec repeat a = | |
| async { |
| type Response = { StatusCode : int } | |
| // Simulate sync action, that returns count of records synced | |
| let syncRecords upToTimestamp = ResultT <| async.Return (Ok 3) | |
| // Simulate bookmark function, sending last timestamp synced to a rest api | |
| let recordTimestamp upToTimestamp = async { | |
| return {StatusCode = 200 } | |
| } |
| // Simulate sync action, that returns count of records synced | |
| let syncRecords upToTimestamp : ResultT<Async<Result<int,string>>> = ResultT <| async.Return (Ok 3) | |
| let recordTimestampUsingFSData body : Async<FSharp.Data.HttpResponse> = | |
| FSharp.Data.Http.AsyncRequest | |
| ( "https://myapi.example.com/sync" | |
| , httpMethod = "POST" | |
| , body = TextRequest (sprintf "%A" body) // actually is json | |
| , silentHttpErrors = true ) |