[SRU] svn2git crashes due to API change in ruby 3.2
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
svn2git (Ubuntu) | Status tracked in Oracular | |||||
Noble |
Fix Committed
|
Undecided
|
Unassigned | |||
Oracular |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
[ Impact ]
svn2git is completely unusable. It will immediately when any user executes it.
The error will be:
$ svn2git
/usr/lib/
if File.exists?
Did you mean? exist?
from /usr/lib/
from /usr/bin/
from /usr/bin/
This is cause by Ruby3.2 upgrade in Ubuntu as the API (which was deprecated) has been removed now.
[ Test Plan ]
sudo apt install svn2git
mkdir test
cd test
svn2git svn://repo.
After the above command completes:
'git log' to confirm that the svn is now available as a git repo locally.
[ Where problems could occur ]
There is a small change in the code to use File.exist() instead of File.exists() which has been removed from Ruby-3.2. Looking at the code, the new API is using stat() or fstat() system calls but the previous API had a different implementation. So, there can be a risk that the new API does not work same way as the old one.
But considering that currently svn2git does not even start so as a worst case scenario if the fix causes some regression then the user will not see any new issue but will continue to see the same problem as is now.
[ Other Info ]
The issue is not seen in Debian yet as Debian is still using the old Ruby-3.1
[ Original Bug Description ]
svn2git will crash with the following error message:
/usr/lib/
Due to API change, `exists` -> `exist`
svn2git:
Installed: 2.4.0-3
Candidate: 2.4.0-3
Version table:
*** 2.4.0-3 500
500 http://
100 /var/lib/
DISTRIB_ID=Ubuntu
DISTRIB_
DISTRIB_
DISTRIB_
PRETTY_NAME="Ubuntu 24.04 LTS"
NAME="Ubuntu"
VERSION_ID="24.04"
VERSION="24.04 LTS (Noble Numbat)"
VERSION_
ID=ubuntu
ID_LIKE=debian
HOME_URL="https:/
SUPPORT_URL="https:/
BUG_REPORT_URL="https:/
PRIVACY_
UBUNTU_
LOGO=ubuntu-logo
Changed in svn2git (Ubuntu Noble): | |
status: | New → In Progress |
Changed in svn2git (Ubuntu Oracular): | |
status: | New → In Progress |
Changed in svn2git (Ubuntu Noble): | |
assignee: | nobody → Sudip Mukherjee (sudipmuk) |
Changed in svn2git (Ubuntu Oracular): | |
assignee: | nobody → Sudip Mukherjee (sudipmuk) |
Changed in svn2git (Ubuntu Oracular): | |
assignee: | Sudip Mukherjee (sudipmuk) → nobody |
summary: |
- svn2git crashes due to API change in ruby 3.2 + [SRU] svn2git crashes due to API change in ruby 3.2 |
description: | updated |
description: | updated |
description: | updated |
Uploaded to SRU queue now.