Commit Graph

147 Commits

Author SHA1 Message Date
Aleksandar Fabijanic
71a085c1dc
chore(JSON): add stringify unicode tests #4707 (#4720)
* chore(JSON): add stringify unicode tests #4707

* enh(Mutex): Error code for pthread_mutex_lock failure #4712
2024-10-14 13:48:45 +02:00
Aleksandar Fabijanic
669be63134
Allow set enum as json value (#4363) (#4434)
* 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>
2024-07-29 23:30:51 +02:00
Günter Obiltschnig
c8bb5b8cac chore(build): re-generated VS project files 2024-04-03 12:33:13 +02:00
Günter Obiltschnig
37e17092ff chore: fix vs project files 2024-02-19 22:29:26 +01: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
Kari Argillander
d1d557a4f7 Remove vs140 and vs150 project files
As we now only support C++17 these does not make much sense to keep.
2023-12-18 17:26:13 +01:00
Kari Argillander
708a5d8307
RFC: Remove Windows CE support (#4342)
* Remove _WIN32_WCE macro

Poco now use C++17 and Windows CE does not support it and VS2017 does
also not support it so we can just remove Windows CE code. First remove
all macro usages from our own files.

* Remove WinCE support from build files

Poco now use C++17 and Windows CE does not support it and VS2017 does
also not support it so we can just remove Windows CE code. Remove all
references from build systems / scripts.

* Remove Windows CE related source and header files

Poco now use C++17 and Windows CE does not support it and VS2017 does
also not support it so we can just remove Windows CE code. First remove
all macro usages from our own files.

* Remove wcelibcex folder

Poco now use C++17 and Windows CE does not support it and VS2017 does
also not support it so we can just remove Windows CE code. First remove
all macro usages from our own files.

* Remove rest Windows CE mentions

There where some Windows CE mentions left. Remove those.

* Update Windows CE documentation

We should keep documentation some time so people can find reason for
remove.

---------

Co-authored-by: Kari Argillander <kari.argillander@fidelix.com>
2023-12-14 00:25:04 +01:00
Matej Kenda
54f0feb282 fix(ci): Partially revert "add sendfile method for streamsocket (#4007)"
This reverts commit 24b7122f43.
2023-12-12 22:13:00 +01:00
Alexander B
24b7122f43
add sendfile method for streamsocket (#4007)
* add sendfile method for streamsocket

* add mswsock.lib to the project files and templates

* remove /DPOCO_NO_AUTOMATIC_LIBS for cmake windows build

* merge from upstream

* merge from upstream

* fix code stile
add NotImplemented exception for unsupported platforms
exculude <sys/sendfile.h> for POCO_EMSCRIPTEN, because https://
github.com/emscripten-core/emscripten/pull/16234

* add iostream include for std::cout

* fix compilation for emscripten (wrap sendfile)
2023-12-11 10:47:03 +01:00
Matej Kenda
4cfa96c94e
enh(JSON): Add unit test testBasicJson to test basic functionality of the JSON parser. #3331 (#4315) 2023-11-30 14:53:55 +01:00
Aleksandar Fabijanic
78234857bf feat(ProGen): default to c++17 2023-11-05 23:40:47 +01:00
John Vandenberg
0e6e16645c
Remove trailing whitespace (#3668) 2022-07-07 04:18:20 -05:00
Alex Fabijanic
a1b21d2a0d chore(ProGen): MSVC does not properly recognize std version #3665 2022-07-06 11:39:47 +02:00
Alex Fabijanic
cafd56a947 fix(JSON::Stringifier): JSON Serializing NAN #3251 2022-06-22 13:44:00 +02:00
Alex Fabijanic
c77f558d0e chore(JSON): add test for #2612 2022-06-21 10:55:20 +02:00
Alex Fabijanic
37cb890e58 fix(ConfigurationView): ConfigurationView and JSON is broken for array access #3635 2022-06-20 20:59:10 +02:00
Alex Fabijanic
1d32b9b393 json format PrintHandler #2678 2022-06-18 06:52:30 +02:00
Hernan Martinez
fcaab80a65
ProGen vs170 projects with Win32,x64,ARM64 (#3612) 2022-05-27 21:58:46 -05:00
Alex Fabijanic
78558f868d fix(JSON): Arbitrary indent of 2 applied to JSON string objects Var conversion #3253 2022-05-21 11:48:48 -07:00
Günter Obiltschnig
2b3662c854 added VS2022 project files 2022-02-19 21:06:24 +01:00
Günter Obiltschnig
3b1484ca50 #3470: bug in JSON ParseHandler.cpp (RFC 7159 should be valid) 2022-02-19 09:52:24 +01:00
Günter Obiltschnig
c4c2df26b3 #3309: optimize parsing from stream (no copying of entire JSON to memory); limit maximum depth to avoid stack overflow with malicious documents (fuzzing - #3285); code cleanup 2021-06-15 18:55:59 +02:00
Günter Obiltschnig
15ad5c250e #3114: Added JSON Array::empty() method 2021-04-12 20:33:11 +02:00
Günter Obiltschnig
e577e36c25 #3136: Fixed null character issue when parsing a JSON 2021-04-12 20:28:30 +02:00
Günter Obiltschnig
7e9d10f488 #3076: Avoid access to already freed memory in JSON code 2021-04-11 16:37:16 +02:00
Günter Obiltschnig
9e36cea203 fix JSON object formatting and tests 2020-07-29 11:40:40 +02:00
Günter Obiltschnig
4de9a21187 make CMake files style (more) consistent 2020-02-14 11:07:32 +01:00
Joerg-Christian Boehme
885c5cbc55 Ignore tests in cmake from cppignore and set POCO_BASE environment. 2020-01-14 21:45:56 +01:00
Günter Obiltschnig
165f5cfd20 re-generated project files 2020-01-11 22:33:28 +01:00
Günter Obiltschnig
fea390fe6a remove gradle files 2020-01-11 10:04:22 +01:00
Günter Obiltschnig
e84ab92ee0 removed x64 project files 2020-01-11 09:52:49 +01:00
Günter Obiltschnig
fe3f6405b6 updated progen files 2020-01-11 09:34:54 +01:00
Günter Obiltschnig
59898cd3c2 remove old VS project files 2020-01-10 14:26:36 +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
Francis ANDRE
e59f37318e Add /MP option and remove /Gm as it is ignored and will be removed 2019-12-07 19:11:24 +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
Francis ANDRE
b2c569ec0b Merge remote-tracking branch 'origin/poco-1.9.1' into poco-1.9.1-remove-wintestrunner 2018-06-20 12:00:19 +02:00
Francis ANDRE
5dbb9cc3de Regenerating VisualStudio projects 2018-06-20 09:47:40 +02:00
Francis ANDRE
b7330492e5 Add <TargetMachine>MachineX64</TargetMachine> on <Lib> element 2018-06-15 14:28:43 +02:00
Alex Fabijanic
f06580611f Stringify escapes every unicode symbol when object contain an array #2364 2018-06-12 10:17:08 -05:00
Francis ANDRE
19eecbaafb Remove WinTestRunner 2018-06-10 19:46:19 +02:00
Joerg-Christian Boehme
612f092235 Cleanup cmake build system to use transitive dependency management from cmake (#2321)
* Some cleanup in the root CMakeLists.txt

* Cleanup cmake targets

* Add find openssl modul for older cmake version

* Set proper scope

* Change crypto default to off

* Fix openssl default to on

* Remove global setting of C99 standard

* Set from C11 to C99

* Fix for NetSSL win build

* Set C99 compile features

* Fix Windows build

* Fix windows build

* Cleanup poco unbundle definition

* Fix PDF build

* Remove unused set affinity

* Add _CRT_SECURE_NO_WARNINGS as target compile definitions

* Add _AFXDLL as target compile definitions

* Remove commented out line

* Refactor add_definitions to target_compile_definitons in Util

* Refactor add_definitions to target_compile_definitons in XML

* Remove THREADSAFE in data sql cmake build

* Refactor add_definitions to target_compile_definition in cmake mysql

* Refactor add_definitions to target_compile_definition in cmake odbc

* Refactor add_definitions to target_compile_definition in cmake sqlite

* Refactor add_definitions to target_compile_definitions in platform specific cmake

* Add _DEBUG as compile definition

* Add build dependencies between Foundation-testrunner and TestApp, TestLibrary in cmake build

* Use cmake property to build shared libs

* Cleanup POCO_NO_AUTOMATIC_LIBS. Set only for Windows in cmake build system

* cleanup LIB_MODE_DEFINITIONS in cmake buld system

* Add POCO_STATIC for CppUnit

* Cleanup target link libraries and add option dependencies.

* Add dependencies management in cmake

* Update cmake documentation

* Squashed commit of the following:

commit 38c233f93fc8e9ad6e24d686c905eb18c86e19a7

    Fix "invalid new-expression of abstract class type ApacheServerRequest" (#2231)

    - abstract method "bool secure() const" defined in HTTPServerRequest was implemented in ApacheServerRequest, one of its derived classes
     - a ap_log_error had one of its parameters changed for fixing a warning "passing NULL to non-pointer argument"
     - minor indentation problems corrected

commit 4cbdfbe828943871618172f9e042176f115d61d8

    Fix build dependencies

* Improve database cmake build dependencies

* Update doc

* Update doc

* Update cmake build commands

* Set public on target link libraries in cmake build system

* Fix PostgreSQL build

* Fix PostgreSQL build in cmake

* Fix PostgreSQL from SQL to Data

* Squashed commit of the following:

commit 1ba7d5dcbfb8d07860dd4efda33b31bedf6184c4

    Add missing cmake file

* Set path to PostgresSQL in AppVoyer

* Try to fix AppVeyor build

* show dir in appvoyer

* Disable PostgreSQL build on Appvoyer

* Refactor add_definitions to target_compile_definitions
2018-06-03 11:17:50 -05:00
Francis ANDRE
4c22b871ae Use CppUnit as a Poco module: regenerate all VS projects 2018-05-28 23:29:12 +02:00
Francis ANDRE
db5d570f33 Add Poco as prefix of CppUnit import libs 2018-05-28 19:58:05 +02:00
Francis ANDRE
be79688077 Use PocoCppUnit instead of CppUnit 2018-05-25 14:05:00 +02:00
zosrothko
960ecb38f0 Poco 1.9.1 assert true (#2255)
* Rename assert by assertTrue

* Update submodules

* Missing assertTrue

* Rename poco_assertTrue to poco_assert

* Rename poco_assertTrue to poco_assert
2018-03-29 11:12:54 -06:00
Joerg-Christian Boehme
9feabc7723 Add android build on travis (#1981)
* Add build for android in travis CI.

* Fix review findings. Change from __ANDORID__ to POCO_ANDROID

* Add android test

* Fix compile issue after rebase

* Ignore test big ping when its failing
2018-02-26 18:54:40 -06:00
Conor Burgess
2632f34e85 Stricter JSON standard conformance (#2153) 2018-02-13 07:26:20 -06:00
Conor Burgess
bdd0478ead Fix nullptr deref in Poco::JSON::Object (#2150) 2018-02-09 10:18:23 -06:00