diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml new file mode 100644 index 00000000..c1094eb0 --- /dev/null +++ b/.github/workflows/ci.yaml @@ -0,0 +1,32 @@ +name: CI + +on: + push: {} + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v1 + + - name: Mount bazel cache + uses: actions/cache@v1 + with: + path: "/home/runner/.cache/bazel" + key: bazel + + - name: Install bazelisk + run: | + curl -LO "https://github.com/bazelbuild/bazelisk/releases/download/v1.18.0/bazelisk-linux-amd64" + mkdir -p "${GITHUB_WORKSPACE}/bin/" + mv bazelisk-linux-amd64 "${GITHUB_WORKSPACE}/bin/bazel" + chmod +x "${GITHUB_WORKSPACE}/bin/bazel" + + - name: Test + run: | + "${GITHUB_WORKSPACE}/bin/bazel" test //... + + - name: Build + run: | + "${GITHUB_WORKSPACE}/bin/bazel" build //... \ No newline at end of file diff --git a/.gitignore b/.gitignore index 2c98f0f9..19683024 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,8 @@ libtokenizers.a /artifacts + +# Rust +target + +# Bazel +/bazel-* diff --git a/BUILD.bazel b/BUILD.bazel new file mode 100644 index 00000000..19ff6329 --- /dev/null +++ b/BUILD.bazel @@ -0,0 +1,58 @@ +load("@bazel_gazelle//:def.bzl", "gazelle") +load("@crate_index//:defs.bzl", "aliases", "all_crate_deps") +load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") +load("@rules_rust//rust:defs.bzl", "rust_static_library") + +# gazelle:prefix github.com/daulet/tokenizers +gazelle( + name = "gazelle", +) + +gazelle( + name = "gazelle-update-repos", + args = [ + "-from_file=go.mod", + "-to_macro=deps.bzl%go_dependencies", + "-prune", + ], + command = "update-repos", +) + +rust_static_library( + name = "tokenizers", + srcs = glob([ + "src/**/*.rs", + ]), + aliases = aliases(), + proc_macro_deps = all_crate_deps( + proc_macro = True, + ), + visibility = ["//visibility:public"], + deps = all_crate_deps(), +) + +go_test( + name = "tokenizers_test", + srcs = ["tokenizer_test.go"], + data = ["//test:data"], + embedsrcs = ["//test:embeddata"], + deps = [ + ":tokenizers_go", + "@com_github_stretchr_testify//assert", + "@com_github_stretchr_testify//require", + ], +) + +go_library( + name = "tokenizers_go", + srcs = [ + "tokenizer.go", + "tokenizers.h", + ], + cdeps = [ + ":tokenizers", + ], + cgo = True, + importpath = "github.com/daulet/tokenizers", + visibility = ["//visibility:public"], +) diff --git a/Cargo.Bazel.lock b/Cargo.Bazel.lock new file mode 100644 index 00000000..8fac540d --- /dev/null +++ b/Cargo.Bazel.lock @@ -0,0 +1,5457 @@ +{ + "checksum": "0844b7f51fc5f8eaa57f7fc867e4fd11d2c69c2960889895bf7e16fb3d68525a", + "crates": { + "aho-corasick 1.1.2": { + "name": "aho-corasick", + "version": "1.1.2", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/aho-corasick/1.1.2/download", + "sha256": "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" + } + }, + "targets": [ + { + "Library": { + "crate_name": "aho_corasick", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "aho_corasick", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "perf-literal", + "std" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "memchr 2.5.0", + "target": "memchr" + } + ], + "selects": {} + }, + "edition": "2021", + "version": "1.1.2" + }, + "license": "Unlicense OR MIT" + }, + "anstream 0.6.4": { + "name": "anstream", + "version": "0.6.4", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/anstream/0.6.4/download", + "sha256": "2ab91ebe16eb252986481c5b62f6098f3b698a45e34b5b98200cf20dd2484a44" + } + }, + "targets": [ + { + "Library": { + "crate_name": "anstream", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "anstream", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "auto", + "default", + "wincon" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "anstyle 1.0.4", + "target": "anstyle" + }, + { + "id": "anstyle-parse 0.2.2", + "target": "anstyle_parse" + }, + { + "id": "anstyle-query 1.0.0", + "target": "anstyle_query" + }, + { + "id": "colorchoice 1.0.0", + "target": "colorchoice" + }, + { + "id": "utf8parse 0.2.1", + "target": "utf8parse" + } + ], + "selects": { + "cfg(windows)": [ + { + "id": "anstyle-wincon 3.0.1", + "target": "anstyle_wincon" + } + ] + } + }, + "edition": "2021", + "version": "0.6.4" + }, + "license": "MIT OR Apache-2.0" + }, + "anstyle 1.0.4": { + "name": "anstyle", + "version": "1.0.4", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/anstyle/1.0.4/download", + "sha256": "7079075b41f533b8c61d2a4d073c4676e1f8b249ff94a393b0595db304e0dd87" + } + }, + "targets": [ + { + "Library": { + "crate_name": "anstyle", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "anstyle", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "std" + ], + "selects": {} + }, + "edition": "2021", + "version": "1.0.4" + }, + "license": "MIT OR Apache-2.0" + }, + "anstyle-parse 0.2.2": { + "name": "anstyle-parse", + "version": "0.2.2", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/anstyle-parse/0.2.2/download", + "sha256": "317b9a89c1868f5ea6ff1d9539a69f45dffc21ce321ac1fd1160dfa48c8e2140" + } + }, + "targets": [ + { + "Library": { + "crate_name": "anstyle_parse", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "anstyle_parse", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "utf8" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "utf8parse 0.2.1", + "target": "utf8parse" + } + ], + "selects": {} + }, + "edition": "2021", + "version": "0.2.2" + }, + "license": "MIT OR Apache-2.0" + }, + "anstyle-query 1.0.0": { + "name": "anstyle-query", + "version": "1.0.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/anstyle-query/1.0.0/download", + "sha256": "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b" + } + }, + "targets": [ + { + "Library": { + "crate_name": "anstyle_query", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "anstyle_query", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [], + "selects": { + "cfg(windows)": [ + { + "id": "windows-sys 0.48.0", + "target": "windows_sys" + } + ] + } + }, + "edition": "2021", + "version": "1.0.0" + }, + "license": "MIT OR Apache-2.0" + }, + "anstyle-wincon 3.0.1": { + "name": "anstyle-wincon", + "version": "3.0.1", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/anstyle-wincon/3.0.1/download", + "sha256": "f0699d10d2f4d628a98ee7b57b289abbc98ff3bad977cb3152709d4bf2330628" + } + }, + "targets": [ + { + "Library": { + "crate_name": "anstyle_wincon", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "anstyle_wincon", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "anstyle 1.0.4", + "target": "anstyle" + } + ], + "selects": { + "cfg(windows)": [ + { + "id": "windows-sys 0.48.0", + "target": "windows_sys" + } + ] + } + }, + "edition": "2021", + "version": "3.0.1" + }, + "license": "MIT OR Apache-2.0" + }, + "autocfg 1.1.0": { + "name": "autocfg", + "version": "1.1.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/autocfg/1.1.0/download", + "sha256": "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" + } + }, + "targets": [ + { + "Library": { + "crate_name": "autocfg", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "autocfg", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "edition": "2015", + "version": "1.1.0" + }, + "license": "Apache-2.0 OR MIT" + }, + "base64 0.13.1": { + "name": "base64", + "version": "0.13.1", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/base64/0.13.1/download", + "sha256": "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" + } + }, + "targets": [ + { + "Library": { + "crate_name": "base64", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "base64", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "std" + ], + "selects": {} + }, + "edition": "2018", + "version": "0.13.1" + }, + "license": "MIT/Apache-2.0" + }, + "bitflags 1.3.2": { + "name": "bitflags", + "version": "1.3.2", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/bitflags/1.3.2/download", + "sha256": "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + } + }, + "targets": [ + { + "Library": { + "crate_name": "bitflags", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "bitflags", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default" + ], + "selects": {} + }, + "edition": "2018", + "version": "1.3.2" + }, + "license": "MIT/Apache-2.0" + }, + "cc 1.0.79": { + "name": "cc", + "version": "1.0.79", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/cc/1.0.79/download", + "sha256": "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f" + } + }, + "targets": [ + { + "Library": { + "crate_name": "cc", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "cc", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "edition": "2018", + "version": "1.0.79" + }, + "license": "MIT OR Apache-2.0" + }, + "cfg-if 1.0.0": { + "name": "cfg-if", + "version": "1.0.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/cfg-if/1.0.0/download", + "sha256": "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + } + }, + "targets": [ + { + "Library": { + "crate_name": "cfg_if", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "cfg_if", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "edition": "2018", + "version": "1.0.0" + }, + "license": "MIT/Apache-2.0" + }, + "clap 4.4.7": { + "name": "clap", + "version": "4.4.7", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/clap/4.4.7/download", + "sha256": "ac495e00dcec98c83465d5ad66c5c4fabd652fd6686e7c6269b117e729a6f17b" + } + }, + "targets": [ + { + "Library": { + "crate_name": "clap", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "clap", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "color", + "default", + "derive", + "error-context", + "help", + "std", + "suggestions", + "usage" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "clap_builder 4.4.7", + "target": "clap_builder" + } + ], + "selects": {} + }, + "edition": "2021", + "proc_macro_deps": { + "common": [ + { + "id": "clap_derive 4.4.7", + "target": "clap_derive" + } + ], + "selects": {} + }, + "version": "4.4.7" + }, + "license": "MIT OR Apache-2.0" + }, + "clap_builder 4.4.7": { + "name": "clap_builder", + "version": "4.4.7", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/clap_builder/4.4.7/download", + "sha256": "c77ed9a32a62e6ca27175d00d29d05ca32e396ea1eb5fb01d8256b669cec7663" + } + }, + "targets": [ + { + "Library": { + "crate_name": "clap_builder", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "clap_builder", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "color", + "error-context", + "help", + "std", + "suggestions", + "usage" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "anstream 0.6.4", + "target": "anstream" + }, + { + "id": "anstyle 1.0.4", + "target": "anstyle" + }, + { + "id": "clap_lex 0.6.0", + "target": "clap_lex" + }, + { + "id": "strsim 0.10.0", + "target": "strsim" + } + ], + "selects": {} + }, + "edition": "2021", + "version": "4.4.7" + }, + "license": "MIT OR Apache-2.0" + }, + "clap_derive 4.4.7": { + "name": "clap_derive", + "version": "4.4.7", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/clap_derive/4.4.7/download", + "sha256": "cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442" + } + }, + "targets": [ + { + "ProcMacro": { + "crate_name": "clap_derive", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "clap_derive", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "heck 0.4.1", + "target": "heck" + }, + { + "id": "proc-macro2 1.0.69", + "target": "proc_macro2" + }, + { + "id": "quote 1.0.33", + "target": "quote" + }, + { + "id": "syn 2.0.39", + "target": "syn" + } + ], + "selects": {} + }, + "edition": "2021", + "version": "4.4.7" + }, + "license": "MIT OR Apache-2.0" + }, + "clap_lex 0.6.0": { + "name": "clap_lex", + "version": "0.6.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/clap_lex/0.6.0/download", + "sha256": "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1" + } + }, + "targets": [ + { + "Library": { + "crate_name": "clap_lex", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "clap_lex", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "edition": "2021", + "version": "0.6.0" + }, + "license": "MIT OR Apache-2.0" + }, + "colorchoice 1.0.0": { + "name": "colorchoice", + "version": "1.0.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/colorchoice/1.0.0/download", + "sha256": "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" + } + }, + "targets": [ + { + "Library": { + "crate_name": "colorchoice", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "colorchoice", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "edition": "2021", + "version": "1.0.0" + }, + "license": "MIT OR Apache-2.0" + }, + "console 0.15.5": { + "name": "console", + "version": "0.15.5", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/console/0.15.5/download", + "sha256": "c3d79fbe8970a77e3e34151cc13d3b3e248aa0faaecb9f6091fa07ebefe5ad60" + } + }, + "targets": [ + { + "Library": { + "crate_name": "console", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "console", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "ansi-parsing", + "unicode-width" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "lazy_static 1.4.0", + "target": "lazy_static" + }, + { + "id": "libc 0.2.150", + "target": "libc" + }, + { + "id": "unicode-width 0.1.10", + "target": "unicode_width" + } + ], + "selects": { + "cfg(windows)": [ + { + "id": "encode_unicode 0.3.6", + "target": "encode_unicode" + }, + { + "id": "windows-sys 0.42.0", + "target": "windows_sys" + } + ] + } + }, + "edition": "2018", + "version": "0.15.5" + }, + "license": "MIT" + }, + "crossbeam-deque 0.8.3": { + "name": "crossbeam-deque", + "version": "0.8.3", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/crossbeam-deque/0.8.3/download", + "sha256": "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef" + } + }, + "targets": [ + { + "Library": { + "crate_name": "crossbeam_deque", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "crossbeam_deque", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "crossbeam-epoch", + "crossbeam-utils", + "default", + "std" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "cfg-if 1.0.0", + "target": "cfg_if" + }, + { + "id": "crossbeam-epoch 0.9.14", + "target": "crossbeam_epoch" + }, + { + "id": "crossbeam-utils 0.8.15", + "target": "crossbeam_utils" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.8.3" + }, + "license": "MIT OR Apache-2.0" + }, + "crossbeam-epoch 0.9.14": { + "name": "crossbeam-epoch", + "version": "0.9.14", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/crossbeam-epoch/0.9.14/download", + "sha256": "46bd5f3f85273295a9d14aedfb86f6aadbff6d8f5295c4a9edb08e819dcf5695" + } + }, + "targets": [ + { + "Library": { + "crate_name": "crossbeam_epoch", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "crossbeam_epoch", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "alloc", + "std" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "cfg-if 1.0.0", + "target": "cfg_if" + }, + { + "id": "crossbeam-epoch 0.9.14", + "target": "build_script_build" + }, + { + "id": "crossbeam-utils 0.8.15", + "target": "crossbeam_utils" + }, + { + "id": "memoffset 0.8.0", + "target": "memoffset" + }, + { + "id": "scopeguard 1.1.0", + "target": "scopeguard" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.9.14" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "autocfg 1.1.0", + "target": "autocfg" + } + ], + "selects": {} + } + }, + "license": "MIT OR Apache-2.0" + }, + "crossbeam-utils 0.8.15": { + "name": "crossbeam-utils", + "version": "0.8.15", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/crossbeam-utils/0.8.15/download", + "sha256": "3c063cd8cc95f5c377ed0d4b49a4b21f632396ff690e8470c29b3359b346984b" + } + }, + "targets": [ + { + "Library": { + "crate_name": "crossbeam_utils", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "crossbeam_utils", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "std" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "cfg-if 1.0.0", + "target": "cfg_if" + }, + { + "id": "crossbeam-utils 0.8.15", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.8.15" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "darling 0.14.4": { + "name": "darling", + "version": "0.14.4", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/darling/0.14.4/download", + "sha256": "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850" + } + }, + "targets": [ + { + "Library": { + "crate_name": "darling", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "darling", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "suggestions" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "darling_core 0.14.4", + "target": "darling_core" + } + ], + "selects": {} + }, + "edition": "2018", + "proc_macro_deps": { + "common": [ + { + "id": "darling_macro 0.14.4", + "target": "darling_macro" + } + ], + "selects": {} + }, + "version": "0.14.4" + }, + "license": "MIT" + }, + "darling_core 0.14.4": { + "name": "darling_core", + "version": "0.14.4", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/darling_core/0.14.4/download", + "sha256": "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0" + } + }, + "targets": [ + { + "Library": { + "crate_name": "darling_core", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "darling_core", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "strsim", + "suggestions" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "fnv 1.0.7", + "target": "fnv" + }, + { + "id": "ident_case 1.0.1", + "target": "ident_case" + }, + { + "id": "proc-macro2 1.0.69", + "target": "proc_macro2" + }, + { + "id": "quote 1.0.33", + "target": "quote" + }, + { + "id": "strsim 0.10.0", + "target": "strsim" + }, + { + "id": "syn 1.0.109", + "target": "syn" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.14.4" + }, + "license": "MIT" + }, + "darling_macro 0.14.4": { + "name": "darling_macro", + "version": "0.14.4", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/darling_macro/0.14.4/download", + "sha256": "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e" + } + }, + "targets": [ + { + "ProcMacro": { + "crate_name": "darling_macro", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "darling_macro", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "darling_core 0.14.4", + "target": "darling_core" + }, + { + "id": "quote 1.0.33", + "target": "quote" + }, + { + "id": "syn 1.0.109", + "target": "syn" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.14.4" + }, + "license": "MIT" + }, + "derive_builder 0.12.0": { + "name": "derive_builder", + "version": "0.12.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/derive_builder/0.12.0/download", + "sha256": "8d67778784b508018359cbc8696edb3db78160bab2c2a28ba7f56ef6932997f8" + } + }, + "targets": [ + { + "Library": { + "crate_name": "derive_builder", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "derive_builder", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "std" + ], + "selects": {} + }, + "edition": "2015", + "proc_macro_deps": { + "common": [ + { + "id": "derive_builder_macro 0.12.0", + "target": "derive_builder_macro" + } + ], + "selects": {} + }, + "version": "0.12.0" + }, + "license": "MIT/Apache-2.0" + }, + "derive_builder_core 0.12.0": { + "name": "derive_builder_core", + "version": "0.12.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/derive_builder_core/0.12.0/download", + "sha256": "c11bdc11a0c47bc7d37d582b5285da6849c96681023680b906673c5707af7b0f" + } + }, + "targets": [ + { + "Library": { + "crate_name": "derive_builder_core", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "derive_builder_core", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "darling 0.14.4", + "target": "darling" + }, + { + "id": "proc-macro2 1.0.69", + "target": "proc_macro2" + }, + { + "id": "quote 1.0.33", + "target": "quote" + }, + { + "id": "syn 1.0.109", + "target": "syn" + } + ], + "selects": {} + }, + "edition": "2015", + "version": "0.12.0" + }, + "license": "MIT/Apache-2.0" + }, + "derive_builder_macro 0.12.0": { + "name": "derive_builder_macro", + "version": "0.12.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/derive_builder_macro/0.12.0/download", + "sha256": "ebcda35c7a396850a55ffeac740804b40ffec779b98fffbb1738f4033f0ee79e" + } + }, + "targets": [ + { + "ProcMacro": { + "crate_name": "derive_builder_macro", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "derive_builder_macro", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "derive_builder_core 0.12.0", + "target": "derive_builder_core" + }, + { + "id": "syn 1.0.109", + "target": "syn" + } + ], + "selects": {} + }, + "edition": "2015", + "version": "0.12.0" + }, + "license": "MIT/Apache-2.0" + }, + "either 1.8.1": { + "name": "either", + "version": "1.8.1", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/either/1.8.1/download", + "sha256": "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91" + } + }, + "targets": [ + { + "Library": { + "crate_name": "either", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "either", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "use_std" + ], + "selects": {} + }, + "edition": "2018", + "version": "1.8.1" + }, + "license": "MIT OR Apache-2.0" + }, + "encode_unicode 0.3.6": { + "name": "encode_unicode", + "version": "0.3.6", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/encode_unicode/0.3.6/download", + "sha256": "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f" + } + }, + "targets": [ + { + "Library": { + "crate_name": "encode_unicode", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "encode_unicode", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "std" + ], + "selects": {} + }, + "edition": "2015", + "version": "0.3.6" + }, + "license": "MIT/Apache-2.0" + }, + "esaxx-rs 0.1.10": { + "name": "esaxx-rs", + "version": "0.1.10", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/esaxx-rs/0.1.10/download", + "sha256": "d817e038c30374a4bcb22f94d0a8a0e216958d4c3dcde369b1439fec4bdda6e6" + } + }, + "targets": [ + { + "Library": { + "crate_name": "esaxx_rs", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "esaxx_rs", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "cc", + "cpp" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "esaxx-rs 0.1.10", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.1.10" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "cc 1.0.79", + "target": "cc" + } + ], + "selects": {} + } + }, + "license": "Apache-2.0" + }, + "fnv 1.0.7": { + "name": "fnv", + "version": "1.0.7", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/fnv/1.0.7/download", + "sha256": "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + } + }, + "targets": [ + { + "Library": { + "crate_name": "fnv", + "crate_root": "lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "fnv", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "std" + ], + "selects": {} + }, + "edition": "2015", + "version": "1.0.7" + }, + "license": "Apache-2.0 / MIT" + }, + "getrandom 0.2.11": { + "name": "getrandom", + "version": "0.2.11", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/getrandom/0.2.11/download", + "sha256": "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f" + } + }, + "targets": [ + { + "Library": { + "crate_name": "getrandom", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "getrandom", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "std" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "cfg-if 1.0.0", + "target": "cfg_if" + } + ], + "selects": { + "cfg(target_os = \"wasi\")": [ + { + "id": "wasi 0.11.0+wasi-snapshot-preview1", + "target": "wasi" + } + ], + "cfg(unix)": [ + { + "id": "libc 0.2.150", + "target": "libc" + } + ] + } + }, + "edition": "2018", + "version": "0.2.11" + }, + "license": "MIT OR Apache-2.0" + }, + "heck 0.4.1": { + "name": "heck", + "version": "0.4.1", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/heck/0.4.1/download", + "sha256": "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" + } + }, + "targets": [ + { + "Library": { + "crate_name": "heck", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "heck", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default" + ], + "selects": {} + }, + "edition": "2018", + "version": "0.4.1" + }, + "license": "MIT OR Apache-2.0" + }, + "ident_case 1.0.1": { + "name": "ident_case", + "version": "1.0.1", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/ident_case/1.0.1/download", + "sha256": "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" + } + }, + "targets": [ + { + "Library": { + "crate_name": "ident_case", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "ident_case", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "edition": "2015", + "version": "1.0.1" + }, + "license": "MIT/Apache-2.0" + }, + "indicatif 0.17.7": { + "name": "indicatif", + "version": "0.17.7", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/indicatif/0.17.7/download", + "sha256": "fb28741c9db9a713d93deb3bb9515c20788cef5815265bee4980e87bde7e0f25" + } + }, + "targets": [ + { + "Library": { + "crate_name": "indicatif", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "indicatif", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "unicode-width" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "console 0.15.5", + "target": "console" + }, + { + "id": "number_prefix 0.4.0", + "target": "number_prefix" + }, + { + "id": "portable-atomic 1.5.1", + "target": "portable_atomic" + }, + { + "id": "unicode-width 0.1.10", + "target": "unicode_width" + } + ], + "selects": { + "cfg(target_arch = \"wasm32\")": [ + { + "id": "instant 0.1.12", + "target": "instant" + } + ] + } + }, + "edition": "2021", + "version": "0.17.7" + }, + "license": "MIT" + }, + "instant 0.1.12": { + "name": "instant", + "version": "0.1.12", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/instant/0.1.12/download", + "sha256": "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" + } + }, + "targets": [ + { + "Library": { + "crate_name": "instant", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "instant", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "cfg-if 1.0.0", + "target": "cfg_if" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.1.12" + }, + "license": "BSD-3-Clause" + }, + "itertools 0.11.0": { + "name": "itertools", + "version": "0.11.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/itertools/0.11.0/download", + "sha256": "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" + } + }, + "targets": [ + { + "Library": { + "crate_name": "itertools", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "itertools", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "use_alloc", + "use_std" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "either 1.8.1", + "target": "either" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.11.0" + }, + "license": "MIT OR Apache-2.0" + }, + "itoa 1.0.6": { + "name": "itoa", + "version": "1.0.6", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/itoa/1.0.6/download", + "sha256": "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6" + } + }, + "targets": [ + { + "Library": { + "crate_name": "itoa", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "itoa", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "edition": "2018", + "version": "1.0.6" + }, + "license": "MIT OR Apache-2.0" + }, + "lazy_static 1.4.0": { + "name": "lazy_static", + "version": "1.4.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/lazy_static/1.4.0/download", + "sha256": "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" + } + }, + "targets": [ + { + "Library": { + "crate_name": "lazy_static", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "lazy_static", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "edition": "2015", + "version": "1.4.0" + }, + "license": "MIT/Apache-2.0" + }, + "libc 0.2.150": { + "name": "libc", + "version": "0.2.150", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/libc/0.2.150/download", + "sha256": "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c" + } + }, + "targets": [ + { + "Library": { + "crate_name": "libc", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "libc", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "std" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "libc 0.2.150", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2015", + "version": "0.2.150" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "log 0.4.17": { + "name": "log", + "version": "0.4.17", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/log/0.4.17/download", + "sha256": "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" + } + }, + "targets": [ + { + "Library": { + "crate_name": "log", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "log", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "cfg-if 1.0.0", + "target": "cfg_if" + }, + { + "id": "log 0.4.17", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2015", + "version": "0.4.17" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "macro_rules_attribute 0.2.0": { + "name": "macro_rules_attribute", + "version": "0.2.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/macro_rules_attribute/0.2.0/download", + "sha256": "8a82271f7bc033d84bbca59a3ce3e4159938cb08a9c3aebbe54d215131518a13" + } + }, + "targets": [ + { + "Library": { + "crate_name": "macro_rules_attribute", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "macro_rules_attribute", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default" + ], + "selects": {} + }, + "edition": "2018", + "proc_macro_deps": { + "common": [ + { + "id": "macro_rules_attribute-proc_macro 0.2.0", + "target": "macro_rules_attribute_proc_macro" + }, + { + "id": "paste 1.0.14", + "target": "paste" + } + ], + "selects": {} + }, + "version": "0.2.0" + }, + "license": "MIT" + }, + "macro_rules_attribute-proc_macro 0.2.0": { + "name": "macro_rules_attribute-proc_macro", + "version": "0.2.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/macro_rules_attribute-proc_macro/0.2.0/download", + "sha256": "b8dd856d451cc0da70e2ef2ce95a18e39a93b7558bedf10201ad28503f918568" + } + }, + "targets": [ + { + "ProcMacro": { + "crate_name": "macro_rules_attribute_proc_macro", + "crate_root": "mod.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "macro_rules_attribute_proc_macro", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "edition": "2018", + "version": "0.2.0" + }, + "license": "MIT" + }, + "memchr 2.5.0": { + "name": "memchr", + "version": "2.5.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/memchr/2.5.0/download", + "sha256": "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" + } + }, + "targets": [ + { + "Library": { + "crate_name": "memchr", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "memchr", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "std" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "memchr 2.5.0", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "2.5.0" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "Unlicense/MIT" + }, + "memoffset 0.8.0": { + "name": "memoffset", + "version": "0.8.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/memoffset/0.8.0/download", + "sha256": "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1" + } + }, + "targets": [ + { + "Library": { + "crate_name": "memoffset", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "memoffset", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "memoffset 0.8.0", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2015", + "version": "0.8.0" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "autocfg 1.1.0", + "target": "autocfg" + } + ], + "selects": {} + } + }, + "license": "MIT" + }, + "minimal-lexical 0.2.1": { + "name": "minimal-lexical", + "version": "0.2.1", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/minimal-lexical/0.2.1/download", + "sha256": "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + } + }, + "targets": [ + { + "Library": { + "crate_name": "minimal_lexical", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "minimal_lexical", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "std" + ], + "selects": {} + }, + "edition": "2018", + "version": "0.2.1" + }, + "license": "MIT/Apache-2.0" + }, + "monostate 0.1.9": { + "name": "monostate", + "version": "0.1.9", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/monostate/0.1.9/download", + "sha256": "15f370ae88093ec6b11a710dec51321a61d420fafd1bad6e30d01bd9c920e8ee" + } + }, + "targets": [ + { + "Library": { + "crate_name": "monostate", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "monostate", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "serde 1.0.192", + "target": "serde" + } + ], + "selects": {} + }, + "edition": "2021", + "proc_macro_deps": { + "common": [ + { + "id": "monostate-impl 0.1.9", + "target": "monostate_impl" + } + ], + "selects": {} + }, + "version": "0.1.9" + }, + "license": "MIT OR Apache-2.0" + }, + "monostate-impl 0.1.9": { + "name": "monostate-impl", + "version": "0.1.9", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/monostate-impl/0.1.9/download", + "sha256": "371717c0a5543d6a800cac822eac735aa7d2d2fbb41002e9856a4089532dbdce" + } + }, + "targets": [ + { + "ProcMacro": { + "crate_name": "monostate_impl", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "monostate_impl", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "proc-macro2 1.0.69", + "target": "proc_macro2" + }, + { + "id": "quote 1.0.33", + "target": "quote" + }, + { + "id": "syn 2.0.39", + "target": "syn" + } + ], + "selects": {} + }, + "edition": "2021", + "version": "0.1.9" + }, + "license": "MIT OR Apache-2.0" + }, + "nom 7.1.3": { + "name": "nom", + "version": "7.1.3", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/nom/7.1.3/download", + "sha256": "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" + } + }, + "targets": [ + { + "Library": { + "crate_name": "nom", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "nom", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "alloc", + "default", + "std" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "memchr 2.5.0", + "target": "memchr" + }, + { + "id": "minimal-lexical 0.2.1", + "target": "minimal_lexical" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "7.1.3" + }, + "license": "MIT" + }, + "number_prefix 0.4.0": { + "name": "number_prefix", + "version": "0.4.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/number_prefix/0.4.0/download", + "sha256": "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" + } + }, + "targets": [ + { + "Library": { + "crate_name": "number_prefix", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "number_prefix", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "std" + ], + "selects": {} + }, + "edition": "2015", + "version": "0.4.0" + }, + "license": "MIT" + }, + "once_cell 1.17.1": { + "name": "once_cell", + "version": "1.17.1", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/once_cell/1.17.1/download", + "sha256": "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3" + } + }, + "targets": [ + { + "Library": { + "crate_name": "once_cell", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "once_cell", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "alloc", + "default", + "race", + "std" + ], + "selects": {} + }, + "edition": "2021", + "version": "1.17.1" + }, + "license": "MIT OR Apache-2.0" + }, + "onig 6.4.0": { + "name": "onig", + "version": "6.4.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/onig/6.4.0/download", + "sha256": "8c4b31c8722ad9171c6d77d3557db078cab2bd50afcc9d09c8b315c59df8ca4f" + } + }, + "targets": [ + { + "Library": { + "crate_name": "onig", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "onig", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "bitflags 1.3.2", + "target": "bitflags" + }, + { + "id": "once_cell 1.17.1", + "target": "once_cell" + }, + { + "id": "onig_sys 69.8.1", + "target": "onig_sys" + } + ], + "selects": { + "cfg(windows)": [ + { + "id": "libc 0.2.150", + "target": "libc" + } + ] + } + }, + "edition": "2018", + "version": "6.4.0" + }, + "license": "MIT" + }, + "onig_sys 69.8.1": { + "name": "onig_sys", + "version": "69.8.1", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/onig_sys/69.8.1/download", + "sha256": "7b829e3d7e9cc74c7e315ee8edb185bf4190da5acde74afd7fc59c35b1f086e7" + } + }, + "targets": [ + { + "Library": { + "crate_name": "onig_sys", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "onig_sys", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "onig_sys 69.8.1", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "69.8.1" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "cc 1.0.79", + "target": "cc" + }, + { + "id": "pkg-config 0.3.26", + "target": "pkg_config" + } + ], + "selects": {} + }, + "links": "onig" + }, + "license": "MIT" + }, + "paste 1.0.14": { + "name": "paste", + "version": "1.0.14", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/paste/1.0.14/download", + "sha256": "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" + } + }, + "targets": [ + { + "ProcMacro": { + "crate_name": "paste", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "paste", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "paste 1.0.14", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "1.0.14" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "pkg-config 0.3.26": { + "name": "pkg-config", + "version": "0.3.26", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/pkg-config/0.3.26/download", + "sha256": "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160" + } + }, + "targets": [ + { + "Library": { + "crate_name": "pkg_config", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "pkg_config", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "edition": "2015", + "version": "0.3.26" + }, + "license": "MIT OR Apache-2.0" + }, + "portable-atomic 1.5.1": { + "name": "portable-atomic", + "version": "1.5.1", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/portable-atomic/1.5.1/download", + "sha256": "3bccab0e7fd7cc19f820a1c8c91720af652d0c88dc9664dd72aef2614f04af3b" + } + }, + "targets": [ + { + "Library": { + "crate_name": "portable_atomic", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "portable_atomic", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "fallback" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "portable-atomic 1.5.1", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "1.5.1" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "Apache-2.0 OR MIT" + }, + "ppv-lite86 0.2.17": { + "name": "ppv-lite86", + "version": "0.2.17", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/ppv-lite86/0.2.17/download", + "sha256": "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" + } + }, + "targets": [ + { + "Library": { + "crate_name": "ppv_lite86", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "ppv_lite86", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "simd", + "std" + ], + "selects": {} + }, + "edition": "2018", + "version": "0.2.17" + }, + "license": "MIT/Apache-2.0" + }, + "proc-macro2 1.0.69": { + "name": "proc-macro2", + "version": "1.0.69", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/proc-macro2/1.0.69/download", + "sha256": "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da" + } + }, + "targets": [ + { + "Library": { + "crate_name": "proc_macro2", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "proc_macro2", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "proc-macro" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "proc-macro2 1.0.69", + "target": "build_script_build" + }, + { + "id": "unicode-ident 1.0.8", + "target": "unicode_ident" + } + ], + "selects": {} + }, + "edition": "2021", + "version": "1.0.69" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "quote 1.0.33": { + "name": "quote", + "version": "1.0.33", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/quote/1.0.33/download", + "sha256": "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" + } + }, + "targets": [ + { + "Library": { + "crate_name": "quote", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "quote", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "proc-macro" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "proc-macro2 1.0.69", + "target": "proc_macro2" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "1.0.33" + }, + "license": "MIT OR Apache-2.0" + }, + "rand 0.8.5": { + "name": "rand", + "version": "0.8.5", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/rand/0.8.5/download", + "sha256": "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" + } + }, + "targets": [ + { + "Library": { + "crate_name": "rand", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "rand", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "alloc", + "default", + "getrandom", + "libc", + "rand_chacha", + "std", + "std_rng" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "rand_chacha 0.3.1", + "target": "rand_chacha" + }, + { + "id": "rand_core 0.6.4", + "target": "rand_core" + } + ], + "selects": { + "cfg(unix)": [ + { + "id": "libc 0.2.150", + "target": "libc" + } + ] + } + }, + "edition": "2018", + "version": "0.8.5" + }, + "license": "MIT OR Apache-2.0" + }, + "rand_chacha 0.3.1": { + "name": "rand_chacha", + "version": "0.3.1", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/rand_chacha/0.3.1/download", + "sha256": "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" + } + }, + "targets": [ + { + "Library": { + "crate_name": "rand_chacha", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "rand_chacha", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "std" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "ppv-lite86 0.2.17", + "target": "ppv_lite86" + }, + { + "id": "rand_core 0.6.4", + "target": "rand_core" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.3.1" + }, + "license": "MIT OR Apache-2.0" + }, + "rand_core 0.6.4": { + "name": "rand_core", + "version": "0.6.4", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/rand_core/0.6.4/download", + "sha256": "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" + } + }, + "targets": [ + { + "Library": { + "crate_name": "rand_core", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "rand_core", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "alloc", + "getrandom", + "std" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "getrandom 0.2.11", + "target": "getrandom" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.6.4" + }, + "license": "MIT OR Apache-2.0" + }, + "rayon 1.8.0": { + "name": "rayon", + "version": "1.8.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/rayon/1.8.0/download", + "sha256": "9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1" + } + }, + "targets": [ + { + "Library": { + "crate_name": "rayon", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "rayon", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "either 1.8.1", + "target": "either" + }, + { + "id": "rayon-core 1.12.0", + "target": "rayon_core" + } + ], + "selects": {} + }, + "edition": "2021", + "version": "1.8.0" + }, + "license": "MIT OR Apache-2.0" + }, + "rayon-cond 0.3.0": { + "name": "rayon-cond", + "version": "0.3.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/rayon-cond/0.3.0/download", + "sha256": "059f538b55efd2309c9794130bc149c6a553db90e9d99c2030785c82f0bd7df9" + } + }, + "targets": [ + { + "Library": { + "crate_name": "rayon_cond", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "rayon_cond", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "either 1.8.1", + "target": "either" + }, + { + "id": "itertools 0.11.0", + "target": "itertools" + }, + { + "id": "rayon 1.8.0", + "target": "rayon" + } + ], + "selects": {} + }, + "edition": "2021", + "version": "0.3.0" + }, + "license": "Apache-2.0/MIT" + }, + "rayon-core 1.12.0": { + "name": "rayon-core", + "version": "1.12.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/rayon-core/1.12.0/download", + "sha256": "5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed" + } + }, + "targets": [ + { + "Library": { + "crate_name": "rayon_core", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "rayon_core", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "crossbeam-deque 0.8.3", + "target": "crossbeam_deque" + }, + { + "id": "crossbeam-utils 0.8.15", + "target": "crossbeam_utils" + }, + { + "id": "rayon-core 1.12.0", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2021", + "version": "1.12.0" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ], + "links": "rayon-core" + }, + "license": "MIT OR Apache-2.0" + }, + "regex 1.9.4": { + "name": "regex", + "version": "1.9.4", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/regex/1.9.4/download", + "sha256": "12de2eff854e5fa4b1295edd650e227e9d8fb0c9e90b12e7f36d6a6811791a29" + } + }, + "targets": [ + { + "Library": { + "crate_name": "regex", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "regex", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "perf", + "perf-backtrack", + "perf-cache", + "perf-dfa", + "perf-inline", + "perf-literal", + "perf-onepass", + "std", + "unicode", + "unicode-age", + "unicode-bool", + "unicode-case", + "unicode-gencat", + "unicode-perl", + "unicode-script", + "unicode-segment" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "aho-corasick 1.1.2", + "target": "aho_corasick" + }, + { + "id": "memchr 2.5.0", + "target": "memchr" + }, + { + "id": "regex-automata 0.3.7", + "target": "regex_automata" + }, + { + "id": "regex-syntax 0.7.5", + "target": "regex_syntax" + } + ], + "selects": {} + }, + "edition": "2021", + "version": "1.9.4" + }, + "license": "MIT OR Apache-2.0" + }, + "regex-automata 0.3.7": { + "name": "regex-automata", + "version": "0.3.7", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/regex-automata/0.3.7/download", + "sha256": "49530408a136e16e5b486e883fbb6ba058e8e4e8ae6621a77b048b314336e629" + } + }, + "targets": [ + { + "Library": { + "crate_name": "regex_automata", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "regex_automata", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "alloc", + "dfa-onepass", + "hybrid", + "meta", + "nfa-backtrack", + "nfa-pikevm", + "nfa-thompson", + "perf-inline", + "perf-literal", + "perf-literal-multisubstring", + "perf-literal-substring", + "std", + "syntax", + "unicode", + "unicode-age", + "unicode-bool", + "unicode-case", + "unicode-gencat", + "unicode-perl", + "unicode-script", + "unicode-segment", + "unicode-word-boundary" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "aho-corasick 1.1.2", + "target": "aho_corasick" + }, + { + "id": "memchr 2.5.0", + "target": "memchr" + }, + { + "id": "regex-syntax 0.7.5", + "target": "regex_syntax" + } + ], + "selects": {} + }, + "edition": "2021", + "version": "0.3.7" + }, + "license": "MIT OR Apache-2.0" + }, + "regex-syntax 0.7.5": { + "name": "regex-syntax", + "version": "0.7.5", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/regex-syntax/0.7.5/download", + "sha256": "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da" + } + }, + "targets": [ + { + "Library": { + "crate_name": "regex_syntax", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "regex_syntax", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "std", + "unicode", + "unicode-age", + "unicode-bool", + "unicode-case", + "unicode-gencat", + "unicode-perl", + "unicode-script", + "unicode-segment" + ], + "selects": {} + }, + "edition": "2021", + "version": "0.7.5" + }, + "license": "MIT OR Apache-2.0" + }, + "ryu 1.0.13": { + "name": "ryu", + "version": "1.0.13", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/ryu/1.0.13/download", + "sha256": "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041" + } + }, + "targets": [ + { + "Library": { + "crate_name": "ryu", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "ryu", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "edition": "2018", + "version": "1.0.13" + }, + "license": "Apache-2.0 OR BSL-1.0" + }, + "scopeguard 1.1.0": { + "name": "scopeguard", + "version": "1.1.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/scopeguard/1.1.0/download", + "sha256": "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" + } + }, + "targets": [ + { + "Library": { + "crate_name": "scopeguard", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "scopeguard", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "edition": "2015", + "version": "1.1.0" + }, + "license": "MIT/Apache-2.0" + }, + "serde 1.0.192": { + "name": "serde", + "version": "1.0.192", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/serde/1.0.192/download", + "sha256": "bca2a08484b285dcb282d0f67b26cadc0df8b19f8c12502c13d966bf9482f001" + } + }, + "targets": [ + { + "Library": { + "crate_name": "serde", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "serde", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "derive", + "serde_derive", + "std" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "serde 1.0.192", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "proc_macro_deps": { + "common": [ + { + "id": "serde_derive 1.0.192", + "target": "serde_derive" + } + ], + "selects": {} + }, + "version": "1.0.192" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "serde_derive 1.0.192": { + "name": "serde_derive", + "version": "1.0.192", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/serde_derive/1.0.192/download", + "sha256": "d6c7207fbec9faa48073f3e3074cbe553af6ea512d7c21ba46e434e70ea9fbc1" + } + }, + "targets": [ + { + "ProcMacro": { + "crate_name": "serde_derive", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "serde_derive", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "proc-macro2 1.0.69", + "target": "proc_macro2" + }, + { + "id": "quote 1.0.33", + "target": "quote" + }, + { + "id": "syn 2.0.39", + "target": "syn" + } + ], + "selects": {} + }, + "edition": "2015", + "version": "1.0.192" + }, + "license": "MIT OR Apache-2.0" + }, + "serde_json 1.0.95": { + "name": "serde_json", + "version": "1.0.95", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/serde_json/1.0.95/download", + "sha256": "d721eca97ac802aa7777b701877c8004d950fc142651367300d21c1cc0194744" + } + }, + "targets": [ + { + "Library": { + "crate_name": "serde_json", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "serde_json", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default", + "std" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "itoa 1.0.6", + "target": "itoa" + }, + { + "id": "ryu 1.0.13", + "target": "ryu" + }, + { + "id": "serde 1.0.192", + "target": "serde" + }, + { + "id": "serde_json 1.0.95", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "1.0.95" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "smallvec 1.10.0": { + "name": "smallvec", + "version": "1.10.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/smallvec/1.10.0/download", + "sha256": "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" + } + }, + "targets": [ + { + "Library": { + "crate_name": "smallvec", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "smallvec", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "edition": "2018", + "version": "1.10.0" + }, + "license": "MIT OR Apache-2.0" + }, + "spm_precompiled 0.1.4": { + "name": "spm_precompiled", + "version": "0.1.4", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/spm_precompiled/0.1.4/download", + "sha256": "5851699c4033c63636f7ea4cf7b7c1f1bf06d0cc03cfb42e711de5a5c46cf326" + } + }, + "targets": [ + { + "Library": { + "crate_name": "spm_precompiled", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "spm_precompiled", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "base64 0.13.1", + "target": "base64" + }, + { + "id": "nom 7.1.3", + "target": "nom" + }, + { + "id": "serde 1.0.192", + "target": "serde" + }, + { + "id": "unicode-segmentation 1.10.1", + "target": "unicode_segmentation" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.1.4" + }, + "license": "Apache-2.0" + }, + "strsim 0.10.0": { + "name": "strsim", + "version": "0.10.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/strsim/0.10.0/download", + "sha256": "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" + } + }, + "targets": [ + { + "Library": { + "crate_name": "strsim", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "strsim", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "edition": "2015", + "version": "0.10.0" + }, + "license": "MIT" + }, + "syn 1.0.109": { + "name": "syn", + "version": "1.0.109", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/syn/1.0.109/download", + "sha256": "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" + } + }, + "targets": [ + { + "Library": { + "crate_name": "syn", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "syn", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "clone-impls", + "default", + "derive", + "extra-traits", + "full", + "parsing", + "printing", + "proc-macro", + "quote" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "proc-macro2 1.0.69", + "target": "proc_macro2" + }, + { + "id": "quote 1.0.33", + "target": "quote" + }, + { + "id": "syn 1.0.109", + "target": "build_script_build" + }, + { + "id": "unicode-ident 1.0.8", + "target": "unicode_ident" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "1.0.109" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "syn 2.0.39": { + "name": "syn", + "version": "2.0.39", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/syn/2.0.39/download", + "sha256": "23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a" + } + }, + "targets": [ + { + "Library": { + "crate_name": "syn", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "syn", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "clone-impls", + "default", + "derive", + "full", + "parsing", + "printing", + "proc-macro", + "quote" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "proc-macro2 1.0.69", + "target": "proc_macro2" + }, + { + "id": "quote 1.0.33", + "target": "quote" + }, + { + "id": "unicode-ident 1.0.8", + "target": "unicode_ident" + } + ], + "selects": {} + }, + "edition": "2021", + "version": "2.0.39" + }, + "license": "MIT OR Apache-2.0" + }, + "thiserror 1.0.50": { + "name": "thiserror", + "version": "1.0.50", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/thiserror/1.0.50/download", + "sha256": "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2" + } + }, + "targets": [ + { + "Library": { + "crate_name": "thiserror", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "thiserror", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "thiserror 1.0.50", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2021", + "proc_macro_deps": { + "common": [ + { + "id": "thiserror-impl 1.0.50", + "target": "thiserror_impl" + } + ], + "selects": {} + }, + "version": "1.0.50" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "thiserror-impl 1.0.50": { + "name": "thiserror-impl", + "version": "1.0.50", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/thiserror-impl/1.0.50/download", + "sha256": "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8" + } + }, + "targets": [ + { + "ProcMacro": { + "crate_name": "thiserror_impl", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "thiserror_impl", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "proc-macro2 1.0.69", + "target": "proc_macro2" + }, + { + "id": "quote 1.0.33", + "target": "quote" + }, + { + "id": "syn 2.0.39", + "target": "syn" + } + ], + "selects": {} + }, + "edition": "2021", + "version": "1.0.50" + }, + "license": "MIT OR Apache-2.0" + }, + "tokenizers 0.14.1": { + "name": "tokenizers", + "version": "0.14.1", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/tokenizers/0.14.1/download", + "sha256": "d9be88c795d8b9f9c4002b3a8f26a6d0876103a6f523b32ea3bac52d8560c17c" + } + }, + "targets": [ + { + "Library": { + "crate_name": "tokenizers", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "tokenizers", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "clap", + "cli", + "default", + "esaxx_fast", + "indicatif", + "onig", + "progressbar" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "aho-corasick 1.1.2", + "target": "aho_corasick" + }, + { + "id": "clap 4.4.7", + "target": "clap" + }, + { + "id": "derive_builder 0.12.0", + "target": "derive_builder" + }, + { + "id": "esaxx-rs 0.1.10", + "target": "esaxx_rs" + }, + { + "id": "getrandom 0.2.11", + "target": "getrandom" + }, + { + "id": "indicatif 0.17.7", + "target": "indicatif" + }, + { + "id": "itertools 0.11.0", + "target": "itertools" + }, + { + "id": "lazy_static 1.4.0", + "target": "lazy_static" + }, + { + "id": "log 0.4.17", + "target": "log" + }, + { + "id": "macro_rules_attribute 0.2.0", + "target": "macro_rules_attribute" + }, + { + "id": "monostate 0.1.9", + "target": "monostate" + }, + { + "id": "onig 6.4.0", + "target": "onig" + }, + { + "id": "rand 0.8.5", + "target": "rand" + }, + { + "id": "rayon 1.8.0", + "target": "rayon" + }, + { + "id": "rayon-cond 0.3.0", + "target": "rayon_cond" + }, + { + "id": "regex 1.9.4", + "target": "regex" + }, + { + "id": "regex-syntax 0.7.5", + "target": "regex_syntax" + }, + { + "id": "serde 1.0.192", + "target": "serde" + }, + { + "id": "serde_json 1.0.95", + "target": "serde_json" + }, + { + "id": "spm_precompiled 0.1.4", + "target": "spm_precompiled" + }, + { + "id": "thiserror 1.0.50", + "target": "thiserror" + }, + { + "id": "unicode-normalization-alignments 0.1.12", + "target": "unicode_normalization_alignments" + }, + { + "id": "unicode-segmentation 1.10.1", + "target": "unicode_segmentation" + }, + { + "id": "unicode_categories 0.1.1", + "target": "unicode_categories" + } + ], + "selects": {} + }, + "edition": "2018", + "proc_macro_deps": { + "common": [ + { + "id": "paste 1.0.14", + "target": "paste" + } + ], + "selects": {} + }, + "version": "0.14.1" + }, + "license": "Apache-2.0" + }, + "tokenizers 0.9.0": { + "name": "tokenizers", + "version": "0.9.0", + "repository": null, + "targets": [], + "library_target_name": null, + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "libc 0.2.150", + "target": "libc" + }, + { + "id": "tokenizers 0.14.1", + "target": "tokenizers" + } + ], + "selects": {} + }, + "edition": "2021", + "version": "0.9.0" + }, + "license": null + }, + "unicode-ident 1.0.8": { + "name": "unicode-ident", + "version": "1.0.8", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/unicode-ident/1.0.8/download", + "sha256": "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4" + } + }, + "targets": [ + { + "Library": { + "crate_name": "unicode_ident", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "unicode_ident", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "edition": "2018", + "version": "1.0.8" + }, + "license": "(MIT OR Apache-2.0) AND Unicode-DFS-2016" + }, + "unicode-normalization-alignments 0.1.12": { + "name": "unicode-normalization-alignments", + "version": "0.1.12", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/unicode-normalization-alignments/0.1.12/download", + "sha256": "43f613e4fa046e69818dd287fdc4bc78175ff20331479dab6e1b0f98d57062de" + } + }, + "targets": [ + { + "Library": { + "crate_name": "unicode_normalization_alignments", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "unicode_normalization_alignments", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "smallvec 1.10.0", + "target": "smallvec" + } + ], + "selects": {} + }, + "edition": "2015", + "version": "0.1.12" + }, + "license": "MIT/Apache-2.0" + }, + "unicode-segmentation 1.10.1": { + "name": "unicode-segmentation", + "version": "1.10.1", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/unicode-segmentation/1.10.1/download", + "sha256": "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36" + } + }, + "targets": [ + { + "Library": { + "crate_name": "unicode_segmentation", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "unicode_segmentation", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "edition": "2018", + "version": "1.10.1" + }, + "license": "MIT/Apache-2.0" + }, + "unicode-width 0.1.10": { + "name": "unicode-width", + "version": "0.1.10", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/unicode-width/0.1.10/download", + "sha256": "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b" + } + }, + "targets": [ + { + "Library": { + "crate_name": "unicode_width", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "unicode_width", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default" + ], + "selects": {} + }, + "edition": "2015", + "version": "0.1.10" + }, + "license": "MIT/Apache-2.0" + }, + "unicode_categories 0.1.1": { + "name": "unicode_categories", + "version": "0.1.1", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/unicode_categories/0.1.1/download", + "sha256": "39ec24b3121d976906ece63c9daad25b85969647682eee313cb5779fdd69e14e" + } + }, + "targets": [ + { + "Library": { + "crate_name": "unicode_categories", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "unicode_categories", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "edition": "2015", + "version": "0.1.1" + }, + "license": "MIT OR Apache-2.0" + }, + "utf8parse 0.2.1": { + "name": "utf8parse", + "version": "0.2.1", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/utf8parse/0.2.1/download", + "sha256": "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" + } + }, + "targets": [ + { + "Library": { + "crate_name": "utf8parse", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "utf8parse", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "default" + ], + "selects": {} + }, + "edition": "2018", + "version": "0.2.1" + }, + "license": "Apache-2.0 OR MIT" + }, + "wasi 0.11.0+wasi-snapshot-preview1": { + "name": "wasi", + "version": "0.11.0+wasi-snapshot-preview1", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/wasi/0.11.0+wasi-snapshot-preview1/download", + "sha256": "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" + } + }, + "targets": [ + { + "Library": { + "crate_name": "wasi", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "wasi", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "edition": "2018", + "version": "0.11.0+wasi-snapshot-preview1" + }, + "license": "Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT" + }, + "windows-sys 0.42.0": { + "name": "windows-sys", + "version": "0.42.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/windows-sys/0.42.0/download", + "sha256": "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" + } + }, + "targets": [ + { + "Library": { + "crate_name": "windows_sys", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "windows_sys", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "Win32", + "Win32_Foundation", + "Win32_Storage", + "Win32_Storage_FileSystem", + "Win32_System", + "Win32_System_Console", + "Win32_UI", + "Win32_UI_Input", + "Win32_UI_Input_KeyboardAndMouse", + "default" + ], + "selects": {} + }, + "deps": { + "common": [], + "selects": { + "aarch64-pc-windows-gnullvm": [ + { + "id": "windows_aarch64_gnullvm 0.42.2", + "target": "windows_aarch64_gnullvm" + } + ], + "aarch64-pc-windows-msvc": [ + { + "id": "windows_aarch64_msvc 0.42.2", + "target": "windows_aarch64_msvc" + } + ], + "aarch64-uwp-windows-msvc": [ + { + "id": "windows_aarch64_msvc 0.42.2", + "target": "windows_aarch64_msvc" + } + ], + "i686-pc-windows-gnu": [ + { + "id": "windows_i686_gnu 0.42.2", + "target": "windows_i686_gnu" + } + ], + "i686-pc-windows-msvc": [ + { + "id": "windows_i686_msvc 0.42.2", + "target": "windows_i686_msvc" + } + ], + "i686-uwp-windows-gnu": [ + { + "id": "windows_i686_gnu 0.42.2", + "target": "windows_i686_gnu" + } + ], + "i686-uwp-windows-msvc": [ + { + "id": "windows_i686_msvc 0.42.2", + "target": "windows_i686_msvc" + } + ], + "x86_64-pc-windows-gnu": [ + { + "id": "windows_x86_64_gnu 0.42.2", + "target": "windows_x86_64_gnu" + } + ], + "x86_64-pc-windows-gnullvm": [ + { + "id": "windows_x86_64_gnullvm 0.42.2", + "target": "windows_x86_64_gnullvm" + } + ], + "x86_64-pc-windows-msvc": [ + { + "id": "windows_x86_64_msvc 0.42.2", + "target": "windows_x86_64_msvc" + } + ], + "x86_64-uwp-windows-gnu": [ + { + "id": "windows_x86_64_gnu 0.42.2", + "target": "windows_x86_64_gnu" + } + ], + "x86_64-uwp-windows-msvc": [ + { + "id": "windows_x86_64_msvc 0.42.2", + "target": "windows_x86_64_msvc" + } + ] + } + }, + "edition": "2018", + "version": "0.42.0" + }, + "license": "MIT OR Apache-2.0" + }, + "windows-sys 0.48.0": { + "name": "windows-sys", + "version": "0.48.0", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/windows-sys/0.48.0/download", + "sha256": "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" + } + }, + "targets": [ + { + "Library": { + "crate_name": "windows_sys", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "windows_sys", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "Win32", + "Win32_Foundation", + "Win32_System", + "Win32_System_Console", + "default" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "windows-targets 0.48.5", + "target": "windows_targets" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.48.0" + }, + "license": "MIT OR Apache-2.0" + }, + "windows-targets 0.48.5": { + "name": "windows-targets", + "version": "0.48.5", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/windows-targets/0.48.5/download", + "sha256": "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" + } + }, + "targets": [ + { + "Library": { + "crate_name": "windows_targets", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "windows_targets", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [], + "selects": { + "aarch64-pc-windows-gnullvm": [ + { + "id": "windows_aarch64_gnullvm 0.48.5", + "target": "windows_aarch64_gnullvm" + } + ], + "cfg(all(target_arch = \"aarch64\", target_env = \"msvc\", not(windows_raw_dylib)))": [ + { + "id": "windows_aarch64_msvc 0.48.5", + "target": "windows_aarch64_msvc" + } + ], + "cfg(all(target_arch = \"x86\", target_env = \"gnu\", not(windows_raw_dylib)))": [ + { + "id": "windows_i686_gnu 0.48.5", + "target": "windows_i686_gnu" + } + ], + "cfg(all(target_arch = \"x86\", target_env = \"msvc\", not(windows_raw_dylib)))": [ + { + "id": "windows_i686_msvc 0.48.5", + "target": "windows_i686_msvc" + } + ], + "cfg(all(target_arch = \"x86_64\", target_env = \"gnu\", not(target_abi = \"llvm\"), not(windows_raw_dylib)))": [ + { + "id": "windows_x86_64_gnu 0.48.5", + "target": "windows_x86_64_gnu" + } + ], + "cfg(all(target_arch = \"x86_64\", target_env = \"msvc\", not(windows_raw_dylib)))": [ + { + "id": "windows_x86_64_msvc 0.48.5", + "target": "windows_x86_64_msvc" + } + ], + "x86_64-pc-windows-gnullvm": [ + { + "id": "windows_x86_64_gnullvm 0.48.5", + "target": "windows_x86_64_gnullvm" + } + ] + } + }, + "edition": "2018", + "version": "0.48.5" + }, + "license": "MIT OR Apache-2.0" + }, + "windows_aarch64_gnullvm 0.42.2": { + "name": "windows_aarch64_gnullvm", + "version": "0.42.2", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/windows_aarch64_gnullvm/0.42.2/download", + "sha256": "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" + } + }, + "targets": [ + { + "Library": { + "crate_name": "windows_aarch64_gnullvm", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "windows_aarch64_gnullvm", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "windows_aarch64_gnullvm 0.42.2", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.42.2" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "windows_aarch64_gnullvm 0.48.5": { + "name": "windows_aarch64_gnullvm", + "version": "0.48.5", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/windows_aarch64_gnullvm/0.48.5/download", + "sha256": "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" + } + }, + "targets": [ + { + "Library": { + "crate_name": "windows_aarch64_gnullvm", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "windows_aarch64_gnullvm", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "windows_aarch64_gnullvm 0.48.5", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.48.5" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "windows_aarch64_msvc 0.42.2": { + "name": "windows_aarch64_msvc", + "version": "0.42.2", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/windows_aarch64_msvc/0.42.2/download", + "sha256": "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" + } + }, + "targets": [ + { + "Library": { + "crate_name": "windows_aarch64_msvc", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "windows_aarch64_msvc", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "windows_aarch64_msvc 0.42.2", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.42.2" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "windows_aarch64_msvc 0.48.5": { + "name": "windows_aarch64_msvc", + "version": "0.48.5", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/windows_aarch64_msvc/0.48.5/download", + "sha256": "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" + } + }, + "targets": [ + { + "Library": { + "crate_name": "windows_aarch64_msvc", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "windows_aarch64_msvc", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "windows_aarch64_msvc 0.48.5", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.48.5" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "windows_i686_gnu 0.42.2": { + "name": "windows_i686_gnu", + "version": "0.42.2", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/windows_i686_gnu/0.42.2/download", + "sha256": "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" + } + }, + "targets": [ + { + "Library": { + "crate_name": "windows_i686_gnu", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "windows_i686_gnu", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "windows_i686_gnu 0.42.2", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.42.2" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "windows_i686_gnu 0.48.5": { + "name": "windows_i686_gnu", + "version": "0.48.5", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/windows_i686_gnu/0.48.5/download", + "sha256": "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" + } + }, + "targets": [ + { + "Library": { + "crate_name": "windows_i686_gnu", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "windows_i686_gnu", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "windows_i686_gnu 0.48.5", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.48.5" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "windows_i686_msvc 0.42.2": { + "name": "windows_i686_msvc", + "version": "0.42.2", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/windows_i686_msvc/0.42.2/download", + "sha256": "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" + } + }, + "targets": [ + { + "Library": { + "crate_name": "windows_i686_msvc", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "windows_i686_msvc", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "windows_i686_msvc 0.42.2", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.42.2" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "windows_i686_msvc 0.48.5": { + "name": "windows_i686_msvc", + "version": "0.48.5", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/windows_i686_msvc/0.48.5/download", + "sha256": "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" + } + }, + "targets": [ + { + "Library": { + "crate_name": "windows_i686_msvc", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "windows_i686_msvc", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "windows_i686_msvc 0.48.5", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.48.5" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "windows_x86_64_gnu 0.42.2": { + "name": "windows_x86_64_gnu", + "version": "0.42.2", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/windows_x86_64_gnu/0.42.2/download", + "sha256": "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" + } + }, + "targets": [ + { + "Library": { + "crate_name": "windows_x86_64_gnu", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "windows_x86_64_gnu", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "windows_x86_64_gnu 0.42.2", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.42.2" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "windows_x86_64_gnu 0.48.5": { + "name": "windows_x86_64_gnu", + "version": "0.48.5", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/windows_x86_64_gnu/0.48.5/download", + "sha256": "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" + } + }, + "targets": [ + { + "Library": { + "crate_name": "windows_x86_64_gnu", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "windows_x86_64_gnu", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "windows_x86_64_gnu 0.48.5", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.48.5" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "windows_x86_64_gnullvm 0.42.2": { + "name": "windows_x86_64_gnullvm", + "version": "0.42.2", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/windows_x86_64_gnullvm/0.42.2/download", + "sha256": "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" + } + }, + "targets": [ + { + "Library": { + "crate_name": "windows_x86_64_gnullvm", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "windows_x86_64_gnullvm", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "windows_x86_64_gnullvm 0.42.2", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.42.2" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "windows_x86_64_gnullvm 0.48.5": { + "name": "windows_x86_64_gnullvm", + "version": "0.48.5", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/windows_x86_64_gnullvm/0.48.5/download", + "sha256": "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" + } + }, + "targets": [ + { + "Library": { + "crate_name": "windows_x86_64_gnullvm", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "windows_x86_64_gnullvm", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "windows_x86_64_gnullvm 0.48.5", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.48.5" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "windows_x86_64_msvc 0.42.2": { + "name": "windows_x86_64_msvc", + "version": "0.42.2", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/windows_x86_64_msvc/0.42.2/download", + "sha256": "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" + } + }, + "targets": [ + { + "Library": { + "crate_name": "windows_x86_64_msvc", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "windows_x86_64_msvc", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "windows_x86_64_msvc 0.42.2", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.42.2" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + }, + "windows_x86_64_msvc 0.48.5": { + "name": "windows_x86_64_msvc", + "version": "0.48.5", + "repository": { + "Http": { + "url": "https://crates.io/api/v1/crates/windows_x86_64_msvc/0.48.5/download", + "sha256": "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" + } + }, + "targets": [ + { + "Library": { + "crate_name": "windows_x86_64_msvc", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "windows_x86_64_msvc", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "windows_x86_64_msvc 0.48.5", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.48.5" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ] + }, + "license": "MIT OR Apache-2.0" + } + }, + "binary_crates": [], + "workspace_members": { + "tokenizers 0.9.0": "" + }, + "conditions": { + "aarch64-apple-darwin": [ + "aarch64-apple-darwin" + ], + "aarch64-apple-ios": [ + "aarch64-apple-ios" + ], + "aarch64-apple-ios-sim": [ + "aarch64-apple-ios-sim" + ], + "aarch64-fuchsia": [ + "aarch64-fuchsia" + ], + "aarch64-linux-android": [ + "aarch64-linux-android" + ], + "aarch64-pc-windows-gnullvm": [], + "aarch64-pc-windows-msvc": [ + "aarch64-pc-windows-msvc" + ], + "aarch64-unknown-linux-gnu": [ + "aarch64-unknown-linux-gnu" + ], + "aarch64-uwp-windows-msvc": [], + "arm-unknown-linux-gnueabi": [ + "arm-unknown-linux-gnueabi" + ], + "armv7-linux-androideabi": [ + "armv7-linux-androideabi" + ], + "armv7-unknown-linux-gnueabi": [ + "armv7-unknown-linux-gnueabi" + ], + "cfg(all(target_arch = \"aarch64\", target_env = \"msvc\", not(windows_raw_dylib)))": [ + "aarch64-pc-windows-msvc" + ], + "cfg(all(target_arch = \"x86\", target_env = \"gnu\", not(windows_raw_dylib)))": [ + "i686-unknown-linux-gnu" + ], + "cfg(all(target_arch = \"x86\", target_env = \"msvc\", not(windows_raw_dylib)))": [ + "i686-pc-windows-msvc" + ], + "cfg(all(target_arch = \"x86_64\", target_env = \"gnu\", not(target_abi = \"llvm\"), not(windows_raw_dylib)))": [ + "x86_64-unknown-linux-gnu" + ], + "cfg(all(target_arch = \"x86_64\", target_env = \"msvc\", not(windows_raw_dylib)))": [ + "x86_64-pc-windows-msvc" + ], + "cfg(target_arch = \"wasm32\")": [ + "wasm32-unknown-unknown", + "wasm32-wasi" + ], + "cfg(target_os = \"wasi\")": [ + "wasm32-wasi" + ], + "cfg(unix)": [ + "aarch64-apple-darwin", + "aarch64-apple-ios", + "aarch64-apple-ios-sim", + "aarch64-fuchsia", + "aarch64-linux-android", + "aarch64-unknown-linux-gnu", + "arm-unknown-linux-gnueabi", + "armv7-linux-androideabi", + "armv7-unknown-linux-gnueabi", + "i686-apple-darwin", + "i686-linux-android", + "i686-unknown-freebsd", + "i686-unknown-linux-gnu", + "powerpc-unknown-linux-gnu", + "s390x-unknown-linux-gnu", + "x86_64-apple-darwin", + "x86_64-apple-ios", + "x86_64-fuchsia", + "x86_64-linux-android", + "x86_64-unknown-freebsd", + "x86_64-unknown-linux-gnu" + ], + "cfg(windows)": [ + "aarch64-pc-windows-msvc", + "i686-pc-windows-msvc", + "x86_64-pc-windows-msvc" + ], + "i686-apple-darwin": [ + "i686-apple-darwin" + ], + "i686-linux-android": [ + "i686-linux-android" + ], + "i686-pc-windows-gnu": [], + "i686-pc-windows-msvc": [ + "i686-pc-windows-msvc" + ], + "i686-unknown-freebsd": [ + "i686-unknown-freebsd" + ], + "i686-unknown-linux-gnu": [ + "i686-unknown-linux-gnu" + ], + "i686-uwp-windows-gnu": [], + "i686-uwp-windows-msvc": [], + "powerpc-unknown-linux-gnu": [ + "powerpc-unknown-linux-gnu" + ], + "riscv32imc-unknown-none-elf": [ + "riscv32imc-unknown-none-elf" + ], + "riscv64gc-unknown-none-elf": [ + "riscv64gc-unknown-none-elf" + ], + "s390x-unknown-linux-gnu": [ + "s390x-unknown-linux-gnu" + ], + "thumbv7em-none-eabi": [ + "thumbv7em-none-eabi" + ], + "thumbv8m.main-none-eabi": [ + "thumbv8m.main-none-eabi" + ], + "wasm32-unknown-unknown": [ + "wasm32-unknown-unknown" + ], + "wasm32-wasi": [ + "wasm32-wasi" + ], + "x86_64-apple-darwin": [ + "x86_64-apple-darwin" + ], + "x86_64-apple-ios": [ + "x86_64-apple-ios" + ], + "x86_64-fuchsia": [ + "x86_64-fuchsia" + ], + "x86_64-linux-android": [ + "x86_64-linux-android" + ], + "x86_64-pc-windows-gnu": [], + "x86_64-pc-windows-gnullvm": [], + "x86_64-pc-windows-msvc": [ + "x86_64-pc-windows-msvc" + ], + "x86_64-unknown-freebsd": [ + "x86_64-unknown-freebsd" + ], + "x86_64-unknown-linux-gnu": [ + "x86_64-unknown-linux-gnu" + ], + "x86_64-unknown-none": [ + "x86_64-unknown-none" + ], + "x86_64-uwp-windows-gnu": [], + "x86_64-uwp-windows-msvc": [] + } +} diff --git a/Cargo.lock b/Cargo.lock new file mode 100644 index 00000000..839bcd7f --- /dev/null +++ b/Cargo.lock @@ -0,0 +1,908 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "aho-corasick" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" +dependencies = [ + "memchr", +] + +[[package]] +name = "anstream" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2ab91ebe16eb252986481c5b62f6098f3b698a45e34b5b98200cf20dd2484a44" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "utf8parse", +] + +[[package]] +name = "anstyle" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7079075b41f533b8c61d2a4d073c4676e1f8b249ff94a393b0595db304e0dd87" + +[[package]] +name = "anstyle-parse" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "317b9a89c1868f5ea6ff1d9539a69f45dffc21ce321ac1fd1160dfa48c8e2140" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-query" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b" +dependencies = [ + "windows-sys 0.48.0", +] + +[[package]] +name = "anstyle-wincon" +version = "3.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0699d10d2f4d628a98ee7b57b289abbc98ff3bad977cb3152709d4bf2330628" +dependencies = [ + "anstyle", + "windows-sys 0.48.0", +] + +[[package]] +name = "autocfg" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" + +[[package]] +name = "base64" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "cc" +version = "1.0.79" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f" + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "clap" +version = "4.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac495e00dcec98c83465d5ad66c5c4fabd652fd6686e7c6269b117e729a6f17b" +dependencies = [ + "clap_builder", + "clap_derive", +] + +[[package]] +name = "clap_builder" +version = "4.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c77ed9a32a62e6ca27175d00d29d05ca32e396ea1eb5fb01d8256b669cec7663" +dependencies = [ + "anstream", + "anstyle", + "clap_lex", + "strsim", +] + +[[package]] +name = "clap_derive" +version = "4.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "clap_lex" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1" + +[[package]] +name = "colorchoice" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" + +[[package]] +name = "console" +version = "0.15.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3d79fbe8970a77e3e34151cc13d3b3e248aa0faaecb9f6091fa07ebefe5ad60" +dependencies = [ + "encode_unicode", + "lazy_static", + "libc", + "unicode-width", + "windows-sys 0.42.0", +] + +[[package]] +name = "crossbeam-deque" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef" +dependencies = [ + "cfg-if", + "crossbeam-epoch", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-epoch" +version = "0.9.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "46bd5f3f85273295a9d14aedfb86f6aadbff6d8f5295c4a9edb08e819dcf5695" +dependencies = [ + "autocfg", + "cfg-if", + "crossbeam-utils", + "memoffset", + "scopeguard", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c063cd8cc95f5c377ed0d4b49a4b21f632396ff690e8470c29b3359b346984b" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "darling" +version = "0.14.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850" +dependencies = [ + "darling_core", + "darling_macro", +] + +[[package]] +name = "darling_core" +version = "0.14.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim", + "syn 1.0.109", +] + +[[package]] +name = "darling_macro" +version = "0.14.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e" +dependencies = [ + "darling_core", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "derive_builder" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d67778784b508018359cbc8696edb3db78160bab2c2a28ba7f56ef6932997f8" +dependencies = [ + "derive_builder_macro", +] + +[[package]] +name = "derive_builder_core" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c11bdc11a0c47bc7d37d582b5285da6849c96681023680b906673c5707af7b0f" +dependencies = [ + "darling", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "derive_builder_macro" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebcda35c7a396850a55ffeac740804b40ffec779b98fffbb1738f4033f0ee79e" +dependencies = [ + "derive_builder_core", + "syn 1.0.109", +] + +[[package]] +name = "either" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91" + +[[package]] +name = "encode_unicode" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f" + +[[package]] +name = "esaxx-rs" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d817e038c30374a4bcb22f94d0a8a0e216958d4c3dcde369b1439fec4bdda6e6" +dependencies = [ + "cc", +] + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "getrandom" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f" +dependencies = [ + "cfg-if", + "libc", + "wasi", +] + +[[package]] +name = "heck" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" + +[[package]] +name = "ident_case" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" + +[[package]] +name = "indicatif" +version = "0.17.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb28741c9db9a713d93deb3bb9515c20788cef5815265bee4980e87bde7e0f25" +dependencies = [ + "console", + "instant", + "number_prefix", + "portable-atomic", + "unicode-width", +] + +[[package]] +name = "instant" +version = "0.1.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "itertools" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" +dependencies = [ + "either", +] + +[[package]] +name = "itoa" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6" + +[[package]] +name = "lazy_static" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" + +[[package]] +name = "libc" +version = "0.2.150" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c" + +[[package]] +name = "log" +version = "0.4.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "macro_rules_attribute" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a82271f7bc033d84bbca59a3ce3e4159938cb08a9c3aebbe54d215131518a13" +dependencies = [ + "macro_rules_attribute-proc_macro", + "paste", +] + +[[package]] +name = "macro_rules_attribute-proc_macro" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8dd856d451cc0da70e2ef2ce95a18e39a93b7558bedf10201ad28503f918568" + +[[package]] +name = "memchr" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" + +[[package]] +name = "memoffset" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1" +dependencies = [ + "autocfg", +] + +[[package]] +name = "minimal-lexical" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + +[[package]] +name = "monostate" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "15f370ae88093ec6b11a710dec51321a61d420fafd1bad6e30d01bd9c920e8ee" +dependencies = [ + "monostate-impl", + "serde", +] + +[[package]] +name = "monostate-impl" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "371717c0a5543d6a800cac822eac735aa7d2d2fbb41002e9856a4089532dbdce" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "nom" +version = "7.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" +dependencies = [ + "memchr", + "minimal-lexical", +] + +[[package]] +name = "number_prefix" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" + +[[package]] +name = "once_cell" +version = "1.17.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3" + +[[package]] +name = "onig" +version = "6.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c4b31c8722ad9171c6d77d3557db078cab2bd50afcc9d09c8b315c59df8ca4f" +dependencies = [ + "bitflags", + "libc", + "once_cell", + "onig_sys", +] + +[[package]] +name = "onig_sys" +version = "69.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b829e3d7e9cc74c7e315ee8edb185bf4190da5acde74afd7fc59c35b1f086e7" +dependencies = [ + "cc", + "pkg-config", +] + +[[package]] +name = "paste" +version = "1.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" + +[[package]] +name = "pkg-config" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160" + +[[package]] +name = "portable-atomic" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3bccab0e7fd7cc19f820a1c8c91720af652d0c88dc9664dd72aef2614f04af3b" + +[[package]] +name = "ppv-lite86" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" + +[[package]] +name = "proc-macro2" +version = "1.0.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "quote" +version = "1.0.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "rand" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +dependencies = [ + "libc", + "rand_chacha", + "rand_core", +] + +[[package]] +name = "rand_chacha" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +dependencies = [ + "ppv-lite86", + "rand_core", +] + +[[package]] +name = "rand_core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom", +] + +[[package]] +name = "rayon" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1" +dependencies = [ + "either", + "rayon-core", +] + +[[package]] +name = "rayon-cond" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "059f538b55efd2309c9794130bc149c6a553db90e9d99c2030785c82f0bd7df9" +dependencies = [ + "either", + "itertools", + "rayon", +] + +[[package]] +name = "rayon-core" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed" +dependencies = [ + "crossbeam-deque", + "crossbeam-utils", +] + +[[package]] +name = "regex" +version = "1.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12de2eff854e5fa4b1295edd650e227e9d8fb0c9e90b12e7f36d6a6811791a29" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49530408a136e16e5b486e883fbb6ba058e8e4e8ae6621a77b048b314336e629" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da" + +[[package]] +name = "ryu" +version = "1.0.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041" + +[[package]] +name = "scopeguard" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" + +[[package]] +name = "serde" +version = "1.0.192" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bca2a08484b285dcb282d0f67b26cadc0df8b19f8c12502c13d966bf9482f001" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.192" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6c7207fbec9faa48073f3e3074cbe553af6ea512d7c21ba46e434e70ea9fbc1" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "serde_json" +version = "1.0.95" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d721eca97ac802aa7777b701877c8004d950fc142651367300d21c1cc0194744" +dependencies = [ + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "smallvec" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" + +[[package]] +name = "spm_precompiled" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5851699c4033c63636f7ea4cf7b7c1f1bf06d0cc03cfb42e711de5a5c46cf326" +dependencies = [ + "base64", + "nom", + "serde", + "unicode-segmentation", +] + +[[package]] +name = "strsim" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" + +[[package]] +name = "syn" +version = "1.0.109" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.39" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "thiserror" +version = "1.0.50" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.50" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "tokenizers" +version = "0.9.0" +dependencies = [ + "libc", + "tokenizers 0.14.1", +] + +[[package]] +name = "tokenizers" +version = "0.14.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9be88c795d8b9f9c4002b3a8f26a6d0876103a6f523b32ea3bac52d8560c17c" +dependencies = [ + "aho-corasick", + "clap", + "derive_builder", + "esaxx-rs", + "getrandom", + "indicatif", + "itertools", + "lazy_static", + "log", + "macro_rules_attribute", + "monostate", + "onig", + "paste", + "rand", + "rayon", + "rayon-cond", + "regex", + "regex-syntax", + "serde", + "serde_json", + "spm_precompiled", + "thiserror", + "unicode-normalization-alignments", + "unicode-segmentation", + "unicode_categories", +] + +[[package]] +name = "unicode-ident" +version = "1.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4" + +[[package]] +name = "unicode-normalization-alignments" +version = "0.1.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43f613e4fa046e69818dd287fdc4bc78175ff20331479dab6e1b0f98d57062de" +dependencies = [ + "smallvec", +] + +[[package]] +name = "unicode-segmentation" +version = "1.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36" + +[[package]] +name = "unicode-width" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b" + +[[package]] +name = "unicode_categories" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39ec24b3121d976906ece63c9daad25b85969647682eee313cb5779fdd69e14e" + +[[package]] +name = "utf8parse" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" + +[[package]] +name = "wasi" +version = "0.11.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" + +[[package]] +name = "windows-sys" +version = "0.42.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" +dependencies = [ + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", +] + +[[package]] +name = "windows-sys" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +dependencies = [ + "windows-targets", +] + +[[package]] +name = "windows-targets" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +dependencies = [ + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" + +[[package]] +name = "windows_i686_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" + +[[package]] +name = "windows_i686_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" + +[[package]] +name = "windows_i686_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" + +[[package]] +name = "windows_i686_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" diff --git a/lib/Cargo.toml b/Cargo.toml similarity index 59% rename from lib/Cargo.toml rename to Cargo.toml index c4503e03..c719bff6 100644 --- a/lib/Cargo.toml +++ b/Cargo.toml @@ -8,9 +8,7 @@ crate-type = ["staticlib"] [dependencies] libc = "0.2.140" -# not a direct dependency, but necessary for cross compilation -openssl = { version = "0.10.50", features = ["vendored"] } -tokenizers = "=0.13.2" +tokenizers = {version = "0.14.1" } [registries.crates-io] # speed up "Updating crates.io index" diff --git a/Makefile b/Makefile index e06cc90e..cdd6e830 100644 --- a/Makefile +++ b/Makefile @@ -1,24 +1,24 @@ build: - @cd lib && cargo build --release - @cp lib/target/release/libtokenizers.a . + @cargo build --release + @cp target/release/libtokenizers.a . @go build . build-example: @docker build -f ./example/Dockerfile . -t tokenizers-example release-darwin-%: - cd lib && cargo build --release --target $*-apple-darwin + cargo build --release --target $*-apple-darwin mkdir -p artifacts/darwin-$* - cp lib/target/$*-apple-darwin/release/libtokenizers.a artifacts/darwin-$*/libtokenizers.a + cp target/$*-apple-darwin/release/libtokenizers.a artifacts/darwin-$*/libtokenizers.a cd artifacts/darwin-$* && \ tar -czf libtokenizers.darwin-$*.tar.gz libtokenizers.a mkdir -p artifacts/all cp artifacts/darwin-$*/libtokenizers.darwin-$*.tar.gz artifacts/all/libtokenizers.darwin-$*.tar.gz release-linux-%: - docker buildx build --platform linux/$* -f example/Dockerfile . -t tokenizers.linux-$* + docker buildx build --platform linux/$* -f release/Dockerfile . -t tokenizers.linux-$* mkdir -p artifacts/linux-$* - docker run -v $(PWD)/artifacts/linux-$*:/mnt --entrypoint cp tokenizers.linux-$* /workspace/libtokenizers.a /mnt/libtokenizers.a + docker run -v $(PWD)/artifacts/linux-$*:/mnt --entrypoint cp tokenizers.linux-$* /go/pkg/mod/github.com/daulet/tokenizers@v0.5.1/libtokenizers.a /mnt/libtokenizers.a cd artifacts/linux-$* && \ tar -czf libtokenizers.linux-$*.tar.gz libtokenizers.a mkdir -p artifacts/all @@ -33,4 +33,7 @@ test: build @go test -v ./... -count=1 clean: - rm -rf libtokenizers.a lib/target + rm -rf libtokenizers.a target + +bazel-sync: + CARGO_BAZEL_REPIN=1 bazel sync --only=crate_index diff --git a/WORKSPACE b/WORKSPACE new file mode 100644 index 00000000..337a6ba2 --- /dev/null +++ b/WORKSPACE @@ -0,0 +1,66 @@ +load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") + +http_archive( + name = "rules_rust", + sha256 = "6357de5982dd32526e02278221bb8d6aa45717ba9bbacf43686b130aa2c72e1e", + urls = ["https://github.com/bazelbuild/rules_rust/releases/download/0.30.0/rules_rust-v0.30.0.tar.gz"], +) + +load("@rules_rust//rust:repositories.bzl", "rules_rust_dependencies", "rust_register_toolchains") + +rules_rust_dependencies() + +rust_register_toolchains( + edition = "2021", +) + +load("@rules_rust//crate_universe:repositories.bzl", "crate_universe_dependencies") + +crate_universe_dependencies() + +load("@rules_rust//crate_universe:defs.bzl", "crates_repository") + +crates_repository( + name = "crate_index", + cargo_lockfile = "//:Cargo.lock", + lockfile = "//:Cargo.Bazel.lock", + manifests = [ + "//:Cargo.toml", + ], +) + +load("@crate_index//:defs.bzl", "crate_repositories") + +crate_repositories() + +http_archive( + name = "io_bazel_rules_go", + sha256 = "91585017debb61982f7054c9688857a2ad1fd823fc3f9cb05048b0025c47d023", + urls = [ + "https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.42.0/rules_go-v0.42.0.zip", + "https://github.com/bazelbuild/rules_go/releases/download/v0.42.0/rules_go-v0.42.0.zip", + ], +) + +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") + +go_rules_dependencies() + +go_register_toolchains(version = "1.21.1") + +http_archive( + name = "bazel_gazelle", + sha256 = "d3fa66a39028e97d76f9e2db8f1b0c11c099e8e01bf363a923074784e451f809", + urls = [ + "https://mirror.bazel.build/github.com/bazelbuild/bazel-gazelle/releases/download/v0.33.0/bazel-gazelle-v0.33.0.tar.gz", + "https://github.com/bazelbuild/bazel-gazelle/releases/download/v0.33.0/bazel-gazelle-v0.33.0.tar.gz", + ], +) + +load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies") +load("//:deps.bzl", "go_dependencies") + +# gazelle:repository_macro deps.bzl%go_dependencies +go_dependencies() + +gazelle_dependencies() diff --git a/deps.bzl b/deps.bzl new file mode 100644 index 00000000..36f5eca0 --- /dev/null +++ b/deps.bzl @@ -0,0 +1,39 @@ +load("@bazel_gazelle//:deps.bzl", "go_repository") + +def go_dependencies(): + go_repository( + name = "com_github_davecgh_go_spew", + importpath = "github.com/davecgh/go-spew", + sum = "h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=", + version = "v1.1.1", + ) + go_repository( + name = "com_github_pmezard_go_difflib", + importpath = "github.com/pmezard/go-difflib", + sum = "h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=", + version = "v1.0.0", + ) + go_repository( + name = "com_github_stretchr_objx", + importpath = "github.com/stretchr/objx", + sum = "h1:1zr/of2m5FGMsad5YfcqgdqdWrIhu+EBEJRhR1U7z/c=", + version = "v0.5.0", + ) + go_repository( + name = "com_github_stretchr_testify", + importpath = "github.com/stretchr/testify", + sum = "h1:+h33VjcLVPDHtOdpUCuF+7gSuG3yGIftsP1YvFihtJ8=", + version = "v1.8.2", + ) + go_repository( + name = "in_gopkg_check_v1", + importpath = "gopkg.in/check.v1", + sum = "h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=", + version = "v0.0.0-20161208181325-20d25e280405", + ) + go_repository( + name = "in_gopkg_yaml_v3", + importpath = "gopkg.in/yaml.v3", + sum = "h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=", + version = "v3.0.1", + ) diff --git a/example/BUILD.bazel b/example/BUILD.bazel new file mode 100644 index 00000000..5e82d3d5 --- /dev/null +++ b/example/BUILD.bazel @@ -0,0 +1,16 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library") + +go_library( + name = "example_lib", + srcs = ["main.go"], + importpath = "github.com/daulet/tokenizers/example", + visibility = ["//visibility:private"], + deps = ["//:tokenizers_go"], +) + +go_binary( + name = "example", + data = ["//test:data"], + embed = [":example_lib"], + visibility = ["//visibility:public"], +) diff --git a/example/Dockerfile b/example/Dockerfile index 6129a8a9..27ce837a 100644 --- a/example/Dockerfile +++ b/example/Dockerfile @@ -1,11 +1,12 @@ # syntax=docker/dockerfile:1.3 -FROM golang:1.19 as builder-go +FROM golang:1.21 as builder-go ARG TARGETPLATFORM WORKDIR /workspace RUN curl -fsSL https://github.com/daulet/tokenizers/releases/latest/download/libtokenizers.$(echo ${TARGETPLATFORM} | tr / -).tar.gz | tar xvz COPY ./example . COPY ./test/data ./test/data -RUN --mount=type=cache,target=/root/.cache/go-build \ - --mount=type=cache,target=/var/cache/go,id=${TARGETPLATFORM} \ - CGO_ENABLED=1 CGO_LDFLAGS="-Wl,--copy-dt-needed-entries" go run main.go +RUN go mod download +COPY ./libtokenizers.a /go/pkg/mod/github.com/daulet/tokenizers@v0.5.1/libtokenizers.a +# mounting Go cache won't work since we mutate it above +RUN CGO_ENABLED=1 CGO_LDFLAGS="-Wl,--copy-dt-needed-entries" go run main.go diff --git a/example/go.mod b/example/go.mod index ee7a3897..84aebea1 100644 --- a/example/go.mod +++ b/example/go.mod @@ -1,5 +1,5 @@ module github.com/daulet/tokenizers/example -go 1.20 +go 1.21 -require github.com/daulet/tokenizers v0.2.1 // indirect +require github.com/daulet/tokenizers v0.5.1 diff --git a/example/go.sum b/example/go.sum index c7577af2..c6d0f4c9 100644 --- a/example/go.sum +++ b/example/go.sum @@ -1,2 +1,6 @@ -github.com/daulet/tokenizers v0.2.1 h1:Sb7gfk8N1yIWFCwG6wu5SEo8MsG+Onm7ejIoZe0ZkNg= -github.com/daulet/tokenizers v0.2.1/go.mod h1:tGnMdZthXdcWY6DGD07IygpwJqiPvG85FQUnhs/wSCs= +github.com/daulet/tokenizers v0.5.1 h1:b8E1aUzssSq6Olm5YGJ+ZejtTJ0VHo2w98c1CNJsk6c= +github.com/daulet/tokenizers v0.5.1/go.mod h1:tGnMdZthXdcWY6DGD07IygpwJqiPvG85FQUnhs/wSCs= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/stretchr/testify v1.8.2 h1:+h33VjcLVPDHtOdpUCuF+7gSuG3yGIftsP1YvFihtJ8= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= diff --git a/lib/.gitignore b/lib/.gitignore deleted file mode 100644 index fa8d85ac..00000000 --- a/lib/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -Cargo.lock -target diff --git a/release/BUILD.bazel b/release/BUILD.bazel new file mode 100644 index 00000000..6c6e9a40 --- /dev/null +++ b/release/BUILD.bazel @@ -0,0 +1,16 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library") + +go_library( + name = "release_lib", + srcs = ["main.go"], + importpath = "github.com/daulet/tokenizers/release", + visibility = ["//visibility:private"], + deps = ["//:tokenizers_go"], +) + +go_binary( + name = "release", + data = ["//test:data"], + embed = [":release_lib"], + visibility = ["//visibility:public"], +) diff --git a/release/Dockerfile b/release/Dockerfile index e1aa9f2a..af365e74 100644 --- a/release/Dockerfile +++ b/release/Dockerfile @@ -1,19 +1,22 @@ # syntax=docker/dockerfile:1.3 -FROM rust:1.69 as builder-rust +FROM rust:1.71 as builder-rust ARG TARGETPLATFORM WORKDIR /workspace -COPY ./lib . +COPY ./src ./src +COPY ./Cargo.toml ./Cargo.toml +COPY ./Cargo.lock ./Cargo.lock RUN --mount=type=cache,target=/usr/local/cargo/registry,id=${TARGETPLATFORM} \ --mount=type=cache,target=/root/target,id=${TARGETPLATFORM} \ cargo build --release -FROM golang:1.19 as builder-go +FROM golang:1.21 as builder-go ARG TARGETPLATFORM WORKDIR /workspace -COPY --from=builder-rust /workspace/target/release/libtokenizers.a . COPY ./release . COPY ./test/data ./test/data -RUN --mount=type=cache,target=/root/.cache/go-build \ - --mount=type=cache,target=/var/cache/go,id=${TARGETPLATFORM} \ - CGO_ENABLED=1 CGO_LDFLAGS="-Wl,--copy-dt-needed-entries" go run main.go +RUN go mod download +COPY --from=builder-rust \ + /workspace/target/release/libtokenizers.a \ + /go/pkg/mod/github.com/daulet/tokenizers@v0.5.1/libtokenizers.a +RUN CGO_ENABLED=1 CGO_LDFLAGS="-Wl,--copy-dt-needed-entries" go run main.go diff --git a/release/go.mod b/release/go.mod index ee7a3897..84aebea1 100644 --- a/release/go.mod +++ b/release/go.mod @@ -1,5 +1,5 @@ module github.com/daulet/tokenizers/example -go 1.20 +go 1.21 -require github.com/daulet/tokenizers v0.2.1 // indirect +require github.com/daulet/tokenizers v0.5.1 diff --git a/release/go.sum b/release/go.sum index c7577af2..63888ff9 100644 --- a/release/go.sum +++ b/release/go.sum @@ -1,2 +1,10 @@ -github.com/daulet/tokenizers v0.2.1 h1:Sb7gfk8N1yIWFCwG6wu5SEo8MsG+Onm7ejIoZe0ZkNg= -github.com/daulet/tokenizers v0.2.1/go.mod h1:tGnMdZthXdcWY6DGD07IygpwJqiPvG85FQUnhs/wSCs= +github.com/daulet/tokenizers v0.5.1 h1:b8E1aUzssSq6Olm5YGJ+ZejtTJ0VHo2w98c1CNJsk6c= +github.com/daulet/tokenizers v0.5.1/go.mod h1:tGnMdZthXdcWY6DGD07IygpwJqiPvG85FQUnhs/wSCs= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/stretchr/testify v1.8.2 h1:+h33VjcLVPDHtOdpUCuF+7gSuG3yGIftsP1YvFihtJ8= +github.com/stretchr/testify v1.8.2/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/lib/src/lib.rs b/src/lib.rs similarity index 96% rename from lib/src/lib.rs rename to src/lib.rs index 595803c6..b5e02936 100644 --- a/lib/src/lib.rs +++ b/src/lib.rs @@ -30,7 +30,7 @@ pub extern "C" fn from_bytes_with_truncation(bytes: *const u8, len: u32, max_len _ => panic!("invalid truncation direction"), }, ..Default::default() - })).to_owned().into(); + })).unwrap().to_owned().into(); Box::into_raw(Box::new(tokenizer)) } @@ -90,7 +90,7 @@ pub extern "C" fn decode(ptr: *mut libc::c_void, ids: *const u32, len: u32, skip } let ids_slice = unsafe { std::slice::from_raw_parts(ids, len as usize) }; - let string = tokenizer.decode(ids_slice.to_vec(), skip_special_tokens).expect("failed to decode input"); + let string = tokenizer.decode(ids_slice, skip_special_tokens).expect("failed to decode input"); match std::ffi::CString::new(string) { Ok(c_string) => c_string.into_raw(), Err(_) => ptr::null_mut(), diff --git a/test/BUILD.bazel b/test/BUILD.bazel new file mode 100644 index 00000000..5fe01a37 --- /dev/null +++ b/test/BUILD.bazel @@ -0,0 +1,13 @@ +filegroup( + name = "data", + srcs = glob(["data/**"]), + visibility = ["//visibility:public"], +) + +filegroup( + name = "embeddata", + srcs = [ + "data/sentence-transformers-labse.json", + ], + visibility = ["//visibility:public"], +)