jandrew / Spreadsheet-XLSX-Reader-LibXML

Read spreadsheet files with xlsx extentions
Other
4 stars 2 forks source link

Move all of the Temp::Dir management to Archive::Zip methods #3

Closed jandrew closed 9 years ago

jandrew commented 9 years ago

Using both Archive::Zip and File::Temp::Dir together seem to create temp dir conflicts in cleanup. Attempt to resolve this by calling all filehandle and dir creation through Archive::Zip. Currently the data sources are just exposed by Archive::Zip and then extracted through hard coded (expected) location to a file handle through File::Temp.

Ultimately this architecture should lend itself to parsing XML sheets meant to be read by Excel but not generated by Excel. Specifically some non-Microsoft Excel data generators build files that can be read by Microsoft Excel but are written and saved as one continuous XML file rather than a zipped set of files. The value of a single pluggable interface here should allow XML::LibXML to emulate separate sets of a single file in place of multiple file handles. (Issue #4)

jandrew commented 9 years ago

This may result in a file lock on the top level .xlsx file for the whole time the file is read. Since this matches the Spreadsheet::ParseExcel behaviour it should be OK.