jspurefix 5.8.5 → 5.9.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (180) hide show
  1. package/.gitattributes +4 -0
  2. package/BACKPORT_PLAN.md +84 -0
  3. package/DEMO_PORT_PLAN.md +10 -0
  4. package/README.md +3 -0
  5. package/WORKLOG.md +119 -0
  6. package/dist/benchmark/bench-report.d.ts +5 -0
  7. package/dist/benchmark/bench-report.js +91 -0
  8. package/dist/benchmark/bench-report.js.map +1 -0
  9. package/dist/benchmark/bench-runner.d.ts +12 -0
  10. package/dist/benchmark/bench-runner.js +193 -0
  11. package/dist/benchmark/bench-runner.js.map +1 -0
  12. package/dist/benchmark/bench-stats.d.ts +10 -0
  13. package/dist/benchmark/bench-stats.js +56 -0
  14. package/dist/benchmark/bench-stats.js.map +1 -0
  15. package/dist/benchmark/bench-types.d.ts +74 -0
  16. package/dist/benchmark/bench-types.js +3 -0
  17. package/dist/benchmark/bench-types.js.map +1 -0
  18. package/dist/benchmark/gc-probe.d.ts +18 -0
  19. package/dist/benchmark/gc-probe.js +103 -0
  20. package/dist/benchmark/gc-probe.js.map +1 -0
  21. package/dist/benchmark/index.d.ts +6 -0
  22. package/dist/benchmark/index.js +23 -0
  23. package/dist/benchmark/index.js.map +1 -0
  24. package/dist/benchmark/parse-bench.d.ts +28 -0
  25. package/dist/benchmark/parse-bench.js +85 -0
  26. package/dist/benchmark/parse-bench.js.map +1 -0
  27. package/dist/buffer/ascii/ascii-parser.d.ts +1 -0
  28. package/dist/buffer/ascii/ascii-parser.js +4 -1
  29. package/dist/buffer/ascii/ascii-parser.js.map +1 -1
  30. package/dist/buffer/ascii/ascii-segment-parser.js +3 -2
  31. package/dist/buffer/ascii/ascii-segment-parser.js.map +1 -1
  32. package/dist/buffer/ascii/tag-index.js.map +1 -1
  33. package/dist/buffer/msg-view.d.ts +1 -0
  34. package/dist/buffer/msg-view.js +25 -19
  35. package/dist/buffer/msg-view.js.map +1 -1
  36. package/dist/config/js-fix-config.d.ts +4 -0
  37. package/dist/config/js-fix-config.js.map +1 -1
  38. package/dist/dictionary/parser/quickfix/dictionary-validator.d.ts +1 -1
  39. package/dist/dictionary/parser/quickfix/dictionary-validator.js.map +1 -1
  40. package/dist/dictionary/parser/quickfix/quick-fix-graph-parser.d.ts +1 -1
  41. package/dist/dictionary/parser/quickfix/quick-fix-graph-parser.js +1 -2
  42. package/dist/dictionary/parser/quickfix/quick-fix-graph-parser.js.map +1 -1
  43. package/dist/dictionary/parser/quickfix/validation-error.d.ts +2 -2
  44. package/dist/dictionary/parser/quickfix/validation-error.js.map +1 -1
  45. package/dist/jsfix-bench.d.ts +1 -0
  46. package/dist/jsfix-bench.js +213 -0
  47. package/dist/jsfix-bench.js.map +1 -0
  48. package/dist/runtime/session-launcher.js +1 -1
  49. package/dist/runtime/session-launcher.js.map +1 -1
  50. package/dist/runtime/session-scope.d.ts +3 -0
  51. package/dist/runtime/session-scope.js +47 -0
  52. package/dist/runtime/session-scope.js.map +1 -0
  53. package/dist/sample/http/oms/app.js +3 -3
  54. package/dist/sample/http/oms/app.js.map +1 -1
  55. package/dist/sample/tcp/qf-md/app.js +3 -3
  56. package/dist/sample/tcp/qf-md/app.js.map +1 -1
  57. package/dist/sample/tcp/skeleton/app.js +1 -1
  58. package/dist/sample/tcp/skeleton/app.js.map +1 -1
  59. package/dist/sample/tcp/trade-capture/app-launcher.js +3 -3
  60. package/dist/sample/tcp/trade-capture/app-launcher.js.map +1 -1
  61. package/dist/store/file-session-store.js +1 -1
  62. package/dist/store/file-session-store.js.map +1 -1
  63. package/dist/store/file-session-stream-provider.d.ts +1 -0
  64. package/dist/store/file-session-stream-provider.js +13 -13
  65. package/dist/store/file-session-stream-provider.js.map +1 -1
  66. package/dist/store/fix-session-store-factory.d.ts +1 -1
  67. package/dist/store/fix-session-store-factory.js.map +1 -1
  68. package/dist/store/fix-session-store.d.ts +11 -11
  69. package/dist/store/fix-session-store.js.map +1 -1
  70. package/dist/store/memory-session-store.js.map +1 -1
  71. package/dist/store/session-stream-provider.d.ts +13 -13
  72. package/dist/store/session-stream-provider.js.map +1 -1
  73. package/dist/transport/ascii/ascii-session.d.ts +17 -3
  74. package/dist/transport/ascii/ascii-session.js +121 -8
  75. package/dist/transport/ascii/ascii-session.js.map +1 -1
  76. package/dist/transport/duplex/fix-duplex.d.ts +1 -0
  77. package/dist/transport/duplex/fix-duplex.js +3 -0
  78. package/dist/transport/duplex/fix-duplex.js.map +1 -1
  79. package/dist/transport/duplex/tcp-duplex.d.ts +1 -0
  80. package/dist/transport/duplex/tcp-duplex.js +5 -0
  81. package/dist/transport/duplex/tcp-duplex.js.map +1 -1
  82. package/dist/transport/factory/msg-transport.d.ts +2 -0
  83. package/dist/transport/factory/msg-transport.js +17 -2
  84. package/dist/transport/factory/msg-transport.js.map +1 -1
  85. package/dist/transport/session/a-session-msg-factory.d.ts +1 -0
  86. package/dist/transport/session/a-session-msg-factory.js +4 -0
  87. package/dist/transport/session/a-session-msg-factory.js.map +1 -1
  88. package/dist/transport/session/clone-session-description.d.ts +6 -0
  89. package/dist/transport/session/clone-session-description.js +11 -0
  90. package/dist/transport/session/clone-session-description.js.map +1 -0
  91. package/dist/transport/session/fix-clock.d.ts +1 -1
  92. package/dist/transport/session/fix-clock.js.map +1 -1
  93. package/dist/transport/session/fix-session.d.ts +5 -1
  94. package/dist/transport/session/fix-session.js +93 -24
  95. package/dist/transport/session/fix-session.js.map +1 -1
  96. package/dist/transport/session/index.d.ts +2 -0
  97. package/dist/transport/session/index.js +2 -0
  98. package/dist/transport/session/index.js.map +1 -1
  99. package/dist/transport/session/resend-request-manager.d.ts +2 -2
  100. package/dist/transport/session/resend-request-manager.js.map +1 -1
  101. package/dist/transport/session/session-msg-factory.d.ts +1 -0
  102. package/dist/transport/session/session-msg-factory.js.map +1 -1
  103. package/dist/transport/session/session-registry.d.ts +23 -0
  104. package/dist/transport/session/session-registry.js +59 -0
  105. package/dist/transport/session/session-registry.js.map +1 -0
  106. package/dist/transport/session/session-sequence-coordinator.d.ts +1 -1
  107. package/dist/transport/session/session-sequence-coordinator.js.map +1 -1
  108. package/dist/transport/session/session-sequence-store.d.ts +3 -3
  109. package/dist/transport/session/session-sequence-store.js.map +1 -1
  110. package/dist/transport/tcp/tcp-acceptor-listener.d.ts +3 -0
  111. package/dist/transport/tcp/tcp-acceptor-listener.js +26 -4
  112. package/dist/transport/tcp/tcp-acceptor-listener.js.map +1 -1
  113. package/dist/transport/tcp/tcp-acceptor.d.ts +5 -0
  114. package/dist/transport/tcp/tcp-acceptor.js +74 -20
  115. package/dist/transport/tcp/tcp-acceptor.js.map +1 -1
  116. package/dist/transport/tcp/tcp-initiator.js +15 -5
  117. package/dist/transport/tcp/tcp-initiator.js.map +1 -1
  118. package/dist/transport/tcp/tcp-transport-description.d.ts +1 -0
  119. package/dist/transport/tcp/tcp-transport-description.js.map +1 -1
  120. package/dist/transport/tcp/tls-diagnostics.d.ts +5 -0
  121. package/dist/transport/tcp/tls-diagnostics.js +64 -0
  122. package/dist/transport/tcp/tls-diagnostics.js.map +1 -0
  123. package/dist/transport/tcp/tls-options-factory.d.ts +1 -0
  124. package/dist/transport/tcp/tls-options-factory.js +24 -2
  125. package/dist/transport/tcp/tls-options-factory.js.map +1 -1
  126. package/docs/acceptor.md +207 -0
  127. package/docs/benchmarking.md +117 -0
  128. package/eslint.config.mjs +15 -1
  129. package/jsfix.test_client.txt +62 -75
  130. package/jsfix.test_server.txt +72 -72
  131. package/package.json +19 -10
  132. package/script/pack-local.js +68 -0
  133. package/src/benchmark/bench-report.ts +101 -0
  134. package/src/benchmark/bench-runner.ts +196 -0
  135. package/src/benchmark/bench-stats.ts +86 -0
  136. package/src/benchmark/bench-types.ts +110 -0
  137. package/src/benchmark/gc-probe.ts +145 -0
  138. package/src/benchmark/index.ts +6 -0
  139. package/src/benchmark/parse-bench.ts +144 -0
  140. package/src/buffer/ascii/ascii-parser.ts +16 -1
  141. package/src/buffer/ascii/ascii-segment-parser.ts +9 -6
  142. package/src/buffer/ascii/tag-index.ts +3 -3
  143. package/src/buffer/msg-view.ts +35 -18
  144. package/src/config/js-fix-config.ts +8 -0
  145. package/src/dictionary/parser/quickfix/dictionary-validator.ts +1 -1
  146. package/src/dictionary/parser/quickfix/quick-fix-graph-parser.ts +2 -3
  147. package/src/dictionary/parser/quickfix/validation-error.ts +1 -1
  148. package/src/jsfix-bench.ts +204 -0
  149. package/src/runtime/session-launcher.ts +5 -1
  150. package/src/runtime/session-scope.ts +84 -0
  151. package/src/sample/http/oms/app.ts +3 -3
  152. package/src/sample/tcp/qf-md/app.ts +3 -3
  153. package/src/sample/tcp/skeleton/app.ts +1 -1
  154. package/src/sample/tcp/trade-capture/app-launcher.ts +3 -3
  155. package/src/store/file-session-store.ts +2 -2
  156. package/src/store/file-session-stream-provider.ts +17 -11
  157. package/src/store/fix-session-store-factory.ts +1 -1
  158. package/src/store/fix-session-store.ts +11 -11
  159. package/src/store/memory-session-store.ts +1 -1
  160. package/src/store/session-stream-provider.ts +13 -13
  161. package/src/transport/ascii/ascii-session.ts +186 -11
  162. package/src/transport/duplex/fix-duplex.ts +9 -0
  163. package/src/transport/duplex/tcp-duplex.ts +10 -0
  164. package/src/transport/factory/msg-transport.ts +20 -0
  165. package/src/transport/session/a-session-msg-factory.ts +18 -0
  166. package/src/transport/session/clone-session-description.ts +41 -0
  167. package/src/transport/session/fix-clock.ts +1 -1
  168. package/src/transport/session/fix-session.ts +136 -25
  169. package/src/transport/session/index.ts +2 -0
  170. package/src/transport/session/resend-request-manager.ts +4 -4
  171. package/src/transport/session/session-msg-factory.ts +13 -0
  172. package/src/transport/session/session-registry.ts +112 -0
  173. package/src/transport/session/session-sequence-coordinator.ts +1 -1
  174. package/src/transport/session/session-sequence-store.ts +3 -3
  175. package/src/transport/tcp/tcp-acceptor-listener.ts +43 -5
  176. package/src/transport/tcp/tcp-acceptor.ts +92 -18
  177. package/src/transport/tcp/tcp-initiator.ts +26 -5
  178. package/src/transport/tcp/tcp-transport-description.ts +7 -0
  179. package/src/transport/tcp/tls-diagnostics.ts +76 -0
  180. package/src/transport/tcp/tls-options-factory.ts +34 -2
