Skip to content

Releases: Neptune-Crypto/neptune-core

v0.1.2

12 Feb 09:21
Compare
Choose a tag to compare

Install neptune-cash 0.1.2

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/Neptune-Crypto/neptune-core/releases/download/v0.1.2/neptune-cash-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/Neptune-Crypto/neptune-core/releases/download/v0.1.2/neptune-cash-installer.ps1 | iex"

Download neptune-cash 0.1.2

File Platform Checksum
neptune-cash-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
neptune-cash-x86_64-apple-darwin.tar.xz Intel macOS checksum
neptune-cash-x86_64-pc-windows-msvc.zip x64 Windows checksum
neptune-cash-x86_64-pc-windows-msvc.msi x64 Windows checksum
neptune-cash-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

Verifying GitHub Artifact Attestations

The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:

gh attestation verify <file-path of downloaded artifact> --repo Neptune-Crypto/neptune-core

You can also download the attestation from GitHub and verify against that directly:

gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>

v0.1.1

11 Feb 22:51
Compare
Choose a tag to compare
chore: Release neptune-cash version 0.1.1

0.1.0 - 2025-02-11

11 Feb 22:44
Compare
Choose a tag to compare

Release Notes

✨ Features

  • Assert field pointer points into element (171affda)
  • Record sent tx details in wallet (96dd1f8d)

🐛 Bug Fixes

  • Descriptive error messages from send() rpc (ac2597fc)
  • Make trait pub to compile benchmarks again (5b89d879)
  • (WalletState) Avoid unwrapping None (c20b22f1)
  • (peer_loop) Don't spam sync challenges (e189f215)
  • Import-seed-phrase check if wallet db exists (09c3a2ca)
  • (Update) Fix update branch after interface change (e584d0ea)

♻️ Refactor

  • Set genesis header nonce to hash of Bitcoin block 883345
  • (BlockProgram) Avoid reading same value from memory twice (68687e17)
  • (RPC) Abort send if machine too weak (abec5e27)
  • (BlockProgram) Restrict size indicator of proofs (35426fbc)
  • (Block) Cap number of claims in appendix (f1adbb30)
  • (SingleProof) Audit PC witness at end of program (90a5f83a)
  • Adjust some genesis parameters (cae5e5d9)
  • (RemovalRecordsIntegrity) Harden security (b886b66e)
  • (CollectLockScripts) Harden program (786b5693)
  • (KernelToOutputs) Harden program (bad7e47e)

✅ Testing

  • Reduce initial difficulty for tests (83eb8e17)

🎨 Styling

  • Fix comments in SingleProof (c883bba8)

⚙️ Miscellaneous

  • Update release workflow files (f7a5779d)
  • Build benchmarks (a955bc9b)
  • Change premine addresses (dc8c3192)
  • Update tasm-lib dependency to 0.47.0 (1f9fe03b)
  • Upgrade dependencies (8d2b2c79)
  • Store Utxo instead of UnlockedUtxo (b39eea3d)
  • Include aocl_leaf_index in SentTransaction (484c15a2)
  • Fix clippy warning after rebase (ad3eadbb)

Log

  • Reduce severity of duration-check log message (86076b02)

Note: (!) indicates a breaking change.

Install neptune-cash 0.1.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/Neptune-Crypto/neptune-core/releases/download/v0.1.0/neptune-cash-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/Neptune-Crypto/neptune-core/releases/download/v0.1.0/neptune-cash-installer.ps1 | iex"

Download neptune-cash 0.1.0

File Platform Checksum
neptune-cash-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
neptune-cash-x86_64-apple-darwin.tar.xz Intel macOS checksum
neptune-cash-x86_64-pc-windows-msvc.zip x64 Windows checksum
neptune-cash-x86_64-pc-windows-msvc.msi x64 Windows checksum
neptune-cash-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

Verifying GitHub Artifact Attestations

The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:

gh attestation verify <file-path of downloaded artifact> --repo Neptune-Crypto/neptune-core

You can also download the attestation from GitHub and verify against that directly:

gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>

0.0.12 - 2025-02-09

09 Feb 21:34
Compare
Choose a tag to compare

Release Notes

