カテゴリー
ネットの事件

プルリクエスト <「あ、すいません今ロシアに侵略されてて忙しいので…」

@insky さん作のVue のカラーピッカーライブラリ insky/vue-gpickr に対するプルリクエストのディスカッションの中で、「進捗どうですか? 🙂」という一ユーザーからの何気ないコメントに応じた @insky さんの返事がこれ

ああ、すいません。もう少し時間がかかりそうです。今私の国はロシアの侵略からの防衛中で、今ちょっと忙しいんです。数日のうちにはあなた方の問題に取り組めればと願ってます。

ウクライナに栄光あれ!

O, so sorry. I need more time. Right now my country defending russian invasion, so I’m a little busy now. Hope in few days I’ll return to your problem.

Glory to Ukraine!

これはプルリクエストどころではありませんね。GitHub ユーザーから多くのリアクションマークや応援のコメントがつけられています。

ウクライナ、2014年のマイダン革命の際にも同じような事件が発生していたようです。

I will take a look later. Much much later. Because I’m Ukrainian and we have revolution right now. Sorry

後で見ておきます。たぶんずっと後で。私はウクライナ人で今革命の真っただ中なので。すいません。

@insky さんの無事を願いたいです。

via Hacker News

カテゴリー
ネットの事件

プルリクエストを巡る bot 対 bot の非生産的なやりとり

mysql/mysql-server でのプルリクエストを巡る、bot 対 bot の戦いです。

登場人物、いやbot は以下の2つ。

  • 依存ライブラリが古くなっているのを見つけてパッチを作り更新を提案する(今は)GitHub内のサービス dependabot
  • MySQL への更新提案に対してOCA(Oracle Contributor Agreement = オラクル貢献者同意書)に同意済かを確認する mysql-oca-bot

プルリクエスト上でのやりとりはこんな感じ。

dependabot: Babel (国際化に関する Python製ライブラリ)の最新バージョン 2.9.1 を確認しました。バージョン 2.8.0 から 2.9.1 への更新をコミットしました。

mysql-oca-bot: PRありがとう。OCA には同意してますか? 詳しくはこちらを読んで手続きに従ってください。MySQLバグ管理システムに登録したメールアドレスを添えてくださいね。

(ここで一か月)

mysql-oca-bot: リクエストに反応がないので、このリクエストはクローズします。

dependabot: 今回はこれ以上言わないけど、次のバージョンが出たらまた連絡します。もし次の特定のバージョンまでスキップしたい場合は以下の手順に従ってその旨通知してください。もし気が変わったらこのPRを再開してくれてもいいんですよ。

自動ボット2台だけでやりとりが完結してますね。完結といっても建設的なものではなく、何も進んでませんが。

mysql-oca-bot の方は、OCA に同意して何らかのリプライをつけることで、そのあとに別の人間のユーザーが出てきてマージするかどうかの議論を進める仕組みのようですね。OCA に同意しているかどうかを毎回提案者に聞くのが手間なので、そこを bot 化したのでしょう。

しかし、dependabot はそんな事は知らないし、追加の返答もしないから単に期限切れとなってしまう。

そもそも dependabot を動かしてるのは MySQL であり結局 Oracle なのだから、OCA も何も無いような。dependabot からのPRの場合は人間のアカウントに渡すように設定するべきじゃないのかしら。

同じリポジトリで検索してみたところ、他にも10個ぐらい同じような無為のやりとりが見つかりました。

via twitter

カテゴリー
ツール

GitHub Pages で static な短縮URLサイト作成

nelsontky/gh-pages-url-shortener は、GitHub の静的ファイル公開機能 GitHub Pages を使った、短縮URLホスティングです。

clone して自分でもホストしてみました。s.akimoto.jp の DNS が GitHub Pages を指すように設定します。

https://s.akimoto.jp/ (説明用の index.html が開きます)

そして、GitHub issues にタイトルがURLになる issue を投げる

と、 issue 番号⇒URL の転送が実施されます。

https://s.akimoto.jp/1 ( issue のタイトルに書いた別のアドレスへ転送されます)

その動作原理

  1. CNAME で gh-pages ブランチを指させる
  2. (短縮URLのパス)すべては 404.html に渡される
  3. GitHub issues から JSON API でURL転換情報を JavaScript が取得し、(それに従って)転送
  4. 役に立つ?

ということ。なるほど。GitHub issues を、転送用の lookup table として使っているわけですね。この後転送したい短縮URLを増やすのは、issue を発行すればよいということです。更新や削除も同様。面白い事考えるなあ。

# GitHub API の公開アクセスには60回/時間の制限が掛かっているので、実用的には使えないでしょう。

via Hacker News