Warning, /frameworks/solid/TODO is written in an unsupported language. File is not indexed.

0001 Temporary Roadmap before inclusion in trunk
0002 
0003 Mn : Milestone n
0004 - : done
0005 + : to do
0006 # : in progress
0007 ! : cancelled or postponed
0008 
0009 Inception Phase
0010 ---------------
0011 
0012 M1 Architecture design and quick prototyping
0013 - Prepare architecture view for handling hardware discovery, power management and
0014   networking (done)
0015 - Prepare a high level model for hardware handling (done)
0016 - Implement partly (no capability support) this high level model using HAL as
0017   backend (done)
0018 - Make a tiny 'lshal' clone using the implementation (done)
0019 
0020 M2 Cleaning up and preparing construction
0021 - Fully document implemented classes and methods
0022 - Split out the HAL specific code in its own backend
0023 - Implement the stub backend for unit testing
0024 - First unit tests
0025 - Syncing with D-BUS, HAL and KDE latest version
0026 - Add unit tests in the HAL backend
0027 
0028 
0029 Construction Phase
0030 ------------------
0031 From here, a feature is considered implemented when:
0032 1) The classes and methods are fully documented
0033 2) Unit tests for the feature are implemented
0034 
0035 M3 Completing hardware handling
0036 ! Implement bus specific data gathering in the backends:
0037         Postpone? might not be useful...
0038 - Implement job support for slow operations (mount/umount for example)
0039         - Reuse the Job logic from KIO, provides progress, etc.
0040         - Means that we'll have to track the refactoring that will happen there
0041           KIO::Job should become more generic in the future (KJob is in now in
0042           kdecore)
0043 - Implement support for the first capabilities
0044 -   Storage and Cdrom
0045 -   Volume and Disc
0046 -   Camera
0047 -   PortableMediaPlayer
0048 
0049 M4 Network Management
0050 - Select a first backend target : NetworkManager is the current candidate
0051 - Prepare a high-level model
0052 - Implement support for the following capabilities in the hardware layer
0053 -   NetworkHw (handle both Ethernet and Wireless)
0054 # Implement the network management model and the first backend
0055 
0056 M5 Power Management
0057 - Prepare a high-level model
0058 ! Implement suspend/resume notification and inhibit
0059 - Implement support for the following capabilities in the hardware layer
0060 -   AcAdaptor
0061 -   Battery
0062 -   Button
0063 - Implement the power management model and the first backend
0064 
0065 M6 Migration to trunk
0066 - Clean up code and comments
0067 + Prepare documentation about how to work with this new framework
0068 - Add even more unit tests if appropriate
0069 - Merge to trunk
0070 
0071 M7 Make use of it
0072 + Port the mediamanager and the medianotifier to this framework
0073 + Make a Plasma Engine to encapsulate this framework
0074 + Reimplement the media applet using the new engine
0075 
0076 Stop a bit... And rethink the way the user will be able to interact with the hardware.
0077 If we reach M7 we'll have a strong base to create a great new interaction model with
0078 the hardware.
0079