GoldCoin Talk

Main Category => Project Development => Topic started by: Stouse49 on February 02, 2018, 11:27:21 PM

Title: GoldCoin TestNet Round #2 for the New Client
Post by: Stouse49 on February 02, 2018, 11:27:21 PM
There are two versions to use in the testnet.

Install the software
The install packages are zip files.  They contain the programs and folders that will be used for the blockchain.  It doesn't interfere with other wallets on your system.  Unzip these folders where you want and run the "1. start-client" command.  Other commands such as mining may be present in the packages.   If you delete the package after unzipping and running the client, you will loose your wallet.

Windows
old - https://github.com/Stouse49/goldcoin/releases/download/vv0.7.5.0-testnet/Windows.GoldCoin.0.7.5.TestNet.zip
new - https://github.com/Stouse49/Goldcoin-GLD/releases/download/v0.14.2.1-testnet-march/Windows.GoldCoin.Core.0.14.2.1.TestNet-march.zip

Mac
old - https://github.com/Stouse49/goldcoin/releases/download/vv0.7.5.0-testnet/Mac.GoldCoin.0.7.5.TestNet.zip (may not connect)
new -

Linux

Mining
Information to be added later.

Super Users (Exchanges, Mining Pools, etc)

Source Code:
old:  https://github.com/Stouse49/goldcoin [branch = testnet]
Build instructions: https://www.goldcointalk.org/index.php?topic=3764.msg18102#msg18102

new:  https://github.com/Stouse49/Goldcoin-GLD [branch = testnet]
Build instructions:  https://github.com/goldcoin/Goldcoin-GLD/tree/goldcoin-master/doc

Mining
old - solo - https://github.com/pooler/cpuminer,
Code: [Select]
$ minerd -o 127.0.0.1:<rpc port, default=18121> -u <user> -p <password> -t <threads, such as 2>new - Solo - https://github.com/mikeghen/litecoin-solo-mining-tutorial

server.js - example
Code: [Select]
var myCoin = {
    "name": "Goldcoin",
    "symbol": "GLD",
    "algorithm": "scrypt",
     "peerMagic": "fdc2b4dd",
     "peerMagicTestnet": "fcc5b4dd"
};

var Stratum = require('stratum-pool');

