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

wboayue / rust-ibapi / 25412502257
92%

Build:
DEFAULT BRANCH: main
Ran 06 May 2026 02:02AM 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:02AM UTC coverage: 87.91% (+0.04%) from 87.873%
25412502257

push

github

web-flow
refactor: remove dead per-T Notice/Message variants (closes #515) (#517)

* refactor: remove dead per-T Notice/Message variants (closes #515)

PR #506 moved warning/error classification into the dispatcher, which
emits pre-classified RoutedItem::Notice / RoutedItem::Error before
T::decode runs. Per-T Notice/Message variants on PlaceOrder, OrderUpdate,
CancelOrder, Orders, Executions, ExerciseOptions, MarketDepths, TickTypes
are unreachable on the production path; only MessageBusStub-based tests
kept them alive by bypassing the dispatcher.

Drop the variants and the IncomingMessages::Error decoder arms that
produced them. Migrate consumers:

- cancel_order test: drop dead-arm assertion. OrderStatus assertion is
  the meaningful coverage; generic SubscriptionItem::Notice surfacing
  is covered in src/subscriptions/sync_tests.rs.
- test_market_data_error_handling (sync + async): delete. Redundant
  with generic seam tests in subscriptions/{sync,async}_tests.rs and
  dispatcher classification tests in transport/sync/tests.rs.
- 7 examples: drop unreachable arms; rejection now arrives as terminal
  Err on the subscription, handled by existing Err arms.
- Doc-comments at orders/sync/mod.rs:268,406: drop removed arms.
- Integration cancel_bracket_order tests: drop CancelOrder::Notice half
  of the cancel-acceptable alternation; SubscriptionItem::Notice covers it.

Public-API breaking on main; v2-stable keeps existing per-T behavior.

* refactor: remove dead IncomingMessages::Error arms in realtime decoders

Per CLAUDE.md rule 14 (modernize touched modules): the BidAsk, MidPoint,
Bar, and Trade decoders in src/market_data/realtime/mod.rs each had an
IncomingMessages::Error => Err(Error::from(message.clone())) arm that is
unreachable post-PR-506 — the dispatcher pre-classifies error frames into
RoutedItem::{Notice,Error} before T::decode runs.

Drop the arms, drop IncomingMessages::Error from Bar's RESPONSE_MESSAGE_IDS.

test_realtime_bars_error_handling (sync... (continued)

17262 of 19636 relevant lines covered (87.91%)

26.68 hits per line

Coverage Regressions

Lines Coverage ∆ File
3
79.76
5.57% src/market_data/realtime/mod.rs
3
91.77
-0.43% src/messages.rs
1
59.39
0.0% src/contracts/types.rs
1
72.37
4.08% src/orders/common/stream_decoders.rs
Jobs
ID Job ID Ran Files Coverage
1 25412502257.1 06 May 2026 02:02AM UTC 124
87.91
GitHub Action Run
Source Files on build 25412502257
  • Tree
  • List 124
  • Changed 6
  • Source Changed 4
  • Coverage Changed 5
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #25412502257
  • 18db08b5 on github
  • Prev Build on main (#25406495849)
  • Next Build on main (#25413798864)
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