[Chandler-dev] [Sum] April 24 - 30
Katie Capps Parlante
capps at osafoundation.org
Wed May 3 14:46:25 PDT 2006
Heikki will summarize build, release and qa threads separately.
Coding and design discussions
Reid posted a link to his implementation of the new markup bar, asking
for ideas on how to tackle a few problems. In particular, (a) buttons
all disappear temporarily when clicked and (b) the background of the bar
John pointed out that the errors about C++ objects being gone indicate
that C++ objects wrapped by Python objects are being deleted
unexpectedly. Grant tracked it down further, noting that the detail view
is being torn down and rebuilt (stamping changes the item's Kind).
Reid fixed the problem by changing synchronizeWidget() to
synchronizeSoon(), which dirties the block and defers synchronization
until later. This avoids deleting C++ objects out from under the python
wrappers. Reid filed bugs for the remaining problems.
*repository viewer displays collection structure*
Alec updated the repository viewer servlet to provide a graphical
visualization of how a collection is built. Alec showed the "mine"
collection, noting that we're using a Union set instead of a full
UnionCollection for (nonRecurringNotes + Inclusions) -- helps with
performance and might be a pattern to use elsewhere.
*deferring delete until commit*
Andi created a method view.deferDelete(), to help tackle a problem with
view merging. Subsequent calls to item.delete() do not fully delete the
item but mark it as DEFERRED. view.commit() effectively deletes the
deferred items. After commit() the view no longer defers deletes, at
least until deferDelete() is called again. Andi would like to make
deferDelete() the default mode, but didn't do so given the proximity to
alpha2 -- at the moment only the sharing view uses this mode. He notes
that code depending on an item being deleted immediately might have to
reconsider assumptions, and that onItemDelete() is a hook useful for
Brian Stearns asked if Chandler should run all views in deferDelete()
mode. Andi responded that only the sharing view should do this for
alpha2, but that we should consider using the mode as the default for
alpha3. Brian also asked about the use case where an occurence is
deleted due to recurrence rule changes, and the detail view needs to
stop displaying the item. Brian asked if an item watcher would fire to
signal the deferred delete. Andi responded no. Currently, watchers fire
as the attributes are removed from the deleted item (and the detail view
uses isDeleted() to know to not display the item). We'd need to add some
code to notify the detail view immediately of the deferred delete
(instead of waiting for commit).
Jeffery responded to Alec's proposal about directory renames, generally
agreeing with the proposal. Jeffrey pointed out that "import" is a
reserved word, and proposed that the ImportExport dialog code be moved
*adding items to sidebar collections*
John changed NewEvent to NewItemEvent. This event creates a new item,
adds it to a specified collection, and displays the item. John updated
the certificate parcel and menu code that creates new items. John
describes the api defaults.
Florian asked when contact management would show up in Chandler. Grant
explained that while we don't have plans to do a full address book in
0.7, we did plan on doing some contact infrastructure. We've proposed a
Google summer of code project for contacts.
Announcements and meetings
Philippe posted the agenda for the apps team meeting.
Brian Kirsch offered help with alpha2 bugs.
Bear pointed to a Python COM package at the python cheese shop.
Ted reminded people to put up summer of code projects.
More information about the chandler-dev