This page currently refers to the Beta PPA for the Ubuntu One client. You can get more information at on adding the PPA to your system, if you wish to use the beta builds of our unstable tree. Thanks!

2010-04-12 Release

ubuntuone-client revno 487:

ubuntuone-storage-protocol revno 93

2010-01-21 Release

Client Revno 321 (was 313)

  • Use the existing bus if available
  • LocalRescan.{start, scan_dir} now uses the list of volumes returned from VolumeManager, instead of just the Share list

  • Add FileShelf._[un]pickle methods in order to allow subclasses to customize pickling and unpickling

  • Removed the override to twisted.internet.reactor.callLater in tests for action queue. Added dummy objects to avoid "AttributeError" from twisted internals

  • Local and server rescan on UDF subscribe and creation
  • Add tests for the ubuntuone-login script
  • Filtering SV_HASH_NEW event for un-subscribed udf's
  • volumes API for LocalRescan and FSM api to get node info for server rescan by path

2010-01-19 Release

Client revno 313(was 306)

  • ActionQueue now requires a main.Main instance as creation parameter..

  • rename delete_udf to delete_volume, added delete_share DBus method and fix the masking of builitin id in VolumeManager.

  • Integrate VolumeManager with ActionQueue volume API and events.

  • Add VolumeManager specific events to EventQueue and handle them in !DBusInterface.

  • Skipping (sometimes) failing test tests.oauthdesktop.test_auth.AuthorisationClientTests.test_ensure_access_token_no_token.. (fixes:

  • Implemented Volume management functionality on ActionQueue..

  • add User Defined Folders !DBus API.

Protocol revno 81 (was 80)

  • [release] ubuntuone-storage-protocol 1.1.1

2010-01-08 Release

ubuntuone-client Revno 306 (was 300)

ubuntuone-storage-protocol revno 80 (was 78):

  • Making handle_VOLUME_{CREATED, DELETED} not leaking protocol details to clients..
  • Added UDF and Volumes messages to protocol..

2009-12-23 Release

Client Revno 300 (was 289)

  • add the --start option to u1sdtool, also start syncdaemon before executing a command if it's not running..
  • export method and signal docstrings via DBus Introspect, add script to generate a simple text file with SyncDaemon DBus API.

  • Check that the hashes aren't empty strings before comparing. (fixes:

  • add --waiting-content and --schedule_next options to u1sdtool and fix --offer-share args parsing.
  • fix u1sdtool --quit so it don't start syncdaemon if isn't running, and add --connect, --disconnect and --status options.
  • Add the marshaller list file to EXTRA_DIST
  • set syncdaemon log level to DEBUG and logfile size to 10MB

Syncdaemon remains unchanged.

2009-12-18 Release

Client Revno 294 (was 289)

  • add the --start option to u1sdtool, also start syncdaemon before executing a command if it's not running..
  • export method and signal docstrings via DBus Introspect, add script to generate a simple text file with SyncDaemon DBus API.

  • Check that the hashes aren't empty strings before comparing. (fixes:

  • add --waiting-content and --schedule_next options to u1sdtool and fix --offer-share args parsing.
  • fix u1sdtool --quit so it don't start syncdaemon if isn't running, and add --connect, --disconnect and --status options.

2009-12-17 Release

Client Revno 289 (was 288)

2009-12-10 Release

Client revno 288 (was 283)

Protocol revno 78 (was 75)

2009-12-02 Release

client revno 283 (was 278)

  • When a second connection comes but we already have a connected protocol, discard it.. (fixes:

  • Fixing (and clarifying) implementation for get_paths_starting_with.
    • Adding missing docstrings..
  • Fixing tests for changed() feature so they properly test it..
  • Replacing ''' by """ according to what PEP-8 and PEP-257 state..

  • Dir tree removal on server side deletes the whole dir in the client if no local changes (#462003).. (fixes:

protocol revno 75 (was 73)

2009-11-09 Release

Client revno 276 (was 273)

2009-10-29 Release

Client revno 273 (was 269)

2009-10-23 Release

Client revno 269 (was 261)

2009-10-19 Release

Client revno 261 (was 257)

Protocol 73 (was 72)

2009-10-16 Release

CLIENT revno 257 (was 255)

2009-10-14 Release

CLIENT revno 255 (was 231)

PROTOCOL: revno 72 (was 71)

  • Release 1.0

2009-10-01 Release

Client Revno 231 (was 225)

2009-09-29 Release

Client Revno 225 (was 222)

  • Split the preferences dialog to a separate app
  • Add a launcher to System->Preferences for preferences app

  • Add man page for preferences app
  • Add DBus object class and methods to applet for getting preferences changes
  • Quit the syncdaemon on AUTH_FAILED
  • release 0.96.0

2009-09-25 Release

Client Revno 222 (was 213)

  • move the metadata from xdg_cache_home to xdg_data_home
  • Change the notification icon size to 48 instead of 24
  • Release client 0.95.1
  • Handle ShareCreateError in the nautilus extension, and show an error dialog

  • Fix the _create_share_http code to call the errback/callback properly
  • Add the path to the share_info dict on errors
  • Fix volume_manager and tests to get mdid properly
  • This fixes a timing issue in a HQ test (also rearranges some code in HQ itself to be more robust).
  • Introduces LR_SCAN_ERROR for LocalRescan to signal an error when the directory does not exists.

  • Get rid of the partial handling bit, as they aren't here any more
  • Now we have a trash where nodes are stored between their deletion and the server response.
  • Add pairing record for Ubuntu One to desktopcouch, if desktopcouch is available, when user first sets up Ubuntu One filesharing.

2009-09-16 Release

Client Revno 213 (was 203)

  • Send callback with request instead of authorization, for 1.0a
  • Use system python-oauth
  • Some basic tests for u1sync's merging code.
  • Get the verifier from the callback and pass it to the retrieve_token function
  • Add the verifier parameter to the oauth request for the access token
  • Fix commit_partial to not change the permissions of the partial parent folder.
  • Use the button's memory address as a unique identifier
  • Fix a couple of small compiler warnings
  • Release ubuntuone-client 0.95.0
  • Fix a missing closing paren from my previous branch
  • Request the root (only if it's needed), account info and free space on connection.
  • Handle keyring.DeniedError when trying to store the token

  • Show Disconnected status when disconnected, and Ubuntu One by default otherwise

Protocol Revno 71 (was 69)

  • switch to python-oauth
  • release 0.95.0

2009-09-09 Release

Client Revno 203 (was 198)

  • Update from to
  • Add redirect support to oauthdesktop
  • Canceled uploads and downloads are now, you know, canceled.
  • Store the partial files in ~/.cache/ubuntuone/partials
  • Desensitize the button while connecting/disconnecting
  • Set a label of "Connecting" while connecting
  • Only update the connected internal state when is_connected is True

2009-09-03 Release

Client Revno 198 (was 194)

  • Don't try to start the syncdaemon to get better information about failures
  • Quit the applet after the user reports the fatal error with apport
  • Release 0.94.0
  • detect and avoid multiple connections that break the single-minded state machine
  • Nanny for AQ_DOWNLOAD_FINISHED in files, to be released only when the file is not open or being hashed.

2009-09-01 Release

Client Revno 194 (was 191)

  • only rotate the logs when syncdaemon is about to create it's Main instance
  • Stop attaching the u1 client log and the u1sync log to apport bug reports because they have filenames in them and users are reporting this as a privacy concern because the apport retracer makes bugs public once they are marked as a duplicate of a public bug.
  • Fix the applet to only try to start syncdaemon once when we get an error

Protocol Revno 69 (No Change)

  • No protocol revision was uploaded, as nothing in ubuntuone-protocol trunk had changed as of 10:00 AM Florida time.

2009-08-28 Release

Client Revno 191 (was 163)

  • Release 0.93.1
  • update FSM metadata for the new layout.
  • fixes #405688
  • Handle CAPABILITIES_MISMATCH separately and pop up a notification
  • Fix the broken Shared With Me symlink that points to itself.
  • Fix a typo in hide_icon that caused a major ruckus

  • Fix the type signature of the AccountChanged signal.

  • Release 0.93.0
  • Hook up the throttling config UI to call the dbus methods
  • Wire a subclass of ThrottlingStorageClientFactory (that supports configure it at runtime) with ActionQueue, expose throttling config methods via dbus.

  • Insistent HASH, fix a index corruption bug, and some tests.
  • Handle the new ContentQueue signal

  • Maintain state for transfer status information
  • Change the left click behavior to open a menu by default
  • Update a menu item in the left click menu with transfer status
  • Pop up notifications to signal start and end of transfers
  • new almost flat layout, remove My Files and use Ubuntu One directory as the root, symlink the Shared with Me folder
  • remove .u1partial files on AQ DOWNLOAD_ERROR and DOWNLOAD_CANCELLED also added AQ_DOWNLOAD_CANCELLED
  • Get rid of a feature not available in python 2.5
  • add a signal that gets self-contained status information out, for the applet
  • Content queue ensures the content queue is unique by share/node. Sync should be avoiding it already, but this is just a safety net to ensure we have a truly commutative content queue.
  • downloads are now resumable
  • Don't send dirs in Started/Finished signals

Protocol Revno 69 (was 63)

  • Fix AccountInquiry constructor.

  • Release 0.93.0
  • fix attributes names in Throttling factory, and refactor DelayedCall cancel call to allow reuse in subclasses, also remove some debug logs

  • make BytesMessageProducer not call seek on the fh if offset is false

  • the storage protocol now knows how to resume an upload
  • ThrottlingStorageClient and ThrottlingStorageClientFactory to throttle bandwidth (bytes/second)

2009-08-20 Release

Client Revno 163 (was 146)

  • The root changed to be My Files, so don't append it
  • make u1sync interruptible
  • Send dbus up/DownloadFinished signals for up/download errors
  • Don't show the icon when doing rescans
  • Add logic to handle cases where we want to persist showing the icon
  • Don't DESPAIR on CLOSE_WRITE for files with no metadata; it turns out to be perfectly legal (and the correct action is to ignore it)
  • log the nodes queried during server rescan
  • cleanup INFO logging and add DEBUG logs to DBusInterface
  • Fix symlink creation, when My Files don't exists
  • Disable sdreactor and use the glib/gtk2reactor
  • Make it so that AUTH_FAILED results in clearing the token and fetching anew.
  • make the default links to the Ubuntu One folder go to ~/Ubuntu One/My Files and add a symlink to the "Shared with Me" folder in ~/Ubuntu One/My Files
  • New AQ method to support Sync behaviour about ignoring server too-old info.
  • reset FSKey mdid after delete_metadata/file and add tests for FSKey
  • fixes for the tests in test_main
  • Use a subclass of Gtk2Reactor that uses low-res timers, for lower power consumption

  • remove all traces of fsync and use a 3 step rename dance to dump the mdobj contents to disk (write new; rename current old; rename new current).

Protocol Revno 63 (was 61)

  • Add INVALID_FILENAME error to protocol
  • Make downloads resumable

2009-08-13 Release

Client Revno 146 (was 134)

  • fix VolumeManager to correctly handle UUID's as share id

  • Fixes for states with bad transitions.
  • the handshake now times out, tries again, and ultimately gives up
  • Import with_statement in order to be Python 2.5 friendly
  • FileShelf.setitem now do the rename dance

  • discard broken metadata at startup
  • add DebugCapture to ubuntuone.syncdaemon.logger, and make use of it in sync in order to dump all debug logs if the loglevel > DEBUG and log with ERROR level is logged or in the case of an unhandled error.

  • Get rid of the animation for activity
  • Only show the icon when using network/resources
  • Wait for 30 seconds after the last status change to hide the icon
  • improve worst-case memory use, mostly via slots

  • Fix braindead zip queue blockage (it's call*In*Thread, not call*From*Thread)
  • Release 0.92.0
  • Fix VolumeManager.handle_SV_SHARE_CHANGED argument names in ...

Protocol Revno 61 (was 60)

  • Release 0.92.0

2009-08-11 Release

Client Revno 134 (was 113)

  • Client side modifications for the not-content-not-empty concept change.
  • Add an ellipse to the end of the menu item's name
  • Adds timing instrumentation to u1sync.
  • Fixes missing import issue for RotatingFileHandler

  • Protect the g_object_unref calls in finalize with checks for NULL
  • Protect the callbacks for dbus method calls with g_return_if_fails
  • Add u1sync.log to apport file attachments
  • Change the comment to be an imperitive verb in the launcher desktop file
  • Remove the comment from the generated autostart desktop file
  • Add a crashdb.conf to specify our upstream bug database
  • Fix apport hook to report upstream if not official Ubuntu packages
  • has the empty() method of the hash queue check whether the hasher is working, in which case the hash queue is not empty (even though the queue itself is). This impacts wait_for_nirvana

added two new options to cmdline/config: lsprof_file and heapy_monitor

  • Move the dbus_error handling to be redirectoed to the icon's handler
  • Change the applet behavior on dbus errors to run apport
  • Pop up a notification that a fatal error has occurred
  • Desensitize the connect and disconnect menu items
  • Change the tooltip to say Fatal Error and use an error icon
  • Add an ubuntuone-client-error icon for errors
  • Sometimes the HQ_HASH_NEW event is obsolete, discard it!
  • Changed FSM to allow the uuid to set several times, as long the uuid itself is the same.
  • Use ubuntu-bug for Report a Problem, instead of opening the filebug web page
  • Remove a couple extraneous debug log messages
  • Only pop the fatal error notification once, as we may get multiple errors
  • Retry "Connection to the other side was lost in a non-clean fashion." also
  • Adds the ability to reschedule (via dbus) which content operation will happen next.
  • When moving a file/dir to conflict, now avoids breaking similar paths.
  • This makes syncdaemon restart on UNKNOWN_ERROR. It also makes the syncdaemon go to UNKNOWN_ERROR on SYS_UNKNOWN_ERROR.
  • Add 'transactions' to Sync (FSKey) regarding FileSystemManager changes

Protocol Revno 60 (was 58)

  • Adds validation for fields that are supposed to be uuids and hashes.
  • Protocol messages for account and quota (free space) information.

2009-07-30 Release

New Client Revno: 113 (was 109)

  • Improve local rescan performance and memory consumption
  • Added a running flag to !AQCommands so that retries that aren't originated in the command itself
  • Move reactor thread management out of client
  • fix u1sdtool to correctly show non-ascii paths

New Protocol Revno: 58 (was 55)

  • Update the to the version from upstream trunk
  • Separate normalization and validation functions
  • Remove the unknown field tag @attr from the DirEntry docstring

2009-07-28 Release

New Client Revno: 109 (was 100)

  • Add some error checking to avoid crashing Nautilus on shutdown
  • Adds default capabilities set and the caps "negotiation" with the server
  • Only read stderr if xdg-open returns non-zero, and wait for the process before trying to read stderr
  • Fix a bug in LRUCache.delitem method

  • fixes for a couple of bugs in the metadata upgrade code
  • Import !DBusGMainLoop from dbus.mainloop.glib and add basic tests for ubuntuone.syncdaemon.main.Main
  • add capabilities support to u1sync
  • fix VM metadata upgrade whand en verison is None/"" and update upgrade from 0 and 1 to upgrade to the latest version (3)
  • Release 0.91.1 to get several fixes into Karmic

New Protocol Revno: 55 (was 54)

  • Add routine to validate and normalize filenames

2009-07-23 Release

New Client Revno: 94 (was 88)

  • Disable calling !DBus methods at start-up for SyncDaemon

  • Switch to using pyflakes by default
  • conflicts are now foo.u1conflict; partials are now
  • Release 0.91.0
  • Fix the python module installation to be correct and add --enable-pycentral for supporting installation to the pycentral locations
  • Set the max width, line wrap, and ellipsize mode on the error label for the browser launching error dialog

New Protocol Revno: 53 (was 52)

  • Release 0.91.0

2009-07-21 Release

New Client Revno: 94 (was 88)

  • replace calls to[dir|link] and os.path.exists with raw os.stat and stat.S_IS[REG|LNK|DIR] wihtin the same scope
  • main.wait_for_nirvana now also explicitly checks the request queues
  • minimize the times fileshelf touch the disk to do a key lookup. Also adds a new !LRUCache for the Fileshelf
  • Include gtk.h explicitly for building on GNOME 2.24.x systems
  • changed !DBus current_[up|down]loads to don't include deflated_size if isn't available and check if the metadata is still available, also updates u1sdtool to handle this new behaviour
  • Update apport hook to reflect new binary package naming

New Protocol Revno: 53 (was 52)

  • New messages and client code to be able to dialog to the server and discuss which capabilities are wanted from it.

2009-07-02 Release

New Client Revno: 63 (was 55)

  • upgrade the shares/d metadata
  • Bring back the sharing feature in Nautilus
  • Release 0.90.3
  • Python module layout simplification for packaging
  • Fix the signature of file_conflict method
  • Use GHashTable instead of GSList for a slight performance win
  • Fix the protocol "build" bits to work better
  • includes the stat of the file before start calculating the hash in the HQ_HASH_NEW event arguments

New Protocol Revno: 47 (was 45)

  • Release 0.90.3
  • Python module layout simplification for packaging

Important notes:'

  • Python package layout and module layout has changed
  • Client packages have been broken up so that individual components are more modular, to facilitate non-gnome clients, etc.
  • Due to the change of name for the installed protocol package, users updating from previous beta versions may need to uninstall/reinstall to perform an upgrade. This was not consistent across tested installations in QA, and the variance may have been due to environmental issues on the machine on which this was observed.

UbuntuOne/ReleaseNotes (last edited 2010-04-13 02:52:43 by joshuahoover)