@@ -1,75 +1,62 @@
1
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:11.383|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=099|
2
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:11.389|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=153|
3
- 8=FIX.4.4|9=0000079|35=2|49=init-comp|56=accept-comp|34=2|57=fix|52=20260702-18:44:11.390|7=1|16=1|10=232|
4
- 8=FIX.4.4|9=0000112|35=4|49=accept-comp|56=init-comp|34=1|57=fix|43=Y|52=20260702-18:44:11.395|122=20260702-18:44:11.394|123=Y|36=2|10=104|
5
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:44:13.395|58=5|10=215|
6
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260702-18:44:13.393|58=5|10=214|
7
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:16.213|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=096|
8
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:16.214|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=145|
9
- 8=FIX.4.4|9=0000079|35=2|49=init-comp|56=accept-comp|34=2|57=fix|52=20260702-18:44:16.215|7=1|16=0|10=232|
10
- 8=FIX.4.4|9=0000112|35=4|49=accept-comp|56=init-comp|34=1|57=fix|43=Y|52=20260702-18:44:16.218|122=20260702-18:44:16.218|123=Y|36=2|10=103|
11
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:44:18.218|58=5|10=214|
12
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260702-18:44:18.217|58=5|10=214|
13
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:20.696|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=106|
14
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:20.697|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=155|
15
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=2|57=fix|52=20260702-18:44:20.697|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=108|
16
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:21.232|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=093|
17
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:21.233|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=142|
18
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:44:22.237|58=5|10=210|
19
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=20260702-18:44:22.235|58=5|10=208|
20
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260702-18:44:22.700|58=5|10=206|
21
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:24.949|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=111|
22
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:24.951|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=152|
23
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:44:25.953|58=5|10=218|
24
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=20260702-18:44:25.952|58=5|10=217|
25
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:28.714|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=105|
26
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:28.716|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=155|
27
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=0|57=fix|52=20260702-18:44:29.718|58=5|10=219|
28
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:32.201|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=091|
29
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=5|57=fix|52=20260702-18:44:32.202|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=144|
30
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:44:33.205|58=5|10=207|
31
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=20260702-18:44:33.204|58=5|10=206|
32
- 8=FIX.4.4|9=0000110|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:35.682|98=0|141=Y|553=js-client|554=pwd-client|10=175|
33
- 8=FIX.4.4|9=0000125|35=3|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:35.683|45=1|372=A|373=1|58=msgType A missing required tag 108|10=009|
34
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:40.298|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=106|
35
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:40.300|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=138|
36
- 8=FIX.4.4|9=0000111|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:44:40.301|45=2|372=ZZ|373=11|58=msgType ZZ unknown|10=140|
37
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260702-18:44:42.302|58=5|10=206|
38
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260702-18:44:42.301|58=5|10=205|
39
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:45.057|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=104|
40
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:45.059|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=154|
41
- 8=FIX.4.4|9=0000146|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:44:45.061|45=2|372=0|373=5|58=msgType 0 checksum failed. received = 95 computed = 143|10=069|
42
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260702-18:44:47.061|58=5|10=213|
43
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260702-18:44:47.060|58=5|10=212|
44
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:49.059|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=110|
45
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:49.059|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=110|
46
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:53.545|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=105|
47
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:53.546|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=154|
48
- 8=FIX.4.4|9=0000145|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:44:53.548|45=2|372=0|373=5|58=msgType 0 checksum failed. received = 95 computed = 59|10=035|
49
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260702-18:44:55.548|58=5|10=222|
50
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260702-18:44:55.547|58=5|10=221|
51
- 8=FIX.4.4|9=0000116|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:58.026|98=0|108=2|141=Y|553=js-client|554=pwd-client|10=054|
52
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:58.027|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=153|
53
- 8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=2|57=fix|52=20260702-18:45:00.032|112=Thu, 02 Jul 2026 18:45:00 GMT|10=144|
54
- 8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=3|57=fix|52=20260702-18:45:02.036|112=Thu, 02 Jul 2026 18:45:02 GMT|10=153|
55
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:45:04.029|58=5|10=210|
56
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=4|57=fix|52=20260702-18:45:04.028|58=5|10=211|
57
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:45:06.501|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=096|
58
- 8=FIX.4.4|9=0000116|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:45:06.502|98=0|108=2|141=Y|553=js-server|554=pwd-server|10=095|
59
- 8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:45:08.505|112=Thu, 02 Jul 2026 18:45:08 GMT|10=165|
60
- 8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=3|57=fix|52=20260702-18:45:10.509|112=Thu, 02 Jul 2026 18:45:10 GMT|10=156|
61
- 8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=4|57=fix|52=20260702-18:45:12.514|112=Thu, 02 Jul 2026 18:45:12 GMT|10=157|
62
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=5|57=fix|52=20260702-18:45:14.504|58=5|10=212|
63
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=20260702-18:45:14.503|58=5|10=208|
64
- 8=FIX.4.4|9=0000116|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:45:17.227|98=0|108=2|141=Y|553=js-client|554=pwd-client|10=053|
65
- 8=FIX.4.4|9=0000116|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:45:17.229|98=0|108=5|141=Y|553=js-server|554=pwd-server|10=106|
66
- 8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=2|57=fix|52=20260702-18:45:19.235|112=Thu, 02 Jul 2026 18:45:19 GMT|10=169|
67
- 8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=3|57=fix|52=20260702-18:45:21.238|112=Thu, 02 Jul 2026 18:45:21 GMT|10=159|
68
- 8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:45:22.241|112=Thu, 02 Jul 2026 18:45:22 GMT|10=154|
69
- 8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=4|57=fix|52=20260702-18:45:23.241|112=Thu, 02 Jul 2026 18:45:23 GMT|10=158|
70
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260702-18:45:25.231|58=5|10=209|
71
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=5|57=fix|52=20260702-18:45:25.230|58=5|10=210|
72
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:46:56.521|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=104|
73
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:46:56.531|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=153|
74
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:46:57.536|58=5|10=222|
75
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=20260702-18:46:57.534|58=5|10=220|
1
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:47:29.192|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=108|
2
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:47:29.199|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=163|
3
+ 8=FIX.4.4|9=0000079|35=2|49=init-comp|56=accept-comp|34=2|57=fix|52=20260802-16:47:29.200|7=1|16=1|10=233|
4
+ 8=FIX.4.4|9=0000112|35=4|49=accept-comp|56=init-comp|34=1|57=fix|43=Y|52=20260802-16:47:29.205|122=20260802-16:47:29.204|123=Y|36=2|10=106|
5
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:47:31.203|58=5|10=205|
6
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:47:34.035|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=100|
7
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:47:34.037|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=150|
8
+ 8=FIX.4.4|9=0000079|35=2|49=init-comp|56=accept-comp|34=2|57=fix|52=20260802-16:47:34.038|7=1|16=0|10=237|
9
+ 8=FIX.4.4|9=0000112|35=4|49=accept-comp|56=init-comp|34=1|57=fix|43=Y|52=20260802-16:47:34.041|122=20260802-16:47:34.041|123=Y|36=2|10=095|
10
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:47:36.041|58=5|10=210|
11
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:47:38.525|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=108|
12
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:47:38.527|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=158|
13
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=2|57=fix|52=20260802-16:47:38.527|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=111|
14
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:47:39.070|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=104|
15
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:47:39.071|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=153|
16
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:47:40.075|58=5|10=212|
17
+ 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260802-16:47:40.529|58=5|10=217|
18
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:47:42.868|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=113|
19
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:47:42.870|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=154|
20
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:47:43.872|58=5|10=220|
21
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:47:46.667|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=114|
22
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:47:46.668|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=163|
23
+ 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=0|57=fix|52=20260802-16:47:47.670|58=5|10=218|
24
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:47:50.181|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=100|
25
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=5|57=fix|52=20260802-16:47:50.182|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=153|
26
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:47:51.184|58=5|10=215|
27
+ 8=FIX.4.4|9=0000110|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:47:53.673|98=0|141=Y|553=js-client|554=pwd-client|10=177|
28
+ 8=FIX.4.4|9=0000125|35=3|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:47:53.674|45=1|372=A|373=1|58=msgType A missing required tag 108|10=011|
29
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:47:58.294|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=113|
30
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:47:58.296|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=163|
31
+ 8=FIX.4.4|9=0000111|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:47:58.298|45=2|372=ZZ|373=11|58=msgType ZZ unknown|10=166|
32
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260802-16:48:00.298|58=5|10=217|
33
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:48:03.059|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=103|
34
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:48:03.061|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=144|
35
+ 8=FIX.4.4|9=0000146|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:48:03.063|45=2|372=0|373=5|58=msgType 0 checksum failed. received = 95 computed = 143|10=068|
36
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260802-16:48:05.063|58=5|10=212|
37
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:48:07.062|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=101|
38
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:48:11.555|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=103|
39
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:48:11.556|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=152|
40
+ 8=FIX.4.4|9=0000145|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:48:11.558|45=2|372=0|373=5|58=msgType 0 checksum failed. received = 95 computed = 59|10=033|
41
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260802-16:48:13.559|58=5|10=221|
42
+ 8=FIX.4.4|9=0000116|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:48:16.035|98=0|108=2|141=Y|553=js-client|554=pwd-client|10=051|
43
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:48:16.036|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=150|
44
+ 8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=2|57=fix|52=20260802-16:48:18.042|112=Sun, 02 Aug 2026 16:48:18 GMT|10=157|
45
+ 8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=3|57=fix|52=20260802-16:48:20.242|112=Sun, 02 Aug 2026 16:48:20 GMT|10=146|
46
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:48:22.039|58=5|10=213|
47
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:48:24.515|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=103|
48
+ 8=FIX.4.4|9=0000116|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:48:24.516|98=0|108=2|141=Y|553=js-server|554=pwd-server|10=102|
49
+ 8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:48:26.523|112=Sun, 02 Aug 2026 16:48:26 GMT|10=159|
50
+ 8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=3|57=fix|52=20260802-16:48:28.525|112=Sun, 02 Aug 2026 16:48:28 GMT|10=166|
51
+ 8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=4|57=fix|52=20260802-16:48:30.531|112=Sun, 02 Aug 2026 16:48:30 GMT|10=150|
52
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=5|57=fix|52=20260802-16:48:32.518|58=5|10=219|
53
+ 8=FIX.4.4|9=0000116|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:48:35.238|98=0|108=2|141=Y|553=js-client|554=pwd-client|10=057|
54
+ 8=FIX.4.4|9=0000116|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:48:35.239|98=0|108=5|141=Y|553=js-server|554=pwd-server|10=109|
55
+ 8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=2|57=fix|52=20260802-16:48:37.244|112=Sun, 02 Aug 2026 16:48:37 GMT|10=163|
56
+ 8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=3|57=fix|52=20260802-16:48:39.248|112=Sun, 02 Aug 2026 16:48:39 GMT|10=172|
57
+ 8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:48:40.250|112=Sun, 02 Aug 2026 16:48:40 GMT|10=148|
58
+ 8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=4|57=fix|52=20260802-16:48:41.251|112=Sun, 02 Aug 2026 16:48:41 GMT|10=153|
59
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260802-16:48:43.242|58=5|10=213|
60
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:50:41.579|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=105|
61
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:50:41.589|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=154|
62
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:50:42.593|58=5|10=213|
@@ -1,75 +1,75 @@
1
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:11.383|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=099|
2
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:11.389|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=153|
3
- 8=FIX.4.4|9=0000079|35=2|49=init-comp|56=accept-comp|34=2|57=fix|52=20260702-18:44:11.390|7=1|16=1|10=232|
4
- 8=FIX.4.4|9=0000112|35=4|49=accept-comp|56=init-comp|34=1|57=fix|43=Y|52=20260702-18:44:11.395|122=20260702-18:44:11.394|123=Y|36=2|10=104|
5
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260702-18:44:13.393|58=5|10=214|
6
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:44:13.395|58=5|10=215|
7
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:16.213|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=096|
8
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:16.214|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=145|
9
- 8=FIX.4.4|9=0000079|35=2|49=init-comp|56=accept-comp|34=2|57=fix|52=20260702-18:44:16.215|7=1|16=0|10=232|
10
- 8=FIX.4.4|9=0000112|35=4|49=accept-comp|56=init-comp|34=1|57=fix|43=Y|52=20260702-18:44:16.218|122=20260702-18:44:16.218|123=Y|36=2|10=103|
11
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260702-18:44:18.217|58=5|10=214|
12
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:44:18.218|58=5|10=214|
13
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:20.696|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=106|
14
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:20.697|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=155|
15
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=2|57=fix|52=20260702-18:44:20.697|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=108|
16
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:21.232|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=093|
17
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:21.233|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=142|
18
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=20260702-18:44:22.235|58=5|10=208|
19
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:44:22.237|58=5|10=210|
20
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:24.949|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=111|
21
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:24.951|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=152|
22
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=20260702-18:44:25.952|58=5|10=217|
23
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:44:25.953|58=5|10=218|
24
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:28.714|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=105|
25
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:28.716|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=155|
26
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=0|57=fix|52=20260702-18:44:29.718|58=5|10=219|
27
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:32.201|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=091|
28
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=5|57=fix|52=20260702-18:44:32.202|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=144|
29
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=20260702-18:44:33.204|58=5|10=206|
30
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:44:33.205|58=5|10=207|
31
- 8=FIX.4.4|9=0000110|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:35.682|98=0|141=Y|553=js-client|554=pwd-client|10=175|
32
- 8=FIX.4.4|9=0000125|35=3|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:35.683|45=1|372=A|373=1|58=msgType A missing required tag 108|10=009|
33
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:40.298|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=106|
34
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:40.300|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=138|
1
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:47:29.192|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=108|
2
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:47:29.199|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=163|
3
+ 8=FIX.4.4|9=0000079|35=2|49=init-comp|56=accept-comp|34=2|57=fix|52=20260802-16:47:29.200|7=1|16=1|10=233|
4
+ 8=FIX.4.4|9=0000112|35=4|49=accept-comp|56=init-comp|34=1|57=fix|43=Y|52=20260802-16:47:29.205|122=20260802-16:47:29.204|123=Y|36=2|10=106|
5
+ 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260802-16:47:31.202|58=5|10=205|
6
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:47:31.203|58=5|10=205|
7
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:47:34.035|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=100|
8
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:47:34.037|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=150|
9
+ 8=FIX.4.4|9=0000079|35=2|49=init-comp|56=accept-comp|34=2|57=fix|52=20260802-16:47:34.038|7=1|16=0|10=237|
10
+ 8=FIX.4.4|9=0000112|35=4|49=accept-comp|56=init-comp|34=1|57=fix|43=Y|52=20260802-16:47:34.041|122=20260802-16:47:34.041|123=Y|36=2|10=095|
11
+ 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260802-16:47:36.040|58=5|10=210|
12
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:47:36.041|58=5|10=210|
13
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:47:38.525|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=108|
14
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:47:38.527|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=158|
15
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=2|57=fix|52=20260802-16:47:38.527|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=111|
16
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:47:39.070|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=104|
17
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:47:39.071|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=153|
18
+ 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=20260802-16:47:40.074|58=5|10=211|
19
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:47:40.075|58=5|10=212|
20
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:47:42.868|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=113|
21
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:47:42.870|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=154|
22
+ 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=20260802-16:47:43.871|58=5|10=219|
23
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:47:43.872|58=5|10=220|
24
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:47:46.667|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=114|
25
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:47:46.668|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=163|
26
+ 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=0|57=fix|52=20260802-16:47:47.670|58=5|10=218|
27
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:47:50.181|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=100|
28
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=5|57=fix|52=20260802-16:47:50.182|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=153|
29
+ 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=20260802-16:47:51.183|58=5|10=214|
30
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:47:51.184|58=5|10=215|
31
+ 8=FIX.4.4|9=0000110|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:47:53.673|98=0|141=Y|553=js-client|554=pwd-client|10=177|
32
+ 8=FIX.4.4|9=0000125|35=3|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:47:53.674|45=1|372=A|373=1|58=msgType A missing required tag 108|10=011|
33
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:47:58.294|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=113|
34
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:47:58.296|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=163|
35
35
  8=FIX4.4|9=0000136|35=ZZ|49=init-comp|56=accept-comp|34=2|57=fix|52=20180902-12:25:28.980|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=177|
