Thomas Fussell
50280ba2ab
don't define THROW_ON_INVALID_XML by default on NDEBUG builds, fixes #179
2017-09-08 10:36:49 -04:00
tal
46a10cfb7b
Issue #216-cleanup for Clang 5.0 build
...
switched to nullptr instead of NULL or 0.
Switch some expressions using ',' to multiple statements separated by ';'
Removed unused template function
Used override keyword for some overridden virtual functions.
2017-09-04 13:43:30 -06:00
sukoi26
8d85ed917f
Merge branch 'dev' into dev
2017-09-02 22:07:07 +02:00
Thomas Fussell
25bb6bfadf
revert addition of NDEBUG for clang builds, come up with a better way to solve #179
2017-09-02 10:28:22 -04:00
Thomas Fussell
f174dd825d
Merge pull request #209 from pebble2015/master
...
fix #204 #205
2017-09-02 10:10:35 -04:00
sukoi26
b21b856e68
code optimized for s attribut cell / row format
...
improve the performance
2017-08-29 13:01:47 +02:00
pebble2015
5461538396
fix xwindow bug
...
fix xwindow bug
2017-08-27 14:13:18 +08:00
pebble2015
17ce83e612
fix xwindow bug
...
fix xwindow bug
2017-08-27 13:58:17 +08:00
pebble2015
f3d5d18035
fix xwindow bug
...
fix xwindow bug
2017-08-27 13:44:06 +08:00
Chris
e5d6a26e17
fixup formatting
2017-08-26 11:04:23 -05:00
Chris
5cc24fda39
PERF: optimize read_cell
2017-08-26 10:49:48 -05:00
Thomas Fussell
4e2c0c0ffb
use column width adjustment as specified in standard so that width in Excel on Windows matches value in xlnt, #193
2017-08-18 21:38:10 -04:00
Thomas Fussell
49b84a83c7
define missing method, worksheet::clear_page_breaks(), closes #192
2017-08-18 20:58:44 -04:00
Thomas Fussell
3257274057
use utfcpp on all platforms since codecvt has been deprecated in c++17, closes #197
2017-08-15 18:23:28 -04:00
Thomas Fussell
b54b2399d9
ignore unknown-pragmas in clang, try to debug lib suffix, install using cmake instead of in setup.py
2017-08-07 19:00:49 -07:00
Thomas Fussell
7cc9898dab
move most of the pyarrow logic to python wrapper, use pyarrow's cmake setup.py code
2017-08-04 10:12:25 -07:00
Thomas Fussell
8801a0e352
figured out the problem
2017-07-30 20:32:37 -07:00
Thomas Fussell
de0e010056
use pybind11 instead of raw C Python API, python_streambuffer is broken for now
2017-07-30 09:48:57 -07:00
Thomas Fussell
eaaa310cef
start implementing xlsx2arrow params
2017-07-19 17:21:55 -07:00
Thomas Fussell
8965cfa82c
Merge branch 'dev' of github.com:tfussell/xlnt into dev
2017-07-18 14:25:49 -07:00
Thomas Fussell
abdd1be7c8
move arrow logic to xlntpyarrow for now
2017-07-18 14:20:46 -07:00
Thomas Fussell
8d051e36e5
fix remaining clang warnings. so many static_casts...
2017-07-17 22:24:00 +00:00
Thomas Fussell
7da9187808
fix some clang warnings
2017-07-16 22:32:35 +00:00
Thomas Fussell
b98f8c4fe7
don't cast integral long double to ptrdiff_t before writing to xml, fixes #188
2017-07-16 11:16:09 -07:00
Thomas Fussell
33399a5390
now we're getting somewhere! xlntpyarrow.xlsx2arrow returns an Arrow table that can be converted to a pandas DataFrame now
2017-07-15 10:39:36 -07:00
Thomas Fussell
5b95b3d463
begin implementing xlsx2arrow, fix msvc warnings, other stuff
2017-07-14 22:18:11 -07:00
Thomas Fussell
c00a7a7798
put dll in the correct directory depending on system
2017-07-14 01:26:49 +00:00
Thomas Fussell
e16f5cfe51
file-specific warning disabling is not working so just disable -Werror on Clang for now [ci skip]
2017-07-12 08:55:21 -07:00
Thomas Fussell
bec125d5c9
try again
2017-07-12 00:53:46 -07:00
Thomas Fussell
2949863c77
disable warnings on xlntarrow.cpp for now
2017-07-12 00:40:34 -07:00
Thomas Fussell
0be7563f8b
ignore arrow warnings and foward declare arrow
2017-07-12 00:03:26 -07:00
Thomas Fussell
e6b0545c26
remove deleted xlntarrow dependency from xlntpyarrow target and don't compile xlntarrow when ARROW=OFF
2017-07-11 21:30:43 -07:00
Thomas Fussell
5c033905fb
I see no good reason to make the arrow interface a separate lib. Let's just make it optionally compiled in the main target.
2017-07-11 20:55:08 -07:00
Thomas Fussell
fee2319093
use static_cast instead of c-style cast for stream pointers
2017-07-11 20:40:55 -07:00
Thomas Fussell
e38b1cdd69
fix gcc warnings
2017-07-09 16:44:00 +00:00
Thomas Fussell
84a6fdcc14
handle missing switch case in cell::to_string
2017-07-08 10:19:55 -07:00
Thomas Fussell
f97ad6c1bd
start working on streaming write
2017-07-04 17:52:46 -07:00
Thomas Fussell
16bfbf78f5
use cmake to build python module
2017-07-04 16:03:34 -07:00
Thomas Fussell
80fb2a6e29
use c99 for for loop declarations
2017-07-03 06:00:27 -07:00
Thomas Fussell
6777982f08
clarify target_mode namespace
2017-07-02 19:17:14 -07:00
Thomas Fussell
9f95894372
use unique_ptr constructor instead of make_unique (C++14+ only)
2017-07-02 19:10:22 -07:00
Thomas Fussell
498f3a6f71
Merge branch 'master' into feature/arrow
2017-07-02 19:03:24 -07:00
Thomas Fussell
456b9bbd80
specify hash to use (scoped_enum_hash) for variant::type hash table
2017-07-02 19:00:37 -07:00
Thomas Fussell
7fb9df97be
ifdef out codecvt
2017-07-02 18:56:16 -07:00
Thomas Fussell
245f5117d3
don't use string_literal for now
2017-07-02 18:56:00 -07:00
Thomas Fussell
e104c6a9b6
specify namespace in friend declaration
2017-07-02 18:54:32 -07:00
Thomas Fussell
9861dc761a
typo
2017-07-02 18:40:11 -07:00
Thomas Fussell
f502626418
forgot to conditionally include codecvt in path.cpp
2017-07-02 18:39:44 -07:00
Thomas Fussell
0ee0817757
include utfcpp for now to allow GCC <5.0 to build xlnt
2017-07-02 18:33:53 -07:00
Thomas Fussell
9f9dfe7a75
qualify use of extended_property enum class, fixes #186
2017-06-26 13:26:34 +00:00
Thomas Fussell
56d744b6f9
start cleaning up code
2017-06-25 09:29:45 -04:00
Thomas Fussell
fdd91f817f
basic streaming read works now, just need to clean up the logic
2017-06-24 22:07:37 -04:00
Thomas Fussell
6f716c6e89
work on streaming cell reading, using ugly copy-pasted code for now [ci
...
skip]
2017-06-24 11:39:48 -04:00
Thomas Fussell
3153600768
read worksheet xml correctly
2017-06-22 08:56:01 -04:00
Thomas Fussell
72b8bd6b67
work out how to handle worksheet rels during streaming parsing
2017-06-21 09:17:06 -04:00
Thomas Fussell
a9fd6b064e
minor fixes to get it to compile. lots of failing tests for now...
2017-06-20 13:29:50 -04:00
Thomas Fussell
d7e7526beb
add failing tests and begin restructuring worksheet reading [ci skip]
2017-06-17 10:53:37 -04:00
Thomas Fussell
2305eae8b6
pass streaming arg to read_part
2017-06-16 09:11:42 -04:00
Thomas Fussell
7834b564f4
handle absolute relationship targets the correct way
2017-06-16 09:11:24 -04:00
Thomas Fussell
7b391321f6
Merge branch 'master' into feature/streaming
2017-06-15 18:10:37 -04:00
Thomas Fussell
342184139f
intermediate commit
2017-06-15 18:10:27 -04:00
Thomas Fussell
cae6276b23
prevent exception from being thrown when a view doesn't contain window attributes
2017-06-14 15:45:01 -04:00
Thomas Fussell
d14f8c2e5f
fix canonicalization of relationship chains when the last link is absolute
2017-06-14 15:44:19 -04:00
Thomas Fussell
9d312ee7f4
make the code compile
2017-06-14 15:43:25 -04:00
Thomas Fussell
b3c044948f
start architecting streaming read/write api
2017-06-12 10:34:35 -04:00
Thomas Fussell
d2be054b7c
optimize shared strings and handle formula strings correctly
2017-05-10 08:44:25 -04:00
Thomas Fussell
b851d1c143
prevent share string formatting from being overwritten during consumption
2017-05-09 09:01:01 -04:00
Thomas Fussell
f0b1e789a3
use xml:space=preserve when writing shared strings with trailing whitespace
2017-05-09 08:46:12 -04:00
Thomas Fussell
7ddd290e92
ignore dateCompatibility attribute too
2017-05-08 11:38:10 -04:00
Thomas Fussell
4aff818a87
kepp calcChain relationship, but don't actually write file to prevent excel file recovery warning
2017-05-08 10:51:56 -04:00
Thomas Fussell
a37a1e102a
handle all workbookPr attributes according to ecma 376
2017-05-08 10:50:33 -04:00
Thomas Fussell
239c76659f
work on writing a valid compound document
2017-05-02 22:22:22 -04:00
Thomas Fussell
a5c0d03bcc
fix windows dll problem due to not exporting vector_streambufs
2017-04-30 23:25:57 -04:00
Thomas Fussell
e26364c388
better
2017-04-30 23:13:13 -04:00
Thomas Fussell
c677a14969
fix some stream reading. all tests passing (very very slowly) so now it's time for optimization
2017-04-30 21:16:05 -04:00
Thomas Fussell
ee642fc6c1
getting there
2017-04-30 20:21:47 -04:00
Thomas Fussell
4da901d387
forgot to commit new vector_streambuf source file
2017-04-30 17:37:35 -04:00
Thomas Fussell
b7bf16d47c
implement input and output streambufs for compound document streams
2017-04-30 17:23:28 -04:00
Thomas Fussell
f42d3eee74
move vector_streambuf definitions to a separate file, fix zip buffer bug
2017-04-29 12:29:41 -04:00
Thomas Fussell
f5b5d67594
wip
2017-04-28 17:56:05 -04:00
Thomas Fussell
be37df3c86
intermediate commit
2017-04-28 12:42:42 -04:00
Thomas Fussell
6334907de7
work on short streams
2017-04-28 10:58:55 -04:00
Thomas Fussell
a90b32f386
switch to full in-memory approach, still working
2017-04-26 23:19:28 -04:00
Thomas Fussell
bb91308dd4
work in progress
2017-04-26 12:02:49 -04:00
Thomas Fussell
1e1e8272ae
coding is done finally. time to debug some compound files
2017-04-25 18:14:47 -04:00
Thomas Fussell
562e163bf6
try to add a red black tree. I haven't done algorithms in a long time
2017-04-24 22:16:03 -04:00
Thomas Fussell
be59d522a6
still working. It's starting to come together
2017-04-24 19:23:51 -04:00
Thomas Fussell
c642db6cc2
continue fleshing out cdf writing, getting close now...
2017-04-24 16:06:58 -04:00
Thomas Fussell
16e1a1f124
intermediate commit
2017-04-24 08:50:10 -04:00
Thomas Fussell
8f4f24c180
start wiring up directory tree during writing
2017-04-23 20:51:50 -04:00
Thomas Fussell
c020d31f58
delete allocation table class
2017-04-23 20:27:16 -04:00
Thomas Fussell
322190d386
remove header offset and set sector size before loading master allocation table sectors
2017-04-23 18:56:31 -04:00
Thomas Fussell
126f22816b
intermediate commit
2017-04-23 18:18:35 -04:00
Thomas Fussell
2fc692d694
separate compound file into a reader and a writer class
2017-04-23 16:56:01 -04:00
Thomas Fussell
be11002a93
fix clang warnings
2017-04-23 11:53:52 -04:00
Thomas Fussell
f38dc4169b
finish rewriting pole, continue work on encryption
2017-04-22 20:43:26 -04:00
Thomas Fussell
89858e32b3
intermediate commit
2017-04-22 14:25:27 -04:00
Thomas Fussell
3a57242b68
clean up pole, get it ready for writing
2017-04-21 21:58:40 -04:00
Thomas Fussell
e2f733f6e0
intermediate commit
2017-04-21 19:52:02 -04:00
Thomas Fussell
4dedcd23dd
use some placeholder data for agile key
2017-04-20 14:49:38 -04:00
Thomas Fussell
b26d764624
fix some gcc problems
2017-04-20 14:12:59 -04:00
Thomas Fussell
b2a5110939
organize detail files, start wiring up encryption logic
2017-04-20 14:03:03 -04:00
Thomas Fussell
40ba1012b3
move endian swap to a separate function
2017-04-19 16:55:41 -04:00
Thomas Fussell
868f661be7
use /usr/local as the default CMAKE_INSTALL_PREFIX, #138
2017-04-19 16:54:51 -04:00
Thomas Fussell
607e069b33
fix two crypto related todos
2017-04-19 16:00:33 -04:00
Thomas Fussell
ca17462f43
add missing include for std::transform
2017-04-18 20:11:16 -04:00
Thomas Fussell
83ea1ff58e
implement password verification for standard encrypted xlsx files
2017-04-18 19:50:37 -04:00
Thomas Fussell
adda7b877a
add meta tests (tests that test test functions), optimize sha calls, test incorrect passwords
2017-04-18 18:30:54 -04:00
Thomas Fussell
b0f1bf4b77
include headers for memcpy and size_t in sha implementations
2017-04-13 22:31:44 -04:00
Thomas Fussell
28cee5f14b
use platform-dependent byteswap
2017-04-13 21:59:09 -04:00
Thomas Fussell
3b2a0ac5d6
switch to much faster project nayuki sha implementations
2017-04-13 21:45:07 -04:00
Thomas Fussell
c68aa8fc84
finish wiring up tests
2017-04-13 19:24:20 -04:00
Thomas Fussell
b85680c5ed
start rewiring tests
2017-04-13 19:01:30 -04:00
Thomas Fussell
62f659b901
fix some rough edges
2017-04-13 14:57:27 -04:00
Thomas Fussell
835e36d6ae
initial commit withou cxxtest
2017-04-13 14:51:35 -04:00
Thomas Fussell
46df18c12b
improve unicode tests
2017-04-13 10:58:40 -04:00
Thomas Fussell
8bf7d0c7a6
oops, forgot to include the locale, #144
2017-04-12 19:48:00 -04:00
Thomas Fussell
8b1c6c7465
a little platform dependent magic to fix build problems, affects #144
2017-04-12 19:44:18 -04:00
Thomas Fussell
5b9304960c
accept utf8 passwords for decrypting workbooks, #144
2017-04-12 19:21:21 -04:00
Thomas Fussell
5450a23be1
apparently pArray is used in debug builds
2017-04-11 18:13:38 -04:00
Thomas Fussell
fd737912ce
fix some vs-specific problems
2017-04-11 18:10:24 -04:00
Thomas Fussell
4b174ab268
fix misleading indentation in miniz, missing header, and missing forward declarations
2017-04-11 18:04:05 -04:00
Thomas Fussell
05fb40438c
Merge branch 'master' of github.com:tfussell/xlnt
2017-04-11 17:57:56 -04:00
Thomas Fussell
cdcd49305d
add base64 license
2017-04-11 17:55:52 -04:00
Thomas Fussell
9fa9343d89
fix some stuff
2017-04-11 17:49:07 -04:00
Thomas Fussell
4c40651451
add license header to some crypto files
2017-04-11 16:58:09 -04:00
Thomas Fussell
be0c1ac03a
remove unused headers
2017-04-11 16:10:57 -04:00
Thomas Fussell
a7cd2c9ee5
link in libstudxml as object files
2017-04-11 16:04:17 -04:00
Thomas Fussell
077e181617
pare down ltc
2017-04-11 14:23:54 -04:00
Thomas Fussell
0d65569857
pare down ltc
2017-04-11 14:14:36 -04:00
Thomas Fussell
ea7b7074f0
pare down ltc
2017-04-11 13:48:09 -04:00
Thomas Fussell
36dc88cf24
pare down ltc
2017-04-11 13:35:50 -04:00
Thomas Fussell
cc165dbb67
pare down ltc
2017-04-11 13:11:05 -04:00
Thomas Fussell
c57e1a2bbe
pare down ltc
2017-04-11 12:38:20 -04:00
Thomas Fussell
3e2a0fc15f
pare down ltc
2017-04-11 12:02:35 -04:00
Thomas Fussell
83cbc3f7eb
organize files
2017-04-11 11:26:57 -04:00
Thomas Fussell
fc4d284615
begin removing external dependencies
2017-04-11 11:08:16 -04:00
Thomas Fussell
116106d568
fix conditional_format redefinition warning and don't try to write conditional formats for a worksheet without a stylesheet
2017-04-03 19:49:38 -04:00
Thomas Fussell
d54ddea5cc
Merge branch 'master' of http://github.com/tfussell/xlnt
2017-04-03 19:24:46 -04:00
Thomas Fussell
9766daacd5
initial implementation of conditional formatting plus a nifty little sample of converting images to workbooks
2017-04-03 19:24:36 -04:00
Thomas Fussell
83d2d18d1f
finish documenting all headers (well enough). closes #28
2017-03-30 23:52:57 -04:00
Thomas Fussell
c3d9b85530
document some style classes, start implementing builtin styles more correctly
2017-03-26 10:30:26 -04:00
Thomas Fussell
1121bcbe15
boring boring documentation
2017-03-25 11:22:21 -04:00
Thomas Fussell
4ca534a83a
fix size_t to row_t/column_t::index_t conversion warning
2017-03-23 20:13:05 -04:00
Thomas Fussell
0d82aba640
improve 1d and 2d cell iteration for #135 , including making empty cell skipping optional
2017-03-23 20:05:25 -04:00
Thomas Fussell
c7f61e38c1
restore worksheet::cell(column_t, row_t) method ( #137 ) and move some single use classes/structs/enums into parent header
2017-03-22 21:44:59 -04:00
Thomas Fussell
c9dc05597b
ignore unknown documentation command warning for clang
2017-03-22 21:42:36 -04:00
Thomas Fussell
3cfcc7246c
clean up travis adding a build matrix
2017-03-22 21:41:00 -04:00
Thomas Fussell
e8204133a9
switch xlsx_producer cell value call, how many more can there be?
2017-03-21 19:58:16 -04:00
Thomas Fussell
fcf4d424ff
also remove some cell getter template specializations
2017-03-21 19:51:16 -04:00