Skip to content

Releases: tmenier/Flurl

Flurl.Http 4.0.2

17 Jan 21:26
Compare
Choose a tag to compare
  • BUGFIX: GetJsonAsync + ResponseHeadersRead was failing (#794)
  • BUGFIX: Clientless + relative URLs wasn't prepending default base URL (#803)

New Contributors

Full Changelog: Flurl.Http.4.0.1...Flurl.Http.4.0.2

Flurl.Http.Newtonsoft 0.9.1

10 Jan 02:19
Compare
Choose a tag to compare

BUGFIX: UseNewtonsoft + clientless pattern, default serializer was used to serialize request body (#783)

Flurl.Http 4.0.1

10 Jan 02:13
Compare
Choose a tag to compare

BUGFIX: Custom serializer not used on request body with clientless pattern (#783)

Flurl.Http.Newtonsoft 0.9.0

14 Dec 05:10
Compare
Choose a tag to compare

Official beta release of companion lib for Flurl.Http 4.0+ that allows Newtonsoft.Json to continue to be used despite its removal, easing backward compatibility with 3.x.

  • Brings back NewtonsoftJsonSerializer from 3.x for use in 4.0 and beyond
  • Brings back non-generic, dynamic-returning extension methods from 3.x:
    • GetJsonAsync() and GetJsonListAsync()
    • ReceiveJson() and ReceiveJsonList()
    • FlurlHttpException.GetResponseJsonAsync
  • Easy registration via IFlurlClientBuilder.UseNewtonsoft() and IFlurlClientCache.UseNewtonsoft()

Flurl.Http 4.0.0

14 Dec 04:58
Compare
Choose a tag to compare

This is a significant release with many breaking changes. Please read carefully. An upgrade guide has also been added to the documentation.

Big stuff, all BREAKING:

  • Removed dependency on Newtonsoft.Json in favor of System.Text.Json (#517)
  • Removed all non-generic, dynamic-returning JSON methods (#699)
  • Huge overhaul of Flurl's configuration system to make it more fluent and more DI-friendly (#770)
    • "Factories" are removed, replaced by fluent configuration of HttpClient and HttpMessageHandlers
    • FlurlHttp static object completely overhauled, now mostly just responsible for client caching associated with "clientless" usage pattern
    • Configure and ConfigureRequest methods renamed to WithSettings
  • Overhaul of Event Handlers (#784)
    • No longer available on Settings
    • Fluent extension methods still work

Smaller stuff, all BREAKING:

  • Settings.ConnectionLeaseTimeout removed (#703)
  • WithClient extension methods removed (#590)
  • CancellationToken moved to last arg everywhere that it isn't (#702)
  • AllowHttpStatus now takes int instead of HttpStatusCode args (#785)
  • GetStreamAsync defaults to unbuffered behavior (#630)
  • IFlurlClient.Settings and IFlurlRequest.Settings container objects are read-only
  • IFlurlClient.HttpMessageHandler removed
  • FlurlCall.RedirectedFrom moved to IFlurlRequest (accessible via FlurlCall.Request.RedirectedFrom)
  • FlurlResponse ctor takes a FlurlCall instead of an HttpResponseMessage
  • FlurlRequest.Client is no longer instantiated on demand by just referencing the property. If it hasn't been set explicitly, or (more common) by calling FlurlClient.Request, it will remain null until the request is sent
  • IHttpSettingsContainer renamed to ISettingsContainer, and its Headers property moved to (new) IHeadersContainer (#773)
  • FakeHttpMessageHandler, TestHttpClientFactory, and TestFlurlHttpSettings types all removed

Non-breaking enhancements and bug fixes:

  • First-class support for persisting and restoring CookieJar (#758)
  • HTTP 2.0 support via Settings.HttpVersion (#639)
  • AllowRealHttp now reverts to original HttpClient, eliminating certain quirks (#683)
  • Flurl no longer disposes request message automatically, per best practices (#650)
  • Removed circular redirect detection (#714)
  • Bugfix: ShouldHaveCalled false negative with URL ending with ? (#721)
  • Bugfix: extra space added to Content-Type headers (#740)

Flurl 4.0.0

13 Dec 22:51
Compare
Choose a tag to compare
  • AppendQueryParams method/overloads (#688), thx @Marusyk!
  • BUGFIX: SetQueryParams with collection, duplicate keys should append not overwrite (#370)
  • BUGFIX: False negatives with Url.IsValid (#462)

Flurl.Http.Newtonsoft 0.9.0-pre3

08 Dec 23:02
Compare
Choose a tag to compare
Pre-release
  • Added dynamic-returning FlurlHttpException.GetResponseJsonAsync
  • Added README

Full Changelog: Flurl.Http.4.0.0-pre7...Flurl.Http.Newtonsoft.0.9.0-pre3

Flurl.Http 4.0.0-pre7

08 Dec 05:50
Compare
Choose a tag to compare
Flurl.Http 4.0.0-pre7 Pre-release
Pre-release
  • BREAKING: Event handler changes (#784)
  • BREAKING: AllowHttpStatus now takes int instead of HttpStatusCode args (#785)
  • BUGFIX: User-Agent header didn't copy over from HttpClient correctly (#778)

Full Changelog: Flurl.Http.Newtonsoft.0.9.0-pre2...Flurl.Http.4.0.0-pre7

Flurl.Http.Newtonsoft 0.9.0-pre2

05 Dec 16:53
Compare
Choose a tag to compare
Pre-release

Initial release of companion lib for Flurl.Http 4.0+ that allows Newtonsoft.Json to continue to be used despite its removal, easing backward compatibility with 3.x.

  • Implementation of ISerializer based on Newtonsoft.Json.
  • Support for dynamics via GetJson and GetJsonList (previously removed from Flurl.Http).
  • Easy registration via IFlurlClientBuilder.UseNewtonsoft() and IFlurlClientCache.UseNewtonsoft().

Flurl.Http.Newtonsoft 0.9.0-pre1

05 Dec 16:31
Compare
Choose a tag to compare
Pre-release
Flurl.Http.Newtonsoft.0.9.0-pre1

coverage threshold should be met now