commit 0f326a2a1aa42e4b268dc50af4ab9f5e6b2f8059
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Mon May 6 13:57:19 2019 +0200

    NEWS: update

 docs/NEWS.txt | 51 ++++++++++++++++++++++++++++++++-------------------
 1 file changed, 32 insertions(+), 19 deletions(-)

commit 96b06cf35348c1063c2b0428d0eab301c65555dd
Author: Ell <ell_se@yahoo.com>
Date:   Tue May 7 14:34:36 2019 -0400

    buffer: use tile/scratch allocators in the swap backend

    in GeglTileBackendSwap, use the tile- and scratch-allocators for
    temporary compression buffers, to improve performance.

 gegl/buffer/gegl-tile-backend-swap.c | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

commit f956830b2be3067c5b1d11d94dca954313cfbe8c
Author: Ell <ell_se@yahoo.com>
Date:   Tue May 7 14:29:16 2019 -0400

    buffer: use tile allocator for tile data

    In GeglTile, use gegl-tile-alloc for tile data, instead of the
    normal allocator.

    Note that the tile allocator guarantees that allocated buffers are
    preceeded by sufficient room for the n_clones array, which
    simplifies the allocation of a shared n_clones+data buffer.

 gegl/buffer/gegl-tile.c | 72
 +++++++++++++++++++++----------------------------
 1 file changed, 31 insertions(+), 41 deletions(-)

commit 137e66e45138e8316f6403e53e8aa9a02ad523e7
Author: Ell <ell_se@yahoo.com>
Date:   Tue May 7 14:08:17 2019 -0400

    buffer: add dedicated allocator for tile data

    Add gegl-tile-alloc -- a dedicated allocator for tile data.  The
    allocator amortizes the cost of memory allocation, which is
    especially high on Windows, over multiple tiles, by allocating
    tiles in bulk, in groups called blocks (currently, each block is
    roughly 1% of the tile-cache size.)

    The allocator is currently limited to tiles whose size is a power
    of 2, possibly multiplied by 3 or 5 (to support tiles whose
    dimensions are powers of 2, with up to 5 components).  The rest of
    the tiles are allocated using the normal allocator.

    Move the call to malloc_trim() from GeglBuffer's destructor to
    gegl-tile-alloc.  We call it whenever tile data equivalent to ~10%
    of the tile-cache size is freed.

    Add a tile-alloc-total stat, which reports the total amount of
    memory currently used by the tile allocator.

 configure.ac                  |   7 +
 gegl/buffer/Makefile.am       |   2 +
 gegl/buffer/gegl-buffer.c     |   9 -
 gegl/buffer/gegl-tile-alloc.c | 405
 ++++++++++++++++++++++++++++++++++++++++++
 gegl/buffer/gegl-tile-alloc.h |  34 ++++
 gegl/gegl-stats.c             |  13 ++
 m4/ax_gcc_builtin.m4          | 170 ++++++++++++++++++
 7 files changed, 631 insertions(+), 9 deletions(-)

commit e99622d804877ff1bad7ca3bf000448427a0c104
Author: Ell <ell_se@yahoo.com>
Date:   Tue May 7 12:34:55 2019 -0400

    buffer: in gegl-scratch, don't rely on struct layout

    In gegl-scratch, avoid relying on exact struct layout to guarantee
    data alignment, and rather use explicit pointer arithmetic instead.

 gegl/buffer/gegl-scratch.c | 80
 +++++++++++++++++++++++-----------------------
 1 file changed, 40 insertions(+), 40 deletions(-)

commit 9efef7f6fe69e5dbe4688fd99ed537756ef952d0
Author: Ell <ell_se@yahoo.com>
Date:   Tue May 7 12:25:47 2019 -0400

    buffer: rename GEGL_ALIGN => GEGL_ALIGNMENT; add GEGL_ALIGN() macro

    Rename the GEGL_ALIGN constant (specifying allocated data
    alignment) to GEGL_ALIGNMENT, and add a GEGL_ALIGN() macro, which
    takes a size/address value and aligns it to GEGL_ALIGN.

 gegl/buffer/gegl-memory-private.h | 6 +++++-
 gegl/buffer/gegl-memory.c         | 6 +++---
 gegl/buffer/gegl-scratch.c        | 2 +-
 3 files changed, 9 insertions(+), 5 deletions(-)

