42 Commits

Author SHA1 Message Date
Matej Kenda
7495f0592c enh(Poco::Dynamic): Modernised code to use C++17 features. 2025-01-08 15:14:39 +01:00
Matej Kenda
f24547cdcf enh(Poco): Mark deprecated functionality with C++ attributes and resolve internal usage of deprecated functions (#4551)
* 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>
2024-07-29 08:37:35 +02:00
Aleksandar Fabijanic
c7d16b2a7e
4368 oracle odbc tests (#4410)
* feat(format): Add string_view format type spec #4409

* chore(Types): add demangle

* fix(Data): Oracle failing ODBC tests #4368

* fix some CQL and fuzz warnings; add Var::typeName()

* fix(build): -std=c++17 and c11

* fix windows build

* fix(Foundation): test apps vs projects c++17

* chore(build): remove uneeded compiler flag

* fix(VarHolder): number of digits range check for int->float conversion (reported by CIFuzz)

* fix(test): CIFuzz

* fix(CIFuzz): another attempt

* fix(progen): add LanguageStandard (stdcpp17, stdc11); regenerate vs170 projects

* fix(CiFuzz): add int->float precision loss barrier; fix erroneous number of digits logic

* enh(Var): silent loss of precision on int->float conversion #4423

* enh(Var): silent loss of precision on int->float conversion #4423

* chore(build): remove old build files

* chore: fix missing parens warning

* enh(Thread_POSIX): prevent double-joining; add error description to exceptions

* fix(Data): unresolved Column<long> linkage in test

* fix(demangle): determine type name from template parameter; add eror diagnostic for demangling failures

* chore(buildwin): remove old vs versions from build and progen scripts; update documentation

* chore(buildwin): remove leftover closing curly
2024-01-31 22:07:07 +01:00
junwufan
2a36359bc7
Update Var.h (#3684)
Add `Poco` namespace for `format` function, because it conficts with std::format.
2022-07-14 08:09:44 -05:00
Alex Fabijanic
a1819107de refactor(Placeholder): more SOO consolidation and optimization 2022-04-19 09:03:47 +00:00
Aleksandar Fabijanic
45cbee7c0e
refactor(Placeholder): ifdef POCO_NO_SOO only in Placeholder and remove it anywhere else (#3566) 2022-04-18 14:28:27 -05:00
Aleksandar Fabijanic
9c976da830
Refactor/any soo (#3564)
* refactor(Any): SOO

- encapsulate data holders
- add missing gets and ops
- eliminate g++ warnings with enable_if's
- default enable SOO

* refactor(Placeholder): encapsulate SOO memory management and fix leaks; cf. #3297 #3514

* fix(Placeholder): asan errors and add tests

cf. #3297 #3514
2022-04-16 06:38:55 -05:00
Günter Obiltschnig
7569ccf82b #3318: Data: Support Poco::UUID for data binding 2021-06-19 08:40:49 +02:00
Günter Obiltschnig
12d3bf9c75 #2945: Iterating over Var containing empty container throws "Out of range" exception 2021-04-11 16:22:42 +02:00
Günter Obiltschnig
aa46e9b6e4 fixed type overloads 2020-01-09 18:02:29 +01:00
Günter Obiltschnig
03d1dd9822 fixes for macos/clang 2020-01-09 11:53:03 +01:00
Günter Obiltschnig
1bf40a0cd2 merge some changes from develop branch; modernize and clean-up code; remove support for compiling without POCO_WIN32_UTF8 2020-01-09 10:08:09 +01:00
Aleksandar Fabijanic
231ef2762d
Preserve entries order in DynamicStruct #2410 (#2413)
* Preserve entries order in DynamicStruct #2410

* disable C++11 default

* ifdef C++11 code
2018-08-01 08:06:59 -07:00
Alex Fabijanic
6efab2cd58 back-port JSON and accompanying Foundation portions (JSONString, Dynamic::Var etc) 2017-09-25 15:15:05 -05:00
Günter Obiltschnig
04e7e04d4d Remove \$Id`$ headers 2017-09-09 11:14:06 +02:00
Aleksandar Fabijanic
bd057090c3 Var BadCastException #861 2015-06-10 09:04:19 -05:00
Guenter Obiltschnig
fa4989e0c7 fixed #592: Incorrect format string in Poco::Dynamic::Struct 2014-11-07 10:43:50 +01:00
Guenter Obiltschnig
544229302e #538 prevent destructors from throwing exceptions 2014-09-19 09:46:49 +02:00
Guenter Obiltschnig
f2512856ee added Var::isBoolean() and fixed JSON stringifier 2014-09-18 20:57:34 +02:00
Alex Fabijanic
1aa28e1491 GH #290: Unicode support 2014-05-21 03:28:24 -05:00
Roger Meier
b0581433a7 LICENSE: add info about SPDX-License-Identifier usage and use it
fix: remove executable flag and change back to 100644 (was 100755)

Signed-off-by: Roger Meier <r.meier@siemens.com>
2014-05-14 08:38:09 +02:00
Roger Meier
628a06f718 LICENSE: add info about SPDX-License-Identifier usage and use it
Signed-off-by: Roger Meier <roger@bufferoverflow.ch>
2014-05-04 21:02:42 +02:00
Alex Fabijanic
e3d7fc104e Parse JSON as structure #365 2014-03-07 20:45:32 -06:00
Akihiro Yamasaki
d61eaaac28 Fixed code page warning. 2013-07-09 13:56:35 +09:00
Aleksandar Fabijanic
bc808cf9d4 WebNotifier example
- added WebNotifier example
- fixed/tidied up SOO alignment code
2013-05-30 23:23:37 -05:00
Aleksandar Fabijanic
e5eaffb790 removed Var iterators, fixed SOO alignment
- removed unnecessary using directives in Data library
- removed iterator pointers from Var (reduce size, always return copy)
- added Alignment header (adapted from LLVM infrastructure)
- added alignment guards to SOO implementations
2013-05-29 23:36:45 -05:00
Aleksandar Fabijanic
aa6e993734 clang compile 2013-05-27 21:33:28 -05:00
Aleksandar Fabijanic
38131d452d Var/JSON changes
- JSON support for Dynamic Struct and Array
- added VarIterator
- modified behavior of empty Var
2013-05-27 21:33:27 -05:00
Aleksandar Fabijanic
d0ff7ccf7c add toString() 2013-04-03 22:03:39 -05:00
Aleksandar Fabijanic
1f4afb9c6c improved SOO swap, fixed Darwin-clang build config 2013-03-31 16:28:53 -05:00
aleks-f
f78a4e8965 factor out Var destruction 2013-02-17 17:05:36 -06:00
Alex
2661b54ff6 work around static union member (non-C++03) 2013-02-05 22:56:03 -06:00
aleks-f
21da0129b6 Dynamic::Var SOO
Dynamic::Var  small object optimization and some refactoring
2013-02-05 22:12:21 -06:00
Aleksandar Fabijanic
e7ee78baa5 remove Var::operator const std::string & () 2012-09-25 23:50:15 +00:00
Aleksandar Fabijanic
d8397b9153 - VS2012: build/tests
- JSON: style and exceptions catch by ref fix
- NumberParser: case-insensitive hex parsing
- Dynamic::Var: const std::string& cast operator specialization (coaxing std::string ctor)
- LocalDateTime: strftime fix (buffer too small for full tz string, use %Z instead of %z - makes no difference on windows but is more portable)
- small buildwin.cmd vsvars32.bat call fix
2012-09-24 03:51:40 +00:00
Aleksandar Fabijanic
d75e68c027 new trunk (base for 1.5)
windows build only
2012-04-23 01:14:34 +00:00
Aleksandar Fabijanic
f9b60296f7 removing old trunk files 2012-04-23 00:43:14 +00:00
Aleksandar Fabijanic
c92d329399 [SF 2520679] JSON strings enclosed in single quotes
[SF 2520849] Dynamic/Pair support
2009-01-19 20:08:04 +00:00
Aleksandar Fabijanic
c617bbe551 changed Struct<int> operator[] index to int 2008-11-30 04:06:10 +00:00
Aleksandar Fabijanic
905534af1c SF [2360817] Build failure in Var.cpp 2008-11-30 03:54:11 +00:00
Aleksandar Fabijanic
d43f4d6164 DynamicStruct keyed by integer 2008-11-24 12:36:15 +00:00
Aleksandar Fabijanic
4b4ec9393c - introduced Poco::Dynamic namespace
- moved/renamed:
Poco::DynamicAny => Poco::Dynamic::Var
Poco::DynamicAny typedef for backward compatibility (deprecated)
DynamicAny.h forwarding header for backward compatibility (deprecated)

Poco::DynamicAnyHolder => Poco::Dynamic::VarHolder
DynamicAnyHolder.h forwarding header for backward compatibility (deprecated)

Poco::DynamicStruct => Poco::Dynamic::Struct
Poco::DynamicStruct typedef for backward compatibility (deprecated)
DynamicStruct.h forwarding header for backward compatibility (deprecated)

- changed FastMutex to Mutex in Data::SessionPool (deadlocking)
2008-11-16 16:54:37 +00:00