Feathercoin 0.8.5
-
There are some features on the horizon from Bitcoin 0.9 that Feathercoin will want to be a part of and while we innovate on our own we also want to keep abreast with the rest of the crypto currency world. To get us into a position to make best use of these features we are now creating a 0.8.5 release of Feathercoin. Once the basic work involved in moving Feathercoin 0.8.5 is complete the source code will be released and we can all pore over the code and test it together.
If you want to be more actively involved in the coding side of Feathercoin please let me know. I am happy to add people as collaborators to the Feathercoin 0.8.5 build while it goes through the transition. I am not making the repository public as we do not want people pulling from this build and using it in production. Allowing people access who explicitly ask for it is different as you know what it is about already.
-
Count me in. Not really a coder but i’m good at breaking stuff (read: bug finding ;) ). I can also test it from a daemon perspective on my pools (isolated server that testers can mine against etc).
-
What do we do ?
-
I’m not always available, but would try to help with, research, “global changes / donkey work”. Possible testing or helping NutNut (say) test remote to pool.
-
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.
-
nutnut’s the name - testing is the game! ;)
Is it stable(ish) enough for pool use? I’ll fire up a “live” prop pool that has valid payouts etc but will be noted as “BETA”. That way users can actually mine, get payed out, not worry about pplns and if it breaks, they can failover to their secondaries… Good way to test stratum connectivity and the hammering that daemons get in pool use. If it can survive a pool at diff 16 then happy days! I can also run in full debug… :D
-
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.