ChangeLog 42.4 KB
Newer Older
1 2 3 4
2013-04-25  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* institutInq: check contents of name and longname (bug fix) [Bug #3419]

5 6
2013-04-23  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

7
	* cfortran.h::kill_trailing: wrong result with gcc -O3, use prama for -O2 (bug fix) [report: Luis Kornblueh]
8
	* vlistXXXAttTxt: use cdi fortran datatype CBUF (char *) for the last argument (bug fix) [report: Luis Kornblueh]
9 10
	* gridXXXUUID: use cdi fortran datatype CBUF (char *) for the last argument (bug fix) [Bug #3424]
	* zaxisXXXUUID: use cdi fortran datatype CBUF (char *) for the last argument (bug fix)
11

12 13 14 15
2013-04-19  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* stream_gribapi: replaced function getLevelFactor() [Bug #3446]

16 17 18 19
2013-04-18  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added function vlistDefVarExtra() and vlistInqVarExtra()

20 21 22 23
2013-04-04  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* vlistDefVarDatatype: changed default missing values of signed integers to -TYPE_MAX

24 25
2013-04-02  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

26
	* cdi.h: changed >char*< to >char *< (bug fix for fortran interface)
27 28
	* make_cdilib: changed position of error.c and error.h (bug fix)

29
2013-03-14  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
Uwe Schulzweida's avatar
Uwe Schulzweida committed
30 31

	* Version 1.6.0 released
32 33
	* using CGRIBEX library version 1.6.0

Uwe Schulzweida's avatar
Uwe Schulzweida committed
34 35 36 37
2013-03-13  Florian Prill  <Florian.Prill@dwd.de>

	* Read arbitrary GRIB keys [Feature #3267]

38 39
2013-03-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

Uwe Schulzweida's avatar
Uwe Schulzweida committed
40
	* GRIB: added support for time step unit: seconds [Bug #3352]
41

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

44
	* Added support for level type CLOUD_BASE, CLOUD_TOP and ISOTHERM_ZERO [Feature #3247]
45
	* stream_gribapi: changed units for level type GRIB2_LTYPE_LANDDEPTH to m (internally mm) [Bug #3287]
46
	* gribapiGetGrid: get gridDescriptionFile with grib_get_string() instead of grib_get_bytes() (bug fix)
47

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

Uwe Schulzweida's avatar
Uwe Schulzweida committed
50
	* stream_gribapi: added support for local table shortName.def [Bug #3343]
51

52 53 54 55
2013-03-08  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* vtime2timeval: check validity of month

56 57
2013-03-07  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

58
	* cdfDefGrid: bug fix for generic grids with nx or ny > 0
59
	* netCDF: ignore the attribute valid_min/valid_max, if the data type is inconsistent
60 61 62 63

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
64

65 66 67 68
2013-02-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

69 70
2013-02-04  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

71
	* netCDF: ignore the attribute valid_range, if the data type is inconsistent
72 73
	* netCDF: added env IGNORE_VALID_RANGE to ignore the attribute valid_range

74 75
2013-01-31  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

78 79 80 81
2013-01-08  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* netCDF: check position of time dimension

Uwe Schulzweida's avatar
Uwe Schulzweida committed
82 83 84 85
2013-01-15  Thomas Jahns  <jahns@dkrz.de>

	* make_fint.c: added regexec support

86 87 88 89
2013-01-08  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

90 91 92 93
2012-12-18  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* reshGetValue: added caller function name to error message

Uwe Schulzweida's avatar
Uwe Schulzweida committed
94
2012-12-17  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
95 96

	* Version 1.5.9 released
Uwe Schulzweida's avatar
Uwe Schulzweida committed
97
        * using CGRIBEX library version 1.5.6
98

99 100 101 102 103
2012-12-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

104 105
2012-12-11  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

106
	* added cdfGridCompress() to compress coordinates
107 108
	* added vlistDefVarChunkType() and vlistInqVarChunkType()

109 110 111 112
2012-12-03  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* vlistCopyFlag: added support for level bounds

113 114 115 116
2012-11-26  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* netCDF: added support for time axis name and long_name

117 118 119 120
2012-11-17  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

121 122 123 124
2012-11-16  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* file.c: added support for unbuffered write

125 126
2012-11-15  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

130 131 132 133
2012-11-14  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

134 135 136 137
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]

138 139 140 141 142
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

143 144
2012-11-05  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

148
2012-10-30  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
149 150 151 152

	* Version 1.5.8 released
	* using CGRIBEX library version 1.5.5

153 154 155
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
156
	* gridGenXvals/gridGenYvals: recheck xinc/yinc if (first+(size-1)*inc) > last
157

158 159 160 161
2012-10-26  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

162 163 164 165
2012-10-18  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

166 167
2012-10-16  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

Uwe Schulzweida's avatar
Uwe Schulzweida committed
168
	* grib2: changed packingType from grid_jpeg to grid_simple if nmiss > 0 (bug fix)
169 170 171

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

172
	* grib2: added stepType support for absolute time axis
173

174 175 176 177
2012-10-15  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

178 179 180 181
2012-09-21  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

182 183
2012-09-20  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

184 185 186 187
	* listSizeExtend: init ops, val and status

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

188 189
	* listInitialize: set mutex type to PTHREAD_MUTEX_RECURSIVE

190
2012-09-11  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
191

Uwe Schulzweida's avatar
Uwe Schulzweida committed
192
	* cdfInqContents: make ncid local to varid
193
	* cdfInqContents: group reading of global attribute to read_global_attributtes()
194
	* cdfInqContents: set ntsteps to 0 if no data variable found
Uwe Schulzweida's avatar
Uwe Schulzweida committed
195
	* netCDF: set 1D arrays to coordinate variables if axis attribute is available
196

197 198 199 200
2012-09-10  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

201 202 203 204
2012-09-05  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

205 206 207 208
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
209
2012-08-27  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
210 211

	* Version 1.5.7 released
212 213
	* model.c::modelInq*: check instID != UNDEFID (buf fix)
	* institution.c::insitutInq*: check instID != UNDEFID (buf fix)
214
	* Merge of branch cdo-pio into trunk cdi
Uwe Schulzweida's avatar
Uwe Schulzweida committed
215
	* using CGRIBEX library version 1.5.4
216 217
	* using EXSE library version 1.3.1

Uwe Schulzweida's avatar
Uwe Schulzweida committed
218
2012-07-23  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
Uwe Schulzweida's avatar
Uwe Schulzweida committed
219 220 221 222

	* Version 1.5.6 released
	* using CGRIBEX library version 1.5.3

223 224
2012-07-17  Modali Kameswarrao  <modali.kameswarrao@zmaw.de>

Uwe Schulzweida's avatar
Uwe Schulzweida committed
225
	* added vlistDefVarEnsemble() for GRIB1 and netCDF
226

227 228
2012-07-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

229
	* added call to cdiInitialize() in all streamOpen functions (bug fix)
230 231
	* added support for environment variable NC_CHUNKSIZEHINT [Feature #2142]

232 233 234 235
2012-07-04  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

236 237
2012-07-04  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

241 242
2012-06-20  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

245 246 247 248
2012-06-18  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* grib_api: use key significanceOfReferenceTime only for GRIB2

249 250 251
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
252 253
	* changed TIME_CONSTANT and TIME_VARIABLE to TSTEP_CONSTANT and TSTEP_XXX
	* renamed vlistInqVarTime() vlistInqVarTsteptype()
254

255 256
2012-06-01  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

259 260 261 262
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
263
2012-05-15  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
264 265 266 267

	* Version 1.5.5 released
	* using CGRIBEX library version 1.5.2

268 269 270 271
2012-05-02 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

272 273 274 275 276 277 278 279
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)

280 281
2012-04-26 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

282
	* added support for ZAXIS_DEPTH_BELOW_LAND units "mm",  "cm", "dm" and "m"
283

284 285
2012-03-24 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

286
	* added single precision support: streamWriteVarF, streamWriteVarSliceF
287

288 289 290 291
2012-02-15 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* stream_cdf::cdfDefDatatype: bug fix for DATATYPE_UINT8

292 293 294 295
2012-02-02 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

296
2012-01-30 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
297

298 299
	* Version 1.5.4 released

300
2011-12-27 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
301

302
	* added support for GRIB2 packing type grid_ieee
303

Uwe Schulzweida's avatar
Uwe Schulzweida committed
304 305 306 307
2011-12-19 Luis Kornblueh  <Luis.Kornblueh@zmaw.de>

	* added suppport for GRIB2 level type 150

308 309 310 311
2011-12-13 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

312 313 314 315
2011-11-11 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

316 317 318 319 320
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)

321 322 323 324
2011-11-04 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added support for GRIB1_LTYPE_SIGMA_LAYER

325 326 327 328
2011-11-01 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

329 330 331 332
2011-10-27 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

333 334 335 336
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
337 338 339
2011-10-17  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* Version 1.5.3 released
340
	* using CGRIBEX library version 1.5.1
Uwe Schulzweida's avatar
Uwe Schulzweida committed
341

342 343 344
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
345

346 347
2011-10-06  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

348
	* added level type ZAXIS_TOA, ZAXIS_SEA_BOTTOM, ZAXIS_ATMOSPHERE [request: Drte Liermann]
349

350 351 352
2011-10-05  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

356 357 358 359
2011-10-02  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

360 361 362 363
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
364 365 366 367
2011-08-22 Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* Version 1.5.2 released

368 369 370 371
2011-08-15  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

372 373 374 375
2011-08-06  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

376 377 378 379
2011-07-29  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

380 381 382 383
2011-07-28  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added interface function vlistDefVarXYZ to set the dimension order

384 385 386 387
2011-07-23  Pier Giuseppe Fogli  <piergiuseppe.fogli@cmcc.it>

	* added interface function zaxisInqVct to read the VCT

388 389 390 391
2011-07-23  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

392 393 394
2011-07-14  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

Uwe Schulzweida's avatar
Uwe Schulzweida committed
396 397 398 399
2011-07-12  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* Version 1.5.1 released

400 401 402 403
2011-07-07  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

404 405 406 407
2011-06-24  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

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

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

413
2011-05-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
414 415

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

418 419 420 421
2011-05-12  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

422 423
2011-04-28  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

424 425 426
	* 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]
427

428 429
2011-04-27  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

430
	* Added support for FILETYPE_NC4C (netcdf4 classic)
431 432
	* netcdf: Skiped time dependent variables if number of time steps is zero

Uwe Schulzweida's avatar
Uwe Schulzweida committed
433
2011-03-15  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
Uwe Schulzweida's avatar
Uwe Schulzweida committed
434 435 436 437

	* using CGRIBEX library version 1.5.0
	* Version 1.5.0 released

438 439 440 441
2011-03-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* stream_cdf: added support for GRIB2 parameter identifier

Uwe Schulzweida's avatar
Uwe Schulzweida committed
442 443 444 445
2011-03-08  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* Version 1.4.8 released

446 447
2011-02-06  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

448
	* vlistDestroy: fix memory leak
449

450 451 452
2011-01-25  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added netCDF support for level bounds
453

454 455
2011-01-21  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

456
	* added grid type GRID_REFERENCE
457
	* changed grid name GRID_CELL to GRID_UNSTRUCTURED
458

459 460 461
2011-01-19  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added support to encode/decode GRIB1 with GRIB_API
462

Uwe Schulzweida's avatar
Uwe Schulzweida committed
463 464 465 466 467
2011-01-03  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* using CGRIBEX library version 1.4.7
	* Version 1.4.7 released

468 469
2010-11-09  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

Uwe Schulzweida's avatar
Uwe Schulzweida committed
470
	* improved support for netCDF output from WRF model
471

472 473
2010-10-28  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

474
	* cdfDefZaxis: changed hybrid level type from int to float
475 476
	* taxisCopyTimestep: added mutex_lock
	
477 478 479 480
2010-10-26  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cgribexAddRecord: correct xinc/yinc if necessary [report: Anders Ullerstig]
	
481 482 483 484
2010-10-12  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

485 486
2010-10-05  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

487 488
	* cdfOpenFile: create netCDF4 files without NC_CLASSIC_MODEL
	* cdfOpenFile: switch off checking of netCDF4 format (read)
489
	
490 491 492 493
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
494
2010-09-17  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
Uwe Schulzweida's avatar
Uwe Schulzweida committed
495 496 497 498 499 500

	* using CGRIBEX library version 1.4.6
	* Version 1.4.6 released

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

501
	* GRIB1: use packing only for non constant fields [request: Luis Kornblueh]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
502 503
	* varDefZtype: bug fix [report: Stephanie Legutke]
	
504 505 506
2010-09-07  Ralf Mueller <ralf.mueller@zmaw.de>

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

511 512 513 514
2010-09-03  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* check axis attribute (bug fix) [report: Cui Chen]
	
515 516 517 518
2010-08-26  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* vlistCopyFlag: copy zaxis meta data
	
Uwe Schulzweida's avatar
Uwe Schulzweida committed
519 520 521 522 523 524 525 526
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
527 528 529 530
2010-08-02  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added grid mask support
	
531 532 533 534
2010-07-26  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added ECHAM6 GRIB1 code table

535 536 537 538
2010-07-23  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cdfInqContents: fixed out of bounds access to attstring [report: Heiner Widmann]
	
539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555
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)

556
2010-06-16  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
557 558 559 560

	* using CGRIBEX library version 1.4.5
	* Version 1.4.5 released

561 562 563 564
2010-05-16  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* stream_history: added NC4 support [report: Etienne Tourigny]
	
565 566 567 568
2010-05-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cdfDefXYaxis: check also dimnames (bug fix) [report: Mikhail Itkin]
	
569 570 571 572
2010-05-12  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* stream_cdf: added support for uppercase attributes [request: Patrick Brockmann]
	
573 574 575 576
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
577 578 579 580
2010-04-29  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* Version 1.4.4 released

Uwe Schulzweida's avatar
Uwe Schulzweida committed
581 582 583 584
2010-04-24  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

585 586
2010-04-16  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

Uwe Schulzweida's avatar
Uwe Schulzweida committed
587 588 589
	* 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
590
	
591 592 593 594
2010-04-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

Uwe Schulzweida's avatar
Uwe Schulzweida committed
597
	* added support for GRIB time units 3hours and 6hours [request: Jaison-Thomas Ambadan]
598
	
599 600 601 602
2010-04-01  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* vlistMerge: added support to merge levels

603 604
2010-03-31  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

605
        * cgribexDefTime: bug fix for timerange=3 [report: Veronika Gayler]
606 607
	* using CGRIBEX library version 1.4.4

608 609 610 611
2010-03-30  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* vlistCat: correct temporary parameter numbers

612 613 614 615
2010-03-19  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added support for non integer time units MONTH

616 617 618 619
2010-03-12  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

620 621 622 623
2010-03-04  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

626
        * grid.c: replace for loops by memcpy (speed up)
627

628 629 630 631
2010-02-25  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* implementation of gridDestroy
	
632 633 634 635
2010-02-22  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* Version 1.4.3 released

636 637
2010-02-18  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

640 641 642 643
2010-02-16  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

646
	* rotated grids: correct standard name [report: Michael Boettinger]
647 648
	* cgribexDefTime: bug fix for timerange = -1

649 650
2010-02-10  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

651
	* added support for encoding of complex packed spectral data in GRIB1
652

653 654 655 656
2010-02-09  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added function gridInqComplexPacking/gridDefComplexPacking

Uwe Schulzweida's avatar
Uwe Schulzweida committed
657 658 659 660
2010-02-08  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* Version 1.4.2 released

661 662
2010-01-25  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

663
	* added support for timerange 1,2,3,4,5 (GRIB1)
664

665 666 667 668
2010-01-14  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

671 672 673
	* added optional sorting of parameters

2010-01-13  Oliver Fuhrer <oliver.fuhrer@meteoswiss.ch>
674 675 676 677

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

678 679 680 681
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
682 683
2009-12-29  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

686 687 688 689 690 691
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
692 693 694 695
2009-12-11  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* streamSync: check that vlist has variables to sync [report: Martin Schultz]
	
696 697 698 699
2009-12-09  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cdfDefVar: define attribute _FillValue if missval was defined (speed up)
	
700 701 702 703
2009-12-08  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* allocate gribHandle for every grid/zaxis combination (speed up for writing GRIB2)
	
704 705 706 707
2009-11-30  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

708 709 710
2009-11-25  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

Uwe Schulzweida's avatar
Uwe Schulzweida committed
713 714 715 716
2009-11-22  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* change code/tabnum to param
	
717 718 719 720
2009-11-20  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added function vlistDefVarParam/vlistInqVarParam

721 722 723
2009-11-17  Ralf Mueller  <Ralf.Mueller@zmaw.de>

	* Added ruby and python interfaces
Uwe Schulzweida's avatar
Uwe Schulzweida committed
724
	  --enable-ruby  --enable-python 
725
	
726 727 728 729
2009-11-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

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

732
	* set units to "Pa" if changing zaxis to "pressure" (bug fix) [report: Chao Li]
733 734 735 736 737

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

	* Added Fortran Interface via iso_c_bindings facility of F2003
	  --enable-iso-c-interface
738
	
739 740 741 742
2009-11-01  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* added support for GRIB2 JPEG compression

Uwe Schulzweida's avatar
Uwe Schulzweida committed
743 744 745 746 747
2009-10-28  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* grbWriteVar: bug fix
	* Version 1.4.0.2 released

748 749
2009-10-23  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

Uwe Schulzweida's avatar
Uwe Schulzweida committed
750
	* cdfDefXaxis: bug fix for multi generic grids [report: Uwe Mikolajewicz]
751
	* streamCopyRecord: check byteorder (bug fix) [report: Claas Teichmann]
752
	
Uwe Schulzweida's avatar
Uwe Schulzweida committed
753
2009-10-15  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
754

Uwe Schulzweida's avatar
Uwe Schulzweida committed
755
	* using GRIB library version 1.4.0.1
756
	* IEG format: bug fix for lonlat grids [report: Philip Lorenz]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
757
	* Version 1.4.0.1 released
758

759 760 761
2009-10-06  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* cdtInqContents: check attribute type
Uwe Schulzweida's avatar
Uwe Schulzweida committed
762
	* cdtInqContents: set default time units to DAYS
763
	
Uwe Schulzweida's avatar
Uwe Schulzweida committed
764
2009-10-05  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
765
	
766
	* using GRIB library version 1.4.0
767
	* added GRIB2 support (testversion) via grib_api(1.8.0)
768
	* changed C compiler to ANSI C99
769 770
	* changed time format from hhmm to hhmmss
	* changed encode/decode_time to seconds
771
	* ieg: added support for Gaussian grids [request: Ralf Podzun]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
772
	* cdfDefLonLat2D: added attributes for Panoply
773
	* added support for netCDF timeseries without grid
774
	* added support for netCDF timeseries with only one grid axis
Uwe Schulzweida's avatar
Uwe Schulzweida committed
775
	* gribDefLevel: bug fix for pressure level units millibar
776
	* julday_add_seconds: bug fix for adjusting negative seconds
Uwe Schulzweida's avatar
Uwe Schulzweida committed
777
	* stream_cdf:cdfReadVarSliceDP: bug fix for swapxy
778 779
	* Version 1.4.0 released

780 781 782
2009-06-15  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>

	* netCDF: reduced number of nc_enddef
783 784 785
	* 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
786
	* streamSync: extent to non netCDF files
787
	* Version 1.3.2 released
788
	
Uwe Schulzweida's avatar
Uwe Schulzweida committed
789
2009-04-16  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
790

791
	* using GRIB library version 1.3.0
792 793 794
	* 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
795
	* use env GRIB_INVENTORY_MODE=timestep to skip double entries
796
	* grbDefTime: define tunit also for absolute time [report: Pruek Pongprueksa]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
797
	* set default calendar with env CDI_DEFAULT_CALENDAR
798
	* change default calendar to CALENDAR_PROLEPTIC
Uwe Schulzweida's avatar
Uwe Schulzweida committed
799
	* gridInqXinc: bug fix
800
	* grid_check_cyclic: support for curvilinear grids without bounds
801
	* cdfInqContents: check dimension of curvilinear grids
802
	* streamOpenAppen: set ncmode to 2 (bug fix)
803
	* replaced strncpy/strncmp by memcpy/memcmp
804
	* Version 1.3.1 released
805

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

808
	* add support for GRID type SINUSOIDAL
809
	* add support for GRID type LAEA
810
	* add support of GRIB level type MEANSEA
811
	* gridCreate: CF stdname and units for curvilinear grids [report: Stephanie Legutke]
812
	* cdf_create: don't set chunksizehint (bug fix) [report: Luis Kornblueh]
813
	* change vlistFlagVar to vlistMergedVar
814
	* set default missval of INT8/16/32 to SCHAR_MIN/SHRT_MIN/INT_MIN
815 816
	* move grid_lcc, grid_gme, grid_rot code to CDO
	* move gridToCurvilinear and gridToCell code to CDO
817
	* cdf_inq_contents: check zaxis type "depth_blow_sea/land" (bug fix)
818
	* Version 1.3.0 released
819

Uwe Schulzweida's avatar
Uwe Schulzweida committed
820
2008-11-13  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
Uwe Schulzweida's avatar
Uwe Schulzweida committed
821 822

	* add new function: streamSync
823
	* add new taxis functions: taxisXXXVdateBounds and taxisXXXVtimeBounds
824
	* cdfReadVarSliceDP: add swapxy support
825
	* stream_cdf: check var and axis names
826
	* cdfInqContents: support of grid stdname 'longitude' and 'latitude'
827
	* lambert grid: support of projection flag (bug fix) [report: Andrew Digby]
828
	* streamFilesuffix: bug fix for IEG [report: Class Teichmann]
829
	* gridCompare: bug fix for lonlat grids and type = 1 (cdfInqContents)
830
	* netcdf: support of timeunit 'year'
Uwe Schulzweida's avatar
Uwe Schulzweida committed
831 832
	* Version 1.2.1 released

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

Uwe Schulzweida's avatar
Uwe Schulzweida committed
835
        * using GRIB library version 1.2.0
Uwe Schulzweida's avatar
Uwe Schulzweida committed
836
	* add support for netCDF4 classic with deflate option
Uwe Schulzweida's avatar
Uwe Schulzweida committed
837
	* add datatype UINT8
838 839
	* streamClose: use taxisDestroy to release memory
	* cdfInqContents: skip time variable with type = NC_CHAR
840
	* grbDefGrid: add warning for curvilinear grids
841
	* grbDefGrid: set increment for zonal means [request: Helmut P. Frank]
842
	* ptaxisCopy: don't overwrite item 'self' (bug fix)
843
	* add function vlistXXXVarTimaccu
844
	* DBL_IS_EQUAL: check NaN with isnan
Uwe Schulzweida's avatar
Uwe Schulzweida committed
845
	* Version 1.2.0 released
846
	
Uwe Schulzweida's avatar
Uwe Schulzweida committed
847
2008-04-08  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
Uwe Schulzweida's avatar
Uwe Schulzweida committed
848

849 850
        * using GRIB library version 1.1.1
	* configure: --with-szlib=<directory>
851
	* configure: check stat.st_blksize [report: Klaus Wyser]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
852
	* update: echam5 code table
853
	* fileOpen: add O_BINARY if available [report: Klaus Wyser]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
854
	* file.c: _WIN32 support
855
	* taxis.c: add support for non integer timevalues (TUNIT_MONTH/CALENDAR_360DAYS)
856 857
	* stream_cdf: add ICON grid support
	* stream_srv: add support for GRID_CELL (bug fix)
858
	* cdfInqContents: support of lon/lat units radian
859
	* cdfInqContents: bug fix for gridtype cell
860
	* cdfInqContents: bug fix for inconsistent curvilinear grid [report: Holger Goettel]
861
	* cdfInqContents: bug fix for unsupported grids (dims > 2) [report: Wolfgang Langhans]
862
	* cdfInqContents: check type of _FillValue
863
	* gridCompare: compare grid.yinc only if set
864
	* vlist_att.find_att: allocate attribute only if size > 0
865
	* grid_gme.c: add function areas to compute grid cell areas [Luis Kornblueh]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
866 867 868
	* grid_check_cyclic: bug fix
	* Version 1.1.1 released

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

871 872
        * using GRIB library version 1.1.0
	* using FILE library version 1.6.0
Uwe Schulzweida's avatar
Uwe Schulzweida committed
873 874
	* new attribute routines: vlistInqNatts, vlistDefAttr and vlistInqAttr
	  for Int, Flt and Txt
875
	* Add support for Lambert grids [request: Patrick Samuelsson]
876
	* Change cdiDefCompress to streamDefZtype/streamDefZlevel
877
	* decode_timevalue: bug fix for rounding error [report: Veronika Gayler]
878
	* grbDefTime: add support for century < 0
Uwe Schulzweida's avatar
Uwe Schulzweida committed
879
	* Version 1.1.0 released
880
	
Uwe Schulzweida's avatar
Uwe Schulzweida committed
881
2007-10-22  Uwe Schulzweida  <Uwe.Schulzweida@zmaw.de>
882

883
        * using GRIB library version 1.0.6
884
	* stream_grb:grbDefGrid use ISEC2_ScanFlag [request: Alex Kann]
885 886 887
	* replace calendar module by a new one because of date/time problems
	  with years < 0 [report: Veronika Gayler]
	* add module timebase
888
	* taxis: add support for years less than zero
889 890 891
	* use always decode_date and encode_date to decode/encode date
	* Version 1.0.8 released

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

894
	* using EXSE library version 1.0.2
Uwe Schulzweida's avatar
Uwe Schulzweida committed
895
	* new ECHAM5 code table [Renate Brokopf]
896
	* stream_ieg: bug fix memory leak [report: Philip Lorenz]
Uwe Schulzweida's avatar