-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathChangeLog
299 lines (156 loc) · 8.37 KB
/
ChangeLog
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
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
=======================
svgdigitizer Change Log
=======================
.. current developments
v0.12.5
====================
**Fixed:**
* Fixed uploading wheel.
v0.12.4
====================
**Added:**
* Added wheel upload on new release.
v0.12.3
====================
**Added:**
* Added tests for validating output datapackages against echemdb's svgdigitizer Data Package schema.
**Removed:**
* Removed key `data description` from output Data Package, since the information is included in the key `figure description`.
v0.12.2
====================
**Added:**
* Added testing with Python 3.13.
v0.12.1
====================
**Fixed:**
* Fixed dependency issue, by re-including `scipy` and `svg.path` (see [feedstock issue](https://github.com/conda-forge/svgdigitizer-feedstock/pull/21)).
* Fixed breaking tests on GitHub (tests should be more stable now since we switched to pixi for locked versions of dependencies.)
v0.12.0
====================
**Added:**
* Added testing with Python 3.12.
**Changed:**
* Use pyproject.toml to manage installation.
**Removed:**
* Removed unnecessary dependencies (`svg.path` and `scipy`).
**Fixed:**
* Fixed automated testing on GitHub with macOS.
v0.11.0
====================
**Added:**
* Improved the documentation with a large number of usage examples for the CLI, API and SVG annotation.
**Fixed:**
* Upgraded dependency on vulnerable version of pillow, see https://github.com/advisories/GHSA-j7hp-h8jx-5ppr. This possibly leads to an incompatibilities of `svgdigitizer` with Macos.
v0.10.0
====================
**Added:**
* Added CLI command `svgdigitzer figure` which allows creating a datapackage from a figure with units on the axis.
**Changed:**
* Changed structure of the output frictionless datapackage. The metadata are now included as custom key in the resource instead of being a top level key. Moved the "bibliography" key from top level to `metadata.source`.
**Removed:**
* Removed flag `--package` from the CLI and create datapackages by default.
v0.9.1
====================
**Added:**
* Digitizing with flag `--bibliography` creates a "bibliography key, which is an empty string when no citation key is given in `metadata["source"]["citation key"]` or no BIB file with the given citation key is available.
v0.9.0
====================
**Added:**
* Added flag `--citation` to the click command `cv`, which includes the content of a BIB file as bibtex string in a descriptor in the datapackage. The name to the BIB file must be provided in the metadata in `metadata['source']['bib']`.
v0.8.0
====================
**Added:**
* Added module `svgdigitizer.svgfigure.SVGFigure` to digitize custom figures (which are not CVs.)
* Added assertions to `svgdigitizer.electrochemistry.cv.CV`, such that only E or U (I or j) labels are allowed on the x-axis (y-axis).
* Added `scan_rate_labels` to `svgdigitizer.svgfigure`, returning the labels in the SVG with a scan rate.
* Added possibility to reconstruct a time axis, when a scan rate is provided in the plot, who's units match those of the x-axis.
* Added keyword `measurement_type` to `svgdigitizer.svgfigure.SVGFigure`, which will be added to the metadata.
* Added keyword `force_si_units` to `svgdigitizer.svgfigure.SVGFigure`, which allows transformation of a figure with units into SI units.
* Added flag `--si-units` to the `cv` command in the command line interface.
**Changed:**
* Changed `svgdigitizer.svgplot.SVGplot.schema` to `svgdigitizer.svgplot.SVGplot.figure_schema`.
**Removed:**
* Removed the following methods and properties from `svgdigitizer.electrochemistry.cv.CV` which were also not transferred to `svgdigitizer.svgfigure.SVGFigure`: `voltage_dimension`, `current_dimension`, `_add_voltage_axis`, and `_add_current_axis`.
**Fixed:**
* Fixed detection of `simultaneous measurement` in `electrochemistry.cv.CV`.
v0.7.0
====================
**Added:**
* Added custom exception classes to be more specific when errors are found in the input. Also fixes linter warnings with `pylint`>2.16.
**Changed:**
* Upgraded to frictionless 5.5.
* Changed formatting of JSON metadata files. A newline is now added automatically at the end of the file.
* Changed output format of JSON (datapackages) to produce indented JSON.
**Removed:**
* Removed `__main__.py` as the entrypoint. As a result, `python -m svgdigitizer` does not invoke the digitizer anymore. The digitizer can still be invoked with `svgdigitizer` once installed.
**Fixed:**
* Fixed detection of `simultaneous measurement` in `electrochemistry.cv.CV`.
* Fixed the alphabetical order of the dependencies in the environment.yml.
* Fixed doctesting of the command line interface, by moving the content from `__main__.py` to `entrypoint.py`.
* Fixed handling of unicode characters when writing JSON files. Unicode characters are now written as UTF-8 characters without escaping.
v0.6.1
====================
**Fixed:**
* Fixed garbage collection of instances with cached properties.
* Fixed an incompatibility of frictionless & click. (#152)
* Declared dependency on Python 3.9 when installing from PyPI (we use functools.cache which is not available before.)
* Restored changelog template.
* Fixed `svgplot.scaling_factors` such that scaling factors are now determined for any kind of axis dimension (so far only for axis labeled `x` or `y`).
* Fixed broken links in the documentation.
* Fixed Github workflow files.
* Fixed doctests according to module updates.
v0.6.0
====================
**Added:**
* Added a short documentation to the package svgdigitizer with some very basic usage examples with the CLI and API.
* Added Python version 3.9 as a requirement to setup.py and environment.yaml.
**Removed:**
* Removed class method `svgdigitizer.electrochemistry.cv.CV.get_axis_unit`.
v0.5.0
====================
**Added:**
* Added a property `schema` to `svgplot.SVGPlot`, describing the data extracted from the plot.
* Added a property `figure_schema`to `electrochemistry.cv.CV`, containing the original figure axis properties.
* Added a property `data_schema`to `electrochemistry.cv.CV`, containing the axis properties of the property `electrochemistry.cv.CV.df`.
* Added `voltage_dimension` and `current_dimension` to `electrochemistry.cv.CV`, providing the dimension of the voltage and the current.
**Changed:**
* Changed `electrochemistry.cv.CV` such that it only accepts SVGs where the labels on one axis are either `U` or `E` (V, mV, ...) and another axis are `I` (A, mA, ...) or `j` (A / cm2, uA / m2, ...).
* Changed `rate` to `scan_rate` in `electrochemistry.cv.CV`.
**Removed:**
* Removed `axis_properties` and `x_label` from `electrochemistry.cv.CV`.
v0.4.0
====================
**Added:**
* Added property `CV.tags`, `CV.figure_label`, and `CV.curve_label` which are extracted from `<text>` elements in the SVG. The extracted values are stored in `CV.metadata`.
* Added installation instructions.
* Added automatic symbol and orientation detection of axes.
**Changed:**
* Changed entry `axes` in `figure description` and `data description` to `field` according to `Frictionless Table Schema <https://specs.frictionlessdata.io/table-schema>`_.
* Replaced module `datapackage` with `frictionless`.
**Removed:**
* Removed `data description` in datapackage created with `digitize_cv`.
**Fixed:**
* Fixed data package creation in `__main__.digitize_cv`, where `data_description` was removed instead of `data_description.fields`.
v0.3.0
====================
**Added:**
* Added flag `--skewed` in the CLI to the commands `digitze` and `cv` to enable digitization of skewed plots (non-orthogonal axes).
* Added "Edit on GitHub" links to documentation.
**Fixed:**
* Fixed version number in title of generated documentation.
* Upgraded dependency on vulnerable version of pillow, see https://github.com/advisories/GHSA-8vj2-vxx3-667w.
v0.2.0
====================
**Added:**
* Added the property `svgdigitizer.electrochemistry.cv.CV.simultaneous_measurement` which is read from a text field in the SVG file.
**Changed:**
* Changed the property `svgdigitizer.electrochemistry.cv.CV.metadata`. It now includes 'data description' which contains the units to the values in the dataframe.
* Changed the dimension on the x-axis of CVs from `U` to `E` (potential).
v0.1.2
====================
**Fixed:**
* Fixed version number in `setup.py` and thus on PyPI when releasing.
v0.1.1
====================
**Fixed:**
* Fixed description in `setup.py` to be compatible with PyPI.