Sync from SUSE:SLFO:Main libxmlb revision bbec675fe583d32ef2ecacc02e2d288e

This commit is contained in:
Adrian Schröter 2024-05-03 16:12:16 +02:00
commit 9c186bb253
5 changed files with 342 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -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

2
baselibs.conf Normal file
View File

@ -0,0 +1,2 @@
libxmlb2
targettype 32bit block!

BIN
libxmlb-0.3.14.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

186
libxmlb.changes Normal file
View File

@ -0,0 +1,186 @@
-------------------------------------------------------------------
Tue Oct 10 08:03:30 UTC 2023 - Dominique Leuenberger <dimstar@opensuse.org>
- baselibs.conf: don't build libxmlb2-32bit; baselibs.conf was
added for the x86-64-v3 flavor; the -32bit was an unintended side
effect.
-------------------------------------------------------------------
Tue Oct 3 22:31:17 UTC 2023 - Christophe Marin <christophe@krop.fr>
- Update to 0.3.14
* Fix comparing indexed text with integer values
- Enable libstemmer-devel BuildRequires and pass stemmer=true to
meson setup, libstemmer now available in Tumbleweed.
- Use ldconfig_scriptlets macro for post(un) handling.
-------------------------------------------------------------------
Fri Aug 18 17:20:43 UTC 2023 - Enrico Belleri <kilgore.trout@idesmi.eu>
- Update to 0.3.13:
* Use indexes when binding value
* Correctly tokenize when using a bound text value
* Ensure tokens are all NULL when using xb_opcode_init()
* Avoid building errors and debug strings when possible to make
XbQuery faster
* Fix content type detection on macOS
* Inline a number of machine internals to make queries faster
* Make zstd support optional
* Setup various release build options
-------------------------------------------------------------------
Thu Apr 27 22:24:36 UTC 2023 - Dirk Müller <dmueller@suse.com>
- update to 0.3.11:
* Add limited support for XPath 1.0 'in' (Richard Hughes)
* Add support for zstd (Richard Hughes)
* Do not assert() when decompressing invalid LZMA (Richard
Hughes)
-------------------------------------------------------------------
Fri Dec 16 17:02:37 UTC 2022 - Dirk Müller <dmueller@suse.com>
- build hwcaps optimized libraries
-------------------------------------------------------------------
Sat Oct 1 11:12:48 UTC 2022 - Dirk Müller <dmueller@suse.com>
- update to 0.3.10:
* Fix dumping and exporting multiple files from the CLI (Richard Hughes)
* Watch files before loading them into the builder (Philip Withnall)
* Fix potential double free when filtering by language (Sergio Costas Rodriguez)
-------------------------------------------------------------------
Fri Jul 22 21:52:44 UTC 2022 - Dirk Müller <dmueller@suse.com>
- update to 0.3.9:
* Fix the crash for when the root tree has no children (Richard Hughes)
* Fix the crash when getting the element for the [empty] root (Richard Hughes)
* Install xb-tool into bindir (Richard Hughes)
* Ensure reproducible results when importing a node (Richard Hughes)
* Ignore all hidden files when using _WATCH_DIRECTORY (Richard Hughes)
* Show the value bindings when using XB_SILO_PROFILE_FLAG_XPATH (Richard Hughes)
* Use the correct lookup method for the python3 script interpreter (Eli Schwartz)
-------------------------------------------------------------------
Wed Dec 22 12:07:22 UTC 2021 - Callum Farmer <gmbr3@opensuse.org>
- Update to version 0.3.6:
- Add support for LZMA decompression
- Add locking for file monitors
- Modernise property declaration
- Add iterator for XbNode attributes and children
- Put tail after the node when exporting XbBuilderNode
- Ensure _IS_TOKENIZED is set if tokens are added manually
- Ensure we never add too many tokens to the silo
- Remove the G_ALIGNOF checks to fix compile with old GLib
versions
- Use the correct pkgconfig export package name in the GIR file
- Add pkgconfig(liblzma) BuildRequires: new dependency.
-------------------------------------------------------------------
Sat Oct 3 14:59:13 UTC 2020 - Dirk Mueller <dmueller@suse.com>
- update to 0.2.1:
- Do not assume g_content_type_guess() always returns valid results (Richard Hughes)
- Make the build reproducible (Richard Hughes)
- Revert "Do not show a critical warning for invalid XML" (Richard Hughes)
- Update the header location to reflect the new API (Richard Hughes)
- This release breaks API and ABI and bumps the version of libxmlb.so and so
packages that depend on this library (e.g. fwupd or gnome-software) will need
to be rebuilt at the same time.
- Add the missing TEXT:INTE XPath support (Richard Hughes)
- Add variant of xb_silo_query_with_root() avoiding XbNode creation (Philip Withnall)
- Add XB_BUILDER_SOURCE_FLAG_WATCH_DIRECTORY flag (Philip Withnall)
- Allow specifying the node cache behaviour for the query (Richard Hughes)
- Avoid recursion when setting flags if possible (Philip Withnall)
- Avoid using weak pointers when building the silo (Philip Withnall)
- Change the default value for the node cache (Richard Hughes)
- Do not allocate opcodes individually (Philip Withnall)
- Do not show a critical warning for invalid XML (Richard Hughes)
- Do not unconditionally create GTimer objects (Philip Withnall)
- Do not use the node cache when building indexes (Richard Hughes)
- Lazy load more arrays to reduce RSS usage (Philip Withnall)
- Report silo versions when versions mismatch (Robert Ancell)
-------------------------------------------------------------------
Fri Jul 10 19:11:47 UTC 2020 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 0.1.15:
+ New Features:
- Add xb_builder_source_add_simple_adapter.
- Allow reversing the query results.
- Changes from version 0.1.14:
+ New Features: Add MinGW Windows 64 builds to CI.
+ Bugfixes:
- Allow compiling without gio-unix.
- Do not use libuuid.
- Do not unconditionally use -fstack-protector-strong.
- Ignore adaptors added with xb_builder_source_add_converter().
- Drop pkgconfig(uuid) BuildRequires: No longer needed.
- Move installed-tests to devel subpackage.
-------------------------------------------------------------------
Wed Nov 13 09:50:26 UTC 2019 - Gary Ching-Pang Lin <glin@suse.com>
- Update to version 0.1.13:
+ New Features:
- Export xb_silo_query_full()
+ Bugfixes:
- Show the XPath that was used in the query in the error
message
- Changes from version 0.1.12:
+ New Features:
- Add helper functions to get the first and last child
XbBuilerNode
- Add xb_node_transmogrify to allow changing XML format
- Support 'tail' XML data in the stored silo
+ Bugfixes:
- Do not escape a single quote with &apos;
- Don't invalidate the silo for a GIO temp file
- Fix up two memory leaks if using libxmlb from an introspected
binding
-------------------------------------------------------------------
Fri Sep 20 12:07:24 UTC 2019 - ecsos@opensuse.org
- Update to version 0.1.11:
+ New Features:
- Add xb_node_query_first_full() convenience helper
- Rebuild the XbMachine parser to support 'and' and 'or'
predicates.
- Verify we never break the ABI.
+ Bugfixes:
- Conditionalize installation of test data.
- Generate a GUID of zero for no silo data.
- Run CI jobs in parallel.
- Changes from version 0.1.10:
+ Bugfixes:
- Do not mistake gzipped files as being application/x-zerosize
content type.
- Fix running the installed tests with no checkout directory.
- Changes from version 0.1.9:
+ Bugfixes: Correctly implement building a silo with _SINGLE_LANG
set.
- Add python-setuptools BuildRequires: New dependency.
-------------------------------------------------------------------
Tue Apr 16 17:03:51 UTC 2019 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 0.1.8:
+ New Features: Add some installed tests.
+ Bugfixes: Always add all children when importing parent-less
XML data.
- Changes from version 0.1.7:
+ New Features:
- Add XB_BUILDER_COMPILE_FLAG_IGNORE_GUID.
- Allow nesting XbBuilderSource content type handlers.
+ Bugfixes:
- Correct return type for xb_builder_compile().
- Increase the amount of time for the inotify event to happen.
- Only run the speed tests when using '-m perf'.
-------------------------------------------------------------------
Thu Jan 10 09:32:08 UTC 2019 - bjorn.lie@gmail.com
- Initial packaging for openSUSE, version 0.1.6.

