Skip to content

Releases: JanMarvin/openxlsx2

v1.2

29 Nov 11:30
69ff56b
Compare
Choose a tag to compare

Release 1.2 brings the usual bug fixes and some improvements to pivot tables and copy cells.

Since its first implementation, wb_add_pivot_table() has undergone a number of unfortunately still largely undocumented changes. It is now possible to select outline and compact to change the appearance of the pivot table and to select subsets of data to be included with choose. This also works with slicers and is a nice feature for pre-selecting pivot tables. Note, however, that this does not work with pivot tables loaded via wb_load() and that support for modifying these loaded pivot tables is not currently planned.

Another function that has been reworked a little is wb_copy_cells(). This is another of the many sparsely documented functions, but actually one that has some nice features. For example, similar to copying cells in spreadsheet programs, it is possible to copy the cell as a value or as is. It is also possible to copy cells as references and it is also possible to transpose what is being copied.

Some long overlooked escaping issue with class(df$x) <- "formula" was fixed. Which strangely didn't bother anybody for several months, but once the first report came in and was fixed, various duplicates of this issue appeared. Thanks to @olivroy options for min and max width were restored. And since this release it is also possible to use openxlsx2 with webr (see #849 for details).

A lot of time went into various bug fixes, cleanups, and minor improvements here and there. A number of the fixes and features were developed based on user requests and needs. If you find a bug, please let us know!

The release 1.2 is the 14th openxlsx2 release which is available under CRAN. Even though the package is now now semi-stable, it is always a good idea to make regular backups and check output files regularly. A look at the issue tracker and the NEWs is recommended in any case.

What's Changed

Full Changelog: v1.1...v1.2

v1.1

23 Oct 10:41
ee9edb4
Compare
Choose a tag to compare

Release 1.1 is a release with many new features to try, in addition to the usual bug fixes and improvements to our existing code. Grouping columns is now a bit more user-friendly, we've updated the pugixml library, and our tests can be run in parallel again. We've added new functions for getting and setting file properties that improve and extend the existing ways to set them, a feature requested and worked on by @olivroy.

In addition, some long-requested features have been added. Reading xlsb files, cloning across workbooks, and adding slicers. Please be aware that all of these features are still somewhat experimental, have known limitations, and probably contain a few bugs. Therefore, if you try this, you should make more backups than usual and test the features more thoroughly than usual.

This release is the first to include our own xlsb file reader. With this it should be possible to load xlsb files similar to xlsx/xlsm files. Please be aware that this file parser is still limited (and probably will remain this way) and should only be considered as a sort of last resort when no other tool is available to convert the binary openxml file into a simple xlsx file. If you try this, please have a look at the NEWS file first.
Another long requested feature has been added in the form of cloning worksheets across workbooks. This extends the wb_clone_worksheet() function with a new from argument that allows copying worksheets across workbooks.
Last but not least, support for pivot tables has been further improved. It is now possible to sort by elements and it is possible to add a slicer to a pivot table after adding it.

A lot of time went into various bug fixes, cleanups, and minor improvements here and there. A number of the fixes and features were developed based on user requests and needs. If you find a bug, please let us know!

The release 1.1 is the 13th openxlsx2 release which is available under CRAN. Even though the package is now now semi-stable, it is always a good idea to make regular backups and check output files regularly. A look at the issue tracker and the NEWs is recommended in any case.

What's Changed

Full Changelog: v1.0...v1.1

v1.0

25 Aug 07:09
2265f42
Compare
Choose a tag to compare

Release 1.0 is finally here. While it's just a number in the grand scheme of things, the goal is that we've achieved a semi-stable API. This means that the public API will not change in the foreseeable future, unless pressing reasons force us to do so. That being said, a lot has been done and worked on in the last few weeks.

Thanks to the work of @olivroy, the long-neglected documentation in examples and vignettes has been overhauled and now looks better than ever. Examples have been added where they were missing and cleaned up where they were outdated. The entire pkgdown page has been reworked. Building on the consistent arguments work we did in the previous version, this really makes the version shine.

A lot of time went into various bug fixes, cleanups and minor improvements here and there. Among the few fixes, there is one that requires a detailed explanation. It was discovered that we were not handling the 1904 date format correctly. As a result, our dates were always 4 years off for this date format, which was mainly used by Excel on the Mac. That's a little shameful that it took so long and came up rather by accident. Hopefully it's a sign that this format is rarely used. However, it's certainly a reminder that no code is error-free, not even the most scrutinized in the world, so it's always wise to remain vigilant and question unusual output. In addition, a number of fixes and features were developed based on user requests and needs. If you find an error, please let us know!

