Commit Graph
142 Commits
Author SHA1 Message Date
DanSandClaude Opus 5 af7d9e2300 release: bump to v1.3.0 and document the signing step that was never performed
The tree stamped 1.2.0 in both configure.ac and src/clientversion.h, but
v1.2.0 is an annotated tag already pushed at fad05d3ab and dev is 27
commits past it. Both trees therefore produced CLIENT_VERSION 1020050 and
announced an identical /DragonX:1.2.0/ subversion, so a released binary
would have been indistinguishable from the tag on the wire, in
getnetworkinfo, and to the wallet's in-app updater -- destroying the only
provenance check users have: build the tag, compare the binary.

Bump MINOR rather than REVISION: the delta since v1.2.0 adds a subsystem
(RandomX stratum) and a new RPC (stratummine).

  configure.ac, src/clientversion.h  1.2.0 -> 1.3.0 (CLIENT_VERSION 1030050)
  doc/man/*.1                        version strings restamped
  contrib/debian/changelog           1.3.0 entry for the 27 commits
  src/chain.h                        stale "CLIENT_VERSION is 1010050" comment

Man page *content* still needs a real regeneration: util/gen-manpages.sh
requires help2man and built 1.3.0 binaries, so it belongs in the release
build, where it will also pick up the new stratum options.

doc/release-process.md is why v1.1.0 and v1.2.0 were tagged but never
became releases. Followed verbatim it produced a release the wallet
refuses to install:

  - it directed releases to a branch named `dragonx`, which does not
    exist; releases are cut on `master`
  - it never once mentioned signing, yet the updater pins an ed25519 key
    and sets kDaemonRequireSignature = true, so an unsigned release is
    refused outright and every user silently stays on their old daemon
  - it did not require the release tag to be annotated, and genbuild.sh
    calls `git describe` without --tags, so a lightweight tag stamps the
    build `v<older-tag>-<sha>` instead of the release version -- which is
    exactly what happened to v1.0.0 through v1.0.3
  - it referenced util/build-debian-package-ARM.sh, which is not in tree

Adds the signing and checksum-table steps, the annotated-tag requirement
with a `git describe` verification, and the rule that a new version must
exceed every existing tag including unpublished ones.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FU87LdsJZiZkfq1eXubpeo
2026-08-30 22:48:52 -05:00
DanSandClaude Opus 5 4dc57e80b1 build: bump version to 1.2.0
dev and the v1.1.0 tag were version-indistinguishable: both reported
CLIENT_VERSION 1010050, subversion "/DragonX:1.1.0/" and IS_RELEASE=true, because
660678f9b was the last commit to touch a version file and it predates the tag. The
twenty commits since were therefore invisible to every channel a client can query,
and the in-app updater compares exactly those. Only git-describe distinguished
them, and that degrades to "-unk" on a tarball build.

A minor bump rather than a patch: since v1.1.0 the tree gained auto-shield-coinbase
(a new feature, on by default where the seed is known-recoverable), BIP39 seed
phrases as the default for new wallets, the z_autoshieldstatus RPC, and three new
wallet.dat record types. Understating that as 1.1.1 would hide an on-disk format
change from the one place users look.

The published v1.1.0 tag is left where it is. Re-pointing a tag that is already on
the remote breaks anyone who fetched it.

The wallet feature version deliberately stays at FEATURE_LATEST = 60000. The new
records are additive and older binaries skip unknown types harmlessly, while
bumping it would make them refuse the wallet outright with DB_TOO_NEW. The one real
incompatibility, a truncated hdchain record, is self-healing as of a0ccb4be1, so
refusing to load would be strictly worse for the user than what happens today.

Verified: configure.ac and clientversion.h agree; CLIENT_VERSION 1010050 -> 1020050;
build.sh derives 1.2.0; bitcoin-config.h carries CLIENT_VERSION_MINOR 2 after a
reconfigure run with the depends CONFIG_SITE; a full rebuild of src succeeds with 0
errors and both binaries report v1.2.0.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-25 21:52:51 +02:00
DanSandClaude Opus 5 660678f9bb build: bump version to 1.1.0
CLIENT_VERSION 1000350 -> 1010050. Goes to 1.1.0 rather than 1.0.4 because
1.0.3 is already burned and ambiguous: origin/dragonx's debian changelog
already claims 1.0.3 and the daemon bundled in the ObsidianDragon 2.0.1
installer is labelled v1.0.3-dc45e7d90, so a 1.0.4 would sort above builds
that contain less.

Bumped in configure.ac (authoritative) and in the src/clientversion.h fallback
used when HAVE_CONFIG_H is unset, which the header itself asks to be kept in
sync.

DELIBERATELY NOT BUMPED: SPROUT_VALUE_VERSION, SAPLING_VALUE_VERSION and
SAPLING_VALUE_OPTIONAL_VERSION in chain.h. Those are thresholds marking the
CLIENT_VERSION that INTRODUCED each block-index format, not "the current
version". Raising SAPLING_VALUE_OPTIONAL_VERSION to 1010050 would push every
record written by a v1.0.3 node (nVersion 1000350) into the legacy
raw-CAmount branch of the deserializer and misparse it. The stale comment
naming 1000350 as the current CLIENT_VERSION is updated; the constants stand.

1010050 >= 1000350, so this build still writes and reads the optional format.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-21 19:15:56 -05:00
DanSandClaude Opus 4.8 bf1b4cffe0 Bump version to 1.0.3
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-28 16:04:51 -05:00
DanS ddd851dc11 Bump version to 1.0.2 2026-03-17 04:11:32 -05:00
DanS f0cb958cac Fix fresh sync failure at diff reset height 2838976
Fresh-syncing nodes rejected the on-chain min-diff block at the
RANDOMX_VALIDATION activation height (2838976) because GetNextWorkRequired
computed the expected nBits from the preceding normal-difficulty blocks,
producing 469847994 instead of the on-chain 0x200f0f0f (HUSH_MINDIFF_NBITS).
This caused all seed nodes to be banned with "Incorrect diffbits" and the
node could never sync past that height.

Two changes:

1. GetNextWorkRequired (pow.cpp): Return nProofOfWorkLimit at the exact
   RANDOMX_VALIDATION activation height, matching the on-chain diff reset.

2. ContextualCheckBlockHeader (main.cpp): Raise DragonX daaForkHeight to
   RANDOMX_VALIDATION + 62000, covering the window where nBits was never
   validated (diff reset at 2838976 through the attack at ~2879907).

Tested by invalidating block 2838975 and reconsidering — node re-validated
through the diff reset and attack window, syncing back to tip with zero
bad-diffbits rejections.

Bump version to 1.0.1.
2026-03-12 01:25:21 -05:00
DanS 85c8d7f7dd Rebrand hush3 to DragonX and share RandomX dataset across mining threads
Minimal rebrand (see compliant-rebrand branch for full rebrand):
- Rename binaries: hushd/hush-cli/hush-tx → dragonxd/dragonx-cli/dragonx-tx
- Default to DRAGONX chain params without -ac_* flags (randomx, blocktime=36, private=1)
- Update configure.ac: AC_INIT([DragonX],[1.0.0])
- Update client version string and user-agent to /DragonX:1.0.0/
- Add chainparams.cpp with DRAGONX network parameters
- Update build.sh, miner.cpp, pow.cpp for DragonX
- Add bootstrap-dragonx.sh utility script
- Update .gitignore for release directory

Share single RandomX dataset across all mining threads:
- Add RandomXDatasetManager with readers-writer lock, reducing RAM from
  ~2GB per thread to ~2GB total plus ~2MB per thread for the VM scratchpad
- Add LogProcessMemory() diagnostic helper for Linux and Windows
2026-03-04 18:42:42 -06:00
fekt 008f80bbd9 Bump version and protocol version 2026-02-11 01:28:06 +00:00
Duke 7dec077899 Bump version and protocol version 2025-02-18 09:36:39 -05:00
Duke fcc5c17628 Bump protocol version and client version 2024-09-18 10:59:37 -04:00
onryo 58b65f9670 Update copyrights 2024-02-27 23:59:59 +01:00
Duke 76e81281e1 Bump version to 3.10.2 2024-02-21 10:37:27 -05:00
Duke 6635ab9e34 Bump version and copyright year 2023-12-31 06:55:58 -05:00
Duke 06876b1cc9 Bump version to 3.10.0 2023-11-13 08:40:04 -05:00
nullfekt 03071ef0cd Bump version 2023-06-29 20:23:28 -04:00
Duke e033a2e6eb Update copyrights to 2023 2023-02-09 18:06:03 -05:00
Duke 537307a812 Bump version and protocol version 2023-02-09 13:53:55 -08:00
Jonathan "Duke" Leto f02a81fa4c Also update COPYRIGHT_YEAR in clientversion.h and teach update-copyrights.sh how to do it 2022-09-19 16:02:05 -07:00
Jonathan "Duke" Leto 5d2307a709 Update copyrights to 2022 2022-09-19 15:45:30 -07:00
Duke Leto 7e53907bdc Update version to 3.9.2 2022-09-18 11:08:09 -04:00
jahway603 43e0ec186b Get rid of CLIENT_DATE 2022-09-03 09:13:19 -04:00
Duke Leto db056ce1ba Bump version to 3.9.1 2021-12-29 20:42:42 -05:00
Duke Leto 6bca401f93 Bump version to 3.9.0 2021-09-16 22:51:45 -04:00
Duke Leto 10a6706e71 Bump version to 3.8.0 2021-07-09 15:11:36 -04:00
Duke Leto 2da07fe585 Bump release and protocol version 2021-04-17 13:07:53 -04:00
Duke Leto af5f461d0b bump version 2021-03-27 07:48:45 -04:00
Duke Leto e1d5c5b731 Bump version to 3.6.3 and ++ proto version 2021-02-25 16:07:27 -05:00
Duke Leto b870172671 bump ver and copyright year 2021-02-08 11:44:32 -05:00
Duke Leto 7e591d8134 Version bump 2020-12-18 08:11:01 -05:00
Duke Leto b58c15b9fb update copyrights 2020-12-10 07:45:36 -05:00
Duke Leto abc0b55d05 Hush Hush Hush 2020-12-04 09:42:59 -05:00
Duke Leto 4ebf155a90 Bump version to 3.6.0 2020-11-14 04:49:10 -05:00
Duke Leto be16f80abc Hush Full Node is now GPLv3
Any projects which want to use Hush code from now on will need to be licensed as
GPLv3 or we will send the lawyers: https://www.softwarefreedom.org/

Notably, Komodo (KMD) is licensed as GPLv2 and is no longer compatible to receive
code changes, without causing legal issues. MIT projects, such as Zcash, also cannot pull
in changes from the Hush Full Node without permission from The Hush Developers,
which may in some circumstances grant an MIT license on a case-by-case basis.
2020-10-21 07:28:10 -04:00
Duke Leto dd8ab3df68 Sync CLIENT_VERSION_BUILD and bump version to 3.5.1 2020-10-05 20:36:59 -04:00
Duke Leto a7f88a87aa Update copyright URL to be https 2020-09-20 13:17:38 -04:00
Duke Leto 1064d33f43 Update some copyright stuff in windows files 2020-09-20 11:13:38 -04:00
Duke Leto 70455eb41e update version 2020-09-18 16:41:28 -04:00
Duke Leto ee09f123c6 Bump version to a 3.5 pre-release 2020-07-23 10:27:07 -04:00
Duke Leto 3a28e7bab8 bump version to 3.4.0 2020-06-13 11:09:00 -04:00
Duke Leto 699b59037a Bump version to 3.3.2 2020-03-08 08:55:42 -04:00
Duke Leto d4ac8162f6 Bump version to 3.3.1 2020-01-18 08:47:57 -05:00
Duke Leto 0b7e87c384 Merge branch 'dev'
Conflicts:
	configure.ac
    src/clientversion.h
2020-01-02 15:25:11 -05:00
Duke Leto c0911604cd Update copyright year 2020-01-02 13:03:14 -05:00
Duke Leto bde7744d9c Bump version to 3.3.0 2019-12-14 07:49:36 -05:00
Duke Leto 1bbf0d8ac5 Merge branch 'dev' 2019-12-14 07:11:48 -05:00
Jonathan "Duke" Leto 9c0b4df558 Bump version to 3.2.3 2019-12-14 05:25:07 -05:00
Jonathan "Duke" Leto d7d4d3879b Merge branch 'duke' into delete_verus 2019-11-26 19:41:56 -08:00
Jonathan "Duke" Leto d8caae05bf bump version to 3.2.2 2019-11-25 16:34:28 -08:00
Jonathan "Duke" Leto 643e2aedde bump version to 3.2.2 2019-11-25 16:28:56 -08:00
Duke Leto 0eaee9dc83 Good riddance 2019-11-04 10:53:36 -05:00