Hey guys, sorry for the let-down, but the new wallet is going to need another week. Here's a list of what's going to be available:
1. Erasure coding! All files are now uploaded to 12 hosts, and the full file can be recovered from any 2 hosts. The redundancy overhead is 6 (compared to the previous redundancy overhead of 8 ). 6 is still very high, twice the industry average. We're doing this because we don't want anyone losing their files, and we still feel that the network is in an early stage. As the network matures, we will continue to reduce the amount of redundancy overhead.
2. Parallel downloads, smarter uploads! Previously, files were downloaded from a single host, and speeds were limited to that host's upload bandwidth. Now, downloads are done in parallel.
3. Encrypted wallet! Previously, the wallet secret keys were kept unencrypted on disk. The keys are now encrypted on disk, and the wallet can be locked and unlocked to enable spending. When the wallet is unlocked, the keys are kept decrypted in memory. When the wallet is locked again, the memory gets wiped.
4. Wallet recovery seeds. All new addresses are now made from a single seed, which means that, as long as you have the seed, you can recover your addresses if you lose your wallet. Note that previously existing wallet addresses cannot be regenerated by a seed. If you want to enjoy the full protection of wallet seeds, you are going to need to send all of your coins to a seed-generated address.
5. Increased wallet safety. Previously, people had been losing coins because the wallet would sometimes get confused and obliterate addresses it had previously sent money to. This only happened when multiple instances of siad were running, or if the user started moving files around without closing siad first. But it still happened sometimes, and coins were lost as a result. Now, the wallet will never overwrite an existing file, and will never destroy addresses that have been saved to disk. The wallet will never give an address that isn't already saved to disk. Upgrading siad no longer puts your coins at risk.
5. Full wallet API, which means that Sia is now ready to be put on an exchange!
6. Siad uses a databse. Previously, the whole blockchain and output set was kept in memory. It has now been moved to disk. Siad's memory footprint is now around 40mb on Linux. Moving everything to disk made siad slower, but there are some pretty clear avenues to improve speeds. On an HDD (SSDs will be faster), it took me about 90 minutes to download the first 13,000 blocks.
7. Increased max filesize. The maximum filesize allowed by the client has been increased to 5GB. This is because of the more intelligent uploading and downloading algorithms, and the more intelligent host protocols.
8. Refreshed UI. While the UI looks very similar to how it did previously, the architecture has been completely re-written. Most importantly, strong plugin support has been added, which makes it easy for developers to write their own plugins for the UI that use Siad or even talk to other daemons. People who have been excited about things like a Sia-based video streaming now have a platform on which to build such a thing.
I think that covers all of the major changes that will be available in the next release. There have also been a handful of bugfixes that are being released. We are planning on adding support for tracking and uploading folders in 0.4.1, which should be released a week or two after 0.4.0.
Thanks for hanging tight.
As a reminder, everything that we've written to date is open source. The code for Siad can be found here:
https://github.com/NebulousLabs/SiaThe related projects and libraries that we've built (such as the UI) can be found here:
https://github.com/NebulousLabsSo #8 With the release of version 0.4.0 it is possible to build a youtube style service? 5GB max filesize for the time being is really enough for all youtube content even 4K this is really awesome!
Perhaps we the community should setup a bounty for such an app? Surely we can get enough donations for a nice bounty for someone to code that and your team to review and approve it? Taek how much you estimate roughly in days would it take someone to code that?