Bitmessage Changelog

What's new in Bitmessage 0.6.3.2 Beta

Feb 19, 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.

New in Bitmessage 0.6.2 Beta (Mar 5, 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
  • OS X:
  • binary works with OpenCL
  • updated to Python 2.7.13 and OpenSSL 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 localisation 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
  • upgraded to Python 2.7.12 and OpenSSL 1.0.2h

New in Bitmessage 0.6.0 Beta (Aug 22, 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 (Oct 24, 2014)

  • 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 (Aug 5, 2014)

  • 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 (May 30, 2014)

  • 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 (Oct 10, 2013)

  • 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 (Oct 10, 2013)

  • 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:
  • Fix for traceback on OSX
  • 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

New in Bitmessage 0.3.5 Beta (Oct 10, 2013)

  • Added right-click option to mark a message as unread
  • Prompt user to connect at first startup
  • Install into /usr/local by default
  • Add a missing `rm -f` to the uninstall task.
  • Use system text color for enabled addresses instead of black
  • Added support for Chans
  • Start storing msgid in sent table
  • Optionally play sounds on connection/disconnection or when messages arrive
  • Adding configuration option to listen for connections when using SOCKS
  • Added packaging for multiple distros (Arch, Puppy, Slack, etc.)
  • Added Russian translation
  • Added search support in the UI
  • Added 'make uninstall'
  • To improve OSX support, use PKCS5_PBKDF2_HMAC_SHA1 if PKCS5_PBKDF2_HMAC is unavailable
  • Added better warnings for OSX users who are using old versions of Python
  • Repaired debian packaging
  • Altered Makefile to avoid needing to chase changes
  • Added logger module
  • Added bgWorker class for background tasks
  • Added use of gevent module
  • On not-Windows: Fix insecure keyfile permissions
  • Fix 100% CPU usage issue

New in Bitmessage 0.3.4 Beta (Oct 10, 2013)

  • Added a new global variable user option: doTimingAttackMitigation
  • Moved a variety of classes and functions out of bitmessagemain.py and to their own modules
  • New API command: getSentMessageByAckData
  • Modified the getAllSentMessages and getSentMessageById commands to return ackData
  • API commands to get messages now return actual encoding type
  • Bugfix: Unicode chars in localtime prevented the gui from starting
  • Added 'Save message as...' option in Inbox
  • Added OS X Build scripts
  • Added option to subscribe to an address in your address book
  • Added getInboxMessageById API command
  • Updated icons to have sRGB profile to prevent warnings
  • Added French translation
  • Switched addr, msg, broadcast, and getpubkey message types to 8 byte time. Last remaining type is pubkey.
  • Added tooltips to show the full subject of messages
  • Added Maximum Acceptable Difficulty fields in the settings
  • Send out pubkey immediately after generating deterministic addresses rather than waiting for a request