File: TODO

package info (click to toggle)
solid 5.78.0-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, sid
  • size: 5,100 kB
  • sloc: cpp: 21,549; xml: 464; lex: 111; yacc: 83; sh: 14; makefile: 5
file content (79 lines) | stat: -rw-r--r-- 2,678 bytes parent folder | download | duplicates (12)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
Temporary Roadmap before inclusion in trunk

Mn : Milestone n
- : done
+ : to do
# : in progress
! : cancelled or postponed

Inception Phase
---------------

M1 Architecture design and quick prototyping
- Prepare architecture view for handling hardware discovery, power management and
  networking (done)
- Prepare a high level model for hardware handling (done)
- Implement partly (no capability support) this high level model using HAL as
  backend (done)
- Make a tiny 'lshal' clone using the implementation (done)

M2 Cleaning up and preparing construction
- Fully document implemented classes and methods
- Split out the HAL specific code in its own backend
- Implement the stub backend for unit testing
- First unit tests
- Syncing with D-BUS, HAL and KDE latest version
- Add unit tests in the HAL backend


Construction Phase
------------------
From here, a feature is considered implemented when:
1) The classes and methods are fully documented
2) Unit tests for the feature are implemented

M3 Completing hardware handling
! Implement bus specific data gathering in the backends:
	Postpone? might not be useful...
- Implement job support for slow operations (mount/umount for example)
	- Reuse the Job logic from KIO, provides progress, etc.
	- Means that we'll have to track the refactoring that will happen there
	  KIO::Job should become more generic in the future (KJob is in now in
          kdecore)
- Implement support for the first capabilities
-   Storage and Cdrom
-   Volume and Disc
-   Camera
-   PortableMediaPlayer

M4 Network Management
- Select a first backend target : NetworkManager is the current candidate
- Prepare a high-level model
- Implement support for the following capabilities in the hardware layer
-   NetworkHw (handle both Ethernet and Wireless)
# Implement the network management model and the first backend

M5 Power Management
- Prepare a high-level model
! Implement suspend/resume notification and inhibit
- Implement support for the following capabilities in the hardware layer
-   AcAdaptor
-   Battery
-   Button
- Implement the power management model and the first backend

M6 Migration to trunk
- Clean up code and comments
+ Prepare documentation about how to work with this new framework
- Add even more unit tests if appropriate
- Merge to trunk

M7 Make use of it
+ Port the mediamanager and the medianotifier to this framework
+ Make a Plasma Engine to encapsulate this framework
+ Reimplement the media applet using the new engine

Stop a bit... And rethink the way the user will be able to interact with the hardware.
If we reach M7 we'll have a strong base to create a great new interaction model with
the hardware.