Alpha, Beta, et Release

Et voila la release annoncée par l’alpha et la béta des semaines passées.

On peut lire sur la liste de diffusion « devel » un message  de raster qui annonce la sortie des versions 1.1 et 1.5 (pour eet) des EFL.

Cette version est la révision 65800 du svn.

On note l’entrée en lice de deux petits nouveaux (qui ne le sont pas vraiment) la première version de Expedite (le benchmark d’ evas) et de Evas Generic Loaders (qui permet de charger des images par un processus separé).

Voici la liste des ajouts, corrections et suppressions de cette version (en anglais dans le texte).


Eina 1.1.0
Ajouts :

  •    eina_unicode_strndup API
  •    EINA_INLIST_FOREACH_SAFE API
  •    eina unicode UTF8 convenience calls API
  •    eina_list_move functions to move list nodes from list to list directly
  •    simple SAX XML parser API added
  •    inlist sort and sorted insert API
  •    mempool repack API
  •    eina_file API for portable file memory-mapping with IO saffety traps
  •    thread locks, conditions etc. wrapper API for portability
  •    prefix API for apps or libs to find their runtime prefix location
  •    refcount macro API
  •    binbuf for binary extendable buffers API
  •    eina_hash_free_cb_set API
  •    eina_main_loop_is API
  •    eina_strbuf_manage_new and eina_ustrbuf_manage_new APIs
  •    eina_xattr API’s
  •    eina_hash_murmur3 API

 

Corrections :

  •   compilation problems with some configure options
  •    stat issue if file size is in bytes and serial number overran 32bits
  •    uninstall of mempool modules
  •    static build of buddy mempool
  •    stringshare multi-init bug
  •    windows port of eina_sched_prio_drop
  •    eina_hash_set to handle data being NULL like eina_hash_del
  •    static linking to eina (iconv can be avoided)
  •    eina_share_common_del and eina_share_common_ref unlock bug

Améliorations :

  •   scalability/speed improvements in Chained Mempool
  •    stringshare as storage for eina error strings now

Eet 1.5.0
Ajouts :

  •    EET_DATA_DESCRIPTOR_ADD_LIST_STRING API for string lists
  •    eet_node API’s to manipulate nodes
  •    eet_alias_get API
  •    eet_data_xattr_cipher_get and eet_data_xattr_cipher_set APIs
  •    EET_DATA_DESCRIPTOR_ADD_BASIC_ARRAY API
Corrections :

  •    eet shutdown on windows
  •    test case to init eet
  •    compilation against libjpeg 8 on windows
  •    binary open on windows
  •    unopenable empty eet file for read/write

Améilorations :

  •    better speed and memory footprint of EET_G_UNION and EET_G_ARRAY
  •    use stringshare for mmaped file names
  •    use eina locking wrappers
  •    use eina_file for file IO
  •    jpeg encode and decode quality improved at expense of speed

Evas 1.1.0
Ajouts :

  •    auto-align feature to textblock
  •    mixedwrap wrap mode to textblock
  •    harfbuzzsupport for shaping
  •    WBMP loader
  •    mirror mode for tables
  •    proxy abilities to image objects to choose source ro mirror
  •    speculative texture cache to the OpenGL engine to avoid texture uploads
  •    newline policy setting API to textblock
  •    evas_object_ref and evas_object_unref to defer object deletions
  •    ICO loader
  •    evas_object_image_memfile_set to load images from memory
  •    vertical alignment to textblock
  •    more shadow directions for text rendering
  •    runtime italicizing and boldening of fonts that don’t have their own
  •    more bidi API support
  •    PSD loader
  •    generic external-process loader for thins like xcf, pdf, video, ps
  •    password mode to textblock
  •    GL shader disk cache to avoid re-compilng on start
  •    evas_textblock_node_format_list_get. API
  •    smart class usage count get API
  •    grid layout smart object and API
  •    evas_event_thaw_eval to help evaluate state and events on event thaw
  •    textblock support for numeric escapes like « < » in markup
  •    evas_object_image_extension_can_load_get API
  •    evas_object_image_extension_can_load_fast_get API
  •    evas_object_image_load_orientation_get API
  •    evas_object_image_load_orientation_set API
  •    feature to allow tables to repack the same object without error
  •    API to get child packing from table
  •    is_inside implementation for polygon objects
  •    out-of-order open/close tag support in textblock markup
  •    support for quoted parameters in tags in textblock markup
  •    font_weight and font_style formats
  •    font_width font format
  •    markup tag to specify language
  •    evas_textblock_cursor_range_formats_get API
  •    evas_textblock_cursor_visible_range_get API
  •    callback prioritization support
  •    YUV 601 input support for evas_object_image_data_convert
  •    NV12 colorspace for evas image objects
  •    MT12 colorspace for evas image objects
  •    underline dashing suport to textblock
  •    API to get largest image size
  •    GL Cocoa engine