36
- 8=FIX.4.4|9=0000111|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:44:40.301|45=2|372=ZZ|373=11|58=msgType ZZ unknown|10=140|
37
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260702-18:44:42.301|58=5|10=205|
38
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260702-18:44:42.302|58=5|10=206|
39
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:45.057|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=104|
40
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:45.059|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=154|
36
+ 8=FIX.4.4|9=0000111|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:47:58.298|45=2|372=ZZ|373=11|58=msgType ZZ unknown|10=166|
37
+ 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260802-16:48:00.297|58=5|10=216|
38
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260802-16:48:00.298|58=5|10=217|
39
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:48:03.059|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=103|
40
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:48:03.061|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=144|
41
41
  8=FIX4.4|9=0000123|35=0|49=init-comp|56=accept-comp|34=2|57=fix|52=20180902-12:25:59.161|999=Sun, 02 Sep 2018 12:25:59 GMT|10=95|
42
- 8=FIX.4.4|9=0000146|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:44:45.061|45=2|372=0|373=5|58=msgType 0 checksum failed. received = 95 computed = 143|10=069|
43
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260702-18:44:47.060|58=5|10=212|
44
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260702-18:44:47.061|58=5|10=213|
45
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:53.545|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=105|
46
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:53.546|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=154|
42
+ 8=FIX.4.4|9=0000146|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:48:03.063|45=2|372=0|373=5|58=msgType 0 checksum failed. received = 95 computed = 143|10=068|
43
+ 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260802-16:48:05.062|58=5|10=211|
44
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260802-16:48:05.063|58=5|10=212|
45
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:48:11.555|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=103|
46
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:48:11.556|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=152|
47
47
  8=FIX4.4|9=0000123|35=0|49=init-not!|56=accept-comp|34=2|57=fix|52=20180902-12:25:59.161|112=Sun, 02 Sep 2018 12:25:59 GMT|10=95|
