diff --git a/Justfile b/Justfile index 39086128..e29554d0 100644 --- a/Justfile +++ b/Justfile @@ -8,7 +8,7 @@ sed_vars := if os() == "macos" { "-i ''" } else { "-i" } BUILDX_PATH := "" RSC_VERSION := "2024.05.0" -RSPM_VERSION := "2024.04.0-20" +RSPM_VERSION := "2024.04.2-29" RSW_VERSION := "2024.04.1+748.pro2" DRIVERS_VERSION := "2023.05.0" diff --git a/docker-bake.hcl b/docker-bake.hcl index 5dcdeb03..64aeb20c 100644 --- a/docker-bake.hcl +++ b/docker-bake.hcl @@ -4,7 +4,7 @@ variable CONNECT_VERSION { } variable PACKAGE_MANAGER_VERSION { - default = "2024.04.0-20" + default = "2024.04.2-29" } variable WORKBENCH_VERSION { @@ -110,7 +110,7 @@ variable PRO_BUILD_MATRIX { variable PACKAGE_MANAGER_BUILD_MATRIX { default = { builds = [ - {os = "ubuntu2204", r_primary = "4.2.3", r_alternate = "4.1.3", py_primary = "3.12.1", py_alternate = "3.11.7"}, + {os = "ubuntu2204", r_primary = "4.4.0", r_alternate = "4.3.3", py_primary = "3.12.1", py_alternate = "3.11.7"}, ] } } diff --git a/package-manager/.env b/package-manager/.env index f24c5043..7c279d2e 100644 --- a/package-manager/.env +++ b/package-manager/.env @@ -1,5 +1,5 @@ -RSPM_VERSION=2024.04.0-20 -R_VERSION=4.2.3 +RSPM_VERSION=2024.04.2-29 +R_VERSION=4.4.0 R_VERSION_ALT=4.1.3 PYTHON_VERSION=3.9.17 PYTHON_VERSION_ALT=3.8.17 diff --git a/package-manager/Dockerfile.ubuntu2204 b/package-manager/Dockerfile.ubuntu2204 index fbe02447..7d6d6316 100644 --- a/package-manager/Dockerfile.ubuntu2204 +++ b/package-manager/Dockerfile.ubuntu2204 @@ -13,7 +13,7 @@ RUN /opt/python/${PYTHON_VERSION}/bin/python3 -m pip install --no-cache-dir buil RUN /opt/python/${PYTHON_VERSION_ALT}/bin/python3 -m pip install --no-cache-dir build virtualenv # Download RStudio Package Manager ---------------------------------------------# -ARG RSPM_VERSION=2024.04.0-20 +ARG RSPM_VERSION=2024.04.2-29 ARG RSPM_DOWNLOAD_URL=https://cdn.rstudio.com/package-manager/deb/amd64 RUN curl -O ${RSPM_DOWNLOAD_URL}/rstudio-pm_${RSPM_VERSION}_amd64.deb \ # Pre 7/25/23 packages diff --git a/package-manager/NEWS.md b/package-manager/NEWS.md index 353efa22..a59cf4ff 100644 --- a/package-manager/NEWS.md +++ b/package-manager/NEWS.md @@ -1,3 +1,6 @@ +# 2024-05-31 +- Update R to 4.4.0 + # 2024-01-11 - Update Python to 3.12.1 diff --git a/package-manager/README.md b/package-manager/README.md index 824a9dd2..aade5bec 100644 --- a/package-manager/README.md +++ b/package-manager/README.md @@ -6,16 +6,16 @@ # Supported tags and respective Dockerfile links -* [`jammy`, `ubuntu2204`, `jammy-2023.12.0`, `ubuntu2204-2023.12.0`](https://github.com/rstudio/rstudio-docker-products/blob/main/package-manager/Dockerfile.ubuntu2204) +* [`jammy`, `ubuntu2204`, `jammy-2024.04.2`, `ubuntu2204-2024.04.2`](https://github.com/rstudio/rstudio-docker-products/blob/main/package-manager/Dockerfile.ubuntu2204) # What is RStudio Package Manager? -Posit Package Manager, formerly RStudio Package Manager, is a repository management server to organize and centralize -R packages across your team, department, or entire organization. Get offline access to CRAN, automate CRAN syncs, -share local packages, restrict package access, find packages across repositories, and more. Experience reliable and +Posit Package Manager, formerly RStudio Package Manager, is a repository management server to organize and centralize +R packages across your team, department, or entire organization. Get offline access to CRAN, automate CRAN syncs, +share local packages, restrict package access, find packages across repositories, and more. Experience reliable and consistent package management, optimized for teams who use R. -The following documentation helps an administrator install and configure Package Manager. It provides information for +The following documentation helps an administrator install and configure Package Manager. It provides information for installing the product on different operating systems, upgrading, and configuring Package Manager. # Notice for support @@ -148,15 +148,15 @@ to [create and manage](https://docs.rstudio.com/rspm/admin/getting-started/confi *Note: This section **does not** apply to activations using license files.* There is currently a known licensing bug when using our products in containers. If the container is not stopped -gracefully, the license deactivation step may fail or be skipped. Failing to deactivate the license can result in a -"license leak" where a product activation is used up and cannot be deactivated using traditional methods as the +gracefully, the license deactivation step may fail or be skipped. Failing to deactivate the license can result in a +"license leak" where a product activation is used up and cannot be deactivated using traditional methods as the activation state on the container has been lost. -To avoid "leaking" licenses, we encourage users not to force kill containers and to use `--stop-timeout 120` and -`--time 120` for `docker run` and `docker stop` commands respectively. This helps ensure the deactivation script has +To avoid "leaking" licenses, we encourage users not to force kill containers and to use `--stop-timeout 120` and +`--time 120` for `docker run` and `docker stop` commands respectively. This helps ensure the deactivation script has ample time to run properly. -In some situations, it can be difficult or impossible to avoid a hard termination (e.g. power failure, +In some situations, it can be difficult or impossible to avoid a hard termination (e.g. power failure, critical error on host). Unfortunately, any of these cases can still cause a license to leak an activation. To help prevent a license leak in these situations, users can mount the following directories to persistent storage to preserve the license state data across restarts of the container. **These directories differ between products.** @@ -171,13 +171,13 @@ the license state data across restarts of the container. **These directories dif Please note that the files created in these directories are hardware locked and non-transferable between hosts. Due to the nature of the hardware fingerprinting algorithm, any low-level changes to the host or container can cause existing license state files to invalidate. To avoid this problem, we advise that product containers are gracefully shutdown -and allowed to deactivate prior to changing any hardware or firmware on the host (e.g. upgrading a network card or +and allowed to deactivate prior to changing any hardware or firmware on the host (e.g. upgrading a network card or updating BIOS) or the container (e.g. changing the network driver used or the allocated number of CPU cores). While preserving license state data *can* help avoid license leaks across restarts, it's not a guarantee. If you run into issues with your license, please do not hesitate to [contact Posit support](https://support.posit.co/hc/en-us). -While neither of these solutions will eliminate the problem, they should help mitigate it. We are still investigating a +While neither of these solutions will eliminate the problem, they should help mitigate it. We are still investigating a long-term solution. # Licensing