From d191b3100f850e84880aebb044cacdc4093c3136 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Fri, 6 Jun 2025 09:41:43 +0200 Subject: update to 8.17.0 raise dependency on libjxl 0.7.0 raise dependency on libopenslide 3.4.0 raise dependency on libheif 1.7.0 switch to gi-docgen for API documentation --- compat_reports/8.16.1_to_8.17.0/compat_report.html | 1526 ++++++++++++++++++++ .../8.16.1_to_8.17.0/compat_report.html | 1342 +++++++++++++++++ libvips-cpp.xml | 2 +- libvips.xml | 2 +- vips.spec | 78 +- 5 files changed, 2924 insertions(+), 26 deletions(-) create mode 100644 compat_reports/8.16.1_to_8.17.0/compat_report.html create mode 100644 compat_reports_cpp/8.16.1_to_8.17.0/compat_report.html diff --git a/compat_reports/8.16.1_to_8.17.0/compat_report.html b/compat_reports/8.16.1_to_8.17.0/compat_report.html new file mode 100644 index 0000000..49f0b04 --- /dev/null +++ b/compat_reports/8.16.1_to_8.17.0/compat_report.html @@ -0,0 +1,1526 @@ + + + + + + + + + +libvips: 8.16.1 to 8.17.0 compatibility report + + + +

API compatibility report for the libvips library between 8.16.1 and 8.17.0 versions on x86_64

+ +
+
+ Binary
Compatibility
+ Source
Compatibility
+
+

Test Info


+ + + + + + + +
Library Namelibvips
Version #18.16.1
Version #28.17.0
Archx86_64
GCC Version14
SubjectBinary Compatibility
+

Test Results


+ + + + + + +
Total Header Files1
Total Libraries1
Total Symbols / Types1643 / 256
Compatibility100%
+

Problem Summary


+ + + + + + + + + + +
SeverityCount
Added Symbols-8
Removed SymbolsHigh0
Problems with
Data Types
High0
Medium0
Low7
Problems with
Symbols
High0
Medium0
Low3
Problems with
Constants
Low2
Other Changes
in Data Types
-1
+ +

Added Symbols  8 


+enumtypes.h, libvips.so.42.19.0
+vips_foreign_coding_get_type ( )
+vips_foreign_saveable_get_type ( )
+
+foreign.h, libvips.so.42.19.0
+vips_fitsload_source ( VipsSource* source, VipsImage** out, ... )
+vips_ppmload_buffer ( void* buf, size_t len, VipsImage** out, ... )
+
+image.h, libvips.so.42.19.0
+vips_image_eval ( VipsImage* image, guint64 processed )
+vips_image_posteval ( VipsImage* image )
+vips_image_preeval ( VipsImage* image )
+
+mosaicing.h, libvips.so.42.19.0
+vips_matrixmultiply ( VipsImage* left, VipsImage* right, VipsImage** out, ... )
+
+to the top
+ +

Problems with Data Types, Low Severity  7 


+colour.h
+ +[+] enum VipsIntent  1  +
+ + +
+image.h
+ +[+] struct _VipsImage  2  +
+ + +
+semaphore.h
+ +[+] struct VipsSemaphore  2  +
+ + +
+type.h
+ +[+] struct _VipsArea  2  +
+ + +
+to the top
+ +

Problems with Symbols, Low Severity  3 


+connection.h, libvips.so.42.18.1
+ +[+] vips_source_new_from_memory ( void const* data, size_t size )  1  +
+ + +[+] vips_source_read ( VipsSource* source, void* data, size_t length )  1  +
+ + +[+] vips_target_new_temp ( VipsTarget* target )  1  +
+ +
+to the top
+ +

Problems with Constants, Low Severity  2 


+version.h
+ +[+] VIPS_LIBRARY_AGE +
+ + + +[+] VIPS_LIBRARY_CURRENT +
+ + +
+to the top
+ +

Other Changes in Data Types  1 


+colour.h
+ +[+] enum VipsIntent  1  +
+ + +
+to the top
+

Header Files  1 


+
+vips.h
+
+
to the top
+

Libraries  1 


