Skip to content

Update XLSX requirement from 0.12 to 0.12, 0.13 - #70

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/julia/XLSX-0.12-and-0.13
Open

dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/julia/XLSX-0.12-and-0.13

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 12, 2026

Copy link
Copy Markdown

Updates the requirements on XLSX to permit the latest version.

Release notes

Sourced from XLSX's releases.

v0.13.1

v0.13.1 - 2026-10-07

  • Fix #462 (Read-performance regression vs v0.10.4 on large worksheets)
  • Fix #472 (Worksheets with CRLF line endings were corrupted when split, and precompilation failed, with XML.jl versions that normalise line endings)
  • Faster reads of worksheets that have no <dimension> element. #470 found the missing dimension with an extra pass that built every cell; it is now recorded during the sheet's first read, so uncached ws[:] on a 20,000-row sheet takes 99 ms instead of 266 ms. Sheets with a dimension are unaffected
  • Faster uncached reads (enable_cache=false). Each read now makes one pass over the worksheet and decodes only the cells it returns. Measured on a 50,000 × 70 sheet:
    • Ranges: ws["A25000:C25010"] takes 0.4 s instead of 2.4 s.
    • Non-contiguous selections: ws[1:10000:50001, 1:10:70] takes 0.9 s instead of 20 s, because it no longer re-reads the file for every cell.
    • eachrow: about twice as fast.
    • eachtablerow and gettable: 1.5× faster, or 2-2.5× faster over a few columns.
  • Fix uncached getcellrange and getcell with several rows, which returned empty cells for every row after one absent from the file
  • Fix uncached reads that lost formulas recorded in wb.formulas: the row iterator merged them only every 500 rows, so those after the last merge were dropped
  • find_row on an uncached sheet now raises XLSXError for an absent row, rather than ArgumentError
  • Uncached range, cell and table reads no longer raise an error for an invalid cell outside the cells they return, as readtable already did. Uncached reads assume rows are in ascending order, as the spec requires and Excel writes
  • Numeric cell values are now parsed with Parsers.jl (new dependency, v2.8 or v3), giving results identical to Base.parse
  • Fix Tables.getcolumn(row, i) on eachtablerow rows, which threw a MethodError for every integer index
  • Column numbers and row ranges outside Excel's limits are now rejected (e.g. CellRef(1, 20000) no longer gives ]OF1)
  • An invalid reference passed to setdata! with a vector now raises XLSXError rather than UndefVarError
  • Assigning an AnnotatedString whose colour names a face without its own foreground (e.g. styled"{(foreground=highlight):x}") no longer throws a MethodError
  • Faces whose foregrounds name each other in a cycle no longer cause a stack overflow when assigned as an AnnotatedString; the text is written without a colour
  • Modest tidy-up of Charts docs
  • Fix setConditionalFormat crash on files with a trailing newline or comment after </worksheet>
  • Fix adding a dataBar or icon set to a reopened file that already has one
  • Fix the first rule added to an existing range of a reopened file being lost
  • Excel 2010 conditional formats now go in the correct <ext>
  • Ids generated after reopening no longer duplicate existing ones
  • Fix files Excel refused after clearConditionalFormats removed every dataBar
  • addtable! rejects table names that are cell addresses (e.g. T1, R1C1)
  • addDefinedName rejects R1C1-style names (e.g. RC, R)
  • writetable(...; as_table=true) auto-names a table whose sheet name is a cell address
  • addtable! with has_totals_row=true now errors if the last row has content
  • setSeriesSubtotals and setSeriesQuartileMethod reject series of the wrong layout
  • addtable! and writetable!(...; as_table=true) now raise an error if the table would overlap a merged range or another table, and mergeCells if the range would overlap a table. Excel used to discard such tables when it repaired the file on opening. writetable! checks before writing, so a refused table leaves the sheet unchanged
Changelog

Sourced from XLSX's changelog.

