Redmine 6.0 將停止支援 Ruby 2.7

為了持續進行 Redmine 繁體中文語系更新的工作,自己使用的 Redmine 版本一向都是 subversion 儲存庫中最新的 trunk 版本。今天例行更新之後,發現 r22648 (Redmine 5.1.1.devel.22648) 版次中,已經提早將 Ruby 2.7 終止支援,隨然好像有點一算,不過想想也算是為了即將到來的 Redmine 6.0 進行暖身,因此趁機把 CentOS 8 系統中使用的 Ruby 2.7 升級為 Ruby 3.0。

CentOS 8 升級 Ruby 3.0

由於系統中的 Ruby 應用程式就只有 Redmine 一個,並未使用 rvm 之類的 Ruby 版本管理機制,所以可以直接將系統使用的 Ruby 版本由 Ruby 2.7 升級至 Ruby 3.0:

$ sudo dnf module reset ruby -y
$ sudo yum install @ruby:3.0

升級後的檢查工作

  1. 重新安裝所有 Redmine 系統內建或是自行安裝的 gems ; 如果不做這項檢查工作,由於舊的 gems 是使用 Ruby 2.7 來編譯,屆時將會發生找不到 libruby.so.2.7 這個 shared library 的錯誤。
  2. 重新編譯與安裝 passenger & mod_passenger;這是由於自己是使用 Apache + passenger 來存取 Redmine 應用程式,所以會需要這個檢查。

一個應用程式的發展是否已經邁入成熟與穩定的階段,從停止支援一個過期的程式語言版本就可以略知一二,以 Redmine 拋棄對 Ruby 2.7 這個程式語言的版本來看,它應該算是一個成熟穩定的應用程式,因為自己在完全不了解 Ruby, RubyGems, Rails 這些咚咚的情況下,完全沒有碰到無法處理需要去求助的問題。

參考資料

發佈留言

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料