128
libxmlb.spec Normal file
View File

@ -0,0 +1,128 @@
#
# spec file for package libxmlb
#
# Copyright (c) 2023 SUSE LLC
# Copyright (c) 2019 Bjørn Lie, Bryne, Norway.
#
# 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 2
Name: libxmlb
Version: 0.3.14
Release: 0
Summary: Library for querying compressed XML metadata
License: LGPL-2.1-or-later
Group: Development/Libraries/Other
URL: https://github.com/hughsie/libxmlb
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
Source9: baselibs.conf
BuildRequires: %{python_module setuptools}
BuildRequires: libstemmer-devel
BuildRequires: meson >= 0.47.0
BuildRequires: pkgconfig
BuildRequires: pkgconfig(gio-2.0) >= 2.45.8
BuildRequires: pkgconfig(gobject-introspection-1.0)
BuildRequires: pkgconfig(gtk-doc)
BuildRequires: pkgconfig(liblzma)
BuildRequires: pkgconfig(libzstd)
# Needed for the self tests
BuildRequires: pkgconfig(shared-mime-info)
%{?suse_build_hwcaps_libs}
%description
XML is slow to parse and strings inside the document cannot be
memory mapped as they do not have a trailing NUL char. The libxmlb
library takes XML source, and converts it to a structured binary
representation with a deduplicated string table -- where the
strings have the NULs included.
This allows an application to mmap the binary XML file, do an XPath
query and return some strings without actually parsing the entire
document. This is all done using (almost) zero allocations and no
actual copying of the binary data.
%package -n %{name}%{sover}
Summary: Library for querying compressed XML metadata
Group: System/Libraries
%description -n %{name}%{sover}
This package provides the shared library for %{name}.
%package -n typelib-1_0-Xmlb-1_0
Summary: Introspection bindings for %{name}
Group: System/Libraries
%description -n typelib-1_0-Xmlb-1_0
This package provides the GObject Introspection bindings for
%{name}.
%package -n xmlb-tool
Summary: Optional tool for %{name}
Group: Development/Libraries/Other
%description -n xmlb-tool
This package provides the optional xb-tool for %{name}.
%package devel
Summary: Development package for %{name}
Group: Development/Libraries/Other
Requires: %{name}%{sover} = %{version}
Requires: typelib-1_0-Xmlb-1_0 = %{version}
Requires: xmlb-tool = %{version}
%description devel
Files for development with %{name}.
%prep
%autosetup -p1
%build
%meson \
-Dgtkdoc=true \
-Dintrospection=true \
-Dtests=true \
-Dstemmer=true \
%{nil}
%meson_build
%check
%meson_test
%install
%meson_install
%ldconfig_scriptlets -n %{name}%{sover}
%files -n %{name}%{sover}
%license LICENSE
%{_libdir}/%{name}.so.%{sover}*
%files -n typelib-1_0-Xmlb-1_0
%{_libdir}/girepository-1.0/*.typelib
%files -n xmlb-tool
%doc README.md NEWS
%{_bindir}/xb-tool
%{_mandir}/man1/xb-tool.1%{?ext_man}
%files devel
%doc %{_datadir}/gtk-doc/html/%{name}
%{_datadir}/gir-1.0/*.gir
%{_includedir}/%{name}-%{sover}/
%{_libdir}/%{name}.so
%{_libdir}/pkgconfig/xmlb.pc
%{_libexecdir}/installed-tests/
%{_datadir}/installed-tests/
%changelog