Skip to content

Releases

1.3.2

Choose a tag to compare

@FlorianRappl FlorianRappl released this 13 Nov 18:30
faab7b1

Released on Friday, November 13 2026.

What's Changed

  • Fixed fetch, XMLHttpRequest and sendBeacon sending the Accept header of a navigation (text/html,...), so that servers choosing by it answered with their web page instead of the data; it is */* unless the script sets one
  • Released 1.3.2 by @FlorianRappl in #67

Full Changelog: v1.3.1...v1.3.2

1.3.1

Choose a tag to compare

@FlorianRappl FlorianRappl released this 09 Nov 20:28
3e2fa89

Released on Sunday, November 8 2026.

What's Changed

  • Fixed GetAttachedFileName passing on folders from Content-Disposition; it now gives a plain file name @michaelthyregod
  • Fixed a cookie Expires date with a day the month does not have failing the page load @michaelthyregod
  • Fixed the cookie provider failing for good once cookies were set or read from several threads at a time, as when a page loads its resources @michaelthyregod
  • Fixed RemoveCookies returning no cookies and RemoveAllCookies not updating the cookie file @michaelthyregod
  • Fixed parallel stores to the persistent HTTP cache failing the page load with an IOException @michaelthyregod
  • Added trimming and Native AOT compatibility (IsAotCompatible) for the .NET 8 and .NET 10 targets @michaelthyregod
  • Released 1.3.1 by @FlorianRappl in #63

Full Changelog: v1.3.0...v1.3.1

1.3.0

Choose a tag to compare

@FlorianRappl FlorianRappl released this 06 Nov 12:41
10076c4

Released on Friday, November 6 2026.

What's Changed

  • Updated RtcIceServer.Urls to RtcIceServerUrls, as urls takes a single URL or several
  • Improved XMLHttpRequest to read the body in chunks: progress fires about every 50 ms with loaded and total from Content-Length, and responseText grows while LOADING
  • Improved json() with a nesting limit of 512 for deeply nested documents (#55) @michaelthyregod
  • Fixed the order of the final XMLHttpRequest events: readystatechange to DONE, then load (or error, abort, timeout), then loadend
  • Fixed the ErrorEvent of a WebSocket not telling the problem, so that its Message and Error were of no use
  • Fixed fetch and XMLHttpRequest reading file: URLs from documents that are not file: themselves (#53) @michaelthyregod
  • Fixed navigator.clipboard being null for script without a platform, when pages test for its members; it denies access now
  • Fixed a cookie Path with control characters being accepted, which could add lines to the cookie file (#54) @michaelthyregod
  • Added Request, also taken by fetch, the constructors of Headers and Response and the members of Headers changing it
  • Added entries, keys, values and forEach to Headers and FormData
  • Added clone to Response
  • Added the options of navigator.locks.request, which are the mode, ifAvailable, steal and signal
  • Added the IndexedDB of the standard for scripts (requests with events, transactions, structured values, keys of all kinds, key ranges, indexes and cursors), as indexedDB was a synchronous API for strings that the usual ways of using it never got an event from; the API for .NET code remains, without the names for scripts
  • Added ProgressEvent with its script constructor, fired by XMLHttpRequest for loadstart, progress, load, error, abort, timeout and loadend
  • Added upload to XMLHttpRequest with its loadstart, progress, load and loadend for a request with a body
  • Added Blob and File with their script constructors, text, arrayBuffer, bytes, stream and a slice taking negative indices
  • Added FileReader with readAsText, readAsDataURL, readAsArrayBuffer, readAsBinaryString, abort and the progress events of the File API
  • Added the stream classes: ReadableStream (with getReader, cancel, tee, pipeTo and pipeThrough), WritableStream with its writer, TransformStream, and the CountQueuingStrategy and ByteLengthQueuingStrategy
  • Added TextEncoderStream and TextDecoderStream, and CompressionStream and DecompressionStream for gzip, deflate and deflate-raw (deflate needs .NET 8)
  • Added body, arrayBuffer, bytes and blob to Response, delivering the data as it arrives, and body to Request; a ReadableStream can be the body of both
  • Added cookieEnabled, hardwareConcurrency, maxTouchPoints and webdriver to navigator
  • Added AbortController and AbortSignal, also taken by fetch as its signal, which stops a download and rejects reading the body afterwards
  • Added Notification with requestPermission and an injected delivery platform (#41)
  • Added showOpenFilePicker and showSaveFilePicker with writable file handles (#42)
  • Added sync and periodicSync on service worker registrations with an injected scheduler (#44)
  • Added pushManager on service worker registrations with an injected transport (#45)
  • Released 1.3.0 by @FlorianRappl in #59

New Contributors

Full Changelog: v1.2.2...v1.3.0

1.2.2

Choose a tag to compare

@FlorianRappl FlorianRappl released this 01 Nov 23:54
999578d

Released on Sunday, November 1 2026.

What's Changed

  • Fixed fetch giving the response of the requester; it gives a Response with status, statusText, ok, url, redirected, headers, text(), and json()
  • Added FormData (from a form or set by script) to send with fetch and XMLHttpRequest
  • Released 1.2.2 by @FlorianRappl in #52

Full Changelog: v1.2.1...v1.2.2

1.2.1

Choose a tag to compare

@FlorianRappl FlorianRappl released this 30 Oct 22:43
0d4dc3e

Released on Friday, October 30 2026.

What's Changed

  • Fixed getItem and setItem missing on localStorage and sessionStorage
  • Released 1.2.1 by @FlorianRappl in #51

Full Changelog: v1.2.0...v1.2.1

1.2.0

Choose a tag to compare

@FlorianRappl FlorianRappl released this 23 Oct 07:25
0f03965

Released on Friday, October 23 2026.

What's Changed

  • Added an HTTP cache for the requesters (WithHttpCache)
  • Added IoOptions.CreateTemporary and IoOptions.CreatePersistent
  • Added StorageManager on navigator.storage (#38)
  • Added minimal service workers on navigator.serviceWorker (#39)
  • Added navigator.sendBeacon (#43)
  • Added reporting with network error capture and ReportingObserver (#46)
  • Added RTCPeerConnection with data channels and a loopback platform (#40)
  • Added navigator.permissions with a policy gating clipboard, geolocation, and persist (#47)
  • Added navigator.language and navigator.languages (NavigatorOptions.Languages) (#49)
  • Released 1.2.0 by @FlorianRappl in #50

New Contributors

  • @lahma made their first contribution in #48

Full Changelog: v1.1.0...v1.2.0

1.1.0

Choose a tag to compare

@FlorianRappl FlorianRappl released this 01 Aug 00:49
a0b77b1

Released on Friday, July 31 2026.

What's Changed

  • Updated to use a minimum of AngleSharp 1.5
  • Fixed domain handling in cookies #36
  • Added the Navigator from AngleSharp.Js
  • Added the XmlHttpRequester from AngleSharp.Js
  • Added fetch for requesting resources
  • Added localStorage and sessionStorage for web storages
  • Added indexedDB using an IndexedDB implementation
  • Added caches using a Cache API implementation
  • Added BroadcastChannel
  • Added locks using the LockManager web locks spec
  • Added Clipboard providing the web clipboard API
  • Added Geolocation providing the web geolocation API
  • Released 1.1.0 by @FlorianRappl in #37

Full Changelog: 1.0.0...v1.1.0

1.0.0

Choose a tag to compare

@github-actions github-actions released this 15 Jan 16:59

Released on Sunday, January 15 2023.

  • Updated to use AngleSharp 1.0

0.17.0

Choose a tag to compare

@github-actions github-actions released this 31 May 22:40

Released on Tuesday, May 31 2022.

  • Updated to use AngleSharp 0.17
  • Dropped .NET Framework 4.6

0.16.0

Choose a tag to compare

@github-actions github-actions released this 12 Jun 23:28
8f7d788

Released on Sunday, June 6 2021.

  • Updated to use AngleSharp 0.16