From 68e1b92a5ce95c4ff19e138d7affc82b9e73a6f2 Mon Sep 17 00:00:00 2001 From: bbalouki Date: Fri, 10 Jul 2026 23:34:21 +0100 Subject: [PATCH 1/2] updates --- vcpkg.json | 19 ------------------- 1 file changed, 19 deletions(-) diff --git a/vcpkg.json b/vcpkg.json index f268b88..165ef1b 100644 --- a/vcpkg.json +++ b/vcpkg.json @@ -3,24 +3,5 @@ "gtest", "benchmark" ], - "features": { - "python": { - "description": "Build the pybind11 Python bindings", - "dependencies": [ - "pybind11" - ] - }, - "arrow": { - "description": "Enable Apache Arrow / Parquet columnar export", - "dependencies": [ - { - "name": "arrow", - "features": [ - "parquet" - ] - } - ] - } - }, "builtin-baseline": "5bf0c55239da398b8c6f450818c9e28d36bf9966" } From 9b17881e5c1e50870f67b90b93e958e06a779a3b Mon Sep 17 00:00:00 2001 From: bbalouki Date: Fri, 10 Jul 2026 23:39:39 +0100 Subject: [PATCH 2/2] updates --- CONTRIBUTING.md | 12 ++++++------ python/README.md | 8 ++++---- vcpkg.json | 19 +++++++++++++++++++ 3 files changed, 29 insertions(+), 10 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 63a2677..45fa547 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -20,14 +20,14 @@ ctest --test-dir build --output-on-failure Optional features are off by default and enabled with: -- `-DITCH_BUILD_BENCHMARKS=ON` — Google Benchmark suites. -- `-DITCH_BUILD_FUZZERS=ON` — libFuzzer targets (Clang only). -- `-DITCH_BUILD_TOOLS=ON` — the `itch-tool` CLI. -- `-DITCH_BUILD_PYTHON=ON` — the pybind11 Python bindings (needs the `python` +- `-DITCH_BUILD_BENCHMARKS=ON`, Google Benchmark suites. +- `-DITCH_BUILD_FUZZERS=ON`, libFuzzer targets (Clang only). +- `-DITCH_BUILD_TOOLS=ON`, the `itch-tool` CLI. +- `-DITCH_BUILD_PYTHON=ON`, the pybind11 Python bindings (needs the `python` vcpkg feature: `-DVCPKG_MANIFEST_FEATURES=python`). -- `-DITCH_WITH_ARROW=ON` — Apache Arrow / Parquet export (needs the `arrow` +- `-DITCH_WITH_ARROW=ON`, Apache Arrow / Parquet export (needs the `arrow` vcpkg feature: `-DVCPKG_MANIFEST_FEATURES=arrow`). -- `-DITCH_BUILD_DOCUMENTATION=ON` — the Doxygen `docs` target. Build it with +- `-DITCH_BUILD_DOCUMENTATION=ON`, the Doxygen `docs` target. Build it with `cmake --build build --target docs` (needs Doxygen; the modern theme is fetched automatically). Output is written to `docs/html`. The same documentation is published to GitHub Pages from `main` by `.github/workflows/docs.yml`. diff --git a/python/README.md b/python/README.md index 71a9a1b..def69ad 100644 --- a/python/README.md +++ b/python/README.md @@ -1,4 +1,4 @@ -# itchcpp — a fast, drop-in backend for the pure-Python `itch` package +# itchcpp, a fast, drop-in backend for the pure-Python `itch` package `itchcpp` is a native (C++) NASDAQ TotalView-ITCH 5.0 parser, order-book engine, and analytics layer exposed to Python via pybind11. It is built to be a @@ -46,7 +46,7 @@ event (`S` with `event_code == b"C"`). ## What is exposed -- **`itchcpp.messages`** — every message class under its exact upstream name +- **`itchcpp.messages`**, every message class under its exact upstream name (`SystemEventMessage`, `StockDirectoryMessage`, `AddOrderNoMPIAttributionMessage`, `AddOrderMPIDAttribution`, `OrderExecutedMessage`, `NonCrossTradeMessage`, `CrossTradeMessage`, `NOIIMessage`, `MWCBDeclineLeveMessage`, @@ -59,10 +59,10 @@ event (`S` with `event_code == b"C"`). `to_bytes()`, `set_timestamp(ts1, ts2)`, `split_timestamp()`, `get_attributes(call_able=False)`, plus the `message_type`, `description`, `message_size`, and `price_precision` metadata. -- **`itchcpp.parser.MessageParser`** — `parse_file`, `parse_stream`, +- **`itchcpp.parser.MessageParser`**, `parse_file`, `parse_stream`, `parse_messages(data, callback)`, `get_message_type(bytes)`, and the `message_type` filter. -- **`itchcpp.indicators`** — the field code lookup tables (`SYSTEM_EVENT_CODES`, +- **`itchcpp.indicators`**, the field code lookup tables (`SYSTEM_EVENT_CODES`, `MARKET_CATEGORY`, `TRADING_STATES`, `ISSUE_SUB_TYPE_VALUES`, ...). - **Native extras** (not part of the pure-Python API): `itchcpp.book` (`BookManager`, `L3Book`, `Bbo`) for single-pass order-book reconstruction, and diff --git a/vcpkg.json b/vcpkg.json index 165ef1b..f268b88 100644 --- a/vcpkg.json +++ b/vcpkg.json @@ -3,5 +3,24 @@ "gtest", "benchmark" ], + "features": { + "python": { + "description": "Build the pybind11 Python bindings", + "dependencies": [ + "pybind11" + ] + }, + "arrow": { + "description": "Enable Apache Arrow / Parquet columnar export", + "dependencies": [ + { + "name": "arrow", + "features": [ + "parquet" + ] + } + ] + } + }, "builtin-baseline": "5bf0c55239da398b8c6f450818c9e28d36bf9966" }