QuickFIX Changelog

What's new in QuickFIX 1.14.3

Sep 16, 2014
  • Fixed buck in SocketConnection where recv result stored in signed value.
  • Added ruby api to RubyGems.
  • All Python and Ruby tests pass again.

New in QuickFIX 1.14.0 (Jun 26, 2014)

  • Major performance improvement sending/receiving messages.
  • Added getFieldIfSet and getIfSet methods. No longer need to check for a field and pull it out in two steps.
  • UseLocalTime=Y works again.
  • Improvement in how DataDictionaries are initialized makes starting up with a large number of sessions much faster.
  • Generator will generate a message defined in the spec even if it has no fields.
  • This was preventing the XMLnonFIX message from being generated in the various APIs.
  • Added ValidateLengthAndChecksum. Allows you to ignore the length and checksum fields on incoming messages. Accept the message anyway. A wild free for all.
  • Added FIX 5.0 sp1 and sp2 support to MessageCracker.
  • SocketReuseAddress, SocketNoDelay, SocketSendBufferSize, and SocketReceiveBufferSize config settings can be overriden on a per session basis.
  • Field containing number of groups will be removed if all instances of a group are removed from the message.
  • SocketConnection would block other sessions if it was unable to connect immediately. Brian Crowell submitted a patch that makes the connection call non-blocking.
  • Initiator started before StartTime was doing an unecessary logout and disconnect.
  • MessageCracker will not cast non-const messages to const.
  • Polling was kind of broken. Fixed.
  • Fixed bug where LogonTime does not fall between StartTime and EndTime when days are used.
  • Fixed bug where port was not being correctly scoped in the DEFAULT section of the config file.
  • All data is read from the socket before the engine begins to parse messages.
  • Socket will make a better attempt to determine if a full message is available on the socket before determining if a logon failed. Before it could potentially fail on a partial message that was in the middle of transmission.
  • Header and Trailer are now distinct objects, instead of typedefs to FieldMap.
  • Ambigous and confusing name getValue on the Field class has been renamed to getFixString. This return a value such as 55=AAPL.
  • Message groups can be parsed even if there is no delimiter present. A new group is detected if the parser encounters any duplicate field.
  • Fixed potential crash when stopping an initiator that has not yet started.
  • When calling backup() on a .NET log, it was instead invoking clear() in the underlying C++ class. Fixed.
  • Fallback ports were not being parsed correctly for fallback connections. Fixed.
  • Not all constructors in the ThreadedSocketConnection were properly initializing the log object. Fixed.
  • Generate XML (and source) files from latest publicly available FIX repository.
  • Alternate C++ allocators will no longer be automatically chose. They can be manually selected with configure --with-allocator.
  • MySQL and PostgreSQL are detected using standard m4 when running configure.
  • Environment variables RUBY and PYTHON are used to find which version of instance to use when running configure.
  • Fixed/standardized various issues with python library deployment.
  • If session is disabled, it will immediately disconnect without sending any messages.
  • Added support for visual studio 11 and 12.
  • Removed C# library. Use QuickFIX/n.
  • Ruby API works with ruby 1.9.x

New in QuickFIX 1.13.3 (Apr 16, 2010)

  • Added support for FIX 5.0 sp1 and sp2
  • Fixed bug with ResetSeqNumFlag going out but not coming back.
  • Logon will now be processed correctly even if field is absent
  • if sequence number is set to 1.
  • Fixed bug where data dictionary settings in the default section
  • were being ignored. Mostly manifested itself by doing validation
  • the user didn't want done, such as user defined field validation.
  • Fixed initialization errors with OdbcConnection which caused some
  • problems connecting to the database.
  • Updated the generator. Should be more consistent. Deprecated fields
  • are not longer necessary as they are now generated along with current
  • fields.