Personal tools

Places

From MozillaWiki

Revision as of 03:15, 11 January 2007 by JasnaPaka (Talk | contribs)

Jump to: navigation, search

Please comment in the Talk page (use the Discussion tab above)

Places is a new system for storing bookmarks, history, and other information about pages. It is currently scheduled to go into Firefox 3. This document covers much of the design and user-interface of Places. Developers looking into using places should see the developer documentation.

Note: Places has been disabled on the Trunk, as announced at the 9/20 Gran Paradiso Status Meeting, pending redesign. Once work is underway, we'll see about getting some of the tinderboxes to do Places builds alongside the non-Places builds.

We'll be using the mozilla.dev.apps.firefox newsgroup and this wiki for discussion and communication.

Contents

Goals & Objectives

The primary objectives of this project are to:

  • Improve access to History and Bookmarks
  • Make it easier for people to Bookmark pages

Secondary objectives include:

  • Consolidating user data formats
  • Providing a platform for using interesting per-URL metadata
  • Improving the capabilities of Live Bookmarks
  • Providing a solid architecture for bookmark sync and remote storage

Builds

As noted above, Places is currently disabled in the "trunk" build of Firefox. To use Places you must enable it at build-time using --enable-places. Detailed instructions for building Firefox are available in the MDC Build Documentation. Places builds are unstable and are recommended only for developers at this time.

Please file bugs in Bugzilla.

Overview

Implement new back ends for Bookmarks and History using the mozStorage system. Develop newer, more usable front end components to display results, emphasizing simple search and categorization.

Background

Studies from the late 1990s show that while revisitations of pages previously seen counted for roughly 39% of all page navigations (see Google Scholar), Bookmarks and History usage was low (1-3%), despite the fact that roughly 20% of those revisitations were to pages seen > 10 URLs ago (and thus outside the usefulness range of the Back button or menu).

Autocomplete in the URL bar is a useful tool but fails to address some common desires when looking up visited pages. There is a gulf between the capabilities of that tool, the capabilities of the Bookmarks and History systems today, and the desired capabilities of those systems.

Use Cases

Functional Requirements

TBD, but reasonable compatibility with Firefox 1.x

Plans & Design Documents

Design Documents

Much of the design information is on the developers wiki.

Special Containers

More to come...

Code Location

mozilla/browser/components/places/
for the front-end,
mozilla/toolkit/components/places/
for the back-end.

Team

With guidance from:

See Places:Task List for a list of tasks.

We'll be meeting every Thursday at 2pm PST in #places. See Places/StatusMeetings for the logs of the past meetings.

API Changes Required

The APIs for accessing Bookmarks and History will be replaced. APIs abstracting the layout of the metadata tables used in the profile storage file will be provided. See above for details.

Impact

Extensions

The APIs for accessing and manipulating Bookmarks and History are being replaced with new ones, and almost all Bookmarks and History user interface will be replaced or updated significantly. Any extension that does anything with History or Bookmarks will almost certainly have to be rewritten, at the very least to use the new APIs.

Performance

Bookmarks can have a non-trivial impact on performance, see Places:Performance for more information.

Discussion & Implications

Discussion Elsewhere

Archived Build Notes (obsolete)

Milestone 2 (1/30/2006):

What's new in this build:

  • Your existing history is now preserved and imported into Places.
  • You can search from the Places view
  • You can construct queries over your history/bookmarks and save them
  • If you are migrating to Firefox from another browser, your history and bookmarks are imported into Places.
  • Stability, performance, and bug fixes

Known issues:

  • It is recommended that you delete the file "storage.sdb" in your profile directory if you have previously run a Places build.
  • This build is based on the Firefox 2.0 branch. It still claims to be 1.5, so 1.5-compatible extensions will continue to function. Extensions that utilize the old bookmarks and history interfaces will not work correctly.
  • If you use the installer, you have to do a custom install and disable Quality Feedback Agent. Otherwise, the installation will error out.
  • Bookmark keywords do not work yet.
  • If your profile directory is on NFS, you will see slower performance.

Milestone 1 (12/15/2005):

This is our first public milestone build. It has a working Places view, history, and bookmarks (with import). There are a few known issues:

  • These builds are based on the Firefox trunk. As a result, any extensions which claim only 1.5.0.* compatibility will be disabled.
  • If you use the installer, you have to do a custom install and disable Quality Feedback Agent. Otherwise, the installation will error out.
  • Existing bookmarks are imported, but history is not yet imported.
  • Bookmark keywords do not work yet.
  • If your profile directory is on NFS, you will see slower performance.