Bitmessage Changelog

What's new in Bitmessage 0.6.3.2

Aug 2, 2018
  • This version is an update on 0.6.3 with a more strict exploit mitigation code. Users of 0.6.2 should either upgrade to 0.6.3.2 or downgrade to 0.6.1.
  • February 16th: Windows binary available, signed both with a code signing key and a GPG key. Note: there won't be a 64bit Windows binary for 0.6.3.2 due to a lack of time. The new network subsystem has significantly improved CPU and memory requirements so you shouldn't be running low on memory even with the 32bit binary.

New in Bitmessage 0.6.2 Beta (Mar 3, 2017)

  • Usability:
  • many minor usability improvements, in particular helpful for beginners
  • get rid of confusing log messages
  • improved feedback when busy during shutdown
  • UI feedback when problems with proxy
  • UI feedback when local time is wrong
  • UI feedback when C PoW module is not available
  • folder loading performance improved
  • translations updated
  • chan join/create interface redesigned
  • can select OpenCL vendor if multiple are available (previously it would have crashed)
  • locale initialisation fixes
  • contact support form and About dialog show the GIT head
  • added setup.py (setuptools) for easier installation
  • gentle warning if sending to a chan with a too low TTL
  • message retransmit timing now works as the description
  • Fixes:
  • networking subsystem stability fixes
  • multiprocessing python PoW fixed
  • message parser fixes
  • many smaller fixes
  • OpenBSD listening socket fix (works IPv4-only mode instead of not at all)
  • Backend:
  • try to auto-build PoW module
  • networking subsystem performance improvements
  • refactoring of configuration interface, inventory, downloading and uploading tracking, known nodes and other minor parts
  • refactoring to reduce circular imports and global variables
  • support for OpenSSL 1.1.0 and LibreSSL
  • some network parameters configurable, but mostly only through directly editing keys.dat
  • network settings allow an optimised bootstrap provider mode
  • Developers:
  • extended encoding available for testing. Use it by holding Shift while clicking on Send
  • extended encoding can be extended by adding new classes to the "messagetypes" directory
  • directory structure reorganisation to get rid of obsolete code
  • Windows:
  • improved error handling
  • separate Makefile for Microsoft Visual C++
  • pyinstaller spec file updated
  • 64bit binary does not require MSVC Redistributable 2012 anymore and is mostly built with mingw instead of MSVC
  • updated Python to 2.7.13 and OpenSSL to 1.0.2j/1.0.2k
  • Infrastructure:
  • 3 additional bootstrap nodes
  • new server for building/testing
  • transifex webhooks automate translation workflow
  • integration with landscape.io for code quality checking

New in Bitmessage 0.6.1 Beta (Aug 22, 2016)

  • Translation update and localization fixes
  • Minor bug fixes
  • Minor UI improvements
  • Namecoin integration fixed and improved
  • SMTP server and client interface
  • Tor hidden service support
  • C PoW builds and runs on *BSD
  • Windows binary:
  • fixed build
  • upgraded to Python 2.7.12 and OpenSSL 1.0.2h
  • 64bit binary available for download
  • self-built PyInstaller bootloader should trigger fewer antivirus false positives

New in Bitmessage 0.6.0 Beta (Jun 2, 2016)

  • QT interface overhaul
  • Opportunistic TLS support
  • Mitigation of some deanonymisation attacks
  • C (using OpenSSL) and OpenCL PoW modules
  • Performance improvements (backend as well as QT GUI)
  • UPnP support
  • Improved bootstrapping over Tor
  • Translation updates
  • Lots of tiny bugfixes and some minor security improvements
  • Integration of mailchuck.com email gateway

New in Bitmessage 0.4.4 Beta (Jun 2, 2016)

  • Added ability to limit network transfer rate
  • Updated to Protocol Version 3
  • Removed use of memoryview so that we can support python 2.7.3
  • Make use of l10n for localizations

New in Bitmessage 0.4.3 Beta (Jun 2, 2016)

  • Support pyelliptic's updated HMAC algorithm. We'll remove support for the old method after an upgrade period
  • Improved version check
  • Refactored decodeBase58 function
  • Ignore duplicate messages
  • Added bytes received/sent counts and rate on the network information tab
  • Fix unicode handling in 'View HTML code as formatted text'
  • Refactor handling of packet headers
  • Use pointMult function instead of arithmetic.privtopub since it is faster
  • Fixed issue where client wasn't waiting for a verack before continuing on with the conversation
  • Fixed CPU hogging by implementing tab-based refresh improvements
  • Added curses interface
  • Added support for IPv6
  • Added a 'trustedpeer' option to keys.dat
  • Limit maximum object size to 20 MB
  • Support email-like > quote characters and reply-below-quote
  • Added Japanese and Dutch language files; updated Norwegian and Russian languages files

