diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml index 89c8b37f..fdc12461 100644 --- a/.github/workflows/lint.yaml +++ b/.github/workflows/lint.yaml @@ -14,7 +14,7 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - - uses: dtolnay/rust-toolchain@nightly + - uses: dtolnay/rust-toolchain with: components: rustfmt - name: cargo fmt @@ -25,7 +25,7 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - - uses: dtolnay/rust-toolchain@nightly + - uses: dtolnay/rust-toolchain with: components: clippy - name: cargo clippy @@ -39,7 +39,7 @@ jobs: - uses: actions/setup-python@v4 with: python-version: '3.x' - - uses: psf/black@23.1.0 + - uses: psf/black@stable ruff: name: Ruff diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 5a56acef..a4ee099a 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -31,7 +31,6 @@ jobs: args: --release --out dist --find-interpreter sccache: "true" manylinux: auto - rust-toolchain: nightly - name: Upload wheels uses: actions/upload-artifact@v3 with: @@ -55,7 +54,6 @@ jobs: # target: ${{ matrix.target }} # args: --release --out dist --find-interpreter # sccache: "true" - # rust-toolchain: nightly # - name: Upload wheels # uses: actions/upload-artifact@v3 # with: @@ -78,7 +76,6 @@ jobs: target: ${{ matrix.target }} args: --release --out dist --find-interpreter sccache: "true" - rust-toolchain: nightly - name: Upload wheels uses: actions/upload-artifact@v3 with: diff --git a/Cargo.lock b/Cargo.lock index c9c3e47e..1f5f22e4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -97,16 +97,6 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bf7d0a018de4f6aa429b9d33d69edf69072b1c5b1cb8d3e4a5f7ef898fc3eb76" -[[package]] -name = "arrow-format" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07884ea216994cdc32a2d5f8274a8bee979cfe90274b83f86f440866ee3132c7" -dependencies = [ - "planus", - "serde", -] - [[package]] name = "atoi" version = "2.0.0" @@ -309,6 +299,28 @@ dependencies = [ "windows-targets 0.48.5", ] +[[package]] +name = "chrono-tz" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d59ae0466b83e838b81a54256c39d5d7c20b9d7daa10510a242d9b75abd5936e" +dependencies = [ + "chrono", + "chrono-tz-build", + "phf", +] + +[[package]] +name = "chrono-tz-build" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "433e39f13c9a060046954e0592a8d0a4bcb1040125cbf91cb8ee58964cfb350f" +dependencies = [ + "parse-zoneinfo", + "phf", + "phf_codegen", +] + [[package]] name = "ciborium" version = "0.2.1" @@ -816,6 +828,12 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7" +[[package]] +name = "hex" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" + [[package]] name = "home" version = "0.5.9" @@ -842,7 +860,7 @@ dependencies = [ "iana-time-zone-haiku", "js-sys", "wasm-bindgen", - "windows-core", + "windows-core 0.51.1", ] [[package]] @@ -882,21 +900,20 @@ dependencies = [ [[package]] name = "image" -version = "0.24.5" -source = "git+https://github.com/Shnatsel/image?branch=zune-jpeg-sneaky#1f6e8d89cb3490d24d87c7e9d820c8a57b646a24" +version = "0.24.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "034bbe799d1909622a74d1193aa50147769440040ff36cb2baa947609b0a4e23" dependencies = [ "bytemuck", "byteorder", "color_quant", "exr", "gif", - "num-rational", + "jpeg-decoder", "num-traits", "png", "qoi", "tiff", - "zune-core", - "zune-jpeg", ] [[package]] @@ -974,6 +991,12 @@ version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c" +[[package]] +name = "itoap" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9028f49264629065d057f340a86acb84867925865f73bbf8d47b4d149a7e88b8" + [[package]] name = "jobserver" version = "0.1.27" @@ -988,6 +1011,9 @@ name = "jpeg-decoder" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bc0000e42512c92e31c2252315bda326620a4e034105e900c98ec492fa077b3e" +dependencies = [ + "rayon", +] [[package]] name = "js-sys" @@ -1206,7 +1232,8 @@ dependencies = [ [[package]] name = "nshare" version = "0.9.0" -source = "git+https://github.com/benjaminrwilson/nshare?rev=e896e103dc6b6e449b760d1e6d639590a864a80b#e896e103dc6b6e449b760d1e6d639590a864a80b" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4447657cd40e3107416ec4f2ac3e61a18781b00061789e3b8f4bbcbccb26c4c6" dependencies = [ "image", "nalgebra", @@ -1404,6 +1431,15 @@ dependencies = [ "windows-targets 0.48.5", ] +[[package]] +name = "parse-zoneinfo" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c705f256449c60da65e11ff6626e0c16a0a0b96aaa348de61376b249bc340f41" +dependencies = [ + "regex", +] + [[package]] name = "paste" version = "1.0.14" @@ -1416,6 +1452,44 @@ version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" +[[package]] +name = "phf" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc" +dependencies = [ + "phf_shared", +] + +[[package]] +name = "phf_codegen" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8d39688d359e6b34654d328e262234662d16cc0f60ec8dcbe5e718709342a5a" +dependencies = [ + "phf_generator", + "phf_shared", +] + +[[package]] +name = "phf_generator" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0" +dependencies = [ + "phf_shared", + "rand", +] + +[[package]] +name = "phf_shared" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b" +dependencies = [ + "siphasher", +] + [[package]] name = "pkg-config" version = "0.3.27" @@ -1474,9 +1548,9 @@ dependencies = [ [[package]] name = "polars" -version = "0.35.4" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df8e52f9236eb722da0990a70bbb1216dcc7a77bcb00c63439d2d982823e90d5" +checksum = "e43795c49010cb851d45227caa17769e83760e21d260ba6285c563b754e1652f" dependencies = [ "getrandom", "polars-core", @@ -1490,15 +1564,16 @@ dependencies = [ [[package]] name = "polars-arrow" -version = "0.35.4" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd503430a6d9779b07915d858865fe998317ef3cfef8973881f578ac5d4baae7" +checksum = "faacd21a2548fa6d50c72d6b8d4649a8e029a0f3c6c5545b7f436f0610e49b0f" dependencies = [ "ahash", - "arrow-format", + "atoi", "atoi_simd", "bytemuck", "chrono", + "chrono-tz", "dyn-clone", "either", "ethnum", @@ -1507,30 +1582,57 @@ dependencies = [ "getrandom", "hashbrown 0.14.3", "itoa", + "itoap", "lz4", "multiversion", "num-traits", + "polars-arrow-format", "polars-error", "polars-utils", - "rustc_version", "ryu", "serde", "simdutf8", "streaming-iterator", "strength_reduce", + "version_check", "zstd", ] +[[package]] +name = "polars-arrow-format" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19b0ef2474af9396b19025b189d96e992311e6a47f90c53cd998b36c4c64b84c" +dependencies = [ + "planus", + "serde", +] + +[[package]] +name = "polars-compute" +version = "0.37.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32d9dc87f8003ae0edeef5ad9ac92b2a345480bbe17adad64496113ae84706dd" +dependencies = [ + "bytemuck", + "num-traits", + "polars-arrow", + "polars-error", + "polars-utils", + "version_check", +] + [[package]] name = "polars-core" -version = "0.35.4" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae73d5b8e55decde670caba1cc82b61f14bfb9a72503198f0997d657a98dcfd6" +checksum = "befd4d280a82219a01035c4f901319ceba65998c594d0c64f9a439cdee1d7777" dependencies = [ "ahash", "bitflags 2.4.1", "bytemuck", "chrono", + "chrono-tz", "comfy-table", "either", "hashbrown 0.14.3", @@ -1539,6 +1641,7 @@ dependencies = [ "num-traits", "once_cell", "polars-arrow", + "polars-compute", "polars-error", "polars-row", "polars-utils", @@ -1555,11 +1658,11 @@ dependencies = [ [[package]] name = "polars-error" -version = "0.35.4" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb0520d68eaa9993ae0c741409d1526beff5b8f48e1d73e4381616f8152cf488" +checksum = "50f2435b02d1ba36d8c1f6a722cad04e4c0b2705a3112c5706e6960d405d7798" dependencies = [ - "arrow-format", + "polars-arrow-format", "regex", "simdutf8", "thiserror", @@ -1567,9 +1670,9 @@ dependencies = [ [[package]] name = "polars-io" -version = "0.35.4" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96e10a0745acd6009db64bef0ceb9e23a70b1c27b26a0a6517c91f3e6363bc06" +checksum = "b51fba2cf014cb39c2b38353d601540fb9db643be65abb9ca8ff44b9c4c4a88e" dependencies = [ "ahash", "atoi_simd", @@ -1598,9 +1701,9 @@ dependencies = [ [[package]] name = "polars-lazy" -version = "0.35.4" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3555f759705be6dd0d3762d16a0b8787b2dc4da73b57465f3b2bf1a070ba8f20" +checksum = "d83343e413346f048f3a5ad07c0ea4b5d0bada701a482878213142970b0ddff8" dependencies = [ "ahash", "bitflags 2.4.1", @@ -1621,19 +1724,24 @@ dependencies = [ [[package]] name = "polars-ops" -version = "0.35.4" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a7eb218296aaa7f79945f08288ca32ca3cf25fa505649eeee689ec21eebf636" +checksum = "6395f5fd5e1adf016fd6403c0a493181c1a349a7a145b2687cdf50a0d630310a" dependencies = [ "ahash", "argminmax", + "base64", "bytemuck", + "chrono", + "chrono-tz", "either", "hashbrown 0.14.3", + "hex", "indexmap 2.1.0", "memchr", "num-traits", "polars-arrow", + "polars-compute", "polars-core", "polars-error", "polars-utils", @@ -1641,14 +1749,15 @@ dependencies = [ "regex", "serde", "smartstring", + "unicode-reverse", "version_check", ] [[package]] name = "polars-pipe" -version = "0.35.4" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66094e7df64c932a9a7bdfe7df0c65efdcb192096e11a6a765a9778f78b4bdec" +checksum = "390a831b864bc57a4cb260b0595030dfb6a4260a3723cf8ca17968ee2078b8ff" dependencies = [ "crossbeam-channel", "crossbeam-queue", @@ -1656,6 +1765,7 @@ dependencies = [ "hashbrown 0.14.3", "num-traits", "polars-arrow", + "polars-compute", "polars-core", "polars-io", "polars-ops", @@ -1669,12 +1779,13 @@ dependencies = [ [[package]] name = "polars-plan" -version = "0.35.4" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10e32a0958ef854b132bad7f8369cb3237254635d5e864c99505bc0bc1035fbc" +checksum = "7fb7d7527be2aa33baace9000f6772eb9df7cd57ec010a4b273435d2dc1349e8" dependencies = [ "ahash", "bytemuck", + "chrono-tz", "once_cell", "percent-encoding", "polars-arrow", @@ -1693,9 +1804,9 @@ dependencies = [ [[package]] name = "polars-row" -version = "0.35.4" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d135ab81cac2906ba74ea8984c7e6025d081ae5867615bcefb4d84dfdb456dac" +checksum = "f4984d97aad3d0db92afe76ebcab10b5e37a1216618b5703ae0d2917ccd6168c" dependencies = [ "polars-arrow", "polars-error", @@ -1704,10 +1815,11 @@ dependencies = [ [[package]] name = "polars-sql" -version = "0.35.4" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8dbd7786849a5e3ad1fde188bf38141632f626e3a57319b0bbf7a5f1d75519e" +checksum = "77f62a8b8f93146ec1eb2ef340d77eeb174e8010035e449bfdd424d2b1fd944a" dependencies = [ + "hex", "polars-arrow", "polars-core", "polars-error", @@ -1721,12 +1833,13 @@ dependencies = [ [[package]] name = "polars-time" -version = "0.35.4" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aae56f79e9cedd617773c1c8f5ca84a31a8b1d593714959d5f799e7bdd98fe51" +checksum = "6d75348a51d0c97f3b83df860ecb35a6ac6c5dafc6278cac4e1ac101d96dc753" dependencies = [ "atoi", "chrono", + "chrono-tz", "now", "once_cell", "polars-arrow", @@ -1741,9 +1854,9 @@ dependencies = [ [[package]] name = "polars-utils" -version = "0.35.4" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da6ce68169fe61d46958c8eab7447360f30f2f23f6e24a0ce703a14b0a3cfbfc" +checksum = "38f9c955bb1e9b55d835aeb7fe4e4e8826e01abe5f0ada979ceb7d2b9af7b569" dependencies = [ "ahash", "bytemuck", @@ -1781,9 +1894,9 @@ dependencies = [ [[package]] name = "pyo3" -version = "0.20.0" +version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04e8453b658fe480c3e70c8ed4e3d3ec33eb74988bd186561b0cc66b85c3bc4b" +checksum = "9a89dc7a5850d0e983be1ec2a463a171d20990487c3cfcd68b5363f1ee3d6fe0" dependencies = [ "cfg-if", "indoc", @@ -1798,9 +1911,9 @@ dependencies = [ [[package]] name = "pyo3-build-config" -version = "0.20.0" +version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a96fe70b176a89cff78f2fa7b3c930081e163d5379b4dcdf993e3ae29ca662e5" +checksum = "07426f0d8fe5a601f26293f300afd1a7b1ed5e78b2a705870c5f30893c5163be" dependencies = [ "once_cell", "target-lexicon", @@ -1808,9 +1921,9 @@ dependencies = [ [[package]] name = "pyo3-ffi" -version = "0.20.0" +version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "214929900fd25e6604661ed9cf349727c8920d47deff196c4e28165a6ef2a96b" +checksum = "dbb7dec17e17766b46bca4f1a4215a85006b4c2ecde122076c562dd058da6cf1" dependencies = [ "libc", "pyo3-build-config", @@ -1818,9 +1931,9 @@ dependencies = [ [[package]] name = "pyo3-macros" -version = "0.20.0" +version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dac53072f717aa1bfa4db832b39de8c875b7c7af4f4a6fe93cdbf9264cf8383b" +checksum = "05f738b4e40d50b5711957f142878cfa0f28e054aa0ebdfc3fd137a843f74ed3" dependencies = [ "proc-macro2", "pyo3-macros-backend", @@ -1830,9 +1943,9 @@ dependencies = [ [[package]] name = "pyo3-macros-backend" -version = "0.20.0" +version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7774b5a8282bd4f25f803b1f0d945120be959a36c72e08e7cd031c792fdfd424" +checksum = "0fc910d4851847827daf9d6cdd4a823fbdaab5b8818325c5e97a86da79e8881f" dependencies = [ "heck", "proc-macro2", @@ -1842,9 +1955,9 @@ dependencies = [ [[package]] name = "pyo3-polars" -version = "0.9.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e37da190c68036cb620bbde9a8933839addfa4b66e9903b9b1dc751b2b00e7d7" +checksum = "7fa311764163c831c75f9ca49499abacbf7ece676cad0b059d962a384aa18224" dependencies = [ "polars", "polars-core", @@ -1991,15 +2104,6 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" -[[package]] -name = "rustc_version" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" -dependencies = [ - "semver", -] - [[package]] name = "rustix" version = "0.38.28" @@ -2102,12 +2206,6 @@ dependencies = [ "libc", ] -[[package]] -name = "semver" -version = "1.0.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090" - [[package]] name = "serde" version = "1.0.193" @@ -2164,6 +2262,12 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f27f6278552951f1f2b8cf9da965d10969b2efdea95a6ec47987ab46edfe263a" +[[package]] +name = "siphasher" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" + [[package]] name = "smallvec" version = "1.11.2" @@ -2280,16 +2384,16 @@ dependencies = [ [[package]] name = "sysinfo" -version = "0.29.11" +version = "0.30.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd727fc423c2060f6c92d9534cef765c65a6ed3f428a03d7def74a8c4348e666" +checksum = "1fb4f3438c8f6389c864e61221cbc97e9bca98b4daf39a5beb7bea660f528bb2" dependencies = [ "cfg-if", "core-foundation-sys", "libc", "ntapi", "once_cell", - "winapi", + "windows", ] [[package]] @@ -2374,9 +2478,9 @@ dependencies = [ [[package]] name = "tiff" -version = "0.8.1" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7449334f9ff2baf290d55d73983a7d6fa15e01198faef72af07e2a8db851e471" +checksum = "ba1310fcea54c6a9a4fd1aad794ecc02c31682f6bfbecdf460bf19533eed1e3e" dependencies = [ "flate2", "jpeg-decoder", @@ -2435,6 +2539,21 @@ dependencies = [ "tinyvec", ] +[[package]] +name = "unicode-reverse" +version = "1.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0bea5dacebb0d2d0a69a6700a05b59b3908bf801bf563a49bd27a1b60122962c" +dependencies = [ + "unicode-segmentation", +] + +[[package]] +name = "unicode-segmentation" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202" + [[package]] name = "unicode-width" version = "0.1.11" @@ -2612,6 +2731,16 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" +[[package]] +name = "windows" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be" +dependencies = [ + "windows-core 0.52.0", + "windows-targets 0.52.0", +] + [[package]] name = "windows-core" version = "0.51.1" @@ -2621,6 +2750,15 @@ dependencies = [ "windows-targets 0.48.5", ] +[[package]] +name = "windows-core" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" +dependencies = [ + "windows-targets 0.52.0", +] + [[package]] name = "windows-sys" version = "0.45.0" @@ -2884,15 +3022,6 @@ dependencies = [ "pkg-config", ] -[[package]] -name = "zune-core" -version = "0.2.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29ca36c2e02af0d8d7ee977542bfe33ed1c516be73d3c1faa4420af46e96ceee" -dependencies = [ - "bitflags 2.4.1", -] - [[package]] name = "zune-inflate" version = "0.2.54" @@ -2901,13 +3030,3 @@ checksum = "73ab332fe2f6680068f3582b16a24f90ad7096d5d39b974d1c0aff0125116f02" dependencies = [ "simd-adler32", ] - -[[package]] -name = "zune-jpeg" -version = "0.3.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2848e8f4f29dbdcc79910ab3abdff22bb0bacef8556f2a983b5ca950d8b4991e" -dependencies = [ - "log", - "zune-core", -] diff --git a/conda/environment.yml b/conda/environment.yml index 10c590fd..6882c848 100644 --- a/conda/environment.yml +++ b/conda/environment.yml @@ -3,7 +3,6 @@ channels: - pytorch - conda-forge dependencies: - - conda-forge/label/rust_dev::rust - av - click - joblib @@ -22,6 +21,7 @@ dependencies: - pyarrow - pyproj - rich + - rust - scipy - pytorch - tqdm diff --git a/rust/Cargo.toml b/rust/Cargo.toml index 77986f46..51dba9ed 100644 --- a/rust/Cargo.toml +++ b/rust/Cargo.toml @@ -10,7 +10,9 @@ crate-type = ["cdylib", "lib"] [dependencies] anyhow = "1.0.66" -argminmax = { version = "0.6.1", features = ["ndarray"] } +argminmax = { version = "0.6.1", features = [ + "ndarray", +], default-features = false } blas-src = { version = "0.8", optional = true } bincode = "1.3.3" dirs = "4.0.0" @@ -18,7 +20,7 @@ env_logger = "0.10.0" glob = "0.3.1" log = "0.4.17" ignore = "0.4.20" -image = { git = "https://github.com/Shnatsel/image", branch = "zune-jpeg-sneaky" } +image = { version = "0.24.8" } indicatif = "0.17.3" itertools = "0.10.5" ndarray = { version = "0.15.6", features = [ @@ -26,13 +28,11 @@ ndarray = { version = "0.15.6", features = [ "matrixmultiply-threading", "rayon", ] } -nshare = { git = "https://github.com/benjaminrwilson/nshare", rev = "e896e103dc6b6e449b760d1e6d639590a864a80b", features = [ - "ndarray", -] } +nshare = { version = "0.9.0", features = ["ndarray"] } numpy = { version = "0.20.0" } once_cell = "1.17.1" openblas-src = { version = "0.10.8", optional = true } -polars = { version = "0.35.4", features = [ +polars = { version = "0.37.0", features = [ "asof_join", "dtype-u8", "dtype-u16", @@ -42,8 +42,8 @@ polars = { version = "0.35.4", features = [ "serde", "serde-lazy", ] } -pyo3 = { version = "0.20.0", features = ["extension-module"] } -pyo3-polars = "0.9.0" +pyo3 = { version = "0.20.2", features = ["extension-module"] } +pyo3-polars = "0.11.3" rand = "0.8.5" rand_distr = "0.4.3" rayon = "1.7.0" diff --git a/rust/src/io.rs b/rust/src/io.rs index 1c9e7be4..ec6f64d3 100644 --- a/rust/src/io.rs +++ b/rust/src/io.rs @@ -84,7 +84,7 @@ pub fn read_accumulate_lidar( memory_mapped: bool, ) -> LazyFrame { let start_idx = i64::max(idx as i64 - num_accumulated_sweeps as i64 + 1, 0) as usize; - let log_ids = file_index["log_id"].utf8().unwrap(); + let log_ids = file_index["log_id"].str().unwrap(); let timestamps = file_index["timestamp_ns"].u64().unwrap(); let poses_path = log_dir.join("city_SE3_egovehicle.feather"); let poses = read_feather_eager(&poses_path, memory_mapped); diff --git a/src/av2/datasets/motion_forecasting/viz/scenario_visualization.py b/src/av2/datasets/motion_forecasting/viz/scenario_visualization.py index 66ea94ee..4a0fa1ad 100644 --- a/src/av2/datasets/motion_forecasting/viz/scenario_visualization.py +++ b/src/av2/datasets/motion_forecasting/viz/scenario_visualization.py @@ -39,9 +39,9 @@ _DEFAULT_ACTOR_COLOR: Final[str] = "#D3E8EF" _FOCAL_AGENT_COLOR: Final[str] = "#ECA25B" _AV_COLOR: Final[str] = "#007672" -_BOUNDING_BOX_ZORDER: Final[ - int -] = 100 # Ensure actor bounding boxes are plotted on top of all map elements +_BOUNDING_BOX_ZORDER: Final[int] = ( + 100 # Ensure actor bounding boxes are plotted on top of all map elements +) _STATIC_OBJECT_TYPES: Set[ObjectType] = { ObjectType.STATIC, diff --git a/src/av2/evaluation/detection/eval.py b/src/av2/evaluation/detection/eval.py index df37a9d4..18cd8438 100644 --- a/src/av2/evaluation/detection/eval.py +++ b/src/av2/evaluation/detection/eval.py @@ -281,9 +281,9 @@ def summarize_metrics( ) # Record the average precision. - average_precisions.loc[ - category, affinity_threshold_m - ] = threshold_average_precision + average_precisions.loc[category, affinity_threshold_m] = ( + threshold_average_precision + ) mean_average_precisions: NDArrayFloat = ( average_precisions.loc[category].to_numpy().mean() diff --git a/src/av2/evaluation/scene_flow/make_submission_archive.py b/src/av2/evaluation/scene_flow/make_submission_archive.py index 38e8fcd5..972bf7a2 100644 --- a/src/av2/evaluation/scene_flow/make_submission_archive.py +++ b/src/av2/evaluation/scene_flow/make_submission_archive.py @@ -1,4 +1,5 @@ """Validate and package a set of prediction files for submission to the leaderboard.""" + from pathlib import Path from typing import Final from zipfile import ZipFile diff --git a/src/av2/rendering/video.py b/src/av2/rendering/video.py index 13df7cce..e013663c 100644 --- a/src/av2/rendering/video.py +++ b/src/av2/rendering/video.py @@ -88,15 +88,15 @@ def tile_cameras( if "ring_front_right" in named_sensors: ring_front_right = named_sensors["ring_front_right"] - tiled_im_bgr[ - :landscape_height, landscape_width + landscape_height : - ] = ring_front_right + tiled_im_bgr[:landscape_height, landscape_width + landscape_height :] = ( + ring_front_right + ) if "ring_side_left" in named_sensors: ring_side_left = named_sensors["ring_side_left"] - tiled_im_bgr[ - landscape_height : 2 * landscape_height, :landscape_width - ] = ring_side_left + tiled_im_bgr[landscape_height : 2 * landscape_height, :landscape_width] = ( + ring_side_left + ) if "ring_side_right" in named_sensors: ring_side_right = named_sensors["ring_side_right"] @@ -113,9 +113,9 @@ def tile_cameras( if "ring_rear_left" in named_sensors: ring_rear_left = named_sensors["ring_rear_left"] - tiled_im_bgr[ - 2 * landscape_height : 3 * landscape_height, :landscape_width - ] = ring_rear_left + tiled_im_bgr[2 * landscape_height : 3 * landscape_height, :landscape_width] = ( + ring_rear_left + ) if "ring_rear_right" in named_sensors: ring_rear_right = named_sensors["ring_rear_right"] diff --git a/src/av2/utils/depth_map_utils.py b/src/av2/utils/depth_map_utils.py index e6bfbd30..1edaead6 100644 --- a/src/av2/utils/depth_map_utils.py +++ b/src/av2/utils/depth_map_utils.py @@ -10,9 +10,9 @@ from av2.utils.typing import NDArrayByte, NDArrayFloat -MIN_DISTANCE_AWAY_M: Final[ - float -] = 30.0 # assume max noise starting at this distance (meters) +MIN_DISTANCE_AWAY_M: Final[float] = ( + 30.0 # assume max noise starting at this distance (meters) +) MAX_ALLOWED_NOISE_M: Final[float] = 3.0 # meters diff --git a/src/av2/utils/io.py b/src/av2/utils/io.py index 159db41b..74599a57 100644 --- a/src/av2/utils/io.py +++ b/src/av2/utils/io.py @@ -262,5 +262,8 @@ def read_all_annotations(dataset_dir: Path, split: str) -> pd.DataFrame: annotations_list: List[pd.DataFrame] = [] for annotations_path in annotations_path_list: annotations = read_feather(annotations_path) + + log_id = annotations_path.parent.stem + annotations["log_id"] = log_id annotations_list.append(annotations) return pd.concat(annotations_list).reset_index(drop=True)