Skip to content

Commit 66252b9

Browse files
authored
v0.2.2
CLI argument parsing and output formatting update edition to 2024 update dependencies extract common header parsing into a macro macro to simplify message dispatching update simd code to use safe arch intrinsics zerocopy support with MessageHeaderRaw struct and ZeroCopyMessage split benchmark into separate modules parser builder with mmap support SpscParser to use WorkUnit for chunk submission error handling for stock and mpid parsing, tests for UTF-8
2 parents 36b62de + 725633a commit 66252b9

28 files changed

Lines changed: 3532 additions & 2289 deletions

.github/workflows/ci.yml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [ main, dev ]
6+
pull_request:
7+
branches: [ main, dev ]
8+
9+
jobs:
10+
check:
11+
runs-on: ubuntu-latest
12+
13+
steps:
14+
- uses: actions/checkout@v4
15+
16+
- name: Install Rust
17+
uses: actions-rust-lang/setup-rust-toolchain@v1
18+
with:
19+
toolchain: stable
20+
components: clippy, rustfmt
21+
22+
- uses: Swatinem/rust-cache@v2
23+
24+
- name: Run checks
25+
run: bash tests/check.sh

.github/workflows/rust-check.yml

Lines changed: 0 additions & 23 deletions
This file was deleted.

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,8 @@ tmp/
3131
# OS files
3232
Thumbs.db
3333
*.exe
34+
*.json
35+
*.csv
3436

3537
# Environment
3638
.env

Cargo.lock

Lines changed: 103 additions & 25 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
[package]
22
name = "lunary"
3-
version = "0.2.1"
3+
version = "0.2.2"
44
authors = ["Lunyn <contact@lunyn.com>"]
5-
edition = "2021"
5+
edition = "2024"
66
license = "AGPL-3.0-or-later"
77
description = "High-performance ITCH (NASDAQ TotalView-ITCH) parser with zero-copy, SIMD, and lock-free concurrency."
88
readme = "README.md"
99
repository = "https://github.com/Lunyn-HFT/lunary"
1010
homepage = "https://github.com/Lunyn-HFT/lunary"
1111
keywords = ["itch", "nasdaq", "parser", "hft", "trading"]
12-
categories = ["parsing", "nasdaq", "itch"]
12+
categories = ["parsing", "finance", "network-programming"]
1313

1414
[lib]
1515
name = "lunary"
@@ -28,6 +28,8 @@ crossbeam-utils = "0.8"
2828
crossbeam-deque = "0.8"
2929
core_affinity = { version = "0.8", optional = true }
3030
tempfile = "3.23.0"
31+
zerocopy = { version = "0.8", features = ["derive"] }
32+
clap = "4.0"
3133

3234
[target.'cfg(not(target_env = "msvc"))'.dependencies]
3335
mimalloc = { version = "0.1", optional = true }
@@ -39,7 +41,7 @@ mimalloc = { version = "0.1", optional = true }
3941
criterion = { version = "0.5", default-features = false }
4042

4143
[features]
42-
default = []
44+
default = ["simd"]
4345
simd = []
4446
avx512 = ["simd"]
4547
allocator = ["mimalloc"]

0 commit comments

Comments
 (0)