Commit Graph

118 Commits

Author SHA1 Message Date
Cedric BAIL bafe5e9a74 emile: decode GRAY JPEG as GRY8. 2015-03-17 09:58:19 +01:00
Cedric BAIL 1a8384cd3c emile: simplify error handling for jpeg data decoding. 2015-03-17 09:58:18 +01:00
Cedric BAIL 4ca8bfd15c emile: add JPEG support. 2015-03-17 09:58:18 +01:00
Cedric BAIL a865d41181 emile: remove use of custom structure and prefer Eina_Rectangle.
Get rid of warning inside of the jpeg loader that result of it. I do believe
this is not an ABI break on the loader API. If you disagree, please raise your
voice.
2015-03-17 09:58:18 +01:00
Cedric BAIL d40dad8f73 emile: initial addition of emile image support. 2015-03-17 09:58:18 +01:00
Cedric BAIL 3e6858dc2b emile: trying to fix security. 2015-03-17 09:58:18 +01:00
Cedric BAIL a089d8cd7b emile: Add SSL support. 2015-03-17 09:58:18 +01:00
Cedric BAIL ee57de59c2 emile: remove left over #ifdef 2015-03-17 09:58:18 +01:00
Cedric BAIL e649992bff emile: make the initialization part of backend cipher file to. 2015-03-17 09:58:18 +01:00
Cedric BAIL 10184ca860 emile: split OpenSSL, GNUTLS and no cipher into separate file as a first step toward module. 2015-03-17 09:58:18 +01:00
Cedric BAIL c3a1859e59 emile: make it cross platform. 2015-03-17 09:58:18 +01:00
Cedric BAIL 32c5f691c8 emile: make cipher initialization optional. 2015-03-17 09:58:17 +01:00
Cedric BAIL f9dd639a92 eet: use Emile instead of Zlib and LZ4 directly. 2015-03-17 09:58:17 +01:00
Cedric BAIL 0fa50a0804 emile: add compress/uncompress logic. 2015-03-17 09:58:17 +01:00
Cedric BAIL 2e34d835d6 emile: expose cipher/uncipher block logic. 2015-03-17 09:58:17 +01:00
Cedric BAIL cc88832353 ecore_con: depend on emile for initializing crypto library. 2015-03-17 09:58:17 +01:00
Cedric BAIL 2d342c2814 emile: move GNUTLS and OpenSSL initialization logic from Eet to Emile. 2015-03-17 09:58:17 +01:00
Cedric BAIL 0b04186a7f emile: initial introduction of Emile.
The intent of Emile is to be the common layer for serialisation, compression
and ciphering. It will expose the library we currently use internally to an
easier use from the outside (like gcrypt and lz4). It should improve portability.
Instead of pushing JSON, XML and what's not to Eina, I do think that they will
fit better in Emile.

As for the naming of Emile, you will need to be French and say :
"Un quoi ?" "Un serializer !"

Regarding why it is put there in the stack. Right now there is two users of
compression (eet and terminology), two users of cipher library (eet and ecore_con)
and a few handful of user for serialization (eina, eet, efreet, ecore_con, ...).
So the choice was quite simple, it needed to be below Eet. Now it could have been
on top of Eo or integrated into Eina.

One of the use case I am thinking of, is to compress Eo object when a canvas get
hidden/minized. For that it require Eo to use that library and it can't be a higher
level object. And with current implementation of Eo it is perfectly possible to
implement such idea. So not at Eo level.

As for Eina, I am starting to think it is getting to much things in its namespace.
I do believe that infact Eina_Simple_XML and Eina_File should after all have landed
in their own library. That's why I am putting the current logic in a new library.
It is going to expand, I want it to provide an few SAX like parser for JSON,
Eet_Data and protobuf with also an API like Eet_Data to directly feed those value
into a C structure without using a DOM at all. It would also be the right place
to experiment and benchmark for a new Eet_Data format that could be more efficient
to use.

So at the end, and due to how I see things going and being used, I do think it
is better of in its own library.
2015-03-17 09:58:17 +01:00