Contact

お知らせ

Tapyrus Core v0.7.0リリース

Tapyrus Core v0.7.0をリリースしました。

このリリースは、すべての依存関係とツールのアップグレード、およびいくつかのバグ修正を含むメジャーアップデートです。

 

主な変更点

■C++20サポート

Tapyrus v0.7.0のコードベースはC++20標準をサポートするようになりました。 これにより、より新しいC++の機能を活用した開発が可能になります。

 

■CMakeビルドシステムへの移行

ビルドシステムがAutotoolsからCMakeに完全に移行しました(#331#335#336#337)。

  • Linux、macOS、Windowsの各プラットフォームでCMakeビルドをサポート
  • Dockerコンテナ(tapyrusdtapyrus-builder)もCMakeを使用
  • dependsディレクトリ内のすべての依存関係もCMake対応

 

■Qt6へのアップグレードtapyrus-qtのGUIフレームワークがQt5からQt6にアップグレードされました(#368#381#382)。

  • CMakeとNinjaを使用したビルド
  • macOSおよびWindowsでのGUIの問題を修正(#386

 

■GUIXビルドシステムの導入

リリースディストリビューションの生成にGUIXビルドが使用されるようになりました(#366)。 これにより、再現可能なビルドが可能になり、リリースバイナリの信頼性が向上します。

 

■セキュリティ修正Bitcoin Coreから継承された以下の脆弱性に対応しました:

  • CVE-2024-52919 – addrメッセージスパムによるリモートクラッシュの修正(#353
  • reindex時のブロックファイルサイズ計算の誤りを修正(#356

 

■バグ修正

  • gettransaction RPCで手数料が正しく出力されない問題の修正(#328
  • ネットワークでXField最大ブロックサイズが変更された場合のreindex失敗を修正(#357
  • ワーカースレッドが作業を完了したことをマスタースレッドが認識できないチェックキューのデッドロックを修正(#349
  • ウォレットインポート時のタイムゾーン変換を修正(#363
  • ロケール依存関数の使用を削除(#365
  • getblocktxn脆弱性修正時に導入されたクラッシュを修正(#369

 

■テストの改善

  • CMake CIにスケジュールされたデイリーテストとコミットごとのスモークテストを追加(#342
  • CChainState、CChain、CBlockIndexクラスの包括的なエッジケーステストを追加(#372
  • 機能テストのタイムアウト間隔を標準化(#334

 

アップグレード方法

既存のノードを最新リリースにアップグレードすることを推奨します。

  • Testnetノードgetting_startedの手順に従って新しいv0.7.0ノードを起動してください
  • プライベートネットワーク: 古いノードをシャットダウンし、完全に停止したことを確認してから新しいノードを起動してください

 

■互換性

  • v0.5.0、v0.5.1、v0.5.2、v0.6.1で作成されたブロックチェーンはv0.7.0と互換性があります
  • v0.5.0より前のバージョンで作成されたブロックチェーンは、ブロックヘッダーにxfieldがないため互換性がありません
  • サポートプラットフォーム: Linux、macOS、Windows(x86_64およびarm64/aarch64)

 

■ダウングレードについてv0.7.0からv0.6.1へのダウングレードは問題ありません。ただし、v0.5.*へのダウングレードは、ネットワークでxfieldの変更が行われていない場合に限り可能です。

 

すべての変更点については、リリースノートを参照ください。

一覧にもどる