306 Commits

Author SHA1 Message Date
David Capello
b2e8cfc88f Merge branch 'main' into beta 2024-12-26 16:13:08 -03:00
Ryan Carsten Schmidt
71654e4b8e Add USE_SHARED_TINYEXIF option
See #4843

When this option is enabled, it requires a version of TinyEXIF newer
than 1.0.2 (which is the latest version that has been released),
specifically the change in cdcseacave/TinyEXIF@d75f772. The request to
release a new version of TinyEXIF is cdcseacave/TinyEXIF#18.
2024-12-18 09:43:15 -03:00
David Capello
731e982a53 Update benchmark library
1) In benchmark docs it says that a range-based loop is preferred
instead of KeepRunning() call:

  https://github.com/google/benchmark/blob/main/docs/user_guide.md#a-faster-keeprunning-loop

2) Now we call benchmark::Shutdown() in editor/view benchmarks exit
2024-12-05 20:13:37 -03:00
David Capello
41baef2627 Merge branch 'main' into beta 2024-11-19 16:00:11 -03:00
David Capello
1e5e06580d Update tinyexpr submodule 2024-11-07 17:16:03 -03:00
David Capello
a9d795b6df Merge branch 'main' into beta 2024-11-06 18:01:44 -03:00
David Capello
cd2bb45da3 Update json11 module 2024-11-05 15:17:33 -03:00
David Capello
c83dd16a43 Add TinyEXIF submodule 2024-10-28 18:40:23 -03:00
David Capello
5b88ea8532 Merge branch 'main' into beta 2024-10-11 15:16:32 -03:00
David Capello
a49bfe7f0a Lua was still being compiled as C (instead of C++) when generating Visual Studio solutions
We're compiling Lua as C++, but it seems that target_compile_options()
doesn't work for Visual Studio solutions (only for Ninja/makefiles).
The proper cmake solution to this issue is using
set_source_files_properties() to specify C++ as the language to use to
compile all Lua C files. This generates a valid Visual Studio solution.
2024-10-11 15:05:18 -03:00
David Capello
11883a51ff Disable Curl tests in compilation
This avoid creating a lot of testNNN projects inside the Visual Studio
solution generated by cmake.
2024-10-11 14:59:37 -03:00
David Capello
e700cce987 Merge branch 'main' into beta 2024-09-23 15:03:11 -03:00
David Capello
340883a2f5 Don't use webp/freetype/harfbuzz libs/includes if they're not found
Fixes #3589, #3628, #3831, #3874, #4547
2024-09-19 16:14:32 -03:00
David Capello
68d5262c48 Merge branch 'main' into beta 2024-08-09 21:06:57 -03:00
David Capello
32a099dcb6 Fix crashes with ill-formed fmt format strings (fix #2274)
There is a third-party translation (and can happen with our own
translations) that a fmt format string is ill-formed in the .ini file
of the translation (this could happen even if the en.ini file was
manually modified/broken by hand).

This patch includes a refactor of the Strings class so we can:

1) Static check at compile-time about the number of required arguments
   to format a string (no need to call fmt::format() directly with
   arbitrary number of args)
2) If a string is not valid for the fmt library, the runtime exception
   is caught and the default (English) string is returned.
2024-06-20 20:49:10 -03:00
David Capello
f27fb00acf Merge branch 'main' into beta 2024-06-14 20:26:25 -03:00
David Capello
533fb778f3 Reorganize compilation flags in CMakeLists.txt files
* Moved flags that only app-lib uses from add_definitions() to
  target_compile_definitions()
* Curl flags for TLS moved from third_party to root CMakeLists.txt (as
  they were defined in both places)
2024-06-12 17:43:43 -03:00
David Capello
801ea7ab6c Merge branch 'main' into beta 2024-06-11 16:03:25 -03:00
David Capello
7ce9f85b39 [lua] Fix bug comparing integers and floating points (fix #4516)
This bug was introduced in:

  db8284f5fc

We've removed the patch in our updated Lua v5.4.6 branch.
2024-06-03 11:39:16 -03:00
David Capello
6c9abed00f Merge branch 'main' into beta 2024-06-03 09:22:30 -03:00
Jakub Marcowski
0c9966df98 zlib: Update to 1.3.1 2024-05-29 10:33:26 -03:00
David Capello
5ddce57ab0 Merge branch 'main' into beta 2024-05-28 11:44:56 -03:00
David Capello
a1bd6f59aa Update cmark module 2024-05-08 14:52:39 -03:00
David Capello
30a4000c7c Disable tinyxml2 tests 2024-05-08 09:59:21 -03:00
David Capello
c904a78994 Merge branch 'main' into beta 2024-04-23 15:34:43 -03:00
David Capello
422d74a271 Replace jpeglib with libjpeg-turbo 2024-04-23 11:33:55 -03:00
David Capello
2065f9952a Disable iconv in libarchive 2024-04-23 09:47:21 -03:00
David Capello
d92d8c36ee Update freetype2 module 2024-04-23 09:47:10 -03:00
David Capello
e48e71ba28 Update to tinyxml2 2024-04-22 18:28:03 -03:00
David Capello
4d18200b0c [lua] Fix bugs handling errors inside app.transaction()
This errors was reported in #4431: The Tx wasn't rolled back correctly
in case of a Lua error inside the transaction because Lua needs to be
compiled as C++ to avoid longjmps and support stack
unwinding (i.e. calling destructors).
2024-04-22 11:13:10 -03:00
David Capello
d1ea2eaff1 Avoid warnings about redefining LUA_USE_WINDOWS 2024-04-21 22:43:24 -03:00
David Capello
d886e20f6c [lua] Secure io.popen() access (and enable popen on Linux) 2024-04-10 12:01:29 -03:00
David Capello
1a067bb223 Update json11 module 2024-02-28 08:30:23 -03:00
David Capello
3fb1692cdd Update submodules: laf, simpleini 2023-12-06 12:51:29 -03:00
David Capello
eeb5be9bed [lua] Fix crashes setting values out of bounds in JSON objects (fix #4166) 2023-11-30 18:40:02 -03:00
David Capello
7fb4bea265 Fix include directories for pixman target
This is required to include the pixman-version.h
2023-11-26 21:43:31 -03:00
David Capello
4da02d6770 Update libpng module (possible fix for #4037) 2023-11-23 09:50:19 -03:00
David Capello
6c5b27db81 Fix crash/hang using WebSocket in a previously disconnected socket
This can happen using Pribambase extension when we close Aseprite in
some strange way (e.g. killing the process), and the connection is not
closed correctly. It looks like the Blender addon is in an invalid
state and the data cannot be sent any more, but without this patch
Aseprite just hangs/crashes if we retry sending data, but with this
fix we can receive/show that an error happened sending data.

Related to: https://github.com/machinezone/IXWebSocket/pull/481
2023-08-29 12:39:12 -03:00
David Capello
aeeef8e255 Add suppor for doc::Image row stride size > width size
This patch solves several problems introducing the possibility to
specify a row stride bigger than the width (visible pixels) on each
image row. Useful in case that we want to align the initial pixel
address of each row (if DOC_USE_ALIGNED_PIXELS is defined).

This allows us to use some SIMD intrinsics (e.g. SSE2) for some image
functions in the future (right now implemented only in the new
is_same_image_simd_templ() for is_same_image()).

Anyway to avoid breaking some existing code, by default we'll still
keep the old behavior: row stride bytes = width bytes (so
DOC_USE_ALIGNED_PIXELS is undefined).
2023-08-07 15:27:39 -03:00
Zephyr Lykos
2f6655f57e Fix compilation on GCC13
See: https://gcc.gnu.org/gcc-13/porting_to.html#header-dep-changes
Bug: https://bugs.gentoo.org/865117
Bug: https://bugs.gentoo.org/895616

Signed-off-by: Zephyr Lykos <self@mochaa.ws>
2023-06-29 14:19:43 -03:00
David Capello
9a915355c5 Update fmt library to 10.0.0 2023-05-15 18:54:46 -03:00
David Capello
1c6e583c87 [lua] Add require() function (fix aseprite/api#10)
This is the first attempt to finally implement the require() function
on Lua. The main problem was how to solve conflicts between plugins
that use the same library name. Here we separate each plugin like in a
namespace, so require(name) inside a plugin will save the module in
_LOADED["pluginName/libraryName"] to avoid conflicts with other
libraryName from other plugins.
2023-04-18 19:41:01 -03:00
David Capello
d3aac6a1cd Add support for .qoi file format (fix #3121) 2023-01-05 14:23:01 -03:00
David Capello
88594bfa0e Merge branch 'main' into beta 2022-09-28 16:20:03 -03:00
David Capello
eadef19924 Update submodules 2022-09-16 12:30:13 -03:00
David Capello
a471ac8425 Update laf/clip/fmt submodules 2022-09-15 12:29:52 -03:00
David Capello
207c1c518c Merge branch 'main' into beta 2022-08-02 19:08:36 -03:00
David Capello
ccb32562ad Link with libwebp from Skia if possible 2022-08-02 18:56:34 -03:00
David Capello
54fa702296 Merge branch 'main' into beta 2022-06-01 10:25:02 -03:00
David Capello
c84210fa74 Don't use expat for libarchive (we don't need support for xar files) 2022-05-31 16:51:00 -03:00