我使用旧版本的坚固耐用很长时间,现在我想升级到最新版本。在开发分支中,我发现hunk类属性有问题,例如: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));
奇怪的是,有一个旧的属性'范围',但这个变量不再创建(在检查方法中它总是打印为零)。
是否有一些时间表来解决这个问题,或者它不是一个错误,我应该以其他方式访问new_start和old_start的hunk?
答案 0 :(得分:1)
是的,看起来缺少这些实例变量的访问器。您是否介意在Github问题跟踪器上打开一张坚固的票:https://github.com/libgit2/rugged/issues