On 16 August 2016 at 11:38, Carsten Haitzler <ras...@rasterman.com> wrote:
> On Mon, 15 Aug 2016 10:44:00 +0200 Stefan Schmidt <ste...@osg.samsung.com> > said: > > > Hello. > > > > On 13/08/16 05:16, Carsten Haitzler (The Rasterman) wrote: > > > On Fri, 12 Aug 2016 18:31:34 +0200 Stefan Schmidt < > ste...@osg.samsung.com> > > > said: > > > > > >> Hello. > > >> > > >> On 12/08/16 11:37, Tom Hacohen wrote: > > >>> On 07/06/16 13:36, Tom Hacohen wrote: > > >>>> Hey, > > >>>> > > >>>> This is the first ABI report since the merge of Elm. It should > correctly > > >>>> compare. I compared against 1.17 as if elementary was already > merged in. > > >>>> > > >>>> With that being said, this one is obviously a giant mess. The > signatures > > >>>> changed for *all* of the Eo functions because of Eo4 and the > interfaces > > >>>> work. > > >>>> > > >>>> Please take a look if you like the new functions added, and ignore > the > > >>>> Eo ones that got removed. > > >>>> > > >>>> We also need to make sure we don't keep around in ugly APIs that > were > > >>>> created in older Eo incarnations and should have been migrated to > the > > >>>> Efl namespace but haven't. > > >>>> > > >>>> As usual: > > >>>> https://devs.enlightenment.org/~tasn/abi/ > > >>> > > >>> > > >>> Updated according to the current state. > > >> > > >> > > >> Raster, I looked through the whole report now and fixed some more > > >> missing since tags. The items below I'm unsure about so I wanted to > get > > >> another opinion before changing things. I also cherry-picked all of > your > > >> commits plus mine up to now from 1.18 to master. > > >> > > >> Things that look suspicious to me: > > >> > > >> Edje_Common.h, libedje.so.1.18.0 > > >> edje_mmap_3d_has ( Eina_File* f, char const* group ) > > >> > > >> From commit 52df6171e9287dd588968ed968fee7e72cfaf080. Is this > something > > >> we should have public? The rest of our 3d work is still marked as > BETA. > > >> This one not. > > > > > > this just lets you know if it does have 3d. tbh i dislike this > because... > > > why does it matter? you shouldn't need to know or care. we can do 3d in > > > software. we use osmesa for this. yes it's sluggish, but it works. it's > > > portable. this stuff should work and be portable regardless of engine > - all > > > we are arguing is speed. it's used in edje_player so it has to be > exposed, > > > but in general i find the logic behind this api "dubious". but at this > > > point we may as well keep it. > > > > > >> --- > > >> > > >> efl_canvas_object.eo.legacy.h, libevas.so.1.18.0 > > >> evas_object_legacy_ctor ( Efl_Canvas_Object* obj ) > > >> > > >> The doc says internal function do not use. It seems not to be used in > > >> legacy anyway. Is it really needed to make this EAPI? > > > > > > fixed. eolian_gen issue. q66 did ti. i cherry-picked the commit. > > > > > >> --- > > >> > > >> efl_canvas_text.eo.legacy.h, libevas.so.1.18.0 > > >> evas_object_textblock_visible_range_get ( Efl_Canvas_Text* obj, > > >> Efl_Canvas_Text_Cursor* start, Efl_Canvas_Text_Cursor* end ) > > >> > > >> Introduced in commit c297ff4115ba99f212c59dc8ed2430bcd7c8ad6b. The > doc > > >> mark it actually with a since 1.1 but I have no place where this is > > >> being used in legacy. Is legacy really needed here? > > > > > > that smells like a typo for version. 1.18 :) i think this ios validly > added > > > to legacy api's to extend functionality... so just fixing typo is > enough. > > > > > >> --- > > >> > > >> efl_canvas_text_cursor.eo.legacy.h, libevas.so.1.18.0 > > >> evas_textblock_cursor_equal ( Efl_Canvas_Text_Cursor const* obj, > > >> Efl_Canvas_Text_Cursor const* cur ) > > >> > > >> Same as the above. I can't find legacy users. Introduced in commit > > >> c297ff4115ba99f212c59dc8ed2430bcd7c8ad6b > > > > > > same - missing a @since 1.18 > > > > > >> --- > > >> > > >> efl_loop_timer.eo.legacy.h, libecore.so.1.18.0 > > >> ecore_timer_loop_reset ( Efl_Loop_Timer* obj ) > > >> > > >> > > >> I see no user in legacy for this one. Maybe mark as legacy: null? > > > > > > i see the point of this though and it has an @since. so this is ok. > reset > > > uses "now" as the new start time, loop_reset uses the loop wakeup time > as > > > the new start time. > > > > > >> --- > > >> > > >> efl_ui_win.eo.legacy.h, libelementary.so.1.18.0 > > >> elm_win_name_get ( Efl_Ui_Win const* obj ) > > >> > > >> The set function is marked with legacy: null. Is get supposed to be > > >> available for legacy, if yes, we need to add a since tag. > > > > > > i see no reason not to have a get... just need an @since :) > > > > > >> --- > > >> > > >> Evas_Legacy.h, libevas.so.1.18.0 > > >> evas_object_text_filter_program_set ( Evas_Object* obj, char const* > code ) > > >> evas_object_text_filter_source_set ( Evas_Object* obj, char const* > name, > > >> Evas_Object* source ) > > >> > > >> Are text filters supposed to be available in legacy? > > > > > > check the commit. they are. the are missing @since. :) fixed. > > > > > >> --- > > >> > > >> Removed symbols: Ecore_Wayland.h header file seems not be used in > this run. > > > > > > it just wasnt built. we've moved on to ecore-wl2 anyway ... :) > > > > > >> --- > > >> > > >> elm_photo.eo.legacy.h, libelementary.so.1.17.0 > > >> [−] elm_photo_thumb_set ( Elm_Photo const* obj, char const* file, char > > >> const* group ) (1) > > >> changed to: > > >> elm_photo_thumb_set ( Evas_Object* obj, char const* file, char const* > > >> group ) > > >> > > >> We should probably make sure that the obj stays const here? > > > > > > technically this sounds like a fix. the object is modified. the object > > > properties are changed... this smells right and like a fix. it doesn't > break > > > api/abi. > > > > > >> --- > > >> > > >> elm_win.eo.legacy.h, libelementary.so.1.17.0 > > >> [−] elm_win_main_menu_get ( Elm_Win const* obj ) (1) > > >> changed to: > > >> elm_win_main_menu_get ( Evas_Object* obj ) > > >> > > >> Same as the last one. > > > > > > actually this api happens to modify internal window state - creates a > menu > > > etc. so this is right. > > > > > >> --- > > >> > > >> elm_win_legacy.h, libelementary.so.1.17.0 > > >> [−] elm_win_wm_rotation_preferred_rotation_set ( Evas_Object const* > obj, > > >> int rotation ) (1) > > >> changed to: > > >> elm_win_wm_rotation_preferred_rotation_set ( Evas_Object* obj, int > > >> rotation ) > > >> > > >> Again, same as before. > > > > > > well this is like the first. it should NOT be const. the object is > modified. > > > it's a set. :) so this is fixed. > > > > > >> --- > > >> > > >> evas_textblock.eo.legacy.h, libevas.so.1.17.0 > > >> [−] evas_object_textblock_text_markup_get ( Evas_Textblock const* > obj ) (1) > > >> changed to: > > >> evas_object_textblock_text_markup_get ( Evas_Object* obj ) > > >> [−] evas_textblock_node_format_first_get ( Evas_Textblock const* obj > ) (1) > > >> changed to: > > >> evas_textblock_node_format_first_get ( Evas_Object* obj ) > > >> [−] evas_textblock_node_format_last_get ( Evas_Textblock const* obj > ) (1) > > >> changed to: > > >> evas_textblock_node_format_last_get ( Evas_Object* obj ) > > > > > > hmm. ok these are from auto generated legacy code. thus its hard to > force > > > the const to be there. it doesn't know if the get happens to modify the > > > obj. this doesnt really break api or abi so i think we're ok here. > > > > > >> And one last time. > > >> > > >> --- > > >> > > >> elm_image_common.h > > >> [+] ELM_IMAGE_FLIP_HORIZONTAL > > >> [+] ELM_IMAGE_FLIP_TRANSPOSE > > >> [+] ELM_IMAGE_FLIP_TRANSVERSE > > >> [+] ELM_IMAGE_FLIP_VERTICAL > > >> [+] ELM_IMAGE_ORIENT_0 > > >> [+] ELM_IMAGE_ORIENT_180 > > >> [+] ELM_IMAGE_ORIENT_270 > > >> [+] ELM_IMAGE_ORIENT_90 > > >> [+] ELM_IMAGE_ORIENT_NONE > > >> [+] ELM_IMAGE_ROTATE_180 > > >> [+] ELM_IMAGE_ROTATE_270 > > >> [+] ELM_IMAGE_ROTATE_90 > > >> > > >> These constants seems to have moved to elm_image_legacy.h and the abi > > >> checker just got confused. Better someone to double check me here. > > > > > > i double checked. they all match the same abi values here. so we're ok. > > > > > > i'm done with going over yours above. i cherry-picked my branch fixes > back > > > to master too. > > > > > > so if these above are done... do you think we're good? everyone else? > > > > With all of the above either fixed or clarified I'm good. > > > > Is anybody else reviewing these right now wants us to wait before we > > hopefully to the final 1.18? > > release it. looks like no one has any objections anymore. > <https://lists.sourceforge.net/lists/listinfo/enlightenment-devel> > Well... I fixed a few more things I could spot. I believe we're good now. -- Jean-Philippe André ------------------------------------------------------------------------------ _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel