Monthly report 2018-03 -- 2018-04
– の日記。
ニュース・知ったこと
Rust 1.24.1 リリース ()
FFI 周辺での unwinding (panic) の挙動に関するリグレッションの修正と、 Windows 関連のエラー修正など。
Rust の stdsimd が nightly で std 入り ()
めでたい🎉
Hiveway の可燃性が高い ()
- ブロックチェーンSNS「hiveway」とマストドンとの関係 - ITmedia NEWS
- マストドンの問題はぼくらが解決する ブロックチェーンSNSのhiveway CEOが語る - ITmedia NEWS
- Hiveway CEO: We are the biggest Mastodon fans – Hiveway – Medium (元ページ削除済)
実態としては fork ということになるので、 Mastodon が AGPL-3 である以上はその行為自体に問題はない。 しかし git と GitHub を使っているにも関わらず Mastodon での git メタデータ(過去のコミット)を消し去って著作権情報をトラッキングしづらくしている(著作者を偽っていると捉えることもできる?)とか、いろいろ勘違いしてそうな主張がされているなど、何やら不健全というか怪しい雰囲気がある。
はてさて。
Vulkan 1.1 リリース ()
- Vulkan Overview - The Khronos Group Inc
- Khronos Group Releases Vulkan 1.1 - The Khronos Group Inc
- Yavit: "https://www.khronos.org/news/press/khronos-group-…" - gs.yvt.jp
🎉
Linux の Intel CPU 内臓グラフィックスでまともに使えるようになるのはいつ頃になるだろう。 (以前試したときはドライバが開発途上でまだバグだらけだったので、自作ゲームで使ってみる気にはなれなかった。)
Let's Encrypt が ACMEv2 と ワイルドカード証明書をサポート (2018-03-14)
- Let's Encrypt - Free SSL/TLS Certificates
- ACME v2 and Wildcard Certificate Support is Live - Issuance Policy - Let's Encrypt Community Support
予定より遅延していた ACMEv2 とワイルドカード証明書対応だが、めでたく正式リリースとなった。
Rust の inclusive range (`..=`) の安定化が merge された ()
プログラミングにおいて両端を整数で表現する区間は半開区間にするのが一般的である[要出典]が、 inclusive すなわち両端を含む閉区間を指定する演算子もまた有用であり、 Rust でもそのような演算子が提案されていた。
Rust では ..
が半開区間なのに対し、 ...
を閉区間にすることもできたのだろうが、これがまた Ruby と逆で大変紛らわしい[0]し、そうでなくとも字面もよく似ており取り違えや typo によるバグの原因になるということで、 ..=
を閉区間に使うということになった。
(……という経緯があったような記憶を朧げに持っているのだが、確信はないので信じないでほしい。)
そういったわけで(かは知らないが)、既に入っていた ..
とは別に ..=
が提案されていたが、それがやっと安定化されるとのことである。
AV1 video format released ()
H.264 や H.265 、 VP9 等に次ぐ、次世代の動画コーデック。 ロイヤリティフリーのオープンなフォーマット。
是非とも覇権を獲得してほしいが、エンコードが激重らしいのですぐには普及しないかも? ハードウェアでの対応に期待したい。
そういえば可逆圧縮の動画コーデックとしては FFV1 が IETF RFC のドラフトとして標準化過程にあるが、こちらも普及に期待したいところである(と言いつつ使ったことはないが)。
パブリック DNS 1.1.1.1 ()
- 1.1.1.1 — the Internet’s Fastest, Privacy-First DNS Resolver
- IPアドレスを保存しない高速パブリックDNSサービス「1.1.1.1」、APNICとCloudflareが無料提供 - INTERNET Watch
- その他似たようなやつ
プライバシーを大事にね。
ジョークRFC: RFC 8369 ()
- RFC 8369 - Internationalizing IPv6 Using 128-Bit Unicode
- Fadis on Twitter: "RFC8369もジョークRFCかな。世界中のあらゆる食べ物、生物、宇宙の星々の絵文字にコードポイントを割り当てていけば21bitのUnicodeの空間は枯渇するため拡張が必要で、それを表現できるUTF-128が必要になる。UTF-128でIPv6アドレスを表記すれば1文字で表現できる、という話 https://t.co/7p0iza3qjz"
Unicode emoji を踏まえての皮肉だと考えるのは穿ちすぎだろうか(読んでない顔)。
Rust の never_type 、安定化されかけるも revert される ()
- Stabilize TryFrom / TryInto, and tweak impls for integers by SimonSapin · Pull Request #49305 · rust-lang/rust
- replace `convert::Infallible` with `!` by canndrew · Pull Request #49038 · rust-lang/rust
- Revert stabilization of never_type (!) et al by pnkfelix · Pull Request #50121 · rust-lang/rust
- revert stabilization of `!` and `TryFrom` · Issue #49691 · rust-lang/rust
- Box::new(!) doesn't coerce to `Box<Error>` successfully · Issue #49593 · rust-lang/rust
!
型 (never_type) の安定化とともに TryFrom
等も安定化が master に merge されたのだが、 never_type の型強制まわりでのバグが発見され、これらの安定化が revert された。
かなしい。
Let's Encrypt が最大勢力(過半数)になったらしい ()
- Let's Encrypt is now the largest SSL certificate issuer for websites with 51.21% domain usage : programming
- Atsuo Ishimoto on Twitter: "Let's Encrypt が過半数のドメインで使われるissuerに https://t.co/V4jWXzhd1b"
大変すばらしい。
なお日本での HTTPS 普及率は(以下略)
ヨーロッパ方面での IPv4 アドレスが枯渇 ()
- RIPE NCC IPv4 Available Pool - Graph — RIPE Network Coordination Centre
- OK, this time it's for real: The last available IPv4 address block has gone • The Register
- ヨーロッパがIPv4アドレスを使い果たす 未使用IPアドレスで対応 - ライブドアニュース
いつか来る日がついに来た。
WebAuthn が W3C 勧告候補へ ()
- W3C、パスワード不要のウェブ認証「Web Authentication」を勧告候補に - CNET Japan
- 「Firefox 60」公開、パスワードに依存しない認証「WebAuthn」をサポート - ITmedia エンタープライズ
Firefox でもバージョン60 ( リリース)で対応された。
Rust で x86/86_64 SIMD の安定化が merge された ()
🎉
Ubuntu 18.04 リリース ()
- Ubuntu 18.04 LTS (Bionic Beaver)
- Ubuntu 18.04 LTS "Bionic Beaver" Official Images Now Available - Phoronix
LTS なので、しばらく様子を見て、そのうち鯖の OS を入れ替えたい。
パブリック活動
nanoc に issue 立てた (解決済) ()
- nanoc/nanoc: A powerful web publishing system
- internal_links check for xhtml files · Issue #1328 · nanoc/nanoc
nanoc は、このブログの生成(2018-03 時点)も含めて長らく世話になっている静的サイトジェネレータ。
報告してから1日以内でテスト付きの修正が追加されて issue がクローズされ、あまりの早さにびっくりした。 ありがたい話である。
alacritty に Pull Requset 出した (merge された) ( – )
- jwilm/alacritty: A cross-platform, GPU-accelerated terminal emulator
- Error creating GL context; Couldn't find any pixel format that matches the criterias. · Issue #921 · jwilm/alacritty
- Enable SRGB (fix #921) by lo48576 · Pull Request #1178 · jwilm/alacritty
- Try to create window with different SRGB config when failed (solve #921, #1178) by lo48576 · Pull Request #1183 · jwilm/alacritty
- らりお・ザ・何らかの🈗然㊌ソムリエ: "102354 – Mesa 17.2 no longer can give SRGB-capabl…" - Mastodon
ある日——たしか llvm を 6 へアップデートして mesa (18.0.0_rc4) もリビルドした翌日かそのすぐ後だったと思う——マシンを起動すると、 X の仮想ターミナルが起動しない。 XMonad あたりで何かやらかしたかと思ったが、 dmenu や xterm は普通に動くので、どうやら alacritty だけが駄目らしいということがわかった。 調べてみると issue #921 が見付かったが、解決されていないようだった[1]ので、仕方なく xterm 上で胡麻粒のように小さくアンチエイリアスのきかないガタガタの文字でバグの調査と修正をすることにした。
調べていくと、どうやら SRGB を有効化すると問題なく起動するようになることがわかった。 該当 issue にパッチを投げてみたところ、直ったという報告がすぐにいくつか来たので、それならとプルリク #1178 にして投げたら、今度はそのパッチのせいで逆にエラーが発生するようになったと報告が来た[2]。 仕方ないので、「パッチ当てる前の設定と当てた後の設定を成功するまで両方試す」という、力技ながら確実性のある方法でウィンドウ作成を試行するパッチをプルリク #1183 として投げ、これが merge されたことで本件は(おそらく)今度こそ解決した。
心臓に悪い2日間だった。
私的活動
卒業旅行 (ロボット技術研究会 14 世代) ( – )
下呂温泉に行った。
opaque_typedef 0.0.2, 0.0.3 リリース (, )
- Release 0.0.2 · lo48576/opaque_typedef
- Release 0.0.3 · lo48576/opaque_typedef
- opaque_typedef/CHANGELOG.md at develop · lo48576/opaque_typedef
- らりお (進捗垢): "Release 0.0.2 · lo48576/opaque_typedef https://gi…" - Mastodon
- らりお (進捗垢): "Release 0.0.3 · lo48576/opaque_typedef https://gi…" - Mastodon
いろいろ改良して、ひとまずの実用に堪える品質は確保できたと思う。
まだまだ文法がアレ (derive(FooBarBazQuxQuux, ..)
のような長いオプションが無限にある)ので、そのうちもうちょっとまともにしたい。
考え事
W3C 規格をソフトウェアのドキュメントで多数引用したい
W3C の規格の少なからぬ部分をソフトウェアのドキュメントを引用したかったのだが、ライセンスが怪しかったので仕方なく諦めた。 実際どうなのだろう。
雑感
ついに月一の記事更新もできなくなった。 もうだめだ。