Planning

Differences between revisions 1 and 62 (spanning 61 versions)
Revision 1 as of 2010-04-06 15:58:40
Size: 2562
Editor: 82-69-40-219
Comment: move from internal wiki
Revision 62 as of 2010-04-30 16:09:13
Size: 13529
Editor: eth0
Comment: added a link to multi-touch UDS sessions
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
<<TableOfContents>>
Line 3: Line 5:
 * move CD booting to grub2/gfxterm (ColinWatson)
 * smoother boot splash via grub2/efifb (ColinWatson, ScottJamesRemnant)
 * multiarch redux
 * find and aggressively deal with packages whose merges have been lagging for several releases
 * finish Upstart (ScottJamesRemnant)
 * Implement the [[https://docs.google.com/a/canonical.com/Doc?docid=0AU5sFuLRpCpBZGZra2pqY2pfMTAxZ25rcnBnNXY&hl=en|installer redesign spec]] (EvanDandrea)
 * make update-notifier a more modular design (probably with vala), it has out-grown to be a update-notifier since some time (MichaelVogt)
 * make screenshots.ubuntu.com show ubuntu branding and add support for PPAs and archive.canonical.com (MichaelVogt)
 * [[UbuntuSpec:foundations-m-cd-boot|move CD booting to grub2/gfxterm]] (ColinWatson)
 * [[UbuntuSpec:foundations-maverick-grub2-boot-framebuffer|smoother boot splash via grub2 and a boot framebuffer]] (ColinWatson, ScottJamesRemnant)
 * [[UbuntuSpec:foundations-m-multiarch-redux|Multiarch Redux]]
 * [[UbuntuSpec:foundations-m-package-culling|Package Culling]] - find and aggressively deal with packages whose merges have been lagging for several releases
 * Finish Upstart (ScottJamesRemnant)
   * [[UbuntuSpec:foundations-m-upstart-q-and-a|Upstart Q&A UDS session]]
   * [[UbuntuSpec:desktop-maverick-upstart|Desktop and Upstart]]
   * [[UbuntuSpec:server-maverick-upstart|Server and Upstart]]
   * [[UbuntuSpec:kernel-maverick-|Kernel and Upstart]]
   * [[UbuntuSpec:arm-m-upstart|Ubuntu on ARM and Upstart]]
 * [[UbuntuSpec:foundations-m-installer-redesign|Implement the installer redesign spec]] (EvanDandrea)
 * [[UbuntuSpec:foundations-m-update-notifier-refactor|Refactor update-notifier]] - make update-notifier a more modular design (probably with vala), it has out-grown to be a update-notifier since some time (MichaelVogt)
 * make screenshots.ubuntu.com show ubuntu branding and add support for PPAs and archive.canonical.com (MichaelVogt) -- should this be a bug ticket? a work item in some blueprint?
 * [[UbuntuSpec:foundations-m-package-removal-in-upgrade|Remove Demoted Packages on Upgrade]] - We need to explore the removal of demoted packages on upgrade (all, only auto-installed ones, only default installed ones, only unused... how to detect).
 * [[UbuntuSpec:foundations-karmic-install-updates-when-installing|Download updates while installing]] (EvanDandrea)
 * [[UbuntuSpec:foundations-m-release-upgrader-dbus-refactor|D-Bus Refactor of release-upgrader]] - discuss refactoring the release-upgrader backend as a dbus service to improve reliability/responsiveness (MichaelVogt)
 * [[UbuntuSpec:foundations-m-btrfs-support|btrfs Support]]
 * [[UbuntuSpec:foundations-m-uefi-support|UEFI Firmware Support]]
 * [[UbuntuSpec:foundations-m-openjdk-updates|OpenJDK6 updates for older Ubuntu releases]] (MatthiasKlose)
 * [[UbuntuSpec:foundations-m-cd-build-speed|CD build speed]] - CD build speed has been creeping back up of late; attack it again
 * [[UbuntuSpec:foundations-m-upgrade-and-install-testing|Discuss testing]]

== Foundations Support ==

As usual, Foundations will be providing Ubuntu support for the other teams. A high-level listing of projects where we likely will be involved is given in this section.

=== Desktop ===

 * [[UbuntuSpec:desktop-maverick-desktop-application-selection|Desktop Application Selection]] - As part of their UNE work, Desktop may end up promoting Chromium to main; may need help from Foundations to do this
 * HUGE push for Software Center
   1. goal: sell stuff in software center,
   1. [[UbuntuSpec:desktop-maverick-opportunistic-apps-stable-release|Opportunistic Apps in Software Center]] - figure out how to deliver opportunistic apps via the software center
   1. [[UbuntuSpec:desktop-maverick-sofware-center-ratings|Software Center Ratings]] - finish ratings work
 * [[UbuntuSpec:desktop-maverick-touch|Touch Support]] - Big push for touch, not sure what the impact is going to be for Foundations yet, but we need to be aware of it
 * [[UbuntuSpec:desktop-maverick-easy-wayland-testing|Wayland Testing]] - functional testing and related packages in Universe

=== Design ===

 * We probably ought to have a look-in on the multi-screen work, if it's dealing with remembering configurations for individual devices;
 * Installer, first boot, upgrades, Update Manager, and Software Centre;
 * System settings (maybe, depending on what this comes down to);
 * Possibly keyboard indicator but it depends what they're doing (if it's just visual then probably not).

=== Server ===

 * [[UbuntuSpec:server-maverick-cloud-gluster|Gluster FS for the Could]] - Cloud cluster file system (not sure if we'll be needed for this or not)
 * Java/JDK improvements (doko does a lot of that; Server team is getting a Java person, so this may impact us less)
   * [[UbuntuSpec:server-maverick-jboss|Interate JBoss]]
   * [[UbuntuSpec:server-maverick-java-frameworks|Java Frameworks]]
 * Support of alternate install modes
 * [[UbuntuSpec:server-maverick-upstart-conversion|Upstart conversion]]

=== Kernel ===

 * Improved battery power support work; Foundations may need to (or be able to) assist
 * synaptec multi-touch (multi-finger... not multi-touch)
 * new multi-touch driver enhancements that may need work from Foundations
   * [[UbuntuSpec:dx-m-multi-touch-overview|Multi-touch overview]]
   * [[UbuntuSpec:dx-m-multi-touch-architecture|Multi-touch architecture]]
   * [[UbuntuSpec:dx-m-multi-touch-and-kernel|Multi-touch and Kernel]]
   * [[UbuntuSpec:dx-m-multi-touch-userland-support|Multi-touch Support in Userland]]
   * [[UbuntuSpec:dx-m-multi-touch-development|Mutli-touch Toolkit Development]]
   * [[UbuntuSpec:dx-m-multi-touch-app-conversion-and-dev|Multi-touch Application Conversion and Development]]

=== OEM ===

==== General Priorities ====

 * Software Center enhancements (High) - Already planned
 * Multi-touch tablet support (Med) - Foundations work here may not be very strong; DX and Desktop, however, will be deeply involved

==== Base Platform ====

 * Hardware support for the new Intel (and likely AMD) CPU/chipset/GPU support (High) - 90% Kernel ownership; 10% Foundations
 * Remove use of intramfs in desktop and netbook editions (Med) - Foundations will support OEM removing this; however, Foundations actually needs initramfs to support more complicated use cases
 * Use swap files by default (instead of swap partitions) (Med) - Foundations would like to see this; there is an existing spec [TODO: find it]; ran into kernel problem (out of memory)
   * More flexible than swap partitions -
   * Need to make this work with hibernate/hybrid suspend
 * Energy Star compliance power settings by default (High) -
 * Add btrfs support - option at install time (High) - Already planned
   * More efficient for storing lots of small files. Helps w/ OS size and may help boot time
   * Supports compression. Good for OS size and may help boot time too.

==== Usability and Performance ====

 * Continue boot performance work, 10s goal for Dell Mini w/SSD, Lucid is still above that (High) - This goal was for unity, however there is no harm in continuing work; most work on this will likely be done with Scott finishing upstart
 * Hybrid suspend/hibernate by default. Allows the system to go to sleep, but also stores a hibernate image on disk. If the battery dies, the system wakes from the hibernate image (Med) - this might be ideal... however, not sure how feasible it will be; would make suspend a lot slower; means we'd be forced to use dodgey kernel hibernate code

==== Internationalization ====

 * Collaborate with i18n upstream more closely, especially on release schedule, e.g., we missed ibus-1.3 for LTS 10.04 (High) - general platform issue; Foundations will host a UDS discussion for this
 * Per-language ISOs (e.g. a Chinese ISO, a Swahili ISO, etc) (Low) - Foundations can't support this as a whole -- it would explode our test cases; however, Foundations will work with OEM if they need help generating their own ISOs

==== Small Disk Configuration Support ====

 * Audit packages and see if "depends" can become "recommends", making it easier for OEM to reduce dependency lists. (High) - let's use the bug-filing process to accomplish this: OEM can file, and Foundations can address this on a case-by-case basis
   Example: xserver-xorg depends on xserver-xorg-video-all (actually, it depends on this OR a single driver) which pulls in *all* video drivers; if it were only recommended, you could specify only xserver-xorg-video-intel e.g. for your image
 * Remove all on-disk help/documentation and move it online. At the very least, split documentation into separate foopackage-doc.deb and make it a recommends. (High) - this is not appropriate for all use cases; we need to address this on a case-by-case basis; doing for all would guarantee that the index files would explode in size
 * Compressed r/w filesystem (High) - we will get this via btrfs
   * If btrfs is not feasible for some reason, we need a 'blessed' (by distro) r/w filesystem that supports compression (reiser, something FUSE-based, something else?)
   * We need r/w support to prevent the problem of updates taking too much disk space when using a r/o compressed filesystem like squashfs+unionfs
 * Updates for small disks - perform update as a sequence of partial atomic steps to minimize the use of disk (Med) - we do this now... so Foundations needs more detail to understand what need is not being fulfilled; OEM may mean downloading chunks and then applying it?

==== Other ====

 * BIOS validation tool (kernel team problem, not foundations? Colin King already working on this?) (High) - mostly Kernel with some Foundations
 * More stress testing before release (Med) - we will create UDS session for this: improving our testing procedures, using more automated tests, further brainstorming, etc.


== Support FOR Foundations ==

Collect here items which we would like to see be done by other teams

=== Desktop ===

 * Java Applet maintainance / development
 * Stable xulrunner-1.9 interfaces when having more than one xulrunner version on the desktop (both eclipse and the icedtea6-plugin don't seem to get it right).

=== Launchpad ===

 * Soyuz/IS: Rebuild tests take too long, or slow down PPA buildds.
 * Soyuz: Native syncing via web service, to free up man-hours of archive admin time per week.
 * Buildd configuration, and how to reproduce results from test runs on the buildds. Differences in the configuration of distro and PPA buildds. LP: 556597 as an example. Seen with some eglibc test cases as well.

=== QA ===

 * TCK testing

== Placeholders for Big Topics ==

 * [[UbuntuSpec:foundations-m-cycle-review|10.04 Review]] - hold this early to aid breakout topics, maybe in the first roundtable
 * Distributed Development
 * Boot Performance/Experience
 * Spring Clean (right after an LTS release is a good time for an aggressive cleanup of things we don't need or that should be extensively refactored)
 * Python
   * [[UbuntuSpec:foundations-m-python-continuous-integration|Automated transition testing framework (build, run upstream unit test, 2to3, report on ftbfs and test failures, against any/every python version)]] (BarryWarsaw)
   * [[UbuntuSpec:foundations-m-python-3|Migration to Python 3]] (BarryWarsaw)
   * [[UbuntuSpec:foundations-m-python-no-symlinks|Eliminate symlinks for python-[central|support] using PEP 3147? Needs support for extensions. (And mostly done for python-central).]] (BarryWarsaw). This is a duplicate of UbuntuSpec:foundations-lucid-robust-python-packaging.
   * [[UbuntuSpec:foundations-m-python-2.7|Python 2.7]] (BarryWarsaw) That should be tested before UDS as a basis for a decision.
   * [[UbuntuSpec:foundations-m-python-cx-freeze|Freezing (e.g. cx_freeze) critical dist upgrade tools?]] (BarryWarsaw)
 * [[UbuntuSpec:foundations-m-drop-ia64sparc|Drop the IA64 and SPARC community ports]]
 * Compile for i686 as the default on i386 (instead of i486).
 * [[UbuntuSpec:foundations-m-toolchain|Toolchain decisions for Maverick]]. May be followed up with architecture specific sessions. (MatthiasKlose)
Line 13: Line 150:

(Numbers in parentheses indicate to-do/postponed/done.)

Ideas

Foundations Support

As usual, Foundations will be providing Ubuntu support for the other teams. A high-level listing of projects where we likely will be involved is given in this section.

Desktop

Design

  • We probably ought to have a look-in on the multi-screen work, if it's dealing with remembering configurations for individual devices;
  • Installer, first boot, upgrades, Update Manager, and Software Centre;
  • System settings (maybe, depending on what this comes down to);
  • Possibly keyboard indicator but it depends what they're doing (if it's just visual then probably not).

Server

Kernel

OEM

General Priorities

  • Software Center enhancements (High) - Already planned
  • Multi-touch tablet support (Med) - Foundations work here may not be very strong; DX and Desktop, however, will be deeply involved

Base Platform

  • Hardware support for the new Intel (and likely AMD) CPU/chipset/GPU support (High) - 90% Kernel ownership; 10% Foundations
  • Remove use of intramfs in desktop and netbook editions (Med) - Foundations will support OEM removing this; however, Foundations actually needs initramfs to support more complicated use cases
  • Use swap files by default (instead of swap partitions) (Med) - Foundations would like to see this; there is an existing spec [TODO: find it]; ran into kernel problem (out of memory)
    • More flexible than swap partitions -
    • Need to make this work with hibernate/hybrid suspend
  • Energy Star compliance power settings by default (High) -
  • Add btrfs support - option at install time (High) - Already planned
    • More efficient for storing lots of small files. Helps w/ OS size and may help boot time
    • Supports compression. Good for OS size and may help boot time too.

Usability and Performance

  • Continue boot performance work, 10s goal for Dell Mini w/SSD, Lucid is still above that (High) - This goal was for unity, however there is no harm in continuing work; most work on this will likely be done with Scott finishing upstart
  • Hybrid suspend/hibernate by default. Allows the system to go to sleep, but also stores a hibernate image on disk. If the battery dies, the system wakes from the hibernate image (Med) - this might be ideal... however, not sure how feasible it will be; would make suspend a lot slower; means we'd be forced to use dodgey kernel hibernate code

Internationalization

  • Collaborate with i18n upstream more closely, especially on release schedule, e.g., we missed ibus-1.3 for LTS 10.04 (High) - general platform issue; Foundations will host a UDS discussion for this
  • Per-language ISOs (e.g. a Chinese ISO, a Swahili ISO, etc) (Low) - Foundations can't support this as a whole -- it would explode our test cases; however, Foundations will work with OEM if they need help generating their own ISOs

Small Disk Configuration Support

  • Audit packages and see if "depends" can become "recommends", making it easier for OEM to reduce dependency lists. (High) - let's use the bug-filing process to accomplish this: OEM can file, and Foundations can address this on a case-by-case basis
    • Example: xserver-xorg depends on xserver-xorg-video-all (actually, it depends on this OR a single driver) which pulls in *all* video drivers; if it were only recommended, you could specify only xserver-xorg-video-intel e.g. for your image
  • Remove all on-disk help/documentation and move it online. At the very least, split documentation into separate foopackage-doc.deb and make it a recommends. (High) - this is not appropriate for all use cases; we need to address this on a case-by-case basis; doing for all would guarantee that the index files would explode in size
  • Compressed r/w filesystem (High) - we will get this via btrfs
    • If btrfs is not feasible for some reason, we need a 'blessed' (by distro) r/w filesystem that supports compression (reiser, something FUSE-based, something else?)
    • We need r/w support to prevent the problem of updates taking too much disk space when using a r/o compressed filesystem like squashfs+unionfs
  • Updates for small disks - perform update as a sequence of partial atomic steps to minimize the use of disk (Med) - we do this now... so Foundations needs more detail to understand what need is not being fulfilled; OEM may mean downloading chunks and then applying it?

Other

  • BIOS validation tool (kernel team problem, not foundations? Colin King already working on this?) (High) - mostly Kernel with some Foundations
  • More stress testing before release (Med) - we will create UDS session for this: improving our testing procedures, using more automated tests, further brainstorming, etc.

Support FOR Foundations

Collect here items which we would like to see be done by other teams

Desktop

  • Java Applet maintainance / development
  • Stable xulrunner-1.9 interfaces when having more than one xulrunner version on the desktop (both eclipse and the icedtea6-plugin don't seem to get it right).

Launchpad

  • Soyuz/IS: Rebuild tests take too long, or slow down PPA buildds.
  • Soyuz: Native syncing via web service, to free up man-hours of archive admin time per week.
  • Buildd configuration, and how to reproduce results from test runs on the buildds. Differences in the configuration of distro and PPA buildds. LP: 556597 as an example. Seen with some eglibc test cases as well.

QA

  • TCK testing

Placeholders for Big Topics

Lucid specs not done

(Numbers in parentheses indicate to-do/postponed/done.)

Lucid specs partly done

Lucid specs mostly done

FoundationsTeam/Maverick/Planning (last edited 2010-05-04 14:04:46 by p5B09F55E)