mirror of
https://github.com/dashpay/dash.git
synced 2024-12-25 20:12:57 +01:00
Merge branch 'v-1.11.0.x' of https://github.com/darkcoin/darkcoin into v0.11.0.x
This commit is contained in:
commit
4e5cf9919c
276
doc/release-notes/release-notes-0.11.0.md
Normal file
276
doc/release-notes/release-notes-0.11.0.md
Normal file
@ -0,0 +1,276 @@
|
|||||||
|
0.11.0 Release notes
|
||||||
|
====================
|
||||||
|
|
||||||
|
Darkcoin Core 0.11.0 is forked off the Bitcoin Core 0.9.3. The old darkcoin
|
||||||
|
versions 0.10.x were forked from the Litecoin 0.8 tree. The following changes
|
||||||
|
are introduced in this major release. This list is compiled from the release
|
||||||
|
notes of Bitcoin Core 0.9.0, 0.9.1, 0.9.2, 0.9.2.1, 0.9.3 and was completed
|
||||||
|
with the introduced changes to the Darkcoin Core 0.11.0.
|
||||||
|
|
||||||
|
|
||||||
|
Darkcoin Core:
|
||||||
|
|
||||||
|
- Rebrand to `Darkcoin Core`
|
||||||
|
- Version bumped to 0.11 to indicate a new major release
|
||||||
|
- Renamed client to identify with network from `Satoshi` to `Core`
|
||||||
|
- Bump protocol version to 70052
|
||||||
|
- Changed p2sh-address versions to start with `7` (instead of `3`, this affects
|
||||||
|
public keys only, old scripts remain valid and usable!)
|
||||||
|
- Changed testnet address versions to start with `x` or `y` (instead of `m` or
|
||||||
|
`n`, this affects public keys only, old wallets remain valid and usable!)
|
||||||
|
- Defined BIP32 (HD) address versions to start with `drkp`/`drkv` (`DRKP`/`DRKV`
|
||||||
|
for testnet)
|
||||||
|
- Added new units: `duffs` (1 / 100.000.000 DRK)
|
||||||
|
- Added units for testnet: tDRK, mtDRK, utDRK, tduffs
|
||||||
|
- Added new DNS seed from masternode.io
|
||||||
|
- Fixed wallet locking after sending coins
|
||||||
|
- Consider generated coins mature at 101 instead of 120 blocks
|
||||||
|
- Add `-regtest` mode, similar to testnet but private with instant block
|
||||||
|
generation with `setgenerate` RPC.
|
||||||
|
- Add separate darkcoin-cli client
|
||||||
|
|
||||||
|
|
||||||
|
Masternodes:
|
||||||
|
|
||||||
|
- Improve support for start-many with multi masternode config
|
||||||
|
- New masternode rpc commands: stop-many, start-alias, stop-alias, list-conf
|
||||||
|
- Fixed possible masternode payments exploit
|
||||||
|
- Better support for non-specific masternode payments
|
||||||
|
- Added masternode support for regtest
|
||||||
|
- Randomly sort masternodes before picking next winner
|
||||||
|
- Show number of masternodes in debug window
|
||||||
|
|
||||||
|
|
||||||
|
Darksend:
|
||||||
|
|
||||||
|
- Reduced lower darksend limit to 1.5 DRK
|
||||||
|
- Fixed progress bar calculation for low amounts
|
||||||
|
- Improved support for adding DRK after anon has completed
|
||||||
|
- Added denomination information to Overview tab
|
||||||
|
- Added more detailed Darksend status information to Overview tab
|
||||||
|
- Added Darksend high precision matching engine
|
||||||
|
|
||||||
|
|
||||||
|
RPC:
|
||||||
|
|
||||||
|
- Add `getwalletinfo`, `getblockchaininfo` and `getnetworkinfo` calls
|
||||||
|
(will replace hodge-podge `getinfo` at some point)
|
||||||
|
- Add a `relayfee` field to `getnetworkinfo`
|
||||||
|
- Always show syncnode in `getpeerinfo`
|
||||||
|
- `sendrawtransaction`: report the reject code and reason, and make it possible
|
||||||
|
to re-send transactions that are already in the mempool
|
||||||
|
- `getmininginfo` show right genproclimit
|
||||||
|
- New notion of 'conflicted' transactions, reported as confirmations: -1
|
||||||
|
- 'listreceivedbyaddress' now provides tx ids
|
||||||
|
- Add raw transaction hex to 'gettransaction' output
|
||||||
|
- Updated help and tests for 'getreceivedby(account|address)'
|
||||||
|
- In 'getblock', accept 2nd 'verbose' parameter, similar to getrawtransaction,
|
||||||
|
but defaulting to 1 for backward compatibility
|
||||||
|
- Add 'verifychain', to verify chain database at runtime
|
||||||
|
- Add 'dumpwallet' and 'importwallet' RPCs
|
||||||
|
- 'keypoolrefill' gains optional size parameter
|
||||||
|
- Add 'getbestblockhash', to return tip of best chain
|
||||||
|
- Add 'chainwork' (the total work done by all blocks since the genesis block)
|
||||||
|
to 'getblock' output
|
||||||
|
- Make RPC password resistant to timing attacks
|
||||||
|
- Clarify help messages and add examples
|
||||||
|
- Add 'getrawchangeaddress' call for raw transaction change destinations
|
||||||
|
- Reject insanely high fees by default in 'sendrawtransaction'
|
||||||
|
- Add RPC call 'decodescript' to decode a hex-encoded transaction script
|
||||||
|
- Make 'validateaddress' provide redeemScript
|
||||||
|
- Add 'getnetworkhashps' to get the calculated network hashrate
|
||||||
|
- New RPC 'ping' command to request ping, new 'pingtime' and 'pingwait' fields
|
||||||
|
in 'getpeerinfo' output
|
||||||
|
- Adding new 'addrlocal' field to 'getpeerinfo' output
|
||||||
|
- Add verbose boolean to 'getrawmempool'
|
||||||
|
- Add rpc command 'getunconfirmedbalance' to obtain total unconfirmed balance
|
||||||
|
- Explicitly ensure that wallet is unlocked in `importprivkey`
|
||||||
|
- Add check for valid keys in `importprivkey`
|
||||||
|
|
||||||
|
|
||||||
|
Command-line options:
|
||||||
|
|
||||||
|
- Fix `-printblocktree` output
|
||||||
|
- Show error message if ReadConfigFile fails
|
||||||
|
- New option: -nospendzeroconfchange to never spend unconfirmed change outputs
|
||||||
|
- New option: -zapwallettxes to rebuild the wallet's transaction information
|
||||||
|
- Rename option '-tor' to '-onion' to better reflect what it does
|
||||||
|
- Add '-disablewallet' mode to let darkcoind run entirely without wallet (when
|
||||||
|
built with wallet)
|
||||||
|
- Update default '-rpcsslciphers' to include TLSv1.2
|
||||||
|
- make '-logtimestamps' default on and rework help-message
|
||||||
|
- RPC client option: '-rpcwait', to wait for server start
|
||||||
|
- Remove '-logtodebugger'
|
||||||
|
- Allow `-noserver` with darkcoind
|
||||||
|
|
||||||
|
|
||||||
|
Block-chain handling and storage:
|
||||||
|
|
||||||
|
- Upgrade leveldb to 1.17
|
||||||
|
- Check for correct genesis (prevent cases where a datadir from the wrong
|
||||||
|
network is accidentally loaded)
|
||||||
|
- Allow txindex to be removed and add a reindex dialog
|
||||||
|
- Log aborted block database rebuilds
|
||||||
|
- Store orphan blocks in serialized form, to save memory
|
||||||
|
- Limit the number of orphan blocks in memory to 750
|
||||||
|
- Fix non-standard disconnected transactions causing mempool orphans
|
||||||
|
|
||||||
|
|
||||||
|
Protocol and network code:
|
||||||
|
|
||||||
|
- Don't poll showmyip.com, it doesn't exist anymore
|
||||||
|
- Add a way to limit deserialized string lengths and use it
|
||||||
|
- Increase IsStandard() scriptSig length
|
||||||
|
- Avoid querying DNS seeds, if we have open connections
|
||||||
|
- Remove a useless millisleep in socket handler
|
||||||
|
- Stricter memory limits on CNode
|
||||||
|
- Better orphan transaction handling
|
||||||
|
- Add `-maxorphantx=<n>` and `-maxorphanblocks=<n>` options for control over the
|
||||||
|
maximum orphan transactions and blocks
|
||||||
|
- Per-peer block download tracking and stalled download detection
|
||||||
|
- Prevent socket leak in ThreadSocketHandler and correct some proxy related
|
||||||
|
socket leaks
|
||||||
|
- Use pnode->nLastRecv as sync score (was the wrong way around)
|
||||||
|
- Drop the fee required to relay a transaction to 0.01mDRK per kilobyte
|
||||||
|
- Send tx relay flag with version
|
||||||
|
- New 'reject' P2P message (BIP 0061, see
|
||||||
|
https://gist.github.com/gavinandresen/7079034 for draft)
|
||||||
|
- Dump addresses every 15 minutes instead of 10 seconds
|
||||||
|
- Relay OP_RETURN data TxOut as standard transaction type
|
||||||
|
- Remove CENT-output free transaction rule when relaying
|
||||||
|
- Lower maximum size for free transaction creation
|
||||||
|
- Send multiple inv messages if mempool.size > MAX_INV_SZ
|
||||||
|
- Split MIN_PROTO_VERSION into INIT_PROTO_VERSION and MIN_PEER_PROTO_VERSION
|
||||||
|
- Do not treat fFromMe transaction differently when broadcasting
|
||||||
|
- Process received messages one at a time without sleeping between messages
|
||||||
|
- Improve logging of failed connections
|
||||||
|
- Add some additional logging to give extra network insight
|
||||||
|
|
||||||
|
|
||||||
|
Wallet:
|
||||||
|
|
||||||
|
- Check redeemScript size does not exceed 520 byte limit
|
||||||
|
- Ignore (and warn about) too-long redeemScripts while loading wallet
|
||||||
|
- Make GetAvailableCredit run GetHash() only once per transaction (performance
|
||||||
|
improvement)
|
||||||
|
- Lower paytxfee warning threshold
|
||||||
|
- Fix importwallet nTimeFirstKey (trigger necessary rescans)
|
||||||
|
- Log BerkeleyDB version at startup
|
||||||
|
- CWallet init fix
|
||||||
|
- Bug fixes and new regression tests to correctly compute
|
||||||
|
the balance of wallets containing double-spent (or mutated) transactions
|
||||||
|
- Store key creation time. Calculate whole-wallet birthday.
|
||||||
|
- Optimize rescan to skip blocks prior to birthday
|
||||||
|
- Let user select wallet file with -wallet=foo.dat
|
||||||
|
- Don't count txins for priority to encourage sweeping
|
||||||
|
- Don't create empty transactions when reading a corrupted wallet
|
||||||
|
- Fix rescan to start from beginning after importprivkey
|
||||||
|
|
||||||
|
|
||||||
|
Mining:
|
||||||
|
|
||||||
|
- Increase default -blockmaxsize/prioritysize to 750K/50K
|
||||||
|
- 'getblocktemplate' does not require a key to create a block template
|
||||||
|
- Mining code fee policy now matches relay fee policy
|
||||||
|
|
||||||
|
|
||||||
|
GUI:
|
||||||
|
|
||||||
|
- fix 'opens in testnet mode when presented with a BIP-72 link with no fallback'
|
||||||
|
- AvailableCoins: acquire cs_main mutex
|
||||||
|
- Fix unicode character display on MacOSX
|
||||||
|
- Fix various coin control visual issues
|
||||||
|
- Show number of in/out connections in debug console
|
||||||
|
- Show weeks as well as years behind for long timespans behind
|
||||||
|
- Enable and disable the Show and Remove buttons for requested payments history
|
||||||
|
based on whether any entry is selected.
|
||||||
|
- Show also value for options overridden on command line in options dialog
|
||||||
|
- Fill in label from address book also for URIs
|
||||||
|
- Fixes feel when resizing the last column on tables
|
||||||
|
- Fix ESC in disablewallet mode
|
||||||
|
- Add expert section to wallet tab in optionsdialog
|
||||||
|
- Do proper boost::path conversion (fixes unicode in datadir)
|
||||||
|
- Only override -datadir if different from the default (fixes -datadir in config
|
||||||
|
file)
|
||||||
|
- Show rescan progress at start-up
|
||||||
|
- Show importwallet progress
|
||||||
|
- Get required locks upfront in polling functions (avoids hanging on locks)
|
||||||
|
- Catch Windows shutdown events while client is running
|
||||||
|
- Optionally add third party links to transaction context menu
|
||||||
|
- Check for !pixmap() before trying to export QR code (avoids crashes when no QR
|
||||||
|
code could be generated)
|
||||||
|
- Fix "Start darkcoin on system login"
|
||||||
|
- Switch to Qt 5.2.0 for Windows build
|
||||||
|
- Add payment request (BIP 0070) support
|
||||||
|
- Improve options dialog
|
||||||
|
- Show transaction fee in new send confirmation dialog
|
||||||
|
- Add total balance in overview page
|
||||||
|
- Allow user to choose data directory on first start, when data directory is
|
||||||
|
missing, or when the -choosedatadir option is passed
|
||||||
|
- Save and restore window positions
|
||||||
|
- Add vout index to transaction id in transactions details dialog
|
||||||
|
- Add network traffic graph in debug window
|
||||||
|
- Add open URI dialog
|
||||||
|
- Improve receive coins workflow: make the 'Receive' tab into a form to request
|
||||||
|
payments, and move historical address list functionality to File menu.
|
||||||
|
- Move initialization/shutdown to a thread. This prevents "Not responding"
|
||||||
|
messages during startup. Also show a window during shutdown.
|
||||||
|
- Don't regenerate autostart link on every client startup
|
||||||
|
- Show and store message of normal darkcoin:URI
|
||||||
|
- Fix richtext detection hang issue on very old Qt versions
|
||||||
|
- OS X: Make use of the 10.8+ user notification center to display Growl-like
|
||||||
|
notifications
|
||||||
|
- OS X: Added NSHighResolutionCapable flag to Info.plist for better font
|
||||||
|
rendering on Retina displays.
|
||||||
|
- OS X: Fix darkcoin-qt startup crash when clicking dock icon
|
||||||
|
- Linux: Fix Gnome darkcoin: URI handler
|
||||||
|
|
||||||
|
|
||||||
|
Validation:
|
||||||
|
|
||||||
|
- Log reason for non-standard transaction rejection
|
||||||
|
- Prune provably-unspendable outputs, and adapt consistency check for it.
|
||||||
|
- Detect any sufficiently long fork and add a warning
|
||||||
|
- Call the -alertnotify script when we see a long or invalid fork
|
||||||
|
- Fix multi-block reorg transaction resurrection
|
||||||
|
- Reject non-canonically-encoded serialization sizes
|
||||||
|
- Reject dust amounts during validation
|
||||||
|
- Accept nLockTime transactions that finalize in the next block
|
||||||
|
|
||||||
|
|
||||||
|
Build system:
|
||||||
|
|
||||||
|
- Add OSX build descriptors to gitian
|
||||||
|
- Fix explicit --disable-qt-dbus
|
||||||
|
- Don't require db_cxx.h when compiling with wallet disabled and GUI enabled
|
||||||
|
- Improve missing boost error reporting
|
||||||
|
- gitian-linux: --enable-glibc-back-compat for binary compatibility with old
|
||||||
|
distributions
|
||||||
|
- gitian: don't export any symbols from executable
|
||||||
|
- gitian: build against Qt 4.6
|
||||||
|
- devtools: add script to check symbols from Linux gitian executables
|
||||||
|
- Remove build-time no-IPv6 setting
|
||||||
|
- Add statically built executables to Linux build
|
||||||
|
- Switch to autotools-based build system
|
||||||
|
- Build without wallet by passing `--disable-wallet` to configure, this
|
||||||
|
removes the BerkeleyDB dependency
|
||||||
|
- Upgrade gitian dependencies (libpng, libz, libupnpc, boost, openssl) to more
|
||||||
|
recent versions
|
||||||
|
- Windows 64-bit build support
|
||||||
|
- Solaris compatibility fixes
|
||||||
|
- Check integrity of gitian input source tarballs
|
||||||
|
- Enable full GCC Stack-smashing protection for all OSes
|
||||||
|
|
||||||
|
|
||||||
|
Miscellaneous:
|
||||||
|
|
||||||
|
- key.cpp: fail with a friendlier message on missing ssl EC support
|
||||||
|
- Remove bignum dependency for scripts
|
||||||
|
- Upgrade OpenSSL to 1.0.1i, includes CVE-2014-0224, CVE-2014-0160 and
|
||||||
|
CVE-2014-0076 (see https://www.openssl.org/news/secadv_20140806.txt)
|
||||||
|
- Upgrade miniupnpc to 1.9.20140701
|
||||||
|
- Fix boost detection in build system on some platforms
|
||||||
|
- Replace non-threadsafe C functions (gmtime, strerror and setlocale)
|
||||||
|
- Add missing cs_main and wallet locks
|
||||||
|
- Avoid exception at startup when system locale not recognized
|
||||||
|
- devtools: add a script to fetch and postprocess translations
|
@ -1,411 +0,0 @@
|
|||||||
Bitcoin Core version 0.9.0 is now available from:
|
|
||||||
|
|
||||||
https://bitcoin.org/bin/0.9.0/
|
|
||||||
|
|
||||||
This is a new major version release, bringing both new features and
|
|
||||||
bug fixes.
|
|
||||||
|
|
||||||
Please report bugs using the issue tracker at github:
|
|
||||||
|
|
||||||
https://github.com/bitcoin/bitcoin/issues
|
|
||||||
|
|
||||||
How to Upgrade
|
|
||||||
--------------
|
|
||||||
|
|
||||||
If you are running an older version, shut it down. Wait until it has completely
|
|
||||||
shut down (which might take a few minutes for older versions), uninstall all
|
|
||||||
earlier versions of Bitcoin, then run the installer (on Windows) or just copy
|
|
||||||
over /Applications/Bitcoin-Qt (on Mac) or bitcoind/bitcoin-qt (on Linux).
|
|
||||||
|
|
||||||
If you are upgrading from version 0.7.2 or earlier, the first time you run
|
|
||||||
0.9.0 your blockchain files will be re-indexed, which will take anywhere from
|
|
||||||
30 minutes to several hours, depending on the speed of your machine.
|
|
||||||
|
|
||||||
On Windows, do not forget to uninstall all earlier versions of the Bitcoin
|
|
||||||
client first, especially if you are switching to the 64-bit version.
|
|
||||||
|
|
||||||
Windows 64-bit installer
|
|
||||||
-------------------------
|
|
||||||
|
|
||||||
New in 0.9.0 is the Windows 64-bit version of the client. There have been
|
|
||||||
frequent reports of users running out of virtual memory on 32-bit systems
|
|
||||||
during the initial sync. Because of this it is recommended to install the
|
|
||||||
64-bit version if your system supports it.
|
|
||||||
|
|
||||||
NOTE: Release candidate 2 Windows binaries are not code-signed; use PGP
|
|
||||||
and the SHA256SUMS.asc file to make sure your binaries are correct.
|
|
||||||
In the final 0.9.0 release, Windows setup.exe binaries will be code-signed.
|
|
||||||
|
|
||||||
OSX 10.5 / 32-bit no longer supported
|
|
||||||
-------------------------------------
|
|
||||||
|
|
||||||
0.9.0 drops support for older Macs. The minimum requirements are now:
|
|
||||||
* A 64-bit-capable CPU (see http://support.apple.com/kb/ht3696);
|
|
||||||
* Mac OS 10.6 or later (see https://support.apple.com/kb/ht1633).
|
|
||||||
|
|
||||||
Downgrading warnings
|
|
||||||
--------------------
|
|
||||||
|
|
||||||
The 'chainstate' for this release is not always compatible with previous
|
|
||||||
releases, so if you run 0.9 and then decide to switch back to a
|
|
||||||
0.8.x release you might get a blockchain validation error when starting the
|
|
||||||
old release (due to 'pruned outputs' being omitted from the index of
|
|
||||||
unspent transaction outputs).
|
|
||||||
|
|
||||||
Running the old release with the -reindex option will rebuild the chainstate
|
|
||||||
data structures and correct the problem.
|
|
||||||
|
|
||||||
Also, the first time you run a 0.8.x release on a 0.9 wallet it will rescan
|
|
||||||
the blockchain for missing spent coins, which will take a long time (tens
|
|
||||||
of minutes on a typical machine).
|
|
||||||
|
|
||||||
Rebranding to Bitcoin Core
|
|
||||||
---------------------------
|
|
||||||
|
|
||||||
To reduce confusion between Bitcoin-the-network and Bitcoin-the-software we
|
|
||||||
have renamed the reference client to Bitcoin Core.
|
|
||||||
|
|
||||||
|
|
||||||
OP_RETURN and data in the block chain
|
|
||||||
-------------------------------------
|
|
||||||
On OP_RETURN: There was been some confusion and misunderstanding in
|
|
||||||
the community, regarding the OP_RETURN feature in 0.9 and data in the
|
|
||||||
blockchain. This change is not an endorsement of storing data in the
|
|
||||||
blockchain. The OP_RETURN change creates a provably-prunable output,
|
|
||||||
to avoid data storage schemes -- some of which were already deployed --
|
|
||||||
that were storing arbitrary data such as images as forever-unspendable
|
|
||||||
TX outputs, bloating bitcoin's UTXO database.
|
|
||||||
|
|
||||||
Storing arbitrary data in the blockchain is still a bad idea; it is less
|
|
||||||
costly and far more efficient to store non-currency data elsewhere.
|
|
||||||
|
|
||||||
Autotools build system
|
|
||||||
-----------------------
|
|
||||||
|
|
||||||
For 0.9.0 we switched to an autotools-based build system instead of individual
|
|
||||||
(q)makefiles.
|
|
||||||
|
|
||||||
Using the standard "./autogen.sh; ./configure; make" to build Bitcoin-Qt and
|
|
||||||
bitcoind makes it easier for experienced open source developers to contribute
|
|
||||||
to the project.
|
|
||||||
|
|
||||||
Be sure to check doc/build-*.md for your platform before building from source.
|
|
||||||
|
|
||||||
Bitcoin-cli
|
|
||||||
-------------
|
|
||||||
|
|
||||||
Another change in the 0.9 release is moving away from the bitcoind executable
|
|
||||||
functioning both as a server and as a RPC client. The RPC client functionality
|
|
||||||
("tell the running bitcoin daemon to do THIS") was split into a separate
|
|
||||||
executable, 'bitcoin-cli'. The RPC client code will eventually be removed from
|
|
||||||
bitcoind, but will be kept for backwards compatibility for a release or two.
|
|
||||||
|
|
||||||
`walletpassphrase` RPC
|
|
||||||
-----------------------
|
|
||||||
|
|
||||||
The behavior of the `walletpassphrase` RPC when the wallet is already unlocked
|
|
||||||
has changed between 0.8 and 0.9.
|
|
||||||
|
|
||||||
The 0.8 behavior of `walletpassphrase` is to fail when the wallet is already unlocked:
|
|
||||||
|
|
||||||
> walletpassphrase 1000
|
|
||||||
walletunlocktime = now + 1000
|
|
||||||
> walletpassphrase 10
|
|
||||||
Error: Wallet is already unlocked (old unlock time stays)
|
|
||||||
|
|
||||||
The new behavior of `walletpassphrase` is to set a new unlock time overriding
|
|
||||||
the old one:
|
|
||||||
|
|
||||||
> walletpassphrase 1000
|
|
||||||
walletunlocktime = now + 1000
|
|
||||||
> walletpassphrase 10
|
|
||||||
walletunlocktime = now + 10 (overriding the old unlock time)
|
|
||||||
|
|
||||||
Transaction malleability-related fixes
|
|
||||||
--------------------------------------
|
|
||||||
|
|
||||||
This release contains a few fixes for transaction ID (TXID) malleability
|
|
||||||
issues:
|
|
||||||
|
|
||||||
- -nospendzeroconfchange command-line option, to avoid spending
|
|
||||||
zero-confirmation change
|
|
||||||
- IsStandard() transaction rules tightened to prevent relaying and mining of
|
|
||||||
mutated transactions
|
|
||||||
- Additional information in listtransactions/gettransaction output to
|
|
||||||
report wallet transactions that conflict with each other because
|
|
||||||
they spend the same outputs.
|
|
||||||
- Bug fixes to the getbalance/listaccounts RPC commands, which would report
|
|
||||||
incorrect balances for double-spent (or mutated) transactions.
|
|
||||||
- New option: -zapwallettxes to rebuild the wallet's transaction information
|
|
||||||
|
|
||||||
Transaction Fees
|
|
||||||
----------------
|
|
||||||
|
|
||||||
This release drops the default fee required to relay transactions across the
|
|
||||||
network and for miners to consider the transaction in their blocks to
|
|
||||||
0.01mBTC per kilobyte.
|
|
||||||
|
|
||||||
Note that getting a transaction relayed across the network does NOT guarantee
|
|
||||||
that the transaction will be accepted by a miner; by default, miners fill
|
|
||||||
their blocks with 50 kilobytes of high-priority transactions, and then with
|
|
||||||
700 kilobytes of the highest-fee-per-kilobyte transactions.
|
|
||||||
|
|
||||||
The minimum relay/mining fee-per-kilobyte may be changed with the
|
|
||||||
minrelaytxfee option. Note that previous releases incorrectly used
|
|
||||||
the mintxfee setting to determine which low-priority transactions should
|
|
||||||
be considered for inclusion in blocks.
|
|
||||||
|
|
||||||
The wallet code still uses a default fee for low-priority transactions of
|
|
||||||
0.1mBTC per kilobyte. During periods of heavy transaction volume, even this
|
|
||||||
fee may not be enough to get transactions confirmed quickly; the mintxfee
|
|
||||||
option may be used to override the default.
|
|
||||||
|
|
||||||
0.9.0 Release notes
|
|
||||||
=======================
|
|
||||||
|
|
||||||
RPC:
|
|
||||||
|
|
||||||
- New notion of 'conflicted' transactions, reported as confirmations: -1
|
|
||||||
- 'listreceivedbyaddress' now provides tx ids
|
|
||||||
- Add raw transaction hex to 'gettransaction' output
|
|
||||||
- Updated help and tests for 'getreceivedby(account|address)'
|
|
||||||
- In 'getblock', accept 2nd 'verbose' parameter, similar to getrawtransaction,
|
|
||||||
but defaulting to 1 for backward compatibility
|
|
||||||
- Add 'verifychain', to verify chain database at runtime
|
|
||||||
- Add 'dumpwallet' and 'importwallet' RPCs
|
|
||||||
- 'keypoolrefill' gains optional size parameter
|
|
||||||
- Add 'getbestblockhash', to return tip of best chain
|
|
||||||
- Add 'chainwork' (the total work done by all blocks since the genesis block)
|
|
||||||
to 'getblock' output
|
|
||||||
- Make RPC password resistant to timing attacks
|
|
||||||
- Clarify help messages and add examples
|
|
||||||
- Add 'getrawchangeaddress' call for raw transaction change destinations
|
|
||||||
- Reject insanely high fees by default in 'sendrawtransaction'
|
|
||||||
- Add RPC call 'decodescript' to decode a hex-encoded transaction script
|
|
||||||
- Make 'validateaddress' provide redeemScript
|
|
||||||
- Add 'getnetworkhashps' to get the calculated network hashrate
|
|
||||||
- New RPC 'ping' command to request ping, new 'pingtime' and 'pingwait' fields
|
|
||||||
in 'getpeerinfo' output
|
|
||||||
- Adding new 'addrlocal' field to 'getpeerinfo' output
|
|
||||||
- Add verbose boolean to 'getrawmempool'
|
|
||||||
- Add rpc command 'getunconfirmedbalance' to obtain total unconfirmed balance
|
|
||||||
- Explicitly ensure that wallet is unlocked in `importprivkey`
|
|
||||||
- Add check for valid keys in `importprivkey`
|
|
||||||
|
|
||||||
Command-line options:
|
|
||||||
|
|
||||||
- New option: -nospendzeroconfchange to never spend unconfirmed change outputs
|
|
||||||
- New option: -zapwallettxes to rebuild the wallet's transaction information
|
|
||||||
- Rename option '-tor' to '-onion' to better reflect what it does
|
|
||||||
- Add '-disablewallet' mode to let bitcoind run entirely without wallet (when
|
|
||||||
built with wallet)
|
|
||||||
- Update default '-rpcsslciphers' to include TLSv1.2
|
|
||||||
- make '-logtimestamps' default on and rework help-message
|
|
||||||
- RPC client option: '-rpcwait', to wait for server start
|
|
||||||
- Remove '-logtodebugger'
|
|
||||||
- Allow `-noserver` with bitcoind
|
|
||||||
|
|
||||||
Block-chain handling and storage:
|
|
||||||
|
|
||||||
- Update leveldb to 1.15
|
|
||||||
- Check for correct genesis (prevent cases where a datadir from the wrong
|
|
||||||
network is accidentally loaded)
|
|
||||||
- Allow txindex to be removed and add a reindex dialog
|
|
||||||
- Log aborted block database rebuilds
|
|
||||||
- Store orphan blocks in serialized form, to save memory
|
|
||||||
- Limit the number of orphan blocks in memory to 750
|
|
||||||
- Fix non-standard disconnected transactions causing mempool orphans
|
|
||||||
- Add a new checkpoint at block 279,000
|
|
||||||
|
|
||||||
Wallet:
|
|
||||||
|
|
||||||
- Bug fixes and new regression tests to correctly compute
|
|
||||||
the balance of wallets containing double-spent (or mutated) transactions
|
|
||||||
- Store key creation time. Calculate whole-wallet birthday.
|
|
||||||
- Optimize rescan to skip blocks prior to birthday
|
|
||||||
- Let user select wallet file with -wallet=foo.dat
|
|
||||||
- Consider generated coins mature at 101 instead of 120 blocks
|
|
||||||
- Improve wallet load time
|
|
||||||
- Don't count txins for priority to encourage sweeping
|
|
||||||
- Don't create empty transactions when reading a corrupted wallet
|
|
||||||
- Fix rescan to start from beginning after importprivkey
|
|
||||||
- Only create signatures with low S values
|
|
||||||
|
|
||||||
Mining:
|
|
||||||
|
|
||||||
- Increase default -blockmaxsize/prioritysize to 750K/50K
|
|
||||||
- 'getblocktemplate' does not require a key to create a block template
|
|
||||||
- Mining code fee policy now matches relay fee policy
|
|
||||||
|
|
||||||
Protocol and network:
|
|
||||||
|
|
||||||
- Drop the fee required to relay a transaction to 0.01mBTC per kilobyte
|
|
||||||
- Send tx relay flag with version
|
|
||||||
- New 'reject' P2P message (BIP 0061, see
|
|
||||||
https://gist.github.com/gavinandresen/7079034 for draft)
|
|
||||||
- Dump addresses every 15 minutes instead of 10 seconds
|
|
||||||
- Relay OP_RETURN data TxOut as standard transaction type
|
|
||||||
- Remove CENT-output free transaction rule when relaying
|
|
||||||
- Lower maximum size for free transaction creation
|
|
||||||
- Send multiple inv messages if mempool.size > MAX_INV_SZ
|
|
||||||
- Split MIN_PROTO_VERSION into INIT_PROTO_VERSION and MIN_PEER_PROTO_VERSION
|
|
||||||
- Do not treat fFromMe transaction differently when broadcasting
|
|
||||||
- Process received messages one at a time without sleeping between messages
|
|
||||||
- Improve logging of failed connections
|
|
||||||
- Bump protocol version to 70002
|
|
||||||
- Add some additional logging to give extra network insight
|
|
||||||
- Added new DNS seed from bitcoinstats.com
|
|
||||||
|
|
||||||
Validation:
|
|
||||||
|
|
||||||
- Log reason for non-standard transaction rejection
|
|
||||||
- Prune provably-unspendable outputs, and adapt consistency check for it.
|
|
||||||
- Detect any sufficiently long fork and add a warning
|
|
||||||
- Call the -alertnotify script when we see a long or invalid fork
|
|
||||||
- Fix multi-block reorg transaction resurrection
|
|
||||||
- Reject non-canonically-encoded serialization sizes
|
|
||||||
- Reject dust amounts during validation
|
|
||||||
- Accept nLockTime transactions that finalize in the next block
|
|
||||||
|
|
||||||
Build system:
|
|
||||||
|
|
||||||
- Switch to autotools-based build system
|
|
||||||
- Build without wallet by passing `--disable-wallet` to configure, this
|
|
||||||
removes the BerkeleyDB dependency
|
|
||||||
- Upgrade gitian dependencies (libpng, libz, libupnpc, boost, openssl) to more
|
|
||||||
recent versions
|
|
||||||
- Windows 64-bit build support
|
|
||||||
- Solaris compatibility fixes
|
|
||||||
- Check integrity of gitian input source tarballs
|
|
||||||
- Enable full GCC Stack-smashing protection for all OSes
|
|
||||||
|
|
||||||
GUI:
|
|
||||||
|
|
||||||
- Switch to Qt 5.2.0 for Windows build
|
|
||||||
- Add payment request (BIP 0070) support
|
|
||||||
- Improve options dialog
|
|
||||||
- Show transaction fee in new send confirmation dialog
|
|
||||||
- Add total balance in overview page
|
|
||||||
- Allow user to choose data directory on first start, when data directory is
|
|
||||||
missing, or when the -choosedatadir option is passed
|
|
||||||
- Save and restore window positions
|
|
||||||
- Add vout index to transaction id in transactions details dialog
|
|
||||||
- Add network traffic graph in debug window
|
|
||||||
- Add open URI dialog
|
|
||||||
- Add Coin Control Features
|
|
||||||
- Improve receive coins workflow: make the 'Receive' tab into a form to request
|
|
||||||
payments, and move historical address list functionality to File menu.
|
|
||||||
- Rebrand to `Bitcoin Core`
|
|
||||||
- Move initialization/shutdown to a thread. This prevents "Not responding"
|
|
||||||
messages during startup. Also show a window during shutdown.
|
|
||||||
- Don't regenerate autostart link on every client startup
|
|
||||||
- Show and store message of normal bitcoin:URI
|
|
||||||
- Fix richtext detection hang issue on very old Qt versions
|
|
||||||
- OS X: Make use of the 10.8+ user notification center to display Growl-like
|
|
||||||
notifications
|
|
||||||
- OS X: Added NSHighResolutionCapable flag to Info.plist for better font
|
|
||||||
rendering on Retina displays.
|
|
||||||
- OS X: Fix bitcoin-qt startup crash when clicking dock icon
|
|
||||||
- Linux: Fix Gnome bitcoin: URI handler
|
|
||||||
|
|
||||||
Miscellaneous:
|
|
||||||
|
|
||||||
- Add Linux script (contrib/qos/tc.sh) to limit outgoing bandwidth
|
|
||||||
- Add '-regtest' mode, similar to testnet but private with instant block
|
|
||||||
generation with 'setgenerate' RPC.
|
|
||||||
- Add 'linearize.py' script to contrib, for creating bootstrap.dat
|
|
||||||
- Add separate bitcoin-cli client
|
|
||||||
|
|
||||||
Credits
|
|
||||||
--------
|
|
||||||
|
|
||||||
Thanks to everyone who contributed to this release:
|
|
||||||
|
|
||||||
- Andrey
|
|
||||||
- Ashley Holman
|
|
||||||
- b6393ce9-d324-4fe1-996b-acf82dbc3d53
|
|
||||||
- bitsofproof
|
|
||||||
- Brandon Dahler
|
|
||||||
- Calvin Tam
|
|
||||||
- Christian Decker
|
|
||||||
- Christian von Roques
|
|
||||||
- Christopher Latham
|
|
||||||
- Chuck
|
|
||||||
- coblee
|
|
||||||
- constantined
|
|
||||||
- Cory Fields
|
|
||||||
- Cozz Lovan
|
|
||||||
- daniel
|
|
||||||
- Daniel Larimer
|
|
||||||
- David Hill
|
|
||||||
- Dmitry Smirnov
|
|
||||||
- Drak
|
|
||||||
- Eric Lombrozo
|
|
||||||
- fanquake
|
|
||||||
- fcicq
|
|
||||||
- Florin
|
|
||||||
- frewil
|
|
||||||
- Gavin Andresen
|
|
||||||
- Gregory Maxwell
|
|
||||||
- gubatron
|
|
||||||
- Guillermo Céspedes Tabárez
|
|
||||||
- Haakon Nilsen
|
|
||||||
- HaltingState
|
|
||||||
- Han Lin Yap
|
|
||||||
- harry
|
|
||||||
- Ian Kelling
|
|
||||||
- Jeff Garzik
|
|
||||||
- Johnathan Corgan
|
|
||||||
- Jonas Schnelli
|
|
||||||
- Josh Lehan
|
|
||||||
- Josh Triplett
|
|
||||||
- Julian Langschaedel
|
|
||||||
- Kangmo
|
|
||||||
- Lake Denman
|
|
||||||
- Luke Dashjr
|
|
||||||
- Mark Friedenbach
|
|
||||||
- Matt Corallo
|
|
||||||
- Michael Bauer
|
|
||||||
- Michael Ford
|
|
||||||
- Michagogo
|
|
||||||
- Midnight Magic
|
|
||||||
- Mike Hearn
|
|
||||||
- Nils Schneider
|
|
||||||
- Noel Tiernan
|
|
||||||
- Olivier Langlois
|
|
||||||
- patrick s
|
|
||||||
- Patrick Strateman
|
|
||||||
- paveljanik
|
|
||||||
- Peter Todd
|
|
||||||
- phantomcircuit
|
|
||||||
- phelixbtc
|
|
||||||
- Philip Kaufmann
|
|
||||||
- Pieter Wuille
|
|
||||||
- Rav3nPL
|
|
||||||
- R E Broadley
|
|
||||||
- regergregregerrge
|
|
||||||
- Robert Backhaus
|
|
||||||
- Roman Mindalev
|
|
||||||
- Rune K. Svendsen
|
|
||||||
- Ryan Niebur
|
|
||||||
- Scott Ellis
|
|
||||||
- Scott Willeke
|
|
||||||
- Sergey Kazenyuk
|
|
||||||
- Shawn Wilkinson
|
|
||||||
- Sined
|
|
||||||
- sje
|
|
||||||
- Subo1978
|
|
||||||
- super3
|
|
||||||
- Tamas Blummer
|
|
||||||
- theuni
|
|
||||||
- Thomas Holenstein
|
|
||||||
- Timon Rapp
|
|
||||||
- Timothy Stranex
|
|
||||||
- Tom Geller
|
|
||||||
- Torstein Husebø
|
|
||||||
- Vaclav Vobornik
|
|
||||||
- vhf / victor felder
|
|
||||||
- Vinnie Falco
|
|
||||||
- Warren Togami
|
|
||||||
- Wil Bown
|
|
||||||
- Wladimir J. van der Laan
|
|
@ -62,7 +62,7 @@ void ProcessMessageMasternode(CNode* pfrom, std::string& strCommand, CDataStream
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool isLocal = addr.IsRFC1918();
|
bool isLocal = addr.IsRFC1918() || addr.IsLocal();
|
||||||
std::string vchPubKey(pubkey.begin(), pubkey.end());
|
std::string vchPubKey(pubkey.begin(), pubkey.end());
|
||||||
std::string vchPubKey2(pubkey2.begin(), pubkey2.end());
|
std::string vchPubKey2(pubkey2.begin(), pubkey2.end());
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user