Gemfile: - Upgrade to Jekyll 3.x (3.0.1 tested). This brings several new features I want to use, most notably *collections* which allows us to add blog-like collections. I've converted the `_releases` and `_alerts` pages into collections, although their plugins are maintained to handle the Download and Active Alert features. - Upgrade to latest Kramdown. - Lock Less at 2.4.0. This prevents breaking our Less plugin. Jekyll 3.x provides native support for SCSS, so we may want to switch to that in time. - Lock HTML Proofer at 2.1.0. The most recent version was taking forever to check our pages (I never actually got it to complete). I'll look into it when I get more time. Makefile: - New `make clean` command. Jekyll 3.x by default attempts to do incremental rebuilds. The new `jekyll clean` command cleans up the metadata necessary for than so that a full build is performed, and this new `make clean` command is a wrapper around it so that we automatically do full rebuilds in the relevant cases. Note: our plugins aren't fully compatible with the incremental rebuilds, but I'd like to fix that in the future. - Remove WEBrick hack to enable previewing with default URL paths (/ instead of /index.html). - Filter out compliants from Rouge README.md: - Now that Alerts (_alerts) are part of a collection, the file names are no longer parsed for dates, so instructions on adding the date to the YAML metadata have been added. _alerts/*: - Now that alerts are part of a collection, the file names are no longer parsed to provide dates, so a `date:` field has been added to the YAML metadata. _config.yml: - Some variables renamed per upgrade instructions. - Switched from old default syntax highlighter Pygments to new default Rouge. I tried to use Rouge options to keep new output as similar to old output as possible to making diffing easy, but Rouge adds extra CSS class info. - Move `_alerts` and `_releases` into Jekyll 3.x "collections", which provide the organizational features we were using plugins to manange. I haven't removed the old plugins because we still use some of their features (alerts.rb provides active issue and banner features; releases.rb provides info to Download page) - _layouts/* can no longer provide default global metadata; that is now provided in the new `defaults:` section in _config.yml. _layouts/*: - Default metadata can no longer be provided in the layout files for collections, so I've removed it and left a message to see _config.yml. _plugins/*: - Remove filter_for.rb. It's completely broken on Jekyll 3.x because of changes to Liquid which prevent adding new arguments to the inherited Liquid::For class. Existing uses of filter_for have been migrated to built-in for loops prefaced by sorts. - Remove remove-html-extension.rb: at it said in the comments, this was a temporary hack to get us to Jekyll 3.0. _releases/*: - Rename all the files: prefix a v to the file name so the output html (e.g. v10.0.0.html) is the same as the source filename (e.g. v10.0.0.md). This is necessary to migrate them to a Jekyll collection. - Remove %v from titles: we have to explicitly set the title, like we used to. Again required for migration to collections. _templates/events.html & en/rss/events.rss: - Sort events by date and then loop with regular for loop rather than filter_for en/alerts.html & en/rss/alerts.rss: - Sort alerts by date and then loop with regular for loop rather than filter_for en/bitcoin-core/index.md & en/version-history.html & en/rss/releases.rss: - Sort alerts by date and then loop with regular for loop rather than filter_for
3 KiB
required_version | optional_date | title |
---|---|---|
0.8.4 | 2013-09-03 | Bitcoin-Qt version 0.8.4 released |
Bitcoin-Qt version 0.8.4 is now available from: http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.8.4/
This is a maintenance release to fix a critical bug and three security issues; we urge all users to upgrade.
Please report bugs using the issue tracker at github: https://github.com/bitcoin/bitcoin/issues
How to Upgrade
If you are running an older version, shut it down. Wait until it has completely shut down (which might take a few minutes for older versions), then run the installer (on Windows) or just copy over /Applications/Bitcoin-Qt (on Mac) or bitcoind/bitcoin-qt (on Linux).
If you are upgrading from version 0.7.2 or earlier, the first time you run 0.8.4 your blockchain files will be re-indexed, which will take anywhere from 30 minutes to several hours, depending on the speed of your machine.
0.8.4 Release notes
Security issues
An attacker could send a series of messages that resulted in an integer division-by-zero error in the Bloom Filter handling code, causing the Bitcoin-Qt or bitcoind process to crash. Bloom filters were introduced with version 0.8, so versions 0.8.0 through 0.8.3 are vulnerable to this critical denial-of-service attack.
A constant-time algorithm is now used to check RPC password guess attempts; fixes https://github.com/bitcoin/bitcoin/issues/2838 (CVE-2013-4165)
Implement a better fix for the fill-memory-with-orphan-transactions attack that was fixed in 0.8.3. See https://bitslog.wordpress.com/2013/07/18/buggy-cve-2013-4627-patch-open-new-vectors-of-attack/ for a description of the weaknesses of the previous fix. (CVE-2013-4627)
Bugs fixed
Fix multi-block reorg transaction resurrection.
Fix non-standard disconnected transactions causing mempool orphans. This bug could cause nodes running with the -debug flag to crash.
OSX: use FD_FULLSYNC
with LevelDB, which will (hopefully!)
prevent the database corruption issues many people have
experienced on OSX.
Linux: clicking on bitcoin: links was broken if you were using a Gnome-based desktop.
Fix a hang-at-shutdown bug that only affects users that compile their own version of Bitcoin against Boost versions 1.50-1.52.
Other changes
Checkpoint at block 250,000 to speed up initial block downloads and make the progress indicator when downloading more accurate.
Thanks to everybody who contributed to the 0.8.4 releases!
- Pieter Wuille
- Warren Togami
- Patrick Strateman
- pakt
- Gregory Maxwell
- Sergio Demian Lerner
- grayleonard
- Cory Fields
- Matt Corallo
- Gavin Andresen