r26 - 10 Aug 2007 - 15:05:57 - TedLeungYou are here: OSAF >  Projects Web  >  ChandlerHome > ChandlerReleases > ZeroPointThreeRelease > ZeroPointThreePlanning > WhatIsZeroPointThree

What Is 0.3?

PICK We released Chandler Release 0.3 on Thursday, 26 February 2004!PICK

This writeup is intended to explain what our 0.3 release is to someone who has not downloaded the release yet or is playing with 0.3 for the first time. This page also gives links to further explore our technology and suggests helpful ways in which developers can be more involved with the Chandler project.

What is 0.3?

0.3 is the last of our architecture-focused releases as described in our ProductRoadmapNov2004. It is not intended for end-users but rather targets developers who want an early preview into our architecture as we are developing it. Our architecture will continue to evolve, but starting with 0.3, we are finally able to start developing end-user features.

The two biggest architecture advancements in this release are the Chandler Presentation and Interaction Architecture (CPIA) and the Repository. This release marks the debut of CPIA, which is a UI layer in our architecture that is uniquely adapted for item-centric applications based on our repository. Not only does it abstract away implementation-specific UI widgets, but CPIA elements have direct access to our Repository via data-driven queries. In 0.3, our Repository now implements a transaction and threading model, and is a lot more robust and scalable.

You can find a comprehensive (but terse) listing of all the changes in 0.3 in HISTORY.txt.

0.3 High-level Deliverables

Also, please see ZeroPointThreeMapOfChandler for a general architectural overview of Chandler in 0.3.

Chandler Presentation and Interaction Architecture (CPIA)

The broad goals for CPIA are:
  1. Easy creation of both simple and sophisticated view layouts, particularly those anticipated in PIM applications (such as an email inbox view or a calendar view). These views come bundled with a rich set of standard behaviors and interactions.
  2. The contents of a view can be specified by a repository query that is stored within the view. Views are thus well integrated with the Chandler repository. CPIA objects also know how to load, display and save themselves and their contents.
  3. CPIA UI objects (called "Blocks") themselves are stored as Chandler items in the repository. As with all Chandler items, CPIA Blocks are fully introspectable. This approach provides an abstraction, allowing us, architecturally, to more easily create versions of Chandler (post-Canoga) for other platforms like web browser interfaces and PDAs. It also provides the basis for the Chandler UI editing tools that we plan to create after the Canoga release.

In 0.3, a large amount of work was spent developing and implementing CPIA and then converting and re-writing the UI portion of our entire application. Now almost all the views and high level events are described by CPIA blocks, with the CPIA blocks and views persisting in our repository.

Work in CPIA is by no means complete. The architecture will continue to evolve, so it's premature to write long-lived applications in CPIA at this point. However, we would very much like comment, feedback and issues about the architecture itself and our approach.

See CPIA status for more details on CPIA.

Chandler Repository

Please read RepositoryBusyDevelopersGuide and ExtendingChandler for more details on the repository.

After introducing the Repository in 0.2, we have made significant improvements in 0.3 including:

  • Multi-threading support
  • Transaction and roll-back support
  • Limited query support
  • Notification support
  • Large object (text and binary) support
  • Full-text search and integration with Lucene
  • Experimental repository sharing using SOAP as a transport
  • Unit Test Suite including load and performance testing (we can use more help here)

We are excited that the repository has reached a level of maturity and are eager for community validation and feedback:

  • Is our API usable and comprehensible?
  • Can you write performance or load tests/patches to pound on the repository?
  • Would you like to use our repository in your next application?

We would love to hear from you. Please send your comments, questions, and suggestions to the development mailing list, dev@osafoundation.org.

Caterpillar UI

Caterpillar UI is our code name for an initial, premature UI. It is a first step in designing our UI, but definitely not representative of what will be in Canoga. The main elements are the side bar, navigation bar, a very crude bookmark bar and the summary and detail views. It is described in screenshots by Mimi in ZeroPointThreeUI. (Not all of the screenshots are implemented as of the 0.3 release on 24 February 2004.)

The 0.3 UI is very skeletal. It is mainly intended to test visual and information design ideas. It's the bare scafolding we will use to build the final UI and as such contains many "placeholder" pieces. Our 0.4 release will contain a much more complete UI "landscape". Feedback on the UI is less helpful at this point and not encouraged. You are welcome to follow our progress as 0.4 develops.

Other Improvements

  • We have a reasonably comprehensive initial version of our ContentModel in a nicely auto-generated human-readable format.
  • A "parcel" is our unit of software package or plug-in. We have our parcel loading architecture in place in 0.3. See ExtendingChandler for more info.
  • CPIA objects are well-integrated and exercise the Notification Framework.
  • ZaoBao uses the agent framework to poll for fresh RSS feeds.
  • We have refined our build system and run a much larger suite of unit tests.
  • Finally, and perhaps most important, we are gaining developer momentum through a DevelopmentProcess? that is increasingly working well for us.

Running Chandler

In the normal case, running Chandler is very simple. You can double-click on the Chandler executable, named chandler (Linux), Chandler (Mac OS X), or Chandler.exe (Windows XP). Under Linux, you can also excute Chandler by typing ./chandler. Additional platform-specific information is in README.linux.txt, README.win.txt, and README.osx.txt.

If you compile Chandler yourself, the instructions are slightly more complicated: see RunningChandlerFromSourceReleases.

What should you expect when you run 0.3?

  • Starting up 0.3 is known to be very slow (30 secs to over a minute, depending on platform and machine) the first time you run the app. It's a little faster on subsequent launches.
  • Clicking on the Repository View in the side bar gives you a list of all Chandler items. It's a good diagnostic tool and also gives a good technical sense of what we mean by Chandler content items being item-centric. This is currently our most polished view.
  • The Demo view is a simple demonstration of CPIA. It is best viewed in conjuction with its associated source code, and is intended to show how easy it is to create CPIA views and elements.
  • ZaoBao (Chandler's RSS aggregator) has not only been CPIA-ized, but also exercises the Chandler Agent Framework to poll for fresh RSS feeds. You cannot add or delete feeds at this time.
  • The Mixed view is intended to test out ideas on how we can show items of various types in the same table. Bug #1207 describes some problems we are trying to fix on this view
  • Calendar, Contacts and Notes contain exactly those items. You will only see a calendar item initially. Under the "Test" menu, you can choose to generate different Items with completely fake data. When Items are generated, a Notification is broadcast via our Notification Framework to the views, causing an update of all relevant views.
  • Things you cannot do in 0.3:
    • Create any items (except by "auto-generating" fake items)
    • Edit or delete items
    • Any form of drag and drop

  • Our Bugzilla component list needs work. For now, most end-user bugs can probably be filed under "CPIA". If you're not sure what component to assign a bug. just leave it as "to be assigned".
  • We have a number of known bugs.

0.4 Release

For a preview to what we're planning for 0.4, see ZeroPointFourPlanning.


#Trash.CommentsWelcome2

Comments Welcome!

This is a place for posting comments. Anyone is welcome to contribute here, with any sort of comment smile

Chao: Thanks -- I think people will find this very, very helpful. -- Mitch


  • ChaoLam - 06 Feb 2004
  • ChaoLam - 20 Feb 2004 -- updated for 0.3 release
PageInfo
PageType DevDocPage
MaintainedBy ChaoLam
PageStatus Source of truth -- this page reflects current OSAF thinking?
Trash.CommentsWelcome2 Feel free to contribute comments?, either by adding to the Comments Welcome section of this page, or by posting to the dev list, or by sending mail directly to the person listed as maintaining the page.
Edit | WYSIWYG | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r26 < r25 < r24 < r23 < r22 | More topic actions
 
Open Source Applications Foundation
Except where otherwise noted, this site and its content are licensed by OSAF under an Creative Commons License, Attribution Only 3.0.
See list of page contributors for attributions.