[workspace] members = [ "worker", "worker-build", "worker-macros", "test", "worker-sys", "examples/*", "test/container-echo", "benchmark", ] exclude = [ "examples/coredump", "examples/axum", "templates/*", "wasm-bindgen", "generated", ] resolver = "2" [workspace.dependencies] async-trait = "0.1.88" cfg-if = "1.0.1" chrono = { version = "0.4.41", default-features = false, features = [ "wasmbind", ] } futures-channel = "0.3.31" futures-util = { version = "0.3.31", default-features = false } http = "1.3" js-sys = { version = "0.3.90" } serde = { version = "1.0.164", features = ["derive"] } serde_json = "1.0.140" serde-wasm-bindgen = "0.6.5" syn = "2.0.17" proc-macro2 = "1.0.60" quote = "1.0.28" wasm-bindgen = { version = "0.2.113" } wasm-bindgen-cli-support = { version = "0.2.113" } wasm-bindgen-futures = { version = "0.4.63" } wasm-bindgen-macro-support = { version = "0.2.113" } wasm-bindgen-shared = { version = "0.2.113" } wasm-bindgen-test = { version = "0.3.63" } wasm-streams = { version = "0.5.0" } web-sys = { version = "0.3.90", features = [ "AbortController", "AbortSignal", "BinaryType", "Blob", "Cache", "CacheQueryOptions", "CacheStorage", "CloseEvent", "console", "ErrorEvent", "File", "FormData", "Headers", "MessageEvent", "Performance", "ProgressEvent", "ReadableStream", "ReadableStreamDefaultReader", "Request", "RequestInit", "RequestCache", "RequestRedirect", "Response", "ResponseInit", "TransformStream", "WebSocket", "WorkerGlobalScope", "WritableStream", "WritableStreamDefaultWriter", ] } worker = { version = "0.7.5", path = "worker", features = ["queue", "d1", "axum", "timezone"] } worker-codegen = { path = "worker-codegen", version = "0.2.0" } worker-macros = { version = "0.7.5", path = "worker-macros", features = ["queue"] } worker-sys = { version = "0.7.5", path = "worker-sys", features = ["d1", "queue"] } [profile.release] # rustc supports two "optimize for size" levels: opt-level = "s" and "z". # These names were inherited from clang / LLVM and are not too descriptive # but "z" is meant to give the idea that it produces smaller binaries than "s". # https://docs.rust-embedded.org/book/unsorted/speed-vs-size.html#optimize-for-size opt-level = "z" # by compiling as a single codegen unit (i.e. not in parallel), # it's possible to reduce size even further at the expense of # compilation time codegen-units = 1 # by enabling link-time optimization, we can reduce size even further # by telling cargo to optimize at the link stage (in addition to the # normal optimizations during the compilation stage) lto = true # by overriding our dependencies' compilation settings, we can further optimize for size # https://docs.rust-embedded.org/book/unsorted/speed-vs-size.html#optimizing-dependencies [profile.release.package."*"] codegen-units = 1 opt-level = "z" # These are local patches we use to test against local wasm bindgen # We always align on the exact stable wasm bindgen version for releases [patch.crates-io] js-sys = { version = "0.3.90", path = './wasm-bindgen/crates/js-sys' } wasm-bindgen = { version = "0.2.113", path = './wasm-bindgen' } wasm-bindgen-cli-support = { version = "0.2.113", path = "./wasm-bindgen/crates/cli-support" } wasm-bindgen-futures = { version = "0.4.63", path = './wasm-bindgen/crates/futures' } wasm-bindgen-macro-support = { version = "0.2.113", path = "./wasm-bindgen/crates/macro-support" } wasm-bindgen-shared = { version = "0.2.113", path = "./wasm-bindgen/crates/shared" } wasm-bindgen-test = { version = "0.3.63", path = "./wasm-bindgen/crates/test" } web-sys = { version = "0.3.90", path = './wasm-bindgen/crates/web-sys' }