1.14.0 (08.07.2024)

  • End-Of-Life This update is only for >=2022.3, unity versions below will stay at 1.13.0.
  • Changed Updated netcoreserver library
  • New Added AdvancedCustomization to override the LowLevelServer, LowLevelSession easier. It also allows to get events for WebSocket (dis)connect.

1.13.0 (02.05.2024)

  • Announcement End-Of-Life: Last version that supports Unity 2020.X, next version will require Unity >=2022.3
  • New OAuth examples for Itch.IO and a generic OAuth for Keycloak and other implementations (Auth Code Flow)

1.12.1 (20.04.2024)

  • New Error message for incompatible Unity versions <= 2020.3.9
  • Fixed Increased compatibility with older Unity version (2020.3.10 - 2020.3.44)

1.12.0 (02.04.2024)

  • Changed Breaking Removed obsolete methods (these have been deprecated for >1 year) (migration information)
  • Changed Maybe Breaking CreateResponse().Body(..) will no longer overwrite the header, if it was set previously like CreateResponse().Header(..).Body()
  • New Added LastRedirectPath information for internal redirections
  • New Rest Server is now Unity 6 compatible
  • Fixed Fixed MimeType detection for StaticContentAutoEndpoint

1.11.1 (18.12.2023)

  • Fixed Handle corner case query parameter ?abc by adding abc as key in the corresponding collections (was a value before)
  • Fixed Handle internal errors outside the client endpoint implementation and log it

1.11.0 (17.10.2023)

  • New Added StreamingAsset Auto Endpoint which can act as a simple web server (more information).
  • Changed Added more Mime Types to the StaticContentAutoEndpoint.

1.10.0 (22.09.2023)

1.9.1 (21.08.2023)

  • New mDNS example, shows how mDNS discovery could be used with the rest server
  • Changed Update to marketing materials
  • Changed Auto endpoints have a default root path of “/” and the attribute auto endpoint inspects the whole scene by default
  • Changed Rest server inspector includes a review link by default - reviews are important und this shouldn’t be very intrusive
  • Fixed Fixed profiling includes, dynamically include the Unity Profiling Core for older Unity templates
  • Fixed Extract mDNS and UniWebView examples for internal CI/CD

1.9.0 (01.08.2023)

  • Changed AttributeAutoEndpoint is synchronized by default now, which makes Unity interaction easier. This can be disabled for each Endpoint individually in the Attribute.
  • New Android and iOS example
  • New More Code documentation inside examples
  • New Limit the amount of background work per frame
  • New Load test example (results)

1.8.1 (31.05.2023)

  • New AdditionalSocketConfigurationXXX for deeper socket modifications
  • Fixed Removed unused imports so Unity Export would work flawlessly

1.8.0 (19.04.2023)

  • New Added Method V2 Auto Endpoint which supports more endpoints and also different endpoint types (more information)
  • New Added Attribute Auto Endpoint which allows the definition of endpoints via attributes
  • Changed Do not allow to enqueue workloads from the main thread (ThreadingHelper), as this can result in a deadlock.
  • Fixed Fixed a misplaced #endif that caused problems while exporting
  • Fixed Fixed #if for the material auto endpoint making it available in Unity >= 2021

1.7.0 (02.02.2023)

  • New Websocket support

1.6.0 (02.12.2022)

  • New Simple multipart/form-data parser for simple uploads
  • New New Response Builder for easier responses, deprecated old SendAsyncXXX methods (migration information)
  • New Added internal redirection functionality
  • New Additional performance metrics (more information)
  • Changed Restructured onboarding chapters (Installation, Defining Endpoints, Endpoint Logic, Sending Responses and others)

1.5.0 (21.10.2022)

  • New Static Content Endpoint allows to serve static content (like html, css, js, etc.) easily via the inspector.
  • New Automatically choose a random port (activate via inspector).
  • New Allow listen interfaces other than localhost and list all available IPs.
  • New Added an example implementation of a reverse proxy
  • Changed More documentation
  • Fixed Minor quality of live bug fixes.

1.4.0 (24.08.2022)

  • New Visual Scripting Support (minimum requirements: Visual Scripting 1.7.8 and Unity 2021.3 LTS). This feature is optional.
  • New Add Auto Endpoints, which provide standard implementations for common endpoints.
  • New Simple interlock helper class, helps with preventing interruptions of long running actions (e.g. animations).

1.3.0 (31.05.2022)

  • Changed (Code migration possible) DefaultRequestHandlerImpl has been moved to the namespace RestServer.Helper.
  • Changed Samples have been moved to the homepage. They can be found here.
  • New Debug log which gives more insight for debugging. Helpful for deep troubleshooting or remote support. Can be turned on in the inspector.
  • New Added access log for every incoming request. Can be turned on in the inspector.
  • New Custom inspector for: showing when the server is running, starting/stopping the server and which endpoints have been registered.
  • New Enabled access to read the binary request data (useful for picture uploads).
  • Fixed Removed using var from code, therefore this package compiles under 2019 again.

1.2.0 (03.04.2022)

  • Changed ThreadingHelper#ExecuteSync does no longer return default in case timeout while waiting until the render thread finishes executing. A TimeoutException is raised instead. The default timeout is 1s an can be increased by setting a custom value on ThreadingHelper#ThreadingMillisecondsTimout .
  • Changed Deprecated SendGetResponse, SendErrorResponse, SendGetJsonResponse in favor of the more clearly named SendAsync* Variants. The method signatures didn’t change
  • New New Added a lot new response methods: SendAsyncGetJsonResponse, SendAsyncGetResponse, SendAsyncOkResponse, SendAsyncHeadResponse, SendAsyncTraceResponse, SendAsyncTraceResponse, SendAsyncErrorResponse. Additionally to new helper classes: HttpHeader, MimeType and HeaderBuilder.
  • New Added a ProfilerMarker (“RestServer.Update”) to Workloads (code that is executed through ThreadingHelper). Further information
  • New Test coverage is now ~90% (excluding the underlying NetCoreServer library). Further information
  • New ExecuteSync now catches any exception inside the workload and transmits these to the endpoint implementation.
  • New Exceptions inside workloads that are executed via ExecuteAsync are reported to the log. This behaviour can be overridden via RestServer.SpecialHandlers.AsynchronousExceptionHandler
  • New Many internal behaviours can be adjusted by providing a lambda implementation RestServer.SpecialHandlers. Further information
  • New Increased amount of overall documentation
  • New Authorisation can now easily be realised via RestServer.SpecialHandlers.AuthHandler Further information
  • Fixed JSON responses were sent with Content-Type: text/plain instead of application/json (Thanks Julien for reporting)
  • Fixed Removal of Regex endpoints via EndpointCollection.RemoveEndpont(). Regex endpoints are now matched by string comparing the pattern.

1.1.1 (19.03.2022)

  • Fixed Fix ExecuteAsync not executing
  • Fixed NullPointerException when using ExecuteAsync

1.1.0 (15.03.2022)

  • New Downgrade required Unity Version to 2020.3

1.0.0 (10.03.2022)

  • New Initial version