The release 1.0 is the twelfth openxlsx2 release which is available under CRAN. Even though the package is now now semi-stable, it is always a good idea to make regular backups and check output files regularly. A look at the issue tracker and the NEWs is recommended in any case.

What's Changed

Full Changelog: v0.8...v1.0

v0.8

07 Aug 10:16
8c8748d
Compare
Choose a tag to compare

Release 0.8 might be the last milestone on the way to 1.0 and brings a lot of changes and cleanups to the API and exported functions. Please note: If no drastic issues show up in bug reports in the coming days, the current API will become the 1.0 API, which will be semi-stable (i.e. if no changes are required, it will not change in the foreseeable future). The current changes were needed to streamline the API and provide a pleasant user experience.

Finally, the long overdue cleanup of arguments from camel case to snake case has been addressed. Hopefully this has been archived in a way that is backwards compatible and warnings and broken code should be limited. Basically, a function foo(camelCase=bar) is now foo(snake_case=bar), although for now it should accept both variants. The solution to this problem was to pass the arguments for camelCase to ... and convert them under the hood to variables for snake case. There are obviously some limitations to this approach, but we felt it was too close to a 1.0 release to break the API in such a drastic way.

Another addition is the introduction of wb_dims(), a helper function introduced for interacting with the dims argument of openxlsx2 workbook functions. Many of the previous row/rows, col/cols and xy variants are deprecated, and users are recommended to use dims either the simple A1 notation for cells with the existing helper functions like int2col() or the feature-rich wb_dims(). Thanks to the work of @olivroy, who improved the function in various commits, there is a detailed man page for this function with many examples of how to use it.

A lot of time went into various bug fixes, cleanups, and minor improvements here and there. A number of the fixes and features were developed based on user requests and needs. If you find a bug, please let us know!

The release 0.8 is the eleventh openxlsx2 release which is available under CRAN. However, the package is not yet fully stable. Until the stable version 1.0 there may still be changes in the API. A look at the issue tracker and the NEWs is recommended in any case.

What's Changed

New Contributors

Full Changelog: v0.7.1...v0.8

v0.7.1

30 Jun 08:02
2eb0a72
Compare
Choose a tag to compare

Release 0.7.1 is another milestone on the way to 1.0, bringing a few style improvements and the usual bug fixes.

The release introduces wb_add_named_style(), a new function to create named styles like Note or Title from openxlsx2. This function is accompanied by the introduction of workbook themes. The fmt_txt() function, introduced in release 0.7, has been improved to provide a class with print() and + methods. This should make it easier for the user to create and design workbooks.

Further optimizations have been made to the creation of conditional formatting. A new function wb_add_dxfs_style() has been introduced and color gradients can now be used to create conditional formatting styles. Objects with a label attribute are now treated according to the label, new (experimental) changes have been made to the creation of pivot table number formats and ordering.

A lot of time went into various bug fixes, cleanups, and minor improvements here and there. A number of the fixes and features were developed based on user requests and needs. If you find a bug, please let us know!

The release 0.7.1 is the tenth openxlsx2 release which is available under CRAN. However, the package is not yet fully stable. Until the stable version 1.0 there may still be changes in the API. A look at the issue tracker and the NEWs is recommended in any case.

What's Changed

Full Changelog: v0.7...v0.7.1

v0.7

26 May 08:17
4b9ee94
Compare
Choose a tag to compare

Release 0.7 brings many new features, alongside the usual bug fixes.

Formula handling has been greatly improved in wb_add_formula() to include cell metadata and ranges for array formulas. You can read about these features in the newly added formula vignette, which covers various types of formulas. In addition ,you might be interested in wb_add_ignore_error() to suppress unwanted evaluation errors in spreadsheet software.

In the style sections, fmt_txt() has been introduced as a new function to style parts of strings. An example of how to use this function is included in the updated style vignette. Finally, it is now possible to use custom table styles and create them.

A lot of time went into various bug fixes, cleanups, and minor improvements here and there. A number of the fixes and features were developed based on user requests and needs. If you find a bug, please let us know.

The release 0.7 is the ninth openxlsx2 release which is available under CRAN. However, the package is not yet fully stable. Until the stable version 1.0 there may still be changes in the API. A look at the issue tracker and the NEWs is recommended in any case.

