From 892d78eb6eaae953c1e810cc28db393ab760ac25 Mon Sep 17 00:00:00 2001 From: Ian Pittwood Date: Wed, 29 May 2024 14:44:43 -0600 Subject: [PATCH 1/6] Update Workbench tests for >=2024.7 preview compatibility --- workbench/test/goss.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/workbench/test/goss.yaml b/workbench/test/goss.yaml index 777a04ee..bfbee8d0 100644 --- a/workbench/test/goss.yaml +++ b/workbench/test/goss.yaml @@ -70,8 +70,8 @@ file: owner: rstudio-server group: rstudio-server {{ $version_split := split "." .Env.RSW_VERSION }} - {{ if or (lt ($version_split._0 | atoi) 2022) (and (eq ($version_split._0 | atoi) 2022) (lt ($version_split._1 | atoi) 12)) }} - /opt/code-server/bin/code-server: + {{ if or (ge ($version_split._0 | atoi) 2025) (and (ge ($version_split._0 | atoi) 2024) (ge ($version_split._1 | atoi) 7)) }} + /usr/lib/rstudio-server/bin/pwb-code-server/bin/code-server: exists: true {{ else }} /usr/lib/rstudio-server/bin/code-server/bin/code-server: From 10d4acc849b17b8904dbe2d78f99f09e351d362e Mon Sep 17 00:00:00 2001 From: Ian Pittwood Date: Thu, 30 May 2024 09:12:47 -0600 Subject: [PATCH 2/6] Update r-session-complete tests for >=2024.7 preview compatibility --- r-session-complete/test/goss.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/r-session-complete/test/goss.yaml b/r-session-complete/test/goss.yaml index 0cf72448..1c7bf336 100644 --- a/r-session-complete/test/goss.yaml +++ b/r-session-complete/test/goss.yaml @@ -6,8 +6,8 @@ file: /usr/local/bin/jupyter: exists: true {{ $version_split := split "." .Env.RSW_VERSION }} - {{ if or (lt ($version_split._0 | atoi) 2022) (and (eq ($version_split._0 | atoi) 2022) (lt ($version_split._1 | atoi) 12)) }} - /opt/code-server/bin/code-server: + {{ if or (ge ($version_split._0 | atoi) 2025) (and (ge ($version_split._0 | atoi) 2024) (ge ($version_split._1 | atoi) 7)) }} + /usr/lib/rstudio-server/bin/pwb-code-server/bin/code-server: exists: true {{ else }} /usr/lib/rstudio-server/bin/code-server/bin/code-server: From 1df874a8a41d15c5660aad5f35d0993bb08b9c22 Mon Sep 17 00:00:00 2001 From: Tyler Date: Thu, 30 May 2024 11:37:00 -0400 Subject: [PATCH 3/6] Bump PPM to 2024.04.2 Update R to version 4.4.0 --- Justfile | 2 +- docker-bake.hcl | 4 ++-- package-manager/.env | 4 ++-- package-manager/Dockerfile.ubuntu2204 | 2 +- package-manager/NEWS.md | 3 +++ package-manager/README.md | 24 ++++++++++++------------ 6 files changed, 21 insertions(+), 18 deletions(-) diff --git a/Justfile b/Justfile index 4386afdb..54ab80eb 100644 --- a/Justfile +++ b/Justfile @@ -8,7 +8,7 @@ sed_vars := if os() == "macos" { "-i ''" } else { "-i" } BUILDX_PATH := "" RSC_VERSION := "2024.04.1" -RSPM_VERSION := "2024.04.0-20" +RSPM_VERSION := "2024.04.2-24" RSW_VERSION := "2024.04.1+748.pro2" DRIVERS_VERSION := "2023.05.0" diff --git a/docker-bake.hcl b/docker-bake.hcl index f9169170..297babdf 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-24" } 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..be9eb954 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-24 +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..b0005eef 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-24 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 From 3ada4d2e0f16492958dd88b5829641fb51ae9e32 Mon Sep 17 00:00:00 2001 From: Ian Pittwood Date: Mon, 10 Jun 2024 09:37:39 -0700 Subject: [PATCH 4/6] Revert "Bump PPM to 2024.04.2" --- Justfile | 2 +- docker-bake.hcl | 4 ++-- package-manager/.env | 4 ++-- package-manager/Dockerfile.ubuntu2204 | 2 +- package-manager/NEWS.md | 3 --- package-manager/README.md | 24 ++++++++++++------------ 6 files changed, 18 insertions(+), 21 deletions(-) diff --git a/Justfile b/Justfile index 54ab80eb..4386afdb 100644 --- a/Justfile +++ b/Justfile @@ -8,7 +8,7 @@ sed_vars := if os() == "macos" { "-i ''" } else { "-i" } BUILDX_PATH := "" RSC_VERSION := "2024.04.1" -RSPM_VERSION := "2024.04.2-24" +RSPM_VERSION := "2024.04.0-20" RSW_VERSION := "2024.04.1+748.pro2" DRIVERS_VERSION := "2023.05.0" diff --git a/docker-bake.hcl b/docker-bake.hcl index 297babdf..f9169170 100644 --- a/docker-bake.hcl +++ b/docker-bake.hcl @@ -4,7 +4,7 @@ variable CONNECT_VERSION { } variable PACKAGE_MANAGER_VERSION { - default = "2024.04.2-24" + default = "2024.04.0-20" } variable WORKBENCH_VERSION { @@ -110,7 +110,7 @@ variable PRO_BUILD_MATRIX { variable PACKAGE_MANAGER_BUILD_MATRIX { default = { builds = [ - {os = "ubuntu2204", r_primary = "4.4.0", r_alternate = "4.3.3", py_primary = "3.12.1", py_alternate = "3.11.7"}, + {os = "ubuntu2204", r_primary = "4.2.3", r_alternate = "4.1.3", py_primary = "3.12.1", py_alternate = "3.11.7"}, ] } } diff --git a/package-manager/.env b/package-manager/.env index be9eb954..f24c5043 100644 --- a/package-manager/.env +++ b/package-manager/.env @@ -1,5 +1,5 @@ -RSPM_VERSION=2024.04.2-24 -R_VERSION=4.4.0 +RSPM_VERSION=2024.04.0-20 +R_VERSION=4.2.3 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 b0005eef..fbe02447 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.2-24 +ARG RSPM_VERSION=2024.04.0-20 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 a59cf4ff..353efa22 100644 --- a/package-manager/NEWS.md +++ b/package-manager/NEWS.md @@ -1,6 +1,3 @@ -# 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 aade5bec..824a9dd2 100644 --- a/package-manager/README.md +++ b/package-manager/README.md @@ -6,16 +6,16 @@ # Supported tags and respective Dockerfile links -* [`jammy`, `ubuntu2204`, `jammy-2024.04.2`, `ubuntu2204-2024.04.2`](https://github.com/rstudio/rstudio-docker-products/blob/main/package-manager/Dockerfile.ubuntu2204) +* [`jammy`, `ubuntu2204`, `jammy-2023.12.0`, `ubuntu2204-2023.12.0`](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 From f0644af01ea40a01078225526b33051d9e050545 Mon Sep 17 00:00:00 2001 From: Gary Ritchie Date: Mon, 10 Jun 2024 16:28:28 -0600 Subject: [PATCH 5/6] bump pwb to 2024.04.2+764.pro1 --- Justfile | 2 +- docker-bake.hcl | 2 +- r-session-complete/.env | 2 +- r-session-complete/Dockerfile.ubuntu2204 | 2 +- r-session-complete/README.md | 2 +- workbench-for-google-cloud-workstations/.env | 4 ++-- workbench-for-google-cloud-workstations/Dockerfile.ubuntu2204 | 2 +- workbench-for-microsoft-azure-ml/.env | 2 +- workbench-for-microsoft-azure-ml/Dockerfile.ubuntu2204 | 4 ++-- workbench/.env | 2 +- workbench/Dockerfile.ubuntu2204 | 2 +- workbench/README.md | 2 +- 12 files changed, 14 insertions(+), 14 deletions(-) diff --git a/Justfile b/Justfile index 4386afdb..cb4fec81 100644 --- a/Justfile +++ b/Justfile @@ -9,7 +9,7 @@ BUILDX_PATH := "" RSC_VERSION := "2024.04.1" RSPM_VERSION := "2024.04.0-20" -RSW_VERSION := "2024.04.1+748.pro2" +RSW_VERSION := "2024.04.2+764.pro1" DRIVERS_VERSION := "2023.05.0" DRIVERS_VERSION_RHEL := DRIVERS_VERSION + "-1" diff --git a/docker-bake.hcl b/docker-bake.hcl index f9169170..0abaecd4 100644 --- a/docker-bake.hcl +++ b/docker-bake.hcl @@ -8,7 +8,7 @@ variable PACKAGE_MANAGER_VERSION { } variable WORKBENCH_VERSION { - default = "2024.04.1+748.pro2" + default = "2024.04.2+764.pro1" } variable DRIVERS_VERSION { diff --git a/r-session-complete/.env b/r-session-complete/.env index e34997df..43fc3794 100644 --- a/r-session-complete/.env +++ b/r-session-complete/.env @@ -1,4 +1,4 @@ R_VERSION=4.1.0 PYTHON_VERSION=3.9.5 -RSW_VERSION=2024.04.1+748.pro2 +RSW_VERSION=2024.04.2+764.pro1 DRIVERS_VERSION=2024.03.0-1 diff --git a/r-session-complete/Dockerfile.ubuntu2204 b/r-session-complete/Dockerfile.ubuntu2204 index 582e0aeb..8a608cc5 100644 --- a/r-session-complete/Dockerfile.ubuntu2204 +++ b/r-session-complete/Dockerfile.ubuntu2204 @@ -6,7 +6,7 @@ ARG R_VERSION_ALT=4.3.3 ARG PYTHON_VERSION=3.9.17 ARG PYTHON_VERSION_ALT=3.8.17 ARG JUPYTERLAB_VERSION=3.6.5 -ARG RSW_VERSION=2024.04.1+748.pro2 +ARG RSW_VERSION=2024.04.2+764.pro1 ARG RSW_NAME=rstudio-workbench ARG RSW_DOWNLOAD_URL=https://download2.rstudio.org/server/jammy/amd64 ARG SCRIPTS_DIR=/opt/positscripts diff --git a/r-session-complete/README.md b/r-session-complete/README.md index dc50a380..351078ce 100644 --- a/r-session-complete/README.md +++ b/r-session-complete/README.md @@ -7,7 +7,7 @@ # Supported tags and respective Dockerfile links -* [`jammy`, `ubuntu2204`, `jammy-2024.04.0`, `ubuntu2204-2024.04.0`](https://github.com/rstudio/rstudio-docker-products/blob/main/r-session-complete/Dockerfile.ubuntu2204) +* [`jammy`, `ubuntu2204`, `jammy-2024.04.2`, `ubuntu2204-2024.04.2`](https://github.com/rstudio/rstudio-docker-products/blob/main/r-session-complete/Dockerfile.ubuntu2204) # What are the r-session-complete images? diff --git a/workbench-for-google-cloud-workstations/.env b/workbench-for-google-cloud-workstations/.env index c5c7cb4f..114613d0 100644 --- a/workbench-for-google-cloud-workstations/.env +++ b/workbench-for-google-cloud-workstations/.env @@ -1,5 +1,5 @@ -RSW_VERSION=2024.04.1+748.pro2 -RSW_TAG_VERSION=2024.04.1-748.pro2 +RSW_VERSION=2024.04.2+764.pro1 +RSW_TAG_VERSION=2024.04.2-764.pro1 RSW_DOWNLOAD_URL=https://download2.rstudio.org/server/jammy/amd64 RSW_NAME=rstudio-workbench PYTHON_VERSION=3.11.9 diff --git a/workbench-for-google-cloud-workstations/Dockerfile.ubuntu2204 b/workbench-for-google-cloud-workstations/Dockerfile.ubuntu2204 index 9675ac76..6347f4f7 100644 --- a/workbench-for-google-cloud-workstations/Dockerfile.ubuntu2204 +++ b/workbench-for-google-cloud-workstations/Dockerfile.ubuntu2204 @@ -9,7 +9,7 @@ ARG PYTHON_VERSION_ALT=3.10.14 ARG PYTHON_VERSION_JUPYTER=3.10.14 ARG JUPYTERLAB_VERSION=3.6.7 ARG DRIVERS_VERSION=2023.05.0 -ARG RSW_VERSION=2024.04.1+748.pro2 +ARG RSW_VERSION=2024.04.2+764.pro1 ARG RSW_NAME=rstudio-workbench ARG RSW_DOWNLOAD_URL=https://download2.rstudio.org/server/jammy/amd64 ARG SCRIPTS_DIR=/opt/positscripts diff --git a/workbench-for-microsoft-azure-ml/.env b/workbench-for-microsoft-azure-ml/.env index 09c93825..5cb6825f 100644 --- a/workbench-for-microsoft-azure-ml/.env +++ b/workbench-for-microsoft-azure-ml/.env @@ -1,4 +1,4 @@ -RSW_VERSION=2024.04.1+748.pro2 +RSW_VERSION=2024.04.2+764.pro1 RSW_DOWNLOAD_URL=https://download2.rstudio.org/server/bionic/amd64 RSW_NAME=rstudio-workbench PYTHON_VERSION=3.9.14 diff --git a/workbench-for-microsoft-azure-ml/Dockerfile.ubuntu2204 b/workbench-for-microsoft-azure-ml/Dockerfile.ubuntu2204 index 6be16cbc..c77416b9 100644 --- a/workbench-for-microsoft-azure-ml/Dockerfile.ubuntu2204 +++ b/workbench-for-microsoft-azure-ml/Dockerfile.ubuntu2204 @@ -7,7 +7,7 @@ ARG PYTHON_VERSION=3.9.17 ARG PYTHON_VERSION_ALT=3.8.17 ARG PYTHON_VERSION_JUPYTER=3.8.17 ARG JUPYTERLAB_VERSION=3.6.7 -ARG RSW_VERSION=2024.04.1+748.pro2 +ARG RSW_VERSION=2024.04.2+764.pro1 ARG RSW_NAME=rstudio-workbench ARG RSW_DOWNLOAD_URL=https://download2.rstudio.org/server/jammy/amd64 ARG SCRIPTS_DIR=/opt/positscripts @@ -178,5 +178,5 @@ LABEL \ azure.ii.endpoints='[{"label":"connect","target":8787,"protocol":"http"}]' \ org.opencontainers.image.description='A professional integrated development environment for data science teams using R and Python' \ org.opencontainers.image.title='RStudio Workbench' \ - org.opencontainers.image.version='2024.04.1+748.pro2' \ + org.opencontainers.image.version='2024.04.2+764.pro1' \ org.opencontainers.image.url='https://www.rstudio.com/products/workbench/' diff --git a/workbench/.env b/workbench/.env index c7526254..c5852ccd 100644 --- a/workbench/.env +++ b/workbench/.env @@ -1,4 +1,4 @@ -RSW_VERSION=2024.04.1+748.pro2 +RSW_VERSION=2024.04.2+764.pro1 RSW_DOWNLOAD_URL=https://download2.rstudio.org/server/bionic/amd64 RSW_NAME=rstudio-workbench PYTHON_VERSION=3.9.17 diff --git a/workbench/Dockerfile.ubuntu2204 b/workbench/Dockerfile.ubuntu2204 index 74d74fa0..712dab62 100644 --- a/workbench/Dockerfile.ubuntu2204 +++ b/workbench/Dockerfile.ubuntu2204 @@ -7,7 +7,7 @@ ARG PYTHON_VERSION=3.9.17 ARG PYTHON_VERSION_ALT=3.8.17 ARG PYTHON_VERSION_JUPYTER=3.8.17 ARG JUPYTERLAB_VERSION=3.6.7 -ARG RSW_VERSION=2024.04.1+748.pro2 +ARG RSW_VERSION=2024.04.2+764.pro1 ARG RSW_NAME=rstudio-workbench ARG RSW_DOWNLOAD_URL=https://download2.rstudio.org/server/jammy/amd64 ARG SCRIPTS_DIR=/opt/positscripts diff --git a/workbench/README.md b/workbench/README.md index 17020f9c..92584be7 100644 --- a/workbench/README.md +++ b/workbench/README.md @@ -7,7 +7,7 @@ # Supported tags and respective Dockerfile links -* [`jammy`, `ubuntu2204`, `jammy-2024.04.0`, `ubuntu2204-2024.04.0`](https://github.com/rstudio/rstudio-docker-products/blob/main/workbench/Dockerfile.ubuntu2204) +* [`jammy`, `ubuntu2204`, `jammy-2024.04.2`, `ubuntu2204-2024.04.2`](https://github.com/rstudio/rstudio-docker-products/blob/main/workbench/Dockerfile.ubuntu2204) # What is RStudio Workbench? From 9a017cf5c6c9b42e0188925c87d0a0b4bcc7339e Mon Sep 17 00:00:00 2001 From: Tyler Finethy Date: Fri, 14 Jun 2024 14:19:43 -0400 Subject: [PATCH 6/6] Reapply "Bump PPM to 2024.04.2" (#795) * Reapply "Bump PPM to 2024.04.2" This reverts commit 3ada4d2e0f16492958dd88b5829641fb51ae9e32. * Bump to patch 26 * Bump to patch 27 * Bump to patch 29 * Update Justfile Co-authored-by: Michael Thomson <56164984+fh-mthomson@users.noreply.github.com> --------- Co-authored-by: Michael Thomson <56164984+fh-mthomson@users.noreply.github.com> --- Justfile | 2 +- docker-bake.hcl | 4 ++-- package-manager/.env | 4 ++-- package-manager/Dockerfile.ubuntu2204 | 2 +- package-manager/NEWS.md | 3 +++ package-manager/README.md | 24 ++++++++++++------------ 6 files changed, 21 insertions(+), 18 deletions(-) diff --git a/Justfile b/Justfile index cb4fec81..e6facb03 100644 --- a/Justfile +++ b/Justfile @@ -8,7 +8,7 @@ sed_vars := if os() == "macos" { "-i ''" } else { "-i" } BUILDX_PATH := "" RSC_VERSION := "2024.04.1" -RSPM_VERSION := "2024.04.0-20" +RSPM_VERSION := "2024.04.2-29" RSW_VERSION := "2024.04.2+764.pro1" DRIVERS_VERSION := "2023.05.0" diff --git a/docker-bake.hcl b/docker-bake.hcl index 0abaecd4..1dbc2483 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