Ruby-odbc и ruby ​​3.2.2: неопределенный символ: rb_tainted_str_new

ruby-odbc выдает ошибку на ruby ​​3.2.x из-за:

ruby-odbc-0.99999/lib/odbc.so: undefined symbol: rb_tainted_str_new

В самом деле, методы ruby ​​C rb_tainted_str_new теперь удалены. Вы не знаете, есть ли какой-нибудь патч, чтобы решить эту проблему?

И вообще, есть ли кто-нибудь, кто занимается обслуживанием этого драгоценного камня?

Пошаговое руководство по созданию собственного Slackbot: От установки до развертывания
Пошаговое руководство по созданию собственного Slackbot: От установки до развертывания
Шаг 1: Создание приложения Slack Чтобы создать Slackbot, вам необходимо создать приложение Slack. Войдите в свою учетную запись Slack и перейдите на...
0
0
52
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Пока драгоценный камень не управляет какой-либо логикой с механизмом заражения, его можно тривиально исправить, заменив rb_tainted_str_new на rb_str_new (что должно включать замену rb_tainted_str_new2 на rb_str_new2) и удалив все вызовы rb_obj_taint.

Похоже, кто-то уже разветвил ruby-odbc для этого:

В вашем gemfile вы можете установить их пропатченную версию:

gem 'ruby-odbc', github: 'vhermecz/ruby-odbc'

Спасибо, исправление работает просто отлично. Я рад, что патч уже был сделан, и что мне не нужно делать это самому. Надеюсь, у этого драгоценного камня будет официальное исправление.

GPif 22.05.2023 09:54

Другие вопросы по теме