[package] # The summary in the crate is simply "Blosc2"; this seems too cryptic. summary = "Bindings to C Blosc2" description = "Bindings to C Blosc2." [requires] build = [ "tomcli", ] [scripts.prep] post = [ "# Do not depend on criterion; it is needed only for benchmarks.", "tomcli set Cargo.toml del dev-dependencies.criterion", ] [features] hide = [ "static", # These features correspond to blosc2 CMake options that are *not* enabled # in the system blosc2 package. "deactivate-zlib-optim", "deactivate-zlib", "deactivate-zstd", ] [tests] comments = [ """\ Do not test that the blosc2-sys bidings were generated against the exact \ version of c-blosc2 that upstream expects; we always use the system blosc2, \ whatever that may be.\ """ ] skip-exact = true skip = [ "tests::test_get_version_string", ] [scripts.check] pre = [ "%ifnarch s390x", ] post = [ "%else", "skip=\"${skip-} --skip tests::test_get_version_string\"", "# Even after serious effort by upstream (see", "# https://github.com/milesgranger/blosc2-rs/issues/23), several tests still", "# fail on s390x. This would seem to justify making this package ExcludeArch,", "# but that would have a ripple effect on python-cramjam and a whole tree of", "# packages that depend on it, and which probably do not even use its blosc2", "# support. We consider that outcome even worse than shipping broken blosc2", "# support on s390x. Note that the endianness issues are probably in the C", "# blosc2 library (and that the blosc2 packages ignores any and all test", "# failures on s390x), and see also:", "# https://github.com/Blosc/c-blosc2/issues/467.", "skip=\"${skip-} --skip schunk::Chunk::decompress\"", "skip=\"${skip-} --skip schunk::Chunk::repeatval\"", "skip=\"${skip-} --skip schunk::Chunk::uninit\"", "skip=\"${skip-} --skip schunk::Chunk::zeros\"", "%cargo_test -- -- ${skip-}", "%endif", ]