dash-docs/_releases/v0.7.0.md
David A. Harding 7d98f798ab
Upgrade to Jekyll 3.0
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
2016-01-06 23:09:56 -05:00

5.8 KiB

required_version optional_date title
0.7.0 2012-09-17 Bitcoin-Qt version 0.7.0 released

Bitcoin-Qt version 0.7.0 is now available for download at: http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.7.0/

We recommend that everybody running prior versions of bitcoind/Bitcoin-Qt upgrade to this release, except for users running Mac OSX 10.5.

Please report bugs using the issue tracker at github: https://github.com/bitcoin/bitcoin/issues

Project source code is hosted at github; you can get source-only tarballs/zipballs directly from there: https://github.com/bitcoin/bitcoin/tarball/v0.7.0 # .tar.gz https://github.com/bitcoin/bitcoin/zipball/v0.7.0 # .zip

Ubuntu Linux users can use the "Personal Package Archive" (PPA) maintained by Matt Corallo to automatically keep bitcoin up-to-date. Just type sudo apt-add-repository ppa:bitcoin/bitcoin sudo apt-get update in your terminal, then install the bitcoin-qt package: sudo apt-get install bitcoin-qt

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 were running on Linux with a version that might have been compiled with a different version of Berkeley DB (for example, if you were using the PPA and are switching to the binary release), then run the old version again with the -detachdb argument and shut it down; if you do not, then the new version will not be able to read the database files and will exit with an error.

Incompatible Changes

  • Replaced the getmemorypool RPC command with getblocktemplate/submitblock and getrawmempool commands.
  • Remove deprecated RPC getblocknumber

Bitcoin Improvement Proposals implemented

BIP 22 - getblocktemplate, submitblock RPCs BIP 34 - block version 2, height in coinbase BIP 35 - mempool message, extended getdata message behavior

Core bitcoin handling and blockchain database

  • Reduced CPU usage, by eliminating some redundant hash calculations
  • Cache signature verifications, to eliminate redundant signature checks
  • Transactions with zero-value outputs are considered non-standard
  • Mining: when creating new blocks, sort 'paid' area by fee-per-kb
  • Database: better validation of on-disk stored data
  • Database: minor optimizations and reliability improvements
  • -loadblock=FILE will import an external block file
  • Additional DoS (denial-of-service) prevention measures
  • New blockchain checkpoint at block 193,000

JSON-RPC API

  • Internal HTTP server is now thread-per-connection, rather than a single-threaded queue that would stall on network I/O.
  • Internal HTTP server supports HTTP/1.1, pipelined requests and connection keep-alive.
  • Support JSON-RPC 2.0 batches, to encapsulate multiple JSON-RPC requests within a single HTTP request.
  • IPv6 support
  • Added raw transaction API. See https://gist.github.com/2839617
  • Added getrawmempool, to list contents of TX memory pool
  • Added getpeerinfo, to list data about each connected network peer
  • Added listaddressgroupings for better coin control
  • Rework getblock call.
  • Remove deprecated RPC getblocknumber
  • Remove superceded RPC getmemorypool (see BIP 22, above)
  • listtransactions output now displays "smart" times for transactions, and blocktime and timereceived fields were added

P2P networking

  • IPv6 support
  • Tor hidden service support (see doc/Tor.txt)
  • Attempts to fix "stuck blockchain download" problems
  • Replace BDB database "addr.dat" with internally-managed "peers.dat" file containing peer address data.
  • Lower default send buffer from 10MB to 1MB
  • proxy: SOCKS5 by default
  • Support connecting by hostnames passed to proxy
  • Add -seednode connections, and use this instead of DNS seeds when proxied
  • Added -externalip and -discover
  • Add -onlynet to connect only to a given network (IPv4, IPv6, or Tor)
  • Separate listening sockets, -bind=<addr>

Qt GUI

  • Add UI RPC console / debug window
  • Re-Enable URI handling on Windows, add safety checks and tray-notifications
  • Harmonize the use of ellipsis ("...") to be used in menus, but not on buttons
  • Add 2 labels to the overviewpage that display Wallet and Transaction status (obsolete or current)
  • Extend the optionsdialog (e.g. language selection) and re-work it to a tabbed UI
  • Merge sign/verify message into a single window with tabbed UI
  • Ensure a changed bitcoin unit immediately updates all GUI elements that use units
  • Update QR Code dialog
  • Improve error reporting at startup
  • Fine-grained UI updates for a much smoother UI during block downloads
  • Remove autocorrection of 0/i in addresses in UI
  • Reorganize tray icon menu into more logical order
  • Persistently poll for balance change when number of blocks changed
  • Much better translations
  • Override progress bar design on platforms with segmented progress bars to assist with readability
  • Added 'immature balance' display on the overview page
  • (Windows only): enable ASLR and DEP for bitcoin-qt.exe
  • (Windows only): add meta-data to bitcoin-qt.exe (e.g. description)

Internal codebase

  • Additional unit tests
  • Compile warning fixes

Miscellaneous

  • Reopen debug.log upon SIGHUP
  • Bash programmable completion for bitcoind(1)
  • On supported OS's, each thread is given a useful name