めんてなのおしごと

Thu, Jan 3, 2019 in debian debian

ruby-netrcパッケージのバグのtriage。どうもテストケースがbuilddだと問題になるようだ(これは後に間違いだと気付く)。assert_equal File.join(Dir.pwd, '.netrc'), Netrc.default_pathが以下のような結果になる。

  1) Failure:
TestNetrc#test_missing_environment [/<<PKGBUILDDIR>>/test/test_netrc.rb:203]:
--- expected
+++ actual
@@ -1,2 +1 @@
-# encoding: ASCII-8BIT
-"/<<PKGBUILDDIR>>/.netrc"
+"/build/.netrc"

<<PKGBUILDDIR>>なんて変わった値が放り込まれてしまっている?…と思ったら、これは「builddでのログ出力で置き換えてるだけ」なのか。手元でビルドする時はcowbuilderでやってしまっていたので、sbuild環境を用意するのにも時間が…あれ?sbuildでも普通にビルドできちゃった。というか、builddでも以前にビルド自体は出来てるのか…。はてな?

バグレポートを再度よく読み、テスト部分を再確認。

  def test_missing_environment
    nil_home = nil
    ENV["HOME"], nil_home = nil_home, ENV["HOME"]
    assert_equal File.join(Dir.pwd, '.netrc'), Netrc.default_path
  ensure
    ENV["HOME"], nil_home = nil_home, ENV["HOME"]
  end

default_pathでgrep…。

  def self.default_path
    File.join(ENV['NETRC'] || home_path, netrc_filename)
  end

あー、これだ。NETRCが存在しない場合にhome_path、つまりは上記のエラーになる環境では/buildが指定されてるのにもかかわらず、ビルドをしているDir.pwdは別、ということだろうな。さて、どういうふうにして回避するかね…

    p nil_home
    p ENV["HOME"]
    p Netrc.home_path

とすると

"/home/henrich"
nil
"/build/ruby-netrc-0.11.0"

が返る。あれ?予想と違う。home_path/build/ruby-netrc-0.11.0なのか。ENV["HOME"]nilであっても問題なし、ということを言いたいとすれば以下のようにするのが良さそう

--- a/test/test_netrc.rb
+++ b/test/test_netrc.rb
@@ -200,7 +200,7 @@
   def test_missing_environment
     nil_home = nil
     ENV["HOME"], nil_home = nil_home, ENV["HOME"]
-    assert_equal File.join(Dir.pwd, '.netrc'), Netrc.default_path
+    assert_equal File.join(Netrc.home_path, '.netrc'), Netrc.default_path
   ensure
     ENV["HOME"], nil_home = nil_home, ENV["HOME"]
   end

でアップロードした。


ruby-eventmachineパッケージのFTBFSがpendingに10ヶ月ぐらいなったままなので質問した。→どうやらsegfaultするという問題があるらしい。うーむ。


os-autoinstを直せるかな、と思ってビルドするも

The following packages have unmet dependencies:
 libopencv-imgcodecs3.2 : Depends: gdal-abi-2-3-0 which is a virtual package and is not provided by any available package

 libvtk6.3 : Depends: gdal-abi-2-3-0 which is a virtual package and is not provided by any available package 

げぇ。

Package: libgdal20
Version: 2.4.0+dfsg-1
Priority: optional
Section: libs
Source: gdal
Maintainer: Debian GIS Project <pkg-grass-devel@lists.alioth.debian.org>
Installed-Size: 20.2 MB
Provides: gdal-abi-2-4-0

こいつか…。Transition trackerを見る限り、ここ1時間でビルドされたりしてるので、今日はたまたまあたってしまった、という感じか。


fonts-monapoパッケージをアップデート。upstreamが配布しなくなってた。