✨ Features

  • Lossless Display for NativeCurrencyAmount (#373) (520adf0d)
  • Add fee field to dashboard send screen (8e223a22)

🐛 Bug Fixes

  • Catch panics and flush databases (c5b0b82e)
  • Enable n-out-of-n Shamir secret sharing (24c3d431)
  • Debug_assert_fails test, release build (d5ae197b)
  • Get_panics_when_out_of_bounds test, release build (920df503)
  • Fixes clippy dead-code warning (f64263be)
  • Remove dashboard balance discrepancy (065ea4a5)
  • (NativeCurrencyAmount) Propagate rounding carry (bd2e0a84)
  • (wallet) Don't create transaction using UTXOs present in mempool (d9428673)

🚀 Performance

  • Add option to maintain empty tx in mempool (554b5b12)

📚 Documentation

♻️ Refactor

  • (rpc_server) Exclude 1st mined block from intervals list (c29822b6)
  • (peer) Reduce message size to 500MB (49bc9e7c)
  • (!) Make trait ConsensusProgram private (b62e26f2)
  • (!) (ConsensusProgram) Create test trait (f1999e5e)
  • (!) (ConsensusProgram) Make trait private (287c29a1)
  • (mutator_set) Drop unused Result wrapper (cfebce80)
  • (wallet) Change determination of "spent" UTXOs (6dd28b20)
  • (wallet) Use MSMP validity for compiling balance history (0500af9d)
  • (RPC) Filter out spent UTXOs smarter (7493d58c)
  • (!) Increase target block interval back to 9.8 minutes (51d3dc95)
  • (mine_loop) Inspect mempool after creating coinbase transaction (a63af7d0)
  • (RPC) Disallow sending negative-fee transactions (aee78c84)
  • (peer_loop) Punish peers who send negative-fee transactions (c30496e9)
  • (Block) Return dedicated error type from block validation (e92eaaea)

✅ Testing

  • De-duplicate testing functionality (fa81df30)
  • Fix tests invalidated by disallowing update of 0-input txs (f1375125)
  • Fix amounts related to increased block time (d8d8a8a8)
  • Allow spending of UTXOs spent in orphaned block (cbf1020b)

🎨 Styling

🛠 Build

  • Add tokio-console feature flag. (d5cd1842)

⚙️ Miscellaneous

  • Improve run-multiple script (f630e27e)
  • Improve run-multiple-instances.sh (9381f9e6)
  • Normalize --port arg between rpc clients (#378) (99bedc7f)
  • Update scripts to use --port (f70b159d)
  • Update release workflow files (401f4c29)

UI

  • Disallow sending negative-fee transactions (b694b125)

Trace

  • (ProverJob) More info about job complexity (#366) (557688e1)

Note: (!) indicates a breaking change.

Install neptune-cash 0.0.12

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/Neptune-Crypto/neptune-core/releases/download/v0.0.12/neptune-cash-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/Neptune-Crypto/neptune-core/releases/download/v0.0.12/neptune-cash-installer.ps1 | iex"

Download neptune-cash 0.0.12

File Platform Checksum
neptune-cash-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
neptune-cash-x86_64-apple-darwin.tar.xz Intel macOS checksum
neptune-cash-x86_64-pc-windows-msvc.zip x64 Windows checksum
neptune-cash-x86_64-pc-windows-msvc.msi x64 Windows checksum
neptune-cash-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

Verifying GitHub Artifact Attestations

The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:

gh attestation verify <file-path of downloaded artifact> --repo Neptune-Crypto/neptune-core

You can also download the attestation from GitHub and verify against that directly:

gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>

0.0.11 - 2025-01-31

31 Jan 20:20
Compare
Choose a tag to compare

Release Notes

✨ Features

  • (rpc_server) Add basic statistics for block intervals (37bc71cb)
  • (rpc_server) Add endpoint for block difficulties (b9835d89)
  • Key derivation (8682a1eb)
  • Dashboard support for deriving keys (24660ca9)
  • Display symmetric key hash to avoid leaking secret (6d1c660b)
  • (RpcServer) Show block digests by height (f5ee1b04)
  • (CLI) Add command to get block digests by height (e33d2edd)
  • Add is_canonical to block_info() RPC result (3995e39d)
  • Add sibling_blocks to /block_info rpc (0f0871bf)
  • (native-currency) Add time-lock check in rust source (867a9ac0)
  • (native-currency) Time-lock half of coinbase (da724fa3)
  • Harden native currency (ecfbefe9)
  • Add constructor for fee-gobbler transaction details (71f1cf62)
  • (proof_upgrader) Sort jobs by profitability (077ddcc7)
  • (proof_upgrader) Gobble fees (9eb941f3)
  • (merge) Allow negative fees (17c4a841)
  • (native-currency) Disallow coinbase with negative fee (94c897ce)
  • /block_info rpc returns actual block reward (5d4de110)
  • (SingleProof) Ensure merge bit retained in update-branch (6787d595)
  • (SingleProof) Verify merge bit set after merge (bf7e49d2)
  • (BlockProgram) Verify that merge bit is set (ba89f056)
  • (mine_loop) Merge nop-gobbler if no other txs available (996701de)
  • (mine_loop) Graceful shutdown on composition failure (ea6188e7)
  • (dashboard) Show max num peers (f4a564af)
  • (archival_mmr) Add function to get latest leaf (2049e1bb)
  • (archival_mmr) Add function to prune MMR to specified num leafs (50088a47)
  • (archival_mmr) Add try-get for leafs (66ae10d1)
  • (archival_state) Add archival block MMR (fd9a10aa)
  • (archival_state) Use block MMR to determine canonicity (0477832e)
  • (CLI) Add command nth-receiving-address (611b16d4)
  • (CLI) Add command premine-receiving-address (9c1c4438)
  • (mine_loop) Restart guesser every 20 seconds (37695fd4)
  • (peer_loop) Challenge block notifications before syncing (22a7ba75)
  • (rpc) Cookie based authentication (65b67e98)
  • (global_state) Allow storing of block that's not tip (0f61d6ab)
  • (archival_mmr) Get MPs relative to smaller MMRs (8a7f5e8e)
  • (main_loop) Tolerate arbitrarily deep reorganizations (ebcd3ab0)
  • (main_loop) Add global timeout for sync mode (5eb8d2fa)
  • Add RustyArchivalBlockMmr for schema-access (89f5a1c2)
  • (difficulty_control) Estimate max pow after n blocks (f56e669d)
  • (peer_loop) Reject fishy PoW evolutions (1ab0beec)
  • Add Shamir secret sharing maths (27ca2f05)
  • CLI commands for Shamir secret sharing (e65f6bac)

🐛 Bug Fixes

  • Store known keys in HashSet to ensure unique (e15e228e)
  • Reserve key 0 for coinbase transactions (4927b432)
  • (PrimitiveWitness/Arbitrary) Pick one: coinbase or inputs (203a18ac)
  • Use checked_add_negative for adding potentially negative fee (0a92e9d5)
  • (native_currency) Adjust some test-case generators relating to amounts (7c2cc2ac)
  • (Merge) Compare fee not hash of fee against max amount (9efdbd3e)
  • Test upgrade_proof_collection_to_single_proof_foreign_tx (7f41efe9)
  • (block) Adjust block parameters to match 42.000.000 limit (a4a8f7f5)
  • (docs) Fix wrong number in docs about target block interval (2a0538a3)
  • (test) Test that premine does not exceed promise (2eab824e)
  • Add arbitrary for coinbase (1a302055)
  • (AuthenticateTxkField) Account for merge bit (0f13fbae)
  • (test) Account for merge bit in more tests (b22200c5)
  • Temporarily exceed max num peers when bootstrapping (a05b581e)
  • (mine_loop) Recheck for connections every 5 seconds (517bd194)
  • Deserializing GenerationSpendingKey with serde_json (3f4ddd14)
  • Remove panic when deriving key index > 0 (ac35685c)
  • (PeerStanding) Include lower bound in standing test (5c35dc10)
  • (wallet_state) Avoid adding duplicate MUTXOs from different blocks (cbe6122b)
  • (WalletState) Filter out unspendable UTXOs before monitoring (226a371c)
  • (WalletState) Filter UTXOs for state validity (ff4dcb00)
  • (WalletState) Avoid duplicate MonitoredUTXOs (a0eb24bf)
  • (Block::is_valid) Fix false negative (4d6b7013)
  • (mine_loop) Segregate rayon threadpool for guessing (#315) (a1baa425)
  • Spawn task for block proof verification (17fd4737)
  • (neptune-cli) Catch failed connection gracefully (0abca09e)
  • (WalletState) Receive premine at multiple addresses (27ec3d36)
  • (wallet_state) Remove unneeded mut for key-getter (ef0c76c2)
  • (native_currency) Update hardcoded program hash (a607d105)
  • (verify_mmr_successor) Update non-determinism (19001aee)
  • Percolate rename of CLI argument (6115692d)
  • Add end-of-page margin for random memory pointers (b856e36b)
  • (difficulty_control) Add epsilon to function for upper-bounds on difficulty evolution (847fa714)
  • Update TIME_LOCK_HASH value (77728617)
  • (Block) Restrict spending of guess...
Read more

0.0.10 - 2024-11-23

03 Dec 13:56
Compare
Choose a tag to compare

Release Notes

✨ Features

  • Global state lock, async leveldb, etc. (fa89d041)
  • Display localtime in dashboard fields (3626465f)
  • Allow batch-queries of blocks with out-of-order starting points (a99b16a9)
  • Derandomize wallet generation (4f3792a4)
  • Reject blocks with timestamp in future (0c0e2c5f)
  • Time locks (80552a81)
  • Report on own UTXOs (e36a6799)
  • Add CLI command for listing coins (497f4462)
  • Display time-locked balance in dashboard (f3007d6d)
  • Add ProofType and BlockType enums (612a753e)
  • Log duration of adding new block (0869f4c3)
  • Make duration macros more flexible (e61ef788)
  • Add tip_info() RPC API (678ede62)
  • Adds rpcs: block_info, block_digest (b433e0df)
  • Add utxo_digest RPC call (b8e7c35b)
  • Improve block_info and fix block_digest rpc (888a00d8)
  • Use rfc339 in Timestamp::standard_format() (5a8ad635)
  • Add block-info command to neptune-cli (3e21a69e)
  • Make block timestamp repr time block found (5f9c9e83)
  • (archival_state) Add method to get parent block of tip (99abbdc2)
  • Add get_cpu_temps (4eef2b7e)
  • Add CPU temp to dashboard overview (2ca45587)
  • (mutator-set) Add function to get active window's chunk index interval (384ca41f)
  • Add neptune-cli send-to-many command (e4e8edd6)
  • Symmetric key notifications (4182f7d3)
  • Persist ExpectedUtxo to disk (db) (232e8520)
  • Add stub for RemovalRecordsIntegrity subprogram (2525f13a)
  • Add tx consensus program KernelToOutputs (cdeec086)
  • Add consensus program CollectLockScripts (d2d34931)
  • Produce ProofCollection (c4ef536c)
  • Verify ProofCollection (7fb3d6d7)
  • Complete consensus program KernelToOutputs (4f01d485)
  • (consensus) Add snippet for reading coinbase amount from memory (914f06e6)
  • Add Display implementation of primitive witness (5ab088d7)
  • (Tx) (Verify capability to) produce ProofCollection (dac7d9c6)
  • (consensus) Update transaction proofs (stub) (e8eb336a)
  • (consensus) Merge transaction proofs (stub) (ee511924)
  • Modify environment when invoking builtin stark_verify (e3004806)
  • Verify KernelToOutputs in SingleProof (de1f930b)
  • Add snippet for storing RRI-claim in dyn memory (72619d9e)
  • (ProofCollection) Store claim for kernel-to-outputs (97846578)
  • (proof_collection) Store claim for collect-lockscripts (b0b13d03)
  • Add generic snippet for new claim (08dfcbc4)
  • (claim) Add snippet for generating collect-lock-scripts claim (2c0419b3)
  • (transaction_consensus) Verify MSA against TXK (65b9081e)
  • (tx-update) Authenticate both MSAs against respective txk-mhash (f4e78c6d)
  • Continue on transaction's Update program (7328794a)
  • (tx-consensus) Add snippet to verify tx inputs against txk MAST hash (8284c3e3)
  • Make progress on tx's update program (2fe3f592)
  • Add snippet for authenticating generic field against txk mast hash (5694640b)
  • Integrate generic field authentication snippet into Update (dcfd13bd)
  • (update) Also authenticate timestamps in update program (bd832f12)
  • (proof_abstractions) Add snippet for verifying integrity of end-vm state (d179a122)
  • (merge) Add snippet for verifying coinbase amount rules (25791088)
  • Add estimate of machine power to networking_state (1702caa6)
  • Make salt for tx-proof-generation deterministic (684dbb4a)
  • Use host-machine power to pick tx-proof type (cd9c7985)
  • Application-level transaction merge (617462f5)
  • (proofs) Query proof-servers for proof (af26c3fa)
  • (mempool) Allow caller to cap num txs for block (7fadf5cb)
  • (main_loop) Add scheduled task to upgrade tx-proofs in mempool (701b1306)
  • (atomic_mutex) Add synchronous try_lock method (bd66d851)
  • Ensure max one instance of Triton VM's prover runs at all times (b08c02e6)
  • Wallet unconfirmed balance. (3c605e40)
  • (difficulty-control) Implement advance difficulty correction (1a4d34b1)
  • Display unconfirmed balance in clients (203fb3ac)
  • Add ScopeDurationLogger (de96f98c)
  • Make log-slow-write-lock timeout configurable (2d0be8f0)
  • Add guesser fee to mutator set (551e9c71)
  • Record nonce-preimage (9f7bfc78)
  • (Timestamp) Implement AddAssign (640b9608)
  • Add serial job-queue for triton-vm jobs (d9b9dfa3)
  • Fifo job ordering of same priority jobs (439192ce)
  • Two-Step Mining (966db77b)
  • Add CLI flag --no-transaction-initiation (93f145be)
  • Generate proofs out-of-process (b7b70e0c)
  • Job cancellation of JobQueue jobs (06ca5d83)
  • Cli opt max_log2_padded_height_for_proofs (7d3826aa)
  • Reward peers for good behavior (6e983cdd)
  • Add JobResult::into_any(), owned downcast() (b18f0d1c)
  • Pause mining if proof complexity limit hit (e9a1c506)
  • (dashboard) Show number of own mempool-transactions ([7b1426...
Read more