telepathy-gabble 0.7.22 (2009-03-02)
====================================

The "box without a good key" release.

Dependencies:

* telepathy-glib 0.7.24 is now required

Enhancements:

* Resolve STUN servers' IP addresses as required by telepathy-spec changes
  currently under development

* Add NATTraversal, STUNServers and CreatedLocally properties to
  Media.StreamHandler as required by telepathy-spec changes currently under
  development

* Add fallback-stun-server, fallback-stun-port ConnectionManager parameters

Fixes:

* Correctly deal with streams that are added after a call is accepted, fixing
  video streaming in calls that start off audio-only

* fd.o #20102: fix byte ordering of port in GibberListener

* Drain some swamps in Jingle call handling for better maintainability,
  and improve Jingle regression test coverage

* Don't end calls a minute after an extra content is added, and correctly set
  the creator attribute on contents. This has the side-effect of not causing
  older Gabbles to assert.

* Improve Tubes test coverage, and fix various races in the tests.

telepathy-gabble 0.7.21 (2009-02-19)
====================================

The "what?! why do I have flowers outside of my window?" release.

Dependencies:

* telepathy-glib 0.7.23 is now required

Enhancements:

* Implement new tube API for muc stream tubes
* Implement new tube API for 1-1 and muc D-Bus tubes
* Implement the Messages interface for Text channels.

Changes:

* In multi-user chats, the point at which Sent is emitted has changed.
  Previously, Sent was emitted when the message was echoed back to you by the
  server; now, it is emitted (as is Messages.MessageSent) when you send the
  message. When the message is echoed, a delivery report is emitted with
  Messages.MessageReceived, and Received is emitted with an empty body and the
  Non_Text_Content flag set. Clients that don't understand the Messages
  interface should just immediately ack the ID in that signal.

  If clients want to preserve the total ordering of MUC messages, they now need
  to care about the Messages interface and watch out for the delivery report.

Fixes:

* Various tubes related leaks
* fd.o#20003: fix a crash starting Jingle calls on some 64-bit platforms
* fd.o#20133: fix various bugs where idle callbacks outlived their user-data.
* Don't start sending video when the other side adds a video stream.

telepathy-gabble 0.7.20 (2009-01-02)
====================================

The "crêpes du belge" release.

Enhancements:

* Implement the draft version of Location from telepathy-spec 0.17.19
* Announce generic tube capabilities when contacts support tubes

Fixes:

* Don't get confused if MUC services auto-rename us (as much as is possible)
* Don't get confused if we have to change our own nick in order to join a MUC
* Set the correct actor when Jingle sessions are terminated
* Don't omit offline, unknown and error from Statuses and GetStatuses()
  (regression in 0.7.19)
* Close and ChannelClosed signals are now fired when a tube is closed (new API)

telepathy-gabble 0.7.19 (2009-01-29)
====================================

The "redecorated" release.

Fixes:

* Don't crash when closing a muc channel containing an closed D-Bus tube.
* Don't resurrect removed streams if the call responder includes them in
  session-accept