commit daf7f2e334de4a425252c971f1914380361c3c17
Author: Jan Vesely <jano.vesely@gmail.com>
Date:   Sat Apr 27 14:44:03 2019 -0400

    gitlab-ci: Reduce the amount of git fetches

    Use GIT_STRATEGY: none to prevent cloning gegl in babl-git and opencl
    dependency jobs.
    Restrict explicit git clones.
    Fetch babl tags explicitly.

    Signed-off-by: Jan Vesely <jano.vesely@gmail.com>

 .gitlab-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

commit 03abbf3c04511d072d19519422274cc6d61612a3
Author: Jan Vesely <jano.vesely@gmail.com>
Date:   Sun May 5 16:59:17 2019 -0400

    gitlab-ci: drop allow failure from OpenCL test job

    Signed-off-by: Jan Vesely <jano.vesely@gmail.com>

 .gitlab-ci.yml | 1 -
 1 file changed, 1 deletion(-)

commit ddb2f4225befb88eaaeb506369b7cddb49a6567d
Author: Jan Vesely <jano.vesely@gmail.com>
Date:   Sun May 5 16:58:37 2019 -0400

    opacity: Remove format specia handling in OpenCL path.

    Signed-off-by: Jan Vesely <jano.vesely@gmail.com>

 operations/common/opacity.c | 12 ------------
 1 file changed, 12 deletions(-)

commit d82e2896aa1a7366af14eb3c70230d991c9e4f41
Author: Jan Vesely <jano.vesely@gmail.com>
Date:   Sun May 5 01:22:17 2019 -0400

    opacity: Check PREMULTIPLIED flag to select the right OpenCL kernel.

    Fixes clones.xml on nVidia OpenCL and Intel beignet.
    Signed-off-by: Jan Vesely <jano.vesely@gmail.com>

 operations/common/opacity.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit c1e0f649ee709aef0e0c1f69fa42786c22c50526
Author: lumingzh <lumingzh@qq.com>
Date:   Mon May 6 14:18:13 2019 +0800

    Update Chinese (China) translation

 po/zh_CN.po | 10460
 +++++++++++++++++++++++++++++++++++++++-------------------
 1 file changed, 7052 insertions(+), 3408 deletions(-)

commit bffe61914552931381432e123f72d481c53044c0
Author: Ell <ell_se@yahoo.com>
Date:   Sun May 5 11:59:13 2019 -0400

    buffer: fix gegl_tile_handler_cache_copy() for GeglTileBackendBuffer
    backends

    In gegl_tile_handler_cache_copy(), when the source cache doesn't
    have the requested tile, remove the tile from the destination cache
    *before* letting the backend copy the tile, since it might copy it
    into the destination cache as well, as happens with
    GeglTileBackendBuffer.  Previously, this would happen *after* the
    backend copied the tile, erroneously invalidating the copied tile
    in this case.  See issue #157.

    Also, don't invalidate the destination tile in this case, since
    gegl_buffer_copy() invalidates the entire affected region in bulk.

 gegl/buffer/gegl-tile-handler-cache.c | 52
 ++++++++++++++++++-----------------
 1 file changed, 27 insertions(+), 25 deletions(-)

commit d93b9cdc5b87f2f7f0357022fb9cf0c0379909b6
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Sun May 5 15:19:51 2019 +0200

    NEWS: update

 docs/NEWS.txt | 5 +++++
 1 file changed, 5 insertions(+)

commit 8a5dd58291ff5efc3160f24f6bbd80bc3fad842d
Author: Ell <ell_se@yahoo.com>
Date:   Sun May 5 08:47:22 2019 -0400

    operation, transform: use indirect input buffer on main thread as well

    In the various GeglOperation subclasses that use a per-thread
    indirect input-buffer, backed by the actual input buffer, during
    multithreaded processing, use an indirect buffer for the main
    thread as well, instead of using the input buffer directly
    (unless the main thread processes the entire output).

    This avoids a deadlock when multiple threads gegl_buffer_copy()
    from their input buffer to the output buffer concurrently: if a
    worker thread acquires both the (indirect) input-buffer and output-
    buffer locks, while the main thread acquires the (direct) input-
    buffer lock and waits on the output-buffer lock, as soon as the
    GeglTileBackendBuffer of the worker-thread's input buffer forwards
    a command to the underlying input buffer, it will deadlock while
    waiting for the input-buffer's lock (which is held by the main
    thread).  See issue #157.

    Furthermore, this should reduce contention over the underlying
    input buffer between the main thread and the worker threads.

 gegl/operation/gegl-operation-composer.c  | 2 +-
 gegl/operation/gegl-operation-composer3.c | 2 +-
 gegl/operation/gegl-operation-filter.c    | 2 +-
 operations/transform/transform-core.c     | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