Corrections :

  •    cursor and selection handling with bidi text
  •    many general bid issues with text
  •    free bug in key grabs
  •    bug when images are scaled to massive sizes (like 1 billion pixels)
  •    BMP decode for have more pixels per line than the image does
  •    font string parsing bug if font element is too long
  •    crash bug in argb8888 to a8 conversion
  •    textblock bug with cursors in empty textblocks
  •    bug in smart calc array where some objects would be skipped
  •    static linking of BMP and TGA loaders
  •    bug when GL viewport was set with a NULL context
  •    bug when looking for vsync API due to SGI vs EXT differences
  •    bug in evas_object_del where DEL callback happened before HIDE
  •    yinversion bug on some GL surfaces
  •    BMP loader to handle alpha BMPS as solid where all alpha values are 0
  •    clipping with evas map issues
  •    bug where wrong call was used for freeing a mempool object
  •    static linking of GL engine
  •    GL engine to handle if someone uses GL contexts outside of evas
  •    bug in evas_object_textblock_text_markup_prepend that broke cursors
  •    lack of calling pre/post swap callbacks when using OpenGL-ES2
  •    some crashes with load options scaling of SVGs in 2nd pass decode
  •    segfault with evas_textblock_cursor_content_get
  •    libjpeg 8 compilation support on windows
  •    evas table to handle weighting correctly and expansion
  •    evas table to allow fractional weights, not just 0/1
  •    glyph search bug causing inconsitent return values in some cases
  •    compile when –disable-async-preload is used
  •    callback counter bug
  •    grab count and hide bug
  •    infintie loop bug when re-inserting objects during pre-render calc
  •    evas_object_image_data_convert
  •    TGA loader detects false positives less and handles alpha TGAs better
  •    repeat event flag not inherited from parent smart like pass events

Améliorations :

  •    pre-render speed for rectangles if they are invisible
  •    code of textblock and font engine
  •    textblock layout speed
  •    speed and memory usage of textblock
  •    cache handler to also use file size, mode and sub-second timestamp
  •    textblock to re-layout only paragraphs that have changed
  •    homogenous table layout alignment and sizing
  •    textblock linebreaking by using liblinebreak
  •    image loader to drop out instantly if image file is a directory
  •    object allocation to use mempools
  •    font engine to use string objects not strings for caching purposes
  •    text to display missing unicode char instead of missing glyphs
  •    internal file code to use eina_file more
  •    jpeg loader to use eina_file
  •    jpeg encode and decode quality improved at expense of speed

Suppression :

  •    removed quartz, cairo, qtopia and xrender engines. dead.

Ecore 1.1.0
Ajouts :

   ecore :

  •        ecore_thread_reschedule()
  •        ecore_exe_data_set()
  •        ecore_animator_timeline_add()
  •        ecore_timer_dump()
  •        custom ecore animator tick mode and support
  •        ecore_pipe_freeze/thaw()
  •        ecore_pipe_wait()
  •        ecore_throttle()
  •        ecore_main_loop_thread_safe_call_async()
  •        ecore_main_loop_thread_safe_call_sync()
  •        ecore_thread_main_loop_begin()
  •        ecore_thread_main_loop_end()

   ecore_con :

  •       ECORE_CON_EVENT_CLIENT_ERROR event
  •       ECORE_CON_EVENT_SERVER_ERROR events
  •        Ecore_Con_Event_Server_Error, Ecore_Con_Event_Client_Error types
  •        ecore_con_client_port_get()
  •        ecore_con_url_ssl_verify_peer_set()
  •        ecore_con_url_ssl_ca_set()
  •        ecore_con_url_pipeline_set()
  •        ecore_con_url_pipeline_get()
  •        ecore_con_ssl_client/server_upgrade()
  •        ECORE_CON_CLIENT/SERVER_UPGRADE events
  •        ecore_con_server_timeout_get/set()
  •        ecore_con_ssl_server_verify_basic()
  •        ecore_con_url_url_get()
  •        ecore_con_server_fd_get()
  •        ecore_con_client_fd_get()
  •        ECORE_CON_EVENT_CLIENT_WRITE event
  •        ECORE_CON_EVENT_SERVER_WRITE events

   ecore_evas :

  •        ecore_evas_screen_geometry_get()
  •        ecore_cocoa_evas support

   ecore_file :

  •        ecore_file_download_full()

ecore_imf :

  •        ecore_imf_context_canvas_get()
  •        ecore_imf_context_window_get()
  •        ecore_imf_context_preedit_string_with_attributes_get()
  •        added controls for auto-capitalization and prediction controls
  •        ecore_imf_context_input_panel_enabled_set/get()
  •        ecore_imf_context_cursor_location_set()

ecore_x :

  •        ecore_x_randr_edid_*()
  •        ecore_x_randr_screen_backlight_*()
  •        more ecore_x_sync api controls to support ecore_evas
  •        shape input setting support added
  •        ecore_x_screen_size_get()

Corrections :

  •    https failing via curl
  •    removed SIGRT handling as it was broken anyway and unused
  •    space key handling in ecore_wince/ecore_win32 support
  •    wince background erasing
  •    300 second timeout to handle slow or large downloads in ecore_con
  •    ecore_file intoify fd’s to not be inherited by forked children
  •    ecore_file compilation if ecore_con and curl disabled
  •    crash in ecore_con_ssl when attempting connections on dead socket
  •    ecore-evas intereptor not handling override-redirect
  •    ecore_con_url_ftp_upload to complete uploads always
  •    window removal from ignore_list in ecore_x
  •    bug in ecore_evas when setting modifiers for sub buffer canvases
  •    NULL pointer dereference in ecore_x selection notification code
  •    sync GNUTLS thread activation with eina changes
  •    ecore_ipc compilation on Windows
  •    fix Shift, Control, Alt and AltGr keys detection on Windows XP
  •    « mouse-down inside and mouse-up outside » issue on Windows
  •    ecore_x shadow tree search fixed to respect shape input of windows
  •    fd handlers fixed when idler callbacks add jobs or events
  •    ecore_x_selection_convert takes length into account
  •    security issue in openssl certificate verification
  •    gnutls server client certificate verification
  •    epoll delete of fd handling in forked child
  •    grouping of timers that go off very close to eachother go off together
  •    generic event buffer handling in ecore_x fixed
  •    use current size not requested size when getting geom in ecore-evas
  •    ecore_cocoa now handles windows correctly
  •    ecore_file_download error handling when ecore_con_url_get fails
  •    focus and mouse-in ininital siate on some ecore-evas back-ends

Améliorations :

  •    reduced memory needed for list of fd’s in ecore by using inlist
  •    ecore_evas now is able to send render-done even if not syncing to comp
  •    more safety checks in ecore_con ares support
  •    ecore timer monotonic clock now supported on OSX
  •    make ecore_con work on Windows
  •    improve resize/move on Windows
  •    improve keyboard management on Windows XP
  •    refactored _ecore_main_loop_iterate_internal
  •    better safety with ecore_evas_ecore_evas_get
  •    ecore-evas produces more errors on stderr when errors happen now
  •    ecore-con works on IPv6 now
  •    inet_ntop instead of getnameinfo for ecore_con_client_get_ip
  •    ecore-con unit tests added
  •    ecore-evas fb uses ecore_input_evas now instead of going direct
  •    fix ecore-evas x changing of override support if window not shown yet

Suppression :

  •    xrender evas engine support removed from ecore_evas (api still there)

Embryo 1.1.0
Corrections :

  •    on windows use fseek instead of rewind as rewind doesn’t exist on wince
  •    delete tmp files on windows

Amélioration :

  •    make embryo_cc use eina_prefix to determine installation location

