Skip to content

Releases: thinktecture/relayserver

v3.0.0

15 Jul 13:33
Compare
Choose a tag to compare

v2.4.3

10 Feb 12:46
53b66fc
Compare
Choose a tag to compare
  • Bug fixes
    • Fixed a rare race condition that could lead to rabbit subscriptions not being removed correctly.

v2.4.2

15 Dec 09:42
Compare
Choose a tag to compare
  • Bug fixes

    • The OPC won't try to determine the position of a non-seekable stream anymore, which lead to an exception.
  • General improvements

    • Don't log an error when an already closed connection might be removed again from the database a bit later.

v2.4.1

16 Jun 06:34
Compare
Choose a tag to compare
  • Bug fixes

    • A disconnecting connector does not throw an error anymore, which caused the server to still try and send messages there.

v2.4.0

23 Mar 10:22
Compare
Choose a tag to compare
  • Fast abort

    • With a new setting (RequireLinkAvailability) you can now configure that the RelayServer will immediately answer with a Service Unavailable when no connector currently is available for the requested link.
  • General improvements

    • A connection loss between connector and server happening when uploading a response to the RelayServer will now be logged.
    • The frequence of queue generation under very high load was reduced.
    • The RabbitMQ model will be restored after a shutdown.
    • The amount of database queries for a request has been reduced.
  • Bug fixes

    • Cookies sent by the client will now be also sent correctly to the on-premise target.

v2.3.0

07 Dec 14:52
Compare
Choose a tag to compare
  • RabbitMQ Improvements

    • Closed Rabbit connections will now be automatically unbound at the client.
    • The automatic recovery feature of the rabbit client will now be enabled by default.
    • When a channel gets closed, make sure all unacknowledged messages get re-queued.
    • To improve throughput, multiple channels (via RoutingKeys) will be used for requests, responses and acknowledgements.
  • On-Premise Interceptors

    • It is now possible to add custom code into the On-Premise Connector that is able to intercept and modifiy requests and responses.
  • Modify content streams

    • Interceptors now can read and modify the content streams of requests and responses.
  • General improvements

    • The RelayServer now warns when the SharedSecret setting is missing and uses a random value to be able to work at all, if it is not configured for Multi-Server operation.
    • The EF model was extended with more accurate information and new indices.
    • If an On-Premises target sets an invalid value for the expires header, there won't be an error anymopre.
    • Logging of sensitive data is now configurable and enabled by default.
    • Now all information required for manual acknowledgment is provided for easier handling.
    • Request logging now also tracks the request id.
    • It is now possible to register the On-Premise Connector types with Autofac.
    • The On-Premise Connector service now initializes http connection properties.
    • Relative paths in configuration are now consistently evaluated against the exe directory of the RelayServer and not against the execution dir anymore.
    • The new default for our own responses now is JSON and not XML.
    • An own implementation (or inherited from the default one) of an IOnPremiseConnectionContext can be registered in the DI.
    • For an easier migration scenario of changed IOnPremiseTargetRequest implementations a property called "Properties" was introduced, which will be serialized onto the root JSON object to be deserialized as properties on the on-premise side.
    • A PING will be removed from the RabbitMQ queue directly by the server because of using AcknowledgeMode.Auto.
    • The Entity Framework Context (RelayContext) is now public.
    • It is possible to use a custom implementation of an IOnPremiseConnectionOnReceivedHandler by registering that in an Autofac module within a custom code assembly to handle incoming data on a SignalR connection.
  • Bugfixes

    • Under certain circumstances the On-Premise Connector demo service wasn't able to load a framework assembly.
    • The On-Premise Connector is now able to recreate the HttpClient that is used to send responses to the RelayServer in case there are errors when posting.
    • HttpConfig needs to be explicitely initialized under certain circumstances.
    • A newly created HttpClient now also receives the authentication header values of its predecessor.
    • The request interceptor now also has access to the request body.
    • Accessing empty bodies on intercepted requests and responses does not throw a NullReferenceException anymore.
    • The acknowledgement was not done on the correct RabbitMQ model.
    • An already deactivated connection was repeatingly deactivated again.
    • The config message was accidentally sent to On-Premise Connectors not supporting it.
    • Malformed query strings prevented the relaying of the request.

2.3.0-rc7

