summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/csvsimple/CHANGES.md
blob: 391db06d65da74ae39fb6b2a1e12ef299c721f7f (plain)
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
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
# Changelog
All notable changes to this project will be documented in this file.

The format is based on
[Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to
[Semantic Versioning](http://semver.org/spec/v2.0.0.html).

## [Unreleased]

### Added
### Changed
### Deprecated
### Removed
### Fixed
### Security


## [2.1.0] - 2021-07-06

### Added
- Support for (limited) data collection (issue #15)
- Support for package `tabularray` (part of issue #12)
- Option `after filter`
- Option `collect data`
- Option `data collection`
- Option `tabularray`
- Option `centered tabularray`
- `\csvdatacollection`
- `\csvexpval`
- `\csvexpnot`
- `\csvcollectn`
- `\csvcollectx`
- `\csvcollectV`

### Fixed
- Line Range was not resetted
- Wrong link and word inside documentation `csvsimple.pdf` (issue #13, issue #15)
- Several inconsistent local/global assignment errors



## [2.0.0] - 2021-06-29

### Added
- New documentation `csvsimple-l3.pdf` for the new LaTeX3 version
  (revised, adapted and extended from the old documentation)
- `\thecsvcolumncount`
- Option `autotabular*`
- Option `autobooktabular*`
- Option `autolongtable*`
- Option `autobooklongtable*`
- Option `filter bool`
- Option `filter fp`
- Option `range`
- `\csvautotabular*`
- `\csvautobooktabular*`
- `\csvautolongtable*`
- `\csvautobooklongtable*`
- `\csvfilterbool`
- `\ifcsvfirstrow`
- `\ifcsvoddrow`
- `\ifcsvfpcmp`
- `\ifcsvintcmp`
- `\csvsortingrule`

### Changed
- Complete re-implementation of the hitherto existing latex package
  as LaTeX3 package using the expl3 interface. From now on, three package
  files are provided:
  ** `csvsimple-legacy.sty`   identical to csvsimple until version 1.22  **
  ** `csvsimple-l3.sty`       LaTeX3 package of csvsimple                **
  ** `csvsimple.sty`          stub to select `l3` or `legacy` (default)  **
- The LaTeX2e version (`csvsimple-legacy`) will be maintained in its
  current state with no intended changes with exceptions of bug fixes.
- The LaTeX3 version (`csvsimple-l3`) is regarded to be the main package
  and may receive feature upgrades in the future
- Existing documents using csvsimple v1.22 need no change since loading
  `csvsimple` will load `csvsimple-legacy`.
- `cvsimple-l3` is a *nearly* drop-in replacement for `csvsimple-legacy`.
  Only very few things phased out and the user interface is quite identical.
  The most significant difference is that `l3keys` are used instead of `pgfkeys`
  which may need adaptions on user side (for examples, if .styles are used)
- New documents are encouraged to apply `cvsimple-l3` instead of `csvsimple-legacy`.
- For the complete package is valid: do not upgrade from version 1.22, if your
  TeX installation has no current LateX3/expl3 support a.k.a *is too old*
- `csvinputline` and `csvrow` are no longer LaTeX2e counters
- The hitherto existing documentation `csvsimple.pdf` is now `csvsimple-legacy.pdf`
- `csvsimple.pdf` documents the stub package and differences
  between `csvsimple-l3.sty` and `csvsimple-legacy.sty`
- `column count = 0` means automatic column number detection for CSV files without head
- Option `head` does not change option `check column count` anymore
- Changelog moved from CHANGES to CHANGES.md and adapted to
  [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
- From now on version numbers adhere to
  [Semantic Versioning](http://semver.org/spec/v2.0.0.html)

### Deprecated
- `\csviffirstrow`
- `\csvifoddrow`

### Removed
- `\csvheadset`
- Option `filter`
- Option `nofilter`
- Option `nohead`



## [1.22] - 2021-06-07

### Added
- Option `head to column names prefix` (issue #7)

### Changed
- Due to changes in the LaTeX kernel 2021-06-01, the empty line
  detection of csvsimple had to be adapted. Updating csvsimple is
  essential to avoid problems with kernel 2021-06-01. (issue #11)



## [1.21] - 2019-04-09

### Changed
- Package `pgfrcs` added as required package
- Introduction augmented with additional hints for first time users (issue #3)

### Fixed
- Spurious blank in sorting code removed



## [1.20] - 2016-07-01

### Added
- New string comparison macros:
- `\ifcsvstrequal`
- `\ifcsvprostrequal`
- `\ifcsvstrcmp`
- `\ifcsvnotstrcmp`
- New filter options:
- Option `filter ifthen`
- Option `filter test`
- Option `filter expr`
- Option `full filter`
- Option `filter strcmp`
- Option `filter not strcmp`

### Changed
- Implementation changed from `\roman` to `\romannumeral`
- `\write18` replaced by `\ShellEscape` from the shellesc package
- `\csvlinetotablerow` implemented more efficiently
- `\csvloop` made long
- Code optimizations
- Documentation revised



## [1.12] - 2014-07-14

### Added
- Option `csvsorter token`
- Documentation extended with siunitx examples

### Changed
- Success of CSV-Sorter call is checked (Note: Update to CSV-Sorter v0.94 or newer!)
- Encircling column entry braces removed for all entries for better siunitx compatibility
- Documentation revised

### Fixed
- CSV-Sorter call incompatibilities with the ngerman package (not babel)



## [1.11] - 2014-07-08

### Changed
- If a CSV file with an empty first line is found, csvsimple
  stops with an error message

### Fixed
- Sorting preprocessor overwrites the input data in some combinations



## [1.10] - 2014-07-07

### Added
- `\csvautobooktabular`
- `\csvautobooklongtable`
- External sorting specifically supported for the CSV-Sorter tool with the new options
- Option `csvsorter command`
- Option `csvsorter configpath`
- Option `csvsorter log`
- Option `sort by`
- Option `new sorting rule`
- New keys for respecting special characters:
- Option `respect tab`
- Option `respect percent`
- Option `respect sharp`
- Option `respect dollar`
- Option `respect and`
- Option `respect backslash`
- Option `respect underscore`
- Option `respect tilde`
- Option `respect circumflex`
- Option `respect leftbrace`
- Option `respect rightbrace`
- Option `respect all`
- Option `respect none`
- Option setting `separator = tab`

### Changed
- If a CSV file is not found, csvsimple stops with an error message instead of a warning

### Fixed
- Table head names in curly brackets were not recognized for some cases



## [1.07] - 2013-09-25

### Added
- Option `separator` to set the data value separator to
  `comma`, `semicolon`, or `pipe`

### Changed
- Internal macro `\TrimSpaces` renamed to avoid name clashed with `xparse`



## [1.06] - 2012-11-08

### Changed
- Implementation for line breaking changed from full macro expansion to
  token expansion. This allows quite arbitrary macro code inside the data.
  Note that this may be a breaking change if your application expects
  expanded column values.
- Option values added for `\csvautotabular` and `\csvautolongtable`



## [1.05] - 2012-03-12

### Added
- Source code of the documentation added
- Provision of the csvsimple.tds.zip file for easier installation
- Option `preprocessed file`
- Option `preprocessor`
- Option `no preprocessing`

### Changed
- Documentation language changed from German to English
- Option `nocheckcolumncount` renamed to `no check column count`
- Option `nofilter` renamed to `no check column count`
- Option `nocheckcolumncount` renamed to `no filter`
- Option `nohead` renamed to `no head`

### Deprecated
- Option `nofilter`
- Option `nohead`

### Removed
- Option `@table` removed from the documentation

### Fixed
- Error in `nocheckcolumncount` corrected and key renamed to 'no check column count'



## [1.04] - 2011-11-11

### Added
- Option `head to column names` (automatic column names)
- Option `no table`
- Column numbers can now be used for column macro definitions

### Changed
- Internal behaviour of `before reading` and `after reading`
  changed for tables

### Fixed
- documentation update and correction



## [1.03] - 2011-11-04

### Fixed
- Processing error for lines starting with '00' corrected



## [1.02] - 2011-04-04

### Added
- `\csvfilteraccept`
- `\csvfilterreject`
- Option `filter accept all`
- Option `filter reject all`

### Fixed
- Error in the documentation for longtable und tabbing corrected



## [1.01] - 2010-11-10

### Added
- Option `after first line`
- Option `late after first line`
- New example for key evaluation in the documentation

### Changed
- Documentation of some options clarified



## [1.00] - 2010-07-28

### Added
- Initial public release