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