FSharp.Data.Html.Core 8.2.0
The FSharp.Data packages contain type providers and utilities to access
common data formats (CSV, HTML, JSON and XML in your F# applications and scripts.
* FSharp.Data -- includes everything
* FSharp.Data.Http -- http types/helpers
* FSharp.Data.Csv.Core -- csv types/helpers
* FSharp.Data.Json.Core -- json types/helpers
* FSharp.Data.Html.Core -- html types/helpers
* FSharp.Data.Xml.Core -- xml types/helpers
No packages depend on FSharp.Data.Html.Core.
- Fix: HTML hexadecimal character references (
A) are now decoded correctly; previously digit-only hex refs were parsed as decimal and refs containinga–fwere left as literal text. - Fix: HTML table parsing clamps
colspan/rowspanto the HTML spec limits (1000/65534) and no longer materializes unbounded ranges — malicious/malformed span attributes previously causedOverflowException, out-of-memory, or hangs. - Fix:
HtmlNode.ToString()uses an explicit work stack, so deeply nested documents (which already parsed fine) no longer crash serialization with an uncatchableStackOverflowException. - Fix:
Httpmultipart uploads no longer truncate when a source stream returns a partial read (e.g. network/gzip streams), and multipart parts of 2GB or more no longer overflow. User-supplied body streams are now disposed even when the upload faults. - Fix:
HttpRangeheaders in the RFC 7233 open-ended (bytes=N-) and suffix (bytes=-N) forms no longer throwFormatException. - Fix:
CsvFile.RowswithskipRowsre-applies the skip on repeated enumerations; previously the second enumeration returned garbage rows or threw. - Fix:
CsvFile.Savenow quotes headers, fields containing a lone\r, and fields containing any of the document's separators, so saved CSV round-trips correctly.Save(TextWriter)no longer disposes the caller-owned writer (it flushes instead). - Fix: JsonProvider-generated constructors no longer throw
OverflowExceptionforNaN, infinite, or very largefloatvalues; such values serialize throughJsonValue.Float. - Fix: the JSON parser no longer silently swallows a stray
/as whitespace (e.g.[1, /2]previously parsed as[1, 2]). - Fix: the in-memory cache no longer overflows
Int32for expirations over ~24.8 days (which could crash the host process via an unhandled thread-pool exception), and a concurrently re-set entry can no longer be evicted by a stale expiration check. The file cache writes via temp-file-and-rename so concurrent readers never observe half-written entries. - Fix: file-watcher subscriptions are synchronized; concurrent subscribe/change events could corrupt the subscription dictionary and crash the IDE host at design time. Provider instance ids are now allocated with
Interlocked.Incrementand the design-time dispose-action set is locked. - Fix: the design-time web cache key now includes the
Encoding(and row-limit) parameters, so two providers reading the same URL with different encodings no longer share the first decode. - Fix: WorldBank no longer caches HTTP-200 error bodies (which poisoned the cache for 30 days); invalid responses now go through the retry logic. Topics whose indicators are all filtered out by
Sourcesreturn an empty collection instead of throwingKeyNotFoundException. Country/indicator codes are escaped withUri.EscapeDataString, preventing URL path/query injection. - Fix:
XmlProviderrecord creation no longer corrupts the structure when an intermediate path segment has the same name as the leaf (e.g. nested elements nameditem).
.NET 8.0
- FSharp.Data.Csv.Core (>= 8.2.0)
- FSharp.Data.Json.Core (>= 8.2.0)
- FSharp.Data.Runtime.Utilities (>= 8.2.0)
- FSharp.Core (>= 6.0.1)
.NET Standard 2.0
- FSharp.Data.Csv.Core (>= 8.2.0)
- FSharp.Data.Json.Core (>= 8.2.0)
- FSharp.Data.Runtime.Utilities (>= 8.2.0)
- FSharp.Core (>= 6.0.1)
| Version | Downloads | Last updated |
|---|---|---|
| 8.2.0 | 1 | 09/23/2026 |
| 8.1.14 | 1 | 09/23/2026 |
| 8.1.13 | 1 | 09/23/2026 |
| 8.1.12 | 2 | 09/20/2026 |
| 8.1.11 | 2 | 09/22/2026 |
| 8.1.10 | 1 | 09/23/2026 |
| 8.1.9 | 1 | 09/23/2026 |
| 8.1.8 | 2 | 09/22/2026 |
| 8.1.7 | 1 | 09/23/2026 |
| 8.1.6 | 1 | 09/23/2026 |
| 8.1.5 | 1 | 09/23/2026 |
| 8.1.4 | 1 | 09/23/2026 |
| 8.1.3 | 2 | 09/23/2026 |
| 8.1.2 | 1 | 09/23/2026 |
| 8.1.1 | 1 | 09/23/2026 |
| 8.1.0 | 1 | 09/23/2026 |
| 8.1.0-beta | 1 | 09/23/2026 |
| 8.0.0 | 1 | 09/23/2026 |
| 7.0.1 | 1 | 09/23/2026 |
| 7.0.0 | 1 | 09/23/2026 |
| 6.7.0 | 1 | 09/23/2026 |
| 6.6.0 | 1 | 09/23/2026 |
| 6.5.0 | 1 | 09/23/2026 |
| 6.4.1 | 1 | 09/23/2026 |
| 6.4.0 | 2 | 09/23/2026 |
| 6.3.0 | 1 | 09/23/2026 |
| 6.2.0 | 1 | 09/23/2026 |
| 6.1.1-beta | 2 | 09/21/2026 |
| 6.1.0-beta | 1 | 09/23/2026 |
| 6.0.1-beta002 | 1 | 09/23/2026 |
| 6.0.1-beta001 | 1 | 09/23/2026 |
| 5.0.1 | 1 | 09/23/2026 |