Skip to content

Conversation

TimG1964
Copy link
Contributor

@TimG1964 TimG1964 commented Jun 7, 2025

Builds on everything in #298 and adds the following:

  • Minor refactor of setFormatAttribute family of functions to more than double speed.
  • Reduce reliance on eachrow to iterate through sheets. Indexing into the worksheet cache (where possible) is generally faster.
  • Make clearer separation between iterating a file stream vs through the cache.
  • Refactor setConditionalFormat to pass a Dict of keyword options as discussed here to speed up compilation a little.
  • Add a copysheet! function to make a copy of a worksheet in an XLSXFile.
  • Change the XLSXFile.source of XLSXFiles created with newxlsx to be located in pwd() rather than _relocatable_data_path
  • Include code proposed in issue 299, empty v element #300 and Unescape formula, issue 301 #302

TimG1964 added 30 commits March 3, 2025 15:47
was itself fixed (as yet untested).
Copy link

codecov bot commented Jun 7, 2025

Codecov Report

Attention: Patch coverage is 90.75819% with 206 lines in your changes missing coverage. Please review.

Project coverage is 93.54%. Comparing base (f4767c4) to head (49aac9a).
Report is 14 commits behind head on master.

Files with missing lines Patch % Lines
src/cellformat-helpers.jl 93.57% 42 Missing ⚠️
src/worksheet.jl 87.80% 30 Missing ⚠️
src/cellref.jl 87.00% 26 Missing ⚠️
src/workbook.jl 86.09% 21 Missing ⚠️
src/write.jl 94.36% 21 Missing ⚠️
src/read.jl 88.97% 14 Missing ⚠️
src/cell.jl 54.54% 10 Missing ⚠️
src/styles.jl 81.13% 10 Missing ⚠️
src/conditional-format-helpers.jl 95.96% 9 Missing ⚠️
src/relationship.jl 77.27% 5 Missing ⚠️
... and 5 more
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #304      +/-   ##
==========================================
- Coverage   95.02%   93.54%   -1.48%     
==========================================
  Files          15       19       +4     
  Lines        2009     5715    +3706     
==========================================
+ Hits         1909     5346    +3437     
- Misses        100      369     +269     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

TimG1964 added 6 commits June 11, 2025 12:47
and allow cells containing only spaces retain their value.
(JuliaComputing/XML.jl#43)

Can now write cells containing only whitespage characters or with leading or trailing whitespace.
Cannot see these things in cells read in from existing Excel files - XML removes leading whitespace
even if `xml:space="preserve"` is specified.
Thus a cell containing "    " will be read in as missing. A cell containing "  hello" will become "hello".
@TimG1964
Copy link
Contributor Author

TimG1964 commented Jun 21, 2025

I've tried to work around issue 43 in XML.jl but can't do this completely. There was an issue in the handling of blank (whitespace only) strings in XLSX, too (#308), which I've tried to fix.

  • Can now write cells containing only whitespace characters or with leading or trailing whitespace.
  • Cannot see these things in cells read in from existing Excel files - XML removes leading whitespace even if xml:space="preserve" is specified.
  • Thus a cell containing " " will be read in as missing. A cell containing " hello" will become "hello".

@TimG1964
Copy link
Contributor Author

I've made a PR to XML.jl to try to fix the issue with xml:space-"preserve". I'll add some tests for this if the PR gets merged.

@TimG1964 TimG1964 mentioned this pull request Jul 4, 2025
@TimG1964 TimG1964 closed this Jul 4, 2025
@TimG1964 TimG1964 deleted the Looking-at-incremental-performance branch September 12, 2025 20:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant