Skip to content

Releases: hummingbird-project/hummingbird

v0.10.0

16 Apr 10:38
c90715c
Compare
Choose a tag to compare
  • Added persist framework for storing key/value pairs across requests
  • Can replace headers set in HBResponseGenerator using request.header.replaceOrAdd. Previously this would output both headers
  • Added HBRequest.remoteAddress

v0.9.0

07 Apr 10:22
07325fb
Compare
Choose a tag to compare
  • Using hummingbird-core v0.8.0
  • Add HBRouterMethods.group to create a new HBRouterGroup off current setup of methods.
  • Add HBRouterHandler type for encapsulating everything a route needs along with its handle function.
  • Add HBParameters.require that throws an error if parameter does not exist.
  • Create HBRequest.parameters object if it doesn't already exist
  • Add HBEnvironment.shared for global access to environment variables
  • Fix parsing of multiple cookies, previously only the first cookie was parsed

v0.8.1

01 Apr 07:15
Compare
Choose a tag to compare

Revert HBApplication.Logger back to a var

v0.8.0

30 Mar 14:00
Compare
Choose a tag to compare
  • Uses v0.7.0 of hummingbird-core
  • Logging changes. Errors are logged as either debug or warning depending on whether they are recognised by Hummingbird
  • Add logLevel to HBApplication.Configuration
  • logLevel if not set explicitly will use LOG_LEVEL environment variable

v0.7.1

25 Mar 11:18
Compare
Choose a tag to compare
  • Add availability options for platforms iOS, tvOS and macCatalyst. PR #60 from @SoftwareEngineerChris
  • Return errors back to HummingbirdCore instead of a processed HBHTTPResponse
  • Add ws and wss schemes to HBURL.

v0.7.0

14 Mar 14:59
438ab21
Compare
Choose a tag to compare
  • HBHTTPResponder.respond now includes an onComplete function as a parameter to be called which should be called with the response. This is instead of the EventLoopFuture. This change was implemented as HummingBirdCore should not assume we are running an async server.
  • HBDateCache is stored in thread local storage
  • Date header is added automatically, no HBDateResponseMiddleware anymore.
  • Added HBApplication.Configuration.backlog
  • Default HBApplication.Configuration.withPipeliningAssistance to true

v0.6.2

06 Mar 12:27
Compare
Choose a tag to compare
  • Don't consume request body when it is empty

v0.6.1

06 Mar 11:41
Compare
Choose a tag to compare
  • Don't set so much metadata on HBRequest Logger as setting metadata is expensive
  • Clean up code for setting of HBRequest.logger metadata

v0.6.0

05 Mar 14:58
89db956
Compare
Choose a tag to compare
  • Add new Parser object for parsing various string formats
  • Replace CURLParser C library with Swift implementation using Parser
  • Implement Swift percent decoder for Parser
  • Parse HBMediaType using Parser

v0.5.0

25 Feb 16:16
Compare
Choose a tag to compare
  • Remove protocol HBResponseFutureGenerator
  • HBFileMiddleware supports Range, Etag, if-none-match and if-modified-since headers.
  • Added cache control support to HBFileMiddleware
  • HBURL is Equatable
  • HBURL.queryParameters is HBParameters instead of a Dictionary
  • Router.onStreaming calls have been removed, now all HBRouterMethods.on calls have a parameter that indicates if the body is to be streamed.
  • Avoid metrics being spammed with multiple new dimension sets by not reporting 404 paths and reporting the routes with parameters, with the parameter name and not the actual parameter.
  • HBDateResponseMiddleware sets up application HBDateCache.