* Don't crash in calls if using glib with debugging enabled (fd.o #19327).
* Don't crash when removing contact from known list (fd.o #19524).
* Fix D-Bus muc tubes (dev.sugarlabs.org #60).
* Fix refcount leak in jingle code (fd.o #19385).
* Don't crash if "offline" presence status is requested.
* Raise the appropriate error from RequestHandles for telepathy-spec 0.17.18
  compliance (fd.o #19611).

telepathy-gabble 0.7.18 (2009-01-06)
====================================

The "The Orchestral Tubular Socks" release.

Enhancements:

* Implement SOCKS5 bytestreams (XEP-0065) in stream tubes.

* Implement a stream initiation fallback mechanism allowing to use IBB if
  we can't connect to peer using SOCKS5.

Fixes:

* Don't crash on setting presence if there are open MUC Tubes.

* Stream tube channel advertises the immutable channel properties,
  including those not on the Channel interface.

telepathy-gabble 0.7.17 (2008-12-14)
====================================

The "I accidentally an entire call *and* MUC" release.

Dependencies:

* dbus 1.1.0 (D-Bus Tubes are no longer conditionally compiled)

* dbus-glib 0.78 (fixes support for complex types in hashtables)

Enhancements:

* Add support for the new draft ContactCapabilities spec to communicate tube
  capabilities.

Fixes:

* Incoming Jingle calls are no longer automatically accepted when the call is
  connected and the local codecs are ready.

* Incoming MUC invites are no longer automatically accepted when changing your
  presence.

* fd.o #18918: Send codec parameters according to XEP-0167.

* Various Jingle tweaks.

telepathy-gabble 0.7.16 (2008-12-02)
====================================

The "what could possibly go wrong" release.

This release contains the reworked Jingle engine with support for latest
Jingle draft (XEP-0166 v0.32), and Google's Jingle variants as used in
their desktop client and recently launched Googlemail client.

This release has no known regressions, but as we have done extensive changes
to the Jingle engine, you might want to restrict this release to experimental
distributions like Debian experimental and Fedora rawhide for now.

Enhancements:

* fd.o #15908: refactor Jingle state machine

* fd.o #15907: Update real-Jingle implementation to XEP-0166 v0.25

* fd.o #13159: support current Google Talk protocol

* Misc Tubes-related enhancements and fixes

Fixes:

* fd.o #18404: fix race condition in tests/twisted/roster/ensure.py

* Fixes for double freeing in dispose in channel managers

telepathy-gabble 0.7.15 (2008-11-06)
====================================

The "brunch and fireworks" release.

Enhancements:

* fd.o #17770: remove some redundant handle validation from channel managers

* Add the immutable Interfaces property to all NewChannels signals and
  CreateChannel/EnsureChannel results

Fixes:

* Spec compliance: don't advertise StreamedMedia channels with handle type
  NONE as requestable (they can be created, but not with CreateChannel or
  EnsureChannel, so they shouldn't be in RequestableChannelClasses)

* Ignore candidates > 1 in Jingle rather than rejecting them, for
  compatibility with Farsight 2 (in which RTCP produces a second candidate)

telepathy-gabble 0.7.14 (2008-11-04)
====================================

The "exterminate, annihilate, destroy" release.

Dependencies:

* telepathy-glib 0.7.18

Enhancements:

* Comply with specification 0.17.14
  * depend on telepathy-glib 0.7.18
  * implement the Destroyable interface on IM channels
  * set the RESCUED flag on messages in respawned IM channels
  * set the SCROLLBACK flag on discussion history in MUC channels

* Start to implement the new Tubes API draft (one Channel per Tube)

Fixes:

* fd.o #16797: Don't send the close message for Tubes twice

telepathy-gabble 0.7.13 (2008-10-28)
====================================

The "so you quote love unquote me" release.

Fixes:

* Fix a regression breaking MUC D-Bus tubes.
* Don't invite Gadget to our OLPC activity if we didn't ask it to publish
our information.
* Don't fire presence signals for Gadget presence.

telepathy-gabble 0.7.12 (2008-10-23)
====================================

The "15 network cables in individual boxes" release.

Enhancements:

* OLPC View: contacts in views are not announced as being online.

Fixes:

* fd.o #13891: AcceptDBusTube returns NULL with 1-1 D-Bus tube.

telepathy-gabble 0.7.11 (2008-10-22)
====================================

The "HAPPY CAPS LOCK DAY" release.

Enhancements:

* OLPC View: use the Requests API and make the views into channels

* Optionally run dbus-monitor alongside regression tests

* Add --disable-Werror to configure.ac (copied from telepathy-glib), useful
  when building Debian packages of prereleases using cdbs (which implicitly
  turns on -Wunused-parameter)

Fixes:

* sha1_bin(): fix a memory leak, and assertion failures on 64-bit

* D-Bus tubes: fix an assertion in libdbus during dispose

telepathy-gabble 0.7.10 (2008-10-15)
====================================

The "high voltage" release.

Requirements:

* telepathy-glib >= 0.7.17

Enhancements:

* Implement the newly official Requested, InitiatorHandle and InitiatorID
  properties introduced in spec 0.17.13

* fd.o #16922: stop shipping MD5 and SHA-1 implementations, and use GChecksum
  instead, since we need GLib 2.16 anyway

* Add support for running tests with GObject refdbg enabled

Fixes:

* Add TargetID to allowed properties when requesting channels

* test-handles: stop asserting that the wrong error (InvalidArgument) will be
  raised, and accept the correct error (InvalidHandle) too, since this was
  fixed in telepathy-glib

* Some bugfixes in the OLPC code

* Use unsigned for booleans in bitfields (gboolean is signed, so
  "gboolean foo:1" is not portable)

telepathy-gabble 0.7.9 (2008-09-29)
===================================

The "danger! danger!" release.

Our unstable-branch releases are usually pretty stable in practice, but we've
just merged 10 months' OLPC work and some fairly fundamental internal changes,
so you might want to restrict this one to experimental distributions like
Debian experimental and Fedora rawhide for now. We'll do a 0.7.10 release
once it's had some more testing.

Requirements:

* telepathy-glib >= 0.7.16
* GLib >= 2.16

Enhancements:

* Implement the Requests API introduced in spec 0.17.11 and extended in 0.17.12
  (fd.o #17248)

* Save contacts' aliases into the roster for massive bandwidth savings (in
  conjunction with avatar caching, this should mean we don't have to fetch
  everyone's vCard every time we connect to the server)

* Merge support for the "gadget", an OLPC-specific server component that
  supports browsing for buddies and activities

* When running tests under valgrind, use the same options as in telepathy-glib

telepathy-gabble 0.7.8 (2008-08-19)
===================================

The "Hildesheim Flugplatz" release.

telepathy-gabble is now maintained in git instead of darcs. See README for
details.

Requirements:

* telepathy-glib >= 0.7.14
* To build from git, automake 1.9 (although 0.7.7 actually required this too)

Enhancements:

* Implement the Contacts interface for bulk contact-handle inspection

* Implement spec 0.17.9 (add the TargetID property to all channels)

* Start to port channel factories away from TpChannelFactoryIface in
  preparation for implementing the Requests API

* Add a simple smoke-test for SimplePresence

* Use tp_debug_divert_messages() rather than our own copy of it, since we
  now depend on a new enough telepathy-glib anyway

Fixes:

* Obey the Telepathy spec by giving 'dnd' presence type Presence_Type_Busy
  and not Presence_Type_Away

* Fix the test suite so test failure causes a nonzero exit status
  (regression in 0.7.7)

* Fix test-si-tubes and test-disco to run the test all the way through
  (regression in 0.7.7)

* Use the pedantically correct marshaller for a GArray, since GObject 2.17
  actually checks for POINTER vs BOXED (regression in 0.7.7)

* Remove unconditional debug messages in a few places

telepathy-gabble 0.7.7 (2008-07-31)
===================================

The "still not in git" release.

Requirements:

* telepathy-glib >= 0.7.13

Enhancements:

* fd.o #15798: Implement XEP-0115 version 1.5 (hashed capabilities)

* Implement Channel and Group properties on all channels, for round-trip
  reduction if used with a recent client

* Add infrastructure to implement planned properties InitiatorHandle,
  InitiatorID, TargetID, Requested

* In multi-user chat,
  Group.GetHandleOwner(Group.GetSelfHandle()) == Connection.GetSelfHandle()

* If a Text channel closes with messages still pending, reopen the text
  channel, as though those messages had arrived just *after* closing it
  (solving a race condition that could lead to messages being lost)

* fd.o #14954: Set presence in MUCs to be the same as our global presence

* fd.o #14955: Set nickname in MUCs to be the same as our alias for ourselves
  (as set with Aliasing)

* Implement SimplePresence as well as Presence

Fixes:

* Fix a reference leak when using (new-style) TLS

* Fix a memory leak when invited to a MUC

* Fix a possible assertion failure when we're sent an invalid MUC invitation

* fd.o #16918: fix an access to freed memory when the vCard manager is
  destroyed

Miscellaneous:

* Rename gabble-foo.[ch] to foo.[ch] (we like tab completion)

* fd.o #14341: add a regression test (currently disabled, because the bug
  is in Loudmouth)

* Port most of the regression tests to a more comprehensible API

telepathy-gabble 0.7.6 (2008-05-14)
===================================

The "my first Gabble release" release.

Requirements:

* telepathy-glib >= 0.7.8 is now required

Enhancements:

* Implement the Hold API using telepathy-glib rather than as an extension

Fixes:

* fd.o #15656: fix an inconsistency in audio/video capabilities

* fd.o #15422: fix generation of extensions/extensions.html

* fd.o #15904: fix a regression making the caller of an incoming call in
  the remote pending set instead of the members one.


telepathy-gabble 0.7.5 (2008-05-05)
===================================

The "what's my version again?" release.

Fixes:

* fd.o #15095: fix MUC contacts always appearing to be offline (and actually
  include the patch this time) (regression in 0.7.0, probably)

* fd.o #15311: update tests to work with python-twisted 8.0 (as seen in
  current Debian unstable)

* Ignore components with ID != 1 in native candidates - we can only signal
  one component, and Farsight 2 reports RTCP components along with RTP ones

* Don't assume that htmldir will be defined by autoconf (it's new in 2.59c,
  and we only require >= 2.59; regression in 0.7.4)

telepathy-gabble 0.7.4 (2008-05-01)
===================================

The "stop making coredumps, I want to go to the pub" release.

Enhancements:

* fd.o #14467: aggregate MembersChanged signals when joining MUCs, so we
  get one big signal rather than lots of single-contact signals, potentially
  reducing client round-trips

* Re-enable some regression tests that were accidentally removed in 0.7.3

* Build documentation for our extensions to XMPP by default

Fixes:

* fd.o #12791, Debian #446259: fix assertion failure with strange roster items

* fd.o #14343: fix race condition that can lose messages between accepting
  a D-Bus tube and actually connecting to it

* fd.o #14602: update the StreamedMedia call API to telepathy-spec 0.17.3

* fd.o #14806: when we add ourselves to the local-pending set for incoming
  calls, set the caller as the actor

* fd.o #15198: fix assertion failure when calling GetCapabilities on an invalid
  handle

* When removing a media stream before the initiate is sent, send it if possible

* when blocking gtalk contacts, discard their presence

* disconnect the connection if we don't receive a reply to the discovery
  request for server features

* stop using Automake 1.9 features, and prefer to autoreconf using 1.8 (if
  available) to ensure that we don't accidentally re-add a 1.9 dependency

* make sure teardown of the disco object doesn't crash if one of its callbacks
  causes it to be destroyed (bug exposed by test-disco-no-reply.py regression
  test)

telepathy-gabble 0.7.3 (2008-04-11)
===================================

Requirements:

* telepathy-glib >= 0.7.0 and Loudmouth >= 1.3.2 are now required

Enhancements:

* Implements the current draft of the Hold interface, which will be in
  telepathy-spec 0.17.4 if all goes well

* Improved Python regression test API and more regression tests:
  - outgoing Jingle calls
  - holding calls

Fixes:

* Only emit one AvatarRetrieved signal per contact, no matter how many
  requests there were for their avatar (fd.o #12465)

* Explicitly say we require GNU make, and turn off Automake portability
  warnings (fd.o #14020)

* Don't emit NewStreamHandler signals multiple times if Ready is called
  multiple times on the SessionHandler (a bug in stream-engine used to
  cause this to happen sometimes)

* Assorted code cleanup prompted by adding more gcc warnings

telepathy-gabble 0.7.2 (2008-01-17)
===================================
* Improvements to build system and code generation
* Tubes improvements
* Test improvements
  * Improvements to test framework
  * Most of the MUC tube code path is tested
* Saner behaviour of old-ssl/server/port/require-encryption flags
* Removal of unneccessary support hacks for N800-H263 and Nokia's
  Instant Video

telepathy-gabble 0.7.1 (2007-11-12)
===================================
This version detects whether Loudmouth >= 1.3.2 is present at build time;
if found, it uses STARTTLS whenever available, enables support for SASL and
SRV lookups, and has a require-encryption connection manager parameter which
makes the connection fail if STARTTLS cannot be used.

It also takes advantage of the debug infrastructure changes in
telepathy-glib 0.6.1 to separate the concepts of debug flags and
persistence.

telepathy-gabble 0.7.0 (2007-11-07)
===================================
This is the first release on the 0.7 development branch. The main change
is the addition of Tubes - we've finally managed to get the various
OLPC-specific branches reviewed and merged. We aim to get this release
into Update.1 of the OLPC system software.

Highlights:

* All the same bug fixes as stable branch release 0.6.1

* Tubes, a generic transport for collaborative applications:
  * multi-user D-Bus tubes, where the collaboration is in a MUC (chat room)
    which behaves a lot like the D-Bus daemon
  * one-to-one D-Bus tubes, which behave a lot like peer-to-peer D-Bus
    connections
  * multi-user stream tubes, where one user in a MUC exports a Unix,
    IPv4 or IPv6 server socket and other users can connect to it
  * one-to-one stream tubes, just like multi-user but without the MUC

* Support for the OLPC Activity and Buddy abstractions

* A man page and some protocol documentation

* The connection manager binary now installs to $libexecdir -
  distributors take note!

D-Bus tubes require libdbus-1 version 1.0.2 or better; if you compile
against an older version of libdbus you won't get D-Bus tubes support.

