2016年におけるLibreOfficeの開発をgitログから振り返る (2016-12-25)
この記事はLibreOffice Advent Calendar 2016の12月25日分です。
2016年も残すところ1週間足らずとなりましたが、この1年のうちにLibreOfficeは順調にリリースが進められました。
- LibreOffice 5.1
- LibreOffice 5.1 Release Notes
- LibreOffice 5.2
- LibreOffice 5.2 Release Notes
そしてLibreOffice 5.3もRC1がまもなく公開され、おそらく来年2月頭にリリースされる予定です。
今回はLibreOfficeのgitレポジトリのmasterブランチのコミットから、2016年になされた変更を追いました。Gitでは各コミットにはその変更がなされた日付がともないますが、レポジトリにpushされるまでさらに時間がかかる場合があることに注意してください。a27fac3b8f2bae18f62bab315051732df1bb29abが2016年最初のmasterにおけるコミットと仮定すると、
$ git log --oneline a27fac3b8f2bae18f62bab315051732df1bb29ab^1.. | wc -l
15435
となるように15,000件近くのコミットがあります。バージョンごとの新規機能や相互運用性の改善はリリースノート等で取り上げられていますので、そういったもの以外で面白いものを探しました。特に、歴史が感じられるもの、トリビア、ネタを選んでいます。
以下のリストは(おおよそ)上から順に1月から12月へ向かっています。
- eafb1ebf74c3caf8fbecdc6a4fc7037c3c8f4964
- GCC拡張による最適化のためのマクロ。しかし現時点ではあまり利用されていない模様。
- 9f84b757a2e6678a30a797e85d8236612b952646
- HTMLをPNGやJPEGにエクスポートできるように。
- 07157e644fa9666850767ff6bd54c1511167a0a2
- C++11の
thread_local
が使われる珍しいケース。 - a46ef637d5f37962f826969cb2d7eb4cb9ba81c6
- クラッシュレポートを送受信するためのBreakpadが組み込まれる。
- e72cd4053676d826ef9a914e62e89e26247bdd5c
- LibreOfficeプロジェクトでOffice-o-tronのフォーク版をメンテナンスしている。
- 22629764d731d715125c82d9f12a31599264c63d
- Transglobal Secure Collaboration Program (TSCP)のdocument classificationをサポートするための開発。これは各国の国防省での採用のためのものと思われる。
- e5f56d0c6e2a7d75a1f5ee27550b1270641da977
- Calcでの列選択のためのショートカットキーがCtrl+Spaceとなる。
- d9f751a416db1a6d583e91d0d74b36185429245c
- CalcでF4やShift+F4、Ctrl+Shift+F4というショートカットの扱いが変わる。
- 03637a75c1bebf8b35b520139b9ddfa3238ee53f
- レガシーコードのRectangle型に対する悪態。
- e45d80f20ff6a05888f92ae942abed67609d5b20
- OpenGLによってレンダリングされるグリフのキャッシュにDirectWriteを使う。
- 32102b9aa75a296b99f3fdaf370bd83bfd629f4e
- Windows 95のマウスホイールイベントのためのコードが葬られる。
- 4779f443e9a58e3bd9ec7668796a877ef2362d99
- バージョン5.2.0.0.alpha1+のタグが打たれる。
- 7e0eeacd1d1aa4c8643f1f490cdd5102ee0434a8
- モーリシャスにおける英語およびフランス語ロケールのサポート。
- a42169cdae80f88e1c4b52c333e928d239d917f5
- LinuxにおいてSSDを使っていたらページインしないようになる。
- e8ab8d1ea86d2cadaeed05d14b21d14d23667913
- macOSのHIGに従ったショートカットが増える。
- 61b43a02cc2b19cc39e801d68714958398d4a401
- 5.3.0.0.alpha0+のタグが打たれる。
- 2c08ec226e771de10c8863b7f1cda016fea442d2
- 西暦1583年より過去、もしくは9956年より未来のイースター(復活祭)の休日は扱わない。
- 92cee94a262a3a2f43c87bb940c50cb90a2ebd89
assert
で不変条件を明確にすることによって、クライアントコードの問題が明らかになり修正される。- 733198de1b7fc3907609217147704f493f6146e6
- 3.4より古いClangのサポートが切られる。
- 051329101dc249535dd09eeb34caf1c21719064f
- 2016/07/06でも取り上げた、浮動小数点数の小数部分近似のための効率の良いコード。
- dc4797a79e3f465e1fa930be7c69d8ec7d91c15e
- Windows XP向けのビルドが壊れ、サポートが危ぶまれたが無事修正される。
- 64d3270a89fd88d4d0cf70329af2c66f722fd95e
- JDK 1.8.0でupdate version numberが102になり、3桁になるとクラッシュすることが分かったため修正される。
- a4e81b7c313e5cb0e0f23a8605502b4b0b7f599e
- macOS 10.12 SDKでQuickTime Frameworkがついに消された。
- 3cb45765f2accfa749cc56a087059600ec467f28
- sparc64に移植する試みが始まる。
- 5941496601600269296dde3e4ff8b615a8bb45ca
- ユーザープロファイルの項目には「姓」、「名」および「イニシャル」のフィールドが用意されているが、文化によって名前の要素が異なるという話。
- 1115281560a7e204386c21fe78b8c84ce42b2017
- 合衆国大統領選挙の日に。
- 5e416099f088a2f8a8980e08e3d5b731da0a6d9c
- 現在のTDF議長による最初のコミット。
- 6b14e198d31f3189b2f574898dbe6bf6067643ba
- 5.4.0.0.alpha0+のタグが打たれる。
- a779b5f7f0dec55482172ca5dbe978dffbd46dac
- コードベースをoss-fuzzで検証するために、ビルドの調整が始まる。
- 472c07ca0dfd87602cd6199fa4d1d756f17edf14
- LibreOfficeには多数のconfigureオプションがある。どのオプションの組み合わせでもうまくビルドできるかどうかを試すために、option fuzzingと言うべき方法を導入している。
- 17fab5460332a75bcab0f734f17f7a2292a7aa27
- 手動で操作してUIをテストするテストケースを自動で実行できるようにする試みが開始される。
- b08e48166310ab8a53f06f4fee227a948416cf4a
- oss-fuzzによって検出された課題に対する最初の修正。
ofz
という接頭辞で課題の番号を参照している。
長くなりましたが、以上のリストからLibreOfficeの開発に生き生きとしたものを感じていただければ幸いです。おそらく来年もLibreOfficeはさらに多くのユーザーに使われ、さらに多くの貢献に支えられて、より便利なソフトウェアになると期待されます。
© 2006-2023 fixedpoint.jp