File size: 2,796 Bytes
1d3f990
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
[workspace]
resolver = "2"
members = [
    "crates/subleq-vm",
    "crates/subleq-ir",
    "crates/polyglot-frontend",
    "crates/invariant-extractor",
    "crates/proof-validator",
    "crates/m4-morph",
    "crates/notebook-kernel",
    "crates/notebook-orchestrator",
]
exclude = ["tools/*", "docker/*", "scripts/*"]

[workspace.package]
version = "0.1.0"
edition = "2021"
license = "MIT OR Apache-2.0"
authors = ["Ahmad Ali Parr <ahmad@sovereign-transformer.dev>", "Jessica SNAPKITTYWEST <jessica@collectivekitty.com>"]
repository = "https://github.com/SNAPKITTYWEST/rowm-polymorphic-notebook"
description = "ROWM: Read-Once-Write-Many Polymorphic Notebook with SUBLEQ substrate, M4 morphing, formal verification"
categories = ["embedded", "development-tools", "compilers", "science"]
keywords = ["rowm", "subleq", "oisc", "notebook", "polyglot", "self-modifying", "formal-verification"]

[workspace.dependencies]
# Internal crates
subleq-vm = { path = "crates/subleq-vm" }
subleq-ir = { path = "crates/subleq-ir" }
polyglot-frontend = { path = "crates/polyglot-frontend" }
invariant-extractor = { path = "crates/invariant-extractor" }
proof-validator = { path = "crates/proof-validator" }
m4-morph = { path = "crates/m4-morph" }
notebook-kernel = { path = "crates/notebook-kernel" }
notebook-orchestrator = { path = "crates/notebook-orchestrator" }

# Core
anyhow = "1.0"
thiserror = "1.0"
tracing = { version = "0.1", features = ["std"] }
tracing-subscriber = "0.3"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
bincode = "1.3"
parking_lot = "0.12"
crossbeam = "0.8"
dashmap = "5.5"
uuid = { version = "1.0", features = ["v4"] }

# VM / Execution
memmap2 = "0.9"
nix = { version = "0.27", features = ["process"] }

# Parsing / Polyglot (pinned to available versions)
tree-sitter = "0.20"
tree-sitter-python = "0.20"
tree-sitter-javascript = "0.20"
tree-sitter-c = "0.20"
tree-sitter-rust = "0.20"
syn = { version = "2.0", features = ["full", "extra-traits"] }
quote = "1.0"
proc-macro2 = "1.0"

# Formal Verification
z3 = "0.13"
boolector = "0.4"
smt-lib = "0.3"

# M4 Integration
libc = "0.2"
cc = "1.0"

# Crypto / Audit
ed25519-dalek = "2.0"
sha2 = "0.10"
blake3 = "1.5"
merkle-tree = "0.5"
hex = "0.4"
rand = "0.8"
signature = "2.0"

# Async / IPC
tokio = { version = "1.35", features = ["full", "rt-multi-thread"] }
bytes = "1.5"
shared-memory = "0.2"

# Testing
proptest = "1.0"
criterion = { version = "0.5", features = ["html_reports"] }

[workspace.lints.rust]
unused_crate_dependencies = "warn"
unsafe_code = "warn"

[profile.release]
lto = "fat"
codegen-units = 1
panic = "abort"
strip = "symbols"
opt-level = 3

[profile.dev]
debug = 2
opt-level = 1