v0.13.1 - 2026-10-07

  • Fix #462 (Read-performance regression vs v0.10.4 on large worksheets)
  • Fix #472 (Worksheets with CRLF line endings were corrupted when split, and precompilation failed, with XML.jl versions that normalise line endings)
  • Faster reads of worksheets that have no <dimension> element. #470 found the missing dimension with an extra pass that built every cell; it is now recorded during the sheet's first read, so uncached ws[:] on a 20,000-row sheet takes 99 ms instead of 266 ms. Sheets with a dimension are unaffected
  • Faster uncached reads (enable_cache=false). Each read now makes one pass over the worksheet and decodes only the cells it returns. Measured on a 50,000 × 70 sheet:
    • Ranges: ws["A25000:C25010"] takes 0.4 s instead of 2.4 s.
    • Non-contiguous selections: ws[1:10000:50001, 1:10:70] takes 0.9 s instead of 20 s, because it no longer re-reads the file for every cell.
    • eachrow: about twice as fast.
    • eachtablerow and gettable: 1.5× faster, or 2-2.5× faster over a few columns.
  • Fix uncached getcellrange and getcell with several rows, which returned empty cells for every row after one absent from the file
  • Fix uncached reads that lost formulas recorded in wb.formulas: the row iterator merged them only every 500 rows, so those after the last merge were dropped
  • find_row on an uncached sheet now raises XLSXError for an absent row, rather than ArgumentError
  • Uncached range, cell and table reads no longer raise an error for an invalid cell outside the cells they return, as readtable already did. Uncached reads assume rows are in ascending order, as the spec requires and Excel writes
  • Numeric cell values are now parsed with Parsers.jl (new dependency, v2.8 or v3), giving results identical to Base.parse
  • Fix Tables.getcolumn(row, i) on eachtablerow rows, which threw a MethodError for every integer index
  • Column numbers and row ranges outside Excel's limits are now rejected (e.g. CellRef(1, 20000) no longer gives ]OF1)
  • An invalid reference passed to setdata! with a vector now raises XLSXError rather than UndefVarError
  • Assigning an AnnotatedString whose colour names a face without its own foreground (e.g. styled"{(foreground=highlight):x}") no longer throws a MethodError
  • Faces whose foregrounds name each other in a cycle no longer cause a stack overflow when assigned as an AnnotatedString; the text is written without a colour
  • Modest tidy-up of Charts docs
  • Fix setConditionalFormat crash on files with a trailing newline or comment after </worksheet>
  • Fix adding a dataBar or icon set to a reopened file that already has one
  • Fix the first rule added to an existing range of a reopened file being lost
  • Excel 2010 conditional formats now go in the correct <ext>
  • Ids generated after reopening no longer duplicate existing ones
  • Fix files Excel refused after clearConditionalFormats removed every dataBar
  • addtable! rejects table names that are cell addresses (e.g. T1, R1C1)
  • addDefinedName rejects R1C1-style names (e.g. RC, R)
  • writetable(...; as_table=true) auto-names a table whose sheet name is a cell address
  • addtable! with has_totals_row=true now errors if the last row has content
  • setSeriesSubtotals and setSeriesQuartileMethod reject series of the wrong layout
  • addtable! and writetable!(...; as_table=true) now raise an error if the table would overlap a merged range or another table, and mergeCells if the range would overlap a table. Excel used to discard such tables when it repaired the file on opening. writetable! checks before writing, so a refused table leaves the sheet unchanged

v0.13.0 - 2026-09-02

Chart support, read-only in v0.12, now covers formatting and creation, in a new XLSX.Charts sub-module (using XLSX, XLSX.Charts). Chart support remains experimental; see Limitations in the manual.

Breaking changes

These may need changes to existing code:

  • getCharts now also returns chartEx charts, as a Vector{AbstractChart}. Code that assumed every element is a Chart should check with isa.
  • getDefinedNames and getAllDefinedNames exclude names Excel maintains for itself (hidden names and the _xlnm. built-ins); pass include_system=true for the old behaviour. deleteDefinedName and deleteAllDefinedNames refuse them unless force=true, and addDefinedName refuses to create them.
  • getConditionalFormats returns Vector{Pair{Union{CellRange,NonContiguousRange},...}} rather than Vector{Pair{CellRange,...}}.

... (truncated)

Commits
  • b8f8a74 Bug fixing in prep for v0.13.1
  • bfbf69c Update Changelog.
  • 9ddceef Prevent tables overlaping merged cells.
  • 8aa04a0 Extend Parsers compat back to v2.8 and v3
  • abb12d5 MKisc bug-fixes (see Changelog.md for details).
  • df8a6ab Merge Benchmark folder into bench.
  • 99a313a Further performance for no-cache reading.
  • 34174dd Record a missing worksheet dimension during the first read (#474)
  • 44829f0 Fix #472 (failure to compile with XML.jl) (#473)
  • ccc4646 Fix read-performance regression (#462) (#471)
  • Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Updates the requirements on [XLSX](https://github.com/JuliaData/XLSX.jl) to permit the latest version.
- [Release notes](https://github.com/JuliaData/XLSX.jl/releases)
- [Changelog](https://github.com/JuliaData/XLSX.jl/blob/master/CHANGELOG.md)
- [Commits](JuliaData/XLSX.jl@v0.12.0...v0.13.1)

---
updated-dependencies:
- dependency-name: XLSX
  dependency-version: 0.13.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file julia Pull requests that update julia code labels Oct 12, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file julia Pull requests that update julia code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants