Issue 277

3rd March 2013 by KDE Commit-Digest Team


Marta Rybczynska
Jürgen Appel

This Week...

KMail gets an important bug fixed: if more than one mail is received in one batch, mail filtering ignored some mails. KDE Telepathy improves name display from profiles and plugins, adds KDE global menu support. Akonadi improves Google services support by updating to LibKGAPI2: full support of contacts groups, improved fetching contacts photos, status and progress reporting, should be faster and more stable. Konsole makes search strings per-tab, not per-window. Work on LDAP password storing in KWallet. Wacom tablet support sees many improvements for button action selection, including widget and dialog. KDevelop's Ruby lexer is partially re-written. KTouch sees a rewrite of lesson text rendering that brings up support for non-Latin languages. Deletion from Amarok playlist works much faster.


Commits 2657 by 171 developers
Open Bugs 21097
Open Wishes 15857
Bugs Opened 327 in the last 7 days
Bugs Closed 557 in the last 7 days

Commit Summary

Module Commits
Files Developer Commits
Laurent Montel
Patrick Spendrin
Gilles Caulier
Marco Martin
Chetan Khona
Burkhard Lück
Yuri Chornoivan
Lukáš Tinkl
David Faure
Sebastian Kügler

Internationalization (i18n) Status

Language Percentage Complete
Ukrainian (uk)
Brazilian Portuguese (pt_BR)
Swedish (sv)
Estonian (et)
Polish (pl)
Dutch (nl)
Spanish (es)
German (de)
French (fr)
Italian (it)

Bug Killers

Person Bugs Closed
Jekyll Wu
Alex Fiestas
Aleix Pol Gonzalez
Jan Lepper
Christoph Feck
Laurent Montel
Andras Mantia
Dan Vratil
Andrea Diamantini
Myriam Schweingruber

Commit Countries

Commit Demographics




  Bug Fixes Features Optimization Security Other



Development Tools

[]   []   




[] []    

KDE Base

[] [] []   []


[] []   []  






[] [] []   []

Networking Tools

  []    []

User Interface



[] []    




  [] []   

There are 70 selections this week

Bug Fixes

Development Tools

Aleix Pol Gonzalez committed changes in [kdevplatform/1.5] plugins/git/gitplugin.cpp:

Improve git status support

When a file is renamed, report the name that has been removed too, so that
when we commit it, the removed files are passed too.


Benjamin Girault committed changes in [kipi-plugins] /ptoparser:

Panorama: bugfix

Fixes char* filename conversion from and to QString

KDE Base

Emmanuel Pescosta committed changes in [kde-baseapps] /src:

Big Thanks to Frank Reininghaus, who helped me a lot with these
changes! :)

* Fixed the "Network browser" and "timeline" issues, by using the
KDirLister's itemsAdded(KUrl,KFileItemList) signal -> Use the
given Url to define the parent-child relationship.

* Changed the name of the slot "slotNewItems" to "slotItemsAdded"
for consistency with the signal.

* Use a QHash<KFileItem, ItemData*> instead of a QSet<KFileItem> to
store the filtered data (needed to keep the O(1) lookup for filtered
KFileItems in slotItemsDeleted + needed to fix bug 311912 "After
erasing a filter, some thumbnails randomly disappear")

* Made the determination of the "expandedParentsCount" slightly
simpler - just adding 1 to the parent's level (Also needed to fix the
"Network browser" and "timeline" issues)

FIXED-IN: 4.11.0
REVIEW: 109180

David Edmundson committed changes in [lightdm/v0.3] greeter/rootimageapp.cpp:

Set the default cursor on the X Root Window

This stops the cursor flashing a black X when logging in.

REVIEW: 109199

Martin Gräßlin committed changes in [kde-workspace] /:

Remove doNotManage hack for Java Applets

The hack used to be used to hide windows before they get embedded into
another window. This has been wrong on multiple levels:
1. it does not belong into a window manager - the window should take care
of this by itself
2. Window title is not a proper way to identify windows
3. Using D-Bus to inform an X11 window manager about windows which should
not get managed is rather strange
4. The hack only works with KWin, but not with any other X Window Manager
5. Windows identified with this hack still appear in Alt+Tab, that is
they are managed after all. Only a flicker is suppressed
6. Such windows are shown in the taskbar which nicely illustrates how
wrong a D-Bus call to the window manager is

That the hack has been introduced for Java Applets in KHTML also shows
that this is wrong. Why does Gecko and WebKit not need such a hack? Why
is KHTML tied so closely to X11 and KWin? Having a hack for a technology
which is obsoleted (Java Applets) and shouldn't be used due to security
issues is another reason to no longer support this hack. This usage has
been removed from KHTML as of 67939b1 of kdelibs git repo.

REVIEW: 109450

Diffs: 1, 2, 3, 4, 5 Revision 0b00b4c...


Laurent Montel committed changes in [kdepimlibs] akonadi/collectiondialog_desktop.cpp:

Fix Bug 315917 - kontact crashes when saving a distribution list

FIXED-IN: 4.11

Laurent Montel committed changes in [kdepim/KDE/4.10] messagecomposer/composerviewbase.cpp:

Fix Bug 315617 - kmail asks to resize images when there aren't any

FIXED-IN: 4.10.1

Wolfgang Rohdewald committed changes in [kdepim/KDE/4.10] mailfilteragent/mailfilteragent.h:

fix mailfilter ignoring some incoming mails

mailfiter uses changeRecorder() only as a monitor and so the slots
must not call changeProcessed(). So we need to override all functions
processing the notifications because their default implementations
do call changeProcessed(). But changeProcessed() dequeues a notification
from pendingNotifications if there are any, and if it does, a
notification is lost.

A better fix would be to change the default implementations such
that they only call changeProcessed() if changeRecorder() is
in recorder mode.

FIXED-IN: KDE/4.10.1

DIGEST: if more than one mail is received in one batch, mail filtering ignored some mails

Laurent Montel committed changes in [kdepimlibs] /:

Fix Bug 315212 - Feature Request - for Contact custom field creation

FIXED-IN: 4.11

Laurent Montel committed changes in [kdepim/KDE/4.10] /core:

Fix Bug 312436 - "Important" tag duplication in some mails

FIXED-IN: 4.10.1

Laurent Montel committed changes in [kdepimlibs/KDE/4.10] akonadi/contact/emailaddressselectionwidget.cpp:

Avoid to have an error message on wince. Don't know if it was fixed on wince

David Faure committed changes in [kdepimlibs/KDE/4.10] kimap/session.cpp:

Fix crash in qDeleteAll(), due to the item dtor modifying the container.

FIXED-IN: 4.10.1

Aleix Pol Gonzalez committed changes in [ktp-common-internals] /Declarative:

PinnedContactsModel cleanup

This fixes some problems in the pinned contacts model:
- Use KTp::ContactPtr instead of Tp::ContactPtr
- Compare contact pointers instead of id's. Don't make sure that the
account is the same.
- Add comment explaining why we need to delay the dataChanged when a
conversation state changes. Also use the proper index.

REVIEW: 109136

Diffs: 1, 2, 3 Revision b0a12df...
Martin Koller committed changes in [kdepim/KDE/4.10] mailcommon/foldertreewidgetproxymodel.cpp:

make sure the messagelist only shows selected folders

When the folder tree is filtered and the currently shown folder is
now no longer in the folder tree, the automatic deselection did not work
because the hidden folders were set to not-selectable and not-enabled,
but QItemSelection can only deselect selectable and enabled items.
This led to the problem that we saw the old selected folder and any
newly selected folder intermixed in the messagelist.

David Faure committed changes in [kdepim-runtime/KDE/4.10] resources/imap/sessionpool.cpp:

Fix crash in SessionPool::onPasswordRequestDone, again due to m_pendingInitialSession.

It could become dangling in the following case:
- wrong imap password, error dialog shows up, leave it up
- wait for connection to drop (idle timeout, or maybe due to losing network altogether)
- resource reconnects, wrong password still, error dialog show up.
When closing them both, the 2nd one ends up in SessionPool::onPasswordRequestDone with
a dangling m_pendingInitialSession.

David Faure committed changes in [kdepimlibs/KDE/4.10] akonadi/specialcollections.cpp:

The overuse of the [ ] operator on QHashes, lead to storing invalid collections.

, 303117, 307016
FIXED-IN: 4.10.2
REVIEW: 109208

Laurent Montel committed changes in [kdepim/KDE/4.10] blogilo/src/addeditblog.cpp:

Fix Bug 312181 - Blogilo don't unescape blog html titles correctly

FIXED-IN: 4.10.1

Sergio Luis Martins committed changes in [kdepim-runtime] resources/google/calendar/calendarresource.cpp:

Remove hack.

libakonadi-calendar now supports UID modification.
No longer crashes.

This kdepim-runtime branch will be merged when kdepim calendaring
branch is merged into master.

Laurent Montel committed changes in [kdepim/KDE/4.10] kmail/kmmainwidget.cpp:

Fix Bug 315207 - "Save attachments..." command not easily discoverable

FIXED-IN: 4.10.1

Now when we right click in messagelist we have it.


Boudewijn Rempt committed changes in [calligra/calligra/2.6] krita/ui/kis_view2.cpp:

If creating the canvas failed, disable opengl

Since a problem with the opengl drivers is the most probable problem.
This means that users no longer have to manually edit or remove their
kritarc file.


Ralf Engels committed changes in [amarok] /:

Fix: amarok erroneously merges two albums

We are now keeping the information that an album artist is set until
the very end. So albums with an album artist and only a guessed
album artist are not merged.

Also add auto test for "Amarok collection scanner not handle correctly


Jean-Baptiste Mardelle committed changes in [kdenlive] src/customtrackview.cpp:

Don't corrupt project when adding a title clip and a transition already is in place

Sujith Haridasan committed changes in [plasma-mediacenter] /newshell:

Fixing volume level issue during the pmc startup. Now pmc will
remember the old setting of volume while relaunched, which set by the user.

Ralf Engels committed changes in [amarok] src/context/engines/current/CurrentEngine.cpp:

Fix: Move tracks to rubbish and the current track cover changes to the deleted cover

I hope that fixes it.


Sujith Haridasan committed changes in [plasma-mediacenter] /:

Fixing Play All in the All Music's songs section. User can click
the Play All and play the songs instantly.

Matěj Laitl committed changes in [amarok] /:

LastFmServiceConfig: allow going from pwd stored in ASCII to pwd stored in KWallet entering empty username and password.

* Prevent inability to save password in corner cases.



Jan Lepper committed changes in [krusader] /:

FIXED: [ 238672 ] When saving checksums fails, they are lost. No 2nd chance to save elsewhere.

Add check whether any error occurred during writing of the file.

Remove "Save checksum to file:" checkbox since it's redundant -
if the user doesn't want to save, he can simply cancel.



Marcel Wiesweg committed changes in [libkexiv2] /:

Improve merging of sidecar with image metadata.

If there is a sidecar, image metadata may remain, but can be outdated if image shall not
or cannot be edited. Even more, a field can be removed from a sidecar as part of an explicit
editing operation, in which case it may remain in the image metadata, but needs to be ignored.

For those fields were a mapping between EXIF, IPTC to XMP is cleanly defined,
implement merging which takes into account the points listed above.

KDE Base

Sebastian Kügler committed changes in [plasma-framework] /plasma:

Make validation of zipped packages possible

- move the unpack block into its own function
- unzip if necessary, and point validator and metadata loader at this
- manually delete the tempdir, to keep it as long as the Package is

This patch makes it possible to upgrade packages from .plasmoid files.

Sebastian Kügler committed changes in [plasma-framework] /:

positioning for popups

- default top TopEdge
- Swap edges if specified
- shift on non-specified edges
- all borders, edge-cases (ha!) are confirmed working
- cleaned up some cruft

Not taken care of yet:
- framesvg border disabling
- sliding effect w/ kwin
- smarter resolution of visualParent

Kurt Hindenburg committed changes in [konsole] src/SessionController.cpp:

Search toward most recent lines by default

Current history search searches "down", wrapping instantly from the
current location to search from oldest to newest. As lines in a
terminal generally decrease in relevance as they move away from current
output, the most relevant lines and therefore search results can be
found "upwards" of the current output line.
This patch makes searches default to "up".

Patch by Lindsay Roberts

REVIEW: 108998

Kurt Hindenburg committed changes in [konsole] /:

Make search strings per-tab, not per-window
Currently the presence of the search bar is maintained per-tab, but the
search term itself is per-window. This leads to curiously inconsistent
behaviour. I believe there is little to suggest search terms remain
relevant across different tabs, and there is significant user
expectation that search terms/bar constrained to a tab (see browsers).

Patch by Lindsay Roberts
REVIEW: 109130

Diffs: 1, 2, 3, 4 Revision b2adf8d...
Gabriel Poesia committed changes in [nepomuk-core] /:

Add a new tool NepomukCtl (Nepomuk server manipulation tool)

This is tool was proposed in the 4.11 roadmap:

Alexander Neundorf committed changes in [kate] /plugins/search:

search&replace: only switch to project-mode if that was also saved

Instead of always automatically switching to project mode when a project
becomes available, only switch to project mode if this mode was also
saved in the config.


Lukáš Tinkl committed changes in [kde-workspace/KDE/4.10] powerdevil/daemon/actions/bundled/brightnesscontrol.cpp:

place the brightness OSD on the primary desktop

this should fix problems observed with KScreen when the OSD is wrongly
shown on the external monitor, not making sense at all

Martin Gräßlin committed changes in [kde-workspace] /:

Port SceneXRender to XCB

SceneXRender no longer uses XRender from XLib, but only XCB.

REVIEW: 109190

Vishesh Handa committed changes in [nepomuk-core] /:

New Tool - nepomukshow

It can used to dump the contents of any resource to stdout. It has
additional flags which can be used to control if inferencing should be
enabled or not.

This is being imported from kde:scratch/vhanda/nepomuk-show. I don't
care that much about the history that much, so I'm not importing it.

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 37e6858...
Kåre Särs committed changes in [kate] /plugins/search:

S&R: Start searching for the next match after the end of the previous match

FIXED-IN: 4.11


Dan Vratil committed changes in [libkgapi/greader] /:

Port greader branch to LibKGAPI2 API

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 28 more) Revision 5b71a02...
Laurent Montel committed changes in [kdepim] /:

Start to implement store ldap password in kwallet

Laurent Montel committed changes in [kdepimlibs] kpimtextedit/insertimagewidget.cpp:

Add image preview

Dan Vratil committed changes in [kdepim-runtime] /:

Port Akonadi resources for Google services to LibKGAPI2

Resources now use the new job-based API, which is more
flexible and solves many problems that were very hard
to fix with the previous API.

Lot of duplicated code has been factored out and moved
to /resources/google/common.

Featurewise, Google Contacts resources now fully supports
contacts groups and fetching contacts photos has been
notably improved, Google Calendar resource has improved
tasks handling and both resources have better status and
progress reporting and should be faster and more stable.

FIXED-IN: 4.11


Frank Osterfeld committed changes in [kdepim/akregator_port] /:

Remove features, merge configuration screens

The features
Mark as read on startup, Fetch all feeds on startup, Use browser cache
are obsolete/don't make much sense anymore when using Akonadi.
So remove the config options and merge the remaining one (Tray icon) into
the appearance page.

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision d2350dc...


Marco Martin committed changes in [plasma-mediacenter] shells/newshell/package/contents/ui/mediacenter.qml:

basic support for SLC

export to SLC with a PlasmaExtraComponents.ResourceInstance{}
following logic:
if the image viewer is visible, has a source and is not covered by a media browser, the image will be the SLC exported url, otherwise export the url of the mediaplayer

Networking Tools

Andrea Diamantini committed changes in [rekonq] /download:

If KGet is selected as download manager, let it decide destination

to let this work, we had to change rekonq behavior, NOT
remembering in rekonq downloads history what has been downloaded
via KGet

David Edmundson committed changes in [ktp-contact-list] /:

Add KDE global menu support

Added global menu support.
Menu is not appearing in main window, so it's tiny look is not broken.
I also moved actions for menu from MainWidget constructor to class private scope, so they can be used from any method.

REVIEW: 109142

FIXED-IN: 0.6.0


Lamarque Souza committed changes in [libnm-qt] /:
Roman Nazarenko committed changes in [ktp-text-ui] /:

Send Message shortcut is now configurable

REVIEW: 109202

Daniele E. Domenichelli committed changes in [ktp-accounts-kcm] /:

Merge branch 'displayname'

Reviewed-by: David Edmundson
REVIEW: 103628


Andrea Diamantini committed changes in [rekonq] src/webwindow/webwindow.cpp:

Add a CTRL + SHIFT + N default shortcut for private browsing

This has been requested on my blog. I found Chrome using it and no
other one browser using for anything, so...

Lukáš Tinkl committed changes in [networkmanagement/connection-editor] /:

add wireless config widget

Diffs: 1, 2, 3, 4, 5, 6 Revision e9bd9e3...
Dan Vratil committed changes in [ktp-contact-list] /:

Add notification settings into configuration dialog

REVIEW: 109139


Andrea Diamantini committed changes in [rekonq] src/webtab/webview.cpp:

Make rekonq use the selection (PRIMARY) for MMB clicks

The Selection is what usually gets pasted when one does an MMB click,
so it makes sense to use that as search term or URL to load.

(Thanks, Thiago!)

REVIEW: 109107

Andrea Diamantini committed changes in [rekonq] /:

AdBlock Improvement

Hiding rules support (at least the easy ones, the most ones, against
hiding id && classes)

To test it, take a look (in example) at the url:


Daniel Nicoletti committed changes in [apper] /:

We now have information about the flags set in the transaction, which allows to filter some messages and provide a better name for actions, like "Downloading Updates"

Jonathan Michael Thomas committed changes in [libqapt] src/worker/aptworker.cpp:

Properly report errors that occur during ListUpdate that aren't reported when any particular item fails



Alexander Maret-Huskinson committed changes in [wacomtablet] /kcmodule:

Improved button action selection widget and dialog.

* The button action selection dialog now returns the previous shortcut if the dialog was canceled.
* The button action widget will now disable the current action label if no shortcut is set. This gives the user a better visual feedback.
* Updated the pen- and pad-widget to reflect the new changes.
* Removed obsolete code.

Diffs: 1, 2, 3, 4, 5, 6 Revision 316b3a2...
Alexander Maret-Huskinson committed changes in [wacomtablet] /:

More button action changes.

* Removed toggle display/mode features as they are no longer supported by xsetwacom.
* Unified button action selections accross the pen widget and pad widget tabs.
* The mouse button selection dialog now sets the current setting as default.
* Added a group box to the mouse button selection dialog to make it look nicer.
* Named the default mouse buttons which should be available on all mice.
* Removed obsolete toggle code from ButtonShortcut.
* Updated ButtonShortcut unit test to reflect the changes.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 6fad76d...
Alexander Maret-Huskinson committed changes in [wacomtablet] /:

Many improvements for button action selection.

* Added a new button action selector widget which will replace all drop down boxes.
* Updated PenWidget to make use of the new selector widget.
* Made the action button selection dialog look nicer.
* Moved global shortcut detection code into ButtonShortcut.
* Removed double click widget from PenWidget as it was never used and made the dialog look ugly.
* Removed some obsolete code.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 2 more) Revision b7ab35d...


Development Tools

Miquel Sabaté committed changes in [kdev-ruby] /:

Partial re-write of the lexer.

This commit contains a partial re-write of the lexer that can be found in
the parser/parser.y file. Tests have been updated. This time the lexer is
structured in a giant switch statement, making it faster and smaller. Moreover,
this commit comes handy for future optimizations on the parser.

Note also that the support for heredocs has been removed. This is because the
current support is broken, and I plan to provide a proper implementation in
the near future.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 15 more) Revision 534bfd4...


Sebastian Gottfried committed changes in [ktouch] /:

rewrite lesson text rendering

Previously I have employed a lot of individual Text elements to
assemble the lesson trainer. This worked well for languages with
a Latin alphabet but was insufficient for pretty much anything else
since it was unable to render typographic ligatures and had no support
for right-to-left training.

The new implementation fixes all these issues with a new taylor-made
declarative item encapsulating a QTextDocument instance to do
the lesson text rendering.

As a nice side effect the text rendering looks much better now since
the letter-spacing is now correct. Previously I had no control over
the font hinting settings and the results of hintend and scaled text
were hideous. Therefore the training text is now rendered only with
vertical hinting.

As a bonus the new component is also used to render the lesson previews
on the home screen. That way the appearance there and in the training
screen are coherent and the previews also benefit from the improved
text rendering quality.

FIXED-IN: 4.11

KDE Base

Vishesh Handa committed changes in [kde-runtime/KDE/4.10] nepomuk/kioslaves/search/searchfolder.cpp:

Nepomuk SearchFolder; Better fetching of the user visible name

Try properties such as nao:prefLabel and nao:label with inference before
trying the other properties.

FIXED-IN: 4.10.1

Aaron J. Seigo committed changes in [kde-runtime] plasma/declarativeimports/core/iconitem.cpp:

only create a new svg object if we don't have a new one

prevent ballooning memory from setting source repeatedly


Ralf Engels committed changes in [amarok] /playlist:

Speed up deleting many items from playlist.

Originally removing 10000 items took me 55s.
Following changes decreased the time to 4.3s.

- Improve Status widget
- Use references for tracks from PlaylistItems. Updating the reference
count for tracks took a long time.
- Use references also for the playlist functions. Since the calling
function already has the shared pointer it's impossible that
it can run out of scope.
- Unsubscribe after the removals have been done since we have
a smaller list to check.

Diffs: 1, 2, 3, 4, 5, 6 Revision 861143c...


Alexander Maret-Huskinson committed changes in [wacomtablet] /:

Updated all shortcut handling code to make use of the new ButtonShortcut class.

* Added some more methods to ButtonShortcut.
* Updated shortcut handling code in PadButtonWidget, PenWidget, SelectKeystroke and XsetwacomAdaptor.
* Removed lots of obsolete code.
* Refactored a lot of UI code to make it cleaner and more maintainable.
* Updated xsetwacom unit tests to reflect the XsetwacomAdaptor changes.
* Added more tests to the ButtonShortcut unit test.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 6 more) Revision c35f0e6...



Laurent Montel committed changes in [kdepim] /ldap:

Fix Bug 315954 - LDAP password stored in clear text

FIXED-IN: 4.11


KDE Base

Marco Martin committed changes in [kdeplasma-addons] /nowplaying/package/contents/ui:

Visual cleanup of nowplaying widget

patch by Tjaart Blignaut

This patch
- allows the now playing widget to automatically size text when the widget is sized. The sizing is a function of height with some of the width also causing teh text to size.
- makes the play controls slighty bigger and easier to press
- Adds some margins to all the controls
- makes the progress bar a bit fatter
- Removed the "by" and "on" text

Diffs: 1, 2, 3 Revision 3c4dc30...
Andriy Rysin committed changes in [kde-workspace/KDE/4.10] /keyboard:

Don't ignore web cameras when reconfiguring keyboard layouts on new device xinput events

FIXED-IN: 4.10.1


Matěj Laitl committed changes in [amarok] /:

Biggie: introduce library to avoid building things in shared/ twice

Shared libraries exist to *cough* share built code, use them! This is first part
of much larger buildsystem changes planned in Randa 2012.

This also brings some other changes that were needed, namely avoiding UTILITIES_BUILD.
>From changes to top-level CMakeLists.txt it may look as if kdelibs are now needed even
when just utilities (not player) are built. This was however the case for at least a
year now. To be able to build utilities w/put kdelibs we'd need:
a) require newer CMake to do automoc for us
b) replace KDE's KMimeType by Qt5's QMimeDatabase

Static member s_fileTypeStrings of FileTypeSupport is not used outside
the FileType.cpp -> make it a plain static compilation unit variable to
prevent problems with static variables shared across multiple shared

@Patrick: this needs at least build testing on Windows to ensure I've done the
KDE_IMPORT/EXPORT macros right.

CCMAIL: Patrick von Reth

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 29 more) Revision 6f9edfd...

Networking Tools

David Edmundson committed changes in [ktp-accounts-kcm] /KCMTelepathyAccounts:

Remove WLM from wizard page

MSN is being dropped, we still support it, but it shouldn't be one of our main options

FIXED-IN: 0.6.0
REVIEW: 109093