RStudio Package Manager 0.7.0

  • BREAKING: The new default minimum TLS version for the HTTPS listener is “1.1”, in compliance with PCI Data Security Standards. Previously, TLS 1.0 was enabled by default. Additionally, it is now possible to specify the minimum TLS version using the HTTPS.MinimumTLS configuration setting.
  • Fixed a bug in which CPU usage of the rstudio-pm service would increase over time.
  • Added a new configuration flag, HTTP.ForceSecure, that makes RStudio Package Manager set the Secure flag on all of its cookies. This provides extra security when running RStudio Package Manager behind a HTTPS-terminating proxy. HTTP.ForceSecure also sets the Strict-Transport-Security header on all web connections.

RStudio Package Manager 0.6.0.1

  • Fixed a bug in which empty files were being served for packages.rds and packages.gz files in the /bin/ directory. This was causing problems in R versions 3.4.4 and greater when a user attempted to install more than one package.

RStudio Package Manager 0.6.0

  • Added Usage Statistics for analyzing package downloads and package licenses over time.
  • Compress (gzip) the packages and archive RDS files before serving them to clients.
  • Added row.names to the packages RDS file.
  • The CLI list sources output now includes source types.
  • Added a CLI list command that outputs a tree of all repos and sources.
  • Added a CLI fetch command to initial eager package fetching.
  • The CLI now uploads local packages using multi-part uploads to the API. Only the CLI needs permission to read files you are uploading, and relative paths are supported.
  • Added support for minor migrations for CRAN sources. Minor migrations are typically used for supplementing CRAN sources with additional metadata.
  • Added the SystemRequirements and NeedsCompilation fields to CRAN sources.
  • Improved the informational and error messages displayed during curated CRAN operations.
  • Fixed a bug that resulted in reading the wrong package DESCRIPTION file in some CRAN packages that include DESCRIPTION files at multiple paths.

RStudio Package Manager 0.5.0

  • BREAKING: RStudio Package Manager’s support for CRAN metadata was simplified. RStudio Package Manager now includes a single, default CRAN source and the fetch mode and sync schedules are defined server-wide in the configuration file. If you have existing CRAN sources, they will be dropped when upgrading. A new cran source will be created automatically. Use the CLI to subscribe existing repositories to the new cran source and to sync the new cran source. Example: If you had a repository named prod that subscribed to an CRAN source named cran-src, you will need to run: rspm subscribe --repo=prod --source=cran and rspm sync after upgrading.
  • BREAKING: The CRANTimeout and FetchTimeout configuration properties have been moved to a new [CRAN] configuration section. If you included either of these two properties under your [Server] configuration section, you will need to move them to a new [CRAN] configuration section.
  • RStudio Package Manager now includes curated CRAN sources, giving administrators the ability to host approved subsets of CRAN instead of taking an all-or-nothing approach. Administrators add packages, preview changes, and even perform dry runs before running updates. The admin guide contains examples and quick start guides.
  • The [CRAN] configuration section now includes SyncSchedule and SyncMode settings. The SyncSchedule setting accepts a crontab format for scheduling synchronization of the CRAN source. The SyncMode setting defaults to lazy but can be configured as eager for eager package downloading. The sync schedule and mode were previously configured using the CLI.
  • Admins can now edit source names, repository names, and repository descriptions using the edit CLI command.
  • Added an [API] configuration section that includes the settings MaxApiResults and DefaultApiResultsLimit for configurable API result limits.
  • Added documentation for air-gapped environments. See the Admin Guide for details.
  • Eliminates external fonts in the UI.
  • The activity page for a CRAN source now lists the historical date represented by a sync operation instead of the date the sync occurred.
  • Removed the CLI sync-wait command and replaced it with a flag. You can now run rspm sync --wait instead.
  • Better support for the URL property that appears in many CRAN package DESCRIPTION files. This property appears in CRAN packages as URL, Url, and url, which are all now supported.
  • The package date for archived packages is now displayed in the UI.
  • The CLI reorder command allows reordering source subscriptions for a repository. This allows you to change the priority for resolving conflicts when two sources include a package with the same name.
  • Fixed a bug that prevented using the UI through a proxy that prepends a prefix to the RStudio Package Manager URL.
  • Include Content-Length and Last-Modified headers when serving a package tarball.
  • Support for Ubuntu 18.04.
  • SUSE Enterprise Linux 12 SP3+ Support.

