Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prepare for CRAN release #396

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion R/DESCRIPTION
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
Package: feather
Title: R Bindings to the Feather 'API'
Version: 0.3.5.9000
Version: 0.4.0
Authors@R: c(
person("Hadley", "Wickham", , "[email protected]", role = c("aut", "cre")),
person("Neal", "Richardson", , "[email protected]", role = "ctb"),
person("RStudio", role = "cph"),
person("LevelDB Authors", role = "ctb")
)
Expand Down
11 changes: 10 additions & 1 deletion R/NEWS.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,13 @@
# feather (development version)
# feather 0.4.0

This release updates `feather` to depend on the [`arrow`](https://arrow.apache.org/docs/r/) package, which is where Feather format development has moved. This resolves many bug reports and missing features from the previous implementation of Feather in R, and it brings the R package in line with the Python `feather` package, which has depended on `pyarrow` since 2017.

For compatibility, `feather::write_feather()` uses V1 of the Feather specification: it is a wrapper around `arrow::write_feather(version = 1)`. Feather V2 is just the Arrow format on disk and has support for a much richer set of data types. To switch to V2, we recommend just using `arrow::write_feather()`.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we want to encourage folks to move to V2? Or just show that one can?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we're going to encourage V2 more heavily, we should encourage people just to use arrow and not bother with feather, there's no value added. And actually we make that recommendation in the README. So I think this is fine, but feel free to suggest new words here.


With these changes, most of `feather`'s APIs are preserved in spirit, but there are some noteworthy changes:

* The `feather` class, which allowed for accessing data in a Feather file without reading it all into R, has been replaced by an `arrow::Table` backed by the memory-mapped Feather file. This should preserve the intent of the original implementation but with much richer functionality. One behavior change that results though is that slicing/extracting from the Table results in another arrow Table, so the data aren't pulled into a `data.frame` until you `as.data.frame()` them.
* `feather_metadata` also now does the same

# feather 0.3.5

Expand Down
4 changes: 2 additions & 2 deletions R/README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
## Feather for R

[![Build Status](https://travis-ci.org/wesm/feather.svg?branch=master)](https://travis-ci.org/wesm/feather)

Feather is file format designed for efficient on-disk serialisation of data frames that can be shared across programming languages (e.g. Python and R).

```R
Expand All @@ -10,6 +8,8 @@ write_feather(mtcars, "mtcars.feather")
mtcars2 <- read_feather("mtcars.feather")
```

Feather developement has continued in [Apache Arrow](https://arrow.apache.org/), and `feather` is now a wrapper around the [`arrow`](https://arrow.apache.org/docs/r/) package. We encourage you to update your workflows to use `arrow::write_feather()` and `arrow::read_feather()` directly.

## Installation

Install the released version from CRAN:
Expand Down