From cb533675182bd18e39a48fe1bc82d00083adcc100ba838a275b01c291d32d8fb Mon Sep 17 00:00:00 2001 From: Angel Yankov Date: Tue, 29 Oct 2024 15:43:44 +0000 Subject: [PATCH] - Update to 1.9.6: * Building infrastrucutre updates, Cmake and meson * Major bugfixes * Parse large floats as infinity * Fix parser tokens bug and out-of-bound read OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/jsoncpp?expand=0&rev=64 --- .gitattributes | 23 +++ .gitignore | 1 + baselibs.conf | 1 + jsoncpp-1.9.5.tar.gz | 3 + jsoncpp-1.9.6.tar.gz | 3 + jsoncpp.changes | 345 +++++++++++++++++++++++++++++++++++++++++++ jsoncpp.spec | 110 ++++++++++++++ 7 files changed, 486 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 baselibs.conf create mode 100644 jsoncpp-1.9.5.tar.gz create mode 100644 jsoncpp-1.9.6.tar.gz create mode 100644 jsoncpp.changes create mode 100644 jsoncpp.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/baselibs.conf b/baselibs.conf new file mode 100644 index 0000000..8eaf7fe --- /dev/null +++ b/baselibs.conf @@ -0,0 +1 @@ +libjsoncpp26 diff --git a/jsoncpp-1.9.5.tar.gz b/jsoncpp-1.9.5.tar.gz new file mode 100644 index 0000000..e80ae2c --- /dev/null +++ b/jsoncpp-1.9.5.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f409856e5920c18d0c2fb85276e24ee607d2a09b5e7d5f0a371368903c275da2 +size 216055 diff --git a/jsoncpp-1.9.6.tar.gz b/jsoncpp-1.9.6.tar.gz new file mode 100644 index 0000000..d26ea16 --- /dev/null +++ b/jsoncpp-1.9.6.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f93b6dd7ce796b13d02c108bc9f79812245a82e577581c4c9aabe57075c90ea2 +size 212682 diff --git a/jsoncpp.changes b/jsoncpp.changes new file mode 100644 index 0000000..5292d59 --- /dev/null +++ b/jsoncpp.changes @@ -0,0 +1,345 @@ +------------------------------------------------------------------- +Tue Oct 29 15:03:24 UTC 2024 - Angel Yankov + +- Update to 1.9.6: + * Building infrastrucutre updates, Cmake and meson + * Major bugfixes + * Parse large floats as infinity + * Fix parser tokens bug and out-of-bound read + +------------------------------------------------------------------- +Wed Mar 8 12:03:58 UTC 2023 - Martin Pluskal + +- Build AVX2 enabled hwcaps library for x86_64-v3 + +------------------------------------------------------------------- +Sat Nov 27 12:32:49 UTC 2021 - Dirk Müller + +- update to 1.9.5: + * Minor bug-fixes (including for cmake) + * Support for Bazel + * Dropped compile-time deprecation warnings + +------------------------------------------------------------------- +Mon Sep 28 18:11:44 UTC 2020 - Dirk Mueller + +- update to 1.9.4: + * This patch contains several fixes found through the OSS-Fuzz project + fuzzing, increasing the security of the library, + +------------------------------------------------------------------- +Wed Jun 24 19:10:43 UTC 2020 - Guillaume GARDET + +- From 1.9.2 to 1.9.3, autolink.h has been dropped and + config.h must be used so, create a symlink for compatibility + +------------------------------------------------------------------- +Fri Jun 19 06:00:24 UTC 2020 - Martin Pluskal + +- Update to version 1.9.3" + * Fixes to JSON_USE_EXCEPTION--some bugs creeped in breaking this + flag in pre-release. + * Fixes to build system--improvements have been make for code + correctness. + * Compile errors for various platforms have been resolved. + * Fuzzing has been fixed. + * Various bugs in the Reader and Writer code have been corrected. + * CPPTL support has been dropped. + * Various code improvements and optimizations. +- Drop no longer needed patch: + * jsoncpp-f11611c8785082ead760494cba06196f14a06dcb.patch + +------------------------------------------------------------------- +Wed Feb 12 07:46:21 UTC 2020 - Guillaume GARDET + +- Fix build on non-x86 architectures - boo#1163385 + * jsoncpp-f11611c8785082ead760494cba06196f14a06dcb.patch +- From 1.9.1 to 1.9.2, features.h has been renamed json_features.h + so, add a symlink for compatibility - boo#1163385 + +------------------------------------------------------------------- +Mon Feb 3 15:35:00 UTC 2020 - Martin Pluskal + +- Update to version 1.9.2: + * Medium size pre-release containing lots of build fixes + +------------------------------------------------------------------- +Tue Aug 13 10:37:46 UTC 2019 - Martin Pluskal + +- Update to version 1.9.1: + * This release contains some minor build fixes. +- Changes for version 1.9.0: + * Build optimizations and updates. Now needs at least Meson + 0.50.0, bot support for VS 2013 dropped in favor of VS 2017 + * Lots of bug fixes + * Lots of enhancements + * Lots of cleanup + +------------------------------------------------------------------- +Sat Dec 23 00:09:57 UTC 2017 - avindra@opensuse.org + +- Update to version 1.8.4: + * Functional changes + - Serialize UTF-8 string with Unicode escapes + + Breaks code that relies on not Unicode-escaping encoding + strings. A future release may allow skipping all Unicode + escape. + - Un-deprecate removeMember overloads, return void + - Allow Json::Value to be used in a boolean context + - Use move ctor in append() + - Add value_type to improve integration with boost + * Meta-changes + - Fix meson.build to allow using jsoncpp as a subproject + - Fix some compiler warnings + - Update docs + +------------------------------------------------------------------- +Mon Oct 2 10:43:15 UTC 2017 - mpluskal@suse.com + +- Update to version 1.8.3: + * Also, fix writeCommentBeforeValue() iter deref + +------------------------------------------------------------------- +Mon Aug 28 10:32:13 UTC 2017 - mpluskal@suse.com + +- Update to version 1.8.2: + * Some C++ "move" operators. + * Fix uninitialized value detected by valgrind. + * Other minor improvements. + * Moved most READ docs to Wiki. + +------------------------------------------------------------------- +Tue Jul 11 13:09:41 UTC 2017 - mpluskal@suse.com + +- Update to version 1.8.1: + * meson.build + * Minor bug fixes and optimizations + * Improved docs + +------------------------------------------------------------------- +Mon Jan 2 15:42:49 UTC 2017 - mpluskal@suse.com + +- Update to version 1.8.0: + * Build related changes, minimal required cmake is 3.1 +- Execute tests in check section + +------------------------------------------------------------------- +Fri Oct 14 06:59:15 UTC 2016 - olaf@aepfle.de + +- Require cmake 3.0.2 for make_jobs + +------------------------------------------------------------------- +Fri Oct 7 09:12:22 UTC 2016 - nmoudra@suse.com + +- Update to vesrion 1.7.7: + * At the suggestion of Peter Spiess-Knafl, we will bump the + SOVERSION independent of the MAJOR.MINOR.MICRO version, + in case we break binary compatibility. +- Changes for version 1.7.6: + * Prevent possible SEGV. (Thanks to @ngg.) + * Add RPATH for OSX libs. (Please let us know if this causes + a problem.) +- Changes for version 1.7.5: + * Fix locale for decimal points + + Plus a fix for Android + * int64_t for 64-bit integers + * Optionally suppress space after comma + * Avoid null for empty stringValue + * Fix null ctor/dtor, using a "Meyers Singleton" + + Thanks to @marklakata and @BillyDonahue in #488 in #490. + +------------------------------------------------------------------- +Sat Jul 23 07:33:16 UTC 2016 - mpluskal@suse.com + +- Update to version 1.7.4: + * Fix pkg-config + +------------------------------------------------------------------- +Thu Jun 30 08:46:23 UTC 2016 - mpluskal@suse.com + +- Update to version 1.7.3: + * Fix static initialization of null with Myers Singleton. + * Fix other minor compiler and installation problems and + warnings. + * Fix amalgamated header. +- Drop -doc subpackage + +------------------------------------------------------------------- +Sat Apr 2 09:40:09 UTC 2016 - mpluskal@suse.com + +- Update to 1.7.2 + * Fix a clang warning + +------------------------------------------------------------------- +Wed Mar 23 19:31:20 UTC 2016 - mpluskal@suse.com + +- Update to 1.7.1 + * New precision setting in StreamBuilder + * Move-semantics for some ctors + * Added details to exception messages + * Clarified when exceptions are thrown + * Support isinfinite() + * Secure memory-wiping allocator (via compilation flag, settable + via cmake) For this, we changed all STL datatypes to macros, + but all unchanged by default. + * Lots of minor build-related improvements + + Notably, cmake support for ccache + + More supported systems + * Note: 1.7.0 was recalled b/c it accidentally included + SecureAlloc by default + +------------------------------------------------------------------- +Tue Jul 28 07:34:49 UTC 2015 - mpluskal@suse.com + +- Update to 1.6.5 + * Other changes are just comments. + +------------------------------------------------------------------- +Mon Apr 20 08:34:04 UTC 2015 - mpluskal@suse.com + +- Update to 1.6.2 + * Do not truncate output at embedded zeroes. + +------------------------------------------------------------------- +Sat Apr 4 10:33:42 UTC 2015 - mpluskal@suse.com + +- Update to 1.6.1 + * Fix compilation error for snprintf() for some compilers. +- Update category for documentation + +------------------------------------------------------------------- +Sun Mar 15 19:40:03 UTC 2015 - mpluskal@suse.com + +- Update to 1.6.0 + * Added Json::Exception, plus derived types: + Json::RuntimeError + Json::LogicError + * Clarified when exceptions are thrown. + * If you are trapping std::exception, nothing will change for you. + * Fixed deprecation macro. (Thx to @Dani-Hub.) + * Fixed compilation error for gcc-4.8. (Thx to @connormanning.) + * Fixed CharReader::Factory base. (Thx to Tengiz Sharafiev.) + +------------------------------------------------------------------- +Mon Mar 9 09:05:55 UTC 2015 - mpluskal@suse.com + +- Create and install cmake files +- Define libname to make maintenance easier +- Use graphviz-gd so that we can generate png files in + documentation +- Update to 1.5.4 + * Support embedded 0s in strings (since UTF-8 allows them). + + If you use c-string methods, or std::string::c_str(), you + can still have problems. + + Note that this support has a price: keys are now limited to + 1 billion characters (2^30). + * Add feature to allow single-quotes in input JSON (since + JavaScript allows them). + * Propagate rarely-used StaticString thru copy-ctor. + * Let JSON_ASSERT throw std::logic_error instead of + std::runtime_error. + * Skip Python tests by default, and run C++ unit-tests only for + changes. + * Ignore cmake-generated files for in-source builds. + * Add tests. Fix other tests. + * Remove unused code (JSON_VALUE_USE_INTERNAL_MAP). + * Add rejectDupKeys feature. + + Now part of strictMode. + * Fix minor build issues for VisualStudio. + * Fix compile error for VS2013, plus warnings. + * Add operator[] to Builders. + * In Builders, fix ::validate() (which was always returning + true). + * Fix UTF-8 zeroes bugs in previous patch-versions. + +------------------------------------------------------------------- +Fri Mar 6 18:24:11 UTC 2015 - mpluskal@suse.com + +- Add missing dependency on graphviz + +------------------------------------------------------------------- +Fri Mar 6 18:16:35 UTC 2015 - mpluskal@suse.com + +- Correct rpm group +- Update to 1.5.2 + * Fixed compile error for VS2013. + * Added operator[] to Builders. (Builders are not yet widely + used, and 0.9.z is very new, so we have not bumped the minor + version number.) +- Changes for 1.5.1 + * Plus a minor bug-fix. (For the Builders, ::validate() was + always returning true.) + +------------------------------------------------------------------- +Tue Mar 3 21:44:38 UTC 2015 - mpluskal@suse.com + +- Update to 1.5.0 + * Support embedded 0s in strings (since UTF-8 allows them). + * If you use c-string methods, or std::string::c_str(), you can + still have problems. + * Note that this support has a price: keys are now limited to + 1 billion characters (2^30). + * Add feature to allow single-quotes in input JSON (since + JavaScript allows them). + * Propagate rarely-used StaticString thru copy-ctor. + * Let JSON_ASSERT throw std::logic_error instead of + std::runtime_error. + * Fix VisualStudio warning. + * Skip Python tests by default, and run C++ unit-tests only + for changes. + * Ignore cmake-generated files for in-source builds. + * Add tests. + * Remove unused code (JSON_VALUE_USE_INTERNAL_MAP). + + +------------------------------------------------------------------- +Tue Feb 24 14:10:36 UTC 2015 - mpluskal@suse.com + +- Update to 1.4.4 + * The odd allowDroppedNullPlaceholders feature of Readers + (corresponding to dropNullPlaceholders in Writers) can be + helpful when parsing javascript as JSON, when null elements + have been discarded. +- Build doc package as noarch + +------------------------------------------------------------------- +Tue Feb 17 21:15:01 UTC 2015 - mpluskal@suse.com + +- Update to 1.4.2: + * minor cleanups + +------------------------------------------------------------------- +Thu Feb 5 20:07:09 UTC 2015 - mpluskal@suse.com + +- Patch jsoncpp-1.0.0-lib_suffix.patch is longer necessary +- Update to version 1.4: + * Updated the type system's behavior, in order to better support + backwards compatibility with code that was written before + 64-bit integer support was introduced. +------------------------------------------------------------------- +Sat Dec 20 17:31:29 UTC 2014 - mpluskal@suse.com + +- Update packace categories + +------------------------------------------------------------------- +Fri Dec 12 13:16:18 UTC 2014 - mpluskal@suse.com + +- Enable cmake build + + add fix for wrong lib_suffix - jsoncpp-1.0.0-lib_suffix.patch +- Disable building for i586 - jsonccp fails its unit tests +- Update to new release - 1.0.0: + + Updated the type system's behavior, in order to better support backwards + compatibility with code that was written before 64-bit integer support was + introduced. + + Compilation + -- New CMake based build system. Based in part on contribution from + Igor Okulist and Damien Buhl (Patch #14). + -- New header json/version.h now contains version number macros + (JSONCPP_VERSION_MAJOR, JSONCPP_VERSION_MINOR, JSONCPP_VERSION_PATCH + and JSONCPP_VERSION_HEXA). + +------------------------------------------------------------------- +Fri Jul 25 07:43:07 UTC 2014 - mvyskocil@opensuse.org + +- Initial packaging of jsoncpp for openSUSE + diff --git a/jsoncpp.spec b/jsoncpp.spec new file mode 100644 index 0000000..24dcafe --- /dev/null +++ b/jsoncpp.spec @@ -0,0 +1,110 @@ +# +# spec file for package jsoncpp +# +# Copyright (c) 2021 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%define sover 26 +Name: jsoncpp +Version: 1.9.6 +Release: 0 +Summary: C++ library that allows manipulating with JSON +License: MIT +Group: Development/Libraries/C and C++ +URL: https://github.com/open-source-parsers/jsoncpp +Source0: https://github.com/open-source-parsers/%{name}/archive/refs/tags/%{version}.tar.gz#/%{name}-%{version}.tar.gz +Source99: baselibs.conf +BuildRequires: gcc-c++ +BuildRequires: meson >= 0.50.0 +BuildRequires: pkgconfig +BuildRequires: python3-base +%{?suse_build_hwcaps_libs} + +%description +JSON is a lightweight data-interchange format. It can represent numbers, +strings, ordered sequences of values, and collections of name/value pairs. + +JsonCpp is a C++ library that allows manipulating JSON values, including +serialization and deserialization to and from strings. It can also preserve +existing comment in unserialization/serialization steps, making it a convenient +format to store user input files. + +%package devel +Summary: Development files for %{name} +Group: Development/Languages/C and C++ +Requires: lib%{name}%{sover} = %{version} + +%description devel +JSON is a lightweight data-interchange format. It can represent numbers, +strings, ordered sequences of values, and collections of name/value pairs. + +JsonCpp is a C++ library that allows manipulating JSON values, including +serialization and deserialization to and from strings. It can also preserve +existing comment in unserialization/serialization steps, making it a convenient +format to store user input files. + +%package -n lib%{name}%{sover} +Summary: Shared library for %{name} +Group: System/Libraries + +%description -n lib%{name}%{sover} +JSON is a lightweight data-interchange format. It can represent numbers, +strings, ordered sequences of values, and collections of name/value pairs. + +JsonCpp is a C++ library that allows manipulating JSON values, including +serialization and deserialization to and from strings. It can also preserve +existing comment in unserialization/serialization steps, making it a convenient +format to store user input files. + +%prep +%autosetup + +%build +%meson +%meson_build + +%install +%meson_install +pushd %{buildroot}%{_includedir}/json/ +# From 1.9.1 to 1.9.2, features.h has been renamed json_features.h +# so, create a symlink for compatibility +ln -s json_features.h features.h +# From 1.9.2 to 1.9.3, autolink.h has been dropped and config.h must be used +# so, create a symlink for compatibility +ln -s config.h autolink.h +popd + +%check +%meson_test + +%post -n lib%{name}%{sover} -p /sbin/ldconfig +%postun -n lib%{name}%{sover} -p /sbin/ldconfig + +%files -n lib%{name}%{sover} +%license LICENSE +%{_libdir}/lib%{name}.so.%{sover}* + +%files devel +%license LICENSE +%doc AUTHORS README.md +%dir %{_libdir}/cmake/%{name}/ +%dir %{_libdir}/cmake +%{_libdir}/pkgconfig/%{name}.pc +%{_libdir}/cmake/%{name}/%{name}Config.cmake +%{_libdir}/cmake/%{name}/%{name}-namespaced-targets.cmake +%{_libdir}/lib%{name}.so +%{_includedir}/json/ + +%changelog