summaryrefslogtreecommitdiff
path: root/doc/neps
diff options
context:
space:
mode:
Diffstat (limited to 'doc/neps')
-rw-r--r--doc/neps/npy-format.rst23
1 files changed, 20 insertions, 3 deletions
diff --git a/doc/neps/npy-format.rst b/doc/neps/npy-format.rst
index f7bb799f2..bf88c3fee 100644
--- a/doc/neps/npy-format.rst
+++ b/doc/neps/npy-format.rst
@@ -199,6 +199,21 @@ bytes of the array. Consumers can figure out the number of bytes
by multiplying the number of elements given by the shape (noting
that shape=() means there is 1 element) by dtype.itemsize.
+Format Specification: Version 1.0
+---------------------------------
+
+The version 1.0 format only allowed the array header to have a
+total size of 65535 bytes. This can be exceeded by structured
+arrays with a large number of columns. The version 2.0 format
+extends the header size to 4 GiB. `numpy.save` will automatically
+save in 2.0 format if the data requires it, else it will always use
+the more compatible 1.0 format.
+
+The description of the fourth element of the header therefore has
+become:
+
+ The next 4 bytes form a little-endian unsigned int: the length
+ of the header data HEADER_LEN.
Conventions
-----------
@@ -269,13 +284,15 @@ the file format.
Implementation
--------------
-The current implementation is included in the 1.0.5 release of numpy.
-
- http://github.com/numpy/numpy/blob/v1.5.0/numpy/lib/format.py
+The version 1.0 implementation was first included in the 1.0.5 release of
+numpy, and remains available. The version 2.0 implementation was first
+included in the 1.9.0 release of numpy.
Specifically, the file format.py in this directory implements the
format as described here.
+ http://github.com/numpy/numpy/blob/master/numpy/lib/format.py
+
References
----------