diff --git a/Cargo.lock b/Cargo.lock index 4a2ddb462..2cd91e89d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -281,6 +281,15 @@ version = "1.0.81" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0952808a6c2afd1aa8947271f3a60f1a6763c7b912d210184c5149b5cf147247" +[[package]] +name = "arbitrary" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223" +dependencies = [ + "derive_arbitrary", +] + [[package]] name = "arboard" version = "3.3.2" @@ -749,9 +758,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.15.4" +version = "3.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ff69b9dd49fd426c69a0db9fc04dd934cdb6645ff000864d98f7e2af8830eaa" +checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" [[package]] name = "bytemuck" @@ -793,9 +802,9 @@ checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9" [[package]] name = "calamine" -version = "0.24.0" +version = "0.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a3a315226fdc5b1c3e33521073e1712a05944bc0664d665ff1f6ff0396334da" +checksum = "138646b9af2c5d7f1804ea4bf93afc597737d2bd4f7341d67c48b03316976eb1" dependencies = [ "byteorder", "codepage", @@ -803,7 +812,7 @@ dependencies = [ "log", "quick-xml 0.31.0", "serde", - "zip 0.6.6", + "zip 2.1.1", ] [[package]] @@ -1604,6 +1613,17 @@ dependencies = [ "syn 2.0.87", ] +[[package]] +name = "derive_arbitrary" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30542c1ad912e0e3d22a1935c290e12e8a29d704a420177a31faad4a601a0800" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + [[package]] name = "derive_builder" version = "0.12.0" @@ -1678,6 +1698,17 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b" +[[package]] +name = "displaydoc" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + [[package]] name = "dlib" version = "0.5.2" @@ -3261,6 +3292,12 @@ dependencies = [ "owned-alloc", ] +[[package]] +name = "lockfree-object-pool" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9374ef4228402d4b7e403e5838cb880d9ee663314b0a900d5a6aabf0c213552e" + [[package]] name = "log" version = "0.4.21" @@ -7145,14 +7182,33 @@ dependencies = [ [[package]] name = "zip" -version = "0.6.6" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261" +checksum = "1dd56a4d5921bc2f99947ac5b3abe5f510b1be7376fdc5e9fce4a23c6a93e87c" dependencies = [ - "byteorder", + "arbitrary", "crc32fast", "crossbeam-utils", + "displaydoc", "flate2", + "indexmap", + "memchr", + "thiserror", + "zopfli", +] + +[[package]] +name = "zopfli" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5019f391bac5cf252e93bbcc53d039ffd62c7bfb7c150414d61369afe57e946" +dependencies = [ + "bumpalo", + "crc32fast", + "lockfree-object-pool", + "log", + "once_cell", + "simd-adler32", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 327cf5ad5..3a1fd8c21 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -70,7 +70,7 @@ serde_yaml = {version = "0.9.33", optional = true} # Feature dependencies arboard = {version = "3", optional = true} -calamine = {version = "0.24.0", optional = true} +calamine = {version = "0.26.1", optional = true} color_quant = {version = "1.1", optional = true} cosmic-text = {version = "0.12.1", optional = true} csv = {version = "1", optional = true} diff --git a/src/algorithm/monadic.rs b/src/algorithm/monadic.rs index dffd4b73b..c1f5c364d 100644 --- a/src/algorithm/monadic.rs +++ b/src/algorithm/monadic.rs @@ -2245,9 +2245,11 @@ impl Value { &Data::Float(f) => f.into(), Data::String(s) => s.clone().into(), &Data::Bool(b) => b.into(), - Data::DateTime(dt) => dt.to_string().into(), - Data::DateTimeIso(dt) => dt.to_string().into(), - Data::DurationIso(dur) => dur.to_string().into(), + Data::DateTime(dt) => { + ((dt.as_f64() - 2.0) * 24.0 * 60.0 * 60.0 - 2208988800.0).into() + } + Data::DateTimeIso(dt) => dt.clone().into(), + Data::DurationIso(dur) => dur.clone().into(), Data::Error(e) => e.to_string().into(), Data::Empty => String::new().into(), }));