andrey
077ac9887b
refactor: rename PIP_NO_\* to PIP_HAS_\* with inverted logic
...
All feature flags now use positive naming (enabled by default):
- PIP_HAS_FILESYSTEM, PIP_HAS_THREADS, PIP_HAS_SOCKET
- PIP_HAS_PROCESS, PIP_HAS_DYNLIB, PIP_HAS_FFT, PIP_HAS_SERIAL
Preprocessor guards inverted:
- #ifndef PIP_NO_X → #ifdef PIP_HAS_X
- #ifdef PIP_NO_X → #ifndef PIP_HAS_X
CMake options default ON instead of OFF.
Platform blocks set flags OFF to disable features.
85 files transformed via Python script + 2 manual fixes.
2026-08-11 19:51:42 +03:00
andrey
1db0dfea43
Merge branch 'master' into pico_sdk
2026-08-11 18:21:50 +03:00
andrey
4d8b743075
refactor: migrate MICRO_PIP to fine-grained feature flags
...
Replace monolithic MICRO_PIP/PIP_MICRO with granular flags:
Feature flags (CMake options + platform auto-detection):
- PIP_NO_FILESYSTEM, PIP_NO_THREADS, PIP_NO_SOCKET
- PIP_NO_PROCESS, PIP_NO_DYNLIB, PIP_NO_FFT, PIP_NO_SERIAL
Embedded optimization flag:
- PIP_EMBEDDED (auto-set for Pico SDK and FreeRTOS)
Controls buffer sizes, time stubs, terminal fallback, init stubs
Platform blocks in CMakeLists.txt:
- Pico SDK: auto-disables FS, PROCESS, DYNLIB, FFT, SERIAL;
conditionally disables THREADS (no FreeRTOS) and SOCKET (no LWIP)
- FreeRTOS: auto-disables FS, PROCESS, DYNLIB, FFT, SERIAL;
conditionally disables SOCKET (no LWIP)
- Android: auto-disables PROCESS, DYNLIB, FFT
Updated 96 files across libs/, utils/, tests/, and CMakeLists.txt.
Builds verified for Linux (547 tests pass) and Pico SDK (100%).
Removed all MICRO_PIP and PIP_MICRO references (0 remaining).
2026-08-11 14:34:59 +03:00
andrey
96f0221051
fix: PIStreamPacker division by zero when max_packet_size is 0
2026-08-06 17:01:30 +03:00
peri4
f09fe03e0d
workaround hangs on PIBroadcast::stopRead
2025-03-06 16:26:38 +03:00
andrey
d90c3f0991
Merge branch 'master' into pisteampackerconfig
...
# Conflicts:
# libs/client_server/piclientserver_server.cpp
# libs/crypt/picrypt.cpp
# libs/io_utils/pistreampacker.cpp
# main.cpp
2024-11-16 14:34:34 +03:00
peri4
57f8c1313e
first release of translation facility
...
* runtime - loading and translating
* design-time - works with *.ts file (pip_tr utility)
* compile-time - CMake macro for compile *.ts
2024-11-05 13:49:00 +03:00
andrey
315966504e
fix picrypt and remove crypt_frag from PIStreamPacker
2024-10-20 18:03:25 +03:00
andrey
ac8efc9f88
need fix PIPackedTCP
2024-10-18 19:00:39 +03:00
andrey
92a0a9356c
refactoring PICrypt, add PIStreamPackerConfig, delete piclientserver_config
2024-10-18 18:59:20 +03:00
peri4
cd7e053fc5
version 4.2.0
...
move toStdFunction() to pibase.h
refactor PIParseHelper, now it much more abstract and useful
fix PIIODevice::createFromFullPath() when whitespaces at start or end are presence
PIStreamPacker add events for start and end packet receive
PIClientServer::ClientBase add virtual methods for start and end packet receive. also one can enable diagnostics with enableDiagnostics() method
PICout now call flush() on each end of output
add PIString::entries(const PIString & str)
2024-10-15 12:02:18 +03:00
peri4
97aad47a21
some fixes
2024-09-16 23:32:01 +03:00
peri4
7d02f710ea
add PIPackedTCP
2024-08-02 14:43:42 +03:00
peri4
1c7fc39b6c
version 4.0.0_alpha
...
in almost all methods removed timeouts in milliseconds, replaced to PISystemTime
PITimer rewrite, remove internal impl, now only thread implementation, API similar to PIThread
PITimer API no longer pass void*
PIPeer, PIConnection improved stability on reinit and exit
PISystemTime new methods
pisd now exit without hanging
2024-07-30 14:18:02 +03:00
peri4
b781bd5148
PIBroadcast fix
2024-07-10 16:56:40 +03:00
peri4
7eae1e127c
PIBroadcast polishing
2024-05-14 21:01:53 +03:00
peri4
2ac215c19e
separate PIEthernet::Address to PINetworkAddress, typedef PIEthernet::Address to PINetworkAddress and mark as deprecated
...
PIValueTree new attributes for File and Dir
2022-12-19 14:29:18 +03:00
peri4
c2b8a8d6da
code format
2022-12-14 14:13:52 +03:00
peri4
b1e220e454
change PIIODevice read* and write* methods size to "ssize_t"
2022-08-01 18:52:30 +03:00
Бычков Андрей
d13e68c206
threadedRead now const uchar *
...
pipacketextractor Header mode now more flexible
fix splitTime mode
more refactoring
add virtual override to functions
remove piforeach
replace 0 to nullptr
iterate over pimap via iterators
replace CONNECTU to CONNECT# with compile time check
2022-07-26 17:18:08 +03:00
peri4
54b5372356
doxygen @ tags replaced to \
2022-03-14 21:19:31 +03:00
peri4
991a074538
version 2.30
...
PIStreamPacker remove progresses
picloud various fixes
2021-09-01 23:48:13 +03:00
peri4
0e65151e9f
PIEthernet error 232
...
PICloud many fixes
PIBroadcast recursive fix
2021-08-20 10:55:47 +03:00
andrey
4c0530d89a
picloud ping and fix big bugs
2021-08-19 18:13:05 +03:00
andrey
f5af8a1da9
disable autostart pibroadcast
2021-08-19 15:02:30 +03:00
andrey
25def958a1
rename doc macros
2021-08-04 16:31:32 +03:00
peri4
4584d9c639
PIObject::deleted now has 1 argument
...
PIIODevice small refactoring
new PIIODevice virtual methods: threadedReadTerminated() and threadedWriteTerminated()
PIIODevice::stop now accept bool "hard" instead of "wait"
PIStreamPacker new features: packet size crypt and aggressive optimization
2021-04-07 22:13:56 +03:00
peri4
ccd6a9888f
tree changes
2020-08-19 00:47:05 +03:00