9 Mar 2016:

- Updated Spanish, German, Norwegian Bokmål translations.
- New Danish translation.
- Fix use-after-free issue during SMP.
- Release 4.0.2

21 Oct 2014:

- Hardened Windows build
- Fix max message size for Novell Groupwise
- New Czech, Finnish, Brazilian Portuguese, Norwegian Bokmål
  translations.  Updated French, Chinese translations.
- Release 4.0.1

24 Aug 2012:

- Release 4.0.0

21 Jun 2012:

- Fixed an issue that happened when enabling the OTR plugin while a
  conversation is open.
- Release 4.0.0-beta2

7 Jun 2012:

- The plugin now supports multiple OTR conversations with the same
  buddy who is logged in at multiple locations. In this case, a new
  OTR menu will appear, which allows you to select which session an
  outgoing message is indended for. Note that concurrent SMP
  authentications with the same buddy who is logged in multiple times
  is not yet supported (starting a second authentication will end the
  first).
- During a private conversation with a buddy, an incoming unencrypted
  message will now trigger the regular incoming message notifications.
  In Pidgin this includes showing the message in the top-right
  notification area, if it is normally configured to do so.
- New Italian, Swedish, Polish and Vietnamese translations. Updates to
  the French translation.
- When a private conversation begins, the plugin will indicate whether
  Pidgin is configured to log the conversation.
- By default, OTR conversations will not be logged by Pidgin.
- Fingerprints in the manual authentication dialog are now selectable
- The plugin will no longer delete the OTR menus if a non-foreground
  conversation window is closed.
- Except on WIN32, the plugin will now set the umask to 0077 before
  creating the otr.* files in the purple directory so that they end up
  mode 0600. 
- The menu item now says "Reauthenticate buddy" when the buddy is
  already authenticated.
- Release 4.0.0-beta1

28 May 2008:

- The functionality of the OTR button has now moved to a menu.  There's
  an "OTR" menu, as well as an icon showing the current OTR state of
  each active conversation in the window.
- New OTR icons from <cyrus_xiii@yahoo.com>
- OTR icons show up inline in the conversation window when the OTR
  status changes.
- Buddy authentication has been revamped, based on the user study
  published in SOUPS 2008.  The default is now to choose a question and
  an answer only you and the buddy should know.  The question is
  displayed to the buddy, who is prompted for the answer.  The "shared
  secret" and "fingerprint" authentication methods are still available.
- Translations for Arabic, German, Russian, Hungarian

1 Aug 2007:
- Released 3.1.0

31 Jul 2007:
- Translations for English, Dutch, Spanish, French, Slovak

24 Jul 2007:
- Added option to not log OTR conversations
- Large messages are now fragmented transparently instead of failing
- Removed "view secure session id" and "verify fingerprint" options from
  OTR button menu.  Added "authenticate buddy" option in its place.  This
  new option allows you to authenticate your buddies by entering some
  secret that only the two of you know, rather than by using a long
  user-unfriendly sequence of hex characters.  [The old "verify
  fingerprint" dialog is still available via an "Advanced..." button
  from the new "authenticate buddy" dialog.]

06 May 2007:
- Ported to Pidgin 2.0.0

02 Nov 2005:
- Released 3.0.0

16 Oct 2005:
- There are now four states a conversation can be in:
    * Not Private (not using OTR)
    * Unverified (using OTR, but to a fingerprint that hasn't
		  been verified, so you are subject to a straightforward
		  active attack)
    * Private (using OTR with a verified fingerprint)
    * Finished (the other person has ended his side of the OTR
		conversation, so we won't send any more messages at all
		until we either end our side, or start a new OTR
		conversatrion)
- There are new icons for these states that appear in the OTR button.

24 Jun 2005:
- Right-clicking the OTR button now produces an OTR menu, with options
  to start or end the private conversation, verify the fingerprint, view
  the secure session id, or get help.
- The OTR button obeys the user's requested style (text only, pictures
  only, pictures and text, none).  Note that if the user chooses "none",
  there's currently no way to reach the aforementioned menu.