What's Changed

Full Changelog: v0.6.1...v0.7

v0.6.1

21 Apr 19:24
c03d258
Compare
Choose a tag to compare

Release 0.6.1 brings some new features to a slowly but steadily maturing package. The release came a bit earlier than usual to support the next waldo release.

Functions that take columns as arguments should now accept spreadsheet ranges like "A:B". There may still be remaining functions that behave differently, but these should be reported as bugs. It is now possible to place images with dims just like rvg or mschart drawings (they now share the same code), and drawings get the ability to add offset vectors to fine tune their placement. It is now possible to skip hidden columns and rows in wb_to_df(). Support for third party packages that are derivatives of data frames has been improved. The last xy function argument has been deprecated in comment functions, and finally it it is possible to chain load() and to_df().

The release 0.6.1 is the eight openxlsx2 release which is available under CRAN. However, the package is not yet fully stable. Until the stable version 1.0 there may still be changes in the API. A look at the issue tracker and the NEWs is recommended in any case.

What's Changed

Full Changelog: v0.6...v0.6.1

v0.6

02 Apr 10:53
72965b8
Compare
Choose a tag to compare

Release 0.6 is a maintenance release for a slowly but steadily maturing package. Besides the usual bug fixes, we remove some deprecated functions and make minor changes to the wb_styles functions. Also, feature requests have been fulfilled (reading empty named columns with skipEmptyCols/skipEmptyRows and dims argument in wb_clean_sheet()).

Style functions now accept numeric, integer or logical arguments where applicable. Previously only characters were accepted, now wb_add_font(size = 11) is as valid as wb_add_font(size = "11"). The upgrade vignette has been extended with some pipes examples in addition to the chains. Applicability for R versions < R 4.1.0 has been restored.

The release 0.6 is the seventh openxlsx2 release which is available under CRAN. However, the package is not yet fully stable. Until the stable version 1.0 there may still be changes in the API. A look at the issue tracker and the NEWs is recommended in any case.

What's Changed

Full Changelog: v0.5.1...v0.6

v0.5.1

26 Feb 15:41
806844c
Compare
Choose a tag to compare

Release 0.5.1 mainly brings improvements to the existing code as well as the usual bug fixes. A newly integrated feature is form controls. It is now possible to create radio buttons, dropdown menus and check boxes directly from openxlsx2.

Cell initialization has been improved, it is now possible to use nested groupings, and external links are now imported in the correct order. Date detection should now be better, and when filling merged cells, the content that is not in the selected dimensions is now taken into account. The biggest change was made to the internal relationship detection, which should now be smarter and behaves more like openxml relationships should work.

The integration of form controls, the faster cell initialization and the possibility of nested grouping were feature requests or resulted from discussion topics. Thank you for the suggestion and the interest in openxlsx2.

The release 0.5.1 is the sixth openxlsx2 release which is available under CRAN. However, the package is not yet fully stable. Until the stable version 1.0 there may still be changes in the API. A look at the issue tracker and the NEWs is recommended in any case.

What's Changed

Full Changelog: v0.5...v0.5.1

v0.5

29 Jan 16:09
f2a8590
Compare
Choose a tag to compare

Release 0.5 brings a number of changes and the usual bug fixes. In particular, we now use American English by default (aka color) from now on. However, we still support the British English colour. This change was introduced for consistency, previously we had both variants in different functions.

Among the changes, the following stand out: grouping has been improved, as well as reading escaped XML. We provide a new function wb_copy_cells() for copying (and transposing) cells, cell values or cell references in a workbook, and are now able to write both shared strings and inline strings (the previous standard). Shared strings are advantageous when you have many identical strings in a workbook. Writing data to the worksheet has been further improved and two new features have been introduced. 1) there is an experimental option openxlsx2.string_nums that changes the way strings containing numbers are written and 2) a new function has been added to the package. It is now possible to write pivot tables using wb_add_pivot_table(). These are evaluated once the workbook is opened in spreadsheet software. However, be aware that both were introduced recently and may still contain bugs and cause unexpected behavior. Be careful (make some more backups than usual) when using these functions and please give feedback if you do.

The release 0.5 is the fifth openxlsx2 release which is available under CRAN. However, the package is not yet fully stable. Until the stable version 1.0 there may still be changes in the API. A look at the issue tracker and the NEWs is recommended in any case.

What's Changed

Full Changelog: v0.4.1...v0.5