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

wboayue / rust-ibapi / 26116576780
92%

Build:
DEFAULT BRANCH: main
Ran 19 May 2026 06:21PM UTC
Jobs 1
Files 128
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

19 May 2026 06:19PM UTC coverage: 92.141% (+0.03%) from 92.113%
26116576780

push

github

web-flow
errors: typed server-rejection variant — Error::Message → Error::Notice(Notice) (#591)

* errors: Error::Message → Error::Notice(Notice) typed rejection variant

TWS-emitted error frames now arrive as Error::Notice(Notice) on
Result<_, Error> returns, replacing Error::Message(i32, String).
The new variant carries the full typed Notice — code, message,
error_time, advanced_order_reject_json — and exposes the same
classification API as the streaming side (Notice::category /
is_order_rejection / is_warning).

Symmetric with SubscriptionItem::Notice(Notice). Distinct from
Error::ConnectionRejected (handshake-time refusal) and the
transport variants (Error::Io, Error::ConnectionReset).

From<ResponseMessage> and From<DecodedError> absorb the variant
change; the 25 dispatcher/decoder call sites that emit
Err(Error::from(message)) need no edits. As a bonus, the
projection now preserves error_time and advanced_order_reject_json
that the old Error::Message tuple dropped.

Plan: plans/typed-rejection-error.md
Migration: docs/migration-3.0.md
Parent tracker: plans/v3-api-ergonomics.md §5.2

* docs(plans): mark v3-ergonomics §5.2 shipped (#591)

* errors: collapse 7 test-construction sites via tws_error_notice helper

Pure /simplify follow-up. Adds `helpers::tws_error_notice(code, message)`
in `src/common/test_utils.rs` and routes the 7 callers that built
`Error::Notice(Notice::synthesized(code, msg))` through it:

- src/errors_tests.rs × 2
- src/common/test_utils_tests.rs × 3
- src/client/error_handler/tests.rs × 2

Helper is test-only (gated `#[cfg(test)]` via `common::test_utils`); no
new surface on `impl Error` since production never constructs synthetic
notices — the wire path is `From<ResponseMessage> for Error`.

Net −7 chars per callsite; removes the `crate::messages::Notice::synthesized`
qualifier from every test site and makes the construction intent
("Result-path Error from a synthesized TWS notice") obvious at a glance.

13 of 13 new or added lines in 4 files covered. (100.0%)

18994 of 20614 relevant lines covered (92.14%)

28.49 hits per line

Jobs
ID Job ID Ran Files Coverage
1 26116576780.1 19 May 2026 06:21PM UTC 128
92.14
GitHub Action Run
Source Files on build 26116576780
  • Tree
  • List 128
  • Changed 9
  • Source Changed 8
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #26116576780
  • 4ac64670 on github
  • Prev Build on main (#26069674013)
  • Next Build on main (#26117102395)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc