[Chandler-dev] [Sum] June 4 - 10

Katie Capps Parlante capps at osafoundation.org
Wed Jun 20 16:43:36 PDT 2007


Build, Release, QA
------------------
*Migration Checkpoint*
Aparna pointed out 3 remaining blockers for the migration checkpoint:
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008323.html

Bear spins checkpoints Monday and Tuesday:
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008333.html
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008334.html

Morgen fixed a bug Wednesday, Aparna asked for a new checkpoint:
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008347.html

Bear spun the checkpoint:
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008356.html

Aparna gave the ok on the checkpoint after acceptance tests passed:
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008358.html

Jared sent email to chandler-users after updating instructions:
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008361.html

*Tinderbox Cosmo upgraded to MySQL*
Bear upgraded the Cosmo instance used by sharing tests to use MySQL 
instead of Derby. This addresses intermittent 500 errors.
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008330.html

*Desktop bug triage*
Philippe, Sheila, Aparna and a few others started "bug scrubbing" 
sessions going through the 0.7 bugs to punt p4/p5 bugs and revisit p3 
bugs. Philippe asked developers to SWAG and comment on bugs, the 
information helps tremendously when deciding what should make Preview.
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008360.html

*Ship with prebuilt repository?*
Heikki asked if we should ship Chandler with a prebuilt repository. 
First time startup is 3x slower without it, which is not frequent but is 
a first impression. Heikki recommended *not* going ahead with it:
- increases download size and requires a copy to correct location on 
first startup OR
- causes us to launch on install to generate, which could be confusing/rude
Also, requires a fair bit of work. Heikki proposed altering the process 
messages in the splash screen, adding "Constructing database".
https://bugzilla.osafoundation.org/show_bug.cgi?id=4192
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008362.html

Bryan, Andi and Philippe agreed with Heikki's suggestion. Philippe noted 
that other FLOSS apps (e.g. GIMP) have first-starup performance issues 
as well, presumably for similar reasons: smaller download, simpler install.
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008366.html

Andi and Bear noted that a pre-generated repository would have the 
problem of every user having the same UUIDs for OOTB items.
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008374.html

As a side issue, Bear asked why we are storing UI information about 
display characteristics, observing this could be a problem if someone 
upgrades their monitor.
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008369.html

*Python build with Chandler icons*
Bear noted no version change, just a build with our icons instead of the 
default set.
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008382.html

If you are running full builds, you need SVN client 1.3+
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008385.html

*CATS III*
Mikeal noted that recorded scripts are now running on Tinderbox. 
Documentation is a work in progress. Differences from old framework:
- Tests must not depend on each other
- Framework uses metadata in the test modules to tell the framework how 
it should run (e.g. disabling a test or declaring dependencies on 
account settings)
Mikeal observed that we have 3 ways to collect and run tests: tools 
menu, Chandler command line, and rt. He'd like to see us using the one 
framework consistently. He'd like the tests to be able to be run in rt, 
and thus not depend on Chandler's Python. (Bug 9450).
http://chandlerproject.org/Projects/ChandlerAutomatedTestSystemThree
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008368.html

A discussion followed where Bear and Dan suggested they'd prefer a 
single file for managing an exclusion list. Mikeal argued that generally 
speaking, a central file for all meta data wouldn't be manageable or 
extensible as the number of tests grows, but was amenable to an 
exception for the exclusion list if Bear and Dan felt strongly about it. 
Aparna noted that both are primary stakeholders in the framework design, 
suggesting the QA team go ahead and implement that feature.
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008380.html
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008376.html

Other points mentioned in the conversation:
- meta data will be lost if a test needs to be re-recorded; this could 
be fixed by adding a "re-record" option
- new tests will need to be edited most of the time (e.g. to set up 
dependencies on accounts)
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008375.html
- The goal is to phase out tests from the old framework, the old 
framework will go away
- Jacob added a new dynamic menu under the Tools->scripting menu, 
listing all available tests. Mikeal's expectation is that developers 
will use this mechanism for debugging, not the --recordedTest command 
line parameter.
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008378.html

Dev
---
*wxPython drawing tips*
Heikki observed that SetPen is expensive, so rearranging code to 
minimize SetPen calls might be helpful to performance. Also, crossing 
the Python/wxWidgets boundary can be expensive. He also pointed out the 
DrawLineList method, simplifying some code.
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008332.html

*Collection __nonzero__ changed*
Andi changed Collection's __nonzero__ method, which had been hardcoded 
to always return True. It should instead mean "not empty", so Andi 
changed it to return False if the collection is empty. Andi found two 
instances in functional tests that needed to be fixed.
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008335.html
Andi amended his example:
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008336.html

*Harmful usage of len*
Heikki observed that we use len() frequently to determine if a 
collection, list, tuple, string, etc. is empty, which is wasteful. 
Python has a more appropriate method: __nonzero__. He also noted that 
some Chandler implementations of len() cause side effects (like creating 
indexes). More detail (including examples and timings):
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008340.html

John asked if __nonzero__ and __len__ would ever return an inconsistent 
values. Heikki and Grant both replied that it wouldn't for builtins, and 
shouldn't for Chandler code if written properly. Grant pointed out that 
if __nonzero__ is not implemented, and __len__ is implemented, boolean 
"typecasts" of the object will evaluate __len__.
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008346.html
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008348.html

Andi noted that repository code never creates indexes on its own 
initiative, John's Collection class is the one that creates an index in 
the implementation of __len__.
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008350.html

*File extension changed from .dump to .chex*
Bear explained that when we changed the menu names away from "Dump" 
using "Export" instead, we also changed the file extension from *.dump 
to *.chex. In the "Reload Items" dialog, the *.dump files are not 
enabled by default, you need to change the drop down control from 
"Export files" to "Dump files".
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008352.html

*Memory leaks*
Heikki tried a Valgrind analysis of Chandler to look for memory leaks, 
his analysis:
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008353.html

Code snippet he used to debug memory leaks in M2Crypto:
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008354.html

Robin noted one widgets item flagged was due to memory that should 
remain around for the life of the app; he was going to check into 
another one.
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008355.html

Meetings, Announcements
-----------------------
Desktop bug validation IRC session, making use of "bugzilla bugbash" 
soup features.
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008341.html

Ted sent a reminder about Google Summer of Code, now underway:
- Phil Jones (philjones) working on Natural Language Processing
- Vera Sheinman (vera46) working on Progress Reports
- Tim Pokorny (tpokorny) working on Comet Event Notification
Jeffrey is mentoring Phil and Vera, Bobby is mentoring Tim.
http://lists.osafoundation.org/pipermail/chandler-dev/2007-June/008357.html



More information about the chandler-dev mailing list