fast_excel 0.4.1 → 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/test.yml +1 -7
- data/CHANGELOG.md +9 -0
- data/Gemfile +1 -1
- data/examples/example.rb +2 -0
- data/examples/example_date_time.rb +38 -0
- data/fast_excel.gemspec +2 -2
- data/lib/fast_excel/binding/format.rb +17 -0
- data/lib/fast_excel/binding/workbook.rb +39 -17
- data/lib/fast_excel/binding/worksheet.rb +57 -13
- data/lib/fast_excel/binding.rb +7 -7
- data/lib/fast_excel.rb +27 -20
- data/libxlsxwriter/.github/FUNDING.yml +1 -0
- data/libxlsxwriter/.github/ISSUE_TEMPLATE.md +85 -0
- data/libxlsxwriter/.github/PULL_REQUEST_TEMPLATE.md +130 -0
- data/libxlsxwriter/.github/workflows/cmake_actions.yml +48 -0
- data/libxlsxwriter/.github/workflows/code_style.yml +23 -0
- data/libxlsxwriter/.github/workflows/coverity.yml +22 -0
- data/libxlsxwriter/.github/workflows/make_actions.yml +52 -0
- data/libxlsxwriter/.github/workflows/valgrind.yml +23 -0
- data/libxlsxwriter/.github/workflows/windows_build.yml +54 -0
- data/libxlsxwriter/.github/workflows/zig_build.yml +22 -0
- data/libxlsxwriter/.gitignore +16 -1
- data/libxlsxwriter/.indent.pro +24 -0
- data/libxlsxwriter/CMakeLists.txt +156 -56
- data/libxlsxwriter/CONTRIBUTING.md +2 -2
- data/libxlsxwriter/Changes.txt +344 -2
- data/libxlsxwriter/LICENSE.txt +66 -8
- data/libxlsxwriter/Makefile +151 -54
- data/libxlsxwriter/Package.swift +42 -0
- data/libxlsxwriter/Readme.md +4 -2
- data/libxlsxwriter/build.zig +324 -0
- data/libxlsxwriter/build.zig.zon +11 -0
- data/libxlsxwriter/cmake/FindMINIZIP.cmake +3 -3
- data/libxlsxwriter/cocoapods/libxlsxwriter-umbrella.h +6 -0
- data/libxlsxwriter/include/xlsxwriter/app.h +2 -1
- data/libxlsxwriter/include/xlsxwriter/chart.h +236 -32
- data/libxlsxwriter/include/xlsxwriter/chartsheet.h +7 -7
- data/libxlsxwriter/include/xlsxwriter/comment.h +76 -0
- data/libxlsxwriter/include/xlsxwriter/common.h +111 -50
- data/libxlsxwriter/include/xlsxwriter/content_types.h +8 -1
- data/libxlsxwriter/include/xlsxwriter/core.h +1 -1
- data/libxlsxwriter/include/xlsxwriter/custom.h +1 -1
- data/libxlsxwriter/include/xlsxwriter/drawing.h +11 -20
- data/libxlsxwriter/include/xlsxwriter/format.h +121 -8
- data/libxlsxwriter/include/xlsxwriter/hash_table.h +1 -1
- data/libxlsxwriter/include/xlsxwriter/metadata.h +49 -0
- data/libxlsxwriter/include/xlsxwriter/packager.h +27 -16
- data/libxlsxwriter/include/xlsxwriter/relationships.h +1 -1
- data/libxlsxwriter/include/xlsxwriter/shared_strings.h +1 -1
- data/libxlsxwriter/include/xlsxwriter/styles.h +13 -7
- data/libxlsxwriter/include/xlsxwriter/table.h +51 -0
- data/libxlsxwriter/include/xlsxwriter/theme.h +1 -1
- data/libxlsxwriter/include/xlsxwriter/third_party/emyg_dtoa.h +26 -0
- data/libxlsxwriter/include/xlsxwriter/third_party/ioapi.h +27 -25
- data/libxlsxwriter/include/xlsxwriter/third_party/md5.h +45 -0
- data/libxlsxwriter/include/xlsxwriter/third_party/zip.h +155 -153
- data/libxlsxwriter/include/xlsxwriter/utility.h +70 -8
- data/libxlsxwriter/include/xlsxwriter/vml.h +55 -0
- data/libxlsxwriter/include/xlsxwriter/workbook.h +218 -47
- data/libxlsxwriter/include/xlsxwriter/worksheet.h +2770 -241
- data/libxlsxwriter/include/xlsxwriter/xmlwriter.h +12 -8
- data/libxlsxwriter/include/xlsxwriter.h +4 -2
- data/libxlsxwriter/libxlsxwriter.podspec +8 -5
- data/libxlsxwriter/src/Makefile +58 -21
- data/libxlsxwriter/src/app.c +5 -2
- data/libxlsxwriter/src/chart.c +396 -81
- data/libxlsxwriter/src/chartsheet.c +22 -22
- data/libxlsxwriter/src/comment.c +443 -0
- data/libxlsxwriter/src/content_types.c +40 -1
- data/libxlsxwriter/src/core.c +2 -2
- data/libxlsxwriter/src/custom.c +1 -1
- data/libxlsxwriter/src/drawing.c +160 -40
- data/libxlsxwriter/src/format.c +109 -25
- data/libxlsxwriter/src/hash_table.c +1 -1
- data/libxlsxwriter/src/metadata.c +283 -0
- data/libxlsxwriter/src/packager.c +794 -94
- data/libxlsxwriter/src/relationships.c +1 -1
- data/libxlsxwriter/src/shared_strings.c +2 -4
- data/libxlsxwriter/src/styles.c +353 -58
- data/libxlsxwriter/src/table.c +304 -0
- data/libxlsxwriter/src/theme.c +1 -1
- data/libxlsxwriter/src/utility.c +143 -43
- data/libxlsxwriter/src/vml.c +1062 -0
- data/libxlsxwriter/src/workbook.c +567 -77
- data/libxlsxwriter/src/worksheet.c +6668 -1462
- data/libxlsxwriter/src/xmlwriter.c +95 -5
- data/libxlsxwriter/third_party/dtoa/Makefile +42 -0
- data/libxlsxwriter/third_party/dtoa/emyg_dtoa.c +461 -0
- data/libxlsxwriter/third_party/dtoa/emyg_dtoa.h +26 -0
- data/libxlsxwriter/third_party/md5/Makefile +42 -0
- data/libxlsxwriter/third_party/md5/md5.c +291 -0
- data/libxlsxwriter/third_party/md5/md5.h +45 -0
- data/libxlsxwriter/third_party/minizip/Makefile +3 -8
- data/libxlsxwriter/third_party/minizip/Makefile.orig +8 -4
- data/libxlsxwriter/third_party/minizip/MiniZip64_Changes.txt +1 -1
- data/libxlsxwriter/third_party/minizip/configure.ac +1 -1
- data/libxlsxwriter/third_party/minizip/crypt.h +13 -16
- data/libxlsxwriter/third_party/minizip/ioapi.c +31 -57
- data/libxlsxwriter/third_party/minizip/ioapi.h +31 -23
- data/libxlsxwriter/third_party/minizip/iowin32.c +29 -45
- data/libxlsxwriter/third_party/minizip/iowin32.h +4 -4
- data/libxlsxwriter/third_party/minizip/miniunz.c +29 -56
- data/libxlsxwriter/third_party/minizip/minizip.c +38 -49
- data/libxlsxwriter/third_party/minizip/mztools.c +1 -7
- data/libxlsxwriter/third_party/minizip/unzip.c +202 -342
- data/libxlsxwriter/third_party/minizip/unzip.h +74 -74
- data/libxlsxwriter/third_party/minizip/zip.c +165 -218
- data/libxlsxwriter/third_party/minizip/zip.h +164 -154
- data/libxlsxwriter/third_party/tmpfileplus/Makefile +3 -3
- data/libxlsxwriter/version.txt +1 -1
- data/test/auto_width_test.rb +20 -0
- data/test/default_format_test.rb +1 -1
- data/test/validations_test.rb +3 -3
- data/test/worksheet_test.rb +6 -1
- metadata +33 -7
- data/libxlsxwriter/.travis.yml +0 -37
@@ -83,12 +83,12 @@ typedef voidp unzFile;
|
|
83
83
|
/* tm_unz contain date/time info */
|
84
84
|
typedef struct tm_unz_s
|
85
85
|
{
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
86
|
+
int tm_sec; /* seconds after the minute - [0,59] */
|
87
|
+
int tm_min; /* minutes after the hour - [0,59] */
|
88
|
+
int tm_hour; /* hours since midnight - [0,23] */
|
89
|
+
int tm_mday; /* day of the month - [1,31] */
|
90
|
+
int tm_mon; /* months since January - [0,11] */
|
91
|
+
int tm_year; /* years - [1980..2044] */
|
92
92
|
} tm_unz;
|
93
93
|
|
94
94
|
/* unz_global_info structure contain global data about the ZIPfile
|
@@ -150,21 +150,21 @@ typedef struct unz_file_info_s
|
|
150
150
|
tm_unz tmu_date;
|
151
151
|
} unz_file_info;
|
152
152
|
|
153
|
-
extern int ZEXPORT unzStringFileNameCompare
|
154
|
-
|
155
|
-
|
153
|
+
extern int ZEXPORT unzStringFileNameCompare(const char* fileName1,
|
154
|
+
const char* fileName2,
|
155
|
+
int iCaseSensitivity);
|
156
156
|
/*
|
157
|
-
Compare two
|
158
|
-
If
|
159
|
-
If
|
157
|
+
Compare two filenames (fileName1,fileName2).
|
158
|
+
If iCaseSensitivity = 1, comparison is case sensitive (like strcmp)
|
159
|
+
If iCaseSensitivity = 2, comparison is not case sensitive (like strcmpi
|
160
160
|
or strcasecmp)
|
161
|
-
If
|
161
|
+
If iCaseSensitivity = 0, case sensitivity is default of your operating system
|
162
162
|
(like 1 on Unix, 2 on Windows)
|
163
163
|
*/
|
164
164
|
|
165
165
|
|
166
|
-
extern unzFile ZEXPORT unzOpen
|
167
|
-
extern unzFile ZEXPORT unzOpen64
|
166
|
+
extern unzFile ZEXPORT unzOpen(const char *path);
|
167
|
+
extern unzFile ZEXPORT unzOpen64(const void *path);
|
168
168
|
/*
|
169
169
|
Open a Zip file. path contain the full pathname (by example,
|
170
170
|
on a Windows XP computer "c:\\zlib\\zlib113.zip" or on an Unix computer
|
@@ -181,41 +181,41 @@ extern unzFile ZEXPORT unzOpen64 OF((const void *path));
|
|
181
181
|
*/
|
182
182
|
|
183
183
|
|
184
|
-
extern unzFile ZEXPORT unzOpen2
|
185
|
-
|
184
|
+
extern unzFile ZEXPORT unzOpen2(const char *path,
|
185
|
+
zlib_filefunc_def* pzlib_filefunc_def);
|
186
186
|
/*
|
187
187
|
Open a Zip file, like unzOpen, but provide a set of file low level API
|
188
188
|
for read/write the zip file (see ioapi.h)
|
189
189
|
*/
|
190
190
|
|
191
|
-
extern unzFile ZEXPORT unzOpen2_64
|
192
|
-
|
191
|
+
extern unzFile ZEXPORT unzOpen2_64(const void *path,
|
192
|
+
zlib_filefunc64_def* pzlib_filefunc_def);
|
193
193
|
/*
|
194
194
|
Open a Zip file, like unz64Open, but provide a set of file low level API
|
195
195
|
for read/write the zip file (see ioapi.h)
|
196
196
|
*/
|
197
197
|
|
198
|
-
extern int ZEXPORT unzClose
|
198
|
+
extern int ZEXPORT unzClose(unzFile file);
|
199
199
|
/*
|
200
200
|
Close a ZipFile opened with unzOpen.
|
201
201
|
If there is files inside the .Zip opened with unzOpenCurrentFile (see later),
|
202
202
|
these files MUST be closed with unzCloseCurrentFile before call unzClose.
|
203
203
|
return UNZ_OK if there is no problem. */
|
204
204
|
|
205
|
-
extern int ZEXPORT unzGetGlobalInfo
|
206
|
-
|
205
|
+
extern int ZEXPORT unzGetGlobalInfo(unzFile file,
|
206
|
+
unz_global_info *pglobal_info);
|
207
207
|
|
208
|
-
extern int ZEXPORT unzGetGlobalInfo64
|
209
|
-
|
208
|
+
extern int ZEXPORT unzGetGlobalInfo64(unzFile file,
|
209
|
+
unz_global_info64 *pglobal_info);
|
210
210
|
/*
|
211
211
|
Write info about the ZipFile in the *pglobal_info structure.
|
212
212
|
No preparation of the structure is needed
|
213
213
|
return UNZ_OK if there is no problem. */
|
214
214
|
|
215
215
|
|
216
|
-
extern int ZEXPORT unzGetGlobalComment
|
217
|
-
|
218
|
-
|
216
|
+
extern int ZEXPORT unzGetGlobalComment(unzFile file,
|
217
|
+
char *szComment,
|
218
|
+
uLong uSizeBuf);
|
219
219
|
/*
|
220
220
|
Get the global comment string of the ZipFile, in the szComment buffer.
|
221
221
|
uSizeBuf is the size of the szComment buffer.
|
@@ -226,22 +226,22 @@ extern int ZEXPORT unzGetGlobalComment OF((unzFile file,
|
|
226
226
|
/***************************************************************************/
|
227
227
|
/* Unzip package allow you browse the directory of the zipfile */
|
228
228
|
|
229
|
-
extern int ZEXPORT unzGoToFirstFile
|
229
|
+
extern int ZEXPORT unzGoToFirstFile(unzFile file);
|
230
230
|
/*
|
231
231
|
Set the current file of the zipfile to the first file.
|
232
232
|
return UNZ_OK if there is no problem
|
233
233
|
*/
|
234
234
|
|
235
|
-
extern int ZEXPORT unzGoToNextFile
|
235
|
+
extern int ZEXPORT unzGoToNextFile(unzFile file);
|
236
236
|
/*
|
237
237
|
Set the current file of the zipfile to the next file.
|
238
238
|
return UNZ_OK if there is no problem
|
239
239
|
return UNZ_END_OF_LIST_OF_FILE if the actual file was the latest.
|
240
240
|
*/
|
241
241
|
|
242
|
-
extern int ZEXPORT unzLocateFile
|
243
|
-
|
244
|
-
|
242
|
+
extern int ZEXPORT unzLocateFile(unzFile file,
|
243
|
+
const char *szFileName,
|
244
|
+
int iCaseSensitivity);
|
245
245
|
/*
|
246
246
|
Try locate the file szFileName in the zipfile.
|
247
247
|
For the iCaseSensitivity signification, see unzStringFileNameCompare
|
@@ -285,26 +285,26 @@ extern int ZEXPORT unzGoToFilePos64(
|
|
285
285
|
|
286
286
|
/* ****************************************** */
|
287
287
|
|
288
|
-
extern int ZEXPORT unzGetCurrentFileInfo64
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
extern int ZEXPORT unzGetCurrentFileInfo
|
298
|
-
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
288
|
+
extern int ZEXPORT unzGetCurrentFileInfo64(unzFile file,
|
289
|
+
unz_file_info64 *pfile_info,
|
290
|
+
char *szFileName,
|
291
|
+
uLong fileNameBufferSize,
|
292
|
+
void *extraField,
|
293
|
+
uLong extraFieldBufferSize,
|
294
|
+
char *szComment,
|
295
|
+
uLong commentBufferSize);
|
296
|
+
|
297
|
+
extern int ZEXPORT unzGetCurrentFileInfo(unzFile file,
|
298
|
+
unz_file_info *pfile_info,
|
299
|
+
char *szFileName,
|
300
|
+
uLong fileNameBufferSize,
|
301
|
+
void *extraField,
|
302
|
+
uLong extraFieldBufferSize,
|
303
|
+
char *szComment,
|
304
|
+
uLong commentBufferSize);
|
305
305
|
/*
|
306
306
|
Get Info about the current file
|
307
|
-
if pfile_info!=NULL, the *pfile_info structure will contain
|
307
|
+
if pfile_info!=NULL, the *pfile_info structure will contain some info about
|
308
308
|
the current file
|
309
309
|
if szFileName!=NULL, the filemane string will be copied in szFileName
|
310
310
|
(fileNameBufferSize is the size of the buffer)
|
@@ -318,7 +318,7 @@ extern int ZEXPORT unzGetCurrentFileInfo OF((unzFile file,
|
|
318
318
|
|
319
319
|
/** Addition for GDAL : START */
|
320
320
|
|
321
|
-
extern ZPOS64_T ZEXPORT unzGetCurrentFileZStreamPos64
|
321
|
+
extern ZPOS64_T ZEXPORT unzGetCurrentFileZStreamPos64(unzFile file);
|
322
322
|
|
323
323
|
/** Addition for GDAL : END */
|
324
324
|
|
@@ -328,24 +328,24 @@ extern ZPOS64_T ZEXPORT unzGetCurrentFileZStreamPos64 OF((unzFile file));
|
|
328
328
|
from it, and close it (you can close it before reading all the file)
|
329
329
|
*/
|
330
330
|
|
331
|
-
extern int ZEXPORT unzOpenCurrentFile
|
331
|
+
extern int ZEXPORT unzOpenCurrentFile(unzFile file);
|
332
332
|
/*
|
333
333
|
Open for reading data the current file in the zipfile.
|
334
334
|
If there is no error, the return value is UNZ_OK.
|
335
335
|
*/
|
336
336
|
|
337
|
-
extern int ZEXPORT unzOpenCurrentFilePassword
|
338
|
-
|
337
|
+
extern int ZEXPORT unzOpenCurrentFilePassword(unzFile file,
|
338
|
+
const char* password);
|
339
339
|
/*
|
340
340
|
Open for reading data the current file in the zipfile.
|
341
341
|
password is a crypting password
|
342
342
|
If there is no error, the return value is UNZ_OK.
|
343
343
|
*/
|
344
344
|
|
345
|
-
extern int ZEXPORT unzOpenCurrentFile2
|
346
|
-
|
347
|
-
|
348
|
-
|
345
|
+
extern int ZEXPORT unzOpenCurrentFile2(unzFile file,
|
346
|
+
int* method,
|
347
|
+
int* level,
|
348
|
+
int raw);
|
349
349
|
/*
|
350
350
|
Same than unzOpenCurrentFile, but open for read raw the file (not uncompress)
|
351
351
|
if raw==1
|
@@ -355,11 +355,11 @@ extern int ZEXPORT unzOpenCurrentFile2 OF((unzFile file,
|
|
355
355
|
but you CANNOT set method parameter as NULL
|
356
356
|
*/
|
357
357
|
|
358
|
-
extern int ZEXPORT unzOpenCurrentFile3
|
359
|
-
|
360
|
-
|
361
|
-
|
362
|
-
|
358
|
+
extern int ZEXPORT unzOpenCurrentFile3(unzFile file,
|
359
|
+
int* method,
|
360
|
+
int* level,
|
361
|
+
int raw,
|
362
|
+
const char* password);
|
363
363
|
/*
|
364
364
|
Same than unzOpenCurrentFile, but open for read raw the file (not uncompress)
|
365
365
|
if raw==1
|
@@ -370,41 +370,41 @@ extern int ZEXPORT unzOpenCurrentFile3 OF((unzFile file,
|
|
370
370
|
*/
|
371
371
|
|
372
372
|
|
373
|
-
extern int ZEXPORT unzCloseCurrentFile
|
373
|
+
extern int ZEXPORT unzCloseCurrentFile(unzFile file);
|
374
374
|
/*
|
375
375
|
Close the file in zip opened with unzOpenCurrentFile
|
376
376
|
Return UNZ_CRCERROR if all the file was read but the CRC is not good
|
377
377
|
*/
|
378
378
|
|
379
|
-
extern int ZEXPORT unzReadCurrentFile
|
380
|
-
|
381
|
-
|
379
|
+
extern int ZEXPORT unzReadCurrentFile(unzFile file,
|
380
|
+
voidp buf,
|
381
|
+
unsigned len);
|
382
382
|
/*
|
383
383
|
Read bytes from the current file (opened by unzOpenCurrentFile)
|
384
384
|
buf contain buffer where data must be copied
|
385
385
|
len the size of buf.
|
386
386
|
|
387
|
-
return the number of byte copied if
|
387
|
+
return the number of byte copied if some bytes are copied
|
388
388
|
return 0 if the end of file was reached
|
389
389
|
return <0 with error code if there is an error
|
390
390
|
(UNZ_ERRNO for IO error, or zLib error for uncompress error)
|
391
391
|
*/
|
392
392
|
|
393
|
-
extern z_off_t ZEXPORT unztell
|
393
|
+
extern z_off_t ZEXPORT unztell(unzFile file);
|
394
394
|
|
395
|
-
extern ZPOS64_T ZEXPORT unztell64
|
395
|
+
extern ZPOS64_T ZEXPORT unztell64(unzFile file);
|
396
396
|
/*
|
397
397
|
Give the current position in uncompressed data
|
398
398
|
*/
|
399
399
|
|
400
|
-
extern int ZEXPORT unzeof
|
400
|
+
extern int ZEXPORT unzeof(unzFile file);
|
401
401
|
/*
|
402
402
|
return 1 if the end of file was reached, 0 elsewhere
|
403
403
|
*/
|
404
404
|
|
405
|
-
extern int ZEXPORT unzGetLocalExtrafield
|
406
|
-
|
407
|
-
|
405
|
+
extern int ZEXPORT unzGetLocalExtrafield(unzFile file,
|
406
|
+
voidp buf,
|
407
|
+
unsigned len);
|
408
408
|
/*
|
409
409
|
Read extra field from the current file (opened by unzOpenCurrentFile)
|
410
410
|
This is the local-header version of the extra field (sometimes, there is
|