29 Sep 08:02
Compare
Choose a tag to compare
2.3.0-rc7 Pre-release
Pre-release
  • RabbitMQ Improvements

    • Closed Rabbit connections will now be automatically unbound at the client.
    • The automatic recovery feature of the rabbit client will now be enabled by default.
    • When a channel gets closed, make sure all unacknowledged messages get re-queued.
    • To improve throughput, multiple channels (via RoutingKeys) will be used for requests, responses and acknowledgements.
  • On-Premise Interceptors

    • It is now possible to add custom code into the On-Premise Connector that is able to intercept and modifiy requests and responses.
  • Modify content streams

    • Interceptors now can read and modify the content streams of requests and responses.
  • General improvements

    • The RelayServer now warns when the SharedSecret setting is missing and uses a random value to be able to work at all, if it is not configured for Multi-Server operation.
    • The EF model was extended with more accurate information and new indices.
    • If an On-Premises target sets an invalid value for the expires header, there won't be an error anymopre.
    • Logging of sensitive data is now configurable and enabled by default.
    • Now all information required for manual acknowledgment is provided for easier handling.
    • Request logging now also tracks the request id.
    • It is now possible to register the On-Premise Connector types with Autofac.
    • The On-Premise Connector service now initializes http connection properties.
    • Relative paths in configuration are now consistently evaluated against the exe directory of the RelayServer and not against the execution dir anymore.
    • The new default for our own responses now is JSON and not XML.
    • An own implementation (or inherited from the default one) of an IOnPremiseConnectionContext can be registered in the DI.
    • For an easier migration scenario of changed IOnPremiseTargetRequest implementations a property called "Properties" was introduced, which will be serialized onto the root JSON object to be deserialized as properties on the on-premise side.
    • A PING will be removed from the RabbitMQ queue directly by the server because of using AcknowledgeMode.Auto.
    • The Entity Framework Context (RelayContext) is now public.
    • It is possible to use a custom implementation of an IOnPremiseConnectionOnReceivedHandler by registering that in an Autofac module within a custom code assembly to handle incoming data on a SignalR connection.
  • Bugfixes

    • Under certain circumstances the On-Premise Connector demo service wasn't able to load a framework assembly.
    • The On-Premise Connector is now able to recreate the HttpClient that is used to send responses to the RelayServer in case there are errors when posting.
    • HttpConfig needs to be explicitely initialized under certain circumstances.
    • A newly created HttpClient now also receives the authentication header values of its predecessor.
    • The request interceptor now also has access to the request body.
    • Accessing empty bodies on intercepted requests and responses does not throw a NullReferenceException anymore.
    • The acknowledgement was not done on the correct RabbitMQ model.
    • An already deactivated connection was repeatingly deactivated again.
    • The config message was accidentally sent to On-Premise Connectors not supporting it.
    • Malformed query strings prevented the relaying of the request.

2.3.0-rc6

10 Sep 09:43
0e65fea
Compare
Choose a tag to compare
2.3.0-rc6 Pre-release
Pre-release
  • RabbitMQ Improvements

    • Closed Rabbit connections will now be automatically unbound at the client.
    • The automatic recovery feature of the rabbit client will now be enabled by default.
    • When a channel gets closed, make sure all unacknowledged messages get re-queued.
    • To improve throughput, multiple channels (via RoutingKeys) will be used for requests, responses and acknowledgements.
  • On-Premise Interceptors

    • It is now possible to add custom code into the On-Premise Connector that is able to intercept and modifiy requests and responses.
  • Modify content streams

    • Interceptors now can read and modify the content streams of requests and responses.
  • General improvements

    • The RelayServer now warns when the SharedSecret setting is missing and uses a random value to be able to work at all, if it is not configured for Multi-Server operation.
    • The EF model was extended with more accurate information and new indices.
    • If an On-Premises target sets an invalid value for the expires header, there won't be an error anymopre.
    • Logging of sensitive data is now configurable and enabled by default.
    • Now all information required for manual acknowledgment is provided for easier handling.
    • Request logging now also tracks the request id.
    • It is now possible to register the On-Premise Connector types with Autofac.
    • The On-Premise Connector service now initializes http connection properties.
    • Relative paths in configuration are now consistently evaluated against the exe directory of the RelayServer and not against the execution dir anymore.
    • The new default for our own responses now is JSON and not XML.
    • An own implementation (or inherited from the default one) of an IOnPremiseConnectionContext can be registered in the DI.
    • For an easier migration scenario of changed IOnPremiseTargetRequest implementations a property called "Properties" was introduced, which will be serialized onto the root JSON object to be deserialized as properties on the on-premise side.
    • A PING will be removed from the RabbitMQ queue directly by the server because of using AcknowledgeMode.Auto.
    • The Entity Framework Context (RelayContext) is now public.
    • It is possible to use a custom implementation of an IOnPremiseConnectionOnReceivedHandler by registering that in an Autofac module within a custom code assembly to handle incoming data on a SignalR connection.
  • Bugfixes

    • Under certain circumstances the On-Premise Connector demo service wasn't able to load a framework assembly.
    • The On-Premise Connector is now able to recreate the HttpClient that is used to send responses to the RelayServer in case there are errors when posting.
    • HttpConfig needs to be explicitely initialized under certain circumstances.
    • A newly created HttpClient now also receives the authentication header values of its predecessor.
    • The request interceptor now also has access to the request body.
    • Accessing empty bodies on intercepted requests and responses does not throw a NullReferenceException anymore.
    • The acknowledgement was not done on the correct RabbitMQ model.
    • An already deactivated connection was repeatingly deactivated again.
    • The config message was accidentally sent to On-Premise Connectors not supporting it.

2.3.0-rc5

