Feathercoin 0.8.5
-
What needs to be done for testing.
I’m not sure how I could help
I can set up a wallet and transfer FTE or use it as payout address for mining.
-
(These can be expanded from a one liner, depending on the complexity of changes.)
The normal software development procedure would be.
1. Functional outline for change or bug report.
2. Functional Specification.
3. Software Design.
4. Software construction, coding and compile testing, functional tests.
5. Software testing.
6. Software configuration management.There are a few other stages. These are the stages we need to document a procedures for, so forum members might see how they can fit in.
We already use Github for 6. Configuration Management, that’s a good place to start. I found it very enlightening to join that and learn how to set up QT to compile the code. It’s the place bugs should be posted.
Further reading…
https://en.wikipedia.org/wiki/Software_engineering
https://github.com/FeatherCoin/FeatherCoinI assume we are trying to promote agile programming, from how the development has proceded so far.
Agile programming entails such tactical details as, multi programmer coding, including tests in the code, quick release cycles.Also, perhaps in our case, as secure software providers, we should also have a permanent test net for experimental code, and invite attacks to that.
-
In order to get this version ( 0.8.5) to compile I had to install the libboost-dev meta package (v 1.53) over and above the normal libraries. Kubuntu 13.10 x64.
That’s on my personal PC, so I’d need to move my personal wallet to make a separate test version.
I will be able to set up a separate wallet once I install the libraries, and compile it on my 12.04 box / server tomorrow. I can then run a (test) client on that.
-
What improvements does v0.8 offer over v0.6?
-
I tried to read all the changes (to 0.8.5) but there were thousands, I didn’t count the pages, or get back to 0.6v.
I was thinking our only option is to report bugs back to the “change initiator”, via our test reports. There are too many changes to test each one.
We can do specific test where there might be a problem, high criticality. Where known maintenance action was taken by us (on Feathercoin specific code areas).
I’d consider…
1. List changes made to make this a Feathercoin version of 0.8.5
That won’t be tested by bitcoin and litecoin.
2. Get source compiled.
3. Set up a representative test system(s).
4. Review initial bugs
5. Develop and implement a general operation quick test matrix of major functionality.,
6. Develop ongoing Strategy.I think the next problem is how check any defaults/parameters that needs to be set for all the new functionality that might be available. I’ve looked into what could possibly be included, as even the changes are a bit cryptic. Anyway I have noticed development seems more open to discussion recently.
[quote]e.g. Warren on Litecoin Github
wtogami opened this pull request 3 days ago
Disconnect nodes older than protocol version 70002 (Litecoin 0.8.3.7)
No milestone
No one is assignedWhy disconnect older versions? A minority of users are failing to upgrade despite months of warnings. Older versions are not safe. The network as a whole will be healthier if everyone upgraded.
Deployment Plan
https://litecoin.info/Alerts Make alerts for protocol versions 70001 and earlier permanent.
Warn loudly on social media that older versions will soon no longer be able to connect to the network.Any objections?
[/quote] -
I found this guide of extra things to do, to get Feathercoin 0.8.5 compiled.
[url=http://bryogenic.com/tag/bitcoin/]http://bryogenic.com/tag/bitcoin/[/url]
Compilation error:
/usr/bin/ld: cannot find -lboost_system
/usr/bin/ld: cannot find -lboost_filesystem
/usr/bin/ld: cannot find -lboost_program_options
/usr/bin/ld: cannot find -lboost_thread
/usr/bin/ld: cannot find -lgthread-2.0Solutions (respectively) :
sudo apt-get install libboost-system-dev
sudo apt-get install libboost-filesystem-dev
sudo apt-get install libboost-program-options-dev
sudo apt-get install libboost-thread-dev
sudo apt-get install libglibmm-2.4-dev> I’ll get it compiled on my test system tomorrow, with the 12.04 libraries. I’ll be able to run a test wallet from there.
> I have also cpu miner set up on my personal pc, people are always wanting to cpu mine, I wonder if we could set the test system to be cpu useable (low difficulty?). I need my miner to mine “real coins”.
> The idea of a half way, public, test system, seems quite appealing. It would need to be focused initially, with tests people could complete, and tick as done. Maybe we could “cloud test”, 3 strikes and your in?
-
[quote name=“Bushstar” post=“32541” timestamp=“1382807396”]
Basic port of Feathercoin to 0.8.5 is complete. It build and appears to run :)For access please post your GitHub usernames here and I will add them to collaborators to this project.
[/quote]Thanks and looking forward to it!
-
Kevlar, I have now added you as collaborator.
I will get back to this project when I come back from Amsterdam. Kids were off school last week so I have not had much time.
-
[quote name=“Kevlar” post=“33279” timestamp=“1383601545”]
[quote author=Bushstar link=topic=4155.msg32541#msg32541 date=1382807396]
Basic port of Feathercoin to 0.8.5 is complete. It build and appears to run :)For access please post your GitHub usernames here and I will add them to collaborators to this project.
[/quote]Thanks and looking forward to it!
[/quote]Would be great, if you could add me, too.
I’m not a professional programmer, but have some experience with qt on Linux and I could help with translations, if needed and do some testing of course ;)
-
I have now added you to the GitHub repo.
Point to note, ACP and CAlert does not work in 0.8.5 seemingly due to changes in SSL so I removed them in this build. I will put these back in next and then look at why it is not happy. I hope to get on with this tomorrow whilst at the Knowmad’s Business School in Amsterdam.
Wrapper is correct, the number of changes in this release is very large. It is going to be a hard one to fully test with confidence. This will have to live in beta for some time but right now we can consider ourselves in alpha.
In my mind we want this to stay current with developments. We want to find our own path but we do not want to miss out either. There are a lot of tweaks and bug fixes in 0.8.5. Downloading the blockchain in 0.8.5 is very fast in comparison to what we see now.
Please backup your wallet before running 0.8.5. I would not use this client currently for sending coins right now. Only a basic port has been done so far.
-
[quote name=“Bushstar” post=“33370” timestamp=“1383688539”]
I have now added you to the GitHub repo.Point to note, ACP and CAlert does not work in 0.8.5 seemingly due to changes in SSL so I removed them in this build. I will put these back in next and then look at why it is not happy. I hope to get on with this tomorrow whilst at the Knowmad’s Business School in Amsterdam.
Wrapper is correct, the number of changes in this release is very large. It is going to be a hard one to fully test with confidence. This will have to live in beta for some time but right now we can consider ourselves in alpha.
In my mind we want this to stay current with developments. We want to find our own path but we do not want to miss out either. There are a lot of tweaks and bug fixes in 0.8.5. Downloading the blockchain in 0.8.5 is very fast in comparison to what we see now.
Please backup your wallet before running 0.8.5. I would not use this client currently for sending coins right now. Only a basic port has been done so far.
[/quote]I was going to ask about this tonight. I was reviewing the code and I came across the function definitions and declarations that looked like they might be related to ACP but then couldn’t actually find any reference to them. Question answered!
-
Good spot D2 :)
That seems to have slipped past quite a few people. I have updated the current and 0.8.5 build.
-
I thought maybe I can help some.
-
0.8 uses LevelDB for block chain only. There are ways to speed up block chain parsing for 0.6 with BerkeleyDB. In general, small block chains of a few hundred megabytes in size don’t benefit significantly from LevelDB.
-
There is no single selling point for 0.8.5 but the number of fixes overall and staying current is very appealing. We want to be in a position where we can easily make use of upstream innovations.
GitHub has been updated with full ACP and CAlert code. Right now this generates the following error which I will look into. I think this is to do with differences in the way that keys are handled. I have queried Sunny King about this to see if he is familiar with this.
[code]g++ -c -O2 -pthread -Wall -Wextra -Wformat -Wformat-security -Wno-unused-parameter -g -DBOOST_SPIRIT_THREADSAFE -D_FILE_OFFSET_BITS=64 -I/home/robert/Feathercoin-0.8.5/src -I/home/robert/Feathercoin-0.8.5/src/obj -DUSE_UPNP=0 -DUSE_IPV6=1 -I/home/robert/Feathercoin-0.8.5/src/leveldb/include -I/home/robert/Feathercoin-0.8.5/src/leveldb/helpers -DHAVE_BUILD_INFO -fno-stack-protector -fstack-protector-all -Wstack-protector -D_FORTIFY_SOURCE=2 -MMD -MF obj/rpcnet.d -o obj/rpcnet.o rpcnet.cpp
rpcnet.cpp: In function ‘json_spirit::Value makekeypair(const Array&, bool)’:
rpcnet.cpp:230:68: error: ‘class CPubKey’ has no member named ‘Raw’
rpcnet.cpp:232:45: error: ‘class CPubKey’ has no member named ‘Raw’
rpcnet.cpp:236:5: error: ‘CSecret’ was not declared in this scope
rpcnet.cpp:236:13: error: expected ‘;’ before ‘vchSecret’
rpcnet.cpp:238:63: error: ‘class CPubKey’ has no member named ‘Raw’
rpcnet.cpp:239:56: error: ‘vchSecret’ was not declared in this scope
rpcnet.cpp: In function ‘json_spirit::Value sendalert(const Array&, bool)’:
rpcnet.cpp:285:5: error: ‘CSecret’ was not declared in this scope
rpcnet.cpp:285:13: error: expected ‘;’ before ‘secret’
rpcnet.cpp:286:9: error: ‘class CKey’ has no member named ‘SetSecret’
rpcnet.cpp:286:19: error: ‘secret’ was not declared in this scope
make: *** [obj/rpcnet.o] Error 1[/code] -
Oh, where were we on QR support? Was that something going to be incorporated in the default client?
-
[quote name=“HopeStillFlies” post=“33901” timestamp=“1384292310”]
Oh, where were we on QR support? Was that something going to be incorporated in the default client?
[/quote]+1 I’d like this too.
-
[quote name=“HopeStillFlies” post=“33901” timestamp=“1384292310”]
Oh, where were we on QR support? Was that something going to be incorporated in the default client?
[/quote]I don’t understand this use case. How would that work exactly?
Do I point my external USB webcam at my screen (I don’t own one, all my machines have had built in web cams for the past 5 years that you actually can’t point at the screen without a mirror), so now you’re adding camera support to the client too? Who would do this, when they could just cut and paste the address? Or click on the feathercoin:// link? Or use the payment protocol?
Seems like a solution in search of a problem, but maybe I’m just missing the use case.
-
[quote name=“Kevlar” post=“33905” timestamp=“1384293806”]
[quote author=HopeStillFlies link=topic=4155.msg33901#msg33901 date=1384292310]
Oh, where were we on QR support? Was that something going to be incorporated in the default client?
[/quote]I don’t understand this use case. How would that work exactly?
Do I point my external USB webcam at my screen (I don’t own one, all my machines have had built in web cams for the past 5 years that you actually can’t point at the screen without a mirror), so now you’re adding camera support to the client too? Who would do this, when they could just cut and paste the address? Or click on the feathercoin:// link? Or use the payment protocol?
Seems like a solution in search of a problem, but maybe I’m just missing the use case.
[/quote]Multibit has it, it comes in handy at events say if you are charging for Beers you can just have the QR code on the screen and people can pay by scanning on their phones. It also has a copy/paste option for printout. I think it saves it to your drive as a PNG.
It’s just a convenience thing really, might be handy for merchants?
-
Yes on the merchant angle. For BTC at the video game shop if my boss goes to do a hand off he pastes the QR image for the unique BTC address he made for that transaction and when he goes to meet them and do the hand off, he just has the people do the transaction through the BTC client on their phone by snapping the QR code.
I mean, if there’s a 3rd party ftc address -> qr that worked you could always just direct people to that, it’s just convenient to have it in the client.