var pool = Stratum.createPool({

    "coin": myCoin,

    "auxes": [],

    "address": "n33ZW9SXvtCXRvsP7gjQqYFaEwxwpXoWpC", //Address to where block rewards are given

    /* Block rewards go to the configured pool wallet address to later be paid out to miners,
       except for a percentage that can go to, for examples, pool operator(s) as pool fees or
       or to donations address. Addresses or hashed public keys can be used. Here is an example
       of rewards going to the main pool op, a pool co-owner, and NOMP donation. */
    // "rewardRecipients": {
    //     "n37vuNFkXfk15uFnGoVyHZ6PYQxppD3QqK": 1.5, //1.5% goes to pool op
    //     "mirj3LtZxbSTharhtXvotqtJXUY7ki5qfx": 0.5, //0.5% goes to a pool co-owner
    // },

    "blockRefreshInterval": 1000, //How often to poll RPC daemons for new blocks, in milliseconds


    /* Some miner apps will consider the pool dead/offline if it doesn't receive anything new jobs
       for around a minute, so every time we broadcast jobs, set a timeout to rebroadcast
       in this many seconds unless we find a new job. Set to zero or remove to disable this. */
    "jobRebroadcastTimeout": 55,

    /* Some attackers will create thousands of workers that use up all available socket connections,
       usually the workers are zombies and don't submit shares after connecting. This features
       detects those and disconnects them. */
    "connectionTimeout": 1200, //Remove workers that haven't been in contact for this many seconds

    /* Sometimes you want the block hashes even for shares that aren't block candidates. */
    "emitInvalidBlockHashes": false,

    /* Enable for client IP addresses to be detected when using a load balancer with TCP proxy
       protocol enabled, such as HAProxy with 'send-proxy' param:
       http://haproxy.1wt.eu/download/1.5/doc/configuration.txt */
    "tcpProxyProtocol": false,

    /* If a worker is submitting a high threshold of invalid shares we can temporarily ban their IP
       to reduce system/network load. Also useful to fight against flooding attacks. If running
       behind something like HAProxy be sure to enable 'tcpProxyProtocol', otherwise you'll end up
       banning your own IP address (and therefore all workers). */
    "banning": {
        "enabled": true,
        "time": 600, //How many seconds to ban worker for
        "invalidPercent": 50, //What percent of invalid shares triggers ban
        "checkThreshold": 500, //Check invalid percent when this many shares have been submitted
        "purgeInterval": 300 //Every this many seconds clear out the list of old bans
    },

    /* Each pool can have as many ports for your miners to connect to as you wish. Each port can
       be configured to use its own pool difficulty and variable difficulty settings. varDiff is
       optional and will only be used for the ports you configure it for. */
    "ports": {
        "3333": { //A port for your miners to connect to
            "diff": 32, //the pool difficulty for this port

            /* Variable difficulty is a feature that will automatically adjust difficulty for
               individual miners based on their hashrate in order to lower networking overhead */
            "varDiff": {
                "minDiff": 8, //Minimum difficulty
                "maxDiff": 512, //Network difficulty will be used if it is lower than this
                "targetTime": 15, //Try to get 1 share per this many seconds
                "retargetTime": 90, //Check to see if we should retarget every this many seconds
                "variancePercent": 30 //Allow time to very this % from target without retargeting
            }
        },
        "3256": { //Another port for your miners to connect to, this port does not use varDiff
            "diff": 256 //The pool difficulty
        }
    },

    /* Recommended to have at least two daemon instances running in case one drops out-of-sync
       or offline. For redundancy, all instances will be polled for block/transaction updates
       and be used for submitting blocks. Creating a backup daemon involves spawning a daemon
       using the "-datadir=/backup" argument which creates a new daemon instance with it's own
       RPC config. For more info on this see:
          - https://en.bitcoin.it/wiki/Data_directory
          - https://en.bitcoin.it/wiki/Running_bitcoind */
    "daemons": [
        {   //Main daemon instance
            "host": "127.0.0.1",
            "port": 19332,
            "user": "Stouse49",
            "password": "x"
        }
        // {   //Backup daemon instance
        //     "host": "127.0.0.1",
        //     "port": 19344,
        //     "user": "litecoinrpc",
        //     "password": "testnet"
        // }
    ],


    /* This allows the pool to connect to the daemon as a node peer to receive block updates.
       It may be the most efficient way to get block updates (faster than polling, less
       intensive than blocknotify script). It requires the additional field "peerMagic" in
       the coin config. */
    "p2p": {
        "enabled": false,

        /* Host for daemon */
        "host": "127.0.0.1",

        /* Port configured for daemon (this is the actual peer port not RPC port) */
        "port": 18121,

        /* If your coin daemon is new enough (i.e. not a [beep]coin) then it will support a p2p
           feature that prevents the daemon from spamming our peer node with unnecessary
           transaction data. Assume its supported but if you have problems try disabling it. */
        "disableTransactions": true

    }

}, function(ip, port , workerName, password, callback){ //stratum authorization function
    console.log("Authorize " + workerName + ":" + password + "@" + ip);
    callback({
        error: null,
        authorized: true,
        disconnect: false
    });
});

pool.on('share', function(isValidShare, isValidBlock, data){

    if (isValidBlock)
        console.log('Block found');
    else if (isValidShare)
        console.log('Valid share submitted');
    else if (data.blockHash)
        console.log('We thought a block was found but it was rejected by the daemon');
    else
        console.log('Invalid share submitted')

    console.log('share data: ' + JSON.stringify(data));
});

pool.on('log', function(severity, logKey, logText){
    console.log(severity + ': ' + '[' + logKey + '] ' + logText);
});

console.log("Starting Pool")
pool.start();
console.log("Pool started", pool)
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: Stouse49 on February 03, 2018, 08:25:51 PM
Please Join In on the TestNet part 2.  This test should last about 1 week, unless we find some serious bugs!