11 May 08:50
Compare
Choose a tag to compare
2.3.0-rc5 Pre-release
Pre-release
  • RabbitMQ Improvements

    • Closed Rabbit connections will now be automatically unbound at the client.
    • The automatic recovery feature of the rabbit client will now be enabled by default.
    • When a channel gets closed, make sure all unacknowledged messages get re-queued.
    • To improve throughput, multiple channels (via RoutingKeys) will be used for requests, responses and acknowledgements.
  • On-Premise Interceptors

    • It is now possible to add custom code into the On-Premise Connector that is able to intercept and modifiy requests and responses.
  • Modify content streams

    • Interceptors now can read and modify the content streams of requests and responses.
  • General improvements

    • The RelayServer now warns when the SharedSecret setting is missing and uses a random value to be able to work at all, if it is not configured for Multi-Server operation.
    • The EF model was extended with more accurate information and new indices.
    • If an On-Premises target sets an invalid value for the expires header, there won't be an error anymopre.
    • Logging of sensitive data is now configurable and enabled by default.
    • Now all information required for manual acknowledgment is provided for easier handling.
    • Request logging now also tracks the request id.
    • It is now possible to register the On-Premise Connector types with Autofac.
    • The On-Premise Connector service now initializes http connection properties.
    • Relative paths in configuration are now consistently evaluated against the exe directory of the RelayServer and not against the execution dir anymore.
    • The new default for our own responses now is JSON and not XML.
    • An own implementation (or inherited from the default one) of an IOnPremiseConnectionContext can be registered in the DI.
    • For an easier migration scenario of changed IOnPremiseTargetRequest implementations a property called "Properties" was introduced, which will be serialized onto the root JSON object to be deserialized as properties on the on-premise side.
    • A PING will be removed from the RabbitMQ queue directly by the server because of using AcknowledgeMode.Auto.
    • The Entity Framework Context (RelayContext) is now public.
  • Bugfixes

    • Under certain circumstances the On-Premise Connector demo service wasn't able to load a framework assembly.
    • The On-Premise Connector is now able to recreate the HttpClient that is used to send responses to the RelayServer in case there are errors when posting.
    • HttpConfig needs to be explicitely initialized under certain circumstances.
    • A newly created HttpClient now also receives the authentication header values of its predecessor.
    • The request interceptor now also has access to the request body.
    • Accessing empty bodies on intercepted requests and responses does not throw a NullReferenceException anymore.
    • The acknowledgement was not done on the correct RabbitMQ model.
    • An already deactivated connection was repeatingly deactivated again.
    • The config message was accidentally sent to On-Premise Connectors not supporting it.

2.3.0-rc4

08 May 06:48
Compare
Choose a tag to compare
2.3.0-rc4 Pre-release
Pre-release
  • RabbitMQ Improvements

    • Closed Rabbit connections will now be automatically unbound at the client.
    • The automatic recovery feature of the rabbit client will now be enabled by default.
    • When a channel gets closed, make sure all unacknowledged messages get re-queued.
    • To improve throughput, multiple channels (via RoutingKeys) will be used for requests, responses and acknowledgements.
  • On-Premise Interceptors

    • It is now possible to add custom code into the On-Premise Connector that is able to intercept and modifiy requests and responses.
  • Modify content streams

    • Interceptors now can read and modify the content streams of requests and responses.
  • General improvements

    • The RelayServer now warns when the SharedSecret setting is missing and uses a random value to be able to work at all, if it is not configured for Multi-Server operation.
    • The EF model was extended with more accurate information and new indices.
    • If an On-Premises target sets an invalid value for the expires header, there won't be an error anymopre.
    • Logging of sensitive data is now configurable and enabled by default.
    • Now all information required for manual acknowledgment is provided for easier handling.
    • Request logging now also tracks the request id.
    • It is now possible to register the On-Premise Connector types with Autofac.
    • The On-Premise Connector service now initializes http connection properties.
    • Relative paths in configuration are now consistently evaluated against the exe directory of the RelayServer and not against the execution dir anymore.
    • The new default for our own responses now is JSON and not XML.
    • An own implementation (or inherited from the default one) of an IOnPremiseConnectionContext can be registered in the DI.
    • For an easier migration scenario of changed IOnPremiseTargetRequest implementations a property called "Properties" was introduced, which will be serialized onto the root JSON object to be deserialized as properties on the on-premise side.
  • Bugfixes

    • Under certain circumstances the On-Premise Connector demo service wasn't able to load a framework assembly.
    • The On-Premise Connector is now able to recreate the HttpClient that is used to send responses to the RelayServer in case there are errors when posting.
    • HttpConfig needs to be explicitely initialized under certain circumstances.
    • A newly created HttpClient now also receives the authentication header values of its predecessor.
    • The request interceptor now also has access to the request body.
    • Accessing empty bodies on intercepted requests and responses does not throw a NullReferenceException anymore.
    • The acknowledgement was not done on the correct RabbitMQ model.
    • An already deactivated connection was repeatingly deactivated again.
    • The config message was accidentally sent to On-Premise Connectors not supporting it.