15
0
forked from pool/python-exiv2

- Update to 0.17.5

* Binary wheels incorporate libexiv2 v0.28.7
- from version 0.17.4
  * Binary wheels incorporate libexiv2 v0.28.5

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-exiv2?expand=0&rev=38
This commit is contained in:
2025-09-26 08:50:23 +00:00
committed by Git OBS Bridge
commit 0aa118524e
7 changed files with 289 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

1
.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
.osc

3
0.17.3.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ced6be2245fca6c787426eca43708f6b544c02f2075dc5becc9fd620bfc5ce4a
size 1670412

3
0.17.5.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:010bdd36015658117afd94139253b67827a02a542d8973abeaf57a1c2a65deea
size 1671016

174
python-exiv2.changes Normal file
View File

@@ -0,0 +1,174 @@
-------------------------------------------------------------------
Fri Sep 26 06:51:44 UTC 2025 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to 0.17.5
* Binary wheels incorporate libexiv2 v0.28.7
- from version 0.17.4
* Binary wheels incorporate libexiv2 v0.28.5
-------------------------------------------------------------------
Mon Feb 24 10:47:20 UTC 2025 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to 0.17.3
* Binary wheels incorporate libexiv2 v0.28.5.
-------------------------------------------------------------------
Wed Feb 19 07:49:10 UTC 2025 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to 0.17.2
* Binary wheels incorporate libexiv2 v0.28.4.
* Fix TimeValue test when run with local negative UTC offset.
-------------------------------------------------------------------
Mon Nov 25 23:34:32 UTC 2024 - Matej Cepl <mcepl@cepl.eu>
- Fix building
- Enable tests
- Add skip_network_tests.patch to mark network-requiring tests
and skip them
-------------------------------------------------------------------
Sun Nov 24 09:33:03 UTC 2024 - Joshua Smith <smolsheep@opensuse.org>
- Update to 0.17.1:
* Update README and INSTALL docs
* Allow linux libdir name to be 'lib64' or 'lib'
* Test localised exception with non-ASCII characters
- Updates from 0.17.0:
* API change: derived classes of BasicIo are omitted from Python.
* enableBMFF() function is deprecated.
* Documentation is available on
https://python-exiv2.readthedocs.io/
- Updates from 0.16.2:
* Removed AnyError alias of Exiv2Error exception.
* Metadatum.print() method is no longer renamed to _print.
* Improved handling of enums:
* Enum results are returned as Python enum instead of int.
* Passing ints as enum parameters is deprecated.
* Added dict-like behaviour to "data" structs.
* Log handlers can be set/cleared from Python.
* SWIG v4.1.0 or later required to run SWIG.
- Updates from 0.16.0:
* Include native language support in Windows binary wheel builds.
* API change: DateValue.getDate() returns Python dict.
* API change: TimeValue.getTime() returns Python dict.
* Deprecated: exiv2.Date and exiv2.Time objects.
* Added buffer interface to PreviewImage
* Set datum value from Python object directly instead of via
string.
* Moved Position enum to BasicIo class.
* Moved CharsetId enum to CommentValue class.
* Moved XmpArrayType and XmpStruct enums to XmpValue class.
* Added enums for LogMsg.Level
* More exiv2 structs are iterable for easy conversion to Python
dict.
- Updates from 0.15.0:
* Added __version_tuple__ for easy runtime version testing.
* exiv2.testVersion() can be called from Python.
* exiv2.DataBuf can be created from Python data.
* Most data() methods return a Python memoryview.
* exiv2.DataBuf and exiv2.BasicIo have writeable Python buffer
interface.
-------------------------------------------------------------------
Wed Oct 11 15:14:43 UTC 2023 - Ondřej Súkup <mimi.vx@gmail.com>
- fix files section
-------------------------------------------------------------------
Wed Oct 11 09:53:14 UTC 2023 - Matej Cepl <mcepl@cepl.eu>
- Update to 0.14.1:
- Added enums for XmpStruct and XmpArrayType
- Added method for copy-free access to XmpTextValue raw data.
- Fix occasional segfault with Image.io() of in-memory image
data.
- Add data() method to access Exiv2::StringValueBase raw bytes.
- Enable video support in binary wheels.
- Automatically cast Exiv2::Value return values to correct
type.
- Exiv2::byte* return values are converted to a simple buffer
object.
- Deprecated some superseded features. Use 'python -Wd' when
testing.
- Exiv2's Date & Time structs can be used from Python.
- Removed Value.downCast methods deprecated in v0.7.0.
- Reduced probability of segfaults by keeping references to
other objects.
- Fix iterator bug introduced in v0.10.0. (Issue #7.)
- Remove now superfluous py3exiv2-link-boost.patch
-------------------------------------------------------------------
Thu Oct 5 11:22:05 UTC 2023 - Matej Cepl <mcepl@cepl.eu>
- Update to 0.12.0
- Fix bug #2027823 (Compilation errors with exiv2-0.28)
- Remove the exiv2_0-28-0.patch patch again.
-------------------------------------------------------------------
Thu Aug 10 21:33:24 UTC 2023 - Matej Cepl <mcepl@suse.com>
- Update to 0.12.3:
- upstream doesn't release proper changelog
-------------------------------------------------------------------
Fri Aug 4 23:06:13 UTC 2023 - Matej Cepl <mcepl@suse.com>
- Add exiv2_0-28-0.patch making the package compatible with the
latest exiv2 0.28 (lp#2027823).
-------------------------------------------------------------------
Thu Oct 13 17:56:29 UTC 2022 - Axel Braun <axel.braun@gmx.de>
- version 0.11.0
no changelog
-------------------------------------------------------------------
Thu Jul 8 17:14:26 UTC 2021 - Andreas Schneider <asn@cryptomilk.org>
- Update to version 0.9.3
* Add support for tag Xmp.mwg-rs.Regions/mwg-rs:
-------------------------------------------------------------------
Tue Oct 20 06:39:52 UTC 2020 - Andreas Schneider <asn@cryptomilk.org>
- Update to version 0.8.0
* Add XmpSeq support
* Add a datetime conversion to Python with iso format, update some unittests
- Added py3exiv2-link-boost.patch
-------------------------------------------------------------------
Tue Jul 2 14:47:21 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
- Update to 0.7.1:
* Various fixes to work with new exiv releases
-------------------------------------------------------------------
Mon Apr 8 19:10:25 UTC 2019 - Andreas Schneider <asn@cryptomilk.org>
- Update to version 0.6.1
* Add the streaming of the preview data
-------------------------------------------------------------------
Thu Jan 31 14:57:44 UTC 2019 - Andreas Schneider <asn@cryptomilk.org>
- Update to version 0.5.0
* Several fixes for exiv2-0.27
- Removed exiv2-1.0.27.patch (fixed upstream)
-------------------------------------------------------------------
Tue Jan 29 11:22:25 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
- Add patch to build with latest exiv2 releases:
* exiv2-1.0.27.patch
-------------------------------------------------------------------
Thu Jun 28 09:38:11 UTC 2018 - asn@cryptomilk.org
- Update to version 0.3.0
* Add some convenient functions
-------------------------------------------------------------------
Sun May 6 07:55:37 UTC 2018 - asn@cryptomilk.org
- Initial package

71
python-exiv2.spec Normal file
View File

@@ -0,0 +1,71 @@
#
# spec file for package python-exiv2
#
# Copyright (c) 2025 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}
Name: python-exiv2
Version: 0.17.5
Release: 0
Summary: Python3 bindings for the exiv2 library
License: GPL-3.0-only
Group: Development/Languages/Python
URL: https://github.com/jim-easterbrook/python-exiv2
Source: https://github.com/jim-easterbrook/python-exiv2/archive/refs/tags/%{version}.tar.gz
# PATCH-FIX-UPSTREAM skip_network_tests.patch bsc#[0-9]+ mcepl@suse.com
# this patch makes things totally awesome
Patch0: skip_network_tests.patch
BuildRequires: %{python_module devel}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: gcc-c++
BuildRequires: libboost_python3-devel
BuildRequires: pkgconfig
BuildRequires: python-rpm-macros
BuildRequires: pkgconfig(exiv2)
%python_subpackages
%description
python3-exiv2 is a Python 3 binding to exiv2, the C++ library for manipulation
of EXIF, IPTC and XMP image metadata. It is a python 3 module that allows your
scripts to read and write metadata (EXIF, IPTC, XMP, thumbnails) embedded in
image files (JPEG, TIFF, ...).
It is designed as a high-level interface to the functionalities offered by
libexiv2. Using pythons built-in data types and standard modules, it provides
easy manipulation of image metadata.
%prep
%autosetup -p1
%build
%pyproject_wheel
%install
%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitearch}
%check
export NONET=1
%pyunittest_arch discover -v tests/
%files %{python_files}
%{python_sitearch}/exiv2
%{python_sitearch}/exiv2-%{version}*-info
%changelog

14
skip_network_tests.patch Normal file
View File

@@ -0,0 +1,14 @@
---
tests/test_basicio.py | 1 +
1 file changed, 1 insertion(+)
--- a/tests/test_basicio.py
+++ b/tests/test_basicio.py
@@ -33,6 +33,7 @@ class TestBasicIoModule(unittest.TestCas
cls.image_path = os.path.join(test_dir, 'image_02.jpg')
cls.data = b'The quick brown fox jumps over the lazy dog'
+ @unittest.skipIf('NONET' in os.environ, 'Requires network access')
@unittest.skipUnless(exiv2.versionInfo()['EXV_USE_CURL'],
'CurlIo not included')
def test_CurlIo(self):