mirror of
https://github.com/pocoproject/poco.git
synced 2024-12-14 02:57:45 +01:00
29b2c3a7b7
3 Commits
Author | SHA1 | Message | Date | |
---|---|---|---|---|
Aleksandar Fabijanic
|
85e8b89061
|
Release 1.12.0 (#3676)
* updated README.md * Create close-inactive-issues.yml * PocoDoc: fix iframe sandboxing * create poco-1.11.3 branch, bump version * update copyright date * #3567: check legacy provider existence for legacy exception #3567 * fix(OpenSSLInitializer): unload provider on uninitialize (#3567) * fix(OpenSSLInitializer): fix provider unloading (#3567) * fix(OpenSSLInitializer): revert unload provider on uninitialize (#3567) * fix(MySQL): MySQL UUID binding temporary string #3587 * update CI link in README.md * #3632: add overloads to ctor and connect() to allow passing a Poco::Net::StreamSocket/Poco::Net::SecureStreamSocket to enable TLS connections without introduding a direct dependency to NetSSL. * updated changelog * devel-release-1.12.0 (#3673) * Fix percent-encoded fragment modification in Poco::URI Before this commit using Poco::URI class to parse specific URIs that had percent-encoded fragment identifier resulted in the loss of information concerning the way the fragment identifier was encoded. There could be the cases when the result of Poco::URI object serialization to string did not match the original URI string Poco::URI object was created from. In this commit we change the internal logic of fragment processing in Poco::URI, so that the fragment is stored inside the class in raw form (the same way as query string). The methods getFragment and setFragment work the old way (with percent-decoded fragment values), new methods getRawFragment and setRawFragment are added to get access to the original fragment representation. * Remove SDK version from VS2022 test projects (#3607) * Remaining changes for Windows on ARM64 support (#3608) * Add ARM64 to Foundation * Changed lib, and bin folders of ARM64 builds * Updated buildwin.cmd * Added missing closing </File> tags (#3610) * feat(Platform): LoongArch support #3460 * fix(PollSet): default enable epoll on linux * default disable new state on move * fix(UDPHandler): data race #3613; clean up all Net tsan warnings * ProGen vs170 projects with Win32,x64,ARM64 (#3612) * fix(TCPServer): #1884 #1965 * fix(LogFile): LogFile_STD (LogFileImpl) fails to recover from getting out of space #2084 * Avoid clang 10 -Wimplicit-int-float-conversion warning/error when converting int into float (#2943) Example of warning (error when using -Werror) we get with clang 10: /remote/intdeliv/components/osp/Poco/Foundation/19-0-0-6/include/Poco/Dynamic/VarHolder.h:444:14: error: implicit conversion from 'int' to 'float' changes value from 2147483647 to 2147483648 [-Werror,-Wimplicit-int-float-conversion] if (from > std::numeric_limits<T>::max()) ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /remote/intdeliv/components/osp/Poco/Foundation/19-0-0-6/include/Poco/Dynamic/VarHolder.h:332:4: note: in instantiation of function template specialization 'Poco::Dynamic::VarHolder::checkUpperLimitFloat<float, int>' requested here checkUpperLimitFloat<F,T>(from); ^ /remote/intdeliv/components/osp/Poco/Foundation/19-0-0-6/include/Poco/Dynamic/VarHolder.h:2175:3: note: in instantiation of function template specialization 'Poco::Dynamic::VarHolder::convertToSmaller<float, int>' requested here convertToSmaller(_val, val); ^ * chore(ci): run ci on pull requests * #2569: Added TIMESTAMP data type support on MySQL (#3471) * Unit test for TIMESTAMP data type in MySQL. * Added support for TIMESTAMP data type. Co-authored-by: Hector Toledo Soto <hsoto@transperfect.com> * MongoDB::Array: int --> size_t in get for consistency with size(), new helper functions to add elements to an array. (#3016) * fix(CppUnit): enable_if disarm numeric notEqualsMessage * fix(CppUnit): CppUnit notEqualsMessage causing compile errors #3615 * Syslog: Include Facility to Syslog Message (#3452) * Fixed indentation * Added Facility to Message in RemoteSyslogListener * Net: make MessageHeader limits configurable (#3404) * Add Message::getAll (#3104) * chore(Message): fix formatting for #3104 * Output to stderr in Poco::WindowsConsoleChannel (#3058) - Fixes #3056 * HTTPDigestCredentials added support for RFC7616 algorithms (#3026) * chore(SHA2Engine): fix formatting for #3026 * Added support for SQLite transaction types using Session property (#3018) * chore(SQLite): fix enum names case for #3018 * fix(HTTPResponse): Add 425 / HTTP_TOO_EARLY to HTTPResponse::HTTPStatus #3592 * fix(SQLite): windows build (global var does not link) #3018 * Added missing SocketProactor class to ProGen source (#3616) * Added missing SocketProactor class to ProGen source * ProGen'd VS2022 Net project * chore(Net): regenerate VS 140,150,160 projects #3614 * Handle MariaDB JSON columns since they are stored as `longtext` (#3621) * Also extract BLOBs when reading longtext columns as std::string * Fix error message in unit test * Added unit test to read longtext columns as std::string * Use `tx_isolation` when connected to MariaDB regardless of version (#3622) * Use `tx_isolation` when connected to MariaDB regardless of version * Rename variable * Handle MariaDB server info in the middle of the string * Updated to PCRE version 8.45 (#3623) * Add missing changes from zlib update * Updated to PCRE version 8.45 Build on Win32 and Linux, RegularExpressionTest was successful * Fix/tsan (#3617) * fix(Foundation): tsan warnings fixes * fix(Thread_POSIX): tsan warnings fixes; add tsan.suppress * fix(Util): tsan fixes * fix(netSSL_OpenSSL): tsan fixes * fix(Data): tsan warnings fixes * feat(ci): add tsan job * feat(ci): add tsan job, another attempt * feat(ci): add tsan job, 3rd attempt * fix(Foundation): tsan warnings fixes * fix(Thread_POSIX): tsan warnings fixes; add tsan.suppress * fix(Util): tsan fixes * fix(netSSL_OpenSSL): tsan fixes * fix(Data): tsan warnings fixes * feat(ci): add tsan job * feat(ci): add tsan job, another attempt * feat(ci): add tsan job, 3rd attempt * fix(ResultMetadata): memory leak #3474 * feat(ci): disable ActiveDispatcher tests for tsan runs * feat(ci): try to fix tsan options file detection (again) * chore(TestLibrary: correct spelling * fix(ci): fix tsan run; add -y to apt; disable samples build for some jobs * fix(ci): add mysql ports * feat(ci): add VS asan * feat(double-conversion): Upgrade double-conversion to v3.2.0 #3624 * chore(asan): disable msvc asan build (dll not found) * chore(double-conversion): move NumericString.h before double-conversion includes to prevent min/max collision; reinstate lost loongarch64 * chore(JSON): sync pdjson with upstream * fix(Statement): Poco::Data::Statement becomes unusable after exception #2287 * added facility to SyslogChannel (#3453) * TCPServerDispatcher.h: missing <atomic> (#2961) Fixes: b8af168151fe0147fb06557029002ae226dcc549 Fixes: #1965 * Windows embedded OpenSSL: Fixed bogus warning during compilation (External OpenSSL defined but internal headers used - possible mismatch!) (#3627) * fix(double-conversion): nios2 and riscv defines * fix(double-conversion): riscv defines * fix(cmake): TestLibrary debug postfix * fix(cmake): add WebNotifier to samples #3184 * doc(Crypto): Fix error in find_package example #3088 * fix(Event): Event data race #3629 * fix(AsyncChannel): race condition in AsyncChannel close/log #1039 * fix(Zip): Zip 64-bit extensions not set #2590 (tentative) (#3604) * PocoDoc: fix handling of font-style tags if tag is immediately followed by punctuation * Static code analyzer warnings #2688 * MinGW: fatal error: kernelspecs.h: No such file #2691 * Poco::Data::SessionPool change connection timeout #3241 * Makefile: space(s) following target name will break build (during link) #3062 * json format PrintHandler #2678 * indicate compiler that functions will never return (#3639) * fix warning C4717: 'format<std::vector<std::any,std::allocatorstd::an… (#3640) * fix warning C4717: 'format<std::vector<std::any,std::allocatorstd::any > >': recursive on all control paths, function will cause runtime stack overflow * keep origin format. * fix(format): scope * fix(Crypto): libPocoCrypto.so: undefined reference to pthread_atfork when linking statically with OpenSSL 1.1 #3073 * chore(LocalConfigurationView): fix style #3529 * fix(ConfigurationView): ConfigurationView and JSON is broken for array access #3635 * FifoBuffer.advance method not throw exception when length==0 (#3641) * fifobuffer not throw error when length = 0 * Update FIFOBuffer.h fix indentation Co-authored-by: Aleksandar Fabijanic <aleks-f@users.noreply.github.com> * fix(URI): Decoding URI query parameters ( ::getQueryParameters) incompatible with Spring 5 #2619 * fix(NTPClient): NTPClient ignores second fractions #2614 * chore(JSON): add test for #2612 * fix(Platform): MinGW also defines __GNUC__. #3195 * Fix some clang 10 -Wsign-compare warnings (#2960) In file included from /data/mwrep/res/osp/Poco/JSON/20-0-0-0/include/Poco/JSON/Object.h:22: In file included from /data/mwrep/res/osp/Poco/JSON/20-0-0-0/include/Poco/JSON/Array.h:23: In file included from /data/mwrep/res/osp/Poco/Foundation/20-0-0-0/include/Poco/Dynamic/Var.h:26: In file included from /data/mwrep/res/osp/Poco/Foundation/20-0-0-0/include/Poco/Dynamic/VarHolder.h:22: In file included from /data/mwrep/res/osp/Poco/Foundation/20-0-0-0/include/Poco/NumberFormatter.h:22: /data/mwrep/res/osp/Poco/Foundation/20-0-0-0/include/Poco/NumericString.h:220:31: error: comparison of integers of different signs: 'unsigned long' and 'char' [-Werror,-Wsign-compare] if ((limitCheck - result) < add) return false; ~~~~~~~~~~~~~~~~~~~ ^ ~~~ /data/mwrep/res/osp/Poco/Foundation/20-0-0-0/include/Poco/NumericString.h:229:31: error: comparison of integers of different signs: 'unsigned long' and 'char' [-Werror,-Wsign-compare] if ((limitCheck - result) < add) return false; ~~~~~~~~~~~~~~~~~~~ ^ ~~~ /data/mwrep/res/osp/Poco/Foundation/20-0-0-0/include/Poco/NumericString.h:240:31: error: comparison of integers of different signs: 'unsigned long' and 'char' [-Werror,-Wsign-compare] if ((limitCheck - result) < add) return false; ~~~~~~~~~~~~~~~~~~~ ^ ~~~ /data/mwrep/res/osp/Poco/Foundation/20-0-0-0/include/Poco/NumericString.h:249:31: error: comparison of integers of different signs: 'unsigned long' and 'char' [-Werror,-Wsign-compare] if ((limitCheck - result) < add) return false; ~~~~~~~~~~~~~~~~~~~ ^ ~~~ 4 errors generated. * chore(README): Add vcpkg installation instructions #2940 * fix(SQLite): SQLite::Connector::open() crashes on db file with non existing directory #2285 * fix(MailMessage): read hangs on missing final multipart boundary #2401 * fix(NumberParser): Rounds very large negative numbers to the incorrect values #3580 * fix(JSON::Stringifier): JSON Serializing NAN #3251 * feat(Timespan): Add std::chrono support #2576 #2623 * fix(strToInt): overflows #3580 * fix(strToInt): thousand separator regression #3580 * fix(MySQL::Extractor): MySQL Extractor #2521 * feat(FTPClientSession): activeDataConnection 1.11.0 cannot set specific data port #3372 * feat(Cipher): No access to padding in Cipher #3374 * feat(TypeHandler): DB into() does not compile for more than 20 members in a tuple #3342 * fix(NumberFormatter): Negative precision in NumberFormatter::format() #2511 * Make ParallelSocketReactor thread namable (#3642) make ParallelSocketReactor thread namable * fix(Redis): Poco::Redis after executing auth command next command always return OK #2457 * chore(NumberParserTest): add test for #2441 * avoid clang tidy warning (#3646) * Revert "avoid clang tidy warning (#3646)" (#3648) This reverts commit |
||
Alex Fabijanic
|
1d4d444e08 | chore: cleanup | ||
Robin Lee
|
3bab3548f4
|
Basic support for OpenSSL 3.0.0 (#3448)
* updated README.md
* Create close-inactive-issues.yml
* check return codes of EVP_CIPHER_CTX_new and EVP_CipherInit
Especially with OpenSSL 3, it is possible that EVP_CipherInit may fail even when
passed a non-null cipher[1]. Without the checking, it will finally get to a
segfault.
[1] https://github.com/openssl/openssl/issues/16864
* Automatically load default and legacy providers with OpenSSL 3
Without the legacy provider [1], some ciphers are not available. For example,
the 'des-ecb' one used by test sutie is missed and the test will fail.
[1] OSSL_PROVIDER-LEGACY(7ossl)
* Make p12 ca order the same as pem
OpenSSL < 3 returns p12 ca order in reversed order. This is fixed
in OpenSSL 3. We work around it with old OpenSSL.
See:
https://github.com/openssl/openssl/issues/16421
https://github.com/openssl/openssl/pull/12641
|