Road To 1.0
This document helps the Lazarus team to focus on a 1.0 release in the near future.
The work to be done is divided into 3 targets:
- things to be done before the next release (0.9.16)
- things to be done before the 1.0 release
- things to be done after the 1.0 release
Setting the target of a bugfix
When new bugs are entered, we try to give them a target in which version the bug will be fixed. If a bug is set to post 1.0, that means the developers think this bug is not important enough to block a 1.0 release. In order to have a 1.0 sooner rather than later, developers will leave those bugs for later. Of course you can make sure these post 1.0 issues are fixed in the 1.0 release by providing patches for these issues.
Some criteria are:
- Only gtk1 and win32 widget sets are stable in 1.0. So bugs for other widget set (gtk2, carbon) are set to post 1.0.
- Until the 1.0 there will be a feature freeze. New features and components generally get a post 1.0 target. Bugs affecting stability have a higher priority than bugs fixing the implementation of a property.
- Some components are not stable enough and should be disabled for 1.0. If they are disabled, then fixing them before 1.0 will not be necessary.
Project roadmap
Work to be done
Target | Responsible | Comment |
---|---|---|
0.9.16 | Vincent | Find out, if Lazarus configuation files can be stored in the profile directory under windows |
0.9.16 | Vincent | Find out, what needs to be done to make it possible to install Lazarus in c:\Program Files\Lazarus |
0.9.16 | Vincent | Use fpmkcfg to create a default configuration file |
0.9.16 | - | Webbugs to be fixed before the next release: target 0.9.16 bugs |
0.9.16 | Mattias | |
0.9.16 | Mattias | |
0.9.16 | Mattias | Create a SuSE package |
1.0.0 | - | Debugger options |
1.0.0 | - | DOC Editor |
1.0.0 | Mattias | Help for fpc key words |
1.0.0 | Mattias | |
1.0.0 | Mattias | Helpsystem and help for common IDE items/messages |
1.0.0 | Mattias | Multi replace dialog |
1.0.0 | Mattias | |
1.0.0 | - | Icon editor |
1.0.0 | - | Webbugs to be fixed before the 1.0 release: target 1.0 bugs |
1.0.0 | Mattias | |
1.0.0 | - | more LCL Documentation (see LCL Documentation Roadmap) |
1.0.0 | - | fix debugging in windows and linux |
1.0.0 | Mattias | |
1.0.0 | Mattias | |
1.0.0 | Vincent | add framework for easily using resourcestrings and translations in applications |
post 1.0 | - | Webbugs to be fixed after the 1.0 release: target post 1.0 bugs |
post 1.0 | - | Improve TDataModule, so that its components can be used in other forms/datamodules at design time |
post 1.0 | - | Improve Windows CE interface |
post 1.0 | - | Improve Carbon interface |
post 1.0 | - | Improve Qt interface |
post 1.0 | - | Improve Gtk2 interface |
Various parts of Lazarus
Unit | Item | State | Target | Skills | Responsible | Comments |
---|---|---|---|---|---|---|
LCL | Docking (= the combination of forms) | in progress | - | - | - | - |
LCL | Graphics | in progress | - | - | - | - |
LCL | TControl.Font | in progress | - | - | - | - |
LCL | TTabControl | in progress | - | - | - | - |
LCL | Constrain maximization to specific area | not implemented | - | - | - | - |
LCL | Frames (= forms as childs) | not implemented | - | - | - | - |
LCL | MDI - Multiple Documents Interfaces Putting fo ... | not implemented | - | - | - | - |
LCL | Palette support | not implemented | - | - | - | - |
LCL | TControlBar | not implemented | - | - | - | - |
LCL | TDirectoryTreeView | not implemented | - | - | - | - |
LCL | TFindDialog | not implemented | - | - | - | - |
LCL | TReplaceDialog | not implemented | - | - | - | - |
Components | CUPS package and example | - | - | - | - | - |
Components | TIcon | in progress | - | - | - | - |
GTK | BringToFront, SendToBack | in progress | - | - | - | - |
GTK | Doublebuffering | in progress | - | - | - | - |
GTK | Minimizing windows | not implemented | - | - | - | - |
GTK2 | General interface | in progress | - | - | - | - |
Gnome | Applets | not implemented | - | - | - | - |
Qt | The QT interface | in progress | post 1.0 | Qt and LCL | Sekelsenmat | Depends on qt bindings |
Widgetset dependent components
Working - Stable, most or all properties implemented.
Partially Implemented - Works, but has few properties implemented
In progress - Someone is working in the implementation of this
Not Implemented - Needs someone to implement it
Component | win32 | gtk | gtk2 | carbon | qt | wince |
---|---|---|---|---|---|---|
TCustomControl descendents | Working | Working | Partially Implemented | Not Implemented | Partially Implemented | Partially Implemented |
TApplication | Working | Working | Working | Working | Working | Partially Implemented |
TArrow | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TBevel | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TBitBtn | Working | Working | Working | Not Implemented | Partially Implemented | In progress |
TBitmap | Working | Working | Working | Not Implemented | In Progress | Not Implemented |
TBrush | Working | Working | Working | Not Implemented | Not Implemented | Partially Implemented |
TButton | Working | Working | Working | Working | Working | Working |
Calendar | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TCheckBox | Working | Working | Working | Not Implemented | Partially Implemented | Working |
TCheckGroup | Working | Working | Working | Not Implemented | Partially Implemented | Not Implemented |
TCheckListBox | Working | Working | Working | Not Implemented | Partially Implemented | Not Implemented |
TColorDialog | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TComboBox | Working | Working | Working | Not Implemented | Partially Implemented | In progress |
TDrawGrid | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TEdit | Working | Working | Working | Not Implemented | Partially Implemented | Working |
TFont | Working | Working | Working | Not Implemented | Not Implemented | Partially Implemented |
TFontDialog | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TForm | Working | Working | Working | Not Implemented | Partially Implemented | Partially Implemented |
TGraphic | Working | Working | Working | Not Implemented | In progress | In progress |
TGroupBox | Working | Working | Working | Not Implemented | Partially Implemented | Not Implemented |
TIdleTimer | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TImage | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TImageList | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TLabel | Working | Working | Working | Not Implemented | In progress | Partially Implemented |
TListBox | Working | Working | Working | Not Implemented | Not Implemented | In progress |
TListView | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TMainMenu | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TMaskEdit | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TMemo | Working | Working | Working | Not Implemented | Partially Implemented | In progress |
TMenuItem | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TNoteBook | Working | Working | Working | Not Implemented | Partially Implemented | Not Implemented |
TOpenDialog | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TPage | Working | Working | Working | Not Implemented | Partially Implemented | Not Implemented |
TPageControl | Working | Working | Working | Not Implemented | Partially Implemented | Not Implemented |
TPaintBox | Working | Working | Working | Not Implemented | Partially Implemented | Not Implemented |
TPairSplitter | Not Implemented | Working | Working | Not Implemented | Partially Implemented | Not Implemented |
TPanel | Working | Working | Working | Not Implemented | Partially Implemented | Not Implemented |
TPen | Working | Working | Working | Not Implemented | Not Implemented | Partially Implemented |
TPixmap | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TPopupMenu | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TPrinterSetupDialog | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TProgressBar | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TRadioButton | Working | Working | Working | Not Implemented | Partially Implemented | Working |
TRadioGroup | Working | Working | Working | Not Implemented | Partially Implemented | Not Implemented |
TSaveDialog | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TScrollBar | Working | Working | Working | Not Implemented | Not Implemented | In progress |
TScrollBox | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TShape | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TSpeedButton | Working | Working | Working | Not Implemented | Partially Implemented | Not Implemented |
TSpinEdit | Working | Working | Working | Not Implemented | Partially Implemented | Not Implemented |
TStaticText | Working | Working | Working | Not Implemented | Working | Working |
TStatusBar | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TStringGrid | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TTabSheet | Working | Working | Working | Not Implemented | Partially Implemented | Not Implemented |
TTimer | Working | Working | Working | Not Implemented | Working | Not Implemented |
TToggleBox | Working | Working | Working | Not Implemented | Not Implemented | In progress |
TToolBar | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TToolbutton | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TTrackbar | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TTreeView | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TUpDown | Working | Working | Working | Not Implemented | Not Implemented | Not Implemented |
TIcon | Partially Implemented | Working | Working | Not Implemented | Not Implemented | Not Implemented |