commit b3b9a943605f24b3494baec740d7e677db095c35
Author: Ell <ell_se@yahoo.com>
Date:   Sun May 5 08:36:37 2019 -0400

    buffer: improve deadlock prevention in gegl_buffer_copy()

    In gegl_buffer_copy(), when using COW, sort the locks by the tile-
    storage pointers, instead of the buffer pointers, to avoid the
    possibility of a deadlock when different buffers use the same
    underlying storage in concurrent calls to the function.

 gegl/buffer/gegl-buffer-access.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c2ae1b7e2daf7dc3480a6ae1acb3125e702898c9
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Sun May 5 12:45:44 2019 +0200

    NEWS: update

 docs/NEWS.txt | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit b3564469874d1475d12a07de4366bc2a813067b6
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Sun May 5 12:45:36 2019 +0200

    bin: add basename/dirname/entry_no accessors

 bin/lua/init.lua   | 15 +++++++++++++--
 bin/lua/viewer.lua |  6 +++---
 bin/ui.h           | 11 +++++++----
 3 files changed, 23 insertions(+), 9 deletions(-)

commit 158cd6706e0a465ceda6c80066707c00e7de75e3
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Sat Apr 27 22:46:00 2019 +0200

    bin: clean up viewer code

 bin/ui-viewer.c | 15 ++-------------
 1 file changed, 2 insertions(+), 13 deletions(-)

commit a8f77716c12104b620279d3dfbedd7b856a910c0
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Sat Apr 27 22:40:20 2019 +0200

    make get_item_path_no useful from lua

 bin/ui-core.c   | 54
 +++++++++++++++++++++++++++++++++++++++---------------
 bin/ui-viewer.c | 22 +++-------------------
 bin/ui.h        |  2 +-
 3 files changed, 43 insertions(+), 35 deletions(-)

commit f8b43fee8f5cc797f7b2a3b23604740fd5a57654
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Sat Apr 27 19:54:11 2019 +0200

    bin: also remove from custom order index when discarding

 bin/ui-core.c | 131
 +++++++++++++++++++++++++++++++++-------------------------
 bin/ui.h      |   5 +++
 2 files changed, 80 insertions(+), 56 deletions(-)

commit 2f03a5537ef4f9a969e02de973d45fb62911dca3
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Sat Apr 27 18:03:14 2019 +0200

    bin: repair discard command for new folder structure

 bin/lua/viewer.lua | 37 ++++++++++++++++++++++++++++++++++++-
 bin/ui-core.c      | 21 +++++++++++++++------
 2 files changed, 51 insertions(+), 7 deletions(-)

commit 241d9407154972153fcd987c125cf1d6c620d68f
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Sat Apr 27 10:16:21 2019 +0200

    gegl: rename gegl_update_anim_time to gegl_node_set_time

 bin/ui-core.c         | 12 +++++-------
 gegl/gegl-serialize.c | 27 +++++++++------------------
 gegl/gegl-utils.h     | 11 ++++++-----
 3 files changed, 20 insertions(+), 30 deletions(-)

commit 716bb1559c7b9f5b4e0eacb8b5df202dcfa62f17
Author: Jordi Mas <jmas@softcatala.org>
Date:   Sat Apr 27 08:30:14 2019 +0200

    Update Catalan translation

 po/ca.po | 48 ++++++++++++++++++++++++------------------------
 1 file changed, 24 insertions(+), 24 deletions(-)

commit 1feb70926d36949fab6b513c4602dc0c628215a3
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Thu Apr 25 14:17:43 2019 +0200

    gegl, bin: gegl_update_anim_time

    This call updates all properties with associated animation
    key-frames to
    the specified time.

 bin/lua/init.lua         |   2 +
 bin/lua/viewer.lua       |   8 ++-
 bin/ui-core.c            |  94 +++++++++++++++++++++-----
 bin/ui-viewer.c          |  15 -----
 bin/ui.h                 |   2 +
 docs/source-overview.txt |   4 +-
 gegl/gegl-serialize.c    | 169
 +++++++++++++++++++++++++++++++++++++++--------
 gegl/gegl-utils.h        |  15 ++++-
 8 files changed, 248 insertions(+), 61 deletions(-)

commit 6b8a478511511b81a6d2e931cf1a4771a02d8956
Author: Carles Ferrando Garcia <carles.ferrando@gmail.com>
Date:   Thu Apr 25 04:50:37 2019 +0000

    Update Catalan translation

 po/ca.po | 3899
 ++++++++++++++++++++++++++++++++++++++------------------------
 1 file changed, 2425 insertions(+), 1474 deletions(-)

