Skip to content

Commit

Permalink
0.9.0
Browse files Browse the repository at this point in the history
  • Loading branch information
akanalytics committed Jun 6, 2024
1 parent 0f84bc5 commit e54788d
Show file tree
Hide file tree
Showing 140 changed files with 8,967 additions and 13,405 deletions.
108 changes: 80 additions & 28 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,89 +1,93 @@
[workspace]
resolver = "2"
members = ["crates/*"]
members = ["crates/odonata-*"]


[workspace.package]
version = "0.1.0"
authors = [
"andy watkins <[email protected]>",
"mark raistrick <[email protected]>",
]
rust-version = "1.78"
version = "0.9.0"
edition = "2021"
authors = ["Unknown"]
license = "GPL-2.0"
description = "description"
license = "AGPL-3.0 license"
description = "A UCI compliant chess engine"
repository = "https://github.com/akanalytics/odonata"
homepage = "https://github.com/akanalytics/odonata"
readme = "docs/README.md"
keywords = ["chess"]
categories = ["games"]


[workspace.dependencies]
odonata-base = { path = "./crates/odonata-base" }
odonata-hce = { path = "./crates/odonata-hce" }
odonata-engine = { path = "./crates/odonata-engine" }

arrayvec = { version = "0.7", features = ["serde"] }
bitflags = { version = "2.4.0", features = ["serde"] }
clap = { version = "4.3.2", features = ["derive"] }
once_cell = "1.7"
bitflags = { version = "2.5.0", features = ["serde"] }
clap = { version = "4.5", features = ["derive"] }
once_cell = "1.19"
byteorder = "1.5.0"
rand = "0.8"
rand_chacha = "0.3"
fs-err = "2.11"
regex = "1.4"
test-log = { version = "0.2", features = ["trace"] }
anyhow = { version = "1.0", features = ["backtrace"] }
backtrace = "0.3.64"
crossbeam-utils = "0.8.8"
config = "0.14"
flexi_logger = { version = "0.27.1", features = ["colors"] }
crossbeam-utils = "0.8"
crossbeam-channel = "0.5"
crossbeam-queue = "0.3"
format_num = "0.1"
hdrhist = "0.5.0"
include_dir = "0.7.2"
indexmap = { version = "2.0", features = ["serde"] }
itertools = "0.12"
indexmap = { version = "2.2", features = ["serde"] }
itertools = "0.13"
log = { version = "0.4", features = ["release_max_level_debug"] }
num-traits = "0.2"
petgraph = "0.6.0"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
serde_with = "3.3"
serde_with = "3.8"
static_init = "1.0"
strum = "0.26"
strum_macros = "0.26"
tabled = "0.15.0"
thread_local = "1.1.4"
toml = { version = "0.8", features = ["display", "parse", "indexmap"] }
tracing = { version = "0.1.37", features = [
"max_level_trace",
"release_max_level_debug",
"log",
] }
tabwriter = "1.2.1"
tabwriter = "1.4"
append-only-vec = "0.1.3"
daisychain = { version = "0.0.5" }
console = "0.15"
xshell = "0.2"
derive_more = "0.99"
crossbeam = "0.8.2"
pariter = "0.5.1"
fslock = "0.2.1"
rayon = "1.5"
rayon = "1.10"
timeout-readwrite = "0.3.2"
# serde_json = "1.0"
# serde_with = "1.9"
alphanumeric-sort = "1.4.4"
chrono = { version = "0.4" }
handlebars = "4.3.5"
nom = "7.1.1"
nom-supreme = "0.8.0"
perf-event = "0.4.7"
plotters = { version = "0.3.4", default_features = false, features = [
plotters = { version = "0.3.4", default-features = false, features = [
"svg_backend",
"full_palette",
"colormaps",
"all_series",
] }
pprof = { version = "0.13.0", features = ["flamegraph"] }
# pprof = { version = "0.13.0", features = ["flamegraph"] }
pprof = { git = "https://github.com/Erigara/pprof-rs.git", branch = "fix_pointer_align", features = [
"flamegraph",
] }
serde_yaml = "0.9"
# serde_regex = "1.1.0"
statrs = "0.16.0"
url = "2.3.1"
ctrlc = "3.2.5"
ctrlc = "3.4"
glob = "0.3"
# log = { version = "0.4", features = ["release_max_level_debug"] }
argmin = { version = "0.8" }
Expand All @@ -95,12 +99,59 @@ indicatif = { version = "0.17", features = ["rayon"] }
textplots = "0.8"
boxcar = "0.2"
postcard = { version = "1.0.8", features = ["use-std"] }
env_logger = "0.11"
# env_logger = "0.11"
tracing = { version = "0.1.37", features = [
"max_level_trace",
"release_max_level_debug",
"log",
] }
tracing-subscriber = { version = "0.3", default-features = false, features = [
"registry",
"env-filter",
"ansi",
"fmt",
] }
tracing-appender = "0.2.3"
pretty_assertions = "1.4.0"
wide = "0.7.22"
simba = "0.8.1"
testresult = "0.4.0"

# criterion = "0.5"


[workspace.lints]
# clippy.pedantic = { level = "warn", priority = 0 }
clippy.correctness = { level = "warn", priority = 0 }
clippy.style = { level = "warn", priority = 0 }
clippy.complexity = { level = "warn", priority = 0 }
clippy.cargo = { level = "warn", priority = 0 }
clippy.perf = { level = "warn", priority = 0 }
rust.dead_code = { level = "allow", priority = 2 }
clippy.enum_glob_use = { level = "allow", priority = 2 }
clippy.missing_errors_doc = { level = "allow", priority = 2 }
clippy.missing_panics_doc = { level = "allow", priority = 2 }
clippy.bool_assert_comparison = { level = "allow", priority = 2 } # permit assert_ne!("a".is_empty(), true);
clippy.wildcard_imports = { level = "allow", priority = 2 }
clippy.if_not_else = { level = "allow", priority = 2 } # permit if !test {} else {}
clippy.module_name_repetitions = { level = "allow", priority = 2 }
clippy.len_without_is_empty = { level = "allow", priority = 2 }

# missing_errors_doc = "allow"
# missing_panics_doc = "allow"
# module_name_repetitions = "allow"
# blocks_in_conditions = "allow"
# must_use_candidate = "allow"
# no-effect-underscore-binding = "allow"
# items-after-statements = "allow"

[profile.stack]
inherits = "dev"
opt-level = 0
incremental = true
debug = true # allow profiling of the main executable
# split-debuginfo = "unpacked"
codegen-units = 256

[profile.dev]
opt-level = 3
Expand Down Expand Up @@ -138,6 +189,7 @@ codegen-units = 16
lto = "thin"
split-debuginfo = "unpacked"


# cgu=32, lto=n/a => fast (255M/s)
# cgu=1, lto=n/a => perft=slow(202), search=slow(136)
# cgu=2, lto=n/a => slow (202M/s)
Expand Down
18 changes: 11 additions & 7 deletions crates/odonata-base/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[package]
name = "odonata-base"
rust-version.workspace = true
version.workspace = true
edition.workspace = true
description.workspace = true
Expand All @@ -15,6 +16,9 @@ build = "build.rs"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[lints]
workspace = true

[dependencies]
append-only-vec.workspace = true
arrayvec.workspace = true
Expand All @@ -26,16 +30,12 @@ rand_chacha.workspace = true
regex.workspace = true
test-log.workspace = true
anyhow.workspace = true
backtrace.workspace = true
config.workspace = true
flexi_logger.workspace = true
format_num.workspace = true
hdrhist.workspace = true
include_dir.workspace = true
indexmap.workspace = true
itertools.workspace = true
log.workspace = true
num-traits.workspace = true
petgraph.workspace = true
serde.workspace = true
serde_json.workspace = true
Expand All @@ -46,22 +46,25 @@ strum_macros.workspace = true
statrs.workspace = true
toml.workspace = true
tracing.workspace = true
tracing-subscriber.workspace = true
tracing-appender.workspace = true
tabled = "0.14.0"


[target.'cfg(target_os="linux")'.dependencies]
pprof = { version = "0.13", features = ["flamegraph"] }
pprof = { git = "https://github.com/Erigara/pprof-rs.git", branch="fix_pointer_align", features = ["flamegraph"]}
perf-event = { version = "0.4.7" }


[dev-dependencies]
thread_local.workspace = true
test-log.workspace = true
env_logger.workspace = true
tracing-subscriber.workspace = true

[build-dependencies]
include_dir = "0.7"
built = {version = "0.7", features = ["chrono", "semver", "git2"]}

# vergen = {git = "https://github.com/rustyhorde/vergen.git", tag="8.0.0-beta.8", features = ["build", "cargo", "git", "git2", "rustc", "si"]}

# lto = true
Expand Down Expand Up @@ -97,11 +100,12 @@ test = true


[features]
default = ["unchecked_indexing", "remove_logging"]
default = ["unchecked_indexing", "remove_logging", "remove_metrics"]
# profiler = ["pprof", "perf-event"]
remove_logging = []
metrics = []
unchecked_indexing = []
remove_metrics = []

# RUSTFLAGS="-C target-cpu=native" cargo bench

Expand Down
10 changes: 10 additions & 0 deletions crates/odonata-base/build.rs
Original file line number Diff line number Diff line change
@@ -1,2 +1,12 @@
fn main() {
use std::process::Command;
built::write_built_file().expect("Failed to acquire build-time information");
// taken from https://stackoverflow.com/questions/43753491/include-git-commit-hash-as-string-into-rust-program
// git show -s --format=%s
let output = Command::new("git")
.args(["show", "-s", "--format=%s"])
.output()
.unwrap();
let git_commit_msg = String::from_utf8(output.stdout).unwrap();
println!("cargo:rustc-env=GIT_COMMIT_MSG={git_commit_msg}");
}
5 changes: 0 additions & 5 deletions crates/odonata-base/makefile

This file was deleted.

4 changes: 0 additions & 4 deletions crates/odonata-base/python/__init__.py

This file was deleted.

27 changes: 0 additions & 27 deletions crates/odonata-base/python/jsonrpyc-license.txt

This file was deleted.

Loading

0 comments on commit e54788d

Please sign in to comment.