Today we are releasing version 1.0 of Sia.
In accordance with SemVer, v1.0.0 will be our first stable release. Practically speaking, what this means is that the siad API will maintain backwards compatibility until v2.0.0. We will continue to add new routes and fields to the API, but we will not remove or modify existing routes or fields. Note that this "compatibility promise" does not extend to data stored on disk (such as the blockchain), but we intend to make future updates compatible with these files.
v1.0.0 (re)introduces automatic updates. When we release a new version, you may automatically update your
siacbinaries by running
siac update(although you should run
siac update checkfirst). All releases will be signed with the Sia developer key. In addition, all release tags will be signed by a core developer.
Going forward, we hope to see more people contributing to the development of Sia. If you are interested in contributing, check out our new guide, written by @mnsl.
At long last, we are ready to release Sia v0.6.0. We've made over 500 commits since our last release! As noted in the README, this version introduces significant changes to the renter and host. Renters must now set an allowance before uploading, and hosts must add storage folders.
To set an allowance, use
siac renter setallowance [funds] [period]. The period is in weeks; 1 week is approx. 1000 blocks. You will not be able to set the allowance until a minimum of 12 hosts are online. You can see the host list with
siac hostdb. Finally, to view the contracts you have formed, use
siac renter contracts.
Importantly, file contracts are not automatically renewed in this release. That means that your files can only be stored for a finite amount of time. After that, you'll need to reupload them. As such, we encourage beta testers to form short contracts and not upload critical data. We are working on automatic renewals now, and hope to include them in the next patch release (v0.6.1).
v0.6.0 is largely incompatible with v0.5.2. We apologize for the inconvenience.
This is a patch release that improves network performance. It also contains some siac tweaks.
This is a patch release that fixes a major performance bug introduced in v0.5.0 It also adds support for a new
--modulesflag, which allows the user to specify exactly which modules they would like to run. For example,
siad -M cghmrtwruns the standard profile, while
siad -M cgmtwruns a mining profile. The full list of modules is as follows:
Initial Module c consensus g gateway h host m miner r renter t transaction pool w wallet e explorer
Note that not all configurations are valid, because most modules depend on the presence of at least one other module. For example, you can't include
tas well. This flag is mainly intended for power users who wish to optimize for a specific purpose, such as mining, hosting, or running an explorer.
Finally, this release changes the behavior of
siac uploadto be consistent with Sia-UI, in that both will now set files to renew by default. This setting will be configurable in a future release.
Sia has matured greatly since our last stable release, v0.4.8. Over 500 commits were made by 5 contributers, including community contributor @mtlynch and our new employee @VoidingWarranties. The changes touched nearly every file in the codebase, adding features, patching bugs, and improving test coverage. The gist of it is:
- The API has been overhauled, especially the renter routes
- The renter supports folder structure now, allowing you to create subdirectories
- The renter can automatically renew file contracts without reuploading the file
- The renter can automatically repair files if their host goes offline
- The host more intelligently manages its contracts, reducing the likelihood of missed storage proofs
- The miner and wallet are mostly unchanged.
Remember, this release is expected to be somewhat unstable. Take precautions to protect your data by backing up your wallet passphrase and file (
wallet/wallet.json) and your .sia files (in the
renterdirectory). Patches to the v0.5.x release will address issues as they arise, so you are encourage to check for a new release if you are experiencing problems.
We look forward to seeing what you do with Sia!
This is a patch release that fixes compatibility issues introduced by v0.4.7.
Now that the hardfork block (21000) has passed, this patch removes support for pre-hardfork clients (v0.3.3.3 and earlier).
This is a patch release that addresses the last major database inconsistency bug. Users should no longer experience database inconsistency, even under heavy load. A bug in the renter was also fixed, which may resolve the issue some users had with files disappearing.
This release focuses on improving the reliability of uploads. Previously, it was possible for uploads to "stall out" and never reach 100% redundancy. As of v0.4.4, uploads will always complete (provided there are enough hosts, and coins to pay for the upload). To complement this improved reliability, Sia-UI has a new "Add Folder" feature that allows you to easily upload a whole directory of files.
One of our big goals for the next release is to actively monitor the health of files, and repair them as needed. This means reuploading pieces when their contracts are close to expiring, and moving pieces to new hosts if their current host is unresponsive.
Thanks to @mtlynch for his contributions to this release. After some lengthy discussion, he convinced us of the benefits of mocking and explicit dependencies, which we now intend to use across the Sia codebase.
This release fixes two prominent bugs:
- The database should corrupt far less frequently now. We consolidated many independent updates into one atomic update, which reduces the chance of corruption and also grants a noticeable speedup.
- The wallet can now be safely unlocked during IBD (initial block download, i.e. bootstrapping). Previously the wallet would hang indefinitely; now it will eventually unlock, though it may take up to a few minutes.
Also worth noting is that the Gateway is a little smarter now in terms of what IP addresses it will connect to (and accept connections from). This should make it easier for multiple nodes on the same IP address to bootstrap.
This release includes a few bugfixes. 'Siac' now supports sending siafunds. The host selection algorithm is now more sensitive to price, more heavily preferring cheaper hosts than previously. A bug in the host weighting algorithm was fixed. The hostdb now ignores local addresses. There is more logging.
This is the first minor release for v0.4. It contains mostly bugfixes; nothing major in terms of functionality.
- You can now advertise a custom address with
siac host announce mydomain.com. This solves the "dynamic IP problem" where hosts would advertise a dynamic IP address only for it to change soon after.
- The gateway now prunes its node list more aggressively. This should improve the overall health of the network (e.g. you should form new peer connections more quickly).
siagtool has been removed; no further updates to it are necessary. If you still need to use it, you can download binaries here.
I'd like to give a big shout out to @bitspill and @mtlynch, who contributed to this release! I can't tell you how cool it is to see members of the community pitching in to help us develop Sia. If you'd like to get involved yourself, check out our Issues page, and the #dev channel on our Slack.
- You can now advertise a custom address with
This release has been a long time coming -- over 500 commits in the making. But that means lots of new features! You can read the full summary in the README, but here's the tl;dr:
Feature: Wallets are now generated and encrypted using a seed phrase. So even if you lose your wallet file, you just need the phrase to recover it. Caveat: You can't use your old wallet.dat with the new client. You will need to send your v0.3.3.3 coins to a v0.4.0 address.
Feature: Files are now erasure-coded and transferred in parallel. Caveat: The host and renter use new protocols now, so you can't download a v0.3.3.3 file from v0.4.0. You may want to download your files from a v0.3.3.3 client and reupload them on v0.4.0. Also, the new download algorithm is slower than we'd like.
Feature: The blockchain is now fully on-disk, reducing memory usage. Caveat: The block database structure has changed, so you will need to redownload the blockchain. This may take anywhere from 10 minutes to 6 hours. Also, most operations are a lot slower now; siad can take up to a minute to start up.
Feature: Ports are now automatically forwarded if your router supports UPnP. Caveat: No real downside here, unless you really don't like UPnP. If so, you can disable it in your router.
Even more information: https://docs.google.com/document/d/1GbnU6Dw5za8QnQypivUagYSTJ3Fwaud_izbU3c-gxog
This release does not have an accompanying UI release (yet). This release of siad is not compatible with the current UI. We hope to release the next patch (v0.4.1) relatively soon after gathering feedback on v0.4.0. Thank you for your patience.
We said v0.3.3.2 was the last release before v0.4, but we had to sneak some last-minute fixes in. The most important ones are:
- Host announcements can now be "forced," i.e. you can bypass the connectivity check that prevents unreachable hosts from advertising themselves. (Some users reported that this check failed despite their ports being open.)
- Wallets can now be merged (siac only).
- Unresponsive addresses are now removed from the node list. This should result in faster peer acquisition.
The only change from the previous siag release is that siag addresses are all now displayed with checksums.