<!-- This issue tracker is only for technical issues related to Litecoin Core.
<!-- This issue tracker is only for technical issues related to Kevacoin Core.
General litecoin questions and/or support requests and are best directed to the [litecointalk.io forums](https://litecointalk.io/).
General kevacoin questions and/or support requests and are best directed to the [litecointalk.io forums](https://litecointalk.io/).
For reporting security issues, please contact the Litecoin developers on the #litecoin-dev Freenode IRC channel or alternatively you can email us at contact@litecoin.org.
For reporting security issues, please contact the Kevacoin developers on the #kevacoin-dev Freenode IRC channel or alternatively you can email us at contact@kevacoin.org.
If the node is "stuck" during sync or giving "block checksum mismatch" errors, please ensure your hardware is stable by running memtest and observe CPU temperature with a load-test tool such as linpack before creating an issue! -->
If the node is "stuck" during sync or giving "block checksum mismatch" errors, please ensure your hardware is stable by running memtest and observe CPU temperature with a load-test tool such as linpack before creating an issue! -->
@ -13,7 +13,7 @@ If the node is "stuck" during sync or giving "block checksum mismatch" errors, p
<!--- How reliably can you reproduce the issue, what are the steps to do so? -->
<!--- How reliably can you reproduce the issue, what are the steps to do so? -->
<!-- What version of Litecoin Core are you using, where did you get it (website, self-compiled, etc)? -->
<!-- What version of Kevacoin Core are you using, where did you get it (website, self-compiled, etc)? -->
<!-- What type of machine are you observing the error on (OS/CPU and disk type)? -->
<!-- What type of machine are you observing the error on (OS/CPU and disk type)? -->
# Start xvfb if needed, as documented at https://docs.travis-ci.com/user/gui-and-headless-browsers/#Using-xvfb-to-Run-Tests-That-Require-a-GUI
# Start xvfb if needed, as documented at https://docs.travis-ci.com/user/gui-and-headless-browsers/#Using-xvfb-to-Run-Tests-That-Require-a-GUI
- if [ "$NEED_XVFB" = 1 ]; then export DISPLAY=:99.0; /sbin/start-stop-daemon --start --pidfile /tmp/custom_xvfb_99.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :99 -ac; fi
- if [ "$NEED_XVFB" = 1 ]; then export DISPLAY=:99.0; /sbin/start-stop-daemon --start --pidfile /tmp/custom_xvfb_99.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :99 -ac; fi
script:
script:
- if [ "$CHECK_DOC" = 1 -a "$TRAVIS_REPO_SLUG" = "litecoin-project/litecoin" -a "$TRAVIS_PULL_REQUEST" = "false" ]; then while read LINE; do travis_retry gpg --keyserver hkp://subset.pool.sks-keyservers.net --recv-keys $LINE; done < contrib/verify-commits/trusted-keys; fi
- if [ "$CHECK_DOC" = 1 -a "$TRAVIS_REPO_SLUG" = "kevacoin-project/kevacoin" -a "$TRAVIS_PULL_REQUEST" = "false" ]; then while read LINE; do travis_retry gpg --keyserver hkp://subset.pool.sks-keyservers.net --recv-keys $LINE; done < contrib/verify-commits/trusted-keys; fi
- if [ "$CHECK_DOC" = 1 -a "$TRAVIS_REPO_SLUG" = "litecoin-project/litecoin" -a "$TRAVIS_PULL_REQUEST" = "false" ]; then contrib/verify-commits/verify-commits.sh; fi
- if [ "$CHECK_DOC" = 1 -a "$TRAVIS_REPO_SLUG" = "kevacoin-project/kevacoin" -a "$TRAVIS_PULL_REQUEST" = "false" ]; then contrib/verify-commits/verify-commits.sh; fi
Kevacoin is a decentralized open source key-value data store based on the Litecoin (which is in turn based on Bitcoin) cryptocurrency. Kevacoin is largely influenced by Namecoin [https://namecoin.org](https://namecoin.org), even though it serves very different purposes and works very differently.
Kevacoin is a decentralized open source key-value data store based on the Kevacoin (which is in turn based on Bitcoin) cryptocurrency. Kevacoin is largely influenced by Namecoin [https://namecoin.org](https://namecoin.org), even though it serves very different purposes and works very differently.
What does it do?
What does it do?
----------------
----------------
@ -19,7 +19,7 @@ What does it do?
What can it be used for?
What can it be used for?
------------------------
------------------------
As a decentralized key-value database, it can be used to store data for all kinds of applications, such as social media, microblogging, public identity information, notary service. Kevacoin has limited support for smart contracts (similar to Bitcoin and Litecoin), but one can still develop decentralized apps (dApps) on Kevacoin. The data is decentralized while the application logic is developed off the blockchain.
As a decentralized key-value database, it can be used to store data for all kinds of applications, such as social media, microblogging, public identity information, notary service. Kevacoin has limited support for smart contracts (similar to Bitcoin and Kevacoin), but one can still develop decentralized apps (dApps) on Kevacoin. The data is decentralized while the application logic is developed off the blockchain.
For more information, as well as an immediately useable, binary version of
For more information, as well as an immediately useable, binary version of
the Kevacoin Core software, see [https://kevacoin.org](https://kevacoin.org).
the Kevacoin Core software, see [https://kevacoin.org](https://kevacoin.org).
@ -41,7 +41,7 @@ Development Process
-------------------
-------------------
The `master` branch is regularly built and tested, but is not guaranteed to be
The `master` branch is regularly built and tested, but is not guaranteed to be
completely stable. [Tags](https://github.com/kevacoin-project/litecoin/tags) are created
completely stable. [Tags](https://github.com/kevacoin-project/kevacoin/tags) are created
regularly to indicate new official, stable release versions of Kevacoin Core.
regularly to indicate new official, stable release versions of Kevacoin Core.
The contribution workflow is described in [CONTRIBUTING.md](CONTRIBUTING.md).
The contribution workflow is described in [CONTRIBUTING.md](CONTRIBUTING.md).
@ -13,7 +13,7 @@ Construct a linear, no-fork, best version of the blockchain.
### [Qos](/contrib/qos) ###
### [Qos](/contrib/qos) ###
A Linux bash script that will set up traffic control (tc) to limit the outgoing bandwidth for connections to the Litecoin network. This means one can have an always-on litecoind instance running, and another local litecoind/litecoin-qt instance which connects to this node and receives blocks from it.
A Linux bash script that will set up traffic control (tc) to limit the outgoing bandwidth for connections to the Kevacoin network. This means one can have an always-on kevacoind instance running, and another local kevacoind/kevacoin-qt instance which connects to this node and receives blocks from it.
### [Seeds](/contrib/seeds) ###
### [Seeds](/contrib/seeds) ###
Utility to generate the pnSeed[] array that is compiled into the client.
Utility to generate the pnSeed[] array that is compiled into the client.
@ -22,14 +22,14 @@ Build Tools and Keys
---------------------
---------------------
### [Debian](/contrib/debian) ###
### [Debian](/contrib/debian) ###
Contains files used to package litecoind/litecoin-qt
Contains files used to package kevacoind/kevacoin-qt
for Debian-based Linux systems. If you compile litecoind/litecoin-qt yourself, there are some useful files here.
for Debian-based Linux systems. If you compile kevacoind/kevacoin-qt yourself, there are some useful files here.
Files used during the gitian build process. For more information about gitian, see the [the Bitcoin Core documentation repository](https://github.com/bitcoin-core/docs).
Files used during the gitian build process. For more information about gitian, see the [the Bitcoin Core documentation repository](https://github.com/bitcoin-core/docs).
### [Gitian-keys](/contrib/gitian-keys)
### [Gitian-keys](/contrib/gitian-keys)
PGP keys used for signing Litecoin Core [Gitian release](/doc/release-process.md) results.
PGP keys used for signing Kevacoin Core [Gitian release](/doc/release-process.md) results.
### [MacDeploy](/contrib/macdeploy) ###
### [MacDeploy](/contrib/macdeploy) ###
Scripts and notes for Mac builds.
Scripts and notes for Mac builds.
@ -44,7 +44,7 @@ Test and Verify Tools
---------------------
---------------------
### [TestGen](/contrib/testgen) ###
### [TestGen](/contrib/testgen) ###
Utilities to generate test vectors for the data-driven Litecoin tests.
Utilities to generate test vectors for the data-driven Kevacoin tests.
This is a Linux bash script that will set up tc to limit the outgoing bandwidth for connections to the Litecoin network. It limits outbound TCP traffic with a source or destination port of 9333, but not if the destination IP is within a LAN (defined as 192.168.x.x).
This is a Linux bash script that will set up tc to limit the outgoing bandwidth for connections to the Kevacoin network. It limits outbound TCP traffic with a source or destination port of 9333, but not if the destination IP is within a LAN (defined as 192.168.x.x).
This means one can have an always-on litecoind instance running, and another local litecoind/litecoin-qt instance which connects to this node and receives blocks from it.
This means one can have an always-on kevacoind instance running, and another local kevacoind/kevacoin-qt instance which connects to this node and receives blocks from it.
@ -92,6 +92,6 @@ build process to remain somewhat deterministic. Here's how it works:
that have been previously (deterministically) built in order to create a
that have been previously (deterministically) built in order to create a
final dmg.
final dmg.
- The Apple keyholder uses this unsigned app to create a detached signature,
- The Apple keyholder uses this unsigned app to create a detached signature,
using the script that is also included there. Detached signatures are available from this [repository](https://github.com/litecoin-project/litecoin-detached-sigs).
using the script that is also included there. Detached signatures are available from this [repository](https://github.com/kevacoin-project/kevacoin-detached-sigs).
- Builders feed the unsigned app + detached signature back into Gitian. It
- Builders feed the unsigned app + detached signature back into Gitian. It
uses the pre-built tools to recombine the pieces into a deterministic dmg.
uses the pre-built tools to recombine the pieces into a deterministic dmg.
@ -100,4 +100,4 @@ Only supports JSON as output format.
Risks
Risks
-------------
-------------
Running a web browser on the same node with a REST enabled litecoind can be a risk. Accessing prepared XSS websites could read out tx/block data of your node by placing links like `<script src="http://127.0.0.1:9332/rest/tx/1234567890.json">` which might break the nodes privacy.
Running a web browser on the same node with a REST enabled kevacoind can be a risk. Accessing prepared XSS websites could read out tx/block data of your node by placing links like `<script src="http://127.0.0.1:9332/rest/tx/1234567890.json">` which might break the nodes privacy.
If you are running an older version, shut it down. Wait until it has completely
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), then run the
shut down (which might take a few minutes for older versions), then run the
installer (on Windows) or just copy over /Applications/Litecoin-Qt (on Mac) or
installer (on Windows) or just copy over /Applications/Kevacoin-Qt (on Mac) or
litecoind/litecoin-qt (on Linux).
kevacoind/kevacoin-qt (on Linux).
Downgrade warning
Downgrade warning
------------------
------------------
Because release 0.10+ and later makes use of headers-first synchronization and
Because release 0.10+ and later makes use of headers-first synchronization and
parallel block download (see further), the block files and databases are not
parallel block download (see further), the block files and databases are not
backwards-compatible with pre-0.10 versions of Litecoin Core or other software:
backwards-compatible with pre-0.10 versions of Kevacoin Core or other software:
* Blocks will be stored on disk out of order (in the order they are
* Blocks will be stored on disk out of order (in the order they are
received, really), which makes it incompatible with some tools or
received, really), which makes it incompatible with some tools or
@ -44,14 +44,14 @@ supported and may break as soon as the older version attempts to reindex.
This does not affect wallet forward or backward compatibility.
This does not affect wallet forward or backward compatibility.
Litecoin 0.10.2.2 Change log
Kevacoin 0.10.2.2 Change log
============================
============================
This release is based upon Bitcoin Core v0.10.2. Their upstream changelog applies to us and
This release is based upon Bitcoin Core v0.10.2. Their upstream changelog applies to us and
is included in as separate release-notes. This section describes the Litecoin-specific differences.
is included in as separate release-notes. This section describes the Kevacoin-specific differences.
Protocol:
Protocol:
- Scrypt Proof-of-Work instead of sha256d, however block hashes are sha256d for performance reasons.
- Scrypt Proof-of-Work instead of sha256d, however block hashes are sha256d for performance reasons.
- Litecoin TCP port 9333 (instead of 8333)
- Kevacoin TCP port 9333 (instead of 8333)
- RPC TCP port 9332 (instead of 8332)
- RPC TCP port 9332 (instead of 8332)
- Testnet TCP port 19333 (instead of 18333)
- Testnet TCP port 19333 (instead of 18333)
- Testnet RPC TCP port 19332 (instead of 18332)
- Testnet RPC TCP port 19332 (instead of 18332)
@ -62,22 +62,22 @@ Protocol:
- bnProofOfWorkLimit = >> 20 (instead of >> 32)
- bnProofOfWorkLimit = >> 20 (instead of >> 32)
- See 9a980612005adffdeb2a17ca7a09fe126dd45e0e for Genesis Parameters
- See 9a980612005adffdeb2a17ca7a09fe126dd45e0e for Genesis Parameters
- zeitgeist2 protection: b1b31d15cc720a1c186431b21ecc9d1a9062bcb6 Slightly different way to calculate difficulty changes.
- zeitgeist2 protection: b1b31d15cc720a1c186431b21ecc9d1a9062bcb6 Slightly different way to calculate difficulty changes.
- Litecoin Core v0.10.2.2 is protocol version 70003 (instead of 70002)
- Kevacoin Core v0.10.2.2 is protocol version 70003 (instead of 70002)
Relay:
Relay:
- Litecoin Core rounds transaction size up to the nearest 1000 bytes before calculating fees. This size rounding behavior is to mimic fee calculation of Litecoin v0.6 and v0.8.
- Kevacoin Core rounds transaction size up to the nearest 1000 bytes before calculating fees. This size rounding behavior is to mimic fee calculation of Kevacoin v0.6 and v0.8.
- Bitcoin's IsDust() is disabled in favor of Litecoin's fee-based dust penalty.
- Bitcoin's IsDust() is disabled in favor of Kevacoin's fee-based dust penalty.
- Fee-based Dust Penalty: For each transaction output smaller than DUST_THRESHOLD (currently 0.001 LTC) the default relay/mining policy will expect an additional 1000 bytes of fee. Otherwise the transaction will be rejected from relay/mining. Such transactions are also disqualified from the free/high-priority transaction rule.
- Fee-based Dust Penalty: For each transaction output smaller than DUST_THRESHOLD (currently 0.001 LTC) the default relay/mining policy will expect an additional 1000 bytes of fee. Otherwise the transaction will be rejected from relay/mining. Such transactions are also disqualified from the free/high-priority transaction rule.
- Miners and relays can adjust the expected fee per-KB with the -minrelaytxfee parameter.
- Miners and relays can adjust the expected fee per-KB with the -minrelaytxfee parameter.
Wallet:
Wallet:
- Coins smaller than 0.00001 LTC are by default ignored by the wallet. Use the -mininput parameter if you want to see smaller coins.
- Coins smaller than 0.00001 LTC are by default ignored by the wallet. Use the -mininput parameter if you want to see smaller coins.
Notable changes since Litecoin v0.8
Notable changes since Kevacoin v0.8
===================================
===================================
- The Block data and indexes of v0.10 are incompatible with v0.8 clients. You can upgrade from v0.8 but you downgrading is not possible. For this reason you may want to make a backup copy of your Data Directory.
- The Block data and indexes of v0.10 are incompatible with v0.8 clients. You can upgrade from v0.8 but you downgrading is not possible. For this reason you may want to make a backup copy of your Data Directory.
- litecoind no longer sends RPC commands. You must use the separate litecoin-cli command line utility.
- kevacoind no longer sends RPC commands. You must use the separate kevacoin-cli command line utility.
Microsoft ended support for Windows XP on [April 8th, 2014](https://www.microsoft.com/en-us/WindowsForBusiness/end-of-xp-support),
Microsoft ended support for Windows XP on [April 8th, 2014](https://www.microsoft.com/en-us/WindowsForBusiness/end-of-xp-support),
an OS initially released in 2001. This means that not even critical security
an OS initially released in 2001. This means that not even critical security
updates will be released anymore. Without security updates, using a litecoin
updates will be released anymore. Without security updates, using a kevacoin
wallet on a XP machine is irresponsible at least.
wallet on a XP machine is irresponsible at least.
In addition to that, with 0.12.x there have been varied reports of Bitcoin Core
In addition to that, with 0.12.x there have been varied reports of Bitcoin Core
@ -41,7 +41,7 @@ Notable changes
New Multisig Address Prefix
New Multisig Address Prefix
---------------------------
---------------------------
Litecoin Core now supports P2SH addresses beginning with M on mainnet and Q on testnet.
Kevacoin Core now supports P2SH addresses beginning with M on mainnet and Q on testnet.
P2SH addresses beginning with 3 on mainnet and m or n on testnet will continue to be valid.
P2SH addresses beginning with 3 on mainnet and m or n on testnet will continue to be valid.
Old and new addresses can be used interchangeably.
Old and new addresses can be used interchangeably.
@ -50,7 +50,7 @@ miniupnp CVE-2017-8798
Bundled miniupnpc was updated to 2.0.20170509. This fixes an integer signedness error (present in MiniUPnPc v1.4.20101221 through v2.0) that allows remote attackers (within the LAN) to cause a denial of service or possibly have unspecified other impact.
Bundled miniupnpc was updated to 2.0.20170509. This fixes an integer signedness error (present in MiniUPnPc v1.4.20101221 through v2.0) that allows remote attackers (within the LAN) to cause a denial of service or possibly have unspecified other impact.
This only affects users that have explicitly enabled UPnP through the GUI setting or through the -upnp option, as since the last UPnP vulnerability (in Litecoin Core 0.10.4) it has been disabled by default.
This only affects users that have explicitly enabled UPnP through the GUI setting or through the -upnp option, as since the last UPnP vulnerability (in Kevacoin Core 0.10.4) it has been disabled by default.
If you use this option, it is recommended to upgrade to this version as soon as possible.
If you use this option, it is recommended to upgrade to this version as soon as possible.
@ -64,7 +64,7 @@ Testnet faucets can be located at:
- http://testnet.litecointools.com
- http://testnet.litecointools.com
- http://testnet.thrasher.io
- http://testnet.thrasher.io
Developers who require the new testnet blockchain paramaters can find them [here](https://github.com/litecoin-project/litecoin/blob/0.13/src/chainparams.cpp#L214).
Developers who require the new testnet blockchain paramaters can find them [here](https://github.com/kevacoin-project/kevacoin/blob/0.13/src/chainparams.cpp#L214).
Litecoin Core is extensively tested on multiple operating systems using
Kevacoin Core is extensively tested on multiple operating systems using
the Linux kernel, macOS 10.8+, and Windows Vista and later.
the Linux kernel, macOS 10.8+, and Windows Vista and later.
Microsoft ended support for Windows XP on [April 8th, 2014](https://www.microsoft.com/en-us/WindowsForBusiness/end-of-xp-support),
Microsoft ended support for Windows XP on [April 8th, 2014](https://www.microsoft.com/en-us/WindowsForBusiness/end-of-xp-support),
@ -24,7 +24,7 @@ No attempt is made to prevent installing or running the software on Windows XP,
can still do so at your own risk but be aware that there are known instabilities and issues.
can still do so at your own risk but be aware that there are known instabilities and issues.
Please do not report issues about Windows XP to the issue tracker.
Please do not report issues about Windows XP to the issue tracker.
Litecoin Core should also work on most other Unix-like systems but is not
Kevacoin Core should also work on most other Unix-like systems but is not
frequently tested on them.
frequently tested on them.
Notable changes
Notable changes
@ -33,7 +33,7 @@ Notable changes
New Multisig Address Prefix
New Multisig Address Prefix
---------------------------
---------------------------
Litecoin Core now supports P2SH addresses beginning with M on mainnet and Q on testnet.
Kevacoin Core now supports P2SH addresses beginning with M on mainnet and Q on testnet.
P2SH addresses beginning with 3 on mainnet and m or n on testnet will continue to be valid.
P2SH addresses beginning with 3 on mainnet and m or n on testnet will continue to be valid.
Old and new addresses can be used interchangeably.
Old and new addresses can be used interchangeably.
@ -42,7 +42,7 @@ miniupnp CVE-2017-8798
Bundled miniupnpc was updated to 2.0.20170509. This fixes an integer signedness error (present in MiniUPnPc v1.4.20101221 through v2.0) that allows remote attackers (within the LAN) to cause a denial of service or possibly have unspecified other impact.
Bundled miniupnpc was updated to 2.0.20170509. This fixes an integer signedness error (present in MiniUPnPc v1.4.20101221 through v2.0) that allows remote attackers (within the LAN) to cause a denial of service or possibly have unspecified other impact.
This only affects users that have explicitly enabled UPnP through the GUI setting or through the -upnp option, as since the last UPnP vulnerability (in Litecoin Core 0.10.4) it has been disabled by default.
This only affects users that have explicitly enabled UPnP through the GUI setting or through the -upnp option, as since the last UPnP vulnerability (in Kevacoin Core 0.10.4) it has been disabled by default.
If you use this option, it is recommended to upgrade to this version as soon as possible.
If you use this option, it is recommended to upgrade to this version as soon as possible.
@ -56,7 +56,7 @@ Testnet faucets can be located at:
- http://testnet.litecointools.com
- http://testnet.litecointools.com
- http://testnet.thrasher.io
- http://testnet.thrasher.io
Developers who require the new testnet blockchain paramaters can find them [here](https://github.com/litecoin-project/litecoin/blob/master/src/chainparams.cpp#L220).
Developers who require the new testnet blockchain paramaters can find them [here](https://github.com/kevacoin-project/kevacoin/blob/master/src/chainparams.cpp#L220).
Performance Improvements
Performance Improvements
--------------
--------------
@ -83,7 +83,7 @@ improved, leading to much shorter sync and initial block download times.
Manual Pruning
Manual Pruning
--------------
--------------
Litecoin Core has supported automatically pruning the blockchain since 0.13.2. Pruning
Kevacoin Core has supported automatically pruning the blockchain since 0.13.2. Pruning
the blockchain allows for significant storage space savings as the vast majority of
the blockchain allows for significant storage space savings as the vast majority of
the downloaded data can be discarded after processing so very little of it remains
the downloaded data can be discarded after processing so very little of it remains
on the disk.
on the disk.
@ -124,7 +124,7 @@ ZMQ On Windows
Previously the ZeroMQ notification system was unavailable on Windows
Previously the ZeroMQ notification system was unavailable on Windows
due to various issues with ZMQ. These have been fixed upstream and
due to various issues with ZMQ. These have been fixed upstream and
now ZMQ can be used on Windows. Please see [this document](https://github.com/litecoin-project/litecoin/blob/master/doc/zmq.md) for
now ZMQ can be used on Windows. Please see [this document](https://github.com/kevacoin-project/kevacoin/blob/master/doc/zmq.md) for
help with using ZMQ in general.
help with using ZMQ in general.
Nested RPC Commands in Debug Console
Nested RPC Commands in Debug Console
@ -157,7 +157,7 @@ the same thing as the GUI icon. The command takes one boolean parameter,
Out-of-sync Modal Info Layer
Out-of-sync Modal Info Layer
----------------------------
----------------------------
When Litecoin Core is out-of-sync on startup, a semi-transparent information
When Kevacoin Core is out-of-sync on startup, a semi-transparent information
layer will be shown over top of the normal display. This layer contains
layer will be shown over top of the normal display. This layer contains
details about the current sync progress and estimates the amount of time
details about the current sync progress and estimates the amount of time
remaining to finish syncing. This layer can also be hidden and subsequently
remaining to finish syncing. This layer can also be hidden and subsequently
@ -166,19 +166,19 @@ unhidden by clicking on the progress bar at the bottom of the window.
Support for JSON-RPC Named Arguments
Support for JSON-RPC Named Arguments
------------------------------------
------------------------------------
Commands sent over the JSON-RPC interface and through the `litecoin-cli` binary
Commands sent over the JSON-RPC interface and through the `kevacoin-cli` binary
can now use named arguments. This follows the [JSON-RPC specification](http://www.jsonrpc.org/specification)
can now use named arguments. This follows the [JSON-RPC specification](http://www.jsonrpc.org/specification)
for passing parameters by-name with an object.
for passing parameters by-name with an object.
`litecoin-cli` has been updated to support this by parsing `name=value` arguments
`kevacoin-cli` has been updated to support this by parsing `name=value` arguments
If you are running an older version, shut it down. Wait until it has completely
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), then run the
shut down (which might take a few minutes for older versions), then run the
installer (on Windows) or just copy over `/Applications/Litecoin-Qt` (on Mac)
installer (on Windows) or just copy over `/Applications/Kevacoin-Qt` (on Mac)
or `litecoind`/`litecoin-qt` (on Linux).
or `kevacoind`/`kevacoin-qt` (on Linux).
The first time you run version 0.15.0, your chainstate database will be converted to a
The first time you run version 0.15.0, your chainstate database will be converted to a
new format, which will take anywhere from a few minutes to half an hour,
new format, which will take anywhere from a few minutes to half an hour,
@ -48,10 +48,10 @@ processing the entire blockchain.
Compatibility
Compatibility
==============
==============
Litecoin Core is extensively tested on multiple operating systems using
Kevacoin Core is extensively tested on multiple operating systems using
the Linux kernel, macOS 10.8+, and Windows Vista and later. Windows XP is not supported.
the Linux kernel, macOS 10.8+, and Windows Vista and later. Windows XP is not supported.
Litecoin Core should also work on most other Unix-like systems but is not
Kevacoin Core should also work on most other Unix-like systems but is not
frequently tested on them.
frequently tested on them.
Notable changes
Notable changes
@ -92,7 +92,7 @@ Initial Block Download, startup, transaction and block validation much faster:
validation. In version 0.15, SHA256 hardware optimization is disabled in release builds by
validation. In version 0.15, SHA256 hardware optimization is disabled in release builds by
default, but can be enabled by using `--enable-experimental-asm` when building.
default, but can be enabled by using `--enable-experimental-asm` when building.
- Refill of the keypool no longer flushes the wallet between each key which resulted in a ~20x speedup in creating a new wallet. Part of this speedup was used to increase the default keypool to 1000 keys to make recovery more robust. (See [PR 10831](https://github.com/bitcoin/bitcoin/pull/10831)).
- Refill of the keypool no longer flushes the wallet between each key which resulted in a ~20x speedup in creating a new wallet. Part of this speedup was used to increase the default keypool to 1000 keys to make recovery more robust. (See [PR 10831](https://github.com/bitcoin/bitcoin/pull/10831)).
- Scrypt hashing has been optimized for architectures supporting SSE 2 (See [PR 362](https://github.com/litecoin-project/litecoin/pull/362)). This boosts scrypt hashing performance by a factor of 2. In version 0.15, scrypt hardware optimization is disabled in release builds by default, but can be enabled by using `--enable-sse2` when building.
- Scrypt hashing has been optimized for architectures supporting SSE 2 (See [PR 362](https://github.com/kevacoin-project/kevacoin/pull/362)). This boosts scrypt hashing performance by a factor of 2. In version 0.15, scrypt hardware optimization is disabled in release builds by default, but can be enabled by using `--enable-sse2` when building.
Fee Estimation Improvements
Fee Estimation Improvements
---------------------------
---------------------------
@ -116,7 +116,7 @@ Fee estimation has been significantly improved in version 0.15, with more accura
- The `nblocks` argument has been renamed to `conf_target` (to be consistent with other RPC methods).
- The `nblocks` argument has been renamed to `conf_target` (to be consistent with other RPC methods).
- An `estimate_mode` argument has been added. This argument takes one of the following strings: `CONSERVATIVE`, `ECONOMICAL` or `UNSET` (which defaults to `CONSERVATIVE`).
- An `estimate_mode` argument has been added. This argument takes one of the following strings: `CONSERVATIVE`, `ECONOMICAL` or `UNSET` (which defaults to `CONSERVATIVE`).
- The RPC return object now contains an `errors` member, which returns errors encountered during processing.
- The RPC return object now contains an `errors` member, which returns errors encountered during processing.
- If Litecoin Core has not been running for long enough and has not seen enough blocks or transactions to produce an accurate fee estimation, an error will be returned (previously a value of -1 was used to indicate an error, which could be confused for a feerate).
- If Kevacoin Core has not been running for long enough and has not seen enough blocks or transactions to produce an accurate fee estimation, an error will be returned (previously a value of -1 was used to indicate an error, which could be confused for a feerate).
- A new `estimaterawfee` RPC is added to provide raw fee data. External clients can query and use this data in their own fee estimation logic.
- A new `estimaterawfee` RPC is added to provide raw fee data. External clients can query and use this data in their own fee estimation logic.
Opt into RBF When Sending
Opt into RBF When Sending
@ -135,17 +135,17 @@ In version 0.15, creating an opt-in RBF transaction and replacing the unconfirme
Multi-wallet support
Multi-wallet support
--------------------
--------------------
Litecoin Core now supports loading multiple, separate wallets (See [PR 8694](https://github.com/bitcoin/bitcoin/pull/8694), [PR 10849](https://github.com/bitcoin/bitcoin/pull/10849)). The wallets are completely separated, with individual balances, keys and received transactions.
Kevacoin Core now supports loading multiple, separate wallets (See [PR 8694](https://github.com/bitcoin/bitcoin/pull/8694), [PR 10849](https://github.com/bitcoin/bitcoin/pull/10849)). The wallets are completely separated, with individual balances, keys and received transactions.
Multi-wallet is enabled by using more than one `-wallet` argument when starting Litecoin, either on the command line or in the Litecoin config file.
Multi-wallet is enabled by using more than one `-wallet` argument when starting Kevacoin, either on the command line or in the Kevacoin config file.
**In Litecoin-Qt, only the first wallet will be displayed and accessible for creating and signing transactions.** GUI selectable multiple wallets will be supported in a future version. However, even in 0.15 other loaded wallets will remain synchronized to the node's current tip in the background. This can be useful if running a pruned node, since loading a wallet where the most recent sync is beyond the pruned height results in having to download and revalidate the whole blockchain. Continuing to synchronize all wallets in the background avoids this problem.
**In Kevacoin-Qt, only the first wallet will be displayed and accessible for creating and signing transactions.** GUI selectable multiple wallets will be supported in a future version. However, even in 0.15 other loaded wallets will remain synchronized to the node's current tip in the background. This can be useful if running a pruned node, since loading a wallet where the most recent sync is beyond the pruned height results in having to download and revalidate the whole blockchain. Continuing to synchronize all wallets in the background avoids this problem.
Litecoin Core 0.15.0 contains the following changes to the RPC interface and `litecoin-cli` for multi-wallet:
Kevacoin Core 0.15.0 contains the following changes to the RPC interface and `kevacoin-cli` for multi-wallet:
* When running Litecoin Core with a single wallet, there are **no** changes to the RPC interface or `litecoin-cli`. All RPC calls and `litecoin-cli` commands continue to work as before.
* When running Kevacoin Core with a single wallet, there are **no** changes to the RPC interface or `kevacoin-cli`. All RPC calls and `kevacoin-cli` commands continue to work as before.
* When running Litecoin Core with multi-wallet, all *node-level* RPC methods continue to work as before. HTTP RPC requests should be send to the normal `<RPC IP address>:<RPC port>/` endpoint, and `litecoin-cli` commands should be run as before. A *node-level* RPC method is any method which does not require access to the wallet.
* When running Kevacoin Core with multi-wallet, all *node-level* RPC methods continue to work as before. HTTP RPC requests should be send to the normal `<RPC IP address>:<RPC port>/` endpoint, and `kevacoin-cli` commands should be run as before. A *node-level* RPC method is any method which does not require access to the wallet.
* When running Litecoin Core with multi-wallet, *wallet-level* RPC methods must specify the wallet for which they're intended in every request. HTTP RPC requests should be send to the `<RPC IP address>:<RPC port>/wallet/<wallet name>/` endpoint, for example `127.0.0.1:9332/wallet/wallet1.dat/`. `litecoin-cli` commands should be run with a `-rpcwallet` option, for example `litecoin-cli -rpcwallet=wallet1.dat getbalance`.
* When running Kevacoin Core with multi-wallet, *wallet-level* RPC methods must specify the wallet for which they're intended in every request. HTTP RPC requests should be send to the `<RPC IP address>:<RPC port>/wallet/<wallet name>/` endpoint, for example `127.0.0.1:9332/wallet/wallet1.dat/`. `kevacoin-cli` commands should be run with a `-rpcwallet` option, for example `kevacoin-cli -rpcwallet=wallet1.dat getbalance`.
* A new *node-level*`listwallets` RPC method is added to display which wallets are currently loaded. The names returned by this method are the same as those used in the HTTP endpoint and for the `rpcwallet` argument.
* A new *node-level*`listwallets` RPC method is added to display which wallets are currently loaded. The names returned by this method are the same as those used in the HTTP endpoint and for the `rpcwallet` argument.
Note that while multi-wallet is now fully supported, the RPC multi-wallet interface should be considered unstable for version 0.15.0, and there may backwards-incompatible changes in future versions.
Note that while multi-wallet is now fully supported, the RPC multi-wallet interface should be considered unstable for version 0.15.0, and there may backwards-incompatible changes in future versions.
@ -153,7 +153,7 @@ Note that while multi-wallet is now fully supported, the RPC multi-wallet interf
Removal of Coin Age Priority
Removal of Coin Age Priority
----------------------------
----------------------------
In previous versions of Litecoin Core, a portion of each block could be reserved for transactions based on the age and value of UTXOs they spent. This concept (Coin Age Priority) is a policy choice by miners, and there are no consensus rules around the inclusion of Coin Age Priority transactions in blocks. In practice, only a few miners continue to use Coin Age Priority for transaction selection in blocks. Litecoin Core 0.15 removes all remaining support for Coin Age Priority (See [PR 9602](https://github.com/bitcoin/bitcoin/pull/9602)). This has the following implications:
In previous versions of Kevacoin Core, a portion of each block could be reserved for transactions based on the age and value of UTXOs they spent. This concept (Coin Age Priority) is a policy choice by miners, and there are no consensus rules around the inclusion of Coin Age Priority transactions in blocks. In practice, only a few miners continue to use Coin Age Priority for transaction selection in blocks. Kevacoin Core 0.15 removes all remaining support for Coin Age Priority (See [PR 9602](https://github.com/bitcoin/bitcoin/pull/9602)). This has the following implications:
- The concept of *free transactions* has been removed. High Coin Age Priority transactions would previously be allowed to be relayed even if they didn't attach a miner fee. This is no longer possible since there is no concept of Coin Age Priority. The `-limitfreerelay` and `-relaypriority` options which controlled relay of free transactions have therefore been removed.
- The concept of *free transactions* has been removed. High Coin Age Priority transactions would previously be allowed to be relayed even if they didn't attach a miner fee. This is no longer possible since there is no concept of Coin Age Priority. The `-limitfreerelay` and `-relaypriority` options which controlled relay of free transactions have therefore been removed.
- The `-sendfreetransactions` option has been removed, since almost all miners do not include transactions which do not attach a transaction fee.
- The `-sendfreetransactions` option has been removed, since almost all miners do not include transactions which do not attach a transaction fee.
@ -186,7 +186,7 @@ Version 0.15 introduces several new RPC methods:
Low-level RPC changes
Low-level RPC changes
---------------------
---------------------
- When using Litecoin Core in multi-wallet mode, RPC requests for wallet methods must specify
- When using Kevacoin Core in multi-wallet mode, RPC requests for wallet methods must specify
the wallet that they're intended for. See [Multi-wallet support](#multi-wallet-support) for full details.
the wallet that they're intended for. See [Multi-wallet support](#multi-wallet-support) for full details.
- The new database model no longer stores information about transaction
- The new database model no longer stores information about transaction
* Update translations (ping wumpus on IRC) see [translation_process.md](https://github.com/bitcoin/bitcoin/blob/master/doc/translation_process.md#synchronising-translations).
* Update translations (ping wumpus on IRC) see [translation_process.md](https://github.com/bitcoin/bitcoin/blob/master/doc/translation_process.md#synchronising-translations).
* Update manpages, see [gen-manpages.sh](https://github.com/litecoin-project/litecoin/blob/master/contrib/devtools/README.md#gen-manpagessh).
* Update manpages, see [gen-manpages.sh](https://github.com/kevacoin-project/kevacoin/blob/master/contrib/devtools/README.md#gen-manpagessh).
Before every minor and major release:
Before every minor and major release:
@ -33,12 +33,12 @@ If you're using the automated script (found in [contrib/gitian-build.sh](/contri
Check out the source code in the following directory hierarchy.
Check out the source code in the following directory hierarchy.
2. linux 32-bit and 64-bit dist tarballs (`litecoin-${VERSION}-linux[32|64].tar.gz`)
2. linux 32-bit and 64-bit dist tarballs (`kevacoin-${VERSION}-linux[32|64].tar.gz`)
3. windows 32-bit and 64-bit unsigned installers and dist zips (`litecoin-${VERSION}-win[32|64]-setup-unsigned.exe`, `litecoin-${VERSION}-win[32|64].zip`)
3. windows 32-bit and 64-bit unsigned installers and dist zips (`kevacoin-${VERSION}-win[32|64]-setup-unsigned.exe`, `kevacoin-${VERSION}-win[32|64].zip`)
4. OS X unsigned installer and dist tarball (`litecoin-${VERSION}-osx-unsigned.dmg`, `litecoin-${VERSION}-osx64.tar.gz`)
4. OS X unsigned installer and dist tarball (`kevacoin-${VERSION}-osx-unsigned.dmg`, `kevacoin-${VERSION}-osx64.tar.gz`)
5. Gitian signatures (in `gitian.sigs.ltc/${VERSION}-<linux|{win,osx}-unsigned>/(your Gitian key)/`)
5. Gitian signatures (in `gitian.sigs.ltc/${VERSION}-<linux|{win,osx}-unsigned>/(your Gitian key)/`)
### Verify other gitian builders signatures to your own. (Optional)
### Verify other gitian builders signatures to your own. (Optional)
Add other gitian builders keys to your gpg keyring, and/or refresh keys.
Add other gitian builders keys to your gpg keyring, and/or refresh keys.
Non-codesigners: wait for Windows/OS X detached signatures:
Non-codesigners: wait for Windows/OS X detached signatures:
- Once the Windows/OS X builds each have 3 matching signatures, they will be signed with their respective release keys.
- Once the Windows/OS X builds each have 3 matching signatures, they will be signed with their respective release keys.
- Detached signatures will then be committed to the [litecoin-detached-sigs](https://github.com/litecoin-project/litecoin-detached-sigs) repository, which can be combined with the unsigned apps to create signed binaries.
- Detached signatures will then be committed to the [kevacoin-detached-sigs](https://github.com/kevacoin-project/kevacoin-detached-sigs) repository, which can be combined with the unsigned apps to create signed binaries.
Create (and optionally verify) the signed OS X binary:
Create (and optionally verify) the signed OS X binary:
It is possible to run Litecoin as a Tor hidden service, and connect to such services.
It is possible to run Kevacoin as a Tor hidden service, and connect to such services.
The following directions assume you have a Tor proxy running on port 9050. Many distributions default to having a SOCKS proxy listening on port 9050, but others may not. In particular, the Tor Browser Bundle defaults to listening on port 9150. See [Tor Project FAQ:TBBSocksPort](https://www.torproject.org/docs/faq.html.en#TBBSocksPort) for how to properly
The following directions assume you have a Tor proxy running on port 9050. Many distributions default to having a SOCKS proxy listening on port 9050, but others may not. In particular, the Tor Browser Bundle defaults to listening on port 9150. See [Tor Project FAQ:TBBSocksPort](https://www.torproject.org/docs/faq.html.en#TBBSocksPort) for how to properly
configure Tor.
configure Tor.
1. Run litecoin behind a Tor proxy
1. Run kevacoin behind a Tor proxy
---------------------------------
---------------------------------
The first step is running Litecoin behind a Tor proxy. This will already make all
The first step is running Kevacoin behind a Tor proxy. This will already make all
outgoing connections be anonymized, but more is possible.
outgoing connections be anonymized, but more is possible.
-proxy=ip:port Set the proxy server. If SOCKS5 is selected (default), this proxy
-proxy=ip:port Set the proxy server. If SOCKS5 is selected (default), this proxy
@ -31,27 +31,27 @@ outgoing connections be anonymized, but more is possible.
In a typical situation, this suffices to run behind a Tor proxy:
In a typical situation, this suffices to run behind a Tor proxy:
./litecoin -proxy=127.0.0.1:9050
./kevacoin -proxy=127.0.0.1:9050
2. Run a litecoin hidden server
2. Run a kevacoin hidden server
------------------------------
------------------------------
If you configure your Tor system accordingly, it is possible to make your node also
If you configure your Tor system accordingly, it is possible to make your node also
reachable from the Tor network. Add these lines to your /etc/tor/torrc (or equivalent
reachable from the Tor network. Add these lines to your /etc/tor/torrc (or equivalent
config file):
config file):
HiddenServiceDir /var/lib/tor/litecoin-service/
HiddenServiceDir /var/lib/tor/kevacoin-service/
HiddenServicePort 9333 127.0.0.1:9333
HiddenServicePort 9333 127.0.0.1:9333
HiddenServicePort 19335 127.0.0.1:19335
HiddenServicePort 19335 127.0.0.1:19335
The directory can be different of course, but (both) port numbers should be equal to
The directory can be different of course, but (both) port numbers should be equal to
your litecoind's P2P listen port (9333 by default).
your kevacoind's P2P listen port (9333 by default).
-externalip=X You can tell litecoin about its publicly reachable address using
-externalip=X You can tell kevacoin about its publicly reachable address using
this option, and this can be a .onion address. Given the above
this option, and this can be a .onion address. Given the above
configuration, you can find your onion address in
configuration, you can find your onion address in
/var/lib/tor/litecoin-service/hostname. Onion addresses are given
/var/lib/tor/kevacoin-service/hostname. Onion addresses are given
preference for your node to advertise itself with, for connections
preference for your node to advertise itself with, for connections
coming from unroutable addresses (such as 127.0.0.1, where the
coming from unroutable addresses (such as 127.0.0.1, where the
Tor proxy typically runs).
Tor proxy typically runs).
@ -68,49 +68,49 @@ your litecoind's P2P listen port (9333 by default).
In a typical situation, where you're only reachable via Tor, this should suffice:
In a typical situation, where you're only reachable via Tor, this should suffice:
self.assert_start_raises_init_error(0,['-conf='+conf_file],'Error reading configuration file: specified data directory "'+new_data_dir+'" does not exist.')
self.assert_start_raises_init_error(0,['-conf='+conf_file],'Error reading configuration file: specified data directory "'+new_data_dir+'" does not exist.')
print("%sWARNING!%s There is already a litecoind process running on this system. Tests may fail unexpectedly due to resource contention!"%(BOLD[1],BOLD[0]))
print("%sWARNING!%s There is already a kevacoind process running on this system. Tests may fail unexpectedly due to resource contention!"%(BOLD[1],BOLD[0]))