* Allow set enum as json value (#4363)
* fix issue #4341
add testEnum
if you set enum as json value then it will be cast to int
* add behavour for enum into VarHolderImpl
add tests for enum classes with differnent underline integral types
* replace static_cast with convertTo* methods, they can chaeck types and
limits
* fix missing types for convert methods
* fix code style
add testEnumType to the VarTest.cpp, extract() works
* enh(VarHolder): replace ::value and ::type with shortcuts
---------
Co-authored-by: Alexander B <ale.bychuk@gmail.com>
* enh(ProcessRunner): does not detect launch errors #4482
* enh(File): add absolutePath and existsAnywhere() #4482
* fix windows build and tsan fail
* fix tsan
* fix windows file tests
* comment out some CI env path -related issues
* fix tsan and windows build
* try to fix ci
* ignore ProcessRunner test fail on windows cmake
* enh(File): canExecute throws FileNotFoundException if the file to be executed can't be found in the path.
* Few C++ modernisation changes.
* enh(File): Windows specifics of File::canExecute. Returns false if the file to be executed can't be found using absolutePath.
---------
Co-authored-by: Matej Kenda <matejken@gmail.com>
* enh(poco): Replace deprecated comments with C++ deprecated attribute.
* enh(Poco): Replace some deprecated functionality in Poco sources. (#4426)
* enh(Poco): Replace more deprecated functionality in Poco sources. (#4426)
* fix(CMake): Variable BUILD_SHARED_LIBS must be defined properly to create valid binaries.
* enh: Code improvements done while resolving deprecated functionality (#4426)
* Un-deprecate LocalDateTme (#4426)
* enh(Poco): Replace usage of deprecated functionality with other functions/classes (#4426)
* chore(SSL): temporarily un-deprecate SSL-related functionality (#4426)
* chore(SSL): temporarily un-deprecate old MongoDB protocol functionality (#4426)
* enh(Poco): Minor Hash improvements (#4426)
* enh(Foundation): Compile deprecated hash tests only when POCO_TEST_DEPRECATED is enabled (#4426)
* enh(Net): Compile deprecated Socket::select functionality only when POCO_TEST_DEPRECATED is enabled (#4426)
* enh(Bonjour): Replace deprecated Socket::select with PollSet (#4426)
* enh(Poco): Introduce POCO_DEPRECATED macro to have the ability to disable deprecation warnings in applications (#4426)
* test(ODBC): add few asserts to testStoredProcedureDynamicVar
* fix(ODBC): rename DynamicAny -> DynamicVar in tests
* fix(ODBC): make Dignostics static members inline to prevent explicit instantiation warnings on windows
---------
Co-authored-by: Alex Fabijanic <alex@pocoproject.org>
* enh(ThreadTest): add join test
* enh(SQLLogger): #4529 (wip)
* enh(SQLChannel): just few C++17 modernisations.
* enh(SQLiteTest): extend unit test to destroy SQL channel while it has pending messages. (#4529)
* enh(ODBC): improve exception descriptions and add string/batch size tests
* feat(SQLChannel): add store-and-forward mode
* fix(DataTest): SQLChannel *nix build and test run #4529
* fix(DataTest): CodeQL warning #4529
* chore(ODBCTest): lower the number of max statements in big batch
* feat(SQLChannel): add flush property #4529
* enh(SQLChannel): use event for interruptible sleep; reduce code duplication with lambda; update comments #4529
* fix(SQLChannel): flush time determination #4529
---------
Co-authored-by: Matej Kenda <matejken@gmail.com>
* Add CACHE PATH to multi-config output directory variables
CACHE PATH should have been added to these as well.
* Adding Config Name to Cache Message
Adding the configuration name to the cache path message that is written to CMakeCache.txt.
Some types support being swapped but may not have declared their
std::swap overloads when Poco/Optional.h is first included. This is the
case for instance with
#include <Poco/Optional.h>
#include <array>
using Problematic = Poco::Optional<std::array<int, 42> >;
With an unqualified call to swap, preceded by using std::swap, we allow
argument-dependent lookup to find suitable implementations of swap.
MS Visual Studio can use type long for __LINE__ macro when /ZI
compilation flag is used - https://learn.microsoft.com/en-us/cpp/build/
reference/z7-zi-zi-debug-information-format?view=msvc-170#zi-1
This breaks some poco interfaces, for ex. logger
We should fix type for line number
* Allow using Poco::FileStream to wrap arbitrary file handles/descriptors as C++ streams (#3444).
* Allow opening a file descriptor/HANDLE as C++ stream.
* FileStream: treat read from closed pipe as EOF.
* chore(Filestream): conde style (naming)
Co-Authored-By: Alex Fabijanic <alex@pocoproject.org>
Co-Authored-By: Matej Kenda <matejken@gmail.com>
* enh(FileStream): make FileIOS::open a virtual function. (#3444)
* test(FileStream): unit test for FileStream::openHandle (#3444)
* Update CONTRIBUTORS.
* test(FileStream): Win32 unit test fix.
* build(CMake): Require policy minimum version 3.15.
---------
Co-authored-by: Daniel Grunwald <grunwald@axivion.com>
Co-authored-by: Alex Fabijanic <alex@pocoproject.org>
* fix bug #4535
RFC 2047 decodeWord
* modify logic
uses separate string which contains simbols between chunks and if this
string contains only space ot \n or \t or \v than trim it