Не удается получить доступ к свойствам new_start, old_start и т. д. фрагмента

Я использовал старую версию Rugged в течение длительного времени, и теперь я хотел бы перейти на новейшую версию. В ветке разработки я обнаружил, что что-то не так со свойствами класса ханков, такими как: old_start, new_start, old_lines, new_lines - я не могу получить доступ к этим свойствам из-за отсутствия аксессоров (если я правильно понял код). Раньше эти параметры включались в свойство range, теперь они вынесены в отдельные переменные, но без соответствующих аксессоров в lib/rugged/diff/hunk.rb:

module Rugged
  class Diff
    class Hunk
      include Enumerable
      alias each each_line

      attr_reader :line_count, :header, :range, :owner

В ext/rugged/rugged/rugged_diff_hunk.c у нас есть:

rb_iv_set(rb_hunk, "@old_start", INT2FIX(hunk->old_start));
rb_iv_set(rb_hunk, "@old_lines", INT2FIX(hunk->old_lines));
rb_iv_set(rb_hunk, "@new_start", INT2FIX(hunk->new_start));
rb_iv_set(rb_hunk, "@new_lines", INT2FIX(hunk->new_lines));

Что также странно, есть старый метод доступа к свойству range, но эта переменная больше не создается (в методе проверки она всегда печатается как nil).

Есть ли какое-то расписание, чтобы исправить эту проблему, или это не ошибка, и я должен получить доступ к new_start и old_start куска каким-то другим способом?


person Piotr    schedule 22.04.2014    source источник


Ответы (1)


Да, похоже, что средства доступа для этих переменных экземпляра отсутствуют. Не могли бы вы открыть тикет в системе отслеживания проблем Github для Rugged по адресу: https://github.com/libgit2/rugged/issues

person Arthur Schreiber    schedule 22.04.2014