[package] name = "opcalc" version = "0.2.1" authors = ["vic-lee "] edition = "2018" license = "MIT" repository = "https://github.com/mfg-nyu/opcalc" description = "An easy-to-use black-scholes option calculator. Made for JS, built in Rust." [lib] crate-type = ["cdylib", "rlib"] [features] default = ["console_error_panic_hook"] [dependencies] wasm-bindgen = "0.2.69" # The `console_error_panic_hook` crate provides better debugging of panics by # logging them with `console.error`. This is great for development, but requires # all the `std::fmt` and `std::panicking` infrastructure, so isn't great for # code size when deploying. console_error_panic_hook = { version = "0.1.6", optional = true } # `wee_alloc` is a tiny allocator for wasm that is only ~1K in code size # compared to the default allocator's ~10K. It is slower than the default # allocator, however. # # Unfortunately, `wee_alloc` requires nightly Rust when targeting wasm for now. wee_alloc = { version = "0.4.5", optional = true } # library used for normal-distribution related calculations statrs = "0.12.0" # library used to evaluate floating point (almost) equality approx = "0.3.2" [dependencies.web-sys] version = "0.3" features = [ "console", ] [dev-dependencies] wasm-bindgen-test = "0.3.13" [profile.release] # enable link-time optimization lto = true # Tell `rustc` to optimize for small code size. opt-level = "s" [package.metadata.wasm-pack.profile.release] # This is required to prevent the following error: # [INFO]: Optimizing wasm binaries with `wasm-opt`... # [wasm-validator error in module] unexpected true: Exported global cannot be mutable # It is introduced after we added Option return types to exported functions. # Relevant issue: https://github.com/rustwasm/wasm-pack/issues/886 wasm-opt = ["-Oz", "--enable-mutable-globals"]