+
+libvips.so.42.18.1
+
+
to the top
+


+

Test Info


+ + + + + + +
Library Namelibvips
Version #18.16.1
Version #28.17.0
Archx86_64
SubjectSource Compatibility
+

Test Results


+ + + + + + +
Total Header Files1
Total Libraries1
Total Symbols / Types1801 / 262
Compatibility67.4%
+

Problem Summary


+ + + + + + + + + + + + +
SeverityCount
Added Symbols-8
Removed SymbolsHigh32
Problems with
Data Types
High0
Medium3
Low3
Problems with
Symbols
High0
Medium0
Low0
Problems with
Constants
Low11
Other Changes
in Data Types
-2
Other Changes
in Symbols
-3
Other Changes
in Constants
-3
+ +

Added Symbols  8 


+enumtypes.h
+vips_foreign_coding_get_type ( )
+vips_foreign_saveable_get_type ( )
+
+foreign.h
+vips_fitsload_source ( VipsSource* source, VipsImage** out, ... )
+vips_ppmload_buffer ( void* buf, size_t len, VipsImage** out, ... )
+
+image.h
+vips_image_eval ( VipsImage* image, guint64 processed )
+vips_image_posteval ( VipsImage* image )
+vips_image_preeval ( VipsImage* image )
+
+mosaicing.h
+vips_matrixmultiply ( VipsImage* left, VipsImage* right, VipsImage** out, ... )
+
+to the top
+

Removed Symbols  32 


+colour.h
+vips_CMC2XYZ ( VipsImage* in, VipsImage** out, ... )
+vips_Yxy2Lab ( VipsImage* in, VipsImage** out, ... )
+
+gate.h
+vips__thread_profile_attach ( char const* thread_name )
+vips__thread_profile_detach ( )
+vips__thread_profile_stop ( )
+
+private.h
+vips__meta_init ( )
+
+thread.h
+vips_threadset_free ( VipsThreadset* set )
+vips_threadset_new ( int max_threads )
+vips_threadset_run ( VipsThreadset* set, char const* domain, GFunc func, gpointer data )
+
+util.h
+vips__change_suffix ( char const* name, char* out, int mx, char const* new_suff, char const** olds, int nolds )
+vips__fgetc ( FILE* fp )
+vips__file_read_name ( char const* name, char const* fallback_dir, size_t* length_out )
+vips__file_write ( void* data, size_t size, size_t nmemb, FILE* stream )
+vips__find_rightmost_brackets ( char const* p )
+vips__fopen ( char const* filename, char const* mode )
+vips__ftruncate ( int fd, gint64 pos )
+vips__get_iso8601 ( )
+vips__gslist_gvalue_copy ( GSList const* list )
+vips__gslist_gvalue_free ( GSList* list )
+vips__gslist_gvalue_get ( GSList const* list )
+vips__gslist_gvalue_merge ( GSList* a, GSList const* b )
+vips__gvalue_ref_string_new ( char const* text )
+vips__icc_dir ( )
+vips__open_read ( char const* filename )
+vips__random ( guint32 seed )
+vips__random_add ( guint32 seed, int value )
+vips__seek_no_error ( int fd, gint64 pos, int whence )
+vips__token_must ( char const* buffer, enum VipsToken* token, char* string, int size )
+vips__token_need ( char const* buffer, enum VipsToken need_token, char* string, int size )
+vips__token_segment ( char const* p, enum VipsToken* token, char* string, int size )
+vips__token_segment_need ( char const* p, enum VipsToken need_token, char* string, int size )
+vips__windows_prefix ( )
+
+to the top
+ +

Problems with Data Types, Medium Severity  3 


+image.h
+ +[+] struct _VipsImage  1  +
+ + +
+semaphore.h
+ +[+] struct VipsSemaphore  1  +
+ + +
+type.h
+ +[+] struct _VipsArea  1  +
+ + +
+to the top
+ +

Problems with Data Types, Low Severity  3 


+image.h
+ +[+] struct _VipsImage  1  +
+ + +
+semaphore.h
+ +[+] struct VipsSemaphore  1  +
+ + +
+type.h
+ +[+] struct _VipsArea  1  +
+ + +
+to the top
+ +

Problems with Constants, Low Severity  11 


+version.h
+ +[+] VIPS_CONFIG +
+ + + +[+] VIPS_LIBRARY_AGE +
+ + + +[+] VIPS_LIBRARY_CURRENT +
+ + + +[+] VIPS_LIBRARY_REVISION +
+ + + +[+] VIPS_MICRO_VERSION +
+ + + +[+] VIPS_MINOR_VERSION +
+ + + +[+] VIPS_VERSION +
+ + + +[+] VIPS_VERSION_STRING +
+ + +
+vips7compat.h
+ +[+] IM_MICRO_VERSION +
+ + + +[+] IM_MINOR_VERSION +
+ + + +[+] IM_VERSION_STRING +
+ + +
+to the top
+ +

Other Changes in Data Types  2 


+colour.h
+ +[+] enum VipsIntent  2  +
+ + +
+to the top
+ +

Other Changes in Symbols  3 


+connection.h
+ +[+] vips_source_new_from_memory ( void const* data, size_t size )  1  +
+ + +[+] vips_source_read ( VipsSource* source, void* data, size_t length )  1  +
+ + +[+] vips_target_new_temp ( VipsTarget* target )  1  +
+ +
+to the top
+ +

Other Changes in Constants  3 


+basic.h
+ +[+] VIPS_DEPRECATED_MACRO +
+ + +
+enumtypes.h
+ +[+] VIPS_TYPE_FOREIGN_CODING +
+ + + +[+] VIPS_TYPE_FOREIGN_SAVEABLE +
+ + +
+to the top
+

Header Files  1 


+
+vips.h
+
+
to the top
+

Libraries  1 


+
+libvips.so.42.18.1
+
+
to the top
+



+ +
+ + diff --git a/compat_reports_cpp/8.16.1_to_8.17.0/compat_report.html b/compat_reports_cpp/8.16.1_to_8.17.0/compat_report.html new file mode 100644 index 0000000..cffddfb --- /dev/null +++ b/compat_reports_cpp/8.16.1_to_8.17.0/compat_report.html @@ -0,0 +1,1342 @@ + + + + + + + + + +libvips-cpp: 8.16.1 to 8.17.0 compatibility report + + + +

API compatibility report for the libvips-cpp library between 8.16.1 and 8.17.0 versions on x86_64

+ +
+
+ Binary
Compatibility
+ Source
Compatibility
+
+

Test Info


+ + + + + + + +
Library Namelibvips-cpp
Version #18.16.1
Version #28.17.0
Archx86_64
GCC Version14
SubjectBinary Compatibility
+

Test Results


+ + + + + + +
Total Header Files1
Total Libraries1
Total Symbols / Types382 / 66
Compatibility100%
+

Problem Summary


+ + + + + + + + + +
SeverityCount
Added Symbols-3
Removed SymbolsHigh0
Problems with
Data Types
High0
Medium0
Low2
Problems with
Symbols
High0
Medium0
Low0
Problems with
Constants
Low2
+ +

Added Symbols  3 


+VImage8.h, libvips-cpp.so.42.19.0
+namespace vips
+ +VImage::matrixmultiply ( struct VImage right, struct VOption* options ) const +
+ + + +VImage::ppmload_buffer ( VipsBlob* buffer, struct VOption* options ) [static] +
+ + + +VImage::remosaic ( char const* old_str, char const* new_str, struct VOption* options ) const +
+ + +
+to the top
+ +

Problems with Data Types, Low Severity  2 


+type.h
+ +[+] struct _VipsArea  2  +
+ + +
+to the top
+ +

Problems with Constants, Low Severity  2 


+version.h
+ +[+] VIPS_LIBRARY_AGE +
+ + + +[+] VIPS_LIBRARY_CURRENT +
+ + +
+to the top
+

Header Files  1 


+
+vips8
+
+
to the top
+

Libraries  1 


+
+libvips-cpp.so.42.18.1
+
+
to the top
+


+

Test Info


+ + + + + + +
Library Namelibvips-cpp
Version #18.16.1
Version #28.17.0
Archx86_64
SubjectSource Compatibility
+

Test Results


+ + + + + + +
Total Header Files1
Total Libraries1
Total Symbols / Types2358 / 281
Compatibility74.3%
+

Problem Summary


+ + + + + + + + + + + + +
SeverityCount
Added Symbols-11
Removed SymbolsHigh32
Problems with
Data Types
High0
Medium3
Low3
Problems with
Symbols
High0
Medium0
Low0
Problems with
Constants
Low11
Other Changes
in Data Types
-2
Other Changes
in Symbols
-3
Other Changes
in Constants
-3
+ +

Added Symbols  11 


+enumtypes.h
+vips_foreign_coding_get_type ( )
+vips_foreign_saveable_get_type ( )
+
+foreign.h
+vips_fitsload_source ( VipsSource* source, VipsImage** out, ... )
+vips_ppmload_buffer ( void* buf, size_t len, VipsImage** out, ... )
+
+image.h
+vips_image_eval ( VipsImage* image, guint64 processed )
+vips_image_posteval ( VipsImage* image )
+vips_image_preeval ( VipsImage* image )
+
+mosaicing.h
+vips_matrixmultiply ( VipsImage* left, VipsImage* right, VipsImage** out, ... )
+
+VImage8.h
+namespace vips
+ +VImage::matrixmultiply ( struct VImage right, struct VOption* options ) const +
+ + + +VImage::ppmload_buffer ( VipsBlob* buffer, struct VOption* options ) [static] +
+ + + +VImage::remosaic ( char const* old_str, char const* new_str, struct VOption* options ) const +
+ + +
+to the top
+

Removed Symbols  32 


+colour.h
+vips_CMC2XYZ ( VipsImage* in, VipsImage** out, ... )
+vips_Yxy2Lab ( VipsImage* in, VipsImage** out, ... )
+
+gate.h
+vips__thread_profile_attach ( char const* thread_name )
+vips__thread_profile_detach ( )
+vips__thread_profile_stop ( )
+
+private.h
+vips__meta_init ( )
+
+thread.h
+vips_threadset_free ( VipsThreadset* set )
+vips_threadset_new ( int max_threads )
+vips_threadset_run ( VipsThreadset* set, char const* domain, GFunc func, gpointer data )
+
+util.h
+vips__change_suffix ( char const* name, char* out, int mx, char const* new_suff, char const** olds, int nolds )
+vips__fgetc ( FILE* fp )
+vips__file_read_name ( char const* name, char const* fallback_dir, size_t* length_out )
+vips__file_write ( void* data, size_t size, size_t nmemb, FILE* stream )
+vips__find_rightmost_brackets ( char const* p )
+vips__fopen ( char const* filename, char const* mode )
+vips__ftruncate ( int fd, gint64 pos )
+vips__get_iso8601 ( )
+vips__gslist_gvalue_copy ( GSList const* list )
+vips__gslist_gvalue_free ( GSList* list )
+vips__gslist_gvalue_get ( GSList const* list )
+vips__gslist_gvalue_merge ( GSList* a, GSList const* b )
+vips__gvalue_ref_string_new ( char const* text )
+vips__icc_dir ( )
+vips__open_read ( char const* filename )
+vips__random ( guint32 seed )
+vips__random_add ( guint32 seed, int value )
+vips__seek_no_error ( int fd, gint64 pos, int whence )
+vips__token_must ( char const* buffer, enum VipsToken* token, char* string, int size )
+vips__token_need ( char const* buffer, enum VipsToken need_token, char* string, int size )
+vips__token_segment ( char const* p, enum VipsToken* token, char* string, int size )
+vips__token_segment_need ( char const* p, enum VipsToken need_token, char* string, int size )
+vips__windows_prefix ( )
+
+to the top
+ +

Problems with Data Types, Medium Severity  3 


+image.h
+ +[+] struct _VipsImage  1  +
+ + +
+semaphore.h
+ +[+] struct VipsSemaphore  1  +
+ + +
+type.h
+ +[+] struct _VipsArea  1  +
+ + +
+to the top
+ +