48
- 8=FIX.4.4|9=0000145|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:44:53.548|45=2|372=0|373=5|58=msgType 0 checksum failed. received = 95 computed = 59|10=035|
49
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260702-18:44:55.547|58=5|10=221|
50
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260702-18:44:55.548|58=5|10=222|
51
- 8=FIX.4.4|9=0000116|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:44:58.026|98=0|108=2|141=Y|553=js-client|554=pwd-client|10=054|
52
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:44:58.027|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=153|
53
- 8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=2|57=fix|52=20260702-18:45:00.032|112=Thu, 02 Jul 2026 18:45:00 GMT|10=144|
54
- 8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=3|57=fix|52=20260702-18:45:02.036|112=Thu, 02 Jul 2026 18:45:02 GMT|10=153|
55
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=4|57=fix|52=20260702-18:45:04.028|58=5|10=211|
56
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:45:04.029|58=5|10=210|
57
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:45:06.501|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=096|
58
- 8=FIX.4.4|9=0000116|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:45:06.502|98=0|108=2|141=Y|553=js-server|554=pwd-server|10=095|
59
- 8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:45:08.505|112=Thu, 02 Jul 2026 18:45:08 GMT|10=165|
60
- 8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=3|57=fix|52=20260702-18:45:10.509|112=Thu, 02 Jul 2026 18:45:10 GMT|10=156|
61
- 8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=4|57=fix|52=20260702-18:45:12.514|112=Thu, 02 Jul 2026 18:45:12 GMT|10=157|
62
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=20260702-18:45:14.503|58=5|10=208|
63
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=5|57=fix|52=20260702-18:45:14.504|58=5|10=212|
64
- 8=FIX.4.4|9=0000116|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:45:17.227|98=0|108=2|141=Y|553=js-client|554=pwd-client|10=053|
65
- 8=FIX.4.4|9=0000116|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:45:17.229|98=0|108=5|141=Y|553=js-server|554=pwd-server|10=106|
66
- 8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=2|57=fix|52=20260702-18:45:19.235|112=Thu, 02 Jul 2026 18:45:19 GMT|10=169|
67
- 8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=3|57=fix|52=20260702-18:45:21.238|112=Thu, 02 Jul 2026 18:45:21 GMT|10=159|
68
- 8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:45:22.241|112=Thu, 02 Jul 2026 18:45:22 GMT|10=154|
69
- 8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=4|57=fix|52=20260702-18:45:23.241|112=Thu, 02 Jul 2026 18:45:23 GMT|10=158|
70
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=5|57=fix|52=20260702-18:45:25.230|58=5|10=210|
71
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260702-18:45:25.231|58=5|10=209|
72
- 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260702-18:46:56.521|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=104|
73
- 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260702-18:46:56.531|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=153|
74
- 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=20260702-18:46:57.534|58=5|10=220|
75
- 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260702-18:46:57.536|58=5|10=222|
48
+ 8=FIX.4.4|9=0000145|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:48:11.558|45=2|372=0|373=5|58=msgType 0 checksum failed. received = 95 computed = 59|10=033|
49
+ 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260802-16:48:13.558|58=5|10=220|
50
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260802-16:48:13.559|58=5|10=221|
51
+ 8=FIX.4.4|9=0000116|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:48:16.035|98=0|108=2|141=Y|553=js-client|554=pwd-client|10=051|
52
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:48:16.036|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=150|
53
+ 8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=2|57=fix|52=20260802-16:48:18.042|112=Sun, 02 Aug 2026 16:48:18 GMT|10=157|
54
+ 8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=3|57=fix|52=20260802-16:48:20.242|112=Sun, 02 Aug 2026 16:48:20 GMT|10=146|
55
+ 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=4|57=fix|52=20260802-16:48:22.038|58=5|10=214|
56
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:48:22.039|58=5|10=213|
57
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:48:24.515|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=103|
58
+ 8=FIX.4.4|9=0000116|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:48:24.516|98=0|108=2|141=Y|553=js-server|554=pwd-server|10=102|
59
+ 8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:48:26.523|112=Sun, 02 Aug 2026 16:48:26 GMT|10=159|
60
+ 8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=3|57=fix|52=20260802-16:48:28.525|112=Sun, 02 Aug 2026 16:48:28 GMT|10=166|
61
+ 8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=4|57=fix|52=20260802-16:48:30.531|112=Sun, 02 Aug 2026 16:48:30 GMT|10=150|
62
+ 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=20260802-16:48:32.517|58=5|10=215|
63
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=5|57=fix|52=20260802-16:48:32.518|58=5|10=219|
64
+ 8=FIX.4.4|9=0000116|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:48:35.238|98=0|108=2|141=Y|553=js-client|554=pwd-client|10=057|
65
+ 8=FIX.4.4|9=0000116|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:48:35.239|98=0|108=5|141=Y|553=js-server|554=pwd-server|10=109|
66
+ 8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=2|57=fix|52=20260802-16:48:37.244|112=Sun, 02 Aug 2026 16:48:37 GMT|10=163|
67
+ 8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=3|57=fix|52=20260802-16:48:39.248|112=Sun, 02 Aug 2026 16:48:39 GMT|10=172|
68
+ 8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:48:40.250|112=Sun, 02 Aug 2026 16:48:40 GMT|10=148|
69
+ 8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=4|57=fix|52=20260802-16:48:41.251|112=Sun, 02 Aug 2026 16:48:41 GMT|10=153|
70
+ 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=5|57=fix|52=20260802-16:48:43.241|58=5|10=214|
71
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260802-16:48:43.242|58=5|10=213|
72
+ 8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260802-16:50:41.579|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=105|
73
+ 8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260802-16:50:41.589|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=154|
74
+ 8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=20260802-16:50:42.592|58=5|10=212|
75
+ 8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260802-16:50:42.593|58=5|10=213|
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jspurefix",
3
- "version": "5.8.5",
3
+ "version": "5.9.2",
4
4
  "description": "pure node js fix engine",