My new address:  mn1fqhdZYVhCrwTyJj5sRp8bwEXgFyjF3P
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: fwhite on February 04, 2018, 08:29:00 AM
ok new client running
my testnet address; mr3maCb6SsBRLWh8kxoPteFukL3h9zo2j7
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: TestingCrypto on February 04, 2018, 11:11:56 PM

v0.14.2.1-cfc63da
C:\Users\DLL\AppData\Roaming\Goldcoin\testnet4
Sun Feb 4 22:06:47 2018

{
  "version": 140201,
  "protocolversion": 70015,
  "walletversion": 130000,
  "balance": 0.00000000,
  "blocks": 2202,
  "timeoffset": 0,
  "connections": 4,
  "proxy": "",
  "difficulty": 0.0005285899106958497,
  "testnet": true,
  "keypoololdest": 1517803286,
  "keypoolsize": 100,
  "paytxfee": 0.00000000,
  "relayfee": 0.00100000,
  "errors": "This is a pre-release test build - use at your own risk - do not use for mining or merchant applications"
}

n4KmFYsyvHLZA9TMxJGuiPj3yaCVr2Thyy
n1eAMP1SAbvkmKCPgwGq4PBvadovQXwiPB

Status: 4/unconfirmed
Date: 2/4/2018 23:09
Source: Generated
Credit: 5.00000000 GLD (matures in 97 more blocks)
Net amount: 0.00000000 GLD
Transaction ID: 6f75f62a5d581e1459993e4bb2c8dcf0fd71a1ccff352fa83394787a02ae7e3b
Transaction total size: 90 bytes
Output index: 0

Generated coins must mature 101 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours

{
  "blocks": 2237,
  "currentblocksize": 0,
  "currentblockweight": 0,
  "currentblocktx": 0,
  "difficulty": 0.0005285899106958497,
  "errors": "This is a pre-release test build - use at your own risk - do not use for mining or merchant applications",
  "networkhashps": 18347.29198630137,
  "pooledtx": 0,
  "chain": "test"
}
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: Miki77 on February 06, 2018, 08:48:43 AM
Problem.