Problems with Data Types, Low Severity  3 


+image.h
+ +[+] struct _VipsImage  1  +
+ + +
+semaphore.h
+ +[+] struct VipsSemaphore  1  +
+ + +
+type.h
+ +[+] struct _VipsArea  1  +
+ + +
+to the top
+ +

Problems with Constants, Low Severity  11 


+version.h
+ +[+] VIPS_CONFIG +
+ + + +[+] VIPS_LIBRARY_AGE +
+ + + +[+] VIPS_LIBRARY_CURRENT +
+ + + +[+] VIPS_LIBRARY_REVISION +
+ + + +[+] VIPS_MICRO_VERSION +
+ + + +[+] VIPS_MINOR_VERSION +
+ + + +[+] VIPS_VERSION +
+ + + +[+] VIPS_VERSION_STRING +
+ + +
+vips7compat.h
+ +[+] IM_MICRO_VERSION +
+ + + +[+] IM_MINOR_VERSION +
+ + + +[+] IM_VERSION_STRING +
+ + +
+to the top
+ +

Other Changes in Data Types  2 


+colour.h
+ +[+] enum VipsIntent  2  +
+ + +
+to the top
+ +

Other Changes in Symbols  3 


+connection.h
+ +[+] vips_source_new_from_memory ( void const* data, size_t size )  1  +
+ + +[+] vips_source_read ( VipsSource* source, void* data, size_t length )  1  +
+ + +[+] vips_target_new_temp ( VipsTarget* target )  1  +
+ +
+to the top
+ +

Other Changes in Constants  3 


+basic.h
+ +[+] VIPS_DEPRECATED_MACRO +
+ + +
+enumtypes.h
+ +[+] VIPS_TYPE_FOREIGN_CODING +
+ + + +[+] VIPS_TYPE_FOREIGN_SAVEABLE +
+ + +
+to the top
+

Header Files  1 


+
+vips8
+
+
to the top
+

Libraries  1 


+
+libvips-cpp.so.42.18.1
+
+
to the top
+



