Compare versions · code and quality diff
writexl
Major bump Structure
Exported functions ⓘ4→50+46
Internal functions ⓘ7→236+229
Total lines ⓘ53,038→80,469+27,431
R lines ⓘ166→8,848+8,682
Compiled (src) lines ⓘ52,734→57,811+5,077
Test lines ⓘ47→9,561+9,514
Namespace changes+46
added (46)
is_xl_commentis_xl_formatis_xl_rich_stringxl_alignxl_borderxl_cell_generalxl_chartxl_chart_axisxl_chart_error_barsxl_chart_labelxl_chart_labelsxl_chart_legendxl_chart_markerxl_chart_seriesxl_chart_tablexl_chart_trendlinexl_chartsheetxl_col_specxl_colorxl_commentxl_cond_barxl_cond_cellxl_cond_iconsxl_cond_scalexl_fillxl_filterxl_filter_keepxl_fontxl_formatxl_hyperlink_cellxl_imagexl_mergexl_num_formatxl_outlinexl_page_setupxl_propertiesxl_protectionxl_rich_runxl_rich_stringxl_row_specxl_sheetxl_sheet_viewxl_tablexl_table_columnxl_validationxl_workbookSymbols listed are the exported names whose presence in NAMESPACE changed between the two versions. Net export delta is +46 (46 added, 0 removed).
Files changed (208 files)+33629−1001
DESCRIPTION+16−9LICENSE+2−2MD5+206−79NAMESPACE+97−15NEWS−51NEWS.md+227R/excel_types.R+147−81R/sheet_names.R+97R/sheet_visibility.R+82R/split_panes.R+84R/version.R+17−16R/write_xlsx.R+424−69R/xl_cell_general.R+581R/xl_chart.R+652R/xl_chart_axis.R+366R/xl_chart_extras.R+202R/xl_chart_format.R+240R/xl_chart_parts.R+504R/xl_chartsheet.R+189R/xl_comment.R+169R/xl_conditional.R+439R/xl_filter.R+434R/xl_format.R+596R/xl_image.R+434R/xl_merge.R+106R/xl_outline.R+102R/xl_page_setup.R+422R/xl_range.R+308R/xl_rich_string.R+162R/xl_sheet.R+656R/xl_sheet_view.R+108R/xl_table.R+641R/xl_validation.R+316R/xl_workbook.R+370build/vignette.rdsinst/AUTHORS+5−5inst/COPYRIGHT+1−141inst/WORDLIST+87−5inst/doc/a-getting-started.R+24inst/doc/a-getting-started.Rmd+129inst/doc/a-getting-started.html+493inst/doc/b-formatting.R+52inst/doc/b-formatting.Rmd+146inst/doc/b-formatting.html+497inst/doc/c-worksheets-workbooks.R+60inst/doc/c-worksheets-workbooks.Rmd+174inst/doc/c-worksheets-workbooks.html+513inst/doc/d-charts-images.R+69inst/doc/d-charts-images.Rmd+222inst/doc/d-charts-images.html+572inst/doc/e-formulas-and-more.R+51inst/doc/e-formulas-and-more.Rmd+170inst/doc/e-formulas-and-more.html+510inst/doc/f-everything-at-once.R+172inst/doc/f-everything-at-once.Rmd+241inst/doc/f-everything-at-once.html+559man/is_xl_comment.Rd+26man/is_xl_format.Rd+24man/write_xlsx.Rd+86−46man/writexl.Rd+11−11man/xl_cell_general.Rd+163man/xl_chart.Rd+160man/xl_chart_axis.Rd+149man/xl_chart_error_bars.Rd+56man/xl_chart_labels.Rd+96man/xl_chart_legend.Rd+58man/xl_chart_marker.Rd+49man/xl_chart_series.Rd+94man/xl_chart_table.Rd+54man/xl_chart_trendline.Rd+76man/xl_chartsheet.Rd+73man/xl_color.Rd+34man/xl_colrow_spec.Rd+90man/xl_comment.Rd+85man/xl_conditional.Rd+174man/xl_filter.Rd+98man/xl_filter_keep.Rd+64man/xl_format.Rd+52man/xl_format_groups.Rd+163man/xl_formula.Rd+88−34man/xl_image.Rd+111man/xl_merge.Rd+53man/xl_outline.Rd+48man/xl_page_setup.Rd+136man/xl_properties.Rd+122man/xl_rich_run.Rd+37man/xl_rich_string.Rd+54man/xl_sheet.Rd+163man/xl_sheet_view.Rd+94man/xl_table.Rd+95man/xl_table_column.Rd+72man/xl_validation.Rd+110man/xl_workbook.Rd+49src/Makevars+16−15src/libxlsxwriter/License.txt+208src/libxlsxwriter/include/xlsxwriter.h+5−4src/libxlsxwriter/include/xlsxwriter/app.h+2−1src/libxlsxwriter/include/xlsxwriter/chart.h+134−1src/libxlsxwriter/include/xlsxwriter/chartsheet.h+2−1src/libxlsxwriter/include/xlsxwriter/comment.h+2−1src/libxlsxwriter/include/xlsxwriter/common.h+9−5src/libxlsxwriter/include/xlsxwriter/content_types.h+3−1src/libxlsxwriter/include/xlsxwriter/core.h+2−1src/libxlsxwriter/include/xlsxwriter/custom.h+2−1src/libxlsxwriter/include/xlsxwriter/drawing.h+2−1src/libxlsxwriter/include/xlsxwriter/format.h+34−3src/libxlsxwriter/include/xlsxwriter/hash_table.h+2−1src/libxlsxwriter/include/xlsxwriter/metadata.h+5−1src/libxlsxwriter/include/xlsxwriter/packager.h+6−1src/libxlsxwriter/include/xlsxwriter/relationships.h+3−1src/libxlsxwriter/include/xlsxwriter/rich_value.h+51src/libxlsxwriter/include/xlsxwriter/rich_value_rel.h+50src/libxlsxwriter/include/xlsxwriter/rich_value_structure.h+53src/libxlsxwriter/include/xlsxwriter/rich_value_types.h+49src/libxlsxwriter/include/xlsxwriter/shared_strings.h+2−1src/libxlsxwriter/include/xlsxwriter/styles.h+2−1src/libxlsxwriter/include/xlsxwriter/table.h+2−1src/libxlsxwriter/include/xlsxwriter/theme.h+2−1src/libxlsxwriter/include/xlsxwriter/third_party/emyg_dtoa.h+26src/libxlsxwriter/include/xlsxwriter/third_party/ioapi.h+5−5src/libxlsxwriter/include/xlsxwriter/third_party/md5.hsrc/libxlsxwriter/include/xlsxwriter/third_party/queue.hsrc/libxlsxwriter/include/xlsxwriter/third_party/tmpfileplus.hsrc/libxlsxwriter/include/xlsxwriter/third_party/tree.hsrc/libxlsxwriter/include/xlsxwriter/third_party/zip.h+1−1src/libxlsxwriter/include/xlsxwriter/utility.h+58−7src/libxlsxwriter/include/xlsxwriter/vml.h+2−1src/libxlsxwriter/include/xlsxwriter/workbook.h+56−2src/libxlsxwriter/include/xlsxwriter/worksheet.h+159−13src/libxlsxwriter/include/xlsxwriter/xmlwriter.h+11−10src/libxlsxwriter/src/app.c+2−1src/libxlsxwriter/src/chart.c+356−59src/libxlsxwriter/src/chartsheet.c+2−1src/libxlsxwriter/src/comment.c+2−1src/libxlsxwriter/src/content_types.c+22−1src/libxlsxwriter/src/core.c+2−1src/libxlsxwriter/src/custom.c+2−1src/libxlsxwriter/src/drawing.c+7−3src/libxlsxwriter/src/format.c+21−1src/libxlsxwriter/src/hash_table.c+2−1src/libxlsxwriter/src/metadata.c+176−20src/libxlsxwriter/src/packager.c+306−6src/libxlsxwriter/src/relationships.c+25−1src/libxlsxwriter/src/rich_value.c+191src/libxlsxwriter/src/rich_value_rel.c+142src/libxlsxwriter/src/rich_value_structure.c+162src/libxlsxwriter/src/rich_value_types.c+199src/libxlsxwriter/src/shared_strings.c+2−1src/libxlsxwriter/src/styles.c+23−2src/libxlsxwriter/src/table.c+2−1src/libxlsxwriter/src/theme.c+2−1src/libxlsxwriter/src/utility.c+136−46src/libxlsxwriter/src/vml.c+2−1src/libxlsxwriter/src/workbook.c+191−10src/libxlsxwriter/src/worksheet.c+502−24src/libxlsxwriter/src/xmlwriter.c+17−22src/libxlsxwriter/third_party/md5/md5.csrc/libxlsxwriter/third_party/md5/md5.hsrc/libxlsxwriter/third_party/minizip/ioapi.csrc/libxlsxwriter/third_party/minizip/ioapi.h+5−5src/libxlsxwriter/third_party/minizip/zip.csrc/libxlsxwriter/third_party/minizip/zip.h+1−1src/libxlsxwriter/third_party/tmpfileplus/tmpfileplus.csrc/libxlsxwriter/third_party/tmpfileplus/tmpfileplus.hsrc/write_xlsx.c+2208−97tests/spelling.R+1−1tests/testthat.R+12−4tests/testthat/helper-xlsx.R+43tests/testthat/test-api-consistency.R+124tests/testthat/test-cell-general.R+796tests/testthat/test-cell-vector.R+188tests/testthat/test-format-cell.R+145tests/testthat/test-format-protect.R+111tests/testthat/test-format-workbook.R+383tests/testthat/test-format-worksheet.R+284tests/testthat/test-integration.R+223tests/testthat/test-libxlsxwriter-coverage.R+150tests/testthat/test-limits.R+30tests/testthat/test-na.R+208tests/testthat/test-performance.R+16−9tests/testthat/test-print.R+90tests/testthat/test-sheet-names.R+146tests/testthat/test-sheet-view.R+292tests/testthat/test-types.R+294−33tests/testthat/test-xl_chart.R+745tests/testthat/test-xl_chart_axis.R+309tests/testthat/test-xl_chart_extras.R+263tests/testthat/test-xl_chart_format.R+278tests/testthat/test-xl_chart_parts.R+345tests/testthat/test-xl_chartsheet.R+306tests/testthat/test-xl_comment.R+226tests/testthat/test-xl_conditional.R+429tests/testthat/test-xl_filter.R+453tests/testthat/test-xl_format.R+243tests/testthat/test-xl_image.R+387tests/testthat/test-xl_merge.R+151tests/testthat/test-xl_outline.R+132tests/testthat/test-xl_page_setup.R+459tests/testthat/test-xl_range.R+198tests/testthat/test-xl_rich_string.R+207tests/testthat/test-xl_table.R+593tests/testthat/test-xl_validation.R+301vignettes/a-getting-started.Rmd+129vignettes/b-formatting.Rmd+146vignettes/c-worksheets-workbooks.Rmd+174vignettes/d-charts-images.Rmd+222vignettes/e-formulas-and-more.Rmd+170vignettes/f-everything-at-once.Rmd+241Lines added and removed per file, summed across the versions between the two compared releases.
Languages
R functions ⓘ13→293+280
C++ functions ⓘ0→0no change
C functions ⓘ1,187→1,323+136
Fortran functions ⓘ0→0no change
Rust functions ⓘ0→0no change
Compiled share ⓘ99.4%→71.8%−27.6pp
Documentation
Doc lines ⓘ91→3,167+3,076
Roxygen coverage ⓘ100%→100%no change
References coverage ⓘ0%→0%no change
Examples coverage ⓘ66.7%→91.9%+25.2pp
Help pages with examples ⓘ2→34+32
Undocumented params lower is better ⓘ8.3%→16.8%+8.5pp
Value docs ⓘ0%→91.9%+91.9pp
pkgdown site ⓘNo→Nono change
README ⓘNo→Nono change
Vignettes ⓘNo→Yesadded
NEWS file ⓘYes→Yesno change
Testing
Test cases ⓘ3→819+816
Test/code ratio ⓘ0.28→1.08+0.80
Snapshot tests ⓘ0→0no change
Has tests ⓘYes→Yesno change
testthat edition ⓘ–→3–
Exported fn test linkage ⓘ75%→100%+25pp
Complexity
Cyclomatic mean lower is better ⓘ2.31→6.51+4.20
Cyclomatic max lower is better ⓘ7→55+48
Cyclomatic median lower is better ⓘ1→4+3
Lines per function (mean) lower is better ⓘ7.15→18.04+10.89
Call graph
Functions (nodes) ⓘ13→293+280
Call edges ⓘ2→517+515
Max function degree ⓘ2→46+44
Mean function degree ⓘ0.31→3.53+3.22
Isolated functions ⓘ10→31+21
Connected components ⓘ1→5+4
Native call sites ⓘ3→3no change
Object system
S3 methods ⓘ6→42+36
S4 classes ⓘ0→0no change
S4 generics ⓘ0→0no change
S4 methods ⓘ0→0no change
R6 classes ⓘ0→0no change
S7 classes ⓘ0→0no change
RC classes ⓘ0→0no change
Quality & risk
Unsafe pattern score lower is better ⓘ0→0no change
Secret pattern count lower is better ⓘ0→0no change
Global-state write density lower is better ⓘ0.00→0.00no change
Deprecated idiom density lower is better ⓘ0.00→0.00no change
Triple-colon uses lower is better ⓘ0→0no change
Continuous integration
CI present ⓘNo→Nono change
CI matrix breadth ⓘ0→0no change
Dependencies+5
Direct dependencies lower is better ⓘ0→0no change
Dependency drift ⓘ–→0–
Package sets are compared per dependency type from the DESCRIPTION of each version. Version constraints and the base R requirement are omitted.
Requirements
System requirements ⓘ1→1no change
SPDX valid ⓘYes→Yesno change
OSI approved ⓘYes→Yesno change
License file complete ⓘNo→Nono change
People
Authors2→3+1
Bill Denney
Release metadata
Package
writexl
Version
1.5.4→2.0.0
Released
2025-04-15→2026-08-05
Maintainer
Bill Denney
License
BSD_2_clause + file LICENSE
Download size
272 KB
65 comparison rows · 8 improved, 5 regressed, 4 added, 0 removed, 48 unchanged. Hover any metric for its definition, or see the full glossary.