New in Bitmessage 0.4.2 Beta (Jun 2, 2016)

  • Added Norwegian, Chinese, and Arabic translations
  • sock.sendall function isn't atomic. Let sendDataThread be the only thread which sends data
  • Moved API code to api.py
  • Populate comboBoxSendFrom when replying
  • Added option to show recent broadcasts when subscribing
  • Fixed issue: If Windows username contained an international character, Bitmessage wouldn't start
  • Added some code for FreeBSD compatibility
  • Moved responsibility for processing network objects to the new ObjectProcessorThread
  • Refactored main QT module
  • Moved popup menus initialization to separate methods
  • Simplified inbox loading
  • Moved magic strings to the model scope constants so they won't be created every time
  • Updated list of defaultKnownNodes
  • Fixed issue: [Linux] When too many messages arrive too quickly, exception occurs: "Exceeded maximum number of notifications"
  • Fixed issue: creating then deleting an Address in short time crashes class_singleWorker.py
  • Refactored code which displays messages to improve code readability
  • load "Sent To" label from subscriptions if available
  • Removed code to add chans to our address book as it is no longer necessary
  • Added identicons
  • Modified addresses.decodeAddress so that API command decodeAddress works properly
  • Added API commands createChan, joinChan, leaveChan, deleteAddress
  • In pyelliptic, check the return value of RAND_bytes to make sure enough random data was generated
  • Don't store messages in UI table (and thus in memory), pull from SQL inventory as needed
  • Fix typos in API commands addSubscription and getInboxMessagesByAddress
  • Add feature in settings menu to give up resending a message after a specified period of time

New in Bitmessage 0.4.1 Beta (Jun 2, 2016)

  • Fixed whitelist bug
  • Fixed chan bug
  • Added addressversion field to pubkeys table
  • Sending messages to a chan no longer uses anything in the pubkeys table
  • Sending messages to yourself is now fully supported
  • Change _verifyAddress function to support v4 addresses

New in Bitmessage 0.4.0 Beta (Jun 2, 2016)

  • Raised default demanded difficulty from 1 to 2 for new addresses
  • Added v4 addresses: pubkeys are now encrypted and tagged in the inventory
  • Use locks when accessing dictionary inventory
  • Refactored the way inv and addr messages are shared
  • Give user feedback when disk is full
  • Added chan true/false to listAddresses results
  • When replying using chan address, send to whole chan not just sender
  • Refactored of the way PyBitmessage looks for interesting new objects in large inv messages from peers
  • Show inventory lookup rate on Network Status tab
  • Added SqlBulkExecute class so we can update inventory with only one commit
  • Updated Russian translations
  • Move duplicated SQL code into helper
  • Allow specification of alternate settings dir via BITMESSAGE_HOME environment variable
  • Removed use of gevent. Removed class_bgWorker.py
  • Added Sip and PyQt to includes in build_osx.py
  • Show number of each message type processed in the API command clientStatus
  • Use fast PoW unless we're explicitly a frozen (binary) version of the code
  • Enable user-set localization in settings
  • Fix Archlinux package creation
  • Fallback to language only localization when region doesn't match
  • Fixed brew install instructions
  • Added German translation
  • Made inbox and sent messages table panels read-only
  • Allow inbox and sent preview panels to resize
  • Count RE: as a reply header, just like Re: so we don't chain Re: RE:
  • Added backend ability to understand shorter addresses
  • Convert 'API Error' to raise APIError()
  • Added option in settings to allow sending to a mobile device (app not yet done)
  • Added ability to start daemon mode when using Bitmessage as a module
  • Improved the way client detects locale
  • Added API commands: getInboxMessageIds, getSentMessageIds, listAddressBookEntries, trashSentMessageByAckData, addAddressBookEntry, deleteAddressBookEntry, listAddresses2, listSubscriptions
  • Set a maximum frequency for playing sounds
  • Show Invalid Method error in same format as other API errors
  • Update status of separate broadcasts separately even if the sent data is identical
  • Added Namecoin integration
  • Internally distinguish peers by IP and port
  • Inbox message retrieval API functions now also returns read status