+ +
+ + diff --git a/libvips-cpp.xml b/libvips-cpp.xml index d4ca59a..cd60f32 100644 --- a/libvips-cpp.xml +++ b/libvips-cpp.xml @@ -9,7 +9,7 @@ -8.16.1 +8.17.0 diff --git a/libvips.xml b/libvips.xml index 0756092..311e826 100644 --- a/libvips.xml +++ b/libvips.xml @@ -9,7 +9,7 @@ -8.16.1 +8.17.0 diff --git a/vips.spec b/vips.spec index ea3c0c4..19f2f5b 100644 --- a/vips.spec +++ b/vips.spec @@ -7,8 +7,8 @@ # # Please preserve changelog entries # -%global vips_version_base 8.16 -%global vips_version %{vips_version_base}.1 +%global vips_version_base 8.17 +%global vips_version %{vips_version_base}.0 %global vips_soname_major 42 #global vips_prever rc2 %global vips_tagver %{vips_version}%{?vips_prever:-%{vips_prever}} @@ -21,7 +21,12 @@ %bcond_without im7 %bcond_with gm -%bcond_without doc +%if 0%{?fedora} || 0%{?rhel} >= 9 +%bcond_without gidocgen +%else +%bcond_with gidocgen +%endif +%bcond_without doxygen %bcond_without cplusplus %bcond_without matio %bcond_without libimagequant @@ -59,7 +64,7 @@ %bcond_without tests -%if 0%{?fedora} >= 34 || 0%{?rhel} >= 9 +%if 0%{?fedora} >= 37 || 0%{?rhel} >= 8 %bcond_without jxl %else %bcond_with jxl @@ -83,7 +88,8 @@ Source0: https://github.com/libvips/libvips/releases/download/v%{vips_tag BuildRequires: gcc BuildRequires: gcc-c++ -BuildRequires: meson >= 0.55 +# see https://github.com/libvips/libvips/issues/4558 +BuildRequires: meson >= 0.58 BuildRequires: pkgconfig BuildRequires: gettext BuildRequires: pkgconfig(glib-2.0) @@ -184,8 +190,7 @@ Obsoletes: vips-full-devel < 8.11 %description devel The %{name}-devel package contains the header files and -libraries necessary for developing programs using VIPS. It also -contains a C++ API and development documentation. +libraries necessary for developing programs using VIPS. %package tools @@ -197,23 +202,27 @@ Obsoletes: vips-full-tools < 8.11 The %{name}-tools package contains command-line tools for working with VIPS. -%if %{with doc} %package doc Summary: Documentation for %{name} -BuildRequires: gtk-doc +BuildArch: noarch +%if %{with gidocgen} +BuildRequires: gi-docgen +%endif +%if %{with doxygen} BuildRequires: doxygen +%endif Conflicts: %{name} < %{version}-%{release}, %{name} > %{version}-%{release} Obsoletes: vips-full-doc < 8.11 %description doc -The %{name}-doc package contains extensive documentation about VIPS in both -HTML and PDF formats. -%endif +The %{name}-doc package contains extensive documentation about VIPS +and its C++ API. + %if %{with jxl} %package jxl Summary: JPEG XL support for %{name} -BuildRequires: pkgconfig(libjxl) >= 0.6 +BuildRequires: pkgconfig(libjxl) >= 0.7 Requires: %{name}%{?_isa} = %{version}-%{release} Supplements: %{name} @@ -224,7 +233,7 @@ The %{name}-jxl package contains the jxl module for VIPS, providing JPEG XL. %if %{with heif} %package heif Summary: Heif support for %{name} -BuildRequires: pkgconfig(libheif) >= 1.4.0 +BuildRequires: pkgconfig(libheif) >= 1.7.0 %if 0%{?fedora} >= 37 || 0%{?rhel} >= 9 # x265 HEVC encoder from RPMFusion Recommends: libheif-freeworld%{?_isa} @@ -239,7 +248,7 @@ support. %package openslide Summary: OpenSlide support for %{name} -BuildRequires: pkgconfig(openslide) >= 3.3.0 +BuildRequires: pkgconfig(openslide) >= 3.4.0 Requires: %{name}%{?_isa} = %{version}-%{release} %description openslide @@ -319,6 +328,18 @@ exit 1 %setup -q -n vips-%{vips_version} +cat << 'EOF' | tee DOC_README +Online Documentation + +API reference and tools documentation + + https://www.libvips.org/API/8.17/ + +C++ documentation + + https://www.libvips.org/API/8.17/cpp/ +EOF + %build # Upstream recommends enabling auto-vectorization of inner loops: @@ -358,9 +379,11 @@ export CXXFLAGS="%{optflags} -ftree-vectorize" %else -Dnifti-prefix-dir=/usr \ %endif -%if %{with doc} - -Ddoxygen=true \ - -Dgtk_doc=true \ +%if %{with doxygen} + -Dcpp-docs=true \ +%endif +%if %{with gidocgen} + -Ddocs=true \ %endif %if %{with cplusplus} -Dcplusplus=true \ @@ -413,15 +436,15 @@ export CXXFLAGS="%{optflags} -ftree-vectorize" %{_mandir}/man1/* -%if %{with doc} %files doc -%{_datadir}/gtk-doc -%if %{with cplusplus} -%{_docdir}/vips-doc/html -%endif %license LICENSE +%doc DOC_README +%if %{with gidocgen} +%{_docdir}/vips +%endif +%if %{with doxygen} +%{_docdir}/vips-cpp %endif - %files openslide %{_libdir}/vips-modules-%{vips_version_base}/vips-openslide.so @@ -456,6 +479,13 @@ export CXXFLAGS="%{optflags} -ftree-vectorize" %changelog +* Fri Jun 6 2025 Remi Collet - 8.17.0-1 +- update to 8.17.0 +- raise dependency on libjxl 0.7.0 +- raise dependency on libopenslide 3.4.0 +- raise dependency on libheif 1.7.0 +- switch to gi-docgen for API documentation + * Thu Mar 13 2025 Remi Collet - 8.16.1-1 - update to 8.16.1 -- cgit