5
5
  "keywords": [
6
6
  "typescript",
@@ -23,6 +23,7 @@
23
23
  "url": "git+https://github.com/TimelordUK/jspurefix.git"
24
24
  },
25
25
  "scripts": {
26
+ "pack:local": "node script/pack-local.js",
26
27
  "circular": "madge --circular --extensions js dist && madge --circular --extensions ts src",
27
28
  "test": "jest --maxWorkers=1 --coverage",
28
29
  "build": "tsc",
@@ -34,6 +35,14 @@
34
35
  "repo44-script": "node dist/jsfix-cmd --dict=repo44 --generate --density=0.8 --script --delimiter=\"|\" --repeats=50 --session=\"data/session/test-initiator.json\"",
35
36
  "repo44-replay": "node dist/jsfix-cmd --dict=repo44 --fix=data/examples/FIX.4.4/fix.txt --delimiter=\"|\" --stats--delimiter=\"|\" --objects",
36
37
  "repo44-repscr": "node dist/jsfix-cmd --dict=repo44 --fix=data/examples/FIX.4.4/fix.txt --delimiter=\"|\" --stats--delimiter=\"|\" --stats",
38
+ "bench": "node --expose-gc dist/jsfix-bench",
39
+ "bench:er": "node --expose-gc dist/jsfix-bench --dict=qf44 --fix=data/examples/FIX.4.4/quickfix/execution-report/fix.txt",
40
+ "bench:er2": "node --expose-gc dist/jsfix-bench --dict=qf44 --fix=data/examples/FIX.4.4/quickfix/execution-report2/fix.txt",
41
+ "bench:nos": "node --expose-gc dist/jsfix-bench --dict=qf43 --fix=data/examples/FIX.4.3/quickfix/new-order-single/fix.txt",
42
+ "bench:md": "node --expose-gc dist/jsfix-bench --dict=qf50sp2 --fix=data/examples/FIX.5.0SP2/quickfix/md-data-snapshot/fix.txt",
43
+ "bench:tc": "node --expose-gc dist/jsfix-bench --dict=repo44 --fix=data/examples/FIX.4.4/repo/trade-capture/fix.txt",
44
+ "bench:save": "node --expose-gc dist/jsfix-bench --save=benchmarks/baseline.json",
45
+ "bench:compare": "node --expose-gc dist/jsfix-bench --baseline=benchmarks/baseline.json",
37
46
  "repo44-bench": "node dist/jsfix-cmd --dict=repo44 --benchmark --delimiter=\"|\"",
38
47
  "qf43-bench-nos": "node dist/jsfix-cmd --dict=qf43 --fix=data/examples/FIX.4.3/quickfix/new-order-single/fix.txt --benchmark --delimiter=\"|\" --repeats=80000",
39
48
  "qf44-bench-er": "node dist/jsfix-cmd --dict=qf44 --fix=data/examples/FIX.4.4/quickfix/execution-report/fix.txt --benchmark --delimiter=\"|\" --repeats=80000",
@@ -74,9 +83,8 @@
74
83
  "author": "",
75
84
  "license": "MIT",
76
85
  "dependencies": {
77
- "@jest/globals": "^30.4.1",
78
86
  "align-text": "^1.0.2",
79
- "axios": "^1.16.1",
87
+ "axios": "^1.19.0",
80
88
  "express": "^5.2.1",
81
89
  "lodash": "^4.18.1",
82
90
  "mathjs": "^15.2.0",
@@ -85,30 +93,31 @@
85
93
  "moment": "^2.30.1",
86
94
  "node-fs-extra": "^0.8.2",
87
95
  "reflect-metadata": "^0.2.2",
88
- "sax": "^1.6.0",
96
+ "sax": "^1.6.1",
89
97
  "tsyringe": "^4.10.0",
90
98
  "winston": "^3.19.0",
91
99
  "word-wrap": "^1.2.5",
92
- "yauzl": "^3.3.1"
100
+ "yauzl": "^3.4.0"
93
101
  },
94
102
  "devDependencies": {
103
+ "@jest/globals": "^30.4.1",
95
104
  "@stylistic/eslint-plugin": "^5.10.0",
96
105
  "@types/express": "^5.0.6",
97
- "@types/express-serve-static-core": "^5.1.1",
106
+ "@types/express-serve-static-core": "^5.1.3",
98
107
  "@types/jest": "^30.0.0",
99
- "@types/lodash": "^4.17.24",
108
+ "@types/lodash": "^4.17.25",
100
109
  "@types/mathjs": "^9.4.2",
101
110
  "@types/minimist": "^1.2.5",
102
- "@types/node": "^25.9.1",
111
+ "@types/node": "^25.9.5",
103
112
  "@types/request-promise-native": "^1.0.21",
104
113
  "@types/sax": "^1.2.7",
105
114
  "@types/winston": "^2.4.4",
106
- "eslint": "^9.39.4",
115
+ "eslint": "^9.39.5",
107
116
  "eslint-config-love": "^151.0.0",
108
117
  "jest": "^30.4.2",
109
118
  "madge": "^8.0.0",
110
119
  "standard": "^17.1.2",
111
- "ts-jest": "^29.4.11",
120
+ "ts-jest": "^29.4.12",
112
121
  "typescript": "^6.0.3"
113
122
  }
114
123
  }
