thedevop
043906876e
Add cl.IsTakenOver and switch cl.isTakenOver to atomic.Bool ( #446 )
...
* OnPublish CodeSuccessIgnore, use debug instead of error log
* Suppress OnPublish CodeSuccessIgnore error log
* Add cl.IsTakenOver and switch to use atomic.Bool
---------
Co-authored-by: JB <28275108+mochi-co@users.noreply.github.com >
2025-01-30 17:58:03 +00:00
JB
26418c6fd8
Implement File based configuration ( #351 )
...
* Implement file-based configuration
* Implement file-based configuration
* Replace DefaultServerCapabilities with NewDefaultServerCapabilities() to avoid data race (#360 )
Co-authored-by: JB <28275108+mochi-co@users.noreply.github.com >
* Only pass a copy of system.Info to hooks (#365 )
* Only pass a copy of system.Info to hooks
* Rename Itoa to Int64toa
---------
Co-authored-by: JB <28275108+mochi-co@users.noreply.github.com >
* Allow configurable max stored qos > 0 messages (#359 )
* Allow configurable max stored qos > 0 messages
* Only rollback Inflight if QoS > 0
* Only rollback Inflight if QoS > 0
* Minor refactor
* Update server version
* Implement file-based configuration
* Implement file-based configuration
* update configs with maximum_inflight value
* update docker configuration
* fix tests
---------
Co-authored-by: mochi-co <moumochi@icloud.com >
Co-authored-by: thedevop <60499013+thedevop@users.noreply.github.com >
2024-03-18 03:28:12 +00:00
Derek Duncan
44bac0adc5
Migrate from zerolog to slog ( #248 )
...
* Begin adding new slog calls
* Fixed unit tests
* Add leveler example
* Add debug log level to Redis example
* Change location of server.Close() and add logs to example/hooks
* Begin removing references to zerolog
* Removed final references to zerolog
* Change where server.Close() occurs in main
* Change to 1.21 to remove x dependency
* Add slog
* Update references to 1.21
* Begin change of LogAttrs to standard logging interface
* Change the rest of LogAttrs to default
* Fix bad log
* Update badger.go
Changing "data" to "key" or "id" here might be more appropriate.
* Update badger.go
Changing "data" to "key" or "id" here might be more appropriate.
* Update server.go
Not checking if err is equal to nil
* Update server.go
printing information for ID or error is missing.
* Change references of err.Error() to err in slog
* Remove missed removal of Error() references for logging
---------
Co-authored-by: Derek Duncan <dduncan@atlassian.com >
Co-authored-by: Derek Duncan <derekduncan@gmail.com >
Co-authored-by: JB <28275108+mochi-co@users.noreply.github.com >
Co-authored-by: werbenhu <werben@qq.com >
2023-09-06 15:21:04 +01:00
JB
ae3f72f677
migrate imports, copyrights, etc ( #270 )
2023-07-31 13:26:26 +01:00
Derek Duncan
fe0c1d15a6
Add OnSessionEstablish hook ( #247 )
...
Co-authored-by: Derek Duncan <derekduncan@gmail.com >
2023-07-08 13:09:58 +01:00
JB
6d394d1fe9
Expose SendConnack, err return on OnConnect ( #240 )
2023-06-14 20:05:02 +01:00
thedevop
1ee2158711
Add OnRetainPublished hook ( #237 )
...
* Add OnRetainPublished hook
* Skip OnRetainPublished if publish error
2023-06-13 19:24:04 +01:00
Hector Oliveros
7ad6dd8e1a
Now when a "publish" command fails, then the publish method will throw an error ( #229 )
...
Errors in the hook when doing a publish were ignored. This caused that test cases could not be made where the publish failed and an error was thrown.
Co-authored-by: hector.oliveros@wabtec.com <hectoroliveros@MacBook-Pro-de-Hector.local >
2023-05-18 20:14:50 +01:00
JB
eed3ef9606
Add OnPacketIDExhausted hook ( #211 )
2023-05-04 22:51:40 +01:00
JB
bb54cc68e6
Client write buffers ( #165 )
...
* Replace fanpool with client write buffers
2023-02-09 22:34:30 +00:00
JB
0d79f2d63b
Use Atomic instead of RWMutex for Hooks concurrency ( #148 )
...
* Use Atomic instead of RWMutex for Hooks concurrency
* Lock Hooks on Add Hook
2023-01-16 19:49:36 +00:00
JB
8254cb0cbc
Make hooks safe for concurrency ( #139 )
...
Co-authored-by: thedevop <60499013+thedevop@users.noreply.github.com >
2023-01-09 22:41:44 +00:00
JB
e31840a37d
Optimize inflight expiry ( #127 )
...
* Small formatting/style changes for filter existed
* Use OnQoSDropped hook instead of onInflightExpired
2022-12-21 19:44:25 +00:00
mochi-co
4f198a99dd
Fix mis-typed onpublished hook, update version, fanpool defaults
2022-12-15 18:19:02 +00:00
mochi-co
8a04648c09
Cleanup godoc formatting
2022-12-11 21:38:01 +00:00
mochi-co
74ed8cd046
Update go mod and imports to v2
2022-12-11 11:50:44 +00:00
mochi-co
898c90d4ca
Rewrite everything from scratch for mqtt v5
2022-12-10 21:49:32 +00:00