Releases: bxparks/EpoxyDuino
Releases · bxparks/EpoxyDuino
support old v1.0 library format which can put files in the 'utility' subdirectory
1.5.0 - support C files; add ARDUINO=100 macro; add 'make run' target
- 1.5.0 (2022-12-08)
- Support compiling plain
*.c
files in libraries and in the application.- The C files are assumed to be written in C11.
- Define the
-D ARDUINO=100
macro.- Some 3rd party libraries test for
ARDUINO >= 100
to check if it's
being compiled under Arduino. - Many will compile under EpoxyDuino with this macro set.
- Some 3rd party libraries test for
- Add
make run
target which runs the binary generated bymake all
.- Useful in the
vim
editor where:make run
will invoke the quickfix
feature so that the editor will jump directly to the file and line
where the AUnit assertion failure occurred. - Update the example
for
loops to invokemake -C {dir} run
instead
of running the binary directly. Thevim
editor can parse the output
caused by the-C
flag, and automatically generate the correct path
to the files in the subdirectories.
- Useful in the
- Support compiling plain
1.4.0 - add Udp.h; implement stubs of configTime()
- 1.4.0 (2022-11-06)
- Add
memcmp_P()
by @dawidchyrzynski in
PR#71. - Add
Udp.h
interface supporting both the AVR and ESP8266 variants. - Provide actual stub implementations of
configTime()
for ESP8266.
- Add
v1.3.1 - allow mocking of digitalWrite(); add stubs for tone() and noTone()
v1.3.0 - add EXTRA_CPPFLAGS; add digitalReadValue(); add EpoxyDuino.h to suppress warnings; add EpoxyMockSTM32RTC
- 1.3.0 (2022-03-28)
- Add support for
EXTRA_CPPFLAGS
, similar toEXTRA_CXXFLAGS
. - Add
digitalReadValue(pin, val)
to control the return value of
digitalRead(pin)
.- May be useful for testing purposes.
- The
pin
parameter must satisfy0 <= pin < 32
, otherwise
digitalReadValue()
is a no-op. - See PR#61.
- Add an empty
EpoxyDuino.h
at the top level to stop warning messages from
the Arduino IDE.- Fixes Issue#62.
- Add libraries/EpoxyMockSTM32RTC
- A mock of the STM32RTC
library.
- A mock of the STM32RTC
- Add support for
v1.2.3 - add enableTerminalEcho(); upgrade to using pre-installed LittleFS library on ESP32>=2.0.0; add notes about using Valgrind
- 1.2.3 (2022-02-24)
- Rename
unixhostduino_main()
toepoxyduino_main()
, and make it
static. No need to expose it publicly. - Add
enableTerminalEcho()
function to enable terminal echoing.
See Enable Terminal Echo. - Update examples and EpoxyFS/README.md to be
compatible with newLittleFS
library in ESP32 >=2.0.0. - Add EpoxyFS/SeekBenchmark to
measure the performance loss of callingseek()
before aread()
.- Sometimes the client-code is simpler when reading multiple records
if it can callseek()
with an explicit offset before eachread()
. - The alternative would be calling
read()
multiple times sequentially
and using its internal cursor to advance automatically. - This benchmark shows that
seek()
causes significant performance
loss, even if theseek()
offset is identical to the internal cursor,
so might be expected to be optimized away.
- Sometimes the client-code is simpler when reading multiple records
- Add notes about Debugging tools and options
under a Unix environment, such as Valgrind.
- Rename
v1.2.2 - inherit overloaded Print::write() methods into StdioSerial class
- 1.2.2 (2022-02-02)
- Add a
using Print::write
statement inStdioSerial.h
to
pull in all other overloadedwrite()
methods from the parentPrint
class.
- Add a
v1.2.1 - add strncasecmp_P(); update README.md doc
- 1.2.1 (2022-01-10)
- Add
strncasecmp_P()
topgmspace.h
. See
PR#52. - Add Bugs and Limitations section in
README.md - Add comment in
github/workflows/aunit_tests.yml
that apull_request
event may be useful. Upgrade GitHub docker image to
Ubuntu 20.04.
- Add
v1.2.0 - simplify StdioSerial; revert Print::println() line terminator, and make it configurable
- 1.2.0 (2021-12-29)
- Simplify
StdioSerial
class, see
Issue#43.- Replace input ring buffer with a buffer of one character.
- Wire
StdioSerial::write(uint8_t)
directly to Posixwrite()
,
by-passing the<stdio.h>
buffer.flush()
is no longer necessary. - Thanks to @felias-fogg.
- Revert Breaking Change Made in v1.1.0 Revert 432e304, so that
Print::writeln()
writes\r\n
again by default.- Fixes Issue#45.
- Add
Print::setLineModeNormal()
andPrint::setLineModeUnix()
methods to control the line termination behavior. - See README.md#UnixLineMode for usage info.
- Simplify
v1.1.0 - add more Arduino.h functions and macros; add mock FastLED library
- 1.1.0 (2021-12-09)
- Add optional
DEPS
variable containing header files that the*.ino
depends on. - Potential Breaking Change
Print::println()
to print just a\n
instead of\r\n
.- This is more compatible on Unix where the line terminator is a single
\n
- This allows the text output of Arduino programs to be redirected to
a file or piped to another Unix program with the correct line
termination character. - This change may break some programs (usually unit tests) which print
to a
PrintStr
object (from my AceCommon
library), and then expect\r\n
instead of\n
.
- This is more compatible on Unix where the line terminator is a single
- Add optional