commit b1946b66afa44492941235f89c72d260591819d9
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Wed Apr 24 23:38:25 2019 +0200

    bin: add commandline interactions for setting/querying metadata

    In collection view mode, the command foo=bar sets the key on the
    file foo to
    bar, while foo@bar sets the attribute, which is associated with the
    entry in
    the folder (which follows the file - but multiple entries can share
    a file).

    The command info which in editing mode provides information about
    the selected
    node now prints out the meta data associated with the selected file.

 bin/ui-core.c | 320
 +++++++++++++++++++++++++++++++++++++++++++++++++++-------
 bin/ui.h      |  14 ++-
 2 files changed, 291 insertions(+), 43 deletions(-)

commit 407c41d367f9f3ea6a7e8121c3c62d351207e24f
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Wed Apr 24 14:36:28 2019 +0200

    bin: store chain of edited project in .gegl folder

    No longer keep side-car .gegl file in the folder, this means that
    edits
    now belong to the image by default.

 bin/lua/init.lua    |   2 +-
 bin/ui-collection.c |   2 +-
 bin/ui-core.c       | 103
 +++++++++++++++++++++++++++-------------------------
 bin/ui-viewer.c     |   4 +-
 bin/ui.h            |  16 ++++----
 5 files changed, 67 insertions(+), 60 deletions(-)

commit d577d44e1233f78131e7fffb85f7ab8d6bc65de7
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Tue Apr 23 16:52:24 2019 +0200

    bin: implement collection reordering

    The subset of codepaths that are verified are the only ones currently
    working for the swaping API, but this is enough to bootstrap
    interactive
    reordering.

 bin/ui-collection.c | 40 ++++++++++++++++++++++
 bin/ui-core.c       | 98
 +++++++++++++++++++++++++++++++++++++++++++++++------
 bin/ui.h            |  2 ++
 3 files changed, 130 insertions(+), 10 deletions(-)

commit a50d771c8739295b9873f30b634443c62c25a162
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Tue Apr 23 00:53:16 2019 +0200

    bin: allow editing commandline while scrollback is visible

 bin/ui-core.c | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

commit 38a655c346754e41ecaa49478cc521c756986126
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Sat Apr 20 18:49:02 2019 +0200

    bin: refactor towards being able to to viewer thumbbar in lua

 bin/lua/viewer.lua | 18 +++++++++++++-----
 bin/ui-core.c      |  1 -
 bin/ui.h           |  2 +-
 3 files changed, 14 insertions(+), 7 deletions(-)

commit eee8ac263f0d6f9de92f825f48325c3a75ba5bbf
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Tue Apr 16 23:44:46 2019 +0200

    NEWS: update

 docs/NEWS.txt | 72
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 72 insertions(+)

commit 4865f13719faee7fd2e4d154105bd1d8c3de927b
Author: Ell <ell_se@yahoo.com>
Date:   Tue Apr 16 12:21:48 2019 -0400

    Issue #152 - Program crash after trying to invert colors in selection

    In gegl:invert[-gamma], fix the number of processed samples when
    using the generic code-path for 8-bpc buffers, fixing a buffer
    overflow.

 operations/common/invert-common.h | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)

commit 737b6484744ed3badf8daa354c5a06fab95467c8
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Tue Apr 16 02:48:07 2019 +0200

    bin: always scroll to focus element in cmd_parent

 bin/ui-core.c | 47 +++++++++++++++++++++++++++++++++++++----------
 1 file changed, 37 insertions(+), 10 deletions(-)

commit d71097d4af59c71e738c72a4f7abd5dcff27d8d7
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Mon Apr 15 04:19:33 2019 +0200

    buffer: when building against glibc, issue malloc_trim after
    finalizing GeglBuffers

    This will sometimes permit returning memory to the operating
    system when
    just malloc/free calls alone do not do so. GeglBuffers are likely
    the largest
    composite objects in a process with GEGL - thus here, or even
    periodically
    in some other way is a way to force glibc's malloc/free to give
    up pages.

 gegl/buffer/gegl-buffer.c | 9 +++++++++
 1 file changed, 9 insertions(+)

commit ed48dc989d78bfa39ce150a1c4d657df3d1765ca
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Sun Apr 14 23:32:28 2019 +0200

    buffer: keep tile-cache queue around if tiles have been leaked

    This permits succesful too-late freeing of tiles when a garbage
    collector
    finally disposes of tiles after gegl_exit() and internal leak
    sanity checks
    have been run. Thus avoiding the

    GLib-WARNING **: 23:25:34.774: corrupted double-linked list detected

    reported as part of issue #142.

 gegl/buffer/gegl-tile-handler-cache.c | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

commit 718298f3f7891de3caf78f2245fcdad4d873ac6b
Author: Massimo Valentini <mvalentini335@gmail.com>
Date:   Sun Apr 14 21:33:27 2019 +0200

    issue #150 - High pass filter on GIMP 2.10.10 behaves differently
    than in Gimp 2.10.8

    OpenCL version only processes 3+1 components and chooses
    un/premultiplied using GEGL_PROPERTIES()->user_data !=/== NULL

 operations/common/opacity.c | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

commit 4b5abc7413f42029e68c06f7025febbc5fff5610
Author: Massimo Valentini <mvalentini335@gmail.com>
Date:   Sat Apr 13 09:41:13 2019 +0200

    issue #147: "Select" -> "Invert" broken when OpenCL is enabled

    set a compatible format when using OpenCL

 operations/common/invert-common.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c598fe42115358fe8c8bd5bb04b492fc82465bbd
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Thu Apr 11 00:29:38 2019 +0200

    lua: implement interactive rating stars in viewer mode

 bin/lua/viewer.lua | 38 ++++++++++++++++++++++++++++++++++----
 bin/ui-core.c      |  1 +
 2 files changed, 35 insertions(+), 4 deletions(-)

commit 8df6f3986068af1be1247df644bc951a14a29877
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Wed Apr 10 23:24:51 2019 +0200

    bin: add order command, which changes sort order of collection

 bin/lua/init.lua    |  11 ++++
 bin/ui-collection.c |  18 +++++-
 bin/ui-core.c       | 159
 +++++++++++++++++++++++++++++++++++++++++++++-------
 bin/ui.h            |  13 +++++
 4 files changed, 180 insertions(+), 21 deletions(-)

commit 5de4a148beb4fd64328c04d2c7c529c0a3fcfc04
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Wed Apr 10 19:09:54 2019 +0200

    tests: update tests for change to cubic sampler

    Removed one test - more tests should be replaced with hash comparisons
    to reduce the binary bloat caused by using PNG reference images.

 tests/compositions/Makefile.am                |   1 -
 tests/compositions/apply-lens2.xml            |  15 ---------------
 tests/compositions/reference/apply-lens.png   | Bin 1091577 ->
 1113229 bytes
 tests/compositions/reference/apply-lens2.png  | Bin 933426 -> 0 bytes
 tests/compositions/reference/apply-lens3.png  | Bin 1138856 -> 599210
 bytes
 tests/compositions/reference/simple-scale.png | Bin 758 -> 463 bytes
 6 files changed, 16 deletions(-)

commit bdd2bb8fa4fdb81a783884e83c01400c3566a0ee
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Thu Apr 4 16:31:13 2019 +0200

    buffer: swap cubic and catmull rom coefficients

    Fixing Issue #145, comments in the code indicate that the code has
    been left in
    an experimental state - and even then the divergence from what
    the coefficients
    are used for which named cubic variant and what they should be
    are documented.

    This patch removes the extra needed comments about things are not
    right, making
    the cubic sampler as sharp as is commonly expected - while keeping
    the smoother
    cubic variant catmull-rom optional (inaccesible in GIMP - but other
    samplers
    available probably fill the same niche)

 gegl/buffer/gegl-sampler-cubic.c | 18 ++++++------------
 1 file changed, 6 insertions(+), 12 deletions(-)

commit 6da824cad4b565faa6c4131afa4a46d810bfe67e
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Wed Apr 10 05:58:46 2019 +0200

    bin: add star command

    This command uses the newly added meta data API to give an integer
    score to an
    image by pressing the corresponding digit in viewer and collection
    view.

    Later sorting/filtering based on stars and more meta-data will
    be added.

 bin/lua/init.lua    | 117
 ++++++++++++++++++++++++++++++++++++++++++++++++----
 bin/lua/viewer.lua  |  22 ++++++++++
 bin/ui-collection.c |  33 ++++++++++++---
 bin/ui-core.c       |  58 ++++++++++++++++++++------
 bin/ui-viewer.c     |   8 +++-
 bin/ui.h            |   4 +-
 6 files changed, 213 insertions(+), 29 deletions(-)

commit b4d2fa11a7a0d470b54e4ff88fdc34074ed31a54
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Sat Apr 6 05:35:36 2019 +0200

    bin: add support for custom collection order and per file key/values

    Add a filesystem based key/value store, and custom folder ordering
    that exist
    in the per folder .gegl subfolder, which already contains the
    thumbnails.

    For now there is no UI that permits creating a custom order,
    but creating
    a file .gegl/index and having the filenames in the desired order, with
    possible duplicates - will make gegl use the order provided in
    the file.

 bin/lua/init.lua    |   2 +
 bin/ui-collection.c |  36 ++-
 bin/ui-core.c       | 809
 ++++++++++++++++++++++++++++++++++++++++++++++++++--
 bin/ui-viewer.c     |  66 +++--
 bin/ui.h            | 148 ++++++++--
 5 files changed, 987 insertions(+), 74 deletions(-)

commit d05eb01170728f45f561ca937708a293e29e02d9
Author: Alex Samorukov <samm@net-art.cz>
Date:   Mon Apr 8 11:15:49 2019 +0000

    Add forgotten defines

 gegl/gegl-config.c | 6 ++++++
 1 file changed, 6 insertions(+)

commit ac331b5c0e3d940b64bb811b0f54e86c7d312917
Author: Alex Samorukov <samm@net-art.cz>
Date:   Mon Apr 8 07:19:15 2019 +0000

    Fix osx build by adding available/total memory stat

 gegl/gegl-config.c | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

commit c73951b0f2074c6ba57b8778cb238f43c1798555
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Sat Apr 6 04:27:27 2019 +0200

    bin: change location of thumbnails

    Move the location of thumbnails to be in a .gegl subdir of the
    directory,
    this permits moving this per-files in foler cache data with the files
    in the folder in archives or when copying folers.

 bin/ui-collection.c | 14 +++-----
 bin/ui-core.c       | 92
 +++++++++++++++++++++++++++--------------------------
 bin/ui.h            | 13 ++++++++
 3 files changed, 65 insertions(+), 54 deletions(-)

commit 929a7fdc271caa94577c582c9697eeb80d25f453
Author: Edward E <develinthedetail@gmail.com>
Date:   Sat Mar 30 22:04:50 2019 -0500

    configure.ac: require libavutil for Windows build

 configure.ac | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit fe756be6f0c776a45201a61f67d3e5e42f6398de
Author: Edward E <develinthedetail@gmail.com>
Date:   Fri Mar 29 12:07:00 2019 -0500

    gegl-config: remove extra #ifdef

 gegl/gegl-config.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 6950dda46c18f530609271f82f055c9f246ae5f4
Author: Edward E <develinthedetail@gmail.com>
Date:   Thu Dec 27 06:10:32 2018 -0600

    gegl: guarantee G_OS_WIN32 is set up in platform dependent headers

    Two gegl headers test for G_OS_WIN32, so have them include a glib
    header
    proactively. Currently, in every case in gegl where these two are
    included, a glib header had already been included. However, this
    is not
    assured to be true later, given the possibility of code creep.

 gegl/buffer/gegl-buffer-formats.h | 1 +
 gegl/gegl-types-internal.h        | 1 +
 2 files changed, 2 insertions(+)

commit 22ced52dbc9d26a5e39625261a66bfbb46159ba0
Author: Edward E <develinthedetail@gmail.com>
Date:   Thu Dec 27 02:40:25 2018 -0600

    gegl-init, gegl-buffer: remove unused process.h

    These particular instances have been unneeded for years.

 gegl/buffer/gegl-buffer.c | 5 -----
 gegl/gegl-init.c          | 3 ---
 2 files changed, 8 deletions(-)

commit 239e85b4a3ae9fec556578bf9df7fe7cc1c3f541
Author: Edward E <develinthedetail@gmail.com>
Date:   Thu Dec 27 02:39:00 2018 -0600

    gegl-utils: remove duplicate #include

    introduced in 5d7d475bb709950f810fcc13886a3303bb45718f

 gegl/gegl-utils.c | 1 -
 1 file changed, 1 deletion(-)

commit 5ab8109bc27c3762f4a1c2385e5cdb86b266bc3f
Author: Jan Vesely <jano.vesely@gmail.com>
Date:   Sun Mar 24 13:58:37 2019 -0400

    gitlab-ci: Add a test job using opencl

    Allow opencl job to fail
    Signed-off-by: Jan Vesely <jano.vesely@gmail.com>

 .gitlab-ci.yml | 45 +++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 43 insertions(+), 2 deletions(-)

commit c4aab2e3bae6187ebcc61e568de43b4d97deca14
Author: Jan Vesely <jano.vesely@gmail.com>
Date:   Sun Mar 31 16:29:12 2019 -0400

    gegl-init: Override config value when OpenCL is requested via env var.

    Signed-off-by: Jan Vesely <jano.vesely@gmail.com>

 gegl/gegl-init.c | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

commit 61166ba2e582dddf81821f705e90cd98886d4f47
Author: Nuno Ferreira <nuno360@gmail.com>
Date:   Thu Feb 28 06:33:51 2019 +0000

    gegl: make function header style more consistent

    fixed style of function headers in the gegl/gegl folder

 gegl/gegl-apply.c                 | 20 ++++++------
 gegl/gegl-gio.c                   | 14 +++++++--
 gegl/gegl-init.c                  | 15 ++++++---
 gegl/gegl-instrument.c            | 25 ++++++++++-----
 gegl/gegl-introspection-support.c |  9 ++++--
 gegl/gegl-matrix.c                |  3 +-
 gegl/gegl-serialize.c             |  7 +++--
 gegl/gegl-utils.c                 | 30 ++++++++++++------
 gegl/gegl-xml.c                   | 66
 ++++++++++++++++++++++-----------------
 9 files changed, 120 insertions(+), 69 deletions(-)

commit 347b08fed958ece2a497147c54d8838f534d39cc
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Thu Apr 4 04:10:56 2019 +0200

    lua: fix cairo save/restore balance

    A missing cr:restore() was causing the client side drawn titlebar of
    gtk+ to be offset under wayland.

 bin/lua/viewer.lua | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

commit 00c59c5cf7d71d22282a06e645c01b5e8808729b
Author: Marco Ciampa <ciampix@posteo.net>
Date:   Mon Apr 1 13:12:43 2019 +0200

    Updated Italian translation

 po/it.po | 64
 ++++++++++++++++++++++++++++++++++++++++++++++------------------
 1 file changed, 46 insertions(+), 18 deletions(-)

commit 57582a25eb89e37806526b883566e3666e144e8d
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Mon Apr 1 00:30:12 2019 +0200

    tools: include string.h for strlen

 tools/exp_combine.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1ab7a4561450c85fe3feef04491c19647718739f
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Fri Mar 29 01:56:07 2019 +0100

    bin: add instant apply editor of lua scripts

    This uses the most basic form of enabling editing available though
    micro-raptor
    gui. Currently barely usable, needs replacement with in-place
    composited external text editor or improvements to mrg default
    text-editings cursor navigation, and more.

    We now always write the .lui back to disk when changing the loaded
    path,
    regardless of whether it has changed - this lets the lui files
    have instant
    apply like image editing does.

 bin/ui-core.c | 90
 +++++++++++++++++++++++++++++++++++++++++++++++++++++------
 1 file changed, 82 insertions(+), 8 deletions(-)

commit b3ff0df080d133bbdb394c3db40d4f9d2980a8a6
Author: Ell <ell_se@yahoo.com>
Date:   Thu Mar 28 17:05:18 2019 -0400

    Issue #132 - gegl-0.4.14 Windows compilation fails

    Test for G_OS_WIN32 *after* including glib headers.

 gegl/gegl-config.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit ad8aa8f1d2f95d6720e9ad6d7977882b717dc8f4
Author: Ell <ell_se@yahoo.com>
Date:   Thu Mar 28 16:43:23 2019 -0400

    cache: make a GeglOperationFilter

    Since gegl:cache can't actually be used as part of point-op
    pipelines, as it doesn't do in-place processing, let's just make it
    a GeglOperationFilter, like the rest of the core/ ops, to avoid
    redundancy, and make stuff more consistent.

 operations/core/cache.c | 46
 +++++++++-------------------------------------
 1 file changed, 9 insertions(+), 37 deletions(-)

commit 1d0a56b9dd83a100945fb5062dd6cb56a9f04018
Author: Ell <ell_se@yahoo.com>
Date:   Thu Mar 28 16:41:58 2019 -0400

    operation: don't do in-place processing for cached nodes

    ... since their result needs to be written to the cache.

 gegl/operation/gegl-operation-context.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit d9c08c666fde7e380508f0b6e8b1115e5e5905f1
Author: Ell <ell_se@yahoo.com>
Date:   Thu Mar 28 13:59:55 2019 -0400

    cache: add fast GeglOperationFilter::process() implementation

    In gegl:cache, override GeglOperationFilter::process() and simply
    gegl_buffer_copy() input -> output so that tiles can be COWed,
    instead of using memcpy() in GeglOperationPointFilter::process().
    Keep the latter for the sake of wip/pipeline.

 operations/core/cache.c | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

commit 8699b0665803ee2a1b7430ab2cb573a7d6cbf0f7
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Fri Mar 22 22:27:23 2019 +0100

    bin: add configuration flag nearest_neighbor for high performance
    scaled blits

 bin/lua/init.lua | 1 +
 bin/mrg-gegl.c   | 7 ++++---
 bin/mrg-gegl.h   | 2 ++
 bin/ui-core.c    | 3 +++
 bin/ui.h         | 3 +++
 5 files changed, 13 insertions(+), 3 deletions(-)

commit 5b2ad375e1ea0a924c7af96b00b4de7ee2978502
Author: Martin Srebotnjak <miles@filmsi.net>
Date:   Fri Mar 22 21:27:29 2019 +0100

    Updated Slovenian translation

 po/sl.po | 1497
 ++++++++++++++++++++++++++++++++++++++++----------------------
 1 file changed, 967 insertions(+), 530 deletions(-)

commit 6930afe68f56a41ec78a35d3d0979d5a0588e5c9
Author: Jehan <jehan@girinstud.io>
Date:   Thu Mar 21 17:18:58 2019 +0100

    operations: ff-save should not crash when failing to init audio or...

    ... video codec.
    I had a case with existing codecs, but simply the settings were not
    right, avcodec_open2() would return a negative value, and the whole
    program would crash. This is not right. We should gracefully
    return from
    the operation process failure.

 operations/external/ff-save.c | 73
 +++++++++++++++++++++++++------------------
 1 file changed, 43 insertions(+), 30 deletions(-)

commit 7cc237cf9012497f646a35a21419c43af0f4a831
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Fri Mar 22 02:38:43 2019 +0100

    lua: fix video playback position scrubbing

 bin/lua/viewer.lua | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6e1fd149ccd7e982aace8fc984ef2654d93fc0cf
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Fri Mar 22 02:35:44 2019 +0100

    bin: rework audio timing for video playback

    Relying on newly added mrg API mrg_pcm_audio_get_queued_length, after
    all UI and cairo drawing is complete for a frame, queue the related
    PCM
    data if this was a video-frame, then wait until 0.25 of the previous
    frames PCM data or less is queued before proceeding with
    flipping/displaying
    the current frame.

    Video playback works better with mipmap rendering even when no
    mipmap rendering
    is happening due to fewer buffer copies.

 bin/ui-core.c | 24 +++++++++++++++++-------
 1 file changed, 17 insertions(+), 7 deletions(-)

commit ac551c1fdc87aee9c0f03871d9b57fbe156bae9d
Author: Øyvind Kolås <pippin@gimp.org>
Date:   Tue Mar 19 01:54:24 2019 +0100

    ff-load: resolve some deprecation warnings

    Among them, no longer neccesary to call av_register_all,
    do not use resolve video_fcontext->filename deprecation
    and use codecpar rather than codec where appropriate.

 operations/external/ff-load.c | 34 ++++++++++++++--------------------
 1 file changed, 14 insertions(+), 20 deletions(-)

commit 0a1212a35ad6a0a60d11aebe5caa7ee689723352
Author: Marco Ciampa <ciampix@posteo.net>
Date:   Thu Mar 21 09:57:53 2019 +0100

    Updated Italian translation

 po/it.po | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 16f7b040a98aaca69f0d3bc80950e41e42e9841e
Author: Dimitris Spingos <dmtrs32@gmail.com>
Date:   Sun Mar 17 21:59:48 2019 +0200

    Updated Greek translation

 po/el.po | 1859
 +++++++++++++++++++++++++++++++++++++-------------------------
 1 file changed, 1101 insertions(+), 758 deletions(-)

commit 98b9e57f5587a1d16fd5cc03ab0bccbd652cb7bb
Author: Sveinn í Felli <sv1@fellsnet.is>
Date:   Thu Mar 14 08:53:57 2019 +0000

    Update Icelandic translation

 po/is.po | 133
 ++++++++++++++++++++++++++++++---------------------------------
 1 file changed, 63 insertions(+), 70 deletions(-)

commit ac1bfd14e57c3098be6368ed8d5b1f2af121fa6d
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Wed Mar 13 18:21:03 2019 +0100

    Update Polish translation

 po/pl.po | 83
 +++++++++++++++++++++++++++++++++++++++++-----------------------
 1 file changed, 53 insertions(+), 30 deletions(-)

commit bd118b7627c57c06d1bf13d4b64398b866ce1f35
Author: Sveinn í Felli <sv1@fellsnet.is>
Date:   Wed Mar 13 11:50:25 2019 +0000
