[Dev] Feathercoin 0.9.6.2 * Maintenance fix, build & upgrade issues notes.
-
according to the piece of code you copied it should be ok.
If clientversion.h is patched in the qt-directory, it uses the values defined by the confiugure script and we only have one place to change the version numbers -
@Wellenreiter and I have been working on the sendAlert call which is used to send alerts across the Feathercoin Network.
I Believe we’ve solved this. Wellenreiter was able to send an alert over the TestNet and he received it on his node.
There was an issue with one of the blocks on the testnet so that’s just being fixed…one that’s done I should hopefully be able to connect to the TestNet Node Wellenreiter set up and receive his test message.
Then we can apply the same patch to prod. :)
-
Just a note to double check FTC code for this issue LTC #293 - List of FTC custom settings?
https://github.com/litecoin-project/litecoin/blob/master/src/main.cpp#L4161
main.cpp nCheckDepth #293
In the code it says
nCheckDepth = 1000000000; // suffices until the year 19000But Litecoin is 4x faster then Bitcoin.
The note should say “until the year 4750”or should the nCheckDepth be changed into 4000000000 s
https://github.com/litecoin-project/litecoin/issues/293#issuecomment-285490529
-
Release of New Feathercoin Wallet version 0.9.6.1
@Wellenreiter has started to lock down the code for the release of version 0.9.6.1.
Reviewed outstanding document updates and policy.
The FTC software settings, naming conventions and software development fork procedure showed that a lot of work is need to up keep Feathercoin name interface changes. Some changes such as comments, or where Feathercoin operates the same as Bitcoin core are unnecessary. How to handle files in the future for cherry pick or updates from head were discussed.
/doc /doc/release-notes
ToDo :
-
Include Feathercoin 0.9.6.1 release notes
-
Create Beta test builds / Window / MAC etc
-
Review - update Wallet guide, MultiSig is an important, but complex update, needs better screen shots / help text.
https://github.com/wrapperband/FeathercoinWalletGuide#multisig-button
* Review / consider - Include 5, 7 name Multisignature addresses i.e do further update
* Multisig: A beginner’s guide
https://99bitcoins.com/multisig-a-beginners-guide/-
Note : 0.9.6.1 will be a long term version, compatible as a wallet with 0.11. The most usefull cases for Multisig, once you have got over the learning curve, is for more names, and say 3 out of 5, so there is redundancy for fund handling or other open source management / DAO criteria.
-
Review wither to including Feathercoin Wallet Guide in release
-
-
@wrapper said in [Dev] Feathercoin 0.9.6.1 * Bug fix & issues notes for 0.11:
Review wither to including Feathercoin Wallet Guide in release
I’d prefer to just include a link to the online guilde in the wallet-GUI. it gives more flexibility and enables us to update/enhance the guide without releasing new versions of the Wallet
-
##- Please type your reply above this line -##
Email to shapeshiftJun 28, 2:54 AM MDT
Feathercoin has spent considerable bounties to include shapeshift, for over one year. We understood FTC was to be reinstated after you had some problems.
The next release is to be finalised within 5 days and it will then be about 6 months before it can be reinstated.Wrapper Admin FTC forum/dev
Hello from the ShapeShift.io Support Team!
Your request (64102) has been received and is being reviewed by our team. Please, only send in one ticket per issue - this is important to speed up your resolution time.
To ensure you get the best support possible please be sure you have included the ShapeShift deposit address and the TXID (or Hash) of your deposit(s).
ShapeShift Support is available 7 days a week from 11am-7pm EST. Support is available, but limited outside of those hours. Your request will be resolved within 3-4 days. -
@wrapper said in [Dev] Feathercoin 0.9.6.1 * Bug fix & issues notes for 0.11:
##- Please type your reply above this line -##
Email to shapeshiftJun 28, 2:54 AM MDT
Feathercoin has spent considerable bounties to include shapeshift, for over one year. We understood FTC was to be reinstated after you had some problems.
The next release is to be finalised within 5 days and it will then be about 6 months before it can be reinstated.Wrapper Admin FTC forum/dev
Hello from the ShapeShift.io Support Team!
Your request (64102) has been received and is being reviewed by our team. Please, only send in one ticket per issue - this is important to speed up your resolution time.
To ensure you get the best support possible please be sure you have included the ShapeShift deposit address and the TXID (or Hash) of your deposit(s).
ShapeShift Support is available 7 days a week from 11am-7pm EST. Support is available, but limited outside of those hours. Your request will be resolved within 3-4 days.I also sent SHapeShift an email a few weeks ago about adding Feathercoin back. I didnt get a direct response yet.
-
Incorrect setting of minimum fee #181
https://github.com/FeatherCoin/Feathercoin/issues/181In at least one place (in main.cpp) - FTC custom settings are required because of block time and reward scaling of Bitcoin parameters.
Further, whilst reviewing an emergency change, comparison should be made with the Litecoin setting, to ensure the further scaling of coin reward is reflected in the minimum fees.
This is very important as it is currently mode of failure of Bitcoin and we will be stuck with high fees till the next release.
v0.8 https://github.com/FeatherCoin/Feathercoin/blob/master-0.8/src/main.cpp
/** Fees smaller than this (in satoshi) are considered zero fee (for transaction creation) /
int64 CTransaction::nMinTxFee = 2000000;
/* Fees smaller than this (in satoshi) are considered zero fee (for relaying) */
int64 CTransaction::nMinRelayTxFee = 2000000;v0.9 https://github.com/FeatherCoin/Feathercoin/blob/0.9.6/src/main.cpp
/** Fees smaller than this (in satoshi) are considered zero fee (for transaction creation) /
int64_t CTransaction::nMinTxFee = 1000000; // Override with -mintxfee
/* Fees smaller than this (in satoshi) are considered zero fee (for relaying and mining) */
int64_t CTransaction::nMinRelayTxFee = 1000000;In 0.8 but not 0.9 main.cpp
// Feathercoin
// To limit dust spam, add nBaseFee for each output less than DUST_SOFT_LIMIT
BOOST_FOREACH(const CTxOut& txout, vout)
if (txout.nValue < DUST_SOFT_LIMIT)
nMinFee += nBaseFee;// Raise the price as the block approaches full
if (nBlockSize != 1 && nNewBlockSize >= MAX_BLOCK_SIZE_GEN/2)
-
Notes : Minimum fee issue / review
Review src/util.h 0.9.x
static const int64_t COIN = 100000000;
https://github.com/FeatherCoin/Feathercoin/blob/0.9.6/src/main.h
nBaseFee is the value you configure. In 0.9 default is 1000000 int64_t nMinFee = (1 + (int64_t)nBytes / 1000) * nBaseFee
Review main.cpp main.h 0.8.x
https://github.com/FeatherCoin/Feathercoin/blob/master-0.8/src/main.h
/** Dust Hard Limit, ignored as wallet inputs (mininput default) */ static const int64 DUST_HARD_LIMIT = 1000; // 0.00001 FTC mininput /** Dust Soft Limit, allowed with additional fee per output */ static const int64 DUST_SOFT_LIMIT = 100000; // 0.001 FTC
Litcoin related issues and updates (over Bitcoin)
Minimum Transaction Fee review
https://github.com/litecoin-project/litecoin/commit/3ce57329263cd347ada29172947b23dfc787e898
https://github.com/litecoin-project/litecoin/commit/378ff026d0fc5205b2e15d2c2b05534d013ef5c5
https://github.com/litecoin-project/litecoin/commits/0.8?after=9cffb23c2d48d47bb67df78ea1164738b41e8c9d+69
https://github.com/litecoin-project/litecoin/commit/f80351c3215014935c5836f7d90cc21af5fc0cdf
https://github.com/litecoin-project/litecoin/commit/72b4e39c092b03abc5495b908f671b2ca8fe03cd
https://github.com/litecoin-project/litecoin/commit/def3c9e53b20815c8eef0aef7c9315cdd4a889c6https://github.com/litecoin-project/litecoin/commit/70313dd1e7518d410dac30db4906aac4846520a7
-
https://litecoin.info/Transaction_fees
limitfreerelay 15,000 (Bytes)
Limit of free transactions the client will relay to other nodes per minute
mintxfee 0.001 (LTC)
Minimum fee per KB for non free transactions (creating)
minrelaytxfee 0.001 (LTC)
Minimum fee per KB for non free transactions (relaying)
mininput 0.00001 (LTC)
Wallet ignores smaller inputs
DUST_THRESHOLD 0.001 (LTC)
Minimum output to avoid an additional mintxfee charge per smaller output
blockmaxsize 1,000,000 (Bytes)
Maximum block size
blockminsize 0 (Bytes)
Minimum block size
blockprioritysize 17,000 (Bytes)
Size of the block reserved for highest-priority transactions (regardless the fee)
maxhighprioritytxsize 12,000 (Bytes)
Maximum size of a transaction to be eligible for highest-priority
-
Re : How should the FTC fees been set?
LTC was 4 times Faster than BTC, so fee level need to be 1/4 BTC to be proportional.
FTC had 4 times the amount of coins than LTC, so FTC fee need to be 1/16 of BTC value, or 1/4 LTC value.
It looks like LTC settled on 1/10 for ease of calculation and make fees lower than BTC.
In 0.6.x and 0.7.x FTC settled on 1/20 which make our fees slightly less than LTC, and is easier to code.
Our dust level needs to be reduced by same level (which has been done?)
-
Re : neoscrypt version. I was checking neoscrypt version as @Ghostlander had mentioned somewhere it may be out of date. / where to cherry pick from list
add Implemented ACP and neoscrypt
https://github.com/FeatherCoin/Feathercoin/commit/c8ca4c906144910c62acd34e23a4ed624c0fbf7d
https://github.com/ghostlander/nsgminer
ToDo :
add neoscrypt issue to 0.11 done
Create the where to cherry pick from list -
This issue can be closed : https://github.com/FeatherCoin/Feathercoin/issues/102
-
Testing the 0.9.6.2 updated GNU/ Linux Ubuntu example instructions, ready to pull into 0.11.2
Failed to build with error :
/usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:1087:4:
error: #error "You must build your code with position independent code if Qt was built with -reduce-relocations. " “Compile your code with -fPIC (-fPIE is not enough).”# error "You must build your code with position independent code if Qt was built with -reduce-relocations. "\
Tried : Adding -fPIC to CFAGS in makefile
git checkout 0.11.2 export CXXFLAGS="$CXXFLAGS -fPIC" make clean ./autogen.sh autoupdate ./configure --with-gui=qt5 --enable-tests=no --with-incompatible-bdb --enable-upnp-default --with-qrcode=yes --disable-hardening --enable-shared make
Gives error :
CXX qt/qt_libbitcoinqt_a-addressbookpage.o
qt/addressbookpage.cpp:32:26: fatal error: qrcodedialog.h: No such file or directory
#include “qrcodedialog.h”Someone else fixing it :
https://github.com/ctrlaltca/Cockatrice/commit/9cfb09cd5b25a01fb142d425ba70b77b89f65a09
https://github.com/Civil/cantata/commit/9a6d5464376d48cc4c4e37c37459bc8b8aa74ba1 -
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
-
Missing / changed files from Feathercoin 0.11 version compared to 0.9.6.2:
Results of synopsis of missing files / difference show :
Missing functionality.
Nameview
Stealth coins
Coinector
ShapeshiftMissing Icon Upgrade
Updated Translation files
Updated auto unit testsDetail of the differences - using difference2.txt
https://github.com/wrapperband/FTC-Wallet-Layout-Examples/blob/master/Develpment/difference2.txt
Two directories were compared using diff command :
diff -r ~/projects/Feathercoin ~/Feathercoin | grep ~/projects/Feathercoin > difference2.txt diff -r ~/projects/Feathercoin ~/Feathercoin | grep ~/projects/Feathercoin | awk '{print $4}' > difference3.txt
A number of files in these directories :
Only in : ~/projects/Feathercoin/contrib/
Only in ~/projects/Feathercoin/doc/
Only in ~/projects/Feathercoin/qa/
Only in ~/projects/Feathercoin/share/These files missing:
Only in ~/projects/Feathercoin/src: allocators.cpp
Only in ~/projects/Feathercoin/src: allocators.h
Only in ~/projects/Feathercoin/src: auxpow.cpp
Only in ~/projects/Feathercoin/src: auxpow.h
Only in ~/projects/Feathercoin/src: base40.h
Only in ~/projects/Feathercoin/src: bitcoin-config.hOnly in ~/projects/Feathercoin/src: core.cpp
Only in ~/projects/Feathercoin/src: core.h
Only in ~/projects/Feathercoin/src: crypter.cpp
Only in ~/projects/Feathercoin/src: crypter.h
Only in ~/projects/Feathercoin/src: db.cpp
Only in ~/projects/Feathercoin/src: db.h
Only in ~/projects/Feathercoin/src: feathercoin-cli.cpp
Only in ~/projects/Feathercoin/src: feathercoin-cli-res.rc
Only in ~/projects/Feathercoin/src: feathercoind.cpp
Only in ~/projects/Feathercoin/src: feathercoind-res.rcOnly in ~/projects/Feathercoin/src/json: json_spirit_reader.cpp
Only in ~/projects/Feathercoin/src/json: json_spirit_value.cpp
Only in ~/projects/Feathercoin/src/json: json_spirit_writer.cpp
Only in ~/projects/Feathercoin/src/json: LICENSE.txtOnly in ~/projects/Feathercoin/src/leveldb: AUTHORS
Only in ~/projects/Feathercoin/src/leveldb: NEWS
Only in ~/projects/Feathercoin/src/leveldb/port: README
Only in ~/projects/Feathercoin/src/leveldb: READMEOnly in ~/projects/Feathercoin/src/obj: .gitignore
Only in ~/projects/Feathercoin/src: obj-testOnly in ~/projects/Feathercoin/src/qt: bitcoinstrings.cpp
Only in ~/projects/Feathercoin/src/qt: coinnectordialog.cpp
Only in ~/projects/Feathercoin/src/qt: coinnectordialog.hOnly in ~/projects/Feathercoin/src/qt/forms: aboutdialog.ui
Only in ~/projects/Feathercoin/src/qt/forms: coinnectordialog.ui
Only in ~/projects/Feathercoin/src/qt/forms: opennamedialog.ui
Only in ~/projects/Feathercoin/src/qt/forms: shiftdialog.ui
Only in ~/projects/Feathercoin/src/qt/locale: bitcoin_de_AT.ts
Only in ~/projects/Feathercoin/src/qt: Makefile.am
Only in ~/projects/Feathercoin/src/qt: monitoreddatamapper.cpp
Only in ~/projects/Feathercoin/src/qt: monitoreddatamapper.h
Only in ~/projects/Feathercoin/src/qt: shiftdialog.cpp
Only in ~/projects/Feathercoin/src/qt: shiftdialog.hOnly in ~/projects/Feathercoin/src/qt/res: feathercoin-qt-res.rc
Only in ~/projects/Feathercoin/src/qt/res: fonts
Moved?
Only in ~/projects/Feathercoin/src: rpcdump.cpp
Only in ~/projects/Feathercoin/src: rpcwallet.cpp
Only in ~/projects/Feathercoin/src: script.cpp
Only in ~/projects/Feathercoin/src: script.h
Only in ~/projects/Feathercoin/src: stealth.cpp
Only in ~/projects/Feathercoin/src: stealth.h
Only in ~/projects/Feathercoin/src: version.cpp
Only in ~/projects/Feathercoin/src: wallet.cpp
Only in ~/projects/Feathercoin/src: walletdb.cpp
Only in ~/projects/Feathercoin/src: walletdb.h
Only in ~/projects/Feathercoin/src: wallet.hImages and icons
Only in ~/projects/Feathercoin/src/qt/res: feathercoin-qt-res.rc
Only in ~/projects/Feathercoin/src/qt/res: fontsBinary files ~/projects/Feathercoin/src/qt/res/icons/bitcoin.icns and ~/Feathercoin/src/qt/res/icons/bitcoin.icns differ
Binary files ~/projects/Feathercoin/src/qt/res/icons/bitcoin.png and ~/Feathercoin/src/qt/res/icons/bitcoin.png differOnly in ~/projects/Feathercoin/src/qt/res/icons: bitcoin_testnet.ico
Only in ~/projects/Feathercoin/src/qt/res/icons: bitcoin_testnet.png
Only in ~/projects/Feathercoin/src/qt/res/icons: coinnector.png
Only in ~/projects/Feathercoin/src/qt/res/icons: shapeshift.png
Only in ~/projects/Feathercoin/src/qt/res/icons: toolbar_testnet.png
Only in ~/projects/Feathercoin/src/qt/res/images: about.1.png
Only in ~/projects/Feathercoin/src/qt/res/images: about_bitcoin.pngBinary files ~/projects/Feathercoin/src/qt/res/images/about.png and ~/Feathercoin/src/qt/res/images/about.png differ
Only in ~/projects/Feathercoin/src/qt/res/images: coinnector.png
Only in ~/projects/Feathercoin/src/qt/res/images: LOGO_b.png
Only in ~/projects/Feathercoin/src/qt/res/images: LOGO_b_sm.png
Only in ~/projects/Feathercoin/src/qt/res/images: LOGO_dg.png
Only in ~/projects/Feathercoin/src/qt/res/images: LOGO_g.png
Only in ~/projects/Feathercoin/src/qt/res/images: LOGO_g_sm.png
Only in ~/projects/Feathercoin/src/qt/res/images: LOGO.png
Only in ~/projects/Feathercoin/src/qt/res/images: mainbg.grey.1.png
Only in ~/projects/Feathercoin/src/qt/res/images: mainbg.png
Only in ~/projects/Feathercoin/src/qt/res/images: mainbg.shade.2.png -
Only in ~/projects/Feathercoin/src/qt/res/images: mainbg.white.3.pngBinary files ~/projects/Feathercoin/src/qt/res/images/paper_wallet.png and ~/Feathercoin/src/qt/res/images/paper_wallet.png differ
Only in ~/projects/Feathercoin/src/qt/res/images: splash.png
Only in ~/projects/Feathercoin/src/qt/res/images: splash_testnet.pngOnly in ~/projects/Feathercoin/src/qt/res: src
-
qttools5-dev dependency : needs adding to the new FTC build instructions in 0.9.6.2 /doc
for moving to 0.11… -
@wrapper said in [Dev] Feathercoin 0.9.6.2 * Maintenance fix & Issues notes for 0.11.2:
Tried : Adding -fPIC to CFAGS in makefile
I’ve modified configure.ac to add -fpic to CXXFLAGS and CFLAGS
The later is required to compile neoscrypt with --disable static --enable shared:if test x$use_hardening != xno; then AX_CHECK_COMPILE_FLAG([-Wstack-protector], HRDENED_CXXFLAGS="$HARDENED_CXXFLAGS -Wstack-protector"]) AX_CHECK_COMPILE_FLAG([-fstack-protector-all],[HARDENED_CXXFLAGS="$HARDENED_CXXFLAGS -fstack-protector-all"]) AX_CHECK_COMPILE_FLAG([-fPIE],[HARDENED_CXXFLAGS="$HARDENED_CXXFLAGS -fPIE"]) AX_CHECK_COMPILE_FLAG([-fPIC],[HARDENED_CXXFLAGS="$HARDENED_CXXFLAGS -fPIC" && CFLAGS="$CFLAGS -fPIC"])
That way the flags are set only, if the code is hardened.
-
Lizhis 0.11 build Guide : https://forum.feathercoin.com/topic/8246/guides-how-to-compile-feathercoin-core-0-11-1-on-linux
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-5
-
on 0.11.2
when building with this configure command
I got here:
qt/walletmodel.cpp: In member function ‘WalletModel::SendCoinsReturn WalletModel::createRawTransaction(const QList<SendCoinsRecipient>&, CTransaction&, const CCoinControl*, bool)’: qt/walletmodel.cpp:978:134: error: invalid initialization of non-const reference of type ‘int64_t& {aka long int&}’ from an rvalue of type ‘int64_t {aka long int}’ bool fCreated = wallet->CreateRawTransaction(vecSend, txNew, nFeeRequired, strFailReason, isMultiSig, reservekey, coinControl); ^ In file included from qt/walletmodel.cpp:19:0: ./wallet/wallet.h:779:10: note: initializing argument 3 of ‘bool CWallet::CreateRawTransaction(const std::vector<std::pair<CScript, long int> >&, CTransaction&, int64_t&, std::__cxx11::string&, bool, CReserveKey&, const CCoinControl*)’ bool CreateRawTransaction(const std::vector<std::pair<CScript, int64_t> >& vecSend, CTransaction& txNew, ^ Makefile:5069: recipe for target 'qt/qt_libbitcoinqt_a-walletmodel.o' failed