RStudio Package Manager 0.4.0

  • BREAKING: Sources can no longer be hidden. Since repositories can subscribe and unsubscribe from sources (since 0.2.0), there is no need to hide sources. Sources that were previously hidden will no longer be hidden after upgrading to this release. If your repositories subscribed to hidden sources that should remain hidden, please unsubscribe those repositories from the hidden sources before upgrading.
  • Added the ability to version and migrate CRAN sources. This allows RStudio Package Manager to replace outdated or flawed CRAN sources without losing transaction history.
  • Added a /ping endpoint to allow services to more easily monitor the service’s status. It always responds with an empty JSON message and a 200 status code.
  • Sources cannot be deleted when associated with any repositories. A repository’s source subscriptions and unsubscriptions are all recorded permanently. To preserve a repository’s immutable historical records, no sources that were ever associated with an existing repository may be deleted. If you need to delete a source, you must first delete any repositories that at any time subscribed to the source.

RStudio Package Manager 0.3.0

  • BREAKING: This release incorporates major improvements to sources typed as cran. Packages in existing sources typed as cran will be removed when upgrading. Administrators should initiate synchronization for any sources typed as cran after upgrading.
  • KNOWN BUG: When using an NFS share for [Server].DataDir, there can be delays of up to 60 seconds when initailly serving particular files including the PACKAGES files for a particular repository. When using the “lazy” sync mode with CRAN, this delay can also occur the first time a version of a package is served. This latency can be improved by shortening the length of time attributes are cached on your NFS clients (see the acdirmax and noac NFS mount options). We will work to resolve this latency in a subsequent release.
  • Added support for multiple current versions of CRAN packages.
  • Support synchronizing multiple CRAN checkpoints simultaneously. This greatly reduces the time to synchronize a CRAN source.
  • CRAN checkpoints are cached to avoid redundant downloads. This greatly reduces the time to synchronize CRAN sources.
  • Introduced better logging configuration options to provide helpful logging during CRAN synchronization without overwhelming logs. Also added trace-level synchronization logging.
  • Added a sync-wait command to the CLI. This command lets you wait for synchronization to complete after you initiate a synchronization.
  • The RStudio Package Manager service now manages its /var/run/rstudio-pm directory correctly to avoid missing domain socket files on operating systems that use temporary file systems for the /var/run directory.
  • More consistently sort/order packages. Previous RStudio Package Manager releases ordered packages inconsistently when using PostgreSQL vs. SQLite.
  • Sort archived packages by version in the RStudio Package Manager Web client.
  • Fixed a bug that prevented package link (depends, imports, etc.) versions from being displayed in the RStudio Package Manager Web client.
  • Added the ability to specify a description for repositories, which are displayed via the CLI and the UI.

RStudio Package Manager 0.2.0

  • The RStudio Package Manager service now runs under an unprivileged account. By default, the service runs under the rstudio-pm account. See the admin guide appendix on changing the RunAs User if you need to adjust the service account.
  • BREAKING: Upon upgrading, if you previously configured RStudio Package Manager with alternative data directories, cache directories, log files, or .gcfg locations, you will need to manually change ownership on these files/directories to the new rstudio-pm service account. See the admin guide appendix on changing the RunAs User for more information.
  • BREAKING: The internal structure of Package Manager has changed. Repositories no longer contain packages directly, but instead repositories are composed of one or more “sources”. Sources are typed as either local or cran. See the admin guide for more details. Due to this change, upgrading to 0.2 will wipe all existing repositories. Administrators should recreate the repositories using the source + repo model. Any CRAN packages that were previously downloaded will be retained on the server and can be accessed after a new repository is configured. Local packages will need to be re-added. Additionally, the cache directory, /var/lib/rstudio-pm/cache can be removed prior to upgrading to save disk space.
  • BREAKING: The administrator command line interface (CLI) has been significantly refactored for easier use. Any scripts developed with the previous CLI should be rewritten. The new CLI does not require root. Instead, admins should be part of the rstudio-pm unix group. Instructions for changing the group are included in the admin guide.
  • BREAKING: Package Manager now tracks the number of downloads for each package. To do so, a new database was added for storing metrics. Servers using Postgres will need to create a new database and populate the [Postgres].MetricsURL configuration option or disable metrics by setting [Server].MetricsEnabled = false. Servers using the SQLite database (the default) will not need to alter their configuration; a new database will be created alongside your existing one.
  • The [Server].MetricsRetention configuration option specifies when to reap metrics that have expired.
  • The Package Manager web interface displays additional information about packages, including prior archived versions.
  • In version 0.1.0 users were prompted to name the repository RSPM. The new Overview page suggests naming the repository according to the repository name on Package Manager.
  • A date parsing error that occurred when adding local packages was fixed.
  • A number of bugs were fixed to properly sync CRAN packages including properly archiving prior package versions and correctly displaying the Depends, Suggests, and Imports fields.

RStudio Package Manager 0.1.0

  • This is the initial alpha release of RStudio Package Manager.