Log message:
(math/R-tibble) Updated 3.1.8 to 3.2.1
# tibble 3.2.1
## Internal
- Use symbol instead of string in `.Call()`.
# tibble 3.2.0
## Features
- Accurate location of the source of an error in error messages
(#1379, #1065, #1508).
- `as_data_frame()` now also refers to `as.data.frame()` in its
deprecation message (#1149, #1506).
## Breaking changes
- Deprecated functions and arguments where we could not detect usage
by other CRAN packages (#1515):
- `data_frame_()`, `lst_()`, `frame_data()`
- `as_tibble(validate = )`, `as_tibble(NULL)`, `new_tibble(subclass = )`
- `add_row()` and `add_column()` for non-data-frame input
- `add_column()` for input with non-unique names
- corner cases for `tbl[[x]]`
- Breaking change: Remove `knit_print.trunc_mat()` method (#1516).
- Forward `trunc_mat()` to new-style pillar methods (#1517).
## Bug fixes
- Allow `glue()` and other classed characters for subassignment (#1150, #1503).
## Performance
- Reduce overhead of single-column subset assignment (#1363).
## Documentation
- New `vignette("extending")` (#275, #1512).
- Minor updates (#1151, #1070, #1512, #1485).
- Update example for `nrow` argument to `new_tibble()` (@heavywatal, #1394).
- Fix display of mermaid diagrams in `vignette("formats")` (@maelle, \
#1497, #1498).
- Remove ANSI escapes from invariants article on pkgdown (#1374).
## Internal
- Require vctrs >= 0.4.1 and pillar >= 1.8.1
- Use cli for formatting conditions (#1387).
- Use `vec_as_location(missing = "error")` for better error messages
(#741, #1511).
- Remove compatibility code for RSDA package which is broken anyway
due to other changes (#923, #1509).
- Skip tests if suggested packages not available (#1246, @MichaelChirico).
- Remove obsolete tests (#1513).
|
Log message:
(math/R-tibble) Updated 3.1.2 to 3.1.4
# tibble 3.1.4
## Features
- `as.data.frame.tbl_df()` strips inner column names (#837).
- `new_tibble()` allows omitting the `nrow` argument again (#781).
## Documentation
- Move `vignette("digits")`, `vignette("numbers")`, `?num` \
and `?char`
from the pillar package here (#913).
- Replace `iris` by `trees` (#943).
- Various documentation improvements.
- New `?tibble_options` help page (#912).
## Performance
- `x[i, j] <- one_row_value` avoids explicit recycling of the
right-hand side, the recycling happens implicitly in
`vctrs::vec_assign()` for performance (#922).
## Internal
- Vignettes are now tested with a snapshot test (#919).
- `new_tibble()` uses `vctrs::new_data_frame()` internally (#726,
@DavisVaughan).
- Adapt to pillar 1.6.2.
- Fix tests for compatibility with pillar 1.6.2.
# tibble 3.1.3
## Bug fixes
- `tbl[row, col] <- rhs` treats an all-`NA` logical vector as a
missing value both for existing data (#773) and for the right-hand
side value (#868). This means that a column initialized with `NA`
(of type `logical`) will change its type when a row is updated to a
value of a different type.
- `[[<-()` supports symbols (#893).
## Features
- `as_tibble_row()` supports arbitrary vectors (#797).
- `enframe()` and `deframe()` support arbitrary vectors (#730).
- `tibble()` and `tibble_row()` ignore all columns that evaluate to
`NULL`, not only those where a verbatim `NULL` is passed (#895,
#900).
- `new_tibble()` is now faster (#901, @mgirlich).
## Internal
- Establish compatibility with rlang > 0.4.11 (#908).
- Use `pillar::dim_desc()` (#859).
- Establish compatibility with testthat > 3.0.3 (#896, @lionel-).
- Bump required versions of ellipsis and vctrs to avoid warning during
package load.
|
Log message:
(math/R-tibble) Updated 2.1.3 to 3.1.2
# tibble 3.1.2
- Bump required versions of ellipsis and vctrs to avoid warning during package load.
# tibble 3.1.1
- `num()` and `char()` are reexported from pillar (#880).
- `tribble()` and `frame_matrix()` give an error if values are named (#871, \
@lorenzwalthert).
- Document `cli.num_colors` option (#410).
- Fix `new_tibble()` examples for compatibility with pillar 1.6.0.
# tibble 3.1.0
## Bug fixes
- `has_rownames()` now works correctly for data frames with a \
`"row.names"` attribute malformed due to a problem in `structure()` \
(#852).
- `tbl[FALSE, "column"] <- x` adds new column again (#846).
## Features
- Importing pillar 1.5.0, cli and crayon are now suggested packages (#475).
- `size_sum()` is now reexported from pillar (#850, @topepo).
- `as_tibble()` hints more often to use the `.name_repair` argument if column \
names are invalid (#855).
- `as_tibble.table()` mentions `.name_repair` argument in the error message (#839).
## Internal
- Remove compatibility code for pillar < 1.5.0 (#861).
- Moved most functions to the "stable" lifecycle (#860).
# tibble 3.0.6
- `vec_ptype_abbr.tbl_df()` and `type_sum.tbl_df()` now uses the name of the \
topmost class for subclasses of `"tbl_df"` (#843).
- Ignore errors in `formats.Rmd` vignette.
- Avoid tidy evaluation in pillar compatibility code.
# tibble 3.0.5
- Use testthat edition 3, compatible with testthat 3.0.1 (#827, #832).
# tibble 3.0.4
## Compatibility
- Establish compatibility with upcoming pillar 1.5.0 (#818).
- `tbl_sum()` shows "data frame" instead of "tibble" for \
objects inheriting from `"tbl"` but not `"tbl_df"` (#818).
- Register `format.tbl()` and `print.tbl()` methods only if pillar doesn't (#816).
- Use `vctrs::num_as_location()` internally for subset assignment of rows and \
columns for better error messages (#746).
- Adapt tests to the development version of testthat.
## Bug fixes
- Fix documentation link to `base::Extract`.
- `add_row(df)` adds an empty row again (#809, @DavisVaughan).
# tibble 3.0.3
- Fix test compatibility with rlang 0.4.7.
- Fix warning about `needs_dots` arguments with pillar >= 1.4.5 (#798).
# tibble 3.0.2
## Bug fixes
- `[[` works with classed indexes again, e.g. created with `glue::glue()` (#778).
- `add_column()` works without warning for 0-column data frames (#786).
- `tribble()` now better handles named inputs (#775) and objects of non-vtrs \
classes like `lubridate::Period` (#784) and `formattable::formattable` (#785).
## Performance
- Subsetting and subassignment are faster (#780, #790, #794).
- `is.null()` is preferred over `is_null()` for speed.
- Implement continuous benchmarking (#793).
## Compatibility
- `is_vector_s3()` is no longer reexported from pillar (#789).
# tibble 3.0.1
## Compatibility fixes
- `[<-.tbl_df()` coerces matrices to data frames (#762).
- Use delayed import for cli to work around unload problems in downstream \
packages (#754).
## Bug fixes
- More soft-deprecation warnings are actually visible.
- If `.name_repair` is a function, no repair messages are shown (#763).
- Remove superseded signal for `as_tibble.list()`, because `as_tibble_row()` \
only works for size 1.
## Enhancements
- `as_tibble(validate = )` now always triggers a deprecation warning.
- Subsetting and subassignment of rows with one-column matrices work again, with \
a deprecation warning (#760).
- Attempts to update a tibble row with an atomic vector give a clearer error \
message. Recycling message for subassignment appears only if target size is != \
1.
- Tweak title of "Invariants" vignette.
# tibble 3.0.0
## Major breaking changes
- Subset assignment ("subassignment") and also subsetting has become \
stricter. Symptoms:
- Error: No common type for ...
- Error: Assigned data `...` must be compatible with ...
- `i` must have one dimension, not 2
- Error: Lossy cast from ... to ...
The "invariants" article at \
https://tibble.tidyverse.org/dev/articles/invariants.html describes the \
invariants that the operations follow in tibble, and the most important \
differences to data frames. We tried to make subsetting and subassignment as \
safe as possible, so that errors are caught early on, while introducing as \
little friction as possible.
- List classes are no longer automatically treated as vectors. Symptoms:
- Error: All columns in a tibble must be vectors
- Error: Expected a vector, not a `...` object
If you implement a class that wraps a list as S3 vector, you need to include \
`"list"` in the class:
```r
structure(x, class = c("your_s3_class", "list"))
```
Alternatively, implement a `vec_proxy()` method as described in \
https://vctrs.r-lib.org/reference/vec_data.html, or construct your class with \
`list_of()`.
- Added experimental support for inner names for all columns, of the form \
`tibble(a = c(b = 1))`. Inner names are no longer stripped when creating a \
tibble. They are maintained for slicing operations but not yet updated when \
assigning with a row subscript. This is a change that may break existing \
comparison tests that don't expect names in columns (#630). Symptoms:
- "names for target but not for current" when comparing
## Breaking changes
- `tibble()` now splices anonymous data frames, `tibble(tibble(a = 1), b = a)` \
is equivalent to `tibble(a = 1, b = a)`. This means that `tibble(iris)` now has \
five columns, use `tibble(iris = iris)` if the intention is to create a packed \
data frame (#581).
- The `name-repair` help topic is gone, refer to `?vctrs::vec_as_names` instead.
- `expression()` columns are converted to lists as a workaround for lacking \
support in vctrs (#657).
- `tribble()` is now stricter when combining values. All values in a column must \
be compatible, otherwise an error occurs (#204). The criteria for wrapping in a \
list column are now based on vctrs principles: non-vectors or vectors with \
`vctrs::vec_size()` unequal 1 are wrapped in lists.
- `$` warns unconditionally if column not found, `[[` doesn't warn.
- `add_row()` now uses `vctrs::vec_rbind()` under the hood, this means that all \
columns are combined with `vctrs::vec_c()`. In particular, factor columns will \
be converted to character if one of the columns is a character column.
## Soft deprecations
- Soft-deprecate `subclass` argument to `new_tibble()`.
- Soft-deprecate `as_tibble()` without arguments (#683).
- Preparing to move `glimpse()` and `tbl_sum()` to the pillar package. If your \
package implements these methods, please import the generics from pillar as soon \
as they become available there.
## Features
- Internals now make heavy use of the vctrs package, following most of the \
invariants defined there. Name repair is the responsibility of vctrs now (#464).
- All errors emitted directly by the package inherit from the \
`"tibble_error"` and `"rlang_error"` classes. In some cases, \
`"vctrs_error"` errors may be passed through. The exact subclass is \
subject to change.
Example: `tibble(a = quote(b))` raises an error that inherits from \
`"tibble_error_column_must_be_vector"`, `"tibble_error"` and \
`"rlang_error"`, and from `"error"` and \
`"condition"` like all errors. Do not rely on the wording of \
`"tibble_error_column_must_be_vector"`, this is likely to change.
Use the following pattern to catch errors emitted by tibble:
```r
tryCatch(
your_code(),
tibble_error = function(cnd) {
}
)
```
- New `tibble_row()` constructs tibbles that have exactly one row, or fails. \
Non-vector objects are automatically wrapped in a list, vectors (including \
lists) must have length one (#205).
- New `as_tibble_row()` and `as_tibble_col()` convert a bare vector to a one-row \
or one-column tibble, respectively. `as_tibble_col()` also works for non-bare \
vectors. Using `as_tibble()` for bare vectors is superseded (#447).
- `as_tibble.data.frame()` uses implicit row names if asked to create a column \
from row names. This allows lossless direct conversion of matrices with row \
names to tibbles (#567, @stufield).
- Implement `str.tbl_df()` (#480).
- `tribble()` now returns columns with `"unspecified"` type for 0-row \
tibbles.
- `add_row()` and `add_column()` now restore attributes to avoid errors when \
appending to sf objects or other tibble subclasses (#662).
- `add_column()` gains `.name_repair` argument. If not given, `.data` must have \
unique columns, with a deprecation message.
- Allow `POSIXlt` columns, they are now better supported by dplyr and other \
tools thanks to vctrs (#626).
- `tibble()` ignores NULL arguments, named or unnamed (#580).
- `view()` works for remote data sources by applying the same strategy as \
`print()` and `glimpse()`. The maximum number of rows in this case can be \
specified using the new `n` argument, by default it is taken from the new \
`"tibble.view_max"` option (#695).
## Output
- Formatting dimensions never uses scientific notation.
- `glimpse()` uses "Rows" and "Columns" instead of \
"Variables" and "Observations", because we're not sure if \
the data is tidy here (#614).
- `view()` now uses the created (or passed) title argument (#610, @xvrdm).
## Performance
- Construction and subsetting of large data frames is faster now (#717, \
@romainfrancois).
## Internal
- Import lifecycle package (#669).
- `new_tibble()` removes redundant subclasses from the `"class"` attribute.
- Using classed conditions. All classes start with `"tibble_error_"` \
and also contain `"tibble_error"` (#659).
- The magrittr pipe `%>%` is reexported.
|