ChangeLog 40.9 KB
Newer Older
1
2013-03-14  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
Uwe Schulzweida's avatar
Uwe Schulzweida committed
2 3

	* Version 1.6.0 released
4 5
	* using CGRIBEX library version 1.6.0

6 7 8
2013-03-12  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* stream_gribapi: changed units for level type GRIB2_LTYPE_LANDDEPTH to m (internally mm) [Bug #3287]
9
	* gribapiGetGrid: get gridDescriptionFile with grib_get_string() instead of grib_get_bytes() (bug fix)
10

11 12
2013-03-11  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

13
	* stream_gribapi: added support for local table shortName.def (Bug #3343)
14

15 16 17 18
2013-03-08  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* vtime2timeval: check validity of month

19 20
2013-03-07  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

21
	* cdfDefGrid: bug fix for generic grids with nx or ny > 0
22
	* netCDF: ignore the attribute valid_min/valid_max, if the data type is inconsistent
23 24 25 26

2013-02-18  Florian Prill  <Florian.Prill@dwd.de>

	* Added function vlistDefVarIntKey() and vlistDefVarDblKey() to set GRIB_API Key/Value pairs
Uwe Schulzweida's avatar
Uwe Schulzweida committed
27

28 29 30 31
2013-02-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cgribexGetTsteptype: changed default to TSTEP_INSTANT [Bug #3211]

32 33
2013-02-04  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

34
	* netCDF: ignore the attribute valid_range, if the data type is inconsistent
35 36
	* netCDF: added env IGNORE_VALID_RANGE to ignore the attribute valid_range

37 38
2013-01-31  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

39
	* stream_cgribex::cgribexGetGrid: add 360 to lastLon, if lastlon <firstLon [Bug #3189]
40

41 42 43 44
2013-01-08  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* netCDF: check position of time dimension

Uwe Schulzweida's avatar
Uwe Schulzweida committed
45 46 47 48
2013-01-15  Thomas Jahns  <jahns@dkrz.de>

	* make_fint.c: added regexec support

49 50 51 52
2013-01-08  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* global netCDF attribute "source" missing (bug fix)

53 54 55 56
2012-12-18  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* reshGetValue: added caller function name to error message

Uwe Schulzweida's avatar
Uwe Schulzweida committed
57
2012-12-17  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
58 59

	* Version 1.5.9 released
Uwe Schulzweida's avatar
Uwe Schulzweida committed
60
        * using CGRIBEX library version 1.5.6
61

62 63 64 65 66
2012-12-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* removed unused function streamDefineTaxis()
	* fix warning in streamDefTimestep() for stream with constant fields only

67 68
2012-12-11  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

69
	* added cdfGridCompress() to compress coordinates
70 71
	* added vlistDefVarChunkType() and vlistInqVarChunkType()

72 73 74 75
2012-12-03  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* vlistCopyFlag: added support for level bounds

76 77 78 79
2012-11-26  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* netCDF: added support for time axis name and long_name

80 81 82 83
2012-11-17  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* stream_cdf::define_all_vars: added txt attributes to vlistDefAttTxt() without trailing 0 [Bug #3004]

84 85 86 87
2012-11-16  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* file.c: added support for unbuffered write

88 89
2012-11-15  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

90
	* cdfReadVarSliceDP: store DATATYPE_FLT32 in a float array and	convert it to double (speedup 2x)
91 92
	* cdfInqTimestep: added check for timevalue = NC_FILL_DOUBLE

93 94 95 96
2012-11-14  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* app/cdi: added optional compression level -z zip[_1-9]

97 98 99 100
2012-11-09  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* file.c::file_initialize: added support for env GRIB_API_IO_BUFFER_SIZE [request: Florian Prill]

101 102 103 104 105
2012-11-07  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* gridGenXvals/gridGenYvals: removed changes from 1.5.8 (bug fix)
	* cgribexGetGrid: bug fix for xinc/yinc recomputation

106 107
2012-11-05  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

Uwe Schulzweida's avatar
Uwe Schulzweida committed
108
	* grib2: correct endStep if timeunits is not equal stepUnits (bug fix)
109 110
	* cgribexGetGrid: bug fix for yinc for odd ysize

111
2012-10-30  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
112 113 114 115

	* Version 1.5.8 released
	* using CGRIBEX library version 1.5.5

116 117 118
2012-10-29  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* stream_cgribex.c: do not check fraction of xinc/yinc" stream_cgribex.c
Uwe Schulzweida's avatar
Uwe Schulzweida committed
119
	* gridGenXvals/gridGenYvals: recheck xinc/yinc if (first+(size-1)*inc) > last
120

121 122 123 124
2012-10-26  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* stream_gribapi.c::gribapiScanTimestep: changed GRIBAPI_MISSVAL to cdiDefaultMissval

125 126 127 128
2012-10-18  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* vlistCopyFlag: copy ensdata (bug fix) [report: Jaison Ambadan]

129 130
2012-10-16  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

Uwe Schulzweida's avatar
Uwe Schulzweida committed
131
	* grib2: changed packingType from grid_jpeg to grid_simple if nmiss > 0 (bug fix)
132 133 134

2012-10-18  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

135
	* grib2: added stepType support for absolute time axis
136

137 138 139 140
2012-10-15  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* pio.h remove line 'typedef int MPI_Comm;' [Bug #2882]

141 142 143 144
2012-09-21  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* vlistInqZaxis: use zaxisGetIndexList() to get global zaxisIDs (bug fix)

145 146
2012-09-20  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

147 148 149 150
	* listSizeExtend: init ops, val and status

2012-09-20  Thomas Jahns <jahns@dkrz.de>

151 152
	* listInitialize: set mutex type to PTHREAD_MUTEX_RECURSIVE

153
2012-09-11  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
154

Uwe Schulzweida's avatar
Uwe Schulzweida committed
155
	* cdfInqContents: make ncid local to varid
156
	* cdfInqContents: group reading of global attribute to read_global_attributtes()
157
	* cdfInqContents: set ntsteps to 0 if no data variable found
Uwe Schulzweida's avatar
Uwe Schulzweida committed
158
	* netCDF: set 1D arrays to coordinate variables if axis attribute is available
159

160 161 162 163
2012-09-10  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* unreduced: compute nlon and nvalues from rowlon[] (bug fix)

164 165 166 167
2012-09-05  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cgribexEncode: initialize the first 256 entries of isec1 to zero

168 169 170 171
2012-08-30  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* app/cdi: changed output format of option -s (sinfo)

Uwe Schulzweida's avatar
Uwe Schulzweida committed
172
2012-08-27  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
173 174

	* Version 1.5.7 released
175 176
	* model.c::modelInq*: check instID != UNDEFID (buf fix)
	* institution.c::insitutInq*: check instID != UNDEFID (buf fix)
177
	* Merge of branch cdo-pio into trunk cdi
Uwe Schulzweida's avatar
Uwe Schulzweida committed
178
	* using CGRIBEX library version 1.5.4
179 180
	* using EXSE library version 1.3.1

Uwe Schulzweida's avatar
Uwe Schulzweida committed
181
2012-07-23  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
Uwe Schulzweida's avatar
Uwe Schulzweida committed
182 183 184 185

	* Version 1.5.6 released
	* using CGRIBEX library version 1.5.3

186 187
2012-07-17  Modali Kameswarrao  <modali.kameswarrao@zmaw.de>

Uwe Schulzweida's avatar
Uwe Schulzweida committed
188
	* added vlistDefVarEnsemble() for GRIB1 and netCDF
189

190 191
2012-07-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

192
	* added call to cdiInitialize() in all streamOpen functions (bug fix)
193 194
	* added support for environment variable NC_CHUNKSIZEHINT [Feature #2142]

195 196 197 198
2012-07-04  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* grib scan timestep: changed Error() to Warning() for inconsistent timesteps

199 200
2012-07-04  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

201
	* stream_cdf::define_all_grids: modify check for same x and y varids
202 203
	* cdfInqContents: set all undefined 1D variables to data variables [request: Florian Prill]

204 205
2012-06-20  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

206
	* cdf_write_var_data: bug fix for unscaled uint8, int8, int16, int32 (bug introduced in 1.5.5)
207

208 209 210 211
2012-06-18  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* grib_api: use key significanceOfReferenceTime only for GRIB2

212 213 214
2012-06-06  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added support for grib_api key stepType  [request: Drte Liermann]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
215 216
	* changed TIME_CONSTANT and TIME_VARIABLE to TSTEP_CONSTANT and TSTEP_XXX
	* renamed vlistInqVarTime() vlistInqVarTsteptype()
217

218 219
2012-06-01  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

Uwe Schulzweida's avatar
Uwe Schulzweida committed
220
	* stream_gribapi: added support for level type HYBRID_HALF	[request: Drte Liermann]
221

222 223 224 225
2012-05-18  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* stream_cdf::cdfDefUnstructured: fixed memory bug [ICON - Bug #2398]

Uwe Schulzweida's avatar
Uwe Schulzweida committed
226
2012-05-15  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
227 228 229 230

	* Version 1.5.5 released
	* using CGRIBEX library version 1.5.2

231 232 233 234
2012-05-02 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cdi.h: added vlistDefVarTime() [request: Florian Prill]

235 236 237 238 239 240 241 242
2012-05-02 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* stream_gribapi: bug fix for validation date and time

2012-04-27 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* stream_cdf::define_all_grids: changed scale_add() parameter from x to y (bug fix)

243 244
2012-04-26 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

245
	* added support for ZAXIS_DEPTH_BELOW_LAND units "mm",  "cm", "dm" and "m"
246

247 248
2012-03-24 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

249
	* added single precision support: streamWriteVarF, streamWriteVarSliceF
250

251 252 253 254
2012-02-15 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* stream_cdf::cdfDefDatatype: bug fix for DATATYPE_UINT8

255 256 257 258
2012-02-02 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* stream_cdf::cdfDefCurvilinear: bug fix for CLM s,u,v grids [report: Hans-Jrgen Panitz]

259
2012-01-30 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
260

261 262
	* Version 1.5.4 released

263
2011-12-27 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
264

265
	* added support for GRIB2 packing type grid_ieee
266

Uwe Schulzweida's avatar
Uwe Schulzweida committed
267 268 269 270
2011-12-19 Luis Kornblueh  <Luis.Kornblueh@zmaw.de>

	* added suppport for GRIB2 level type 150

271 272 273 274
2011-12-13 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* verify_coordinate_vars: bug fix in check for units = "1" [report: Katharina Six]

275 276 277 278
2011-11-11 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added support for netCDF attributes scale_factor and add_offset for lon/lat coordinates

279 280 281 282 283
2012-01-06  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added support for GRIB gaussian grid parameter NumPar on non global grids [Bug #1711]
	* added interface functions gridDefNP/gridInqNP (number of parallels between a pole and the equator)

284 285 286 287
2011-11-04 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added support for GRIB1_LTYPE_SIGMA_LAYER

288 289 290 291
2011-11-01 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added support for netcdf attribute valid_min/valid_max [request: Etienne Tourigny]

292 293 294 295
2011-10-27 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cdilib.c::defineAttributes: bug fix atttxt [report: Florian Prill]

296 297 298 299
2011-10-25 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added support for netcdf attribute valid_range [request: Etienne Tourigny]

Uwe Schulzweida's avatar
Uwe Schulzweida committed
300 301 302
2011-10-17  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* Version 1.5.3 released
303
	* using CGRIBEX library version 1.5.1
Uwe Schulzweida's avatar
Uwe Schulzweida committed
304

305 306 307
2011-10-11  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

       * zaxisCompare: set epsilon from 0 to 1e-9 [request: Felicia Brisc]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
308

309 310
2011-10-06  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

311
	* added level type ZAXIS_TOA, ZAXIS_SEA_BOTTOM, ZAXIS_ATMOSPHERE [request: Drte Liermann]
312

313 314 315
2011-10-05  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* stream_cdf::cdfInqContents: check units of hybrid levels
316
	* varAddRecord: used max number of bit_per_value for 3D GRIB data
317
	* gribapiDefGrid: added parameter jScansPositively [report: Juan Jose Tasso]
318

319 320 321 322
2011-10-02  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* deflate compression with netCDF4 doesn't work (bug fix) [report: Geert Jan van Oldenborgh]

323 324 325 326
2011-09-21  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* correct netCDF dimension order of unstructured grids (bug fix) [report: Ralf Mueller]

Uwe Schulzweida's avatar
Uwe Schulzweida committed
327 328 329 330
2011-08-22 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* Version 1.5.2 released

331 332 333 334
2011-08-15  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* streamFilesuffix: added suffix for filetype NC4C (bug fix)

335 336 337 338
2011-08-06  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* scanVarAttributes: check size of axis attribute (bug fix) [report: David Huard]

339 340 341 342
2011-07-29  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* Added flexible XYZ dimension ordering for netCDF [request: Andy Aschwanden]

343 344 345 346
2011-07-28  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added interface function vlistDefVarXYZ to set the dimension order

347 348 349 350
2011-07-23  Pier Giuseppe Fogli  <piergiuseppe.fogli@cmcc.it>

	* added interface function zaxisInqVct to read the VCT

351 352 353 354
2011-07-23  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* netcdf input: correct wrong formatted time units [request: Harald Anlauf]

355 356 357
2011-07-14  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* netcdf: added support for GRID_FOURIER (fourier coefficients)
358

Uwe Schulzweida's avatar
Uwe Schulzweida committed
359 360 361 362
2011-07-12  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* Version 1.5.1 released

363 364 365 366
2011-07-07  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* vlistCopy: allocate and copy varsAllocated elements (bug fix) [report: Ralf Mueller]

367 368 369 370
2011-06-24  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* vtime2timeval: do not round result (bug fix for TUNIT_YEAR) [report: Andy Aschwanden]

371 372 373
2011-06-01  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* CDI: changed compression type from Ztype to CompType
374
	* CDI: changed compression level from Zlevel to CompLevel [report: Thomas Jahns]
375

376
2011-05-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
377 378

	* gridGenYvals: changed delta eps to 0.002 for gaussian grids [report: John Lillibridge] 
379
	* ruby/python interface: changed GRID_CELL to GRID_UNSTRUCTURED [report: Tim Cera]
380

381 382 383 384
2011-05-12  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* grid::compareXYvals: bug fix for generic grids [report: Felicia Brisc]

385 386
2011-04-28  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

387 388 389
	* Added attribute standard_name to netCDF time var [request: Karin Meier-Fleischer]
	* Added attribute standard_name to netCDF zaxes [request: Karin Meier-Fleischer]
	* Added attribute positive to netCDF zaxes [request: Karin Meier-Fleischer]
390

391 392
2011-04-27  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

393
	* Added support for FILETYPE_NC4C (netcdf4 classic)
394 395
	* netcdf: Skiped time dependent variables if number of time steps is zero

Uwe Schulzweida's avatar
Uwe Schulzweida committed
396
2011-03-15  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
Uwe Schulzweida's avatar
Uwe Schulzweida committed
397 398 399 400

	* using CGRIBEX library version 1.5.0
	* Version 1.5.0 released

401 402 403 404
2011-03-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* stream_cdf: added support for GRIB2 parameter identifier

Uwe Schulzweida's avatar
Uwe Schulzweida committed
405 406 407 408
2011-03-08  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* Version 1.4.8 released

409 410
2011-02-06  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

411
	* vlistDestroy: fix memory leak
412

413 414 415
2011-01-25  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added netCDF support for level bounds
416

417 418
2011-01-21  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

419
	* added grid type GRID_REFERENCE
420
	* changed grid name GRID_CELL to GRID_UNSTRUCTURED
421

422 423 424
2011-01-19  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added support to encode/decode GRIB1 with GRIB_API
425

Uwe Schulzweida's avatar
Uwe Schulzweida committed
426 427 428 429 430
2011-01-03  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* using CGRIBEX library version 1.4.7
	* Version 1.4.7 released

431 432
2010-11-09  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

Uwe Schulzweida's avatar
Uwe Schulzweida committed
433
	* improved support for netCDF output from WRF model
434

435 436
2010-10-28  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

437
	* cdfDefZaxis: changed hybrid level type from int to float
438 439
	* taxisCopyTimestep: added mutex_lock
	
440 441 442 443
2010-10-26  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cgribexAddRecord: correct xinc/yinc if necessary [report: Anders Ullerstig]
	
444 445 446 447
2010-10-12  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

        * cdfDefVCT: remove var mlev and ilev (bug fix) [report: Torsten Weber]

448 449
2010-10-05  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

450 451
	* cdfOpenFile: create netCDF4 files without NC_CLASSIC_MODEL
	* cdfOpenFile: switch off checking of netCDF4 format (read)
452
	
453 454 455 456
2010-09-27  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

        * cdfDefTime: bug fix for time units 3HOURS, 6HOURS, 12HOURS
	
Uwe Schulzweida's avatar
Uwe Schulzweida committed
457
2010-09-17  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
Uwe Schulzweida's avatar
Uwe Schulzweida committed
458 459 460 461 462 463

	* using CGRIBEX library version 1.4.6
	* Version 1.4.6 released

2010-09-09  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

464
	* GRIB1: use packing only for non constant fields [request: Luis Kornblueh]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
465 466
	* varDefZtype: bug fix [report: Stephanie Legutke]
	
467 468 469
2010-09-07  Ralf Mueller <ralf.mueller@zmaw.de>

	* use libtool 2.2.10 for compiling + linking
Ralf Mueller's avatar
Ralf Mueller committed
470 471
	* create shared + static library with PIC support by default
	  (positions independant code)
472 473
	* build CDI configuration file: cdi.settings

474 475 476 477
2010-09-03  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* check axis attribute (bug fix) [report: Cui Chen]
	
478 479 480 481
2010-08-26  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* vlistCopyFlag: copy zaxis meta data
	
Uwe Schulzweida's avatar
Uwe Schulzweida committed
482 483 484 485 486 487 488 489
2010-08-25  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* Added support for attribute type int16 and float32 [Request: Don Murray]
	
2010-08-24  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
	
	* Version 1.4.5.2 released [request: Luis Kornblueh]

Uwe Schulzweida's avatar
Uwe Schulzweida committed
490 491 492 493
2010-08-02  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added grid mask support
	
494 495 496 497
2010-07-26  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added ECHAM6 GRIB1 code table

498 499 500 501
2010-07-23  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cdfInqContents: fixed out of bounds access to attstring [report: Heiner Widmann]
	
502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518
2010-07-05  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cdfInqContents: fix problem of wrong stdname for grid description [report: Michael Boettinger]
	* Version 1.4.5.1 released

2010-07-05 Edi Kirk <E.Kirk@gmx.de>

	* GRIB1 decode: Correct ZeroShiftError of simple packed spherical harmonics

2010-07-01  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cdfInqContents: use complex packing for spectral data [report: Edi Kirk]

2010-06-30  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* using CGRIBEX library version 1.4.5.1 (szip bug fix for 24 bit data)

519
2010-06-16  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
520 521 522 523

	* using CGRIBEX library version 1.4.5
	* Version 1.4.5 released

524 525 526 527
2010-05-16  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* stream_history: added NC4 support [report: Etienne Tourigny]
	
528 529 530 531
2010-05-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cdfDefXYaxis: check also dimnames (bug fix) [report: Mikhail Itkin]
	
532 533 534 535
2010-05-12  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* stream_cdf: added support for uppercase attributes [request: Patrick Brockmann]
	
536 537 538 539
2010-05-07  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* gridGenYvals: bug fix for nlat > 4096 [report: Thomas Bergmann]

Uwe Schulzweida's avatar
Uwe Schulzweida committed
540 541 542 543
2010-04-29  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* Version 1.4.4 released

Uwe Schulzweida's avatar
Uwe Schulzweida committed
544 545 546 547
2010-04-24  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* gaussgrid: define M_SQRT2 [report: alastair.mckinstry@ichec.ie]

548 549
2010-04-16  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

Uwe Schulzweida's avatar
Uwe Schulzweida committed
550 551 552
	* MAX_STREAMS: changed fixed size of 4096 to dynamic range of 1024 - 65536
	* MAX_VLISTS:  changed fixed size of 4096 to dynamic range of 1024 - 65536
	* MAX_TAXES:   changed fixed size of 4096 to dynamic range of 1024 - 65536
553
	
554 555 556 557
2010-04-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cgribexDefTime: bug fix for GRIB time range 10
	
558 559
2010-04-09  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

Uwe Schulzweida's avatar
Uwe Schulzweida committed
560
	* added support for GRIB time units 3hours and 6hours [request: Jaison-Thomas Ambadan]
561
	
562 563 564 565
2010-04-01  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* vlistMerge: added support to merge levels

566 567
2010-03-31  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

568
        * cgribexDefTime: bug fix for timerange=3 [report: Veronika Gayler]
569 570
	* using CGRIBEX library version 1.4.4

571 572 573 574
2010-03-30  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* vlistCat: correct temporary parameter numbers

575 576 577 578
2010-03-19  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added support for non integer time units MONTH

579 580 581 582
2010-03-12  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* gauaw: bug fix for allocation of zfnlat for odd number of nlat

583 584 585 586
2010-03-04  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cdfDefGrid: check whether the variable or dimension name already exist
	
587 588
2010-02-27  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

589
        * grid.c: replace for loops by memcpy (speed up)
590

591 592 593 594
2010-02-25  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* implementation of gridDestroy
	
595 596 597 598
2010-02-22  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* Version 1.4.3 released

599 600
2010-02-18  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

601
	* grib1: bug fix for description of gaussian reduced grids [report: Klaus Wyser]
602

603 604 605 606
2010-02-16  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* gauaw: new code to calculate gaussian grid [Luis Kornblueh]
	
607 608
2010-02-15  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

609
	* rotated grids: correct standard name [report: Michael Boettinger]
610 611
	* cgribexDefTime: bug fix for timerange = -1

612 613
2010-02-10  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

614
	* added support for encoding of complex packed spectral data in GRIB1
615

616 617 618 619
2010-02-09  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added function gridInqComplexPacking/gridDefComplexPacking

Uwe Schulzweida's avatar
Uwe Schulzweida committed
620 621 622 623
2010-02-08  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* Version 1.4.2 released

624 625
2010-01-25  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

626
	* added support for timerange 1,2,3,4,5 (GRIB1)
627

628 629 630 631
2010-01-14  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cdfDefVar: define add_offset and scale_factor always together
	
632
2010-01-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
633

634 635 636
	* added optional sorting of parameters

2010-01-13  Oliver Fuhrer <oliver.fuhrer@meteoswiss.ch>
637 638 639 640

	* added support for cosmo GRIB parameter tables
	* added missing value support for cosmo GRIB files

641 642 643 644
2010-01-07  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* using CGRIBEX library version 1.4.2 (large record support)
	
Uwe Schulzweida's avatar
Uwe Schulzweida committed
645 646
2009-12-29  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

647
	* using EXSE library version 1.2.0 (complex numbers with EXTRA)
Uwe Schulzweida's avatar
Uwe Schulzweida committed
648

649 650 651 652 653 654
2009-12-15  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* fileRead: check result of fread
	* binReadF77Block: check result of fileRead
	* Version 1.4.1 released

Uwe Schulzweida's avatar
Uwe Schulzweida committed
655 656 657 658
2009-12-11  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* streamSync: check that vlist has variables to sync [report: Martin Schultz]
	
659 660 661 662
2009-12-09  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cdfDefVar: define attribute _FillValue if missval was defined (speed up)
	
663 664 665 666
2009-12-08  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* allocate gribHandle for every grid/zaxis combination (speed up for writing GRIB2)
	
667 668 669 670
2009-11-30  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cdfInqContents: bug fix for GRID_CELL with levels [report: Stephan Lorenz]

671 672 673
2009-11-25  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* using GRIB library version 1.4.1
Uwe Schulzweida's avatar
Uwe Schulzweida committed
674
	  check max limit of binary scale value (bug fix)
675

Uwe Schulzweida's avatar
Uwe Schulzweida committed
676 677 678 679
2009-11-22  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* change code/tabnum to param
	
680 681 682 683
2009-11-20  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added function vlistDefVarParam/vlistInqVarParam

684 685 686
2009-11-17  Ralf Mueller  <Ralf.Mueller@zmaw.de>

	* Added ruby and python interfaces
Uwe Schulzweida's avatar
Uwe Schulzweida committed
687
	  --enable-ruby  --enable-python 
688
	
689 690 691 692
2009-11-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cdi.h: added '_vec' to all int and double vector arguments
	
693 694
2009-11-12  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

695
	* set units to "Pa" if changing zaxis to "pressure" (bug fix) [report: Chao Li]
696 697 698 699 700

2009-11-12  Ralf Mueller  <Ralf.Mueller@zmaw.de>

	* Added Fortran Interface via iso_c_bindings facility of F2003
	  --enable-iso-c-interface
701
	
702 703 704 705
2009-11-01  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added support for GRIB2 JPEG compression

Uwe Schulzweida's avatar
Uwe Schulzweida committed
706 707 708 709 710
2009-10-28  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* grbWriteVar: bug fix
	* Version 1.4.0.2 released

711 712
2009-10-23  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

Uwe Schulzweida's avatar
Uwe Schulzweida committed
713
	* cdfDefXaxis: bug fix for multi generic grids [report: Uwe Mikolajewicz]
714
	* streamCopyRecord: check byteorder (bug fix) [report: Claas Teichmann]
715
	
Uwe Schulzweida's avatar
Uwe Schulzweida committed
716
2009-10-15  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
717

Uwe Schulzweida's avatar
Uwe Schulzweida committed
718
	* using GRIB library version 1.4.0.1
719
	* IEG format: bug fix for lonlat grids [report: Philip Lorenz]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
720
	* Version 1.4.0.1 released
721

722 723 724
2009-10-06  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cdtInqContents: check attribute type
Uwe Schulzweida's avatar
Uwe Schulzweida committed
725
	* cdtInqContents: set default time units to DAYS
726
	
Uwe Schulzweida's avatar
Uwe Schulzweida committed
727
2009-10-05  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
728
	
729
	* using GRIB library version 1.4.0
730
	* added GRIB2 support (testversion) via grib_api(1.8.0)
731
	* changed C compiler to ANSI C99
732 733
	* changed time format from hhmm to hhmmss
	* changed encode/decode_time to seconds
734
	* ieg: added support for Gaussian grids [request: Ralf Podzun]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
735
	* cdfDefLonLat2D: added attributes for Panoply
736
	* added support for netCDF timeseries without grid
737
	* added support for netCDF timeseries with only one grid axis
Uwe Schulzweida's avatar
Uwe Schulzweida committed
738
	* gribDefLevel: bug fix for pressure level units millibar
739
	* julday_add_seconds: bug fix for adjusting negative seconds
Uwe Schulzweida's avatar
Uwe Schulzweida committed
740
	* stream_cdf:cdfReadVarSliceDP: bug fix for swapxy
741 742
	* Version 1.4.0 released

743 744 745
2009-06-15  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* netCDF: reduced number of nc_enddef
746 747 748
	* added env CDI_SORTNAME to sort netCDF names
	* added support for rotated grids on south pole [request: Beate Geyer]
	* timeval2vtime: bug fix for timeunit TUNIT_MONTH
Uwe Schulzweida's avatar
Uwe Schulzweida committed
749
	* streamSync: extent to non netCDF files
750
	* Version 1.3.2 released
751
	
Uwe Schulzweida's avatar
Uwe Schulzweida committed
752
2009-04-16  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
753

754
	* using GRIB library version 1.3.0
755 756 757
	* added support for NaN in DBL_IS_EQUAL
	* added support for GRID type LCC2 (LCC PROJ.4 version)
	* added support for TUNIT_QUARTER (15 minutes)
Uwe Schulzweida's avatar
Uwe Schulzweida committed
758
	* use env GRIB_INVENTORY_MODE=timestep to skip double entries
759
	* grbDefTime: define tunit also for absolute time [report: Pruek Pongprueksa]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
760
	* set default calendar with env CDI_DEFAULT_CALENDAR
761
	* change default calendar to CALENDAR_PROLEPTIC
Uwe Schulzweida's avatar
Uwe Schulzweida committed
762
	* gridInqXinc: bug fix
763
	* grid_check_cyclic: support for curvilinear grids without bounds
764
	* cdfInqContents: check dimension of curvilinear grids
765
	* streamOpenAppen: set ncmode to 2 (bug fix)
766
	* replaced strncpy/strncmp by memcpy/memcmp
767
	* Version 1.3.1 released
768

Uwe Schulzweida's avatar
Uwe Schulzweida committed
769
2009-01-15  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
770

771
	* add support for GRID type SINUSOIDAL
772
	* add support for GRID type LAEA
773
	* add support of GRIB level type MEANSEA
774
	* gridCreate: CF stdname and units for curvilinear grids [report: Stephanie Legutke]
775
	* cdf_create: don't set chunksizehint (bug fix) [report: Luis Kornblueh]
776
	* change vlistFlagVar to vlistMergedVar
777
	* set default missval of INT8/16/32 to SCHAR_MIN/SHRT_MIN/INT_MIN
778 779
	* move grid_lcc, grid_gme, grid_rot code to CDO
	* move gridToCurvilinear and gridToCell code to CDO
780
	* cdf_inq_contents: check zaxis type "depth_blow_sea/land" (bug fix)
781
	* Version 1.3.0 released
782

Uwe Schulzweida's avatar
Uwe Schulzweida committed
783
2008-11-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
Uwe Schulzweida's avatar
Uwe Schulzweida committed
784 785

	* add new function: streamSync
786
	* add new taxis functions: taxisXXXVdateBounds and taxisXXXVtimeBounds
787
	* cdfReadVarSliceDP: add swapxy support
788
	* stream_cdf: check var and axis names
789
	* cdfInqContents: support of grid stdname 'longitude' and 'latitude'
790
	* lambert grid: support of projection flag (bug fix) [report: Andrew Digby]
791
	* streamFilesuffix: bug fix for IEG [report: Class Teichmann]
792
	* gridCompare: bug fix for lonlat grids and type = 1 (cdfInqContents)
793
	* netcdf: support of timeunit 'year'
Uwe Schulzweida's avatar
Uwe Schulzweida committed
794 795
	* Version 1.2.1 released

Uwe Schulzweida's avatar
Uwe Schulzweida committed
796
2008-08-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
797

Uwe Schulzweida's avatar
Uwe Schulzweida committed
798
        * using GRIB library version 1.2.0
Uwe Schulzweida's avatar
Uwe Schulzweida committed
799
	* add support for netCDF4 classic with deflate option
Uwe Schulzweida's avatar
Uwe Schulzweida committed
800
	* add datatype UINT8
801 802
	* streamClose: use taxisDestroy to release memory
	* cdfInqContents: skip time variable with type = NC_CHAR
803
	* grbDefGrid: add warning for curvilinear grids
804
	* grbDefGrid: set increment for zonal means [request: Helmut P. Frank]
805
	* ptaxisCopy: don't overwrite item 'self' (bug fix)
806
	* add function vlistXXXVarTimaccu
807
	* DBL_IS_EQUAL: check NaN with isnan
Uwe Schulzweida's avatar
Uwe Schulzweida committed
808
	* Version 1.2.0 released
809
	
Uwe Schulzweida's avatar
Uwe Schulzweida committed
810
2008-04-08  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
Uwe Schulzweida's avatar
Uwe Schulzweida committed
811

812 813
        * using GRIB library version 1.1.1
	* configure: --with-szlib=<directory>
814
	* configure: check stat.st_blksize [report: Klaus Wyser]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
815
	* update: echam5 code table
816
	* fileOpen: add O_BINARY if available [report: Klaus Wyser]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
817
	* file.c: _WIN32 support
818
	* taxis.c: add support for non integer timevalues (TUNIT_MONTH/CALENDAR_360DAYS)
819 820
	* stream_cdf: add ICON grid support
	* stream_srv: add support for GRID_CELL (bug fix)
821
	* cdfInqContents: support of lon/lat units radian
822
	* cdfInqContents: bug fix for gridtype cell
823
	* cdfInqContents: bug fix for inconsistent curvilinear grid [report: Holger Goettel]
824
	* cdfInqContents: bug fix for unsupported grids (dims > 2) [report: Wolfgang Langhans]
825
	* cdfInqContents: check type of _FillValue
826
	* gridCompare: compare grid.yinc only if set
827
	* vlist_att.find_att: allocate attribute only if size > 0
828
	* grid_gme.c: add function areas to compute grid cell areas [Luis Kornblueh]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
829 830 831
	* grid_check_cyclic: bug fix
	* Version 1.1.1 released

Uwe Schulzweida's avatar
Uwe Schulzweida committed
832
2008-01-24  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
833

834 835
        * using GRIB library version 1.1.0
	* using FILE library version 1.6.0
Uwe Schulzweida's avatar
Uwe Schulzweida committed
836 837
	* new attribute routines: vlistInqNatts, vlistDefAttr and vlistInqAttr
	  for Int, Flt and Txt
838
	* Add support for Lambert grids [request: Patrick Samuelsson]
839
	* Change cdiDefCompress to streamDefZtype/streamDefZlevel
840
	* decode_timevalue: bug fix for rounding error [report: Veronika Gayler]
841
	* grbDefTime: add support for century < 0
Uwe Schulzweida's avatar
Uwe Schulzweida committed
842
	* Version 1.1.0 released
843
	
Uwe Schulzweida's avatar
Uwe Schulzweida committed
844
2007-10-22  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
845

846
        * using GRIB library version 1.0.6
847
	* stream_grb:grbDefGrid use ISEC2_ScanFlag [request: Alex Kann]
848 849 850
	* replace calendar module by a new one because of date/time problems
	  with years < 0 [report: Veronika Gayler]
	* add module timebase
851
	* taxis: add support for years less than zero
852 853 854
	* use always decode_date and encode_date to decode/encode date
	* Version 1.0.8 released

Uwe Schulzweida's avatar
Uwe Schulzweida committed
855
2007-06-15  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
856

857
	* using EXSE library version 1.0.2
Uwe Schulzweida's avatar
Uwe Schulzweida committed
858
	* new ECHAM5 code table [Renate Brokopf]
859
	* stream_ieg: bug fix memory leak [report: Philip Lorenz]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
860
	* add function gridIsCyclic
Uwe Schulzweida's avatar
Uwe Schulzweida committed
861
	* zaxisDuplicate: bug fix
862
	* varscan: add full vct support
863
	* cdfInqContents: print warning if cell_measures is missing
864 865 866 867
	* cdfInqContents: check also x/yvarid to compare curvilinear grids
	* Version 1.0.7 released

2007-03-06  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
Uwe Schulzweida's avatar
Uwe Schulzweida committed
868

Uwe Schulzweida's avatar
Uwe Schulzweida committed
869
        * using GRIB library version 1.0.5
870 871
	* use GRIB ltype to define GENERIC zaxis
	* taxisCopyTimestep: copy rdate and rtime [report: Harald Anlauf]
872 873
	* grbDefGrid: write absolute value of y-inc [report: Paul Dando]
	* grbDefTime: change to absolute time axis if value < 0 [report: Frank Toussaint]
874 875
	* grbDefGrid: change generic grid to lonlat grid
	* grbScanTimestep: bug fix for unsorted codes
876
	* LOCK/UNLOCK around _init_pointer
Uwe Schulzweida's avatar
Uwe Schulzweida committed
877 878
	* Version 1.0.6 released

Uwe Schulzweida's avatar
Uwe Schulzweida committed
879
2006-12-14  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
Uwe Schulzweida's avatar
Uwe Schulzweida committed
880

Uwe Schulzweida's avatar
Uwe Schulzweida committed
881 882
	* stream: mt safe version
	* zaxis: mt safe version
Uwe Schulzweida's avatar
Uwe Schulzweida committed
883
	* taxis: mt safe version
Uwe Schulzweida's avatar
Uwe Schulzweida committed
884
	* model: mt safe version
Uwe Schulzweida's avatar
Uwe Schulzweida committed
885
	* remove H5 test version
Uwe Schulzweida's avatar
Uwe Schulzweida committed
886
	* stream_srv/ext/ieg: bug fix for codes > 999 [report: Simon Blessing]
887
	* cdi_limits: define MAX_STREAMS, MAX_VLISTS, MAX_GRIDS, MAX_ZAXIS
Uwe Schulzweida's avatar
Uwe Schulzweida committed
888 889