2e3d96e3427b7ecd75bfe99068033e350266ae5e
[profile/ivi/layer-management.git] / RELEASE_NOTES.txt
1 Version 0.9.7_rc
2 -------------
3 This version includes the following enhancements.
4
5 Bugfixes :
6
7 - fixes link script in example applications
8 - Composition is not anymore forced for every redraw request
9 - Example Script updated
10 - ilmClient : documentation fixed
11 - fix of several compiler warnings and memory leaks
12 - fix several issues detected by coverity 
13 - additional fixes inside of the reference compositor 
14
15 Improvements:
16
17 - X11 backend for wayland
18 - DRM backend for wayland
19 - Introducing generic communication approach
20 - Introducing Communicator Reference Implementation based in tcp/ip sockets
21 - Introducing generic hw layer support
22 - Introducing default version handling
23 - Introducing default toolchain file
24 - Introducing SurfaceRemoveNativeContentCommand
25 - Profiling/Coverage options for gcc introduced
26 - New features added to MockNavigation
27 - New properties valuse added to layer/surfaceGetProperties
28 - Adding new LayerManagerControl example program
29
30
31
32 Version 0.9.6
33 -------------
34 This version includes the following enhancements.
35
36 Bugfixes :
37
38 - removed obsolete Commands.
39 - added support for symbolic links to plugins.
40 - Bugfix in GLXGraphicSystem Context has to be activated before beginLayer
41 - Bug fixes in map/unmap window functions
42 - Communciator plugins are now started after scene provider plugins
43
44 Improvements:
45
46 - Introducing DLT binding for Logging Framework
47 - Introducing additional performance Counters
48 - First version of Rendering Plugin for Wayland is introduced
49
50 Version 0.9.5
51 -------------
52 This version includes the following enhancements.
53
54 Bugfixes :
55
56 - Compiler warnings have been removed.
57
58 - Fixed missing initialization of default values.
59
60 - EGLMockNavigation aspect ratio was hard coded, now uses
61   actual application resolution.
62
63
64 Improvements:
65
66 - Surface can be created without the native context of a
67   client application. The client can add its native content
68   later.
69
70 - Command objects have been updated. Now theres a one to one
71   relationship between API calls and Command objects.
72
73 - Build System generated header file with configuration options.
74   This replaced a series of compiler flags for defining symbols.
75
76 - Updated/added new unit tests.
77
78 - Added signal handling for clean shutdown ofLayerManagerService.
79   Now a stack trace is printed on crash.
80
81 - Build System now defaults to "release" build type.
82
83 - Logging improved.
84
85 - Introduced ServiceConnect and ServiceDisconnect. This allows
86   detection of crashed client applications.
87
88 - Renderer:
89   - Improved state handling of X11 window system.
90   - Renderer context sharing between different threads.
91   - Improved Shader handling.
92
93 - Added auto-generation feature for LayerManager design
94   document (based on doxygen and latex).
95
96
97 Version 0.9.4
98 -------------
99 This version includes the following enhancements.
100
101 Bugfixes :
102
103 - Removed Quiet Message, is not working with CMake 2.6
104
105 - Bugfix fixes issue regarding layer source transformation
106   LayerSource Width should be considered with crop amount
107   Unit Test case added
108
109 - Bugfix to establish rpm build with version tracking
110   Added newly created files to rpm
111   fix ILM VERSION for rpm, character '-' ist not allowed
112   in RELEASE variable, so now it is replaced by underscore
113
114 - LayerManagerToolBox - remove wrong parameter parse
115  
116
117 Improvements:
118
119 -   Add restrictions on adding a surface to a layer
120     This prevents:
121     1. A surface being added to multiple layers.
122     2. A surface being added to the same layer multiple times.
123 -   New Example Application(EGLX11MockNavigation) added, 
124     which emulates 3D City 
125 -   Input Events: better support of Qt: XMotionEvent need to be 
126     reported for Button1 to move sliders & scrollbars
127 -   Adding new Command to set the hardware layertype during scene
128     creation        
129
130 Version 0.9.3
131 -------------
132 This version includes the following enhancements.
133
134 Bugfixes :
135 - Bug fix in screenshot for layer & surface
136   Now a surface's screenshot will be exactly similar to the way it
137   appears on the screen currently (minus the effect of other surfaces
138   part of the same layer).
139 - Multiple Bug fixes in X11WindowSystem
140   Use SwapBuffers only if something was drawn
141   Include SwapBuffers call while calculating FPS
142   ScreenshotOfDisplay should not check for any rendering changes
143   as it will not do a SwapBuffers after screenshot. 
144 - Increase the framecounter only if the surface is rendered.
145 - Removed several warnings
146 - Fix to link the correct native graphic libraries.
147 - skip rendering of fully cropped surfaces
148 - adapt ilm client documentation
149
150 Improvements:
151 - Changing to LM_PLUGIN_DIR to LM_PLUGIN_PATH to be consitent
152 - Changing dbus service name to be genivi compliant
153 - DBUS Communicator could now run on System BUS too.
154
155
156 Version 0.9.2
157 -------------
158 This version includes the following enhancements.
159
160 Bugfixes:
161 - Fixing DBUS Communicator tests to run and compile completely
162 - Fixes source viewport rendering for layer
163 - Fixing several compiler warnings  
164 - Improved handling in case of render init failure
165 - Fixing screenshot of surface.
166 - Bug Fix for ILM command LayerAddSurface which was probably introduced during the large refactoring earlier
167 - Small fix for better error checking & cleanup when acquiring X11 visuals fails
168
169 Improvements:
170 - Moving render specific base implementations to library
171 - Add framework to support input events + X11 implementation
172 - Enhance GLX Example Application to show the input handling
173 - New Api method added, ilm_layerCreateDimension.
174 - New Messages CreateLayerWithDimension, CreateLayerFromIdWithDimension introduced
175 - Introducing new Class ViewportTransform
176 - Introducing Example Implementation for SceneProvider Feature
177 - Refactoring test framework
178 - Introducing version tracking
179 - LayerManagerToolbox can now used to take screenshots
180 - Searchpath for Layermanager Plugins is now using the environment variable
181   LM_PLUGIN_DIR. The default value is /usr/lib/layermanager
182
183
184 Version 0.9.1
185 -------------
186
187 This version includes the following enhancements.
188
189 Bugfixes:
190 - Remove spew introduced due to XDamage implementation
191 - Allocate client buffer & damage only for surfaces that belong to a renderable layer
192 - Compilation fix for DRAW_LAYER_DEBUG mode
193 - Remove redundant GL calls in EGLX11ApplicationExample
194 - Proper deinitilization of eglImage & texture handles
195 - Texture will now bind correctly.
196 - Race conditions and compositing startup fixed
197 - Unmap Windows will no longer unredirected
198 - Fixing wrong result value in ScreenshotCommand.
199 - Reset unreferenced m_pReply message
200 - Find of dbus architecture dependend files improved.
201 - Layer Should only be rendered if visible
202 - Remove apply of default values for Destination and Source Region
203 - Initialize a graphical surface with non visible
204 - Cleanup LayerManager Service at exit for a plugin initialization failure
205
206 Improvements:
207 - Improvement for handling, native X applications
208 - LayerManagerToolBox introduced
209 - Introducing default display environment, to avoid fail of service startup
210 - SceneProvider feature added to load scenes on startup
211
212 Version 0.9.0
213 -------------
214
215 This version includes the following enhancements.
216
217 - complete code refactoring, introducing new library for commands.
218 - Performance improvements XDamageSupport, only surface will be rendered which content has changed
219 - Performance improvements Surface without alpha, will be rendered without blending
220 - various stability improvements and bugfixes
221
222
223 Version 0.8.1
224 -------------
225
226 This version includes the following enhancements.
227
228 - bug fixes in X11GLESRenderer to get a clean shutdown on failure
229 - force copy introduced for X11 Pixmaps in Open GL ES 2.0 Environments
230 - CMakeLists.txt files fixed 
231
232 Version 0.8.0
233 -------------
234
235 This version includes the following enhancements.
236
237 - bug fixes in ilmClient API
238 - added getLayerIdOfScreen interface in dbus communicator and ilmClient API
239
240
241 Version 0.7.0
242 -------------
243
244 This version includes the following enhancements.
245
246 - bug fixes in GLX Renderer regarding surface destroy
247 - bug fixes in X11GLES Renderer regarding surface destroy
248
249
250 Version 0.6.0
251 -------------
252
253 This version includes the following enhancements.
254
255 - added GLX Renderer support for screen dump / surface dump / layer dump
256 - added X11GLES Renderer support for screen dump / surface dump / layer dump
257
258
259 Version 0.5.0
260 -------------
261
262 This version includes the following enhancements.
263
264 - bug fixes in ilmClient API and dbus communicator
265 - LayerManager types corrected
266 - additional Messages introduced to support dump of screen, surfaces and layer to file
267
268
269 Version 0.4.0
270 -------------
271
272 This version includes the following enhancements.
273
274 Improved and added new interfaces between Renderer and LayerManagerService.
275
276
277 Version 0.3.0
278 -------------
279
280 This version includes the following enhancements.
281
282 Build Environment changed to cmake to fulfill the gnu make process.
283
284
285 Version 0.2.2
286 -------------
287 Due to the requirements to support desktop, russelville and beagle board hardware. 
288 A new LayerManagerRenderer will be upstreamed to support the russelville hardware and typical desktop pc hardware.
289
290 This version includes the following enhancemnents
291
292 * GLXApplicationExample - Rotating triangle which is registered to the service.
293 * GLX Renderer Package to support Desktop PCs and the Russelvill Platform.
294 * Platformdependent Makefiles Extensions (LayerManagerPlatform/MakeIGMA500.defs , LayerManagerPlatform/MakeDesktop.defs)
295
296
297 Version 0.2.1
298 -------------
299 1. Minor Bugfix regarding DBUS Communicator 
300    getPorpertiesOfSurface and getPropertiesOfLayer
301    
302 2. Code Cleanup in EGLX11ExampleApplication
303
304 3. Skript GeniviDemo.sh added to run ExampleApplications out of the box 
305
306 4. LayerManagerService handling of stopping all plugins improved
307
308 5. Logging improved for several components
309
310 Version 0.2.0
311 -------------
312
313 This version consist of new features and several bugfixes :
314
315 1. C-API for the LayerManagement
316 2. API enhancements
317 3. Implementation of the open use case "Make a Screen Shot"
318 4. Example applications
319 5. Several bugfixes.
320
321 1. C-API for the LayerManagement
322
323 For better usage of the LayerManagement Service from application
324 point of view an additional C-API is implemented (see LayerManagerClient/ilmClient).
325 This API is deployed as shared libraries an can be linked to the application
326 which will controll the service. For the internal communication between the client
327 and the service D-BUS is used.
328
329 2. API Enhancements
330
331 To support hardware layers and to get a better interoperability with other applications
332 and platforms the API was extended by the following features :
333
334 * Layer, Surface and Group Ids can be applied by from the client side too.
335 * IlmMatrix class is now available in the LayerManagerUtils library, to support
336   simple 3D / 2D transformations
337
338 3. Implementation of the open use case "make a screen shot"
339
340 The use case "make a screen shot" was still open and is now implemented
341 with this release. 
342  
343 4. Example applications
344
345 Several example applications were added to demonstrate the usage and capabilities of
346 the service. 
347
348 * EGLX11ApplicationExample - Rotating triangle which is registered to the service.
349 * LayerManagementClientExample - Example for controlling the service and the rendered layers.
350 * LayerSceneDescriptionExample - Example for the definition of external layer and surface ids.
351
352 5. Several bugfixes
353
354 * Race condition during access/creation/deletion of data in layer list removed.
355 * Layer and surface compositing in GLESGraphicSystem improved
356 * Issue for handling of not applied surface in X11WindowSystem removed
357 * Stability improvements
358 * Improvement of the build environemt     
359
360 Version 0.1.0
361 -------------
362 Initial published Version.