0c2bbf396c
Fixed RabbitMQ.Client reference to 6.5
...
Removed obsolete dependency on System.Configuration.ConfigurationManager
2023-03-31 08:01:26 +02:00
0919bfee50
Fixed #41 - RabbitMQ.Client 6.5 compatibility
...
Consumers are now properly async as well
2023-03-31 07:42:59 +02:00
3c7dc09bff
Keep arguments as string instead of bytes
2023-03-30 13:58:44 +02:00
1b9bac41a6
Fix for JSON parse error on x-dead-letter-exchange argument
2023-03-30 13:04:43 +02:00
97672f4321
Implemented nullable reference types support
2022-11-23 09:13:38 +01:00
bcdb376256
Fixed queue arguments error due to wrong value types
...
Added test for publish overflows
Removed support for Unity Container
Changed third party package references to ranges
Fixed XML documentation
2022-11-22 13:20:47 +01:00
7143ad3c2f
Implemented QueueArgumentsAttribute (untested)
2022-11-17 16:47:07 +01:00
d6138e2cfa
Downgraded language version to 8
...
Hasn't seem to cause any issues in older .NET versions yet (only used new syntax features), but this will prevent using most unsupported new features for .NET Standard 2.0
2022-11-17 13:32:59 +01:00
3aee6f1c53
Fixed #38 Durable queues are verified more than once
...
Caused by non thread-safe code when applying bindings. Replaced Task.WhenAll with a simple loop, as the performance benefits are negligable and it's only at startup anyways.
Also changed binding methods to use ValueTask.
2022-02-09 12:42:05 +01:00
165680fd38
Added ValueTask support
...
- This is a breaking change for custom middleware implementations
Added validation for return type handling
- This may be breaking for incorrect implementations, but highly unlikely
2022-02-09 11:27:07 +01:00
b816e56018
Code style cleanup
2022-02-09 09:50:25 +01:00
58d1908047
Added NoRequestsBehaviour to ParallelFlow.Yield
2021-12-10 11:45:09 +01:00
56a842ea5c
Implemented #37 Support injection of CancellationToken in message handlers
2021-10-29 15:47:48 +02:00
017c4c130f
Fixed prefetchcount being applied to the incorrect channel
2021-10-26 13:29:48 +02:00
Mark van Renswoude
847e6a6d83
Fixed #35 : NullReferenceException in Cancel
2021-10-08 15:51:10 +02:00
Mark van Renswoude
46e498b071
Split parts into separate repositories
...
Annotations, DataAnnotations.Extensions and Cmd
2021-10-07 15:38:43 +02:00
b22c5200f4
Fixed #34 Reconnect not working when restarting RabbitMQ
...
- Fixed deadlock issue when connection is lost
- Fixed Ack and Cancel being attempted on wrong connection causing channel disconnects
2021-09-21 16:17:14 +02:00
e83645cdc4
Changed IExceptionStrategy to async
2021-09-05 10:03:29 +02:00
be576a2409
Implemented #31 : Include message details in exception logging (optionally)
...
Refactored IControllerMessageContext into context payloads to get access to it in the exception handler
2021-09-02 16:16:44 +02:00
5a90c1e0a5
Added support for consuming incompatible durable queues without breaking
2021-09-02 13:58:01 +02:00
e9a7e32bf5
Slightly improved logging to fix #28
...
Logging the body is not worth it at the moment, as the original issue regarding corrupt body contents has been fixed already
2021-07-18 13:52:49 +02:00
ce377810c8
Separated publishing into separate channel and task queue
...
Hopefully fixes #23
2021-07-18 13:27:10 +02:00
52965b2372
Fixed #30 Test if new Tapeti async consumer runs parallel
...
Alternative fix for #29 Deserialization errors due to not buffering RabbitMQ Client's body
2021-07-05 10:28:49 +02:00
09efa161b4
Revert "Merge branch 'hotfix/2.5.1' into develop"
...
This reverts commit 4b2ced7956
.
2021-07-05 09:01:02 +02:00
bbfb580a97
Actually fixed #29
2021-06-25 09:35:26 +02:00
e33201dc17
Fixed #29 : Deserialization errors due to not buffering RabbitMQ Client's body
...
- TIL there is an AsyncDefaultBasicConsumer which eliminates the need for the Task.Run
2021-06-25 09:28:25 +02:00
e25fa5aa52
Implemented IAsyncDisposable
2021-06-02 20:56:10 +02:00
1be1b599a0
Updated all references NuGet packages to latest stable version
...
Fixed ReSharper code issues
2021-05-29 21:52:07 +02:00
0b7c84a119
Ignore OperationCanceledException as well when shutting down
2021-01-18 14:17:07 +01:00
f4bef38a9f
Ignore TaskCanceledExceptions during shutdown
2021-01-15 11:29:31 +01:00
f1a4ab1c67
Added Stop method to ISubscriber
2021-01-15 09:57:46 +01:00
145850c3c2
Provide a way to disable queue verification
...
- Backwards compatibility with incompatible queue definitions
2020-03-17 15:21:39 +01:00
c1cd2823ca
Temporary workaround: increased publish timeout limit
2020-03-17 14:57:27 +01:00
6e31b77b26
Added logging for binding operations
...
- IBindingLogger interface implemented in the included implementations (Console and Serilog)
Added documentation for Tapeti.Cmd
2020-03-05 10:27:46 +01:00
2745d18779
Implemented stateless request-response support
2020-02-12 11:34:51 +01:00
2e2a77a7ae
Possible fix for #18 Two consumers from same connection after reconnect
...
- Consume calls still in the TapetiClient task queue while it is reconnecting would not be cancelled, but new calls were added as well after the reconnect
- Unrelated but useful: added LocalPort and Disconnect event to logging
2019-10-10 16:03:47 +02:00
99bc839814
Fixed consumers not restarting after a reconnect
2019-09-10 19:38:59 +02:00
bef3961f7f
Added support for the Obsolete attribute to remove bindings and queues with backwards compatibility
...
Updated license in nuspec to comply with the new specifications
2019-08-20 11:47:53 +02:00
84ee6f090d
[skip appveyor] Added support for ClientProperties (manual and in the AppSettings)
...
Added support for managementport in the ConnectionStringParser
Added documentation on setting the connection parameters
2019-08-18 11:06:33 +02:00
196aa63a4a
[ci skip] Fixed the last of the ReSharper code issues
2019-08-15 16:00:04 +02:00
c83ca889b7
[ci skip] Fixed wrong port being used for management API
...
Fixed exchange not being created for bindings and publishing
Added documentation for DataAnnotations package
2019-08-15 15:55:45 +02:00
d211d33108
[ci skip] Fixed ReSharper code issues (ironically, in JetBrains.Annotations as well)
2019-08-15 11:32:39 +02:00
fed377992b
[ci skip] Done with XML documentation for now
...
Made a few classes internal that were supposed to be
2019-08-15 11:26:55 +02:00
314a67db00
[ci skip] Bit of refactoring and bugfixing, mostly documentation
2019-08-14 20:48:40 +02:00
6c32665c8a
[ci skip] Refactored how consume result is handled
...
Reimplemented the exception strategy and logging
Much XML documentation, such wow
2019-08-14 12:20:53 +02:00
f8fca5879c
[ci skip] Major refactoring for 2.0
...
- Compiles, but that's about it. Plenty of ToDo's left before it will run. Beware, ye who enter here.
- Cleanup of the internals, with the aim to keep the interface to application code compatible
- Added the ability to declare durable queues on startup and update the bindings
- Possibly fixed an issue with publish timeouts being logged after a reconnect
2019-08-13 20:30:04 +02:00
d17f4f3a9f
Fixed Tapeti not reconnecting after a disconnect event unless Publish is called
2019-08-08 11:56:10 +02:00
cb552cc4cb
Enabled XML Documentation generation for all projects
2019-05-23 14:00:36 +02:00
30a32e4ac3
Merge tag '1.2.1' into develop
2019-05-20 15:24:56 +02:00
0bd9d06795
Fixed "Index out of range" when publishing from multiple thread (or from a message handler with prefetchcount > 1)
2019-05-20 15:22:40 +02:00