Skip to content

Fulcrum 1.9.2

Compare
Choose a tag to compare
@cculianu cculianu released this 29 Sep 11:29
· 116 commits to master since this release
v1.9.2
002b94e

What's new:

This is a bugfix maintenance release of Fulcrum. It fixes a few compile bugs as well as potential BTC-related issues, and adds some optional parameters to the blockchain.*.get_history family of calls.

For BTC: we updated the code to the mempool.get_fee_histogram call to replicate more closely what ElectrumX would return (issue #197). We also added better compatibility with Bitcoin Core v25.0.0 for the sendrawtransaction API call to bitcoind core. All BTC users of Fulcrum are strongly urged to update to this version at their earliest convenience.


Summary of changes:

  • Fixed some build-related issues, such as rocksdb 8 source compatibility.
  • Some code refactoring and cleanup
  • Implemented "paging" for the blockchain.*.get_history call(s) (issue #180). This involves two extra optional parameters, from_height and to_height to the call(s). See: https://electrum-cash-protocol.readthedocs.io/en/latest/protocol-methods.html#blockchain.scripthash.get_history.
    • Only Fulcrum servers declaring protocol version 1.5.1 or above support this facility as of now.
  • Improved compatibility with bitcoin core 25.0.0 to behave exactly like previous versions when sending txns (that is, allow it to "burn" onto OP_RETURNs). (#181)
  • Fix to the mempool.get_fee_histogram RPC to more closely model what ElectrumX would return. Hopefully this fixes some issues seen on BTC. (#197)

Pre-compiled binaries for Linux

I have provided two pre-built binaries for Linux:

  • Fulcrum-1.9.2-x86_64-linux.tar.gz, which is compiled on an Ubuntu 18.04 system using Docker.
  • Fulcrum-1.9.2-arm64-linux.tar.gz, which is compiled on an Ubuntu 22.04 system (for ARM64 bit) using Docker.
  • Fulcrum-1.9.1-x86_64-linux-ub16.tar.gz, which is compiled on a stock Ubuntu 16.04 system (using Docker) but with g++ 8.1.0 installed from this ppa source: ppa:jonathonf/gcc-8 & ppa:jonathonf/gcc

All 3 of the above binaries contain jemalloc, libzmq, Qt5Core, Qt5Network (from Qt 5.15.6), and OpenSSL 1.1.1 statically linked. They still require libz2, libstd++, and the right libc version as dynamic libs on your system (but those are usually present if you are on a recent system).

If the first regular -linux binary fails, try the second one (-linux-ub16), which should work on older systems, hopefully.

Pre-compiled binaries for Windows

  • Fulcrum-1.9.2-win64.zip - Pre-built, statically linked Windows version.
    • It should "just work" on any Windows 10 or above 64-bit system.
    • Includes is a statically-linked Fulcrum.exe, built with jemalloc, libzmq, Qt 5.15.2, OpenSSL 3.0.1, and gcc 11.2.0.
    • Additionally, FulcrumAdmin.exe is included which is the python script, but made into a onefile .exe using PyInstaller.

See the .asc files at the bottom for signatures; my gpg public key can be obtained here: https://github.com/Electron-Cash/keys-n-hashes/blob/master/pubkeys/calinkey.txt


Binary builds for macOS coming soon -- Until then you can always build from source!