Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
ad57a64
fix: make regression miner_tests works correctly with InstantSend ena…
knst Mar 12, 2026
27437f6
fix: make regression miner_tests works correctly with InstantSend ena…
knst Mar 12, 2026
e91cce8
fix: make even more miner_tests friendly to InstantSend enabled (Test…
knst Mar 12, 2026
13442a7
refactor: drop dependency of InstantSend on CMasternodeSync
knst Mar 12, 2026
caefa9f
refactor: drop dependency of CChainState on CMasternodeSync
knst Mar 11, 2026
2b65525
refactor: remove usages of CMasternodeSync from chainstate
knst Mar 12, 2026
69e9c13
refactor: new stub implementation (NullNodeSyncNotifier) of NodeSyncN…
knst Mar 11, 2026
3472a90
refactor: move VerifyChainLock to clsig.h to avoid building up handle…
knst Mar 13, 2026
547ca66
refactor: drop dependency of governance/object on core_write (ScriptT…
knst Mar 13, 2026
963a5f0
refactor: drop pfrom from CGovernanceManager::ProcessVote
knst Mar 13, 2026
3658db6
fix: add guards if CTxMempool is nullptr in chainstate
knst Mar 13, 2026
5e5f4a0
Merge bitcoin/bitcoin#24304: [kernel 0/n] Introduce `bitcoin-chainstate`
Mar 3, 2022
4040282
fix: multiple dashifications applied to bitcoin-chainstate.cpp
knst Jan 17, 2026
4b31894
refactor: reimplementing some methods directly in dash-chainstate to …
knst Mar 13, 2026
b16a81d
multiple fixes for Makefile.am
knst Mar 12, 2026
58ecb7e
dashify name bitcoin-chainstate to dash-chainstate
knst Mar 14, 2026
2249dfa
refactor: move CDeterministicMN::ToJson to core_write to avoid g_txin…
knst Mar 13, 2026
258cd95
refactor: drop dependency of CGovernanceManager on net.cpp
knst Mar 13, 2026
24f67eb
refactor: move multiple msg_result.h usages headers to implementation
knst Mar 13, 2026
7cb152d
refactor: move network code from quorumsman.cpp to net_signing.cpp
knst Mar 13, 2026
e93e09c
fixup net-signing
knst Mar 13, 2026
456d721
refactor: move some llmq::utils to net_signing where they are not sup…
knst Mar 13, 2026
bce6e91
refactor: move temporary some code from spork.cpp to net_processing.cpp
knst Mar 13, 2026
f23303f
refactor: move code back from net_signing but completely commenting s…
knst Mar 13, 2026
a5af527
todo for dkgsessiongmgr.h
knst Mar 13, 2026
af35f14
finally works!!!! added some more files to Makefile.am. see commit me…
knst Mar 12, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ src/dash-gui
src/dash-node
src/dash-tx
src/dash-util
src/dash-chainstate
src/dash-wallet
src/test/fuzz/fuzz
src/test/test_dash
Expand Down
2 changes: 1 addition & 1 deletion ci/dash/matrix.sh
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ elif [ "$BUILD_TARGET" = "linux64_fuzz" ]; then
elif [ "$BUILD_TARGET" = "linux64_multiprocess" ]; then
source ./ci/test/00_setup_env_native_multiprocess.sh
elif [ "$BUILD_TARGET" = "linux64_nowallet" ]; then
source ./ci/test/00_setup_env_native_nowallet.sh
source ./ci/test/00_setup_env_native_nowallet_libbitcoinkernel.sh
elif [ "$BUILD_TARGET" = "linux64_sqlite" ]; then
source ./ci/test/00_setup_env_native_sqlite.sh
elif [ "$BUILD_TARGET" = "linux64_tsan" ]; then
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@

export LC_ALL=C.UTF-8

export CONTAINER_NAME=ci_native_nowallet
export CONTAINER_NAME=ci_native_nowallet_libbitcoinkernel
export HOST=x86_64-pc-linux-gnu
export PACKAGES="python3-zmq"
export DEP_OPTS="NO_WALLET=1 CC=gcc-14 CXX=g++-14"
export GOAL="install"
export BITCOIN_CONFIG="--enable-reduce-exports CC=gcc-14 CXX=g++-14"
export BITCOIN_CONFIG="--enable-reduce-exports CC=gcc-14 CXX=g++-14 --enable-experimental-util-chainstate"
14 changes: 14 additions & 0 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ BITCOIN_TEST_NAME=test_dash
BITCOIN_CLI_NAME=dash-cli
BITCOIN_TX_NAME=dash-tx
BITCOIN_UTIL_NAME=dash-util
BITCOIN_CHAINSTATE_NAME=dash-chainstate
BITCOIN_WALLET_TOOL_NAME=dash-wallet
dnl Multi Process
BITCOIN_MP_NODE_NAME=dash-node
Expand Down Expand Up @@ -769,6 +770,13 @@ AC_ARG_ENABLE([util-util],
[build_bitcoin_util=$enableval],
[build_bitcoin_util=$build_bitcoin_utils])

AC_ARG_ENABLE([experimental-util-chainstate],
[AS_HELP_STRING([--enable-experimental-util-chainstate],
[build experimental dash-chainstate executable (default=no)])],
[build_bitcoin_chainstate=$enableval],
[build_bitcoin_chainstate=no])


AC_ARG_WITH([libs],
[AS_HELP_STRING([--with-libs],
[build libraries (default=yes)])],
Expand Down Expand Up @@ -1443,6 +1451,7 @@ if test "$enable_fuzz" = "yes"; then
build_bitcoin_cli=no
build_bitcoin_tx=no
build_bitcoin_util=no
build_bitcoin_chainstate=no
build_bitcoin_wallet=no
build_bitcoind=no
build_bitcoin_libs=no
Expand Down Expand Up @@ -1781,6 +1790,10 @@ AC_MSG_CHECKING([whether to build dash-util])
AM_CONDITIONAL([BUILD_BITCOIN_UTIL], [test $build_bitcoin_util = "yes"])
AC_MSG_RESULT($build_bitcoin_util)

AC_MSG_CHECKING([whether to build experimental dash-chainstate])
AM_CONDITIONAL([BUILD_BITCOIN_CHAINSTATE], [test $build_bitcoin_chainstate = "yes"])
AC_MSG_RESULT($build_bitcoin_chainstate)

AC_MSG_CHECKING([whether to build libraries])
AM_CONDITIONAL([BUILD_BITCOIN_LIBS], [test $build_bitcoin_libs = "yes"])
if test "$build_bitcoin_libs" = "yes"; then
Expand Down Expand Up @@ -1995,6 +2008,7 @@ AC_SUBST(BITCOIN_TEST_NAME)
AC_SUBST(BITCOIN_CLI_NAME)
AC_SUBST(BITCOIN_TX_NAME)
AC_SUBST(BITCOIN_UTIL_NAME)
AC_SUBST(BITCOIN_CHAINSTATE_NAME)
AC_SUBST(BITCOIN_WALLET_TOOL_NAME)
AC_SUBST(BITCOIN_MP_NODE_NAME)
AC_SUBST(BITCOIN_MP_GUI_NAME)
Expand Down
161 changes: 161 additions & 0 deletions src/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -148,6 +148,10 @@ if BUILD_BITCOIN_UTIL
bin_PROGRAMS += dash-util
endif

if BUILD_BITCOIN_CHAINSTATE
bin_PROGRAMS += dash-chainstate
endif

.PHONY: FORCE check-symbols check-security
# dash core #
BITCOIN_CORE_H = \
Expand Down Expand Up @@ -1157,6 +1161,163 @@ dash_util_LDADD = \
$(BACKTRACE_LIBS)

dash_util_LDADD += $(BOOST_LIBS)

# dash-chainstate binary #
dash_chainstate_SOURCES = \
bitcoin-chainstate.cpp \
addressindex.cpp \
arith_uint256.cpp \
base58.cpp \
batchedlogger.cpp \
blockfilter.cpp \
bls/bls.cpp \
bls/bls_worker.cpp \
chain.cpp \
chainparamsbase.cpp \
chainparams.cpp \
clientversion.cpp \
coins.cpp \
compressor.cpp \
chainlock/clsig.cpp \
chainlock/chainlock.cpp \
consensus/merkle.cpp \
consensus/tx_check.cpp \
consensus/tx_verify.cpp \
common/bloom.cpp \
core_read.cpp \
dbwrapper.cpp \
deploymentinfo.cpp \
deploymentstatus.cpp \
evo/assetlocktx.cpp \
evo/cbtx.cpp \
evo/creditpool.cpp \
evo/chainhelper.cpp \
evo/deterministicmns.cpp \
evo/dmnstate.cpp \
evo/evodb.cpp \
evo/netinfo.cpp \
evo/mnhftx.cpp \
evo/providertx.cpp \
evo/simplifiedmns.cpp \
evo/smldiff.cpp \
evo/specialtx.cpp \
evo/specialtx_filter.cpp \
evo/specialtxman.cpp \
flatfile.cpp \
fs.cpp \
governance/classes.cpp \
governance/common.cpp \
governance/exceptions.cpp \
governance/governance.cpp \
governance/object.cpp \
governance/validators.cpp \
governance/vote.cpp \
governance/votedb.cpp \
gsl/assert.cpp \
hash.cpp \
index/base.cpp \
index/blockfilterindex.cpp \
index/coinstatsindex.cpp \
index/txindex.cpp \
instantsend/db.cpp \
instantsend/instantsend.cpp \
init/common.cpp \
key.cpp \
key_io.cpp \
llmq/blockprocessor.cpp \
llmq/commitment.cpp \
llmq/context.cpp \
llmq/debug.cpp \
llmq/dkgsession.cpp \
llmq/dkgsessionhandler.cpp \
llmq/dkgsessionmgr.cpp \
llmq/options.cpp \
llmq/quorums.cpp \
llmq/quorumsman.cpp \
llmq/signhash.cpp \
llmq/signing.cpp \
llmq/snapshot.cpp \
llmq/utils.cpp \
logging.cpp \
netaddress.cpp \
netbase.cpp \
node/blockstorage.cpp \
node/chainstate.cpp \
node/transaction.cpp \
kernel/coinstats.cpp \
masternode/meta.cpp \
masternode/payments.cpp \
masternode/sync.cpp \
messagesigner.cpp \
merkleblock.cpp \
node/interface_ui.cpp \
policy/feerate.cpp \
policy/fees.cpp \
policy/packages.cpp \
policy/policy.cpp \
policy/settings.cpp \
pow.cpp \
protocol.cpp \
primitives/block.cpp \
primitives/transaction.cpp \
pubkey.cpp \
random.cpp \
randomenv.cpp \
saltedhasher.cpp \
scheduler.cpp \
script/interpreter.cpp \
script/script.cpp \
script/script_error.cpp \
script/sigcache.cpp \
script/standard.cpp \
spork.cpp \
shutdown.cpp \
support/cleanse.cpp \
support/lockedpool.cpp \
sync.cpp \
timedata.cpp \
txdb.cpp \
txmempool.cpp \
uint256.cpp \
util/asmap.cpp \
util/bytevectorhash.cpp \
util/check.cpp \
util/getuniquepath.cpp \
util/hasher.cpp \
util/message.cpp \
util/moneystr.cpp \
util/ranges_set.cpp \
util/serfloat.cpp \
util/settings.cpp \
util/sock.cpp \
util/string.cpp \
util/strencodings.cpp \
util/syserror.cpp \
util/system.cpp \
util/thread.cpp \
util/threadinterrupt.cpp \
util/threadnames.cpp \
util/time.cpp \
util/tokenpipe.cpp \
validation.cpp \
validationinterface.cpp \
versionbits.cpp \
warnings.cpp
dash_chainstate_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES)
dash_chainstate_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)
dash_chainstate_LDFLAGS = $(RELDFLAGS) $(AM_LDFLAGS) $(LIBTOOL_APP_LDFLAGS) $(PTHREAD_FLAGS)
dash_chainstate_LDADD = \
$(LIBBITCOIN_CRYPTO) \
$(LIBUNIVALUE) \
$(LIBSECP256K1) \
$(LIBDASHBLS) \
$(LIBLEVELDB) \
$(LIBLEVELDB_SSE42) \
$(LIBMEMENV)

# Required for obj/build.h to be generated first.
# More details: https://www.gnu.org/software/automake/manual/html_node/Built-Sources-Example.html
bitcoin_chainstate-clientversion.$(OBJEXT): obj/build.h
#

# dashconsensus library #
Expand Down
1 change: 1 addition & 0 deletions src/active/quorums.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
#include <llmq/quorums.h>
#include <llmq/utils.h>
#include <masternode/sync.h>
#include <msg_result.h>
#include <util/helpers.h>

#include <chain.h>
Expand Down
Loading
Loading