- The "private connection established", "private connection refreshed",
  and "private connection ended" messages no longer pop up dialog boxes.
  Instead, they appear inline in the conversation window.  The session
  id and fingerprint which used to appear in the "private connection
  established" dialog are now viewable via the OTR button right-click
  menu.

27 May 2005:
- The OTR button no longer disappears if you change your button style in
  the gaim preferences.
- There is now a right-click context menu on the OTR button.

19 May 2005:
- OTR doesn't work over IRC (since IRC's maximum message size is too
  small for a Key Exchange Message to fit), so don't even provide the
  OTR Settings buddy-menu option or the OTR conversation window button
  for IRC.

03 May 2005:
- Released 2.0.2
- Fix to co-exist more nicely with other encrypting gaim plugins.

01 Mar 2005:
- Initial autoconfiscation, thanks to Greg Troxel <gdt@ir.bbn.com>. 

23 Feb 2005:
- Released 2.0.1

22 Feb 2005:
- Removed people without fingerprints from the Known Fingerprints list
- The column heads in the Known Fingerprints list cause sorting to
  happen in the expected way.

08 Feb 2005:
- Released 2.0.0
- Clicking the OTR button produces a notice in the conversation window
  that it's doing something.

30 Jan 2005:
- Added default and per-buddy policy selection: never use OTR, OTR only
  if manually requested, automatically start OTR if possible, refuse to
  *not* use OTR.
- The OTR: button disappears if a particular buddy is set to never use
  OTR.
- Resend the last message if it caused a re-keying.
- OTR control messages are no longer displayed as if they were received
  as IM messages.
- New multi-page UI
- Send a control message to your buddy if you terminate a private
  conversation with him.

27 Jan 2005:
- Updated gaim-otr to match libotr 2.0.0 API.

23 Jan 2005:
- Separated gtk-specific code from general gaim code, with help from
  Evan Schoenberg <evan.s@dreskin.net>.

18 Jan 2005:
- Released 1.0.3
- Split gaim-otr and libotr into separate packages.

13 Jan 2005:
- Generate private keys automatically, if needed.  Show a Please Wait
  dialog while this is happening.
- We may as well try to use the "tag" method of checking for OTR, even
  when we don't already know a fingerprint for the correspondent.
- Add version checking to the otrl_init() call.

12 Jan 2005:
- Refactored the logic parts of gaim-otr into libotr, so they can be
  shared by other libotr-enabled apps.

21 Dec 2004:
- Released 1.0.2
- If a Man-in-the-Middle steals both Alice's and Bob's DSA private keys,
  he can perform a birthday attack to try to get his session id with
  each end to match.  Since the session id was only 64 bits long, his
  work was only 2^32, which is not enough.  We now make the session id
  the whole SHA-1 hash, instead of truncating it.
- Made otr_sesskeys output the calculated public key as well, for added
  ease of forging messages when you don't know any plaintext.

14 Dec 2004:
- Released 1.0.1
- Added a more sensible error message in the event that we receive our
  own OTR Key Exchange messages.
- If we're about to send a plaintext message to a correspondent for whom
  we've got a fingerprint, append a special (whitespace) OTR tag
  sequence.  The other side (if in fact running OTR) will recognize it
  and start a Key Exchange.

12 Dec 2004:
- Released 1.0.0

11 Dec 2004:
- OTR button now gets sensitized and desensitized along with the other
  buttons in the conversation window when you log in and out of
  accounts.

10 Dec 2004:
- Released 0.9.9rc2
- Heartbeats now only get sent if (1) we have just received a message,
  and (2) we haven't sent one to that user in over a minute.

09 Dec 2004:
- Back out of the sending of heartbeats.  They were causing too many
  problems.  It seems some networks don't let buddies know when you
  log out, and then you get a dialog box "unable to send message" each
  minute.  :-(

08 Dec 2004:
- Released 0.9.9rc1
- Removed the 100 private connection limit, by not using a fixed amount
  of secure memory.  Unfortuantely, this means that *no* memory is
  pinned any more, but pinning only ever happened before in the unlikely
  event you ran gaim as root.
- Changed the "Private connection with (username) refreshed" dialog at
  Paul's request so that it's no longer in "scary" "evil" bold, and
  rephrased it so it's less likely to be misread as "refused" instead of
  "refreshed".  ;-)