@@ -0,0 +1,68 @@
1
+ #!/usr/bin/env node
2
+ /*
3
+ * Build jspurefix and pack it into a tarball that a consumer (jspf-demo, an
4
+ * application repo) can install directly, without publishing to npm.
5
+ *
6
+ * Why a tarball rather than `npm link`:
7
+ * - a symlinked dependency resolves its own copy of reflect-metadata and
8
+ * tsyringe. Two copies means two decorator metadata registries, and tsyringe
9
+ * silently fails to resolve anything registered through the other one.
10
+ * - the tarball is exactly what `npm publish` would upload, so packaging
11
+ * mistakes (a file missing from "files", a stale dist) surface here rather
12
+ * than in a release.
13
+ *
14
+ * Usage:
15
+ * npm run pack:local -> ../.local-packages/jspurefix-<version>.tgz
16
+ * plus a stable ../.local-packages/jspurefix-local.tgz
17
+ * npm run pack:local -- --out D:\somewhere
18
+ */
19
+ const { execSync } = require('child_process')
20
+ const fs = require('fs')
21
+ const path = require('path')
22
+
23
+ /**
24
+ * npm is a .cmd shim on windows, which node refuses to execFile directly, so go
25
+ * through the shell. One command string rather than an argv array - passing args
26
+ * alongside shell:true is deprecated because they are concatenated unescaped.
27
+ */
28
+ function npmRun (command, stdio) {
29
+ // npm pack lists every file it adds - over 1MB of notices, well past the default
30
+ // maxBuffer - so give it room and keep stderr off the pipe
31
+ return execSync(`npm ${command}`, {
32
+ cwd: repoRoot,
33
+ stdio,
34
+ encoding: 'utf8',
35
+ maxBuffer: 64 * 1024 * 1024
36
+ })
37
+ }
38
+
39
+ const repoRoot = path.resolve(__dirname, '..')
40
+ const pkg = JSON.parse(fs.readFileSync(path.join(repoRoot, 'package.json'), 'utf8'))
41
+
42
+ function arg (name, fallback) {
43
+ const i = process.argv.indexOf(name)
44
+ return i >= 0 && process.argv[i + 1] ? process.argv[i + 1] : fallback
45
+ }
46
+
47
+ const outDir = path.resolve(arg('--out', path.join(repoRoot, '..', '.local-packages')))
48
+ fs.mkdirSync(outDir, { recursive: true })
49
+
50
+ console.log(`building ${pkg.name}@${pkg.version} ...`)
51
+ npmRun('run build', 'inherit')
52
+
53
+ console.log(`packing into ${outDir} ...`)
54
+ const packed = npmRun(`pack --pack-destination "${outDir}"`, ['ignore', 'pipe', 'ignore'])
55
+ .trim().split(/\r?\n/).pop()
56
+
57
+ const tarball = path.join(outDir, packed)
58
+ // a stable name so consumers do not have to chase the version number
59
+ const stable = path.join(outDir, `${pkg.name}-local.tgz`)
60
+ fs.copyFileSync(tarball, stable)
61
+
62
+ const sizeMb = (fs.statSync(tarball).size / (1024 * 1024)).toFixed(1)
63
+ console.log('')
64
+ console.log(` ${tarball} (${sizeMb} MB)`)
65
+ console.log(` ${stable} (stable alias)`)
66
+ console.log('')
67
+ console.log('install it in a consumer with:')
68
+ console.log(` npm install "${stable}"`)