From 05b231fef5033e7217fc4cb5227cbcb0ec45f8a4 Mon Sep 17 00:00:00 2001 From: Klaus Zanders Date: Tue, 31 Mar 2026 11:21:01 +0200 Subject: [PATCH] Bump ruby to 4.0.2 --- .ruby-version | 2 +- Gemfile.lock | 4 +-- docker/dev/backend/Dockerfile | 2 +- docker/prod/Dockerfile | 2 +- .../development-environment/linux/README.md | 14 ++++---- .../development-environment/macos/README.md | 14 ++++---- .../installation/manual/README.md | 33 +++++++++---------- 7 files changed, 35 insertions(+), 36 deletions(-) diff --git a/.ruby-version b/.ruby-version index 1454f6ed4b7..4d54daddb61 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -4.0.1 +4.0.2 diff --git a/Gemfile.lock b/Gemfile.lock index fb0900a8a8b..9b063d810a8 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -2328,7 +2328,7 @@ CHECKSUMS zeitwerk (2.7.5) sha256=d8da92128c09ea6ec62c949011b00ed4a20242b255293dd66bf41545398f73dd RUBY VERSION - ruby 4.0.1 + ruby 4.0.2 BUNDLED WITH - 4.0.6 + 4.0.9 diff --git a/docker/dev/backend/Dockerfile b/docker/dev/backend/Dockerfile index e2a04a60889..8e6a5df6bc6 100644 --- a/docker/dev/backend/Dockerfile +++ b/docker/dev/backend/Dockerfile @@ -1,4 +1,4 @@ -FROM ruby:4.0.1-trixie AS develop +FROM ruby:4.0.2-trixie AS develop LABEL org.opencontainers.image.authors="operations@openproject.com" ARG DEV_UID=1000 diff --git a/docker/prod/Dockerfile b/docker/prod/Dockerfile index 7a6930e75de..59a4743206a 100755 --- a/docker/prod/Dockerfile +++ b/docker/prod/Dockerfile @@ -1,4 +1,4 @@ -ARG RUBY_VERSION="4.0.1" +ARG RUBY_VERSION="4.0.2" ARG DEBIAN_BASE="trixie" # Add SBOM scan context for intermediate steps ARG BUILDKIT_SBOM_SCAN_CONTEXT=true diff --git a/docs/development/development-environment/linux/README.md b/docs/development/development-environment/linux/README.md index 223026715eb..8b405235892 100644 --- a/docs/development/development-environment/linux/README.md +++ b/docs/development/development-environment/linux/README.md @@ -40,10 +40,10 @@ sudo apt-get install git curl build-essential zlib1g-dev libyaml-dev libssl-dev Use [rbenv](https://github.com/rbenv/rbenv) and [ruby-build](https://github.com/rbenv/ruby-build#readme) to install Ruby. You can check available ruby versions with `rbenv install --list`. -At the time of this writing, the latest stable version is `4.0.1`, which we also require. +At the time of this writing, the latest stable version is `4.0.2`, which we also require. We suggest you install the version we require in [.ruby-version](https://github.com/opf/openproject/blob/dev/.ruby-version). -Read the first line e.g. `4.0.1` and install that version. +Read the first line e.g. `4.0.2` and install that version. #### Install rbenv and ruby-build @@ -80,18 +80,18 @@ With both installed, we can now install ruby. You can check available ruby versions with `rbenv install --list`. We suggest you install the version we require in [.ruby-version](https://github.com/opf/openproject/blob/dev/.ruby-version). -Read the first line e.g. `4.0.1` and install that version. +Read the first line e.g. `4.0.2` and install that version. ```shell # Install the required version as read from the .ruby-version file -rbenv install 4.0.1 +rbenv install 4.0.2 ``` This might take a while depending on whether ruby is built from source. After it is complete, you need to tell rbenv to globally activate this version ```shell -rbenv global 4.0.1 +rbenv global 4.0.2 rbenv rehash ``` @@ -181,10 +181,10 @@ You should now have an active ruby and node installation. Verify that it works w ```shell ruby --version -ruby 4.0.1 (2026-01-13 revision e04267a14b) +PRISM [arm64-darwin25] +ruby 4.0.2 (2026-03-17 revision d3da9fec82) +PRISM [arm64-darwin25] bundler --version -4.0.3 +4.0.9 node --version v22.21.0 diff --git a/docs/development/development-environment/macos/README.md b/docs/development/development-environment/macos/README.md index ba6694a3e7e..b38a65a01ba 100644 --- a/docs/development/development-environment/macos/README.md +++ b/docs/development/development-environment/macos/README.md @@ -28,7 +28,7 @@ their homepage. Use [rbenv](https://github.com/rbenv/rbenv) and [ruby-build](https://github.com/rbenv/ruby-build#readme) to install Ruby. We always require the latest ruby versions, and you can check which version is required by [checking the Gemfile](https://github.com/opf/openproject/blob/dev/Gemfile#L31) for the `ruby "~> X.Y"` statement. At -the time of writing, this version is "4.0.1" +the time of writing, this version is "4.0.2" #### Install rbenv and ruby-build @@ -48,18 +48,18 @@ With both installed, we can now install the actual ruby version. You can check available ruby versions with `rbenv install --list`. We suggest you install the version we require in [.ruby-version](https://github.com/opf/openproject/blob/dev/.ruby-version). -Read the first line e.g. `4.0.1` and install that version. +Read the first line e.g. `4.0.2` and install that version. ```shell # Install the required version as read from the .ruby-version file -rbenv install 4.0.1 +rbenv install 4.0.2 ``` This might take a while depending on whether ruby is built from source. After it is complete, you need to tell rbenv to globally activate this version ```shell -rbenv global 4.0.1 +rbenv global 4.0.2 ``` You also need to install [bundler](https://github.com/bundler/bundler/), the ruby gem bundler. @@ -134,7 +134,7 @@ You should now have an active ruby and node installation. Verify that it works w ```shell $ ruby --version -ruby 4.0.1 (2026-01-13 revision e04267a14b) +PRISM [arm64-darwin25] +ruby 4.0.2 (2026-03-17 revision d3da9fec82) +PRISM [arm64-darwin25] $ bundler --version 4.0.3 @@ -196,7 +196,7 @@ automatically loaded to the application's environment. > [!TIP] > Instead of using the `gssencmode` flag in `config/database.yml`, you can add `export PGGSSENCMODE="disable"` to your -> Shell profile (`~/.zprofile` by default). This will prevent Ruby crashes for *all* of your projects. +> Shell profile (`~/.zprofile` by default). This will prevent Ruby crashes for _all_ of your projects. Some users report Ruby crashes despite having set this flag to disable. If this is the case for you as well, try adding `export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=yes` to your Shell profile. @@ -328,7 +328,7 @@ sudo ln -sfn $(brew --prefix)/opt/openjdk/libexec/openjdk.jdk /Library/Java/Java #### Subversion To test the integration with Subversion repositories, we rely on the `svnadmin` command to be available. If subversion -is not installed, the tests *will be skipped*. To run the tests, install subversion with +is not installed, the tests _will be skipped_. To run the tests, install subversion with ```shell brew install subversion diff --git a/docs/installation-and-operations/installation/manual/README.md b/docs/installation-and-operations/installation/manual/README.md index 2092086ffbf..ccc9758556d 100644 --- a/docs/installation-and-operations/installation/manual/README.md +++ b/docs/installation-and-operations/installation/manual/README.md @@ -10,16 +10,16 @@ sidebar_navigation: false Please be aware that: -* This guide **requires** that you have a clean **Ubuntu 18.04** **x64** installation -with administrative rights (i.e. you must be able to `sudo`). We have tested -the installation guide on an Ubuntu Server image, but it should work on any -derivative. You may need to alter some of the commands to match your -derivative. +- This guide **requires** that you have a clean **Ubuntu 18.04** **x64** installation + with administrative rights (i.e. you must be able to `sudo`). We have tested + the installation guide on an Ubuntu Server image, but it should work on any + derivative. You may need to alter some of the commands to match your + derivative. -* OpenProject will be installed with a **PostgreSQL** database. +- OpenProject will be installed with a **PostgreSQL** database. -* OpenProject will be served in a production environment with the **Apache** server -(this guide should work similarly with other servers, like nginx and others) +- OpenProject will be served in a production environment with the **Apache** server + (this guide should work similarly with other servers, like nginx and others) > **NOTE:** We have highlighted commands to execute like this @@ -106,19 +106,19 @@ Please be aware that the actual installation of a specific Ruby version takes so ``` We suggest you install the version we require in [.ruby-version](https://github.com/opf/openproject/blob/dev/.ruby-version). -Read the first line e.g. `4.0.1` and install that version. +Read the first line e.g. `4.0.2` and install that version. ```shell -[openproject@host] rbenv install 4.0.1 +[openproject@host] rbenv install 4.0.2 [openproject@host] rbenv rehash -[openproject@host] rbenv global 4.0.1 +[openproject@host] rbenv global 4.0.2 ``` To check our Ruby installation we run `ruby --version`. It should output something very similar to: ```text -ruby 4.0.1 (2026-01-13 revision e04267a14b) +PRISM [arm64-darwin25] +ruby 4.0.2 (2026-03-17 revision d3da9fec82) +PRISM [arm64-darwin25] ``` ## Installation of Node @@ -216,7 +216,6 @@ rails_cache_store: :memcache ``` > **NOTE:** You should validate your `yml` files, for example with [yamlchecker.com](https://yamlchecker.com/). Both, the `database.yml` and `configuration.yml` file are sensitive to whitespace. It is pretty easy to write invalid `yml` files without seeing the error. Validating those files prevents you from such errors. -> To configure the environment variables such as the number of web server threads `OPENPROJECT_WEB_WORKERS`, copy the `.env.example` to `.env` and add the environment variables you want to configure. The variables will be automatically loaded to the application's environment. @@ -428,7 +427,7 @@ If you need to restart the server (for example after a configuration change), do ## Frequently asked questions (FAQ) -* **I followed the installation guide faithfully and OpenProject is running. Now, how do I log in?** +- **I followed the installation guide faithfully and OpenProject is running. Now, how do I log in?** The `db:seed` command listed above creates a default admin-user. The username is `admin` and the default password is `admin`. You are forced to change the admin password on the first login. If you cannot login as the admin user, make sure that you have executed the `db:seed` command. @@ -437,18 +436,18 @@ If you need to restart the server (for example after a configuration change), do [openproject@all] RAILS_ENV="production" ./bin/rake db:seed ``` -* **When accessing OpenProject, I get an error page. How do I find out what went wrong?** +- **When accessing OpenProject, I get an error page. How do I find out what went wrong?** Things can go wrong on different levels. You can find the apache error logs here: `/var/log/apache2/error.log` The OpenProject log can be found here: `/home/openproject/openproject/log/production.log` -* **I cannot solve an error, not even with the log files. How do I get help?** +- **I cannot solve an error, not even with the log files. How do I get help?** You can find help in [the OpenProject forums](https://community.openproject.org/projects/openproject/boards). Please tell us, if possible, what you have done (e.g. which guide you have used to install OpenProject), how to reproduce the error, and provide the appropriate error logs. It often helps to have a look at the already answered questions, or to search the Internet for the error. Most likely someone else has already solved the same problem. -* **I get errors, since I have installed an OpenProject plug-in** +- **I get errors, since I have installed an OpenProject plug-in** With each new OpenProject core version, the plug-ins might need to be updated. Please make sure that the plug-in versions of all you plug-ins works with the OpenProject version you use. Many plug-ins follow the OpenProject version with their version number (So, if you have installed OpenProject version 4.1.0, the plug-in should also have the version 4.1.0).