Forum Home
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Popular

    [Dev] Release Candidate Feathercoin 0.9.3.2 - Check List

    Technical Development
    6
    104
    87240
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • AcidD
      AcidD Moderators @AcidD last edited by

      @aciddude said:

      @Wellenreiter said:

      @aciddude the class named of some classes have changed and the definitions in the test directory haven’t updated.

      I have checked:

      base58_tests.cpp:155:35: error: ‘class CBitcoinSecret’ has no member named ‘GetKey’
      CKey privkey = secret.GetKey();

      secret.GetKey() now is secret.GetSecret()

      base58_tests.cpp:157:41: error: ‘class CKey’ has no member named ‘size’
      BOOST_CHECK_MESSAGE(privkeBOOST_CHECK_MESSAGE(privkey.size() == exp_payload.size() && std::equal(privkey.begin(), privkey.end(), exp_payload.begin())BOOST_CHECK_MESSAGE(privkey.size() == exp_payload.size() && std::equal(privkey.begin(), privkey.end(), exp_payload.begin())y.size() == exp_payload.size() && std::equal(privkey.begin(), privkey.end(), exp_payload.begin())…

      privkey now must be of type CPrivKey and not Ckey anymore

      To solve the first problem above I’ve searched for ‘secret.’ in all files and compared the definitions and checked the names of the procedures

      Ok so now line 155 on base58_tests.cpp I’ve changed it to read:

      CPrivKey privkey = secret.GetSecret();  
      
      
      make[4]: Entering directory '/home/aciddude/FTC0932/Feathercoin/src/test'
        CXX      test_bitcoin-base58_tests.o
      base58_tests.cpp: In member function ‘void base58_tests::base58_keys_valid_parse::test_method()’:
      base58_tests.cpp:155:49: error: no matching function for call to ‘CBitcoinSecret::GetSecret()’
                   CPrivKey privkey = secret.GetSecret();
                                                       ^
      In file included from base58_tests.cpp:5:0:
      ../../src/base58.h:130:13: note: candidate: CSecret CBitcoinSecret::GetSecret(bool&)
           CSecret GetSecret(bool &fCompressedOut);
                   ^
      
      
      

      ideas ?

      To get past this error

      1 - edit base58_tests.cpp (line 156)

      CPrivKey privkey = secret.GetPrivKey();
      

      2 - Edit base58.h and add the below at line 134

        //Added by AcidDude
          bool IsCompressed();
          void SetPrivKey(const CPrivKey& vchPrivKey);
          CPrivKey GetPrivKey();
      
      
      • FTC Block Explorer + API @ https://fsight.chain.tips
      • FTC Beer Money: 6x4LEQV88zRnBvZoH6ZNK6SeRxx4KiTyJs
      • FTC bech32 address: fc1q4tclm3cv4v86ez6el76ewmharexfapxhek5a03
      • BTC bech32 address: bc1qk8umuccapuafspk9e5szahvp0detafuzugv4ay

      1 Reply Last reply Reply Quote 1
      • wrapper
        wrapper Moderators last edited by

        This post is deleted!
        1 Reply Last reply Reply Quote 0
        • AcidD
          AcidD Moderators last edited by

          @lizhi @Wellenreiter

          I was working with @wrapper on trying to fix the build tests… can you guys check out my commits below ?
          https://github.com/aciddude/Feathercoin/commits/0.9.3.2

          I also merged @Wellenreiters latest commits from the main Feathercoin github for 0.9.3.2. For me the Wallet Builds with --disable-tests

          if I run it with tests, I get to the (3rd?) base58 test.

          I need some help understanding why CKey was removed and replaced with CSecret and CPrivKey

          • FTC Block Explorer + API @ https://fsight.chain.tips
          • FTC Beer Money: 6x4LEQV88zRnBvZoH6ZNK6SeRxx4KiTyJs
          • FTC bech32 address: fc1q4tclm3cv4v86ez6el76ewmharexfapxhek5a03
          • BTC bech32 address: bc1qk8umuccapuafspk9e5szahvp0detafuzugv4ay

          1 Reply Last reply Reply Quote 1
          • AcidD
            AcidD Moderators last edited by

            currently getting these errors

            Making all in test
            make[3]: Entering directory '/home/aciddude/FTC0932/Feathercoin/src/test'
            make  all-am
            make[4]: Entering directory '/home/aciddude/FTC0932/Feathercoin/src/test'
              CXX      test_bitcoin-base58_tests.o
            base58_tests.cpp: In member function ‘void base58_tests::base58_keys_valid_gen::test_method()’:
            base58_tests.cpp:213:79: error: no matching function for call to ‘CBitcoinSecret::SetSecret(std::vector<unsigned char>::iterator, std::vector<unsigned char>::iterator, bool&)’
                         key.SetSecret(exp_payload.begin(), exp_payload.end(), isCompressed);
                                                                                           ^
            In file included from base58_tests.cpp:5:0:
            ../../src/base58.h:131:10: note: candidate: void CBitcoinSecret::SetSecret(const CSecret&, bool)
                 void SetSecret(const CSecret& vchSecret, bool fCompressed);
                      ^
            ../../src/base58.h:131:10: note:   candidate expects 2 arguments, 3 provided
            base58_tests.cpp:216:34: error: no matching function for call to ‘CBitcoinSecret::SetPrivKey(CBitcoinSecret&)’
                         secret.SetPrivKey(key);
                                              ^
            In file included from base58_tests.cpp:5:0:
            ../../src/base58.h:140:10: note: candidate: void CBitcoinSecret::SetPrivKey(const CPrivKey&)
                 void SetPrivKey(const CPrivKey& vchPrivKey);
                      ^
            ../../src/base58.h:140:10: note:   no known conversion for argument 1 from ‘CBitcoinSecret’ to ‘const CPrivKey& {aka const std::vector<unsigned char, secure_allocator<unsigned char> >&}’
            In file included from /usr/include/boost/test/unit_test.hpp:19:0,
                             from base58_tests.cpp:19:
            
            

            I feel like am just missing an #Include…

            also check out this
            http://stackoverflow.com/questions/27951537/how-to-convert-unsigned-char-to-stdvectorunsigned-char

            • FTC Block Explorer + API @ https://fsight.chain.tips
            • FTC Beer Money: 6x4LEQV88zRnBvZoH6ZNK6SeRxx4KiTyJs
            • FTC bech32 address: fc1q4tclm3cv4v86ez6el76ewmharexfapxhek5a03
            • BTC bech32 address: bc1qk8umuccapuafspk9e5szahvp0detafuzugv4ay

            1 Reply Last reply Reply Quote 1
            • wrapper
              wrapper Moderators last edited by wrapper

              @Lizhi @Wellenreiter @Bushstar

              Re: Testing / Wallet Guide creation.

              What is the current Minimum payment level and where /how is it set on release?
              What is the current Dust fee level and where / how is it set on release?

              How the transition from Litecoin to Bitcoin base effected minimum payments as each has its own system and FTC had a modified version for 0.8.7.x and 0.6.x series?

              1 Reply Last reply Reply Quote 0
              • AcidD
                AcidD Moderators last edited by AcidD

                Hi Guys,

                I’ve managed to fix the base58 test. you can see all my commits, here:
                https://github.com/aciddude/Feathercoin/commits/0.9.3.2

                I did a few of them on different days.

                currently the following tests are passing:

                CXX test_bitcoin-alert_tests.o
                CXX test_bitcoin-allocator_tests.o
                CXX test_bitcoin-base32_tests.o
                CXX test_bitcoin-base58_tests.o
                CXX test_bitcoin-base64_tests.o
                CXX test_bitcoin-bignum_tests.o
                

                the next test that fails is

                test_bitcoin-bloom_tests
                

                it fails with these errors:

                make[4]: Entering directory '/home/aciddude/FTCNEW/Feathercoin/src/test'
                  CXX      test_bitcoin-bloom_tests.o
                bloom_tests.cpp: In member function ‘void bloom_tests::bloom_create_insert_key::test_method()’:
                bloom_tests.cpp:84:26: error: ‘class CBitcoinSecret’ has no member named ‘GetKey’
                     CKey key = vchSecret.GetKey();
                                          ^
                In file included from ../../src/base58.h:18:0,
                                 from bloom_tests.cpp:7:
                ../../src/key.h:76:20: error: ‘unsigned char* CPubKey::begin()’ is private
                     unsigned char *begin() {
                                    ^
                bloom_tests.cpp:86:50: error: within this context
                     vector<unsigned char> vchPubKey(pubkey.begin(), pubkey.end());
                                                                  ^
                bloom_tests.cpp:86:65: error: no matching function for call to ‘std::vector<unsigned char>::vector(unsigned char*, const unsigned char*)’
                     vector<unsigned char> vchPubKey(pubkey.begin(), pubkey.end());
                
                

                most of this seems to involve the CKey class in key.h as well as stuff in base58.h

                it’s also claiming the CPubKey begin (method?) is private …but from what I can see in key.h it’s public…I could also be blind.

                anyone who wants to replicate or help can just make the changes I did (you can see my commits in the above link)

                or clone and build this
                https://github.com/aciddude/Feathercoin/tree/0.9.3.2

                I’ve included all the recent fixes @Wellenreiter , @lizhi and @wrapper have done.

                it seems the main reason for the tests failing is they need to be updated when there is any code changes, to reflect the names of new variables as well as the way things like keys are now created.
                The remaining warnings are due to type mismatch during “for loops”

                • FTC Block Explorer + API @ https://fsight.chain.tips
                • FTC Beer Money: 6x4LEQV88zRnBvZoH6ZNK6SeRxx4KiTyJs
                • FTC bech32 address: fc1q4tclm3cv4v86ez6el76ewmharexfapxhek5a03
                • BTC bech32 address: bc1qk8umuccapuafspk9e5szahvp0detafuzugv4ay

                1 Reply Last reply Reply Quote 2
                • AcidD
                  AcidD Moderators last edited by

                  update:

                  I’ve fixed the bloom test! below are the tests which are passing.

                    CXX      test_bitcoin-alert_tests.o
                    CXX      test_bitcoin-allocator_tests.o
                    CXX      test_bitcoin-base32_tests.o
                    CXX      test_bitcoin-base58_tests.o
                    CXX      test_bitcoin-base64_tests.o
                    CXX      test_bitcoin-bignum_tests.o
                    CXX      test_bitcoin-bloom_tests.o
                    CXX      test_bitcoin-canonical_tests.o
                    CXX      test_bitcoin-checkblock_tests.o
                    CXX      test_bitcoin-Checkpoints_tests.o
                    CXX      test_bitcoin-compress_tests.o
                    CXX      test_bitcoin-DoS_tests.o
                    CXX      test_bitcoin-getarg_tests.o
                  
                  

                  It seems to be more of the same, where i’m just updating how things are done and the names of variables.

                  the next test that’s failing is

                  key_tests.cpp
                  
                  • FTC Block Explorer + API @ https://fsight.chain.tips
                  • FTC Beer Money: 6x4LEQV88zRnBvZoH6ZNK6SeRxx4KiTyJs
                  • FTC bech32 address: fc1q4tclm3cv4v86ez6el76ewmharexfapxhek5a03
                  • BTC bech32 address: bc1qk8umuccapuafspk9e5szahvp0detafuzugv4ay

                  1 Reply Last reply Reply Quote 2
                  • AcidD
                    AcidD Moderators last edited by

                    Here’s my github commit. so you can see what I did.

                    https://github.com/aciddude/Feathercoin/commit/c19b6d4f7740b0b71c076e9745fea59c48709da8

                    • FTC Block Explorer + API @ https://fsight.chain.tips
                    • FTC Beer Money: 6x4LEQV88zRnBvZoH6ZNK6SeRxx4KiTyJs
                    • FTC bech32 address: fc1q4tclm3cv4v86ez6el76ewmharexfapxhek5a03
                    • BTC bech32 address: bc1qk8umuccapuafspk9e5szahvp0detafuzugv4ay

                    1 Reply Last reply Reply Quote 1
                    • AcidD
                      AcidD Moderators last edited by

                      Hi Guys,

                      the key_tests are now working. I’ll post the fix this evening.

                      it passes a few more tests and the next test that’s broken is the multisig_test

                      • FTC Block Explorer + API @ https://fsight.chain.tips
                      • FTC Beer Money: 6x4LEQV88zRnBvZoH6ZNK6SeRxx4KiTyJs
                      • FTC bech32 address: fc1q4tclm3cv4v86ez6el76ewmharexfapxhek5a03
                      • BTC bech32 address: bc1qk8umuccapuafspk9e5szahvp0detafuzugv4ay

                      1 Reply Last reply Reply Quote 1
                      • lizhi
                        lizhi last edited by

                        I think all test cpp file are bitcoin not feathercoin. When I compile with disable-tests, I don’t think we can use it .

                        AcidD 1 Reply Last reply Reply Quote 0
                        • wrapper
                          wrapper Moderators last edited by

                          I think the auto test system is relevent, or should be. Other coins such as Dogecoin have fixed their tests.

                          Do we need to update the test data to make them Feathercoin specific?

                          1 Reply Last reply Reply Quote 0
                          • AcidD
                            AcidD Moderators @lizhi last edited by

                            @lizhi said in [Dev] Release Candidate Feathercoin 0.9.3.2 - Check List:

                            I think all test cpp file are bitcoin not feathercoin. When I compile with disable-tests, I don’t think we can use it .

                            Yeah I believe so to.

                            With some of the tests, it has hard coded strings that I believe relate to Bitcoin, like some hard coded private keys for testing etc. I’m sure those need to be changed to relate to Feathercoin.

                            • FTC Block Explorer + API @ https://fsight.chain.tips
                            • FTC Beer Money: 6x4LEQV88zRnBvZoH6ZNK6SeRxx4KiTyJs
                            • FTC bech32 address: fc1q4tclm3cv4v86ez6el76ewmharexfapxhek5a03
                            • BTC bech32 address: bc1qk8umuccapuafspk9e5szahvp0detafuzugv4ay

                            1 Reply Last reply Reply Quote 1
                            • Wellenreiter
                              Wellenreiter Moderators last edited by Wellenreiter

                              Then we should adapt the tests to feathercoin.
                              We could avoid problems like the sync problem we had with 0.9.3.2, if we have suficient tests coded.
                              Tests that we need to have:

                              • switch to block version 2
                                • select the first 5 or 10 blocks with block version 2 and see if the code accepts the blocks
                              • switch from 2.5 minute time to block to 1 Minute time to block
                                • select the last 5 blocks bfore the fork and after the fork and check, if the code accepts the blocks
                              • switch to neoscrypt
                                • select the last 5 blocks bfore the fork and after the fork and check, if the code accepts the blocks

                              Probably there are more, but these are important ones and can be done without interaction with other clients.

                              in additon we should replace the bitcoin specific tests with the Feathercoin equivalents.

                              Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
                              Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

                              1 Reply Last reply Reply Quote 2
                              • wrapper
                                wrapper Moderators last edited by wrapper

                                A friend of mine who does graphic art is helping do a subtle and “tested with different Desktop Themes” update to the wallet.

                                The graduated background image was not tilling well, so we will be testing some alternatives. Here is the first test of white with a blue logo, matching the forum.

                                I’ve set him up a development environment and we have now found all the places / images need to be adjusted to try make some improvements …

                                We also have also produced a Green alternate that matches the Chinese FTC forum that colour scheme that @Lizhi runs, that he could include in his window builds.

                                At the moment the priority is to replace the background screen with a more subtle look.

                                We have been discussing ideas such as to use the shadow from the FTC graphics library, and have the Logo as “Water mark”.

                                I’ve made a Github, for swapping test images :
                                https://github.com/wrapperband/FTC-Wallet-Layout-Examples

                                Feathercoin wallet overveiw with White background image & Forum Blue Logo
                                White Backgound, Blue Logo

                                There is a resource directory with the current graphics files from Feathercoin/src/qt/res/images including any new or possible options.

                                https://github.com/wrapperband/FTC-Wallet-Layout-Examples

                                Blue Logo

                                Wellenreiter 1 Reply Last reply Reply Quote 1
                                • AcidD
                                  AcidD Moderators last edited by

                                  Love that new look. It looks cleaner.

                                  How about have a few colours and have the user pick their fav. The default one should be blue and matching the forum…that matching idea was a great idea.

                                  If you can use the forum icons in the wallet as well or get an icon set together and use them for both ?

                                  Exciting time ahead !!!

                                  • FTC Block Explorer + API @ https://fsight.chain.tips
                                  • FTC Beer Money: 6x4LEQV88zRnBvZoH6ZNK6SeRxx4KiTyJs
                                  • FTC bech32 address: fc1q4tclm3cv4v86ez6el76ewmharexfapxhek5a03
                                  • BTC bech32 address: bc1qk8umuccapuafspk9e5szahvp0detafuzugv4ay

                                  1 Reply Last reply Reply Quote 0
                                  • wrapper
                                    wrapper Moderators last edited by

                                    You can find the standard graphics and vector versions here :

                                    Feathercoin Graphics and Logos : https://www.feathercoin.com/feathercoin-graphic-resources/

                                    I’ve added a new section to the Wallet guide to point to external features such as graphics :

                                    Links, External features and further information

                                    Feathercoin forum : find support

                                    http://forum.feathercoin.com/category/18/support

                                    Feathercoin Block Explorer

                                    http://explorer.feathercoin.com/chain/Feathercoin

                                    Feathercoin API

                                    The Feathercoin API is a set of function calls you can make to the Feathercoin server to return the status of various parameters, such as difficult, block height

                                    https://www.feathercoin.com/feathercoin-api/

                                    Using Feathercoin with other Cryptographic currencies, pchMessageStart

                                    In most circumstance, alternative currencies coexist on a system by their name and the port they communicate on. When exchanges or pools deal with multiple currencies they can use pchMessageStart to destinguish between them.

                                    Feathercoin was originally forked from the Litecoin project and shared the same pchMessageStart. in order to identify Feathercoin a second pchMassageStart was added which Feathercoin will use preferentially,if given.

                                    Feathercoin specific pchMessageStart

                                    0xfe 0x46 0x54 0x43

                                    Feathercoin Graphics and Logos

                                    https://www.feathercoin.com/feathercoin-graphic-resources/

                                    Feathercoin Merchent tools

                                    Website Button generator.

                                    https://www.feathercoin.com/feathercoin-button-generator/

                                    Broadcast Transaction Service

                                    Feathercoin Broadcast Transaction Service :

                                    block.ftc-c.com/tx/send
                                    

                                    If you wish to accelerate a transaction getting onto the blockchain or it is a stealth transaction, you may wish to us the Broadcast service.

                                    How to use the broadcast service :

                                    First Step : Find your transaction binary code :

                                    feathercoind.exe getrawtransaction 53519a8f97038728a72a80bcc4d07919165617deb2142e588a9dca6e95d43043 
                                    
                                    0100000002c2936c0ccf2b2ab10740ee769ac10739da513d508f500e7ec9294617d62a94c2000000006a473044022002ed821998221aebc12bb994c00a8f9e6a6d8132ef0ae0d237dc31b01c54be6a022027d574128ac65ea1ec25a37c715bddba15f4827980b11ad6246bc933a50785f6012102c5a97cc1094c30da8351d5b288b7c89e375361eef6c947e7f671c26f9a6e3a3bffffffff2de0b2e003f5147ef8152bacacee9a481786a04c5e202fa7f0577fc9cc3b2702000000006b4830450220693e02092dc4eeb53abeaa834c05624f223aa09bb75858607f72b1d41a5ce47902210097075c48ccaa5088c0c563e4334400954bd127580d3753420b79b83d57e3caa6012103652bc983297937e0ceaf72eabad43ea3123333e85430332bcb4da37bcc3e59c7ffffffff0280969800000000001976a914affb568d0a05e0be72b682c7ced6bf2ca064870288ac0000000000000000236a21028726aae1c0ffe6138b70284519f09266f1ab6d7d7e4511f1a1d359045f26d42a00000000
                                    

                                    Second Step : Broadcast it :

                                    Go to http://block.ftc-c.com/tx/send 
                                    
                                    copy binary code , click “Send transaction” .
                                    

                                    Wait confirmation, until a mining pool makes a block.

                                    Advanced Checkpointing ACP

                                    What is Advanced Checkpointing?

                                    Advanced Checkpointing allows Feathercoin to send out checkpoints without having to release a new version Feathercoin software. This works by having ‘master nodes’ which checkpoints each block it sees on the network protecting it from specifically from being double spent.

                                    The ACP checkpointing for Feathercoin has been set at every 5 blocks. ACP does not dictate the blockchain, it provides checkpoints and helps prevent double spends, if the checkpoint is on a short branch it will be rejected.

                                    1 Reply Last reply Reply Quote 0
                                    • lizhi
                                      lizhi last edited by

                                      blue theme is better
                                      https://github.com/wrapperband/FTC-Wallet-Layout-Examples/blob/master/images/FTCWallet.LightTheme.KDE.overveiw.01.png

                                      1 Reply Last reply Reply Quote 1
                                      • Wellenreiter
                                        Wellenreiter Moderators @wrapper last edited by

                                        @wrapper
                                        Can we make the look ‘user changable’?

                                        I’ve opened an enhancement request some month ago on github already.

                                        It shouldn’t be to compilcated

                                        Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
                                        Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

                                        1 Reply Last reply Reply Quote 2
                                        • wrapper
                                          wrapper Moderators last edited by wrapper

                                          This is the result of testing the White background with a KDE dark theme, it will need at least a slight grey, which would still not show dark themes great.

                                          An enhancement would be to look how the backgroud should be done,; Currently if a transparent image is used, the background shows black ( with a light desktop theme. )

                                          https://wiki.qt.io/How_to_Change_the_Background_Color_of_QWidget

                                          Feathercoin wallet with Dark KDE Theme, White Back Ground
                                          White Backgound, Dark Desktop

                                          1 Reply Last reply Reply Quote 0
                                          • AcidD
                                            AcidD Moderators last edited by

                                            key_tests, fixed.

                                            https://github.com/aciddude/Feathercoin/commit/01efebfe139c18af5097350f9076f027fb8e3f75

                                            • FTC Block Explorer + API @ https://fsight.chain.tips
                                            • FTC Beer Money: 6x4LEQV88zRnBvZoH6ZNK6SeRxx4KiTyJs
                                            • FTC bech32 address: fc1q4tclm3cv4v86ez6el76ewmharexfapxhek5a03
                                            • BTC bech32 address: bc1qk8umuccapuafspk9e5szahvp0detafuzugv4ay

                                            1 Reply Last reply Reply Quote 2
                                            • First post
                                              Last post