NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #3079 most downloaded on crates.io
.npy and .npz file format support for ndarray
Last release 9 months ago
15 Dec 2025
Release timing varies
gaps range from 2 months to 2.9 years
Nearly every release is documented
notes for 15 of 15 stable releases
Nothing withdrawn
no release was ever pulled
8 years old
15 releases · first in 2018
Updated minimum Rust version to 1.84.
ndarray 0.17.1.zip 6.array parameter of NpzWriter::add_array from
&ArrayBase<S, D> to T: WriteNpyExt + ?Sized to support the new
ArrayRef type in ndarray 0.17.1.create_new_npy convenience function which uses
File::create_new. (In contrast, the existing write_npy function
uses File::create.)NpzWriter::add_array_with_options, which overrides the
options for that specific array.npy module to provide access to
header-related functionality in the npy::header module. In most
cases, users do not need this functionality, but some users have
requested access to it for specific use cases.WriteNpyExt for the new ArrayRef type in ndarray
0.17.1.Sized bound from write_npy to support the
new ArrayRef type in ndarray 0.17.1.Removed broken links from docs.
One column per quarter.
Updated minimum Rust version to 1.64.
ndarray 0.16.zip 2.unsafe from WritableElement trait declaration..npy extensions of the file names within
.npz archives to match NumPy's behavior, by @jturner314. See
#76. Specifically,
NpzWriter::add_array() now appends .npy to the name.NpzReader::names() now strips a single .npy (if present) from the end
of each name.NpzReader::by_name() now tries {name}.npy if {name} is not present in
the archive.NpzWriter::new_with_options(), which allows for different compression
options, etc., when writing .npz files. By @DCNick3. See
#66 for the motivation.Added support for complex floating point element types with the new num-complex-0_4 feature.
num-complex-0_4 feature.* Updated to ndarray 0.15. * Updated to py_literal 0.4. * Updated to Rust 1.49.
ndarray 0.15.py_literal 0.4.Added a .finish() method to NpzWriter. All users of NpzWriter should call this method, after the write of the last array, in order to properly handle
.finish() method to NpzWriter. All users of NpzWriter should
call this method, after the write of the last array, in order to properly
handle errors. (Without calling .finish(), dropping will automatically
attempt to finish the file, but errors will be silently ignored.)write_npy convenience function and the NpzWriter::add_array
method to buffer writes using BufWriter. This significantly improves write
performance for arrays which are not in standard or Fortran layout. The docs
of WriteNpyExt::write_npy have also been updated to recommend that users
wrap the writer in a BufWriter. Thanks to [@bluss] for reporting the
unbuffered writes issue and reviewing the PR.WriteNpyExt::write_npy to always call .flush() before returning.
This is convenient when the writer passed to WriteNpyExt::write_npy is
wrapped in a BufWriter.Added support for viewing byte slices as .npy files, primarily for use with memory-mapped files. See the ViewNpyExt and ViewMutNpyExt extension traits
.npy files, primarily for use with
memory-mapped files. See the ViewNpyExt and ViewMutNpyExt extension
traits. By [@n3vu0r] and [@jturner314].write_zeroed_npy..npy file header. Before, if the number
of bytes of data was more than isize::MAX, the implementation would attempt
to create the array anyway and panic. Now, it detects this case before
attempting to create the array and returns
Err(ReadNpyError::LengthOverflow) instead.* Updated to ndarray 0.14. * Updated to Rust 1.42.
ndarray 0.14.Changed write_npy to take the array by reference instead of by value, by [@KarelPeeters].
write_npy to take the array by reference instead of by value, by
[@KarelPeeters].Added read_npy and write_npy convenience functions.
ndarray 0.13.read_npy and write_npy convenience functions.npy format version 3.0.ReadableElement::read_vec to ::read_to_end_exact_vec.Error type from Readable/WritableElement and updating to the new style of
std::error::Error implementation.Added support for reading/writing arrays of bool, by [@tobni] and [@jturner314].
bool, by [@tobni] and
[@jturner314].zip 0.5.compressed_npz_default feature to compressed_npz because the
zip crate no longer allows the user to select the compression backend.Updated to num-traits 0.2 (replacing dependency on num).
ndarray 0.12.num-traits 0.2 (replacing dependency on num).py_literal 0.2.Made the compression backend for compressed .npz files user-selectable.
zip 0.4..npz files user-selectable.default-features = false, features = ["compressed_npz"].Improved crate documentation (no functional changes).
[@bluss]: https://github.com/bluss/ [@jturner314]: https://github.com/jturner314/ [@KarelPeeters]: https://github.com/KarelPeeters/ [@n3vu0r]: https:/
Your coding agent can read these notes before it upgrades. Set up the MCP server →