- We now send heartbeats (OTR Data Messages with an empty message part)
  once a minute, to anyone we're confident is still online.  If both
  sides are doing this, then keys get rotated regularly, even if one
  or both sides aren't actively typing.  This aids perfect forward
  secrecy.

04 Dec 2004:
- Fixed a bug wherein multi-person chat windows would get the OTR button
  in their button bar if the OTR plugin was enabled when one of them was
  active.

03 Dec 2004:
- Released 0.9.1

02 Dec 2004:
- Clicking "OTR: Private" when you're already private will display an
  info dialog letting you know the connection was refreshed (assuming it
  actually is; if the other side isn't running OTR at all, the dialog
  doesn't show, and if the other side had lost its private connection, a
  new one will be established, with the "new private connection" dialog
  displayed to each side (as before)).
- The toolip for "OTR: Private" is now "Refresh the private connection".
- "make install" now depends on "make all".
- Added man page for OTR toolkit programs
- Log a debug message when we receive and discard a heartbeat

01 Dec 2004:
- Fixed the Makefiles so that "make clean" also removes the binaries
- Fixed the Makefiles so that they install into DESTDIR
- Added packaging/debian

30 Nov 2004:
- Released 0.9.0
- Included the OTR Messaging Toolkit.  See the README for details.

28 Nov 2004:
- Finished the Protocol document
- Changed the name of the plugin binary from "otr-plugin.so" to
  "gaim-otr.so".  *** NOTE: this means you'll have to (1) remove the
  old otr-plugin.so file from your plugins directory, and (2) re-enable
  the Off-the-Record Messaging plugin in the Preferences panel.
- Included MAC keys used to create messages in the revealed MAC section
  of the Data message, in addition to MAC keys used to verify messages.
- Set all exported symbols to start with otrl_ (for the library) or
  otrg_ (for the gaim plugin), in preparation for moving the pieces
  into their own directories.
- If we receive a Data message with no actual message in it, don't
  display it to the user.  This may eventually be useful for doing
  "heartbeat" key rotations.
- Separated libotr and gaim-otr into their own directories.

27 Nov 2004:
- Switched from using gaim_notify_* to a slightly modified version that
  doesn't grab the focus

26 Nov 2004:
- Put all the cipher operations in secure memory.  This makes each
  private connection take 9472 bytes of secure memory, so we up the
  available amount of secure memory to 100 times that.  Eventually,
  we'd like to make this dynamically grow.

25 Nov 2004:
- Released 0.8.3
- Don't put the DSA keys in libgcrypt secure memory, since (a) we read
  them off disk anyway, and (b) we want to avoid running out of secure
  memory.
- Removed the "Do you want to start a private conversation" dialogs when
  one side in encrypted and the other side isn't, and instead just try
  to start one if we know for sure the other side supports it.
- Sped up the DH computations by using a 320-bit exponent.

23 Nov 2004:
- Released 0.8.2
- There was a crash if you received an OTR Query before setting up a
  private key.  Fixed.
- The fingerprint in the UI is now selectable, for cut/paste.
- *** Protocol change.  We're no longer backward compatible.
  - The "revealed MAC keys" moved out of the MAC'd region of the data
    packet.  It's not wrong where it is, but it's more obviously
    correct in the new place.

22 Nov 2004:
- Released 0.8.1
- Jabber wasn't working, for two reasons:
  - it sticks <tags>...</tags> around the message
  - it refers to the same user by multiple names; e.g. "user@jabber.org"
    vs. "user@jabber.org/Gaim"
  Both are now fixed: we look for the OTR message anywhere in the packet
  now, not just at the beginning, and we normalize all usernames.
- Each account now has its own private key / fingerprint
  - This is so you don't automatically leak the information that the
    accounts are owned by the same person
- There's a better indicator of private / not private status in the
  conversation window, which you can click to start the private
  communication.

21 Nov 2004:
- Initial 0.8.0 release
