Posit Package Manager 2024.04.0: Offline PyPI repositories, CRAN improvements, and more!

The April 2024 release of Posit Package Manager brings support for air-gapped PyPI repositories, more flexible curated CRAN repositories, performance improvements and more.
Product release Posit Package Manager 2024.05 Offline PyPi Repositories, CRAN improvements, and more

Posit Package Manager 2024.04.0 is now available for download. This release brings support for offline PyPI repositories, a more flexible curated CRAN repository, and performance improvements for CRAN repositories among other changes. For a full list of what’s changed, please see the release notes.


Offline PyPI Repositories


For many organizations in restricted or high-security environments, access to the Internet can be completely blocked. Package Manager allows data scientists in these environments to continue to harness the power of public packages, but from their own internal, air-gapped server. This release brings the same support for air-gapped environments currently available for CRAN packages to PyPI packages. 

Rather than downloading all of PyPI, define your own subset of packages to make available offline and use Package Manager’s Offline Downloader on a machine with access to the Posit Package Service to download the package data locally. Then, copy the data over to your offline Package Manager server. Package and vulnerability information can be updated using the same process, whenever desired. 


Flexible Curated CRAN 


One of Package Manager’s earliest features allows for the creation of curated CRAN sources, where a repository can be built to contain only the CRAN packages you require. In response to customer feedback, when we introduced support for curated PyPI sources we rethought how to make this more flexible and applicable to a wider set of potential uses. This release brings that upgraded flexibility to CRAN sources, including the ability to select specific versions of packages that may come from different snapshots, provide more granular control over dependencies, and even delete packages from an existing curated source without rebuilding it completely. 

Those of you who are happy with how it currently works needn’t worry, we didn’t break the existing way of doing things. See our updated documentation for all of the new options! 


CRAN Performance Improvements


When we introduced support for PyPI mirrors, we developed a far more efficient format for managing public package data within Package Manager. In this release, we bring that major improvement to CRAN mirrors. Gone are the days of waiting 20+ minutes to sync your package data! Package metadata will now be downloaded in the background, on-demand, and nearly instantaneously when required. No configuration changes are necessary to enable the new functionality, though there may be a brief migration delay the first time you start Package Manager after upgrading. 


You can follow our instructions for upgrading Posit Package Manager to take advantage of these updates.