Skip to content

Releases: sisk-http/core

0.10.0

15 Mar 19:47
Compare
Choose a tag to compare
  • Added: ContentLength property for HttpRequest objects.
  • Added: Close() method for HttpRequest objects.
  • Added: OptionsLogMode flag for the HTTP server.
  • Added: IncludeFullPathOnLog flag for the HTTP server.
  • Changed: the CORS Allow-Origin was an array accepting multiple values. The AllowOrigins property was renamed and modified to be an
    string? AllowOrigin instead previous string[] AllowOrigins. You might change your service configuration in order of this change. Also was
    fixed that this method allows nullable for now.
  • Changed: exceptions thrown from an request handler body will now be supressed if ThrowExceptions is enabled.
  • Fixed: the X-Powered-By header wasn't being sent. You can disable it by turning HttpServerFlags.SendSiskHeader to false.
  • Fixed: charset on Content-Type wasn't being set by StringContent helper.
  • Fixed: Multipart-form objects were decoding unicode chars to their wrong format. To fix this, we've added two static properties
    to the MultipartObject ("DefaultContentEncoding" and "DefaultHeadersEncoding"), which you can set the default encoding for header-parsing and content parsing.
  • Rewrited: the request id generator function to another one a bit faster than Guid.NewGuid().
  • Experimental: you can send custom HTTP status codes and reason phrases using the HttpResponse.CustomStatus property.
  • Code cleanup.

0.9.0

22 Feb 15:13
Compare
Choose a tag to compare

Thank you for using Sisk.

  • Removed the Newtonsoft.Json dependency.
  • Added XML doc to the HttpServerFlags constructor.
  • You can setup HTTP server flags on ServiceProvider now.
  • Routes cannot be added if an route with exact or similar path is already
    defined.
  • Defining routes paths must start with an /. Sisk's current routing
    implementation ignores the trailing / at the end of the request path and the route path.

0.8.9

14 Feb 14:29
Compare
Choose a tag to compare

Released: 14/02/2023

  • New: hot reload support. This is applyable to the .NET support of hot reload. You can use it with ServiceReloadManager or
    ServiceProvider.
  • New: added HTTP server flags, which holds advanced settings for the HTTP server.
  • New: Router SetObject(object) method now defines the instance methods instead of the type
    static methods. Use SetObject(type) for defining static route methods.
  • New: Added PDF format to MultipartObject.GetCommonFileFormat(). Also we've renamed the enumerator to
    MultipartObjectCommonFormat.
  • Fixed: HEAD requests should send Content-* headers now.
  • Fixed: HEAD requests weren't being matched with GET routes. You can disable it by the TreatHeadAsGetMethod flag.
  • Fixed: the access logs weren't displaying the forwareded IP address when ResolveForwardedOriginAddress is true.
  • Fixed: CORS Access-Control-Max-Age header name.
  • Deprecated: HttpRequest.CreateHeadResponse(). Use HttpRequest.CreateEmptyResponse() instead.
  • Deprecated: HttpServerExecutionStatus.ContentServedOnNotSupportedMethod.

0.8.3

29 Jan 16:22
fdabd73
Compare
Choose a tag to compare

Released: 26/01/2023

  • Deprecated HttpResponse.DefaultEncoding.
  • Malformed requests can throw an HttpRequestException from the HTTP server, which will result in
    an HttpServerExecutionStatus.MalformedRequest with an automatic response with status 400.
  • HTTP response now uses UTF-8 to calculate the response headers size.
  • Routes can have an LogMode property which determines if the server should write access/error logs
    for those route.
  • Added the HttpRequest.Cookies property.
  • Fixed where uncaught exceptions in the router callback shouldn't return an HTTP 500 status code.

Installing: https://sisk.project-principium.dev/#/getting-started

0.8.2

10 Jan 01:24
Compare
Choose a tag to compare

Released: 09/01/2023

  • Introduced "Service providers", which provides an interface for porting services and applications
    easily with Sisk.
  • Added an overload for Router.SetObject which allows to pass an type as reference.
  • Added the property HttpServer.IsListening.
  • HttpServer no longer listens to all authorities with the "+" wildcard, but to individual hosts. Perhaps you will need to have permissions for each authority individually to run without admin privileges in Windows.
  • Fixed an issue where event listeners weren't respecting AccessLogsStream and using the deprecated property Verbose.
  • Fixed where routers weren't parsing regex routes as ignore-case when MatchRoutesIgnoreCase was enabled.

0.8.1

08 Jan 02:17
Compare
Choose a tag to compare

Released: 07/01/2023

Core:

  • Created an indexer for ListeningHostRepository.
  • Created property HttpServerConfiguration.AccessLogsStream. Specification.
  • Created property HttpServerConfiguration.ErrorsLogsStream. Specification.
  • Created property Router.MatchRoutesIgnoreCase, which allows to the router to match routes ignoring case.
  • Replaced the router path matching mecanism by a more appropriate string parser without using regex.
  • Replaced the DNS matching mecanism by removing regex. Credits to this link.
  • ListeningHost.Handle is more deterministic now and doesn't uses an random generator for it.
  • Fixed an bug where the TCP client was sending an IP address with multiple null characters.
  • Deprecated HttpServerConfiguration.Verbose.

You can download older versions from the Nuget package manager.