Changes between Version 28 and Version 29 of FutureHaiku/Features


Ignore:
Timestamp:
Nov 20, 2010, 5:00:24 PM (14 years ago)
Author:
mmadia
Comment:

Refactored page, as per "Pushing for R1 (Final)" thread.

Legend:

Unmodified
Added
Removed
Modified
  • FutureHaiku/Features

    v28 v29  
    1 The intention of this page is to classify features and their place with respect to R1.  Once every feature is classified, the releases up to and including R1 can then be scheduled. This schedule will help to serve as inspiration to contribute to features that are required for a particular release.
    21
    3 = Procedure =
     2= About this page =
     3The intention of this page is to organize a vote, similar to wiki:R1/Alpha1Proposals.
     4This vote is about requirements for R1 (Final).
     5Voting in-favor for something means that you want R1 (Final) to be delayed until that and all other voted-for items are addressed.
    46
    5 1. Define the R1 feature set. Features should be organized in three groups:
    6  * must-have features
    7  * nice-to-have features (which shouldn't hold off the release)
    8  * definitely-post-R1 features
     7Once the feature set is voted upon, a preliminary milestone for entering the beta cycles will be created. That preliminary milestone will include only the necessary features.
     8Non-feature issues (such as bugs) will be reviewed as the beta milestone nears completion.
    99
    10 2. Define a rough estimation/schedule for the implementation of the missing features.
     10= Definitions =
     11 must-have:: This item will block the release of R1 (Final).  Depending on what it is, it may also block entering the beta stage.
     12 only-if-ready:: This item will not block the release of R1 (Final) or any earlier releases. These items may be evaluated for inclusion in a particular release.
     13 bundled application::  This includes applications within the project's repository and the graphical applications included as OptionalPackages. Command line applications are not included in this definition.
    1114
    12 3. Create the R1 roadmap. This includes all releases we want to do until R1, tagged with preliminary release dates.
     15----
     16= Proposals for R1 (Final) =
     17In each of the following proposals, enter you name either 'must-have' or 'only-if-ready'.
     18Remember, R1 will certainly include each and every one of the 'must-have' items.
    1319
     20== TTY Layer ==
     21 1. must-have: ''(none)''
     22 1. only-if-ready: ''(none)''
    1423
    15 = Features =
    16 == Locale ==
    17  1. Make Layout API public
    18   * Master ticket: #5524
    19   * make it FragileBaseClass safe #5526
    20   * integration with the archiving feature in general #5525
    21   * testing the archiving feature in general
    22  1. Preflet needs work
    23  1. update applications to use Layout API
    24   * Mail - partially (settings)
    25   * Media - partially
    26   * Terminal - partially
    27   * E-mail - calculating dynamic sizes
    28   * TextSearch - calculating dynamic sizes
    29   * DiskProbe - calculating dynamic sizes
    30   * Tracker
    31   * TV
    32   * ShowImage
    33   * SoundRecorder
    34   * Poorman
    35   * Magnify
    36   * DiskUsage
    37   * Cortex
    38   * CDPlayer
    39   * Bootman
    40   * Tracker
    41   * Time
    42   * ScreenSaver
    43   * Shortcuts
    44   * Printers
    45  1. update applications to use Locale API
    46   * #4619
    47   * Fill in details.
    48  1. update 3rd party applications bundled with Haiku
    49   * Vision
    50   * WebPositive
    51   * BePDF
    52   * ClockWerk
    53   * Pe
    54   * WonderBrush
     24== bootman: support multiple drives ==
     25 * r25044, #2477, #3545, #4503, #3443, #5595
     26 1. must-have: ''(none)''
     27 1. only-if-ready: ''(none)''
     28 
     29== IRQ routing ==
     30 1. must-have: ''(none)''
     31 1. only-if-ready: ''(none)''
    5532
     33== Haiku Book (API documentation) ==
     34Currently viewable at http://api.haiku-os.org/. This is split into (2) subsections.  Vote for each subsection.
     35=== Only the parts that are inconsistent with the BeBook ===
     36 1. must-have: ''(none)''
     37 1. only-if-ready: ''(none)''
     38=== In full, so as to make the BeBook obsolete ===
     39 1. must-have: ''(none)''
     40 1. only-if-ready: ''(none)''
    5641
    57 == Wifi ==
    58  1. IRQ sharing issues
    59  1. userland utilities (network preflet integration, some form of notification in deskbar)
    60  1. proper cli integration with ifconfig
    61  1. WEP encryption
    62  1. WPA/WPA2 encryption
    63    * Porting wpa_supplicant, would be the quickest way to get WPA/WPA2 support working, presumably as an extension to the net_server, just like dhcp is.
     42== Haiku User Guide: Pages for all bundled applications ==
     43 1. must-have: ''(none)''
     44 1. only-if-ready: ''(none)''
    6445
    65        
    66 == WebPositive ==
    67  1. WebKit as optional build feature
    68  1. Integrate WebPositive in repository
    69    * added as OptionalPackage in r36437
    70    * adjusted related packages, to allow WebPositive to run while as an ISO9660 livecd in r36441
     46== Default sound effects ==
     47 (possibly organized in a manner similar to Haiku Icon Contest)
     48 1. must-have: ''(none)''
     49 1. only-if-ready: ''(none)''
    7150
     51== Package Management ==
     52 1. must-have: ''(none)''
     53 1. only-if-ready: ''(none)''
    7254
    73 == ACPI ==
    74  1. enabled in r36474
    75  1. wide spread testing
    76  1. #5064
     55== WiFi (WPA,WPA2 encryption) ==
     56 1. must-have: ''(none)''
     57 1. only-if-ready: ''(none)''
    7758
    78 == Package manager ==
    79  1. UnionFS needs to be implemented, such that one can edit a file that has been inserted by a package (like config files).
    80  1. writing the package management application itself
    81  1. The package format specifies merely an archive format yet. The meta information are completely missing.
    82  1. thorough testing required
    83  1. test packages need to be created
    84 
    85 
    86 == IRQ Routing ==
    87   Fill in details.
    88   1. MSI implemented, drivers are required to make use of it. Not IRQ Routing, but helps with the effects of not having it.
    89 
     59== WiFi (userland tools + ifconfig integration) ==
     60 * Tools for discovering and joining wireless networks.
     61 * command line integration
     62 1. must-have: ''(none)''
     63 1. only-if-ready: ''(none)''
     64 
     65== Public Layout API ==
     66 * #5524, #5526
     67 1. must-have: ''(none)''
     68 1. only-if-ready: ''(none)''
     69 
     70=== Layout API:  All bundled applications to utilize layout api ===
     71 1. must-have: ''(none)''
     72 1. only-if-ready: ''(none)''
     73 
     74== Locale Kit: All bundled applications to be localized ==
     75 * #4619
     76 1. must-have: ''(none)''
     77 1. only-if-ready: ''(none)''
     78 
     79== Networked Filesystem Integration (ftp, ssh, nfs, smb) ==
     80 1. must-have: ''(none)''
     81 1. only-if-ready: ''(none)''
    9082
    9183== Debugger ==
    92  1. not quite ready for public consumption yet.
     84 * completed enough, so as to replace gdb as the default debugger
     85 1. must-have: ''(none)''
     86 1. only-if-ready: ''(none)''
     87
     88== Include Jamfile-Engine ==
     89 1. must-have: ''(none)''
     90 1. only-if-ready: ''(none)''
    9391 
    94 == Jamfile Engine ==
    95   1. Committed in r36796
    96   1. ''it should mostly work but I've wanted to refactor it for a while.''
     92== Stack & Tile as default decorator ==
     93 1. must-have: ''(none)''
     94 1. only-if-ready: ''(none)''
    9795
    98 == Media Kit Encoding Support ==
    99  1. Implement BEncoder API
    100  1. Adding support for more codecs
    101  1. Updating the port of Xiph would need to be done as well
     96== Video mode setting drivers (nvidia, ati, intel) ==
     97 1. must-have: ''(none)''
     98 1. only-if-ready: ''(none)''
    10299
     100== Multi-head support in app_server ==
     101 1. must-have: ''(none)''
     102 1. only-if-ready: ''(none)''
    103103
    104 == Network Preflet Rewrite ==
    105   Fill in details.
     104== BHTMLView API ==
     105 * importing WebKit as an OptionalBuildFeature
     106 1. must-have: ''(none)''
     107 1. only-if-ready: ''(none)''
    106108
    107 == Device Manager ==
    108   Fill in details.
     109== BNotification API ==
     110 1. must-have: ''(none)''
     111 1. only-if-ready: ''(none)''
    109112
    110 == bootman improvements ==
    111  1. support multiple drives
    112    * r25044
    113    * #2477
    114    * #3545
    115    * #4503
    116  1. user selectable destination drive (eg, install to usb stick) #3443
    117  1. writembr #5595
     113== Services Kit ==
     114 1. must-have: ''(none)''
     115 1. only-if-ready: ''(none)''
    118116
    119 == TTY Layer ==
    120  1. Rework our current TTY layer into a module
    121  1. Create an API that fulfills the need of a serial port
    122    * traditional RS232
    123    * serial over USB.
    124  1. Integrate the new API into the serial drivers that are already in our repository,
    125  1. Make sure everything works as expected.
    126  1. Until now the serial port was reserved for kernel debugging, but it is now time for proper userland support.
     117== WebPositive Related ==
     118This is split into several subsections.  Vote for each subsection. Create additional sub-items as desired.
     119=== HTML5 video + audio support ===
     120 1. must-have: ''(none)''
     121 1. only-if-ready: ''(none)''
     122=== User agent faking ===
     123 1. must-have: ''(none)''
     124 1. only-if-ready: ''(none)''
     125=== SSL cert enhancements (#6493) ===
     126 1. must-have: ''(none)''
     127 1. only-if-ready: ''(none)''
    127128
     129== Finalizing new driver architecture ==
     130 1. must-have: ''(none)''
     131 1. only-if-ready: ''(none)''
     132 
     133== Updating drivers to utilize new driver architecture ==
     134 1. must-have: ''(none)''
     135 1. only-if-ready: ''(none)''
    128136
    129 == OSS Improvements ==
    130  1. Prevent driver collision
     137== Network preflet rewrite ==
     138 1. must-have: ''(none)''
     139 1. only-if-ready: ''(none)''
    131140
     141== OpenSound + Native Driver co-existance ==
     142 * Testing required.
     143 1. must-have: ''(none)''
     144 1. only-if-ready: ''(none)''
     145
     146== Boot failure issues ==
     147 * All known bugs that cause boot failures on supported hardware to be resolved
     148 1. must-have: ''(none)''
     149 1. only-if-ready: ''(none)''
     150 
     151== Driver issues (gfx, audio) ==
     152 * All known bugs that render supported hardware useless to be resolved. (eg, distorted display)
     153 1. must-have: ''(none)''
     154 1. only-if-ready: ''(none)''
     155
     156== IPv6 network support ==
     157 1. must-have: ''(none)''
     158 1. only-if-ready: ''(none)''
     159
     160----
     161The following items are generally considered 'only if ready' (or definitely post-R1).
    132162
    133163= [http://dev.haiku-os.org/milestone/Unscheduled Unscheduled] =
    134  1. Stack & Tile
    135164 1. Session management
    136165 1. Content based search
     
    145174 1. Keyboard shortcut and gestures management (Spicy Keys has been integrated as "Shortcuts", needs improvements.)
    146175 1. Keyboard and Mouse settings associated with hardware
    147  1. Multi-head support in app_server
    148176 1. Concurrent user support in input and app_server
    149177 1. Remote app_server (has been implemented, but could use more user-friendly integration)
    150  1. New file system - FutureHaikuFileSystem
    151178 1. More POSIX compatibility
    152179 1. Replacing the C library
     
    155182 1. Power management
    156183 1. I/O APICs (implemented, but the interrupt mapping for PCI interrupts that has to be read through ACPI is yet missing)
    157  1. Finalize new driver architecture and rewrite all drivers
    158  1. IPv6 network support
    159184 1. Floppy drive support
    160185 1. Media Acceleration library (common routines to be used by media plugins that can be replaced by OpenCL, SSE or the like)
     186 1. New file system - FutureHaikuFileSystem
    161187 1. API changes after dropping BeOS backwards compatibility - [http://dev.haiku-os.org/wiki/APIChangesOnCompatibilityDrop APIChangesOnCompatibilityDrop]
    162188 1. Calendar / Scheduling application (and server?)