Files
bitcoin-indexer/components/ordhook-core/Cargo.toml
Rafael Cárdenas 729affb699 feat: add BRC-20 indexing (#284)
* feat: first version of brc20 parser

* feat: verifier

* fix: parse with tests

* test: extra parser stuff

* feat: verifier with tests, basic wiring

* test: transfer sends

* fix: add deploy op to ledger

* chore: upgrade to latest chainhook

* feat: start adapting for scan

* feat: wire up scan

* feat: self minted tokens

* feat: self mint and drop data

* fix: transaction commit and rollback

* chore: update dependencies

* chore: update rust

* chore: cascade chainhook changes in ordhook

* fix: ordinal-sdk-js build

* chore: update deps

* fix: centralize db init

* fix: check brc20 activation height

* chore: downgrade brc-20 warns to debug

* feat: cache tokens and minted supplies per block

* feat: memory cache

* feat: cache module

* feat: use LRU cache for brc20

* feat: configurable lru size

* fix: blacklist invalid transfers

* chore: block cache struct

* chore: config meta protocols

* fix: use cache across all blocks

* chore: formatting

* test: cache and utils

* fix: address balance cache miss

* fix: flush db caches on miss

* fix: check db cache length before flushing

* chore: tweak log msgs

* test: transfer full balance

* fix: cache miss on avail balance deltas

* fix: save tx_index in ledger table

* test: null bytes

* fix: remove unique index ledger

---------

Co-authored-by: Ludo Galabru <ludo@hiro.so>
Co-authored-by: Ludo Galabru <ludovic@galabru.com>
2024-05-09 11:45:22 -06:00

59 lines
1.6 KiB
TOML

[package]
name = "ordhook"
version = "1.0.0"
edition = "2021"
[dependencies]
num_cpus = "1.16.0"
serde = "1"
serde_json = "1"
serde_derive = "1"
hex = "0.4.3"
rand = "0.8.5"
lru = "0.12.3"
chainhook-sdk = { version = "=0.12.8", features = ["zeromq"] }
# chainhook-sdk = { version = "=0.12.5", path = "../../../chainhook/components/chainhook-sdk", features = ["zeromq"] }
hiro-system-kit = "0.3.1"
reqwest = { version = "0.11", default-features = false, features = [
"stream",
"json",
"rustls-tls",
] }
tokio = { version = "1.35.1", features = ["full"] }
futures-util = "0.3.24"
flate2 = "1.0.24"
tar = "0.4.38"
flume = "0.11.0"
ansi_term = "0.12.1"
atty = "0.2.14"
crossbeam-channel = "0.5.8"
uuid = { version = "1.3.0", features = ["v4", "fast-rng"] }
threadpool = "1.8.1"
rocket_okapi = "0.8.0-rc.3"
rocket = { version = "0.5.0", features = ["json"] }
dashmap = "5.4.0"
fxhash = "0.2.1"
rusqlite = { version = "0.28.0", features = ["bundled"] }
anyhow = { version = "1.0.56", features = ["backtrace"] }
schemars = { version = "0.8.10", git = "https://github.com/hirosystems/schemars.git", branch = "feat-chainhook-fixes" }
progressing = '3'
futures = "0.3.28"
rocksdb = { version = "0.21.0", default-features = false, features = [
"snappy",
] }
pprof = { version = "0.13.0", features = ["flamegraph"], optional = true }
hyper = { version = "=0.14.27" }
lazy_static = { version = "1.4.0" }
ciborium = "0.2.1"
regex = "1.10.3"
[dev-dependencies]
test-case = "3.1.0"
# [profile.release]
# debug = true
[features]
debug = ["hiro-system-kit/debug", "pprof"]
release = ["hiro-system-kit/release"]