Pactus 1.10.0 (Casablanca) Released

October 27, 2025
Pactus 1.10.0 (Casablanca) Released

Overview

Pactus Blockchain Version 1.10.0 (Casablanca) is now available for download. This release includes the following applications:

  • Pactus GUI: The graphical user interface (GUI) for the Pactus node that is suitable for both beginners and experienced users.

  • Pactus Daemon: The command-line interface (CLI) for the Pactus node that is suitable for experienced users.

  • Pactus Shell: The command-line tool that allows users to interact with a Pactus node.

  • Pactus Wallet: The wallet software that allows users to manage their wallet and send transactions without the need to sync the entire blockchain.

Highlights

The main update of this release is PIP-41, titled “Address Recovery”, which introduces automatic restoration of previously used wallet addresses when recovering a wallet from a mnemonic phrase. In previous versions, users needed to manually recreate addresses that had been used or contained balances. With this improvement, the wallet now scans the blockchain for activity and derives addresses until a defined threshold of inactive ones is reached, making the recovery process seamless and reliable.

This version also allows users to set a default transaction fee directly through the Pactus GUI, making wallet management more convenient.

Both the Pactus GUI and CLI have been enhanced to improve their command and user messages, providing clearer and more helpful feedback during use.

Additionally, Pactus GUI now defaults to a dark theme across all operating systems, ensuring a consistent and visually comfortable interface.

Finally, this release introduces official Rust SDK packages. Rust developers can now interact with the Pactus blockchain using gRPC and JSON-RPC endpoints, expanding development opportunities within the Pactus ecosystem.

The update also includes several minor bug fixes and general performance improvements to enhance stability and user experience.

Download

To start using Pactus blockchain, download the latest version from the download page and join the Mainnet.

How to Upgrade

If you are running an older version, close it first. Then uninstall the previous version and install the newer version. If you are using the archived version, simply replace it with the new version.

Software Development Kits

Software Development Kits are available in JavaScript and Python:

Change log

This version includes several changes and improvements, such as:

Feat

  • gtk: prefer dark theme (#1965)
  • wallet: export the bootstrap and gRPC server list (#1961)
  • util: operating system signal handling package (#1959)
  • util: rename Extend to PadToLeft; add PadToRight (#1953)
  • gtk: set default fee dialog (#1946)
  • gtk: add address recovery page for restore wallet (#1940)
  • cmd: update daemon init for recovery addresses (#1939)
  • grpc: impl gRPC ping api for latency measurement (#1936)
  • wallet: implement check activity on wallet (#1938)
  • wallet: introduce address recovery (#1934)
  • state: calculate the number of active validators (#1927)
  • packager: add rust-jsonrpc package (#1911)
  • packager: add rust-grpc package (#1909)
  • consensus: the Cheetah implementation (#1858)

Fix

  • sync: set supporting version to 1.9.0 (#1949)
  • network: set deadline for streams (#1947)
  • grpc: set default fee for WalletInfo API (#1944)
  • wallet: use GetAccount API to check active account (#1945)
  • grpc: set required fields in OpenRPC spec (#1920)
  • grpc: define map as object in OpenRPC sepc (#1910)
  • network: set limit for network message size (#1904)
  • cbor: set limit for Map and Array in CBOR decoder (#1905)
  • encoding: prevent data-length attack (#1907)
  • gtk: ensure GTK starts on main thread (#1885)
  • gtk: change fontmap backend for macOS (#1884)
  • gtk: resolve crash issue on MacOs (#1882)

Refactor

  • cmd, gtk: separate address recovery from node creation flow (#1964)
  • util: use b.Loop() to simplify the code and improve performance (#1957)
  • wallet: re-structure the server list (#1962)
  • util: define terminal package (#1960)
  • cmd: move prompt to util package (#1958)
  • crypto: check BLS aggregate primitive error (#1956)
  • network: use WaitGroup.Go to simplify code (#1935)
  • state: refactor reward transaction (#1901)
  • state: check genesis state using certificate presence (#1899)
  • other: use maps.Copy for cleaner map handling (#1900)

You can find the full list of changes on Github, as well as the source code