Edje 1.1.0
Ajouts :

  •    « UNDER » entry cursor mode
  •    auto alignment of TEXT parts with text.alignment set to -1
  •    mirroring support
  •    edje_object_part_text_cursor_pos_set/get()
  •    size_range propert to TEXT parts
  •    proxy parts so part can source other parts including swallows
  •    suport explicit shadow direction with added effect param
  •    edje_object_part_text_append()
  •    new interpolations: ACCEL_FAC, DECEL_FAC, SIN_FAC, DIVIS, BOUNCE, SPRING
  •    « entry,paste,request,1″ signal (primary)
  •    « entry,paste,request,3″ signal (clipboard)
  •    « entry,selection,all,request » signal
  •    « entry,selection,none,request » signal
  •    « entry,paste,request* » signals afte cursor change
  •    « entry,changed,user » signal
  •    collection.group.limits.horizontal/vertical
  •    input panel layout setting API’s
  •    edje_object_signal_callback_extra_data_get()
  •    group inheritance and part re-ordering with inheritance
  •    add change information to « entry,changed,user »
  •    add « CURRENT » option for transitions to transition from current state
  •    lua color/text class, map, text, image, line, polygon and edje object API’s

Corrections :

  •    invalid memory access in edje alias code
  •    recusive aliases fixed
  •    cursor didn’t change on backspace signal
  •    propagation of recursive events on existing part
  •    box/table signal not including name correctly
  •    clicked signal on entry
  •    propagation of recursive events between existing and non-existing parts
  •    textblock handling in size_min_restricted_calc fixed
  •    stop emitting « cursor,changed » on text set
  •    external usage in sub groups now have proper parents
  •    ellipsis fixed with small text parts
  •    edje_shutdown() fixed if called before all edje objects are gone
  •    allow -1 for description.max

Améliorations :

  •    built-in epp (from e16) to replace cpp/gcc pre-processor on all platforms
  •    edje_decc only uses edje_cc as compiler for security paranoia
  •    use smart clipper more from evas
  •    text.align now works for textblock too
  •    creation/deletion of edje objects should be faster with freeze and thaws
  •    don’t walk eina_list when deleting member classes – faster
  •    part.description.max now can define just 1 axis
  •    signal and message propagation is more consistent and simpler now

Efreet 1.1.0
Corrections :

  •    when you have an empty in a menu
  •    tests don’t do clearenv when it is not available
  •    memory leak fixed in cache icon retrieval
  •    check for NULL dirs in caches
  •    check for theme change when rebuilding cache
  •    leak in efreet_mime_type_icon_get
  •    reset log domain to -1 on unregister
  •    clear memory cache when closing eet file
  •    fixed documentation
  •    remove EAPI from efreet_home_dir_get as it wasn’t exported in .h’s
  •    don’t leak hashes on init error
  •    no more memleak in desktop cache creation
  •    fixed uri encoding when opening files

Améliorations :

  •    added temporary memory cache for eet file data
  •    always use icon cache
  •    faster string comapre with poter equality for strings
  •    local log domains per file
  •    remove exess init functions for xml
  •    stop creating cache dir multiple times
  •    change ownership of cache files to calling user
  •    fast path for « * » pattern match
  •    delay cache creation with a timer to avoid storms
  •    always rebuild cache from 0 when needed and be more correct
  •    store cache change flags in update file and propagate to update event

Eeze 1.1.0
Ajouts :

  •    more disk-related detection/info functions
  •    disk mounting API
  •    eeze_scanner utility for applications to hook for drive detection

Corrections :

  •    bugs with device detection related to newer kernel versions
  •    device filtering to be more accurate in some cases

E Dbus 1.1.0
Ajouts :

  •    e_notification_action_id_get
  •    e_notification_action_name_get
  •    e_notification_image_init
  •    e_connman: sync api with connman-0.7x

Corrections :

  •    DSO linking issues fixed
  •    crash on e-notify-send with invalid session bus set
  •    when app has no idle time, e_dbus’s idlers dont process anything
  •    error when trying to add duplicate fd handler for dbus fd

Améliorations :

  •    notification protocol 1.2 support
  •    e_connman supports connman-0.7x api, warns that it is unstable.

Expedite 1.1.0
Première version

Evas Generic Loaders 1.1.0
Première version

flattr this!