(https://i.imgur.com/iaJ939u.png)
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: fwhite on February 06, 2018, 11:00:24 AM
Problem.
You should not modify the scripts provided in the zip file I think, just follow the instructions from the first post.

Steps;
Unzip Windows GoldCoin 0.7.5 TestNet.zip to a folder
Start the client with 1. start-client.cmd
Wait a bit (1 minute)
Start the miner with 2. start-mining-CPU.cmd

Miner should show something like this
Code: [Select]
Goldcoin 0.7.5 TestNet Mining with cpuminer (slow)
[2018-02-06 16:55:03] Binding thread 0 to cpu 0
[2018-02-06 16:55:03] Binding thread 1 to cpu 1
[2018-02-06 16:55:03] 4 miner threads started, using 'scrypt' algorithm.
[2018-02-06 16:55:03] Binding thread 2 to cpu 2
[2018-02-06 16:55:03] Binding thread 3 to cpu 3
[2018-02-06 16:55:03] No payout address provided, switching to getwork
[2018-02-06 16:55:04] thread 2: 4104 hashes, 17.51 khash/s
[2018-02-06 16:55:04] thread 3: 4104 hashes, 17.51 khash/s

For the 0.14.2.1 client the same steps.
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: cryptosolar on February 06, 2018, 05:56:43 PM
-started to mine on the old client, with  = start-mining-CPU.cmd

switched mining

-start mining now on the goldcoinpool.com with new client using my gpu and cgminer 3.7.2.

edit:
(http://i68.tinypic.com/14j6i45.jpg)

i ve only made a few changes:
if you want to something during mining then use a lower itensity, if you want to run it during the night, you can use a higher intensity.
worksize changed to 256
thread concurrency changed to 2048
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: Stouse49 on February 06, 2018, 09:24:43 PM
Problem.

You are trying to mine with cpuminer and the new client.  This doesn't work and it only possible with the old client.

To mine with the new client, connect to the pool:  http://goldcoinpool.com or you must perform complicated instructions to mine solo here:  https://github.com/mikeghen/litecoin-solo-mining-tutorial
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: Miki77 on February 07, 2018, 04:03:25 AM
Problem.
You are trying to mine with cpuminer and the new client.

Yes.

This doesn't work and it only possible with the old client.

I did not know that.

Thanks for clarification.
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: Stouse49 on February 07, 2018, 09:52:09 PM
Mining is no longer working with the old client, by design.  You can try to mine with the old client and let me know if any blocks are mined and accepted.
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: Miki77 on February 08, 2018, 01:21:07 AM
Yes, it does not work, too.

(https://i.imgur.com/P0g2xA1.png)

There were 5 immature coins for just one block, nothing more.

(https://i.imgur.com/EBNZ6kC.png)
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: Stouse49 on February 08, 2018, 03:09:11 AM
Yes, it does not work, too.

Thank you for confirming.  The old client will show that it tried to mine blocks, but they are not confirmed.  At one point the old client on my system had 3 blocks  that were confirming (but they were later orphaned). 
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: MicroGuy on February 14, 2018, 07:38:24 AM
Before we can release the new wallet, we need more testing of transactions between old and new clients. It's important that the community do some of this testing because otherwise a bug could go overlooked..

Please ask any questions and post results below.
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: fwhite on February 14, 2018, 09:17:03 AM
I did several transactions between the old and new client last week, with and without fee etc.
No errors.
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: Miki77 on February 15, 2018, 07:40:10 AM
Got from MG 3500 GLDs to check transaction between old and new wallet.

Result:

http://18.216.202.150:8001/address/miKy57HgsgJPUxXCcFJB3W2NVMd1YGKJco (http://18.216.202.150:8001/address/miKy57HgsgJPUxXCcFJB3W2NVMd1YGKJco)

(https://i.imgur.com/Z60FwmG.png)
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: cryptosolar on February 15, 2018, 06:15:50 PM
- mining with the new client works ! after a few hours i am receiving the coins now  :toast:
- mining with cgminer 3.7.2 on goldcoinpool.com

(https://www.goldcointalk.org/devteam/2iszk2c.jpg)

- as you can see there are 16 k testnet coins on the pool wich missed the point to get shared to the addresses.

- This might happen because of the 51 % defence system, wich rejects the block first and then make it good again afterwords.

- But the pool does not recognize that the Block changed its status to good again . The Toad and me trying to find a solution, the problem is the pool software , not the client.

(https://www.goldcointalk.org/devteam/2iqjyph.jpg)
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: Stouse49 on February 18, 2018, 11:43:12 PM
https://github.com/Stouse49/Goldcoin-GLD/releases/download/v0.14.2.1-testnet2/Windows.GoldCoin.Core.0.14.2.1.TestNet2.zip

Update your new client here.  You can download this file and take the goldcoin-qt.exe file and place it in the folder from the previous version of the new client.   If you run from this folder (after extracting), then you will have a completely new wallet!

Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: fwhite on February 19, 2018, 01:54:00 PM
Update your new client here.
Great, downloaded and running fine. Tested transactions between this and 0.7.5 client, no problem.
See you fixed the litecoin icon :toast:
now don't forget the Copyright years (still 2017)

Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: stemis on February 19, 2018, 08:49:13 PM
The new custom 'zero-fee', although clear to me, will not be for individuals who do not understand some of the basics behind GoldCoin or Crypto in general.  While I think it would be nice to 'cater' to every single person, I believe it is our job (as a community) to help explain the 'zero transaction' feature. 

Personally I would leave it be and ensure a basic help manual (1 page) was written to briefly describe feature in the wallet.

Playing devils advocate as a 'new person', I could be frustrated by my transaction taking longer (based on the advertised benefits).  This will happen when the network transactions pick up.  However, until then I believe we are still making a good name for GoldCoin by illustrating zero transactions.
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: MicroGuy on February 19, 2018, 09:19:26 PM
Would it make sense to relocate the "Send as zero fee transaction" box as shown, replacing the required fee box?

(https://www.goldcointalk.org/devteam/client_fees.jpg)

And then replace the tool tip message to read:

Quote
Paying a zero fee is just fine as long as there is free transaction space available in the blocks. But be aware that this can end up in a never confirming transaction if the demand for free transactions has exceeded 5% of the block capacity.

If we elect to go this route, we could just make .001 the minimum on the adjustable counter, since the only lower setting is zero anyway. This would force the user to choose between zero-fee via checkbox, or minimum or something higher via counter.

Additional note: We probably want the zero-fee transaction box to be clear by default, and after each client restart.
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: stemis on February 20, 2018, 05:51:10 AM
I think you will end up with a lot less headaches from user complaints (that their transaction didn't happen) as long as the user is forced to check the box for a free transaction.  The location point is sort of moot, but others may disagree.

Would it make sense to relocate the "Send as zero fee transaction" box as shown, replacing the required fee box?

(https://www.goldcointalk.org/devteam/client_fees.jpg)

And then replace the tool tip message to read:

Quote
Paying a zero fee is just fine as long as there is free transaction space available in the blocks. But be aware that this can end up in a never confirming transaction if the demand for free transactions has exceeded 5% of the block capacity.

If we elect to go this route, we could just make .001 the minimum on the adjustable counter, since the only lower setting is zero anyway. This would force the user to choose between zero-fee via checkbox, or minimum or something higher via counter.

Additional note: We probably want the zero-fee transaction box to be clear by default, and after each client restart.

Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: MicroGuy on February 20, 2018, 06:38:18 AM
I think you will end up with a lot less headaches from user complaints (that their transaction didn't happen) as long as the user is forced to check the box for a free transaction.  The location point is sort of moot, but others may disagree.

The location isn't moot because it replaces a redundant line of operation within the client which then makes the custom settings less complex, easier to understand, and logical (while currently they are not). Eg. It's impossible for a "zero fee" and a "required fee" to exist simultaneously.

Before:

(https://www.goldcointalk.org/devteam/client2.jpg)

After

(https://www.goldcointalk.org/devteam/client_fees.jpg)
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: onthudsa on February 20, 2018, 10:32:22 AM
Design Positive Feedback:

-  First time run popup warning to be smaller.
-  Pending balance having an estimated time until its available balance.
-  The word "label" to be replaced with "message" or "note"
-  "Subtract fee from amount" sentence needs to be moved a little bit to the right
-  "Enter a Goldcoin address" box to be resized until it is symmetrical
-  Once the "send as zero-fee transaction" box is ticked, the recommended and custom tickers/boxes get disabled (grayed out)
-  Remove hard to understand sentences (too much information going on at once) such as these:

   - "Smart fee not initialized yet, This usually takes a few blocks...)"
   - Remove the part from the "confirmation time target" with only the time, no block amount, the block amount doesnt matter to the casual user.

These sentences create confusion and isn't important to the casual user, if you feel like having more information about that option replace the sentence with a simple "?" box where the user receives a popup where they can read more about that following option.

- Jeroen
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: Stouse49 on February 27, 2018, 02:48:33 AM
Thanks for this feedback.  We welcome pull requests for these changes!

Design Positive Feedback:

-  First time run popup warning to be smaller.
-  Pending balance having an estimated time until its available balance.
What is the warning?

Pending Balance - the time is always 1 block or about 2 minutes.


-  The word "label" to be replaced with "message" or "note"
The word "label" is consistent with the Receive page and the File / Receiving addresses dialog.  "message" is a different piece of information.

Consider the following request made from the Receive page , which is based on BIP21.  Message and Label are separate fields.
Payment information
URI: goldcoin:muySJLBHA4JKz9cMKQbjCzySGoJtSTzP1z?amount=200.00000000&label=My%20Label&message=My%20longer%20message%20about%20this%20request
Address: muySJLBHA4JKz9cMKQbjCzySGoJtSTzP1z
Amount: 200.00000000 GLD
Label: My Label
Message: My longer message about this request

-  "Subtract fee from amount" sentence needs to be moved a little bit to the right
-  "Enter a Goldcoin address" box to be resized until it is symmetrical
What does the "Pay To:" field need to be symmetrical with?  It currently has the same width as the Label field when considering the three buttons to its right.

-  Once the "send as zero-fee transaction" box is ticked, the recommended and custom tickers/boxes get disabled (grayed out)
The recommended and custom boxes still have value because they will apply if the transaction size is greater than 1 KB as those values will be used as the transaction fee.  Transactions > 1 kb cannot be free, under the default rules.

  -  Remove hard to understand sentences (too much information going on at once) such as these:
   - "Smart fee not initialized yet, This usually takes a few blocks...)"
   - Remove the part from the "confirmation time target" with only the time, no block amount, the block amount doesnt matter to the casual user.
Will the casual user click the "Choose..." button to get more control over the transaction fee?  Most of these fields apply to a coin like bitcoin, which has a congested network.  We could simply hide all these extra fields unless they have non-default values based on transaction history.  The smart fee system looks at the recent block history and the fees for the transactions and comes up with estimates for confirmation times and fees.  In our testnet and in the goldcoin mainnet, there aren't enough transactions to trigger this to show recommended fees other than 0.001.

These sentences create confusion and isn't important to the casual user, if you feel like having more information about that option replace the sentence with a simple "?" box where the user receives a popup where they can read more about that following option.
- Jeroen
If the user wants a simple experience, then the "Hide" button works well.  Granted that most of the options in the transaction fees section are redundant and not necessary for a coin with a low transaction volume.

Keep in mind that changes (additions or deletions) to any words, sentences or phrases will require translation into the other languages and we don't have any translators or a system to get those translations.

My preference is to change as little as possible, partially because my expertise with C++ is the protocol and not the user interface (QT).



Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: Stouse49 on February 27, 2018, 03:06:04 AM
I think you will end up with a lot less headaches from user complaints (that their transaction didn't happen) as long as the user is forced to check the box for a free transaction.  The location point is sort of moot, but others may disagree.

The location isn't moot because it replaces a redundant line of operation within the client which then makes the custom settings less complex, easier to understand, and logical (while currently they are not). Eg. It's impossible for a "zero fee" and a "required fee" to exist simultaneously.

The Zero Fee function will only work if the Transaction size is less than 1 Kb (a default value that can be changed by the developers, if we want).  If the size is larger than 1 kb, then the settings from the Required Fee or Recommended Fee will be used.  That is why the original text said, Send as Zero Fee Transaction, if possible, as I copied this from another client.  The "if possible" has to do with the constraint (< 1 kb), though that is not stated explicitly.

Recommended Fee will be based on historical activity (low volume = 0.001, higher volume could be higher).  My recommendation is that we hide all the extra sliders and text if the recommended fee for a fast transaction confirmation is the same as the Required Fee (0.001).

Custom:  per kilobyte: 0.001 (the minimum value here is same as the Required Fee, but this can be increased, but not lowered)
Required Fee:  0.001 (the minimum allowed by the client, if paying a fee) <-- This could be hidden if the Recommended Fee is the same as the Required Fee, other wise we could show it.

Send as Zero Fee:  Will send as 0.000 fee, unless size > 1Kb, then uses the above fee.  We could put a tool tip here regarding side effects of this.
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: MicroGuy on February 27, 2018, 11:35:27 AM
My recommendation is that we hide all the extra sliders and text if the recommended fee for a fast transaction confirmation is the same as the Required Fee (0.001).

Yes. I think it makes sense to hide the custom settings by default.

Custom:  per kilobyte: 0.001 (the minimum value here is same as the Required Fee, but this can be increased, but not lowered)
Required Fee:  0.001 (the minimum allowed by the client, if paying a fee) <-- This could be hidden if the Recommended Fee is the same as the Required Fee, other wise we could show it.

Send as Zero Fee:  Will send as 0.000 fee, unless size > 1Kb, then uses the above fee.  We could put a tool tip here regarding side effects of this.

Right. But would this control configuration not cover every conceivable possibility since the default custom setting cannot currently be lowered below the required fee?

(https://www.goldcointalk.org/devteam/client_fees.jpg)

I'm happy with having the settings either way. Just clarifying my thoughts from my previous post.  :)
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: onthudsa on February 27, 2018, 01:35:26 PM
Thanks for this feedback.  We welcome pull requests for these changes!

Design Positive Feedback:

-  First time run popup warning to be smaller.
-  Pending balance having an estimated time until its available balance.
What is the warning?

Pending Balance - the time is always 1 block or about 2 minutes.


-  The word "label" to be replaced with "message" or "note"
The word "label" is consistent with the Receive page and the File / Receiving addresses dialog.  "message" is a different piece of information.

Consider the following request made from the Receive page , which is based on BIP21.  Message and Label are separate fields.
Payment information
URI: goldcoin:muySJLBHA4JKz9cMKQbjCzySGoJtSTzP1z?amount=200.00000000&label=My%20Label&message=My%20longer%20message%20about%20this%20request
Address: muySJLBHA4JKz9cMKQbjCzySGoJtSTzP1z
Amount: 200.00000000 GLD
Label: My Label
Message: My longer message about this request

-  "Subtract fee from amount" sentence needs to be moved a little bit to the right
-  "Enter a Goldcoin address" box to be resized until it is symmetrical
What does the "Pay To:" field need to be symmetrical with?  It currently has the same width as the Label field when considering the three buttons to its right.

-  Once the "send as zero-fee transaction" box is ticked, the recommended and custom tickers/boxes get disabled (grayed out)
The recommended and custom boxes still have value because they will apply if the transaction size is greater than 1 KB as those values will be used as the transaction fee.  Transactions > 1 kb cannot be free, under the default rules.

  -  Remove hard to understand sentences (too much information going on at once) such as these:
   - "Smart fee not initialized yet, This usually takes a few blocks...)"
   - Remove the part from the "confirmation time target" with only the time, no block amount, the block amount doesnt matter to the casual user.
Will the casual user click the "Choose..." button to get more control over the transaction fee?  Most of these fields apply to a coin like bitcoin, which has a congested network.  We could simply hide all these extra fields unless they have non-default values based on transaction history.  The smart fee system looks at the recent block history and the fees for the transactions and comes up with estimates for confirmation times and fees.  In our testnet and in the goldcoin mainnet, there aren't enough transactions to trigger this to show recommended fees other than 0.001.

These sentences create confusion and isn't important to the casual user, if you feel like having more information about that option replace the sentence with a simple "?" box where the user receives a popup where they can read more about that following option.
- Jeroen
If the user wants a simple experience, then the "Hide" button works well.  Granted that most of the options in the transaction fees section are redundant and not necessary for a coin with a low transaction volume.

Keep in mind that changes (additions or deletions) to any words, sentences or phrases will require translation into the other languages and we don't have any translators or a system to get those translations.

My preference is to change as little as possible, partially because my expertise with C++ is the protocol and not the user interface (QT).

I agree with everything you said, these were just some small notes, nothing really important :)
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: fwhite on February 27, 2018, 01:52:55 PM
I think it should be like in the latest release but make the text;
Send as zero-fee transaction, if possible (read the tooltip)

And add a tooltip explaining this 1Kb transaction size.

Agree on hiding all the extra sliders and text by default if the recommended fee for a fast transaction confirmation is the same as the Required Fee.
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: wmcoogan on February 27, 2018, 02:56:54 PM
Hi All.

Followed the instructions in the initial post regarding running version 2.  Done.  I launched the 2.start mining script and I have a box open saying "Mining: 0 Blocks Mined..."

it says slow... How slow?  Grab a beer, hang out and watch something happen? Or go paint the house slow??

Thanks!
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: wmcoogan on February 27, 2018, 03:01:23 PM
Ok. 
Just got "error:  couldn't connect to server:  timeout reached (code 0)
(make sure server is running and you are connected to the correct RPC port)
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: Stouse49 on February 28, 2018, 02:25:14 AM
I think it should be like in the latest release but make the text;
Send as zero-fee transaction, if possible (read the tooltip)

And add a tooltip explaining this 1Kb transaction size.

Agree on hiding all the extra sliders and text by default if the recommended fee for a fast transaction confirmation is the same as the Required Fee.

Thanks for your feedback, we will see if others comment on this before making further changes.
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: Stouse49 on February 28, 2018, 02:27:15 AM
Ok. 
Just got "error:  couldn't connect to server:  timeout reached (code 0)
(make sure server is running and you are connected to the correct RPC port)

Slow means paint the front of your house slow, not the whole house!  Mining is much faster with other software, but is more complicated to set up.

This error means that the client may have been shut down, while the miner was trying to mine.  Given how the 51% defense works, this mining program probably will be very ineffective.
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: Stouse49 on March 12, 2018, 01:53:20 AM
Here are some comments about "Send as zero-fee transaction if possible":

https://bitcointalk.org/index.php?topic=1369764.0
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: stemis on March 12, 2018, 05:23:56 AM
Definitely still relevant.  Eliminating ambiguity with every 'end user' is the goal but ultimately sacrifices usability to some degree.   
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: MicroGuy on March 13, 2018, 08:09:37 AM
Definitely still relevant.  Eliminating ambiguity with every 'end user' is the goal but ultimately sacrifices usability to some degree.

I believe the following configuration eliminates all ambiguity while fully preserving usability.  The ambiguity arises when we add the second checkbox.

(https://www.goldcointalk.org/devteam/client_fees.jpg)

Another option would be to remove the "Send as zero-fee transaction" checkbox altogether and leave the "Pay only the required fee" option. Then we would allow the counter to be rolled back to zero preserving the zero fee functionality just making it less obvious.

(https://www.goldcointalk.org/devteam/revert.jpg)

One thing's for sure, we don't want any zero fee option available to the user unless they enter the custom settings. Most users should use the client's default fee settings. The custom settings should be used by advanced users only.

~~

We'll probably want to make a decision on this sometime this week unless we want to delay the new client further.
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: Stouse49 on March 13, 2018, 11:32:27 PM
After looking at the code, I think there is a way to the second option, which the user enters 0.00000000 for the fee.

Currently, that will still result in the minimum fee being paid.
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: MicroGuy on March 15, 2018, 12:34:57 PM
After looking at the code, I think there is a way to the second option, which the user enters 0.00000000 for the fee.

Currently, that will still result in the minimum fee being paid.

In that case, I'm fine with the second option of removing the "Send as zero fee" checkbox. We can always add it back later in future updates. This will also give users a more consistent experience across apps, since all other apps charge a transaction fee by default.

At the same time, advanced users will still have access to sending zero-fee transactions by entering the custom settings and rolling the counter back to zero.

(https://www.goldcointalk.org/devteam/recommend_final.jpg)

Note: Since the Goldcoin network does not have a required fee we might consider renaming the checkbox. This will also make the language of the tooltip consistent with the wording of the checkbox.
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: Stouse49 on March 16, 2018, 03:27:51 AM
For my changes thus far:
1.  Send as zero-fee transaction is hidden.  The code is still in the app with all the translations that we have in case we want to use it later.
2.  The edit field for the fee can be lowered to 0.00000000 and the transaction is sent as zero fee.
3.  The "total at least" radio button was not removed.  This is only activated if Coin Control is used.  Not sure why.  This sets a minimum fee that will be paid in the transaction. 

For example.  you set it to 0.001, so your transaction will have a fee of at least 0.001.  If the "per kilobyte" is set, then the fee could be lower than 0.001 depending on the transaction size.

another example.  We are sending 10 GLD and the transaction size is 0.5 kB.
(x) per kilobyte fee: 0.00050000
(x) total at least fee:  0.00100000

For transactions greater than 1kB, this "total at least" option is no different than the per kilobyte version in how fees are calculated.  Perhaps we don't really need this option after all.
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: Stouse49 on March 16, 2018, 11:26:45 PM
(https://i.imgur.com/ot0oHWR.png)
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: stemis on March 17, 2018, 09:58:42 PM
Appreciate the hard work!
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: Tymon on March 19, 2018, 09:37:35 AM
Nice balance..... :)
Title: Re: GoldCoin TestNet Round #2 for the New Client
Post by: cryptosolar on March 27, 2018, 07:35:01 AM
The new Client is out in space and will soon get to a place near you   :think: yayay