File: RELEASE_NOTES.rst

package info (click to toggle)
python-mrcz 0.5.9-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 520 kB
  • sloc: python: 2,484; makefile: 5; sh: 1
file content (191 lines) | stat: -rw-r--r-- 6,204 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
0.5.9
-----
* Did not properly specify how to find source files so 0.5.8 wheel was broken.
  (In my defense I've used `src\<package>` builds for almost five years now.)

0.5.8
-----
* Suppress warnings about SyntaxError: invalid escape sequences.
* Switch to using `pyproject.toml` over `setup.py`.

0.5.7
-----
* Renamed `np.product` to `np.prod` as the old name is deprecated in NumPy 2.0.

0.5.6
-----
* In 0.5.5 a for-loop was omitted which lead to every frame being the zeroth 
  frame in the stack. For this reason, upgrading from 0.5.5 is _strongly_ 
  recommended.

0.5.5
-----
* Meta-data with keys that match those used in the header could accidently 
  overwrite critical values, such as 'dimensions'. Any keys in the JSON 
  meta-dictionary that overlap with the standard values are now ignored.
* Integration tests are now performed for Python 3.8.

0.5.4
-----
* Added support for serialization of Python Enum objects in JSON serialization 
  of meta-data.

0.5.3
-----
* Ricardo Righetto added the means to append frames to a stack.
* Support for Python 3.4 was dropped as it is past end-of-life by Python.org.

0.5.2
-----
* Improved on serialization of non-standard (i.e. NumPy) types in JSON-ized 
  meta-data by making use of the `default` callable in `json.dumps`. In particular
  deeply nested NumPy types should now serialize without erroring. Note that 
  there is no support for complex numbers in JSON meta-data, as JSON itself 
  does not support it by default.

0.5.1
-----
* Versions of MRCZ <= 0.4.1 were improperly writing the dimensions into the 
  (Mx, My, Mz) volume fields. Added a check for the MRCZ version tag, and if 
  an older file is found, it defaults to ``slices == 1``, i.e. one 2D frame 
  per element in the returned list.
  - In order to suppress the warning message, files can be read into memory and 
    re-saved. A utility script for batch processing is provided in 
    ``utils\update_mrcz_0.5.0.py``.

0.5.0
-----
* Added support for lists of 3D `numpy.ndarray` objects. This is largely intended 
  to support multi-channel STEM time series. Stores the number of channels per 
  frame in the `MZ` value of the MRC2014 header, which must be uniform for 
  every ndarray in the list. Any MRCZ archive that has a 'strides' key in the 
  JSON metadata will be returned as a list of arrays. 
  - See http://www.ccpem.ac.uk/mrc_format/mrc2014.php for header details
  - `asList` keyword arguments have been removed.
* Fixed a bug in casting from float64/complex128 that was not actually casting.
* Cleaned up the code to be more PEP8 compliant.

0.4.1
-----
* Improved docstrings in `ioDM4.py`.
* Added `asyncReadDM4` function, analogous to `asyncReadMRC`.

0.4.0
-----
* Fix a minor bug with casting for lists of arrays
* Improved uncompressed write times by not using list comphrension
* Add scaling block size for small format images (e.g. Medipix) to scale to 
  the number of threads.
* If the passed arrays are C_CONTIGUOUS and ALIGNED, `writeMRC` will use 
  `blosc.compress_ptr` instead of coverting the array to a `bytes` object 
  which is a significant speedup.

0.3.8
-----
* Auto-casts `np.float64` -> `np.float32` and `np.complex128` -> `np.complex64` 
  but logs a warning to the user.

0.3.7
-----
* Updated MANIFEST.in and `setup.py` to make Conda-forge happy.

0.3.6
-----

* `mrcz.ReliablePy` must be imported explicitely now, as it has requirements 
  that the base `mrcz` package does not. This file may be removed in the 
  future if no users are using it.

0.3.5
-----

* If ``blosc`` is not installed and the user attempts to operate with compression 
  on an ``ImportError`` is raised.
* Documentation now using Numpy docstrings.

0.3.4
-----

* Add (temporarily) MRC types for `uint32` and `int32` to support 24-bit detectors.
  May break in the future, as the CCP-EM committee should make the final decision
  on such enumerations.
* Added handling of NumPy scalars (i.e. `np.float32(1.0)`) in metadata so that 
  JSON serialization does not generate errors. Values will be case to Python 
  `int` or `float` as appropriate.

0.3.3
-----

* Removed use of star-expansion of args as it breaks Python 2.7/3.4.

0.3.2
-----

* Made `blosc` an optional dependency due to difficulties involved in building
  wheels for PyPi.
* Implemented reading/writing of `list` of equally-shaped 2D `ndarray`s instead of 
  a single 3D `ndarray`, where the `list` represents the Z-axis. This approach 
  can be helpful for larger arrays that do not have to be continuous as the 
  operating system can more easily interleave them into memory.

0.3.1
-----

* Added ascii identifier label 'MRCZ' + <__version__> to the labels.  I.e. at 
  byte 224 in the header will appear b'MRCZ0.3.1'

0.3.0
-----

* Documentation now available at http://python-mrcz.readthedocs.io/
* Added continuous integration testing with Appveyor and TravisCI, which was 
  previously handled by `c-mrcz`.
* Added handling for `dask.array.core.Array` objects.
* `numpy.ndarrays` inside `meta` dictionaries will be converted to `list` 
  objects to facilitate serialization.
* Updated license to BSD-3-clause from BSD-2-clause.
* Various bug fixes.

0.2.1-4
-------

* Various bug fixes to incorporate into Hyperspy.

0.2.0
-----

* Added support for asynchronous reading and writing.

0.1.4a1
-------

* Fixed a bug with the machine-stamp not being converted to bytes properly.

0.1.4a0
-------

* Fixed a bug in import of mrcz from ReliablePy

0.1.3a2
-------

* Added ReliablePy, an interface for Relion .star and Frealign .par files.
* Fixes to maintain cross-compatibility with `c-mrcz`.  Main functions are
  readMRC and writeMRC.  readMRC always returns a header now.
* Added mrcz_test suite, which also tests `c-mrcz` if it's found in the path.
* Fixed bugs related to `mrcz_test.py`


0.1.1a1
-------

* Renamed 'cLevel' to 'clevel' to maintain consistency with `blosc` naming 
  convention.
* Updated license from MIT to BSD 2-clause.

0.1.0dev0
---------

Initial commit