legazy_azure()works once again (#527).
Drop add-ins since they’re not tested or documented (#525)
CRAN release: 2021-10-02
pins 1.0.0 includes a new, more explicit, API that includes robust support for versioning. In the modern API, you create a board object which is passed to every
pin_ function instead of “registering” a board that is later refereed to with a string. This leads to code like this:
The legacy API (
board_register()) will continue to work, but new features will only be implemented with the new API, so we encourage you to switch to the modern API as quickly as possible. Learn more in
pin_write()replace most uses of
typeargument that allows you to choose how to serialise your R objects to disk, allowing you to manage the tradeoffs between speed, generality, and language inter-op, and a
metadataargument that allows you to store arbitrary metadata (#430).
pin_upload()are lower-level versions of
pin_write()that work with file paths rather than R objects. They replace the use of
pin()with a path and eliminate the type-instability in
pin_get(), which can return either an R object or a character vector of paths.
pin_list()lists all pins in a board.
pin_exists()reports whether or not a pin exists.
pin_version_delete()allows you to delete a single version.
pin_versions_prune()(#459) allows you to easily prune old versions keeping either a specified number of versions, or all versions beneath a certain age.
This version includes the following modern boards:
board_folder()is a generalised replacement for the legacy local board.
board_folder()can store data in any directory, making it possible to share boards using shared network drives or on dropbox or similar. If you using pins casually and don’t want to pick a directory,
board_local()is a variant of
board_folder()that stores data in a system data directory.
board_kaggle_competition()allow you to download data from Kaggle. The data is automatically cached so that it’s only downloaded when it changes.
board_rsconnect()shares data on RStudio connect. This board supports both modern and legacy APIs, so that you and your colleagues can use a mixture of pins versions as you transition to pins 1.0.0. Note that the compatibility is one directional: you can
pin_read()pins created by
pin(), but you can’t
pin_get()pins created by
board_url()lets you create a manual board from a vector of URLs. This is useful because
pin_read()are cached, so they only re-download the data if it has changed since the last time you used it (#409). This board is a replacement for
pin()’s ability to work directly with URLs
The legacy boards will continue to work with the legacy pins API; we will implement modern versions of the remaining legacy boards based on user feedback.
All board objects now have class beginning with
pins_board_and also inherit from common superclass
Pins no longer works with the connections pane. This automatically registered code tended to be either dangerous (because it’s easy to accidentally leak credentials) or useless (because it relied on variables that the connection pane doesn’t capture).
Pinned data frames are longer converted to tibbles.
The “packages” board is no longer registered by default; if you want to use this you’ll need to register with
board_register("packages"). It has been radically simplified so that it will no longer download packages, and it
pin_find()now searches all packages that you have installed, rather than a stale snapshot of data in CRAN packages. The CRAN files dataset has been removed from the package.
board_browse()now works with local boards.
pin_fetch()has been removed
option(pins.invisible)is now defunct and ignored.
You can no longer switch from a versioned pin to an unversioned pin without first deleting the pin (#410).
CRAN release: 2021-01-05
- Silenced ‘no encoding supplied’ warning (#330).
Properly store relative paths when
pathparameter is specified in GitHub boards (#199).
Add support for repos with a ‘main’ branch as default (#336).
Add support for large file in private repo releases (#292).
When a board is registered with
versions = FALSE, GitHub tags are also delete when large files are present (#285).
Invalid ‘account’ or ‘server’ parameters show proper errors (#296).
Avoid deleting pin when upload fails to avoid deleting versions (#306).
Support re-creating pins from pins not previously properly updated (#308).
Adjust pin preview to only display 1K rows instead of 10K (#315).
Avoid changing columns names on data frame preview (#190).
Improve error message when token authentication fails (#327).
CRAN release: 2020-10-30
- Disable caching on
data.txtto support creating multiple pins at once (#275).
- Prevent connections pane from hanging when multiple pins are updated at once (#280).
Support for servers with mismatched
Make use of
RSCONNECT_TARwhen running a report inside RStudio Connect (#293).
CRAN release: 2020-07-10
- Properly export
board_pin_versionsto allow custom boards extending versions (#265).
- Fix regression creating pins when using a brand new cloud board (#268).
CRAN release: 2020-07-05
Prevent administrators from overriding pins they don’t own, unless the pin is specified as
Throw error when multiple accounts are associated to the same server (#261).
CRAN release: 2020-05-28
When running in production environments (which usually set the
R_CONFIG_ACTIVEenvironment variable), avoid using shared caches.
pin()failing to update cache when server returns
pin()to allow saving custom fields in
Avoid showing upload or download progress when creating R Markdown documents and other non-interactive use cases (#227).
When pin(url) fails and local cache exists, produce warning and retrieve cached version (#231).
pin(zip = TRUE)to create a zip file of the given path before creating the pin (#232).
Fix when overriding pin with corrupt metadata.
Avoid using shared caches when running inside RStudio Connect.
Fixed ‘invalid uid’ warning when creaating pin undner some Linux servers (#263).
CRAN release: 2020-04-07
Support for versioning in all boards.
Support for DigitalOcean board.
incomplete final line foundwarning error wheen reading manifests.
pin_get()to download arbitrary files from cloud boards like Azure, DigitalOcean, GitHub, Google Cloud, RStudio Connect, and S3.
Fix issue where http HEAD requests could tgimeout and prevent pin from downloading in very slow connections.
Support for committing all github files with a single commit (#197).
pin()now searches for
data.txtfiles in URLs when the URL contains no file extension, behavior can be turnned off with the
CRAN release: 2020-02-06
pin_info()adds support for
metadataparameter to avoid retrieving pin contents.
CRAN release: 2020-01-10
- Added missing
Fix issue uploading large pins causing
is.character(type) is not TRUEerror.
Fix issue affecting boards registered with trailing slash (#151).
Improve error messages when a pin fails to be created (#149).
Added support for
CONNECT_SERVERin place of
RSCONNECT_SERVER, which they are still supported for backwards-compatibility.
CRAN release: 2019-11-26
Support for Azure board.
Support for Google Cloud board.
Support for S3 board.
pin()extracts URLs that end in
zip, which can be disabled with
pin("<url>", extract = FALSE).
Show upload progress for files larger than 10mb.
Support to extract gzip files when the
R.utilspackage is installed.
Show download progress for files larger than 10mb.
Support creating automatic
pin()and multiple URL.
Gracefully handle errors when a pin’s preview can’t be created.
Website boards now support the browse menu item in the connection.
Fix data frames previewing character columns with special characters.
Fix connection code when a board is registered automatically.
Fix issue where
pin_find()would not show all available pins.
Fix issue where RStudio Connections pane would not show all pins.
Store all downloaded content under user subfolder insited rsconnect cache.
pin_find()workaround for beta rsconnect server where searching was causing timeout.
Fix for RStudio Connect servers where
/content/is not used in content URLs.
Fix issue expanding pins columns in RStudio for pins with similar names in RStudio Connect boards.
Fix issue removing pins with similar names in RStudio Connect boards.
- Various fixes for GitHub boards using the
pathparameter when registering the board (#121).
CRAN release: 2019-10-01
Support for retrieving pins shared by others in RStudio Connect boards.
Support for RStudio Connect servers running under a subpath in the server.
Add support for
RSCONNECT_SERVERenvironment variable to ease configuration of automated RStudio Connect reports.
Fix intermittent failure to retrieve pins from RStudio Connect boards while creating them.
Fix in RStudio Connect boards to retrieve pins that match other pin names (#45).
Fix for data frames with nested data frames in rsconnect boards (#36).
Adjusted max upload file to 25mb to avoid “server error” in the API, larger files than 25mb uploaded as release files. This can be configured using the
pins.github.releaseoption, which deefaults to 25.
Allow overriding GitHub pin over a pin that partially failed to be created.
Using a board will attempt to automatically register, such that
pin(iris, board = "rsconnect")would work for the default configuration even when the board is not explicitly registered (#50).
Make use of the
rappdirspackage to define the default cache path, replaces
board_cache_path()to retrieve default cache path.
CRAN release: 2019-09-04
- Support to upload files larger than 50mb in GitHub boards as release files.
CRAN release: 2019-08-30