• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

wboayue / rust-ibapi / 25413798864
92%

Build:
DEFAULT BRANCH: main
Ran 06 May 2026 02:50AM UTC
Jobs 1
Files 124
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

06 May 2026 02:49AM UTC coverage: 87.992% (+0.08%) from 87.91%
25413798864

push

github

web-flow
fix(decoders): proto-aware dispatch + TickTypes::MarketDataType (#508) (#516)

Root cause: TWS sends protobuf-format responses for most incoming
messages on server_version >= 201, but many decoders only ran the
text path. They EOF on field 2 because the protobuf ResponseMessage
carries only [msg_id_str] in fields (payload lives in raw_bytes).

Issue #508 was the visible symptom for TickTypes::decode (msg 58
fell into the catch-all Err(NotImplemented) and killed the
subscription). The same root cause silently broke ~11 other decoders.

Wires message.decode_proto_or_text(proto, text) across:
- TickTypes (+ new MarketDataType variant exposing the active feed)
- MarketDepthExchanges
- accounts: managed_accounts, position{,_multi}, account_value,
  account_portfolio_value, account_summary, account_multi_value,
  pnl{,_single}, family_codes
- contracts: contract_details, contract_descriptions, market_rule,
  option_chain
- historical_data: data, data_end, data_update, schedule, ticks_*,
  histogram_data, head_timestamp
- orders: open_order, order_status, execution_data,
  commission_report, completed_order, next_valid_id
- news: providers, bulletin, historical, article
- scanners: parameters, data

Adds 14 proto decoders for types previously missing a wrapper.
Drops #[allow(dead_code)] from the now-live ones.

Hardens TickTypes::decode catch-all from Err(NotImplemented) to
Err(UnexpectedResponse) so future unknown message types are
skip-classified rather than terminating the subscription.

Verified: live IB Gateway integration suite green except two
pre-existing unrelated failures (US-market-closed guard,
cancel_bracket_order code-202 notice classification).

Closes #508

840 of 906 new or added lines in 14 files covered. (92.72%)

5 existing lines in 3 files now uncovered.

17535 of 19928 relevant lines covered (87.99%)

26.52 hits per line

Uncovered Changes

Lines Coverage ∆ File
32
90.0
-0.34% src/market_data/historical/common/decoders/mod.rs
9
93.22
-0.27% src/orders/common/decoders/mod.rs
8
91.14
-0.64% src/messages.rs
7
81.44
1.68% src/market_data/realtime/mod.rs
3
74.6
-1.82% src/errors.rs
3
75.0
-4.17% src/market_data/mod.rs
2
93.22
1.22% src/contracts/common/decoders/mod.rs
1
93.81
2.06% src/accounts/common/decoders/mod.rs
1
98.96
0.28% src/news/common/decoders.rs

Coverage Regressions

Lines Coverage ∆ File
2
90.0
-0.34% src/market_data/historical/common/decoders/mod.rs
2
81.44
1.68% src/market_data/realtime/mod.rs
1
93.81
2.06% src/accounts/common/decoders/mod.rs
Jobs
ID Job ID Ran Files Coverage
1 25413798864.1 06 May 2026 02:50AM UTC 124
87.99
GitHub Action Run
Source Files on build 25413798864
  • Tree
  • List 124
  • Changed 18
  • Source Changed 18
  • Coverage Changed 16
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #25413798864
  • c803d0d0 on github
  • Prev Build on main (#25412502257)
  • Next Build on main (#25415024063)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc