is_zarrs_available(), pizzarr_compiled_features(),
pizzarr_upgrade().tools/cran-build.sh produces a CRAN tarball with src/ stripped out.#[extendr] functions, 13 Rust source
files.ZarrArray$get_item() and $set_item() automatically
use the zarrs fast path when eligible (contiguous slices, supported dtype,
filesystem or HTTP store). Unsupported selections fall through to the R-native
path silently.zarr_create() dispatches to the zarrs backend when
available. Supports V2 and V3 formats with four codec presets (none, gzip,
blosc, zstd).aperm) to Rust, eliminating two full-array
copies per read and up to five per write. Cache-blocked tiling for 2D,
output-order iteration for nD.zarrs_http crate. HttpStore-backed arrays use zarrs
for parallel chunk decode on remote data. R-native crul-based path remains
as fallback.object_store crate. New S3Store R6 class for s3:// URLs.
Public buckets work without credentials (unsigned requests). Authenticated
access uses standard AWS environment variables.object_store crate. New GcsStore R6 class for gs:// URLs
(requires credentials). Public GCS data accessible via HTTPS endpoint without
credentials.zarrs_close_store().pizzarr_config() function for viewing and setting concurrency options.
Three settings: nthreads (rayon thread pool size), concurrent_target
(codec concurrency level), and http_batch_range_requests (multipart range
toggle for HTTP stores). All three backed by environment variables
(PIZZARR_NTHREADS, PIZZARR_CONCURRENT_TARGET,
PIZZARR_HTTP_BATCH_RANGE_REQUESTS).zarrs_runtime_info() now includes nthreads (rayon thread pool size).pizzarr.parallel_backend, pizzarr.parallel_write_enabled, and
pizzarr.progress_bar options are no longer used. On r-universe builds, zarrs
handles parallelism internally via its Rust thread pool. On CRAN (pure R),
chunk I/O is sequential.pbapply, parallel, future, and future.apply from Suggests.vignettes/parallel.Rmd. Replaced by vignettes/zarrs-backend.Rmd.vignettes/zarrs-backend.Rmd documenting the zarrs backend, dispatch
behavior, store types, concurrency tuning, and cloud access.for loop.set_dimension_names() / get_dimension_names() methods to ZarrArray (#170).get_dimension_names() method to ZarrArray for V3 dimension names support.rasterImage() instead of the raster package (#161).Fixes a flaky test failing on CRAN -- no functional changes.
This is the first release of pizzarr to CRAN. The package has significant testing and validation but has not been vetted by a large and diverse user community. As a result, bugs and undesirable behavior may be found. If you find issues please report them at:
https://github.com/zarr-developers/pizzarr/issues