Hey, I am new to this forum
Currently, I am evaluating libraries to decode standard image formats such as (animated) GIF, (animated) PNG and JPEG on limited device I am working on. I was previously involved in firmware development at Pebble (the Smartwatch) where we modified uPNG (https://github.com/elanthis/upng) to support APNG – unfortunately, this work was never open-sourced.
uGFX looks like a promising candidate, it's structure is well designed and there was no problem integrating its features of gdispImage into the larger system by writing adapter functions around GFILE and GDisplay.
During this process, I was stumbling upon several smaller and larger limitations. Most-noticably, the JPEG implementation didn't even compile without a change. As it's current practice for me and my team to drive any work with tests, I started to write automated tests to measure memory leaks, memory footprint, among actual functional correctness. Going forward, I will integrate this into a larger setup of ours that runs the decoders against a set of reference images (to test in bulk which features are insufficiently supported by comparing the decoded output against the output of a trusted decoder). If uGFX lives up to my expectations, I want to add support for alpha blending and APNG. But before I start, I wanted to see if I could avoid the risk of regressions and wanted to double-check:
I could not find any automated tests in the repository. Are there any unit-tests or otherwise automated (integration) tests I can run to verify that changes don't negatively affect the current behavior? Looking at the most-recent pull-requests, e.g. https://git.ugfx.io/uGFX/uGFX/pulls/22/files or https://git.ugfx.io/uGFX/uGFX/pulls/19 I cannot see how people manage their tests. In fact, I don't see any CI system being configured. If not, are there plans to do so?
Cheers,
Heiko