Migration Guide
Migrating from v0.10 to v0.11
There is only one breaking change in v0.11.0.
infer_eltypesnow defaults totrue(e.g. ingettableandreadtable). This is the more common use case but, if it is not your use case you will need explicitly to setinfer_eltypes = falsein the relevant functions.
All other changes either introduce new functionality (documented elsewhere) or relate to internals only.
Migrating Legacy Code to v0.8+
The sections below were written as a guide to describe migrating from a pre v0.8 version of XLSX.jl to v0.8. They are largely only historic now.
Version v0.8 introduced a breaking change on methods XLSX.gettable and XLSX.readtable.
These methods used to return a tuple data, column_labels. On XLSX v0.8 these methods return a XLSX.DataTable struct that implements Tables.jl interface.
Basic code replacement
Before
data, col_names = XLSX.readtable(joinpath(data_directory, "general.xlsx"), "table4")After
dtable = XLSX.readtable(joinpath(data_directory, "general.xlsx"), "table4")
data, col_names = dtable.data, dtable.column_labelsReading DataFrames
Since XLSX.DataTable implements Tables.jl interface, the result of XLSX.gettable or XLSX.readtable can be passed to a DataFrame constructor.
Before
df = DataFrame(XLSX.readtable("myfile.xlsx", "mysheet")...)After
df = DataFrame(XLSX.readtable("myfile.xlsx", "mysheet"))