(pioenv) jlpoole@eos /usr/local/src/microreticulum/microReticulumTbeam $ pio run -d exercises/306_microReticulum_ble_file_transfer_oled -e jp_native
Processing jp_native (platform: native)
---------------------------------------------------------------------------------------------------------------------------------------
Library Manager: Installing symlink:///usr/local/src/microreticulum/microReticulum
Library Manager: microReticulum@0.3.1 has been installed!
Library Manager: Resolving dependencies...
Library Manager: Installing ArduinoJson @ ~7.4.2
Downloading  [####################################]  100%
Unpacking  [####################################]  100%
Library Manager: ArduinoJson@7.4.3 has been installed!
Library Manager: Installing MsgPack @ ~0.4.2
Library Manager: Warning! More than one package has been found by MsgPack @ ~0.4.2 requirements:
Library Manager:  - hideakitai/MsgPack@0.4.2
Library Manager:  - mbed-yihui/msgpack@0.0.0+sha.5237a514fdab
Library Manager: Please specify detailed REQUIREMENTS using package owner and version (shown above) to avoid name conflicts
Downloading  [####################################]  100%
Unpacking  [####################################]  100%
Library Manager: MsgPack@0.4.2 has been installed!
Library Manager: Resolving dependencies...
Library Manager: Installing hideakitai/ArxContainer @ >=0.6.0
Downloading  [####################################]  100%
Unpacking  [####################################]  100%
Library Manager: ArxContainer@0.7.0 has been installed!
Library Manager: Installing hideakitai/ArxTypeTraits @ *
Downloading  [####################################]  100%
Unpacking  [####################################]  100%
Library Manager: ArxTypeTraits@0.3.2 has been installed!
Library Manager: Installing hideakitai/DebugLog @ >=0.8.1
Downloading  [####################################]  100%
Unpacking  [####################################]  100%
Library Manager: DebugLog@0.8.4 has been installed!
Library Manager: Resolving dependencies...
Verbose mode can be enabled via `-v, --verbose` option
Embedded /usr/local/src/microreticulum/microReticulumTbeam/exercises/306_microReticulum_ble_file_transfer_oled/texts/little_boy_blue.txt (942 bytes) -> /usr/local/src/microreticulum/microReticulumTbeam/exercises/306_microReticulum_ble_file_transfer_oled/.pio/build/jp_native/generated/SelectedText.h
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ off
Found 8 compatible libraries
Scanning dependencies...
Dependency Graph
|-- ArduinoJson @ 7.4.3
|-- MsgPack @ 0.4.2
|-- Crypto @ 0.4.0+sha.da68972
|-- microStore @ 0.1.6+sha.4b73902
|-- microReticulum @ 0.3.1
Building in debug mode
Compiling .pio/build/jp_native/src/HostBluezBleInterface.o
Compiling .pio/build/jp_native/src/host_jp_main.o
Compiling .pio/build/jp_native/libcc8/Crypto/AES128.o
Compiling .pio/build/jp_native/libcc8/Crypto/AES192.o
Compiling .pio/build/jp_native/libcc8/Crypto/AES256.o
Compiling .pio/build/jp_native/libcc8/Crypto/AESCommon.o
Compiling .pio/build/jp_native/libcc8/Crypto/AESEsp32.o
Compiling .pio/build/jp_native/libcc8/Crypto/AuthenticatedCipher.o
Compiling .pio/build/jp_native/libcc8/Crypto/BLAKE2b.o
Compiling .pio/build/jp_native/libcc8/Crypto/BLAKE2s.o
Compiling .pio/build/jp_native/libcc8/Crypto/BigNumberUtil.o
Compiling .pio/build/jp_native/libcc8/Crypto/BlockCipher.o
Compiling .pio/build/jp_native/libcc8/Crypto/CTR.o
Compiling .pio/build/jp_native/libcc8/Crypto/ChaCha.o
Compiling .pio/build/jp_native/libcc8/Crypto/ChaChaPoly.o
Compiling .pio/build/jp_native/libcc8/Crypto/Cipher.o
Compiling .pio/build/jp_native/libcc8/Crypto/Crypto.o
Compiling .pio/build/jp_native/libcc8/Crypto/Curve25519.o
Compiling .pio/build/jp_native/libcc8/Crypto/EAX.o
Compiling .pio/build/jp_native/libcc8/Crypto/Ed25519.o
Compiling .pio/build/jp_native/libcc8/Crypto/GCM.o
Compiling .pio/build/jp_native/libcc8/Crypto/GF128.o
Compiling .pio/build/jp_native/libcc8/Crypto/GHASH.o
Compiling .pio/build/jp_native/libcc8/Crypto/HKDF.o
Compiling .pio/build/jp_native/libcc8/Crypto/Hash.o
Compiling .pio/build/jp_native/libcc8/Crypto/KeccakCore.o
Compiling .pio/build/jp_native/libcc8/Crypto/NoiseSource.o
Compiling .pio/build/jp_native/libcc8/Crypto/OMAC.o
Compiling .pio/build/jp_native/libcc8/Crypto/P521.o
Compiling .pio/build/jp_native/libcc8/Crypto/Poly1305.o
Compiling .pio/build/jp_native/libcc8/Crypto/RNG.o
Compiling .pio/build/jp_native/libcc8/Crypto/SHA224.o
Compiling .pio/build/jp_native/libcc8/Crypto/SHA256.o
.pio/libdeps/jp_native/Crypto/RNG.cpp:87:2: warning: #warning "no hardware random number source detected for this platform" [-Wcpp]
   87 | #warning "no hardware random number source detected for this platform"
      |  ^~~~~~~
Compiling .pio/build/jp_native/libcc8/Crypto/SHA3.o
Compiling .pio/build/jp_native/libcc8/Crypto/SHA384.o
Compiling .pio/build/jp_native/libcc8/Crypto/SHA512.o
Compiling .pio/build/jp_native/libcc8/Crypto/SHAKE.o
Compiling .pio/build/jp_native/libcc8/Crypto/XOF.o
Compiling .pio/build/jp_native/libcc8/Crypto/XTS.o
Compiling .pio/build/jp_native/libd98/microReticulum/Bytes.o
Compiling .pio/build/jp_native/libd98/microReticulum/Channel.o
Compiling .pio/build/jp_native/libd98/microReticulum/Cryptography/CBC.o
Compiling .pio/build/jp_native/libd98/microReticulum/Cryptography/Ed25519.o
Compiling .pio/build/jp_native/libd98/microReticulum/Cryptography/Fernet.o
Compiling .pio/build/jp_native/libd98/microReticulum/Cryptography/HKDF.o
Compiling .pio/build/jp_native/libd98/microReticulum/Cryptography/Hashes.o
Compiling .pio/build/jp_native/libd98/microReticulum/Cryptography/Token.o
Compiling .pio/build/jp_native/libd98/microReticulum/Cryptography/X25519.o
Compiling .pio/build/jp_native/libd98/microReticulum/Destination.o
Compiling .pio/build/jp_native/libd98/microReticulum/Identity.o
Compiling .pio/build/jp_native/libd98/microReticulum/Interface.o
Compiling .pio/build/jp_native/libd98/microReticulum/Link.o
Archiving .pio/build/jp_native/libcc8/libCrypto.a
Compiling .pio/build/jp_native/libd98/microReticulum/Log.o
Indexing .pio/build/jp_native/libcc8/libCrypto.a
Compiling .pio/build/jp_native/libd98/microReticulum/Packet.o
In file included from .pio/libdeps/jp_native/DebugLog/DebugLogRestoreState.h:4,
                 from .pio/libdeps/jp_native/DebugLog/DebugLog.h:54,
                 from .pio/libdeps/jp_native/MsgPack/MsgPack.h:5,
                 from /usr/local/src/microreticulum/microReticulum/src/Link.cpp:31:
.pio/libdeps/jp_native/DebugLog/DebugLogEnable.h:50:4: warning: #warning "Defaulting to a log level of: DEBUGLOG_DEFAULT_LOG_LEVEL_TRACE" [-Wcpp]
   50 |   #warning "Defaulting to a log level of: DEBUGLOG_DEFAULT_LOG_LEVEL_TRACE"
      |    ^~~~~~~
In file included from .pio/libdeps/jp_native/MsgPack/MsgPack.h:7:
.pio/libdeps/jp_native/DebugLog/DebugLogEnable.h:50:4: warning: #warning "Defaulting to a log level of: DEBUGLOG_DEFAULT_LOG_LEVEL_TRACE" [-Wcpp]
   50 |   #warning "Defaulting to a log level of: DEBUGLOG_DEFAULT_LOG_LEVEL_TRACE"
      |    ^~~~~~~
In file included from .pio/libdeps/jp_native/DebugLog/DebugLogRestoreState.h:4,
                 from .pio/libdeps/jp_native/MsgPack/MsgPack.h:19:
.pio/libdeps/jp_native/DebugLog/DebugLogEnable.h:50:4: warning: #warning "Defaulting to a log level of: DEBUGLOG_DEFAULT_LOG_LEVEL_TRACE" [-Wcpp]
   50 |   #warning "Defaulting to a log level of: DEBUGLOG_DEFAULT_LOG_LEVEL_TRACE"
      |    ^~~~~~~
In file included from src/HostBluezBleInterface.h:3,
                 from src/host_jp_main.cpp:8:
/usr/local/src/microreticulum/microReticulum/src/Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
In file included from src/HostBluezBleInterface.h:3,
                 from src/HostBluezBleInterface.cpp:1:
/usr/local/src/microreticulum/microReticulum/src/Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
In file included from /usr/local/src/microreticulum/microReticulum/src/Bytes.cpp:15:
/usr/local/src/microreticulum/microReticulum/src/Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
In file included from /usr/local/src/microreticulum/microReticulum/src/Cryptography/Ed25519.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Cryptography/Ed25519.cpp:15:
/usr/local/src/microreticulum/microReticulum/src/Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
In file included from /usr/local/src/microreticulum/microReticulum/src/Cryptography/Hashes.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Cryptography/Hashes.cpp:15:
/usr/local/src/microreticulum/microReticulum/src/Cryptography/../Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Cryptography/../Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
In file included from /usr/local/src/microreticulum/microReticulum/src/Cryptography/X25519.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Cryptography/X25519.cpp:15:
/usr/local/src/microreticulum/microReticulum/src/Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
In file included from /usr/local/src/microreticulum/microReticulum/src/Cryptography/HKDF.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Cryptography/HKDF.cpp:15:
/usr/local/src/microreticulum/microReticulum/src/Cryptography/../Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Cryptography/../Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
In file included from /usr/local/src/microreticulum/microReticulum/src/Cryptography/Random.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Cryptography/Fernet.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Cryptography/Fernet.cpp:15:
/usr/local/src/microreticulum/microReticulum/src/Cryptography/../Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Cryptography/../Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
In file included from /usr/local/src/microreticulum/microReticulum/src/Identity.h:18,
                 from /usr/local/src/microreticulum/microReticulum/src/Destination.h:20,
                 from /usr/local/src/microreticulum/microReticulum/src/Channel.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Channel.cpp:15:
/usr/local/src/microreticulum/microReticulum/src/Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
In file included from /usr/local/src/microreticulum/microReticulum/src/Cryptography/Random.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Cryptography/Token.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Cryptography/Token.cpp:15:
/usr/local/src/microreticulum/microReticulum/src/Cryptography/../Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Cryptography/../Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
In file included from /usr/local/src/microreticulum/microReticulum/src/Identity.h:18,
                 from /usr/local/src/microreticulum/microReticulum/src/Destination.h:20,
                 from /usr/local/src/microreticulum/microReticulum/src/Destination.cpp:15:
/usr/local/src/microreticulum/microReticulum/src/Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
In file included from /usr/local/src/microreticulum/microReticulum/src/Utilities/OS.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Log.cpp:17:
/usr/local/src/microreticulum/microReticulum/src/Utilities/../Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Utilities/../Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
In file included from /usr/local/src/microreticulum/microReticulum/src/Identity.h:18,
                 from /usr/local/src/microreticulum/microReticulum/src/Identity.cpp:15:
/usr/local/src/microreticulum/microReticulum/src/Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
In file included from /usr/local/src/microreticulum/microReticulum/src/Identity.h:18,
                 from /usr/local/src/microreticulum/microReticulum/src/Interface.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Interface.cpp:15:
/usr/local/src/microreticulum/microReticulum/src/Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
In file included from /usr/local/src/microreticulum/microReticulum/src/Identity.h:18,
                 from /usr/local/src/microreticulum/microReticulum/src/Destination.h:20,
                 from /usr/local/src/microreticulum/microReticulum/src/Link.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Link.cpp:15:
/usr/local/src/microreticulum/microReticulum/src/Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
Compiling .pio/build/jp_native/libd98/microReticulum/Persistence/DestinationEntry.o
Compiling .pio/build/jp_native/libd98/microReticulum/Resource.o
In file included from /usr/local/src/microreticulum/microReticulum/src/Identity.h:18,
                 from /usr/local/src/microreticulum/microReticulum/src/Destination.h:20,
                 from /usr/local/src/microreticulum/microReticulum/src/Link.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Packet.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Packet.cpp:15:
/usr/local/src/microreticulum/microReticulum/src/Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
In file included from .pio/libdeps/jp_native/microStore/include/microStore/FileSystem.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Utilities/OS.h:19:
.pio/libdeps/jp_native/microStore/include/microStore/File.h: In member function 'size_t microStore::File::read(uint8_t*, size_t)':
.pio/libdeps/jp_native/microStore/include/microStore/File.h:116:137: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  116 |         inline size_t read(uint8_t* buffer, size_t size) { assert(_impl); size_t read = _impl->read(buffer, size); if (read > 0 && read != -1) _crc = crc32(_crc, buffer, read); return read; }
      |                                                                                                                                    ~~~~~^~~~~
Compiling .pio/build/jp_native/libd98/microReticulum/Reticulum.o
Compiling .pio/build/jp_native/libd98/microReticulum/Transport.o
In file included from .pio/libdeps/jp_native/microStore/include/microStore/FileSystem.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Utilities/OS.h:19,
                 from /usr/local/src/microreticulum/microReticulum/src/Packet.h:23,
                 from /usr/local/src/microreticulum/microReticulum/src/Transport.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Reticulum.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Channel.cpp:17:
.pio/libdeps/jp_native/microStore/include/microStore/File.h: In member function 'size_t microStore::File::read(uint8_t*, size_t)':
.pio/libdeps/jp_native/microStore/include/microStore/File.h:116:137: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  116 |         inline size_t read(uint8_t* buffer, size_t size) { assert(_impl); size_t read = _impl->read(buffer, size); if (read > 0 && read != -1) _crc = crc32(_crc, buffer, read); return read; }
      |                                                                                                                                    ~~~~~^~~~~
In file included from .pio/libdeps/jp_native/microStore/include/microStore/FileSystem.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Utilities/OS.h:19,
                 from src/HostBluezBleInterface.cpp:3:
.pio/libdeps/jp_native/microStore/include/microStore/File.h: In member function 'size_t microStore::File::read(uint8_t*, size_t)':
.pio/libdeps/jp_native/microStore/include/microStore/File.h:116:137: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  116 |         inline size_t read(uint8_t* buffer, size_t size) { assert(_impl); size_t read = _impl->read(buffer, size); if (read > 0 && read != -1) _crc = crc32(_crc, buffer, read); return read; }
      |                                                                                                                                    ~~~~~^~~~~
In file included from /usr/local/src/microreticulum/microReticulum/src/LinkData.h:20,
                 from /usr/local/src/microreticulum/microReticulum/src/Link.cpp:17:
/usr/local/src/microreticulum/microReticulum/src/Resource.h: At global scope:
/usr/local/src/microreticulum/microReticulum/src/Resource.h:108:17: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
  108 |                 const Type::Resource::status status() const;
      |                 ^~~~~
/usr/local/src/microreticulum/microReticulum/src/Resource.h:109:17: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
  109 |                 const size_t size() const;
      |                 ^~~~~
/usr/local/src/microreticulum/microReticulum/src/Resource.h:110:17: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
  110 |                 const size_t total_size() const;
      |                 ^~~~~
In file included from .pio/libdeps/jp_native/microStore/include/microStore/FileSystem.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Utilities/OS.h:19,
                 from /usr/local/src/microreticulum/microReticulum/src/Packet.h:23,
                 from src/host_jp_main.cpp:18:
.pio/libdeps/jp_native/microStore/include/microStore/File.h: In member function 'size_t microStore::File::read(uint8_t*, size_t)':
.pio/libdeps/jp_native/microStore/include/microStore/File.h:116:137: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  116 |         inline size_t read(uint8_t* buffer, size_t size) { assert(_impl); size_t read = _impl->read(buffer, size); if (read > 0 && read != -1) _crc = crc32(_crc, buffer, read); return read; }
      |                                                                                                                                    ~~~~~^~~~~
In file included from .pio/libdeps/jp_native/microStore/include/microStore/FileSystem.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Utilities/OS.h:19,
                 from /usr/local/src/microreticulum/microReticulum/src/Packet.h:23,
                 from /usr/local/src/microreticulum/microReticulum/src/Transport.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Destination.cpp:17:
.pio/libdeps/jp_native/microStore/include/microStore/File.h: In member function 'size_t microStore::File::read(uint8_t*, size_t)':
.pio/libdeps/jp_native/microStore/include/microStore/File.h:116:137: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  116 |         inline size_t read(uint8_t* buffer, size_t size) { assert(_impl); size_t read = _impl->read(buffer, size); if (read > 0 && read != -1) _crc = crc32(_crc, buffer, read); return read; }
      |                                                                                                                                    ~~~~~^~~~~
In file included from .pio/libdeps/jp_native/microStore/include/microStore/FileSystem.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Utilities/OS.h:19,
                 from /usr/local/src/microreticulum/microReticulum/src/Packet.h:23,
                 from /usr/local/src/microreticulum/microReticulum/src/Transport.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Reticulum.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Identity.cpp:17:
.pio/libdeps/jp_native/microStore/include/microStore/File.h: In member function 'size_t microStore::File::read(uint8_t*, size_t)':
.pio/libdeps/jp_native/microStore/include/microStore/File.h:116:137: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  116 |         inline size_t read(uint8_t* buffer, size_t size) { assert(_impl); size_t read = _impl->read(buffer, size); if (read > 0 && read != -1) _crc = crc32(_crc, buffer, read); return read; }
      |                                                                                                                                    ~~~~~^~~~~
Compiling .pio/build/jp_native/libd98/microReticulum/Utilities/Crc.o
In file included from .pio/libdeps/jp_native/microStore/include/microStore/FileSystem.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Utilities/OS.h:19,
                 from /usr/local/src/microreticulum/microReticulum/src/Packet.h:23,
                 from /usr/local/src/microreticulum/microReticulum/src/Transport.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Interface.cpp:18:
.pio/libdeps/jp_native/microStore/include/microStore/File.h: In member function 'size_t microStore::File::read(uint8_t*, size_t)':
.pio/libdeps/jp_native/microStore/include/microStore/File.h:116:137: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  116 |         inline size_t read(uint8_t* buffer, size_t size) { assert(_impl); size_t read = _impl->read(buffer, size); if (read > 0 && read != -1) _crc = crc32(_crc, buffer, read); return read; }
      |                                                                                                                                    ~~~~~^~~~~
In file included from .pio/libdeps/jp_native/microStore/include/microStore/FileSystem.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Utilities/OS.h:19,
                 from /usr/local/src/microreticulum/microReticulum/src/Packet.h:23,
                 from /usr/local/src/microreticulum/microReticulum/src/LinkData.h:23:
.pio/libdeps/jp_native/microStore/include/microStore/File.h: In member function 'size_t microStore::File::read(uint8_t*, size_t)':
.pio/libdeps/jp_native/microStore/include/microStore/File.h:116:137: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  116 |         inline size_t read(uint8_t* buffer, size_t size) { assert(_impl); size_t read = _impl->read(buffer, size); if (read > 0 && read != -1) _crc = crc32(_crc, buffer, read); return read; }
      |                                                                                                                                    ~~~~~^~~~~
Compiling .pio/build/jp_native/libd98/microReticulum/Utilities/Memory.o
In file included from .pio/libdeps/jp_native/microStore/include/microStore/FileSystem.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Utilities/OS.h:19,
                 from /usr/local/src/microreticulum/microReticulum/src/Packet.h:23:
.pio/libdeps/jp_native/microStore/include/microStore/File.h: In member function 'size_t microStore::File::read(uint8_t*, size_t)':
.pio/libdeps/jp_native/microStore/include/microStore/File.h:116:137: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  116 |         inline size_t read(uint8_t* buffer, size_t size) { assert(_impl); size_t read = _impl->read(buffer, size); if (read > 0 && read != -1) _crc = crc32(_crc, buffer, read); return read; }
      |                                                                                                                                    ~~~~~^~~~~
/usr/local/src/microreticulum/microReticulum/src/Identity.cpp: In static member function 'static bool RNS::Identity::save_known_destinations()':
/usr/local/src/microreticulum/microReticulum/src/Identity.cpp:305:24: warning: unused variable 'save_start' [-Wunused-variable]
  305 |                 double save_start = OS::time();
      |                        ^~~~~~~~~~
Compiling .pio/build/jp_native/libd98/microReticulum/Utilities/OS.o
Compiling .pio/build/jp_native/libd98/microReticulum/Utilities/Persistence.o
/usr/local/src/microreticulum/microReticulum/src/Packet.cpp: In member function 'std::string RNS::Packet::dumpString() const':
/usr/local/src/microreticulum/microReticulum/src/Packet.cpp:641:57: warning: ignoring return value of 'std::__cxx11::basic_string<_CharT, _Traits, _Allocator> std::operator+(__cxx11::basic_string<_CharT, _Traits, _Allocator>&&, const _CharT*) [with _CharT = char; _Traits = char_traits<char>; _Alloc = allocator<char>]', declared with attribute 'nodiscard' [-Wunused-result]
  641 |                 std::to_string(_object->_header_type) + "\n";
      |                                                         ^~~~
In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/14/include/g++-v14/string:54,
                 from /usr/local/src/microreticulum/microReticulum/src/Log.h:23,
                 from /usr/local/src/microreticulum/microReticulum/src/Identity.h:17:
/usr/lib/gcc/x86_64-pc-linux-gnu/14/include/g++-v14/bits/basic_string.h:3733:5: note: declared here
 3733 |     operator+(basic_string<_CharT, _Traits, _Alloc>&& __lhs,
      |     ^~~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Packet.cpp:662:60: warning: ignoring return value of 'std::__cxx11::basic_string<_CharT, _Traits, _Allocator> std::operator+(__cxx11::basic_string<_CharT, _Traits, _Allocator>&&, const _CharT*) [with _CharT = char; _Traits = char_traits<char>; _Alloc = allocator<char>]', declared with attribute 'nodiscard' [-Wunused-result]
  662 |                 std::to_string(_object->_transport_type) + "\n";
      |                                                            ^~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/14/include/g++-v14/bits/basic_string.h:3733:5: note: declared here
 3733 |     operator+(basic_string<_CharT, _Traits, _Alloc>&& __lhs,
      |     ^~~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Packet.cpp:680:62: warning: ignoring return value of 'std::__cxx11::basic_string<_CharT, _Traits, _Allocator> std::operator+(__cxx11::basic_string<_CharT, _Traits, _Allocator>&&, const _CharT*) [with _CharT = char; _Traits = char_traits<char>; _Alloc = allocator<char>]', declared with attribute 'nodiscard' [-Wunused-result]
  680 |                 std::to_string(_object->_destination_type) + "\n";
      |                                                              ^~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/14/include/g++-v14/bits/basic_string.h:3733:5: note: declared here
 3733 |     operator+(basic_string<_CharT, _Traits, _Alloc>&& __lhs,
      |     ^~~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Packet.cpp:707:57: warning: ignoring return value of 'std::__cxx11::basic_string<_CharT, _Traits, _Allocator> std::operator+(__cxx11::basic_string<_CharT, _Traits, _Allocator>&&, const _CharT*) [with _CharT = char; _Traits = char_traits<char>; _Alloc = allocator<char>]', declared with attribute 'nodiscard' [-Wunused-result]
  707 |                 std::to_string(_object->_packet_type) + "\n";
      |                                                         ^~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/14/include/g++-v14/bits/basic_string.h:3733:5: note: declared here
 3733 |     operator+(basic_string<_CharT, _Traits, _Alloc>&& __lhs,
      |     ^~~~~~~~
In file included from .pio/libdeps/jp_native/MsgPack/MsgPack/Packer.h:28,
                 from .pio/libdeps/jp_native/MsgPack/MsgPack.h:13:
.pio/libdeps/jp_native/MsgPack/MsgPack/Unpacker.h: At global scope:
.pio/libdeps/jp_native/MsgPack/MsgPack/Unpacker.h:110:26: warning: 'template<long unsigned int N> class ArduinoJson::V743HB42::StaticJsonDocument' is deprecated: use JsonDocument instead [-Wdeprecated-declarations]
  110 |         bool deserialize(StaticJsonDocument<N>& doc) {
      |                          ^~~~~~~~~~~~~~~~~~
In file included from .pio/libdeps/jp_native/ArduinoJson/src/ArduinoJson.hpp:65,
                 from .pio/libdeps/jp_native/ArduinoJson/src/ArduinoJson.h:9,
                 from /usr/local/src/microreticulum/microReticulum/src/Bytes.h:20:
.pio/libdeps/jp_native/ArduinoJson/src/ArduinoJson/compatibility.hpp:63:58: note: declared here
   63 | class ARDUINOJSON_DEPRECATED("use JsonDocument instead") StaticJsonDocument
      |                                                          ^~~~~~~~~~~~~~~~~~
.pio/libdeps/jp_native/MsgPack/MsgPack/Unpacker.h:113:50: warning: 'DynamicJsonDocument' is deprecated: use JsonDocument instead [-Wdeprecated-declarations]
  113 |         bool deserialize(DynamicJsonDocument& doc) {
      |                                                  ^
.pio/libdeps/jp_native/ArduinoJson/src/ArduinoJson/compatibility.hpp:125:58: note: declared here
  125 | class ARDUINOJSON_DEPRECATED("use JsonDocument instead") DynamicJsonDocument
      |                                                          ^~~~~~~~~~~~~~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Packet.cpp:784:53: warning: ignoring return value of 'std::__cxx11::basic_string<_CharT, _Traits, _Allocator> std::operator+(__cxx11::basic_string<_CharT, _Traits, _Allocator>&&, const _CharT*) [with _CharT = char; _Traits = char_traits<char>; _Alloc = allocator<char>]', declared with attribute 'nodiscard' [-Wunused-result]
  784 |                 std::to_string(_object->_context) + "\n";
      |                                                     ^~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/14/include/g++-v14/bits/basic_string.h:3733:5: note: declared here
 3733 |     operator+(basic_string<_CharT, _Traits, _Alloc>&& __lhs,
      |     ^~~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Packet.cpp:625:14: warning: variable 'encrypted' set but not used [-Wunused-but-set-variable]
  625 |         bool encrypted = true;
      |              ^~~~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Utilities/Memory.cpp: In static member function 'static void* RNS::Utilities::Memory::pool_malloc(pool_info&, size_t)':
/usr/local/src/microreticulum/microReticulum/src/Utilities/Memory.cpp:187:23: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct tlsf_stats'; use assignment or value-initialization instead [-Wclass-memaccess]
  187 |                 memset(&stats, 0, sizeof(stats));
      |                 ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Utilities/Memory.cpp:64:8: note: 'struct tlsf_stats' declared here
   64 | struct tlsf_stats {
      |        ^~~~~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Utilities/Memory.cpp: In static member function 'static void RNS::Utilities::Memory::dump_pool_stats(pool_info&, const char*)':
/usr/local/src/microreticulum/microReticulum/src/Utilities/Memory.cpp:234:15: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct tlsf_stats'; use assignment or value-initialization instead [-Wclass-memaccess]
  234 |         memset(&stats, 0, sizeof(stats));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Utilities/Memory.cpp:64:8: note: 'struct tlsf_stats' declared here
   64 | struct tlsf_stats {
      |        ^~~~~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Utilities/Memory.cpp: In static member function 'static void RNS::Utilities::Memory::dump_basic_pool_stats()':
/usr/local/src/microreticulum/microReticulum/src/Utilities/Memory.cpp:256:23: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct tlsf_stats'; use assignment or value-initialization instead [-Wclass-memaccess]
  256 |                 memset(&stats, 0, sizeof(stats));
      |                 ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Utilities/Memory.cpp:64:8: note: 'struct tlsf_stats' declared here
   64 | struct tlsf_stats {
      |        ^~~~~~~~~~
.pio/libdeps/jp_native/MsgPack/MsgPack/Packer.h:85:30: warning: 'template<long unsigned int N> class ArduinoJson::V743HB42::StaticJsonDocument' is deprecated: use JsonDocument instead [-Wdeprecated-declarations]
   85 |         void serialize(const StaticJsonDocument<N>& doc, const size_t num_max_string_type = 32) {
      |                              ^~~~~~~~~~~~~~~~~~
.pio/libdeps/jp_native/ArduinoJson/src/ArduinoJson/compatibility.hpp:63:58: note: declared here
   63 | class ARDUINOJSON_DEPRECATED("use JsonDocument instead") StaticJsonDocument
      |                                                          ^~~~~~~~~~~~~~~~~~
.pio/libdeps/jp_native/MsgPack/MsgPack/Packer.h:88:93: warning: 'DynamicJsonDocument' is deprecated: use JsonDocument instead [-Wdeprecated-declarations]
   88 |         void serialize(const DynamicJsonDocument& doc, const size_t num_max_string_type = 32) {
      |                                                                                             ^
.pio/libdeps/jp_native/ArduinoJson/src/ArduinoJson/compatibility.hpp:125:58: note: declared here
  125 | class ARDUINOJSON_DEPRECATED("use JsonDocument instead") DynamicJsonDocument
      |                                                          ^~~~~~~~~~~~~~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Utilities/Memory.cpp:269:23: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct tlsf_stats'; use assignment or value-initialization instead [-Wclass-memaccess]
  269 |                 memset(&stats, 0, sizeof(stats));
      |                 ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Utilities/Memory.cpp:64:8: note: 'struct tlsf_stats' declared here
   64 | struct tlsf_stats {
      |        ^~~~~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Utilities/Memory.cpp:282:23: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct tlsf_stats'; use assignment or value-initialization instead [-Wclass-memaccess]
  282 |                 memset(&stats, 0, sizeof(stats));
      |                 ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Utilities/Memory.cpp:64:8: note: 'struct tlsf_stats' declared here
   64 | struct tlsf_stats {
      |        ^~~~~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Link.cpp: In static member function 'static uint16_t RNS::Link::mtu_from_lr_packet(const RNS::Packet&)':
/usr/local/src/microreticulum/microReticulum/src/Link.cpp:146:93: warning: suggest parentheses around '+' in operand of '&' [-Wparentheses]
  146 |                 return (packet.data()[ECPUBSIZE] << 16) + (packet.data()[ECPUBSIZE+1] << 8) + (packet.data()[ECPUBSIZE+2]) & MTU_BYTEMASK;
/usr/local/src/microreticulum/microReticulum/src/Link.cpp: In static member function 'static uint16_t RNS::Link::mtu_from_lp_packet(const RNS::Packet&)':
/usr/local/src/microreticulum/microReticulum/src/Link.cpp:155:67: warning: suggest parentheses around '+' in operand of '&' [-Wparentheses]
  155 |                 return (mtu_bytes[0] << 16) + (mtu_bytes[1] << 8) + (mtu_bytes[2]) & MTU_BYTEMASK;
/usr/local/src/microreticulum/microReticulum/src/Link.cpp: In member function 'void RNS::Link::receive(const RNS::Packet&)':
/usr/local/src/microreticulum/microReticulum/src/Link.cpp:1266:52: warning: unused variable 'resource' [-Wunused-variable]
 1266 |                                         for (auto& resource : _object->_incoming_resources) {
      |                                                    ^~~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Link.cpp:1032:40: warning: enumeration value 'RESOURCE_ADV' not handled in switch [-Wswitch]
 1032 |                                 switch (packet.context()) {
      |                                        ^
/usr/local/src/microreticulum/microReticulum/src/Link.cpp:1032:40: warning: enumeration value 'RESOURCE_REQ' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Link.cpp:1032:40: warning: enumeration value 'RESOURCE_HMU' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Link.cpp:1032:40: warning: enumeration value 'RESOURCE_PRF' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Link.cpp:1032:40: warning: enumeration value 'RESOURCE_ICL' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Link.cpp:1032:40: warning: enumeration value 'RESOURCE_RCL' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Link.cpp:1032:40: warning: enumeration value 'CACHE_REQUEST' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Link.cpp:1032:40: warning: enumeration value 'PATH_RESPONSE' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Link.cpp:1032:40: warning: enumeration value 'COMMAND' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Link.cpp:1032:40: warning: enumeration value 'COMMAND_STATUS' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Link.cpp:1032:40: warning: enumeration value 'CHANNEL' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Link.cpp:1032:40: warning: enumeration value 'LINKPROOF' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Link.cpp:1032:40: warning: enumeration value 'LRPROOF' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Link.cpp:1031:38: warning: variable 'should_query' set but not used [-Wunused-but-set-variable]
 1031 |                                 bool should_query = false;
      |                                      ^~~~~~~~~~~~
Compiling .pio/build/jp_native/libd98/microReticulum/Utilities/tlsf.o
In file included from /usr/local/src/microreticulum/microReticulum/src/Identity.h:18,
                 from /usr/local/src/microreticulum/microReticulum/src/Interface.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Persistence/DestinationEntry.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Persistence/DestinationEntry.cpp:15:
/usr/local/src/microreticulum/microReticulum/src/Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
Compiling .pio/build/jp_native/libd98/microReticulum/main.o
In file included from /usr/local/src/microreticulum/microReticulum/src/Identity.h:18,
                 from /usr/local/src/microreticulum/microReticulum/src/Destination.h:20,
                 from /usr/local/src/microreticulum/microReticulum/src/Resource.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Resource.cpp:15:
/usr/local/src/microreticulum/microReticulum/src/Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
In file included from /usr/local/src/microreticulum/microReticulum/src/Identity.h:18,
                 from /usr/local/src/microreticulum/microReticulum/src/Destination.h:20,
                 from /usr/local/src/microreticulum/microReticulum/src/Link.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Packet.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Transport.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Transport.cpp:15:
/usr/local/src/microreticulum/microReticulum/src/Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
In file included from /usr/local/src/microreticulum/microReticulum/src/Identity.h:18,
                 from /usr/local/src/microreticulum/microReticulum/src/Destination.h:20,
                 from /usr/local/src/microreticulum/microReticulum/src/Link.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Packet.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Transport.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Reticulum.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Reticulum.cpp:15:
/usr/local/src/microreticulum/microReticulum/src/Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
In file included from .pio/libdeps/jp_native/microStore/include/microStore/FileSystem.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Utilities/OS.h:19,
                 from /usr/local/src/microreticulum/microReticulum/src/Packet.h:23,
                 from /usr/local/src/microreticulum/microReticulum/src/Persistence/DestinationEntry.h:18:
.pio/libdeps/jp_native/microStore/include/microStore/File.h: In member function 'size_t microStore::File::read(uint8_t*, size_t)':
.pio/libdeps/jp_native/microStore/include/microStore/File.h:116:137: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  116 |         inline size_t read(uint8_t* buffer, size_t size) { assert(_impl); size_t read = _impl->read(buffer, size); if (read > 0 && read != -1) _crc = crc32(_crc, buffer, read); return read; }
      |                                                                                                                                    ~~~~~^~~~~
/usr/local/src/microreticulum/microReticulum/src/Resource.h: At global scope:
/usr/local/src/microreticulum/microReticulum/src/Resource.h:108:17: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
  108 |                 const Type::Resource::status status() const;
      |                 ^~~~~
/usr/local/src/microreticulum/microReticulum/src/Resource.h:109:17: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
  109 |                 const size_t size() const;
      |                 ^~~~~
/usr/local/src/microreticulum/microReticulum/src/Resource.h:110:17: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
  110 |                 const size_t total_size() const;
      |                 ^~~~~
In file included from .pio/libdeps/jp_native/microStore/include/microStore/FileSystem.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Utilities/OS.h:19,
                 from /usr/local/src/microreticulum/microReticulum/src/Packet.h:23:
.pio/libdeps/jp_native/microStore/include/microStore/File.h: In member function 'size_t microStore::File::read(uint8_t*, size_t)':
.pio/libdeps/jp_native/microStore/include/microStore/File.h:116:137: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  116 |         inline size_t read(uint8_t* buffer, size_t size) { assert(_impl); size_t read = _impl->read(buffer, size); if (read > 0 && read != -1) _crc = crc32(_crc, buffer, read); return read; }
      |                                                                                                                                    ~~~~~^~~~~
In file included from .pio/libdeps/jp_native/microStore/include/microStore/FileSystem.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Utilities/OS.h:19,
                 from /usr/local/src/microreticulum/microReticulum/src/Packet.h:23,
                 from /usr/local/src/microreticulum/microReticulum/src/ResourceData.h:20,
                 from /usr/local/src/microreticulum/microReticulum/src/Resource.cpp:17:
.pio/libdeps/jp_native/microStore/include/microStore/File.h: In member function 'size_t microStore::File::read(uint8_t*, size_t)':
.pio/libdeps/jp_native/microStore/include/microStore/File.h:116:137: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  116 |         inline size_t read(uint8_t* buffer, size_t size) { assert(_impl); size_t read = _impl->read(buffer, size); if (read > 0 && read != -1) _crc = crc32(_crc, buffer, read); return read; }
      |                                                                                                                                    ~~~~~^~~~~
In file included from /usr/local/src/microreticulum/microReticulum/src/Utilities/OS.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Utilities/OS.cpp:15:
/usr/local/src/microreticulum/microReticulum/src/Utilities/../Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Utilities/../Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
In file included from .pio/libdeps/jp_native/microStore/include/microStore/FileSystem.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Utilities/OS.h:19,
                 from /usr/local/src/microreticulum/microReticulum/src/Packet.h:23:
.pio/libdeps/jp_native/microStore/include/microStore/File.h: In member function 'size_t microStore::File::read(uint8_t*, size_t)':
.pio/libdeps/jp_native/microStore/include/microStore/File.h:116:137: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  116 |         inline size_t read(uint8_t* buffer, size_t size) { assert(_impl); size_t read = _impl->read(buffer, size); if (read > 0 && read != -1) _crc = crc32(_crc, buffer, read); return read; }
      |                                                                                                                                    ~~~~~^~~~~
In file included from .pio/libdeps/jp_native/microStore/include/microStore/FileSystem.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Utilities/OS.h:19:
.pio/libdeps/jp_native/microStore/include/microStore/File.h: In member function 'size_t microStore::File::read(uint8_t*, size_t)':
.pio/libdeps/jp_native/microStore/include/microStore/File.h:116:137: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  116 |         inline size_t read(uint8_t* buffer, size_t size) { assert(_impl); size_t read = _impl->read(buffer, size); if (read > 0 && read != -1) _crc = crc32(_crc, buffer, read); return read; }
      |                                                                                                                                    ~~~~~^~~~~
/usr/local/src/microreticulum/microReticulum/src/Resource.cpp: At global scope:
/usr/local/src/microreticulum/microReticulum/src/Resource.cpp:120:1: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
  120 | const Type::Resource::status Resource::status() const {
      | ^~~~~
/usr/local/src/microreticulum/microReticulum/src/Resource.cpp:125:1: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
  125 | const size_t Resource::size() const {
      | ^~~~~
/usr/local/src/microreticulum/microReticulum/src/Resource.cpp:130:1: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
  130 | const size_t Resource::total_size() const {
      | ^~~~~
In file included from /usr/local/src/microreticulum/microReticulum/src/Identity.h:18,
                 from /usr/local/src/microreticulum/microReticulum/src/Destination.h:20,
                 from /usr/local/src/microreticulum/microReticulum/src/Link.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Packet.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Transport.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Utilities/Persistence.h:19,
                 from /usr/local/src/microreticulum/microReticulum/src/Utilities/Persistence.cpp:15:
/usr/local/src/microreticulum/microReticulum/src/Bytes.h: In member function 'const RNS::Bytes::Data& RNS::Bytes::collection() const':
/usr/local/src/microreticulum/microReticulum/src/Bytes.h:368:76: warning: returning reference to temporary [-Wreturn-local-addr]
  368 |                 inline const Data& collection() const { if (!_data) return Data(); return *_data.get(); }
      |                                                                            ^~~~~~
/usr/local/src/microreticulum/microReticulum/src/Reticulum.cpp: In member function 'void RNS::Reticulum::clean_caches()':
/usr/local/src/microreticulum/microReticulum/src/Reticulum.cpp:352:16: warning: unused variable 'now' [-Wunused-variable]
  352 |         double now = OS::time();
      |                ^~~
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp: In static member function 'static bool RNS::Transport::packet_filter(const RNS::Packet&)':
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:1271:16: warning: enumeration value 'CONTEXT_NONE' not handled in switch [-Wswitch]
 1271 |         switch (packet.context()) {
      |                ^
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:1271:16: warning: enumeration value 'RESOURCE_ADV' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:1271:16: warning: enumeration value 'RESOURCE_HMU' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:1271:16: warning: enumeration value 'RESOURCE_ICL' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:1271:16: warning: enumeration value 'RESOURCE_RCL' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:1271:16: warning: enumeration value 'REQUEST' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:1271:16: warning: enumeration value 'RESPONSE' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:1271:16: warning: enumeration value 'PATH_RESPONSE' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:1271:16: warning: enumeration value 'COMMAND' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:1271:16: warning: enumeration value 'COMMAND_STATUS' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:1271:16: warning: enumeration value 'LINKIDENTIFY' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:1271:16: warning: enumeration value 'LINKCLOSE' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:1271:16: warning: enumeration value 'LINKPROOF' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:1271:16: warning: enumeration value 'LRRTT' not handled in switch [-Wswitch]
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:1271:16: warning: enumeration value 'LRPROOF' not handled in switch [-Wswitch]
In file included from .pio/libdeps/jp_native/microStore/include/microStore/FileSystem.h:17,
                 from /usr/local/src/microreticulum/microReticulum/src/Utilities/OS.h:19,
                 from /usr/local/src/microreticulum/microReticulum/src/Packet.h:23:
.pio/libdeps/jp_native/microStore/include/microStore/File.h: In member function 'size_t microStore::File::read(uint8_t*, size_t)':
.pio/libdeps/jp_native/microStore/include/microStore/File.h:116:137: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  116 |         inline size_t read(uint8_t* buffer, size_t size) { assert(_impl); size_t read = _impl->read(buffer, size); if (read > 0 && read != -1) _crc = crc32(_crc, buffer, read); return read; }
      |                                                                                                                                    ~~~~~^~~~~
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp: In static member function 'static void RNS::Transport::inbound(const RNS::Bytes&, const RNS::Interface&)':
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:2152:85: warning: unused variable 'announce_context' [-Wunused-variable]
 2152 |                                                         Type::Packet::context_types announce_context = Type::Packet::CONTEXT_NONE;
      |                                                                                     ^~~~~~~~~~~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp: In static member function 'static bool RNS::Transport::clear_cached_packet(const RNS::Bytes&)':
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:2843:22: warning: unused variable 'success' [-Wunused-variable]
 2843 |                 bool success = RNS::Utilities::OS::remove_file(packet_cache_path);
      |                      ^~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp: In static member function 'static void RNS::Transport::path_request(const RNS::Bytes&, bool, const RNS::Interface&, const RNS::Bytes&, const RNS::Bytes&)':
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:3297:30: warning: unused variable 'next_hop' [-Wunused-variable]
 3297 |                 const Bytes& next_hop = destination_entry._received_from;
      |                              ^~~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:3260:14: warning: variable 'destination_exists_on_local_client' set but not used [-Wunused-but-set-variable]
 3260 |         bool destination_exists_on_local_client = false;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/local/src/microreticulum/microReticulum/src/Persistence/DestinationEntry.h:23,
                 from /usr/local/src/microreticulum/microReticulum/src/Transport.h:21:
.pio/libdeps/jp_native/microStore/include/microStore/FileStore.h: In instantiation of 'microStore::BasicFileStore<Allocator>::BasicFileStore(const Allocator&, uint32_t, uint8_t) [with Allocator = RNS::Utilities::Memory::ContainerAllocator<unsigned char>; uint32_t = unsigned int; uint8_t = unsigned char]':
.pio/libdeps/jp_native/microStore/include/microStore/FileStore.h:125:181:   required from 'microStore::BasicFileStore<Allocator>::BasicFileStore(uint32_t, uint8_t) [with Allocator = RNS::Utilities::Memory::ContainerAllocator<unsigned char>; uint32_t = unsigned int; uint8_t = unsigned char]'
  125 |         BasicFileStore(uint32_t segment_size = USTORE_DEFAULT_SEGMENT_SIZE, uint8_t segment_count = USTORE_DEFAULT_SEGMENT_COUNT) : BasicFileStore(Allocator{}, segment_size, segment_count) {}
      |                                                                                                                                                                                            ^
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:147:102:   required from here
  147 | /*static*/ PathStore Transport::_path_store(RNS_PATH_TABLE_SEGMENT_SIZE, RNS_PATH_TABLE_SEGMENT_COUNT);
      |                                                                                                      ^
.pio/libdeps/jp_native/microStore/include/microStore/FileStore.h:1451:19: warning: 'microStore::BasicFileStore<RNS::Utilities::Memory::ContainerAllocator<unsigned char> >::_alloc' will be initialized after [-Wreorder]
 1451 |         Allocator _alloc;
      |                   ^~~~~~
.pio/libdeps/jp_native/microStore/include/microStore/FileStore.h:1432:18: warning:   'uint32_t microStore::BasicFileStore<RNS::Utilities::Memory::ContainerAllocator<unsigned char> >::_segment_size' [-Wreorder]
 1432 |         uint32_t _segment_size = USTORE_DEFAULT_SEGMENT_SIZE;
      |                  ^~~~~~~~~~~~~
.pio/libdeps/jp_native/microStore/include/microStore/FileStore.h:126:18: warning:   when initialized here [-Wreorder]
  126 |         explicit BasicFileStore(const Allocator& alloc, uint32_t segment_size = USTORE_DEFAULT_SEGMENT_SIZE, uint8_t segment_count = USTORE_DEFAULT_SEGMENT_COUNT)
      |                  ^~~~~~~~~~~~~~
.pio/libdeps/jp_native/microStore/include/microStore/FileStore.h: In instantiation of 'const char* microStore::BasicFileStore<Allocator>::bin_str(const uint8_t*, size_t) [with Allocator = RNS::Utilities::Memory::ContainerAllocator<unsigned char>; uint8_t = unsigned char; size_t = long unsigned int]':
.pio/libdeps/jp_native/microStore/include/microStore/FileStore.h:327:61:   required from 'bool microStore::BasicFileStore<Allocator>::get(const uint8_t*, uint8_t, uint8_t*, uint16_t*) [with Allocator = RNS::Utilities::Memory::ContainerAllocator<unsigned char>; uint8_t = unsigned char; uint16_t = short unsigned int]'
  327 | printf("[ustore] get: fetching key %s with data size %u\n", bin_str(key, key_len), *size);
      |                                                             ^~~~~~~
.pio/libdeps/jp_native/microStore/include/microStore/FileStore.h:418:11:   required from 'bool microStore::BasicFileStore<Allocator>::get(const std::vector<unsigned char>&, std::vector<unsigned char>&) [with Allocator = RNS::Utilities::Memory::ContainerAllocator<unsigned char>]'
  418 |                 if (!get(key.data(), (uint8_t)key.size(), out.data(), &size)) {
      |                      ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/jp_native/microStore/include/microStore/TypedStore.h:52:23:   required from 'bool microStore::TypedStore<Key, Value, Store, KeyCodec, ValueCodec>::get(const Key&, Value&) [with Key = RNS::Bytes; Value = RNS::Persistence::DestinationEntry; Store = microStore::BasicFileStore<RNS::Utilities::Memory::ContainerAllocator<unsigned char> >; KeyCodec = microStore::Codec<RNS::Bytes>; ValueCodec = microStore::Codec<RNS::Persistence::DestinationEntry>]'
   52 |         if (!store.get(k, raw)) return false;
      |              ~~~~~~~~~^~~~~~~~
/usr/local/src/microreticulum/microReticulum/src/Transport.cpp:856:21:   required from here
  856 |         _new_path_table.get(packet.destination_hash(), destination_entry);
      |         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/jp_native/microStore/include/microStore/FileStore.h:1016:35: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1016 |                 for (int i = 0; i < len && i < USTORE_MAX_VALUE_LEN; ++i) {
      |                                 ~~^~~~~
Archiving .pio/build/jp_native/libd98/libmicroReticulum.a
Indexing .pio/build/jp_native/libd98/libmicroReticulum.a
Linking .pio/build/jp_native/program
==================================================== [SUCCESS] Took 24.24 seconds ====================================================

Environment    Status    Duration
-------------  --------  ------------
jp_native      SUCCESS   00:00:24.240
===================================================== 1 succeeded in 00:00:24.240 =====================================================

***************************************************************************************************************************************
We found 13.44MB of unnecessary PlatformIO system data (temporary files, unnecessary packages, etc.).
Use `pio system prune --dry-run` to list them or `pio system prune` to save disk space.
(pioenv) jlpoole@eos /usr/local/src/microreticulum/microReticulumTbeam $ exercises/306_microReticulum_ble_file_transfer_oled/.pio/build/jp_native/program
Exercise 306 jp native BLE file transfer console
Node=Node-JP-CLIENT
Selected file=little_boy_blue.txt bytes=942 chunk=32 interval_ms=500 repeat_rest_ms=10000
[ustore] Initializing PosixFileSystem
[ustore] WARNING: FlashFSFileSystem check failed, reformatting!
BLE linux-central: could not power adapter: GDBus.Error:org.bluez.Error.Failed: Failed
Local SINGLE destination: f16c76446663db34420ad557e068964b
microReticulum ready; OLED skipped on host native build
BLE linux-central waiting for peer
BLE linux-central waiting for peer
BLE linux-central waiting for peer
