AgeCommit message (Collapse)Author
2016-03-15eio: Eio_Model with promisesdevs/felipealmeida/eio_model-promisesFelipe Magno de Almeida
2016-03-11ecore: Add tests for promisesFelipe Magno de Almeida
Added useful tests for generation of class with promises and direct usage of promises.
2016-03-11Add promiseFelipe Magno de Almeida
Add a promise object that allows Eolian interface to include promises as a way to have asynchronous value return and composibility. The usage is like this in a .eo file: class Foo { methods { bar { params { @inout promise: Promise<int>; } } } } Which will create the following API interface: void foo_bar(Eo* obj, Ecore_Promise** promise); and the equivalent declaration for implementation. However, the API function will instantiate the Promise for the user and the implementer of the class automatically. So the user of this function will treat it as a @out parameter, while the developer of the function will treat it like a @inout parameter. So, the user will use this function like this: Ecore_Promise* promise; // No need to instantiate foo_bar(obj, &promise); int* p = ecore_promise_value_get(); or: ecore_promise_then(promise, callback);
2016-03-11eo: Add before and after macro hooks for API generation functionsFelipe Magno de Almeida
Add two parameters for macros that generate API functions in Eo so that the generation can be customized with macros used by Eolian.
2016-03-11eolian generator: check fwrite return value currectlyDaniel Kolesa
This fixes CID 1327247. @fix
2016-03-11eolian: refactor database_typedecl_to_str to remove dead codeDaniel Kolesa
After the type system transition there was some unnecessary dead code. Fixes CID 1352512.
2016-03-11Revert "Eo: Change to the Eo4 eo_add syntax."Tom Hacohen
I found a way to keep eo_add() the way it was and gracefully degrade to a portable (but not as fast) solution for compilers that don't support the compound macros returning a value gnu extension: ({int a; a;}). I'm reverting these changes now, and I'll introduce the fallback as soon as I can. This reverts commit b85bb3718389470bfc78c079dd5e06def5e963f3.
2016-03-11Revert "Vg node: modify so the eo_add migration script won't break."Tom Hacohen
This reverts commit 6ac1fb78d855be27d28378a659887b693e5fb266.
2016-03-11Revert "Ector and eo suite: Semi automatically migrate to the new eo_add."Tom Hacohen
This reverts commit df83edaeb6b10324868f28e8f1910147ba22e5e5.
2016-03-11Revert "Automatic migration to the new eo_add syntax."Tom Hacohen
This reverts commit 4f949a2757b6332306264d7f126b15ba7bfd37d4.
2016-03-11Revert "Examples: Update according to recent eo_add changes."Tom Hacohen
This reverts commit 6594ba0b6df9ba72f031a00d0e8ba3b23cf2c0b2.
2016-03-11Revert "Fix examples according to the recent eo event changes."Tom Hacohen
This reverts commit d2fba6c5959f82f35984167131d3b67207780f48.
2016-03-11Revert "cxx: Migrate C++ binding to the new eo_add syntax"Tom Hacohen
This reverts commit 48f62ad686d11c97ec62b1ba528262edf39cafbf.
2016-03-10edje: add error log message for missing descriptionjinwoo.shin
Summary: Developer cannot notice that any description didn't applied due to missing description or typo. This message will be helpful to make correct the application. Reviewers: cedric, Hermet, raster Subscribers: soohye.shin, minkyu, cedric, jpeg Differential Revision: Signed-off-by: Cedric BAIL <>
2016-03-10efl: rename efl.core.animator to efl.animator.Cedric BAIL
It has been decided that we would not use any namespace for interface and they will sit in efl main namespace. This patch doesn't correct the naming of the event has we don't have a prefix for event. We do still have EFL_ANIMATOR_EVENT_ANIMATOR_TICK, instead of a nicer EFL_EVENT_ANIMATOR_TICK.
2016-03-10ecore_wl2: Don't treat EINVAL as a recoverable conditionDerek Foreman
EINVAL is bad, we can't go on. If we treat it like it's not a fatal error we'll end up spinning on the fd and constantly retrying sends on the dead wayland connection. @fix
2016-03-10ecore-wl2: set fd handler active flags correctly for connect/createMike Blumenkrantz
2016-03-10evas-gl: Fix dereference after null checkChris Michael
Coverity reports that 'ctx' may be NULL here and we should check it before usage (as is done above). Coverity CID1339785 @fix Signed-off-by: Chris Michael <>
2016-03-10edje: Don't leak array source if we are going to exit functionChris Michael
This patch fixes a potential resource leak where we would previously create a new eina_array and then possibly return from this function (when checking validity of 's' parameter) without freeing the newly created array. Coverity CID1350291 @fix Signed-off-by: Chris Michael <>
2016-03-09build coverage: make coverage numbers more accurate by using a baselineStefan Schmidt
The lcov tool offers the functionality to have an initial run over the code base before the tests are executed to make sure it catches all files, even the ones that are not loaded during the test run. This is something we missed so far. The reports have only been in relation to the files that actually have been loaded during the test. We missed quite a few files which made our numbers inaccurate. Things like modules/emotion/gstreamer1 have no tests yet and thus never showed up in the coverage report. While it has 103 functions and over thousand lines which need to get covered. With the baseline this is handled now. Thanks goes to the folks at LibreOffice who described their lcov setup here: New numbers are lower now as we count in all the files never loaded which decreases our percentages. Overall coverage rate: lines......: 30.2% (65119 of 215841 lines) functions..: 34.0% (6361 of 18733 functions) branches...: 23.6% (35627 of 151096 branches)
2016-03-09examples gitignore: adding four new examples to their .gitignore filesStefan Schmidt
2016-03-09eo_cxx: correct constness of basic Eo C++ wrapper functionsVitor Sousa
2016-03-09ecore-drm: don't set DBG on log level if DBG not already setMike Blumenkrantz
2016-03-09ecore-drm: Disable default DBG log levelChris Michael
Simple patch to disable setting ecore-drm log level to DBG by default @fix Signed-off-by: Chris Michael <>
2016-03-09cxx: Migrate C++ binding to the new eo_add syntaxVitor Sousa
2016-03-09Fix examples according to the recent eo event changes.Tom Hacohen
2016-03-09Examples: Update according to recent eo_add changes.Tom Hacohen
2016-03-09Automatic migration to the new eo_add syntax.Tom Hacohen
2016-03-09Ector and eo suite: Semi automatically migrate to the new eo_add.Tom Hacohen
There were some issues with the migration that required manual intervention.
2016-03-09Vg node: modify so the eo_add migration script won't break.Tom Hacohen
2016-03-09Eo: Change to the Eo4 eo_add syntax.Tom Hacohen
The current one was a hack in the meanwhile and was not protable.
2016-03-09tests evas: enable xpm image loader in testsStefan Schmidt
Added in 2014 and not enabled since then. This seems to be fixed now so we can finally enable it.
2016-03-09tests evas: remove commented out function which have not been used since 2014Stefan Schmidt
It was already unused when it was disabled almost two years ago. dbe02d593e2fed9ab774cebbeaf669c2de710600 Its about time to remove it.
2016-03-09ecore-drm: Don't re-include config.hChris Michael
As ecore_drm_private.h already includes config.h header, we don't need to include it here in these files also @fix Signed-off-by: Chris Michael <>
2016-03-09ecore-drm: Update copyright noticeChris Michael
As portions of this code have been derived from existing code in Weston, we should also be including their copyright/licence text to give credit. NB: Fixes T3286 @fix Signed-off-by: Chris Michael <>
2016-03-08Revert "ecore: Create Promises"Tom Hacohen
Reverting this at Felipe's request following my email. There are many things I strongly object to in this commit. I've touched the surface of those on the ML (which doesn't work at the moment), though we need to better discuss it. The gist: 1. dlsym is a really bad hack that is not even needed. 2. I don't see why eo should even be aware of promises. It's not aware of list, hash and etc. 3. The eolian changes were done wrong. This should have been discussed and consulted before done, even if only because of the amount of hacks it includes and the cross-domain (ecore, eo and eolian) nature of it. This reverts commit f9ba80ab33e0b94dad7ec103e6d261a644f7835f.
2016-03-08eo_cxx: Fix unused parameter warning when no constructor is requiredVitor Sousa
Test Plan: compile elm Reviewers: stefan_schmidt Subscribers: cedric, jpeg Differential Revision:
2016-03-08tests eolian: add test cases for type stub generationsStefan Schmidt
While we had the functionality to generate type stubs header we never had these tested in our unit test setup. Adding to simple cases for struct and typedef which we already use for normal header generation tests.
2016-03-08eolian_gen: mention the option for generating a stub header in the example useStefan Schmidt
Listed in the available options already but better also list it in the example usage where the other three generation types are listed as well.
2016-03-08eolian_gen: remove unused functions _nextline and _startlineStefan Schmidt
These two have no users and there is no point in keeping them around.
2016-03-08evas-3d examples: remove unused variablesStefan Schmidt
2016-03-08eo del interceptor: add the ability to intercept deletions of eo objectsCarsten Haitzler (Rasterman)
Imagine this. You have an object. You pass this object handle as a message to another thread. Let's say it's not a UI object, so something you might expect to be able to be accessed from multiple threads. In order to keep the object alive you eo_ref() it when placing the message on a queue and eo_unref() it once the message is "done" in the other thread. If the original sender unref()ed the object before the message is done, then the object will be destroyed in the reciever thread. This is bad for objects "expecting" not to be destroyed outside their owning thread. This allows thius situation to be fixed. A constructor in a class of an object can set up a delete interceptor. For example if we have a "loop ownership" class you multi-ple-inherit from/use as a mixin. This class will set up the interceptor to ensure that on destruction if pthread_self() != owning loop thread id, then add object to "delete me" queue on the owning loop and wake it up. the owning loop thread will wake up and then process this queue and delete the queued objects nicely and safely within the "owning context". This can also be used in this same manner to defer deletion within a loop "until later" in the same delete_me queue. You can even use this as a caching mechanism for objects to prevernt their actual destruction and instead place them in a cached area to be picked from at a later date. The uses are many for this and this is a basic building block for future EFL features like generic messages where a message payload could be an eo object and thus the above loop onwership issue can happen and needs fixing. This adds APIs, implementation, documentation (doxy reference) and tests. @feature
2016-03-08Revert "eina: split Makefile with files/headers in preparation for ↵Stefan Schmidt
additional per sub directory compilation" This reverts commit 7f4ea1a79c63615bb14051db16e6fe5d90c9bd10. This reverts one of three parts of the try to get sub directory compilation back into eina. It breaks our distcheck though and I talked to Cedric about it and he prefers to revert these as we might need to go another route to bring this functionality back. Details will come to the mailing list.
2016-03-08Revert "eina: reintroduce additional support for eina sub directory ↵Stefan Schmidt
compilation." This reverts commit 1affc60d00e1fa2b702d6b170514b86e1438ed9a. This reverts one of three parts of the try to get sub directory compilation back into eina. It breaks our distcheck though and I talked to Cedric about it and he prefers to revert these as we might need to go another route to bring this functionality back. Details will come to the mailing list.
2016-03-08Revert "eina: rely on GNU make to find file at their correct location."Stefan Schmidt
This reverts commit e26fcbb1dc588c5130e477bf832c59386b1c1951. This reverts one of three parts of the try to get sub directory compilation back into eina. It breaks our distcheck though and I talked to Cedric about it and he prefers to revert these as we might need to go another route to bring this functionality back. Details will come to the mailing list.
2016-03-07eolian: validate eo/legacy prefix to be [a-z_][a-z0-9_]*Daniel Kolesa
2016-03-07build: do not use DEBUG when running with coverageStefan Schmidt
Do not force this on everybody who runs with tests=coverage. It makes stdout impossible to follow as well as overruns the tests log file. If one wants to run with -DDEBUG it can be set from your own CFLAGS.
2016-03-07build: fix linking with coverage enabled after osx fixStefan Schmidt
After aca6fc8c3611b5e7d4faaed61e52dedf057d7219 there have been problems when linking when having coverage enabled. AC_SEARCH_LIBS was used wrongly here. You need function name first and lib to link against as second argument. The symbol name also has wto leading underscores for me. /usr/lib/gcc/x86_64-pc-linux-gnu/5.3.0/../../../../x86_64-pc-linux-gnu/bin/ld generated: undefined reference to `__gcov_init'
2016-03-07tests: get rid of Eo_Event2 in cxx testsStefan Schmidt
Hopefully the last occurance of Eo_Event2 in our code base. Fixes a build break.
2016-03-07cxx bindings: get rid of Eo_Event2Stefan Schmidt
This follows the change in EO and fixes some build breaks.