GnuPG2のフォークNeoPGが開発中 1
タレコミ by osdn
osdn 曰く、
情報元へのリンク
PGPやGnuPGには近年いくらかの批 判もありますが、開発は情熱的に続いています。
とはいえ、GnuPGは20年以上の開発によって内部構造が複雑になりすぎています。これに伴う種々の問題に取り組むため、NeoPGという新たなプロジェクトが発足しています。
スライドによると、GnuPGは49万行のコードから成り、400近くのコマンドラインオプション、2種類のOpenPGPパーザ、自前のHTTPクライアントやDNSリゾルバ関連コードを持つ、重厚長大なプロジェクトです。NeoPGでは、できるだけレガシーコードを減らし、外部ライブラリを積極的に利用することで、開発を容易にするつもりです。スライドの時点で、すでに行数はほぼ半減し、コマンドラインオプションも120ほど減っているそうです。
ブログでは、そのほかにもautoconfではなくCMake、CPPマクロではなくC++テンプレート、数多くの小さなバイナリではなく単一バイナリ、長生きするデーモンではなく、すぐ終了するヘルパープロセスといった劇的な設計変更の理由について説明しています。(このうちの一部はUNIX哲学からの逸脱と見られかねないことも理解したうえで、使い勝手や開発/メンテナンスのコスト、コンピュータ性能の発達などを考慮した結果とのことです。)
ライセンスについても、GitHubのREADME.mdによれば「今のところGPLやLGPLなど様々なライセンスのコードを含んでいるが、新規コードはSimplified BSDライセンスに限っている」という書き方からして、GPLからの脱却を目指しているようです。
全体的に、ここ10年程度のトレンドを慎重に取捨選択して、そつなくリファクタリングしているように見えますが、皆さまはどう評価されるでしょうか。
情報元へのリンク
リリースや開発者についての情報 (スコア:1)
2017年12月15日にバージョン0.0.4がリリース [github.com]されています。
メイン開発者はGnuPG開発者 [gnupg.org]のMarcus Brinkmann氏 (lambdafu) です。