[Dev] Feathercoin 0.9.6.2 * Maintenance fix, build & upgrade issues notes.
-
main.h conflicts
Test replaced by function? removed for now.
HEAD 0.9.6.2
CMerkleTx() { Init(); } CMerkleTx(const CTransaction& txIn) : CTransaction(txIn) { Init(); } void Init() { hashBlock = 0; nIndex = -1; fMerkleVerified = false; } IMPLEMENT_SERIALIZE ( nSerSize += SerReadWrite(s, *(CTransaction*)this, nType, nVersion, ser_action); nVersion = this->nVersion; READWRITE(hashBlock); READWRITE(vMerkleBranch); READWRITE(nIndex); ) int SetMerkleBranch(const CBlock* pblock=NULL); // Return depth of transaction in blockchain: // -1 : not in blockchain, and not in memory pool (conflicted transaction) // 0 : in memory pool, waiting to be included in a block // >=1 : this many blocks deep in the main chain int GetDepthInMainChain(CBlockIndex* &pindexRet) const; int GetDepthInMainChain() const { CBlockIndex *pindexRet; return GetDepthInMainChain(pindexRet); } int GetHeightInMainChain(CBlockIndex* &pindexRet) const; int GetHeightInMainChain() const { CBlockIndex *pindexRet; return GetHeightInMainChain(pindexRet); } bool IsInMainChain() const { CBlockIndex *pindexRet; return GetDepthInMainChainINTERNAL(pindexRet) > 0; } int GetBlocksToMaturity() const; bool AcceptToMemoryPool(bool fLimitFree=true);
----- 0.11
ScriptError GetScriptError() const { return error; }
– origin/0.11.2-wrapper -
Regarding opennames variables, leave them out, if they are not already in 0.11.2 code. They are defined in file included by much more files, than needed and generate bulks of error messages ‘variable defined, but not used’ Iv’e tried to remove the definitions wherever possible when trying to compile 0.11.2 last year.
-
@wrapper said in [Dev] Feathercoin 0.9.6.2 * Maintenance fix & Issues notes for 0.11.2:
After adding missing files / updating configure.ac :
src/qt/qrcodedialog.h and qrcodedialog.cpp
Compile fails at :
In file included from qt/addressbookpage.cpp:32:0:
qt/qrcodedialog.h:22:9: error: expected ‘:’ before ‘slots’
private slots:https://stackoverflow.com/questions/20185423/qt-cmake-missing-before-identifier-slots
Tried adding missing file : feathercoin.qrc
Created list of files Not in version 0.11.2 but in version 0.9.6.2 in ~/projects/Feathercoin :
diff -r ~/projects/Feathercoin ~/Feathercoin | grep ~/projects/Feathercoin > difference2.txt
To fix this error:
In file included from qt/addressbookpage.cpp:32:0:
qt/qrcodedialog.h:22:9: error: expected ‘:’ before ‘slots’
private slots:This was mine:
qt/qrcodedialog.h:22:9: error: expected ‘:’ before ‘slots’ private slots: ^ qt/qrcodedialog.h:22:9: error: ‘slots’ does not name a type
Open
qt/qrcodedialog.h:change line 22 from
private slots:
to
private Q_SLOTS:
https://forum.qt.io/topic/17952/slot-declaration-rare-problem-to-resolve-solved/2
-
0.11.2 build error
CXX qt/qt_libbitcoinqt_a-qrcodedialog.o qt/qrcodedialog.cpp: In member function ‘QString QRCodeDialog::getURI()’: qt/qrcodedialog.cpp:98:67: error: ‘FTC’ is not a member of ‘BitcoinUnits’ ret += QString("?amount=%1").arg(BitcoinUnits::format(BitcoinUnits::FTC, ui->lnReqAmount->value())); ^ Makefile:5151: recipe for target 'qt/qt_libbitcoinqt_a-qrcodedialog.o' failed make[2]: *** [qt/qt_libbitcoinqt_a-qrcodedialog.o] Error 1
go check src/qt/bitcoinunits.cpp and .h
easy fix
add relevant FTC eqivilants into bitcoinunits.h
enum Unit { MBTC, kBTC, BTC, mBTC, uBTC, MFTC, kFTC, FTC, mFTC, uFTC };
proper fix…edit both files …requires further understanding of the code for me.
-
@AcidD we should create and use a feathercoinunits.cpp/.h and use that instead
-
@Wellenreiter said in [Dev] Feathercoin 0.9.6.2 * Maintenance fix & Issues notes for 0.11.2:
@AcidD we should create and use a feathercoinunits.cpp/.h and use that instead
I agree and this is the same thing we need to look at for other changes during the review whilst moving to head.
The main reason is to make future merges less problematic. -
Can someone fork Bitcoin into the Feathercoin Github ?
@Wrapper you made a fair point a while back somewhere…if we properly fork from Bitcoin head and then do our commits we can easily pull in their fixes as well ?
-
@AcidD Yes, thats the job I call “Going to Head” !
-
Getting this message opening the debug.log in 0.11.2
The file /home/tony/.feathercoin/debug.log was opened with UTF-8 encoding but contained invalid characters.
It is set to read-only mode, as saving might destroy its content.
Either reopen the file with the correct encoding chosen or enable the read-write mode again in the tools menu to be able to edit it. -
@wrapper said in [Dev] Feathercoin 0.9.6.2 * Maintenance fix & Issues notes for 0.11.2:
Getting this message opening the debug.log in 0.11.2
The file /home/tony/.feathercoin/debug.log was opened with UTF-8 encoding but contained invalid characters.
It is set to read-only mode, as saving might destroy its content.
Either reopen the file with the correct encoding chosen or enable the read-write mode again in the tools menu to be able to edit it.When writing to the Debug log, does 0.11.2 leave comments that are written by @lizhi and therefore uses a different character encoding?
-
https://bter.com/trade/ftc_btc
Is running Feathercoin 0.9.3.2
-
@AcidD said in [Dev] Feathercoin 0.9.6.2 * Maintenance fix & Issues notes for 0.11.2:
When writing to the Debug log, does 0.11.2 leave comments that are written by @lizhi and therefore uses a different character encoding?
Server Hosted in Luxemberg + FTC = BTER
-
Issue Notes :
Whilst syncing a (fresh blockchain database/wallet) Feathercoin 0.11.2-dev , mouse over the exclamation mark next to Balances . says Bitcoin
QRCodes did not work - need review after merge complete
Check : Transaction fee set to 0.00001 FTC/kB
Sign message - tool tip on Advanced menu option - Verify message sign message tab says bitcoin
Verify message - tool tip on Advanced menu option - Verify message - Verify message tab says bitcoin
Advanced / Options / Wallet : Check default coin control settings are correct
There are quite a few changes made to the wallet structure, the standard bitcoin connection animation looks Ok. opennames is missing.
@AFB helped to do some fiddling to bring in all the improvements we did into 0.11.2 , possibly make a couple more icons / update some bad new forms.
There is another test (that would help us move to head) - Fork Bitcoin, checkout 0.11 last version - merge ftc 0.11.2
Update autoconfig.sh to test for zxing Directory e.g. :
if [ ! -d “$DIRECTORY” ]; then
# Control will enter here if $DIRECTORY doesn’t exist.
fiUpdate Re-Indexing message to be more friendly / informative? (when you upgrade)
Why do we have uFTC and mFTC surely DecaFTC is more logical?? (needs review)
Test and document Smart contracts.
Smart contracts is just a form, review and remove, smart contract form.
SX search for stealth coins not included.
find not utf-8 characters grep -axv ‘.*’ main.cpp
propose launch option shrink debug file :
Add -shrinkdebuglog to the options you use to start feathercoin, or add shrinkdebuglog=1 to your feathercoin.conf. Every startup, if the log is larger than 1MB, it will shrink it to 200KB.
wallet.cpp change control :
// TODO: fix handling of ‘change’ outputs. The assumption is that any
// payment to a script that is ours, but is not in the address book
// is change. That assumption is likely to break when we implement multisignature
// wallets that return change back into a multi-signature-protected address;
// a better way of identifying which outputs are ‘the send’ and which are
// ‘the change’ will need to be implemented (maybe extend CWalletTx to remember
// which output, if any, was change).Fri, 12 September 2014 16:29:30 -0400 build date incorrect, debug information @wellenreiter
Add these dependencies to FTC unix build docs :
libevent-2.0-5 libevent-dev libevent-extra-2.0-5 libevent-openssl-2.0-5 libevent-pthreads-2.0-5LogPrintf(" (no) space error(s)
Enter multisync, new address, press ok with no address. – Incorrect error message.
The entered address “” is not a valid Bitcoin address.Multisig page, - verify message button - not connected to anything …
Update the openSSL version used / review : OpenSSL 1.0.2g 1 Mar 2016
Re-Integrate updated Documents from 0.9.6.2
Review MAN pages - copied in from 0.9.6.1 because 0.11.2 MANs were deleted. need review against Bitcoin 0.11.1
src/qt/forms/debugdialog.ui - Reused form SX form and menu options need reapplying.
feathercoin.qrc has not been implemented in 0.11 - being worked on as part of merge
Icons are missing, test icons - being tested / brought in as part of merge
https://github.com/litecoin-project/litecoin/pull/362 SSE2 Litecoin enhancement.
https://uk.mathworks.com/matlabcentral/answers/93455-what-is-the-sse2-instruction-set-how-can-i-check-to-see-if-my-processor-supports-it?requestedDomain=www.mathworks.comACP is not working in 0.11
openssl version and future use review :
https://github.com/peercoin/peercoin/commit/3320650372750068dff45193603d17998a975117 -
@wrapper we should group these notes and create issues directly on github.
Otherwise it is duplicated work -
I agree, I’ll move them to issues, these are notes while I investigate.
I’ve also created a pull list on Github so we can discuse which and how we pull the missing commits from 0.9.6.2 and, opennames. We can use the experience to to pull in further changes from head.
https://github.com/FeatherCoin/Feathercoin/pull/201
The pull can be used to identify which don’t need or need more icons etc as we agreed, the project will be used to document pulling them in.
-
Need to use cherry pick and meld.
Try git imerge a try: that will apply your commits one by one, giving you the chance to do a rebase incrementally (meaning you can start a rebase, interrupt it, resume it later!).You can see here a comparison between Incremental merge vs. direct merge vs. rebase :
http://softwareswirl.blogspot.co.uk/2013/05/incremental-merge-vs-direct-merge-vs.html
https://stackoverflow.com/questions/18162930/how-can-i-find-out-which-git-commits-cause-conflicts
-
Testing 0.11.2 re-indexing database after it was viewed by 0.9.6.1
Crashed twice with : /feathercoin-qt Segmentation fault
seems to have carried on after restart. tbc
-
@wrapper check the build-aux/m4/ax_boost-base for the version.
it is 1.58 in bitcoin code, 1.54 should be ok, too, but I’ve set it to >1.20 to support older OS. We may have to increase that back to >= 1.54 -
I’m setting up a test environment. I’ll repeat the test (viewing 0.11 database with 0.9.6.2) after I’ve resynced and, this time, saved uncorrupted / synced 0.11.2 database
-
Merging commits from 0.9.6.2 to 0.11.2 procedure
Install a mergetool. On Linux, meld:
sudo apt-get install meld
Configure your mergetool:
git config --global merge.tool meld
Then, iterate in the following way:
git cherry-pick .... git mergetool git cherry-pick --continue