Releases: quickfixgo/quickfix
v0.9.7
0.9.7 (April 23, 2025)
FEATURES
- Adds SQL, MongoDB and Composite FIX Log and LogFactory implementations, see
config/configuration.go
for details #672 - Adds convenience getters for session log and store #675
- Adds config option for ResetSeqTime #705
ENHANCEMENTS
- File store uses files exclusively #680
- Protect concurrent usage of filestore #688
- Support udecimal library in code generation #700
BUG FIXES
v0.9.6
v0.9.5
0.9.5 (August 14, 2024)
ENHANCEMENTS
- Introduce message iterator to avoid loading all messages into memory at once upon resend request #659
- Only lock fieldmap once during message parsing #658
- Optimize tag value parsing #657
- Use bytes.Count to count the number of message fields #655
- Port config documentation into proper go doc format #649
- Support TLS configuration as raw bytes #647
BUG FIXES
v0.9.4
v0.9.3
v0.9.2
v0.9.1
v0.9.0
0.9.0 (November 13, 2023)
FEATURES
- Add Weekdays config setting as included in QuickFIX/J #590
MessageStore
Refactor
The message store types external to a quickfix-go application have been refactored into individual sub-packages within quickfix
. The benefit of this is that the dependencies for these specific store types are no longer included in the quickfix package itself, so many projects depending on the quickfix package will no longer be bloated with large indirect dependencies if they are not specifically implemented in your application. This applies to the mongo
(MongoDB), file
(A file on-disk), and sql
(Any db accessed with a go sql driver interface). The memorystore
(in-memory message store) syntax remains unchanged. The minor drawback to this is that with some re-packaging came some minor syntax changes. See #547 and #592 for more information. The relevant examples are below.
MONGO
import "github.com/quickfixgo/quickfix"
...
acceptor, err = quickfix.NewAcceptor(app, quickfix.NewMongoStoreFactory(appSettings), appSettings, fileLogFactory)
becomes
import (
"github.com/quickfixgo/quickfix"
"github.com/quickfixgo/quickfix/store/mongo"
)
...
acceptor, err = quickfix.NewAcceptor(app, mongo.NewStoreFactory(appSettings), appSettings, fileLogFactory)
FILE
import "github.com/quickfixgo/quickfix"
...
acceptor, err = quickfix.NewAcceptor(app, quickfix.NewFileStoreFactory(appSettings), appSettings, fileLogFactory)
becomes
import (
"github.com/quickfixgo/quickfix"
"github.com/quickfixgo/quickfix/store/file"
)
...
acceptor, err = quickfix.NewAcceptor(app, file.NewStoreFactory(appSettings), appSettings, fileLogFactory)
SQL
import "github.com/quickfixgo/quickfix"
...
acceptor, err = quickfix.NewAcceptor(app, quickfix.NewSQLStoreFactory(appSettings), appSettings, fileLogFactory)
becomes
import (
"github.com/quickfixgo/quickfix"
"github.com/quickfixgo/quickfix/store/sql"
)
...
acceptor, err = quickfix.NewAcceptor(app, sql.NewStoreFactory(appSettings), appSettings, fileLogFactory)
ENHANCEMENTS
BUG FIXES
v0.8.1
0.8.1 (October 27, 2023)
BUG FIXES
- Remove initiator wait GH 587
- for xml charset and bug of "Incorrect NumInGroup" GH 368, 363, 365, 366
- Allow time.Duration or int for timeouts GH 477
- Trim extra non-ascii characters that can arise from manually editing GH 463, 464
v0.8.0
0.8.0 (October 25, 2023)
ENHANCEMENTS
- Remove tag from field map GH 544
- Add message.Bytes() to avoid string conversion GH 546
- Check RejectInvalidMessage on FIXT validation GH 572
BUG FIXES
- Fix repeating group read tags lost GH 462
- Acceptance test result must be predictable GH 577, 578
- Makes event timer stop idempotent GH 580, 581
- Added WaitGroup Wait in Initiator GH 584