The release below is from prior to Guacamole's acceptance into the Apache Incubator. It is not an Apache Software Foundation release, and is licensed under the MIT license.
This release features two new supported methods of authentication (LDAP and “noauth”), improved rendering performance, and connection grouping and load balancing.
This release also marks our initial transition to the “org.glyptodon.guacamole” package and groupId for Guacamole’s Java classes. Authentication providers have been left alone for the sake of compatibility, but any developers wanting to upgrade custom authentication to the latest will need to also change the groupId in their pom.xml.
Guacamole has had partially-official support for LDAP for some time, but it was never released due to lack of documentation. This documentation is now written, and the LDAP support is officially released and available from the main site.
With the LDAP support installed, Guacamole users and connections can be maintained entirely within an LDAP directory.
Connection Grouping and Balancing
Connections can now be grouped hierarchically for organizational purposes, or combined into a balancing group with acts as a connection, distributing load across its underlying connections.
Currently, grouping and balancing is only supported by the MySQL authentication extension.
Stable PPA for Ubuntu Users
By popular demand, we have created a PPA for stable Guacamole releases. New packages are uploaded to this PPA whenever packages are submitted to Debian and Ubuntu for review.
Improved Rendering Performance
Guacamole used to render updates as soon as they were received on the client side. This is actually not as efficient as delaying rendering until a logical frame has been completed.
The client now buffers received updates until signaled to flush. This leads to cleaner-looking updates in all supported protocols, and generally better performance.
SSL Support for guacd
SSL can now be enabled for connections between the web application and guacd. Enabling SSL requires a certificate and private key, and causes all Guacamole Protocol traffic through guacd to be encrypted.
Adoption of the NoAuth Extension
Laurent Meunier has been maintaining the “noauth” extension, providing a means for users to disable Guacamole’s authentication entirely. This extension has been officially adopted upstream, and is now available for download from the project website.
Authentication API Changes
With the new connection grouping and balancing support, there have been several changes to the authentication API that will affect authentication provider implementations when upgrading to the latest upstream code.
The UserContext object no longer simply returns a set of connections, but rather the root connection group. This root connection group provides the set of connections that the UserContext used to provide directly.
The SimpleAuthenticationProvider and related classes have also been made mutable. Implementations which extend these classes rather than implementing the full authentication stack from scratch should now have a bit more flexibility.
We have officially migrated to the org.glyptodon.guacamole package for all Java source (except for authentication providers).
Authentication providers have not been migrated for the sake of compatibility, so no changes need to be made to guacamole.properties. This change will affect downstream developers when upgrading, however.
Simply substituting “org.glyptodon.guacamole” for “net.sourceforge.guacamole” within your source is sufficient.
Migration to Maven central
Once the central repository completes its sync, the Guacamole APIs should now be available from the Maven central repository. There is no longer any need to specify the Guacamole repository within pom.xml files when developing against the Guacamole APIs.