From 5960ba9baf6a98fb436d08b3861e969e93a864a005a44396a3ad45c2bda90308 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= Date: Fri, 3 May 2024 14:54:11 +0200 Subject: [PATCH] Sync from SUSE:SLFO:Main libeconf revision d6b3d3b52ccd2d4734ba0249c536e9f0 --- .gitattributes | 23 ++ _multibuild | 4 + _service | 15 ++ _servicedata | 6 + baselibs.conf | 1 + libeconf-0.6.1.tar.xz | 3 + libeconf.changes | 517 ++++++++++++++++++++++++++++++++++++++++ libeconf.spec | 94 ++++++++ python-libeconf.changes | 39 +++ python-libeconf.spec | 68 ++++++ 10 files changed, 770 insertions(+) create mode 100644 .gitattributes create mode 100644 _multibuild create mode 100644 _service create mode 100644 _servicedata create mode 100644 baselibs.conf create mode 100644 libeconf-0.6.1.tar.xz create mode 100644 libeconf.changes create mode 100644 libeconf.spec create mode 100644 python-libeconf.changes create mode 100644 python-libeconf.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/_multibuild b/_multibuild new file mode 100644 index 0000000..e250e09 --- /dev/null +++ b/_multibuild @@ -0,0 +1,4 @@ + +python-libeconf + + diff --git a/_service b/_service new file mode 100644 index 0000000..cb21d61 --- /dev/null +++ b/_service @@ -0,0 +1,15 @@ + + + 0.5.0 + @PARENT_TAG@ + v(\d+\.\d+\.\d+) + https://github.com/openSUSE/libeconf.git + git + enable + + + xz + *.tar + + + diff --git a/_servicedata b/_servicedata new file mode 100644 index 0000000..8fcfa26 --- /dev/null +++ b/_servicedata @@ -0,0 +1,6 @@ + + + https://github.com/openSUSE/libeconf.git + 8196b96efea7f2574a36e77a47a120a5b3d920c6 + + \ No newline at end of file diff --git a/baselibs.conf b/baselibs.conf new file mode 100644 index 0000000..0f76614 --- /dev/null +++ b/baselibs.conf @@ -0,0 +1 @@ +libeconf0 diff --git a/libeconf-0.6.1.tar.xz b/libeconf-0.6.1.tar.xz new file mode 100644 index 0000000..a903da1 --- /dev/null +++ b/libeconf-0.6.1.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:870e06e7eb7de7b41025558b4f1fd71d8ed5b44bde2098e3ba207c37ce1d331d +size 171720 diff --git a/libeconf.changes b/libeconf.changes new file mode 100644 index 0000000..89864b7 --- /dev/null +++ b/libeconf.changes @@ -0,0 +1,517 @@ +------------------------------------------------------------------- +Mon Jan 22 14:30:16 UTC 2024 - schubi@suse.com + +- Update to version 0.6.1: + * reading lines which have a length greater than BUFSIZE (#195) + * Improved data quote check in read_file (#193) + +------------------------------------------------------------------- +Wed Nov 08 12:20:34 UTC 2023 - schubi@suse.com + +- Update to version 0.6.0: + * Supporting Linux Userspace API (UAPI) Group + chapter "Configuration Files Specification". + See: https://uapi-group.org/specifications/specs/ + configuration_files_specification/ + +------------------------------------------------------------------- +Fri Nov 03 16:44:38 UTC 2023 - schubi@suse.com + +- Update to version 0.5.3: + * Added bindings for python3 and C# + +------------------------------------------------------------------- +Thu Oct 26 14:56:30 UTC 2023 - nico.krapp@suse.com + +- Update to version 0.5.2: + * Add python bindings (#188) + * docu version 0.5.2 + * Fix test (#185) + * Plug memory leak (#186) + +------------------------------------------------------------------- +Wed Sep 6 14:38:13 UTC 2023 - Stefan Schubert + +- Additional info for version 0.5.2: + * Fixed a stack-buffer-overflow vulnerability in "econf_writeFile" + function. (CVE-2023-30078, CVE-2023-32181, bsc#1211078) + * Fixed a stack-buffer-overflow vulnerability in "read_file" + function. (CVE-2023-30079, CVE-2023-22652, bsc#1211078) + +------------------------------------------------------------------- +Fri Mar 24 15:12:18 UTC 2023 - schubi@suse.com + +- Update to version 0.5.2: + * Fixed build for aarch64 and gcc13. + * Making the output verbose when a test fails. + * Fixed a stack-buffer-overflow vulnerability in "econf_writeFile" + function. + * Fixed a stack-buffer-overflow vulnerability in "read_file" + function. + * Added new feature: econf_set_conf_dirs (const char **dir_postfix_list) + Sets a list of directory structures (with order) which describes + the directories in which the files have to be parsed. + E.G. with the given list: {"/conf.d/", ".d/", "/", NULL} files in following + directories will be parsed: + "/..d/" + "//conf.d/" + "/.d/" + "//" + The entry "/..d/" will be added + automatically. + * General code cleanup. + +------------------------------------------------------------------- +Thu Jan 19 15:58:59 UTC 2023 - schubi@suse.com + +- Update to version 0.5.1: + * Reading files in /usr/_vendor_/_example_._suffix_.d/* regardless + there is a /etc/_example_._suffix_ file. (#175) + +------------------------------------------------------------------- +Fri Dec 02 14:13:24 UTC 2022 - schubi@suse.com + +- Update to version 0.5.0: + * API calls econf_read*WithCallback supporting a general (void *) + argument for user defined data with which the callback function is + called. + * Tagged following functions deprecated: + econf_requireOwner, econf_requireGroup, econf_requirePermissions, + econf_followSymlinks, econf_reset_security_settings + Use one of the econf_read*WithCallback functions instead. + +------------------------------------------------------------------- +Wed Nov 23 14:01:34 UTC 2022 - schubi@suse.com + +- Update to version 0.4.9: + * libeconf.h: added missing sys/types.h header (#171) + * new API calls: econf_readFileWithCallback, + econf_readDirsWithCallback, econf_readDirsHistoryWithCallback (#172) + * Checking NULL comment parameter in the parsing functions. + +------------------------------------------------------------------- +Mon Nov 14 13:47:26 UTC 2022 - schubi@suse.com + +- Update to version 0.4.8+git20221114.7ff7704: + * Parsing files which are containing keys only (#170) + All delimiters are allowed now : "", " =", " ", "=". But the + user should use "" in order to be distinct. + * /usr/etc/shells.d/ will not be parsed if + /etc/shells.d/ is defined too. + * Lto build fixed (#168) + * New calls: econf_comment_tag, econf_delimiter_tag, econf_set_comment_tag, + econf_set_delimiter_tag + * Checking UID,GroupID, permissions,... of the parsed files (#165) + New calls: econf_requireOwner, econf_requireGroup, econf_requirePermissions, + econf_followSymlinks + * Ignoring Group without brackets; Do not hold brackets in the internal data structure. (#164) + * Error handling improved for nums and booleans (#163) + +------------------------------------------------------------------- +Wed Apr 27 22:10:35 UTC 2022 - schubi@suse.com + +- Update to version 0.4.6+git20220427.3016f4e: + * econftool: + ** Parsing error: Reporting file and line nr. + ** --delimeters=spaces Taking all kind of spaces for delimiter + * libeconf: + Fixed bsc#1198165: Parsing files correctly which have space characters + AND none space characters as delimiters. + +------------------------------------------------------------------- +Wed Apr 06 21:23:48 UTC 2022 - schubi@suse.com + +- Update to version 0.4.5+git20220406.c9658f2: + * econftool: + ** New call "syntax" for checking the configuration files only. + Returns an error string with line number if an error occurs. + ** New options "--comment" and "--delimeters" + ** Parsing one file only if needed. + +------------------------------------------------------------------- +Tue Jan 04 11:22:44 UTC 2022 - schubi@suse.com + +- Update to version 0.4.4+git20220104.962774f: + * Fixed i586 build (#158) + +------------------------------------------------------------------- +Tue Jan 04 10:27:32 UTC 2022 - schubi@suse.com + +- Update to version 0.4.2+git20220104.5dfd69d: + * Reading numbers with different bases (e.g. oktal) (bsc#1193632) (#157) + +------------------------------------------------------------------- +Thu Nov 11 14:22:24 UTC 2021 - schubi@suse.com + +- Update to version libeconf-0.4.2+git20211111.c7a2c52: + * CMake fixes regarding document installation. + * Fixed different issues while writing string values to file. + * Writing comments to file too. + * Fixed memory leaks. + * Fixed crash while merging values. + +------------------------------------------------------------------- +Fri Jul 9 07:16:22 UTC 2021 - schubi + +- Update to version 0.4.1+git20210709.cf671f2: + * CMake fixes regarding installation of econftool and man pages. + +------------------------------------------------------------------- +Thu Jul 08 08:49:53 UTC 2021 - Stefan Schubert schubi@suse.com + +- Update to version 0.4.0+git20210708.6918ea1: + * Fixed covscan FORWARD_NULL_issues warnings + +------------------------------------------------------------------- +Wed Jul 7 12:11:36 UTC 2021 - Stefan Schubert + +- Update to version 0.4.0+git20210707.537a8a: + * Fixed resource leaks found by Iker Pedrosa. + +------------------------------------------------------------------- +Thu Apr 15 10:31:02 UTC 2021 - schubi@suse.com + +- Removed doxygen from build requires. + +------------------------------------------------------------------- +Tue Apr 13 20:25:40 UTC 2021 - schubi@suse.com + +- Update to version 0.4.0+git20210413.fdb8025: + * Installing man pages via meson. (#147) + +------------------------------------------------------------------- +Mon Apr 12 19:10:54 UTC 2021 - schubi@suse.com + +- Update to version 0.4.0+git20210412.1513a26: + * Added econftool cat option (#146) + * new API call: econf_readDirsHistory (showing ALL locations) + * new API call: econf_getPath (absolute path of the configuration file) + +------------------------------------------------------------------- +Thu Apr 08 17:10:59 UTC 2021 - schubi@suse.com + +- Update to version 0.4.0+git20210408.6d33e5e: + * Man pages libeconf.3 and econftool.8. + * Handling multiline strings. + * Added libeconf_ext which returns more information like + line_nr, comments, path of the configuration file,... + * Econftool, an command line interface for handling configuration + files. + * Generating HTML API documentation with doxygen. + * Improving error handling and semantic file check. + * Joining entries with the same key to one single entry if + env variable ECONF_JOIN_SAME_ENTRIES has been set. + +------------------------------------------------------------------- +Thu Oct 22 12:16:36 UTC 2020 - Ludwig Nussel + +- explicitly BuildRequire: pkgconfig for /usr/lib/rpm/pkgconfigdeps.sh + On TW it's pulled in implicitly by libxcrypt-devel which is not the + case on 15.2 + +------------------------------------------------------------------- +Fri Jul 10 21:15:09 UTC 2020 - rbrown@suse.com + +- Update to version 0.3.8+git20200710.5126fff: + * Add CMake build scripts, remove autotools support + * Move C++ ABI compatibility section + +------------------------------------------------------------------- +Fri Jun 05 15:57:26 UTC 2020 - rbrown@suse.com + +- Update to version 0.3.7+git20200605.c67ef9a: + * Fix build on i586 + +------------------------------------------------------------------- +Thu Jun 04 11:05:02 UTC 2020 - rbrown@suse.com + +- Update to version 0.3.6+git20200529.276359f: + * Package meson files with autotools + * Use newer version of actions/checkout + * Add actions for meson + * Create meson.yml + * Use meson source root for tests configuration files + * Add additional compiler warnings + * First useable meson build support including unit tests + * Add global options, build with pie and GNU_SOURCE + * Fix name of library, add example binary + * add support for meson + * Add C++ compatibility + * Add test case for crash with empty value keys + +------------------------------------------------------------------- +Mon Feb 03 16:21:51 UTC 2020 - rbrown@suse.com + +- Update to version 0.3.5+git20200203.3144b69: + * Release version 0.3.5 + * Use float.h instead of obsolete gnuism values.h + * Remove gnuism (strdupa) + * Check for empty value (NULL pointer) before calling strdup. + +------------------------------------------------------------------- +Tue Jan 21 14:53:44 UTC 2020 - rbrown@suse.com + +- Update to version 0.3.4+git20200121.febebf2: + * Release version 0.3.4 + * Fix buffer overflow in econf_readDirs + * Fix parsing of quoted strings, and values starting with delimiters + * tests: add test for quoted strings + * tests: tst-configdirs5: fix config dir paths + +------------------------------------------------------------------- +Mon Oct 28 12:11:12 UTC 2019 - iforster@suse.com + +- Update to version 0.3.3+git20191028.3ac14ce: + * Release version 0.3.3 + * Reset *key_file to NULL after free + +------------------------------------------------------------------- +Thu Sep 26 17:43:54 UTC 2019 - kukuk@suse.com + +- Update to version 0.3.2+git20190926.fea4a03: + * Release version 0.3.2 + * Fix merging an empty file (#105) + * Add test cases for merge function + +------------------------------------------------------------------- +Tue Sep 24 12:52:52 UTC 2019 - rbrown@suse.com + +- Update to version 0.3.1+git20190924.822cf5b: + * release version 0.3.1 + * Set delimiter in readFile + * Change parser interface to store file name and line numbers per key + * Update ccpp.yml + +------------------------------------------------------------------- +Fri Sep 06 10:53:32 UTC 2019 - kukuk@suse.de + +- Update to version 0.3.0+git20190906.0e60a88: + * Ensure LICENSE, README, and TODO are included in the release tarball + * Rewrite set*ValueNum functions to avoid libm usage and add error checking + * Move src/*.c to lib and release version 0.3.0 + +------------------------------------------------------------------- +Thu Sep 05 08:54:20 UTC 2019 - kukuk@suse.de + +- Update to version 0.3.0+git20190905.0ca8fe2: + * Merge doc changes from parlt91 (pull rq#73) + * Implement econf_get*ValueDef functions: if key is not found, a provided default is returned. + * Differentiate between no value provided and empty value provided + * Remove obsolete check for comments + * Enhance and adjust test cases + * Remove obsolete check for comments + +------------------------------------------------------------------- +Wed Sep 04 11:13:09 UTC 2019 - kukuk@suse.de + +- Update to version 0.2.0+git20190904.03fa5b4: + * Enhance and adjust test cases + * Update ccpp.yml + * Update ccpp.yml + * Update ccpp.yml + +------------------------------------------------------------------- +Wed Sep 04 10:17:25 UTC 2019 - kukuk@suse.de + +- Update to version 0.2.0+git20190904.989df9f: + * Remove debug printf + +------------------------------------------------------------------- +Wed Sep 04 09:58:12 UTC 2019 - kukuk@suse.de + +- Update to version 0.2.0+git20190904.c9c1820: + * Implement alternate file parser solving the problems with group entry detection. + * Add new parse error error code + * Bool values read from a config file are not sanitzied, so we need to do that in the getBoolValueNum function, too. + * Only use ..d directories + * Release version 0.2.0 + * Add an explanation about this project. + * Check for NULL pointer arguments + * Fix error return value + * Fix typo in comment + * Add test case for reading login.defs with data from util-linux test suite + +------------------------------------------------------------------- +Mon Sep 02 13:18:01 UTC 2019 - kukuk@suse.de + +- Update to version 0.0.0+git20190902.dd17c11: + * Fix int64 variables on 32bit architectures + +------------------------------------------------------------------- +Sat Aug 31 18:28:13 UTC 2019 - kukuk@suse.de + +- Update to version 0.0.0+git20190831.fb7c1bb: + * Rewrite econf_readDirs - don't assume suffix is ".conf" - Read files and directories in correct order + +------------------------------------------------------------------- +Fri Aug 30 09:43:08 UTC 2019 - kukuk@suse.de + +- Update to version 0.0.0+git20190830.04ba053: + * Make clear that the API and ABI of the three functions econf_newIniFile, econf_newKeyFile, econf_writeFile are not stable yet. + * Fix getGroups argument types and add several test cases for this. + * Fix cppcheck and compiler warnings + +------------------------------------------------------------------- +Thu Aug 29 14:05:38 UTC 2019 - kukuk@suse.de + +- Update to version 0.0.0+git20190829.a1479b1: + * Make comment argument an array, so that we can support more than one comment character in the future. + * Change the API + * Fix size_t as return value of getc() + +------------------------------------------------------------------- +Thu Aug 29 10:53:04 UTC 2019 - kukuk@suse.de + +- Update to version 0.0.0+git20190829.209219e: + * Convert all functions to new error API + * Convert econf_newKeyFile provide the error via return code + +------------------------------------------------------------------- +Wed Aug 28 13:42:50 UTC 2019 - kukuk@suse.de + +- Update to version 0.0.0+git20190828.74eeb32: + * Fix tst-arguments3 and tst-arguments4 and only use error return code. + * Bug fixes for new API + * Change API of econf_get* and econf_set* functions to return error code direct. + * Fix some compiler warnings + * Prevent possible crash when parsing 0xFF + * Add "--enable-compiler-warnings" option to enable much more GCC compiler warnings + * Fix more cppcheck warnings + * Fix github actions build + * Update bin/Makefile.am to work with Asan + * Add missing tst-getconfdirs4-data to EXTRA_DIST + * Fix some cppcheck warnings + * Don't ignore getline return value + * Add free for getStringValue in tst-group1 + * Remove XFAIL for tst-groups1 + * Update example.c to free after getStringValue + * Add addbrackets for getValue functions + * tst-getconfdirs4: make sure, only a file in /etc/ and not in /usr/etc works, too. + +------------------------------------------------------------------- +Tue Aug 27 12:19:45 UTC 2019 - kukuk@suse.de + +- Update to version 0.0.0+git20190827.5ed5492: + * Mark all input char pointer as const in the official API + +------------------------------------------------------------------- +Tue Aug 27 11:49:42 UTC 2019 - kukuk@suse.de + +- Update to version 0.0.0+git20190827.b243e6c: + * getStringValueNum returns a newly allocated string or NULL in error case. + +------------------------------------------------------------------- +Tue Aug 27 09:47:12 UTC 2019 - kukuk@suse.de + +- Update to version 0.0.0+git20190827.8374759: + * Fix missing return + * Remove XFAIL for tst-setgetvalues1 + * Fix representation of float and double values + * Add preliminary test case for group handling + * NULL terminate string returned by addbrackets + * Fix addbrackets function + +------------------------------------------------------------------- +Mon Aug 26 19:09:25 UTC 2019 - kukuk@suse.de + +- Update to version 0.0.0+git20190826.99b6bf3: + * Add more "const". + * Fix setString and setBoolean + * Add test suite which sets and gets all possible kind of types. Some are failing, so mark this test as XFAIL. + * Start marking some string arguments/results as const + * Optimize some strdup away + * Mark econf_write_key_file as ALPHA as the API is not stable + +------------------------------------------------------------------- +Mon Aug 26 11:43:16 UTC 2019 - kukuk@suse.de + +- Update to version 0.0.0+git20190826.9e69003: + * Update ccpp.yml + * Add --enable-compiler-checks option to configure, enables AddressSanitizer + * Fix printf format directive + * Rework set*Value functions for error checking and error handling + * Add tst-getconfdirs3: verify we can load original file without local changes + * Error handling for econf_getGroups and econf_getKeys + * More errorreporting changes + * Fix make distcheck/don't mess around with libtool install/uninstall, this breaks to much other stuff. + * Autotools cleanup and fixes + * Fix logindefs1 test case + +------------------------------------------------------------------- +Fri Aug 23 18:56:13 UTC 2019 - kukuk@suse.de + +- Update to version 0.0.0+git20190823.09a8f2e: + * Fix buffer overlow of realpath + +------------------------------------------------------------------- +Fri Aug 23 15:58:37 UTC 2019 - kukuk@suse.de + +- Update to version 0.0.0+git20190823.acd8cdf: + * Update ccpp.yml + * Fix crash in strcmp, if strchr returns NULL + * Add error reporting to econf_merge_key_files and adjust the depending code. + * setStringValue return NULL on error/key not found + * Add framework for correct error reporting + * Disable searching through XDG dirs for now + * Add test cases for econf_get_conf_from_dirs + * Update comment setValue -> econf_setValue + * Update test cases to use econf_destroy + * Replace econf_afree with econf_destroy in example + * Add _generic macro to free memory of econf_ functions + * Add tst-merge2 to .gitignore + * Fix pointer arithmetic + * Adjust Makefiles and code to make "make distcheck" working + +------------------------------------------------------------------- +Thu Aug 22 19:33:21 UTC 2019 - kukuk@suse.de + +- Update to version 0.0.0+git20190822.bb9702b: + * Ignore /usr file if /etc exists when merging + * Add NULL value handling + * Update merge example + * Rework merge_functionality + * Use deep copies instead of pointers for merged files + * Replace [] with KEY_FILE_NULL_VALUE + * Refactor getfilecontent functions + * Remove cmake files + * Fix test cases + * Update libeconf.c + * Change License from LGPL-2.1 to MIT + * libeconf.pc should only be deleted on distclean, not normal clean + * Fix delim argument + * Add more test cases for login.defs and wrong arguments + * Link libeconf against libm, so that it is enough to link an application against libeconf and developers don't need to bother with other dependencies + * Add autogen.sh, which calls autoconf/automake/libtool in the correct order to create the configure script + +------------------------------------------------------------------- +Tue Aug 20 13:04:55 UTC 2019 - kukuk@suse.de + +- Update to version 0.0.0+git20190820.742af8c: + * Remove accidental .swp file + * Update example with conf.d directory + * Remove regex, replace with strchr(delim, ch) + * Add symbol versioning Don't ignore complete lib directory + * Include all headers in tar archive + * Don't define our own errno + * Remove wrong commit + * Add some basic tests + +------------------------------------------------------------------- +Tue Aug 20 12:59:47 UTC 2019 - kukuk@suse.de + +- Update to version 0.0.0+git20190807.7aedb57: + * Refactor getfilecontent functions + * Update example file + * Add econf prefix to public API functions + * Add cmake targets for debugging + * Fix build with cmake + * Fix build with autotools + * Move Key_File allocation from the stack to the heap + * Move Key_File create functions to libeconf.c + * Move destroy functions from helpers.c to libeconf.c + * Add macro to set supported types generic. + +------------------------------------------------------------------- +Sat Aug 17 11:53:48 UTC 2019 - Thorsten Kukuk + +- Initial version diff --git a/libeconf.spec b/libeconf.spec new file mode 100644 index 0000000..040f95a --- /dev/null +++ b/libeconf.spec @@ -0,0 +1,94 @@ +# +# spec file for package libeconf +# +# Copyright (c) 2024 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 lname libeconf0 +Name: libeconf +Version: 0.6.1 +Release: 0 +Summary: Enhanced config file parser ala systemd +License: LGPL-2.1-or-later +Group: Development/Libraries/C and C++ +URL: https://github.com/openSUSE/libeconf +Source: libeconf-%{version}.tar.xz +Source2: baselibs.conf +BuildRequires: meson +# for /usr/lib/rpm/pkgconfigdeps.sh +BuildRequires: pkgconfig + +%description +Enhanced config file parser, which merges config files placed +in several locations into one. + +%package -n %{lname} +Summary: Enhanced config file parser ala systemd +Group: Development/Libraries/C and C++ + +%description -n %{lname} +Enhanced config file parser, which merges config files placed +in several locations into one. + +%package devel +Summary: Development files for libeconf +Group: Development/Libraries/C and C++ +Requires: %{lname} = %{version} + +%description devel +This package contains all necessary include files and libraries needed +to develop applications that needs to read configuration files from +different locations. + +%package utils +Summary: Command line interface for libeconf +Group: System/Base +Requires: %{lname} = %{version} + +%description utils +This package contains tools for handling configuration files in e.g. /usr/etc +and /etc. + +%prep +%setup -q + +%build +%meson +%meson_build + +%install +%meson_install + +%check +%meson_test + +%post -n %{lname} -p /sbin/ldconfig +%postun -n %{lname} -p /sbin/ldconfig + +%files -n %{lname} +%license LICENSE +%{_libdir}/libeconf.so.* + +%files devel +%{_includedir}/*.h +%{_libdir}/libeconf.so +%{_libdir}/pkgconfig/libeconf.pc +%{_mandir}/man3/libeconf.3%{?ext_man} + +%files utils +%{_bindir}/econftool +%{_mandir}/man8/econftool.8%{?ext_man} + +%changelog diff --git a/python-libeconf.changes b/python-libeconf.changes new file mode 100644 index 0000000..93c8cae --- /dev/null +++ b/python-libeconf.changes @@ -0,0 +1,39 @@ +------------------------------------------------------------------- +Mon Jan 22 14:30:16 UTC 2024 - schubi@suse.com + +- Update to version 0.6.1: + * reading lines which have a length greater than BUFSIZE (#195) + * Improved data quote check in read_file (#193) + +------------------------------------------------------------------- +Mon Nov 13 07:55:36 UTC 2023 - Alberto Planas Dominguez + +- Do not requires the library for the documentation + +------------------------------------------------------------------ +Wed Nov 8 12:45:07 UTC 2023 - Alberto Planas Dominguez + +- Fix version comparison operator +- Remove explicit python3-base requirement + +------------------------------------------------------------------- +Fri Nov 03 16:44:38 UTC 2023 - schubi@suse.com + +- Update to version 1.1.1: + * Supporting Linux Userspace API (UAPI) Group + chapter "Configuration Files Specification". + See: https://uapi-group.org/specifications/specs/ + configuration_files_specification/ + +------------------------------------------------------------------- +Fri Nov 3 10:12:29 UTC 2023 - Alberto Planas Dominguez + +- Support only Python >= 3.10. PEP 604 is used for union types + +------------------------------------------------------------------- +Fri Oct 27 08:42:26 UTC 2023 - Nico Krapp + +- Version 1.1.0 + * Added tests + * Support all functions form libeconf 0.5.2 + * Bug fixes diff --git a/python-libeconf.spec b/python-libeconf.spec new file mode 100644 index 0000000..1b1c968 --- /dev/null +++ b/python-libeconf.spec @@ -0,0 +1,68 @@ +# +# spec file for package python-libeconf +# +# Copyright (c) 2024 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/ +# + + +%{?sle15_python_module_pythons} +%define skip_python39 1 +Name: python-libeconf +Version: 0.6.1 +Release: 0 +Summary: Python bindings for libeconf +License: LGPL-2.1-or-later +Group: Development/Languages/Python +URL: https://github.com/openSUSE/libeconf +Source: libeconf-%{version}.tar.xz +BuildArch: noarch +BuildRequires: %{python_module pip} +BuildRequires: %{python_module pytest} +BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module wheel} +BuildRequires: python-rpm-macros +Requires: libeconf0 = %{version} +Suggests: python-libeconf-doc = %{version} +%python_subpackages + +%description +Python bindings for libeconf + +%package -n python-libeconf-doc +Summary: Man page for python-libeconf + +%description -n python-libeconf-doc +Man page for python-lineconf + +%prep +%autosetup -n libeconf-%{version}/bindings/python3 + +%build +%pyproject_wheel + +%install +%pyproject_install +mkdir -p %{buildroot}/usr/share/man/man3 +cp docs/python-libeconf.3 %{buildroot}%{_mandir}/man3/ + +%files %python_files +%{python_sitelib} +# The cache is not always present +#pycache_only %{python_sitelib}/__pycache__ + +%files -n python-libeconf-doc +%defattr(-,root,root) +%{_mandir}/man3/*python-libeconf* + +%changelog