Efl And Elementary 1 10 Release Announcement
EFL 1.10 is Out
After three months of development work we are proud to announce the release of version 1.10 of EFL, Elementary, Evas Generic Loaders and Emotion Generic Players. We extended the original schedule by one week to allow for more bug fixes. For 1.11 we plan to go back to the 12 weeks schedule.
Download
LINK | SHA256 |
efl-1.10.0.tar.gz | 55ab54150e4c53781f7b3239f39c11a06c3b9208f4109700bca049c36cd6c49b |
elementary-1.10.0.tar.gz | 01c9127f0b29c1a07328199f51fb6d72d7f250be31e8afb26914566fb1c7e612 |
emotion_generic_players-1.10.0.tar.gz | ccfb1c8c346ba1a84484b82ce1ce871fd2c6660421ca7fa5d911661bd3cc94db |
evas_generic_loaders-1.10.0.tar.gz | f5294c1a86dd4d7d4983ec4217c0d0d1a9cfa3fc2060d4af7eec5fa4ce23a463 |
What's New
Even if we had only three months a lot has happened during the 1.10 release cycle.
We only cover some highlights here for the full list please look at the NEWS files
if you are interested in the details. As usual we have been working on fixing bugs,
optimizing our code for speed and memory footprint and adding new features.
Below we describe just some highlights and by no means provide a full list.
Elementary theme versioning
From this release on themes need to have a version. Please refer to bc860d5cb14ef792251324de54041efcb75538cd if you need to adapt an external theme. Internal themes have been adapted.
Huge Edje changes
- TEXT parts with text.min: 1 X; now throw warnings in edje_cc when text.ellipsis: -1; is not set since this is the most common behavior
- TEXT parts now calculate padding more accurately, making layout offset calculation easier when using filters
- Text filters now use a Lua-like syntax which is slightly different from the beta filter API in 1.9
- Entry behavior is now much more consistent with other toolkits
- Text-containing parts now support text.source and text.text_source with parts of type GROUP
- EDC documentation has been improved in a number of places
- This still needs contributions from users like you!
- The EDC language has had an overhaul, adding a number of new features:
- LazEDC
- State transitions are now simpler
- Programs now support target groups for reusing groups of parts as targets
- Program chains are now much simpler to create
- Part inheritance
- Greatly improved group inheritance
- Examples of new features can be seen in Elementary commits 9650c1fb62cdf6365d7caf1ab49302c529c4703f through 8144ff8ae361d500a8a29aff949bfb5d469db130
Eo2 has landed
We've changed a lot of things in the Eo objecting system. The underlying object system for the EFL. The API should be much better and easier to work with, and you can finally do things like:
ret = eo_do(obj, some_call());
or
eo_do(obj, ret = some_call());
We now have better error/warning reporting in C code, and it should also be easier to create bindings that use eo_do() calls.
New EFL C++ bindings
- Libraries currently available: Ecore-Cxx, Eet-Cxx, Eina-Cxx and Eo-Cxx.
- There's also Eolian-Cxx, a tool that automatically generates C++ bindings from .eo files.
- Bindings for Evas-Cxx, Edje-Cxx, Ecore-Cxx and Ecore-Audio-Cxx are generated during EFL build.
- All libraries and the generated bindings are C++11 header-only code.
Added support for ETC1
- Ericsson Texture Compression is a lossy image compression format based on open standards. It is supported by many embedded GPUs, and compresses at 4 bits per pixel
- ETC1 is fully supported for both the gl_x11 and software engines, and a codec is included in EFL (based on rg-etc1)
- ETC2 support is still a work in progress as there is no encoder yet
Eolian
Eolian is a tool generating code from a meta-data (.eo) file describing classes. Its first goal is to facilitate code writing when interfacing with Eo, by generating automatically the APIs and the invocation to the Eo APIs. It consists of:
- a library parsing these .eo files and filling a database.
- a generator using this database to generate C code invoking Eo layer (eo_do) and headers for Eo and legacy APIs.
For the format of the .eo files, please refer to https://phab.enlightenment.org/w/eolian/
The Eolian APIs are still beta. It will surely change, hopefully until 1.11.
Elementary Widget Item Focus Concept
- Each elementary widget's item can get a focus now. So focus highlight moves between widgets, widget items, and even between widgets and widget items.
- Each widget item triggers "focused" and "unfocused" smart callback.
Statistics
EFL
(git log --pretty=oneline v1.9.0..v1.10.0 | wc -l)
Number of commits: 1174
(git diff --stat v1.9.0..v1.10.0)
Changed files, added and removed lines: 788 files changed, 84946 insertions and 41843 deletions.
(git shortlog -nse --grep CID v1.9.0..v1.10.0)
Top 5 Coverity issue fixers:
30 Cedric BAIL <cedric.bail@free.fr> 5 Stefan Schmidt <stefan@datenfreihafen.org> 3 Daniel Zaoui <daniel.zaoui@samsung.com> 3 Jean-Philippe ANDRÉ <jpeg@videolan.org> 3 Tom Hacohen <tom@stosb.com>
Elementary
(git log --pretty=oneline v1.9.0..v1.10.0 | wc -l)
Number of commits: 713
(git diff --stat v1.9.0..v1.10.0)
Changed files, added and removed lines: 608 files changed, 54835 insertions(+), 77174 deletions(-)
(git shortlog -nse --grep CID v1.9.0..v1.10.0)
Top 5 Coverity issue fixers:
11 Daniel Juyung Seo <seojuyung2@gmail.com> 2 Daniel Zaoui <daniel.zaoui@samsung.com> 1 ChunEon Park <hermet@hermet.pe.kr> 1 Lukasz Stanislawski <l.stanislaws@samsung.com>
Building and Dependencies
If you have an existing EFL or Elementary install, you may wish to delete its header files and libraries before compiling and installing to avoid possible conflicts during compilation. If you are compiling the above, please compile them in the following order:
elementary
emotion_generic_players
evas_generic_loaders
Please refer to the respective README files in each release for a full list of dependencies, explanations on configure flags and other relevant information (Just scroll down to see the README already displayed nicely).
EFL
Elementary
Emotion Generic Players
Evas Generic Loaders
Recommended dependencies are for all of the above are:
bullet
libpng
libjpeg
gstreamer (1.x) (ensure you have all the gstreamer codecs you need/want. Evas generic loaders still need gstreamer 0.10)
zlib
luajit (optional lua 5.1 or 5.2)
libtiff
openssl
curl
dbus
libc
fontconfig
freetype2
fribidi
libpulse
libsndfile
libx11
libxau
libxcomposite
libxdamage
libxdmcp
libxext
libxfixes
libxinerama
libxrandr
libxrender
libxss
libxtst
libxcursor
libxp
libxi (2.2 or newer)
libgl (opengl/glx or opengl-es2/egl)
giflib
util-linux (limbount + libblkid)
systemd / libudev
harfbuzz
systemd
libwebp
vlc (libvlc)
poppler
libraw
libspectre
librsvg
It is suggested you add the following options when building EFL to get a better experience:
--enable-xinput22 \
--enable-multisense \
--enable-systemd \
--enable-image-loader-webp \
--enable-harfbuzz
On linux to get framebuffer support you may want to also do:
--enable-fb
--disable-tslib
If you want wayland support also add:
--enable-wayland
At runtime if you want thumbnailing for DOC/PPT/XLS etc. files also provide:
libreoffice
- Last Author
- stefan_schmidt
- Last Edited
- May 26 2014, 4:19 AM
- Projects
- None
- Subscribers
- JackDanielZ, savio, seoz