John Cupitt
94d3f93a46
add another low bitdepth png save test
2022-08-14 11:05:09 +01:00
John Cupitt
aa109f102d
Merge branch '8.13'
2022-08-14 10:31:09 +01:00
John Cupitt
ca2796aa7f
fix low-bitdepth spng save
...
There was a missing shift, thanks jeffska
See https://github.com/libvips/libvips/issues/2985
2022-08-14 10:26:24 +01:00
John Cupitt
c0637d9969
jp2ksave saves as jp2
...
Confusingly we previously saved jp2 images as a jpeg2000 codestream rather
than as a jp2 file.
See https://github.com/libvips/libvips/issues/2977
2022-08-11 16:49:40 +01:00
Felix Bünemann
c6214b4d47
Remove even pixel check for J2K subsample_mode auto ( #2975 )
...
Having a different colorspace and chroma subsampling just because the
source image happens to be an even or odd number of pixels is surprising
and hard to debug, so let's remove it.
2022-08-11 16:02:03 +01:00
John Cupitt
a928c9a885
a little more dbg output in heifsave
2022-08-11 10:30:23 +01:00
John Cupitt
d27dfbe55d
revise help text for loaders
...
Hopefully to make it clearer and more consistent.
See https://github.com/libvips/libvips/discussions/2982
2022-08-10 12:50:53 +01:00
John Cupitt
29e80ca43f
better 0 detection in unpremultiply
...
We were avoiding /0 by testing for alpha==0, however, this will still
allow very small values of alpha to generate +/- Inf. Instead, check for
abs(alpha)<epsilon.
Fixes some artifacts after unpremul.
2022-08-08 16:16:10 +01:00
John Cupitt
1482753c90
revise meson cheatsheet
2022-08-08 15:57:11 +01:00
John Cupitt
0f56b099d0
remove dbg
2022-08-05 09:14:28 +01:00
John Cupitt
34c17fc3e8
don't minimise after sink_screen expose
...
We were minimising at the end of threadpool_run, but this was being
called for each sinkscreen render pass, so we were throwing away the
display cache.
Instead, minimise after sink, sink_memory and sink_disc.
2022-08-05 09:12:13 +01:00
John Cupitt
7e961b4671
Merge branch '8.13'
2022-08-02 14:22:27 +01:00
Kleis Auke Wolthuizen
f43f7844a7
convf: bake the scale into the mask ( #2974 )
...
Similar to the vector path of vips_convi.
2022-08-02 14:21:07 +01:00
John Cupitt
2c4c039056
add "unlimited" to jpegload
...
To disable DoS limits for JPEG loading. Adding API on a stable branch is
bad, but this fixes a regression, so I think it's necessary,
unfortunately.
See https://github.com/libvips/libvips/issues/2973
2022-08-02 13:50:09 +01:00
Kleis Auke Wolthuizen
a6fa62605c
Cherry-pick a couple of Meson improvements to 8.13 ( #2968 )
...
* add a summary table at the end of configure
Copied from the old autotools summary. Sample clipped from "meson setup":
```
Program python3 found: YES (/usr/bin/python3)
Configuring variables.sh using configuration
Message:
*Build options
enable debug ......................: true
enable deprecated .................: true
enable modules ....................: true
enable gtk-doc ....................: true
enable doxygen ....................: false
enable introspection ..............: true
enable RAD load/save ..............: true
enable Analyze7 load/save .........: true
enable PPM load/save ..............: true
enable GIF load ...................: true
*Optional external packages
use fftw for FFTs .................: true
accelerate loops with ORC .........: true
ICC profile support with lcms .....: true
zlib ..............................: true
text rendering with pangocairo ....: true
font file support with fontcongfig : true
EXIF metadata support with libexif : true
*External image format libraries
JPEG load/save with libjpeg .......: true
JXL load/save with libjxl .........: false
JPEG2000 load/save with openjpeg ..: true
PNG load/save with libspng ........: false
PNG load/save with libpng .........: true
selected quantisation package .....: imagequant
TIFF load/save with libtiff .......: true
image pyramid save with libgsf ....: true
HEIC/AVIF load/save with libheif ..: true
WebP load/save with libwebp .......: true
PDF load with PDFium ..............: false
PDF load with poppler-glib ........: true
SVG load with librsvg .............: true
EXR load/save with openexr ........: true
OpenSlide load ....................: true
Matlab load with libmatio .........: true
NIfTI load/save with niftiio ......: true
FITS load/save with cfitsio .......: true
GIF save with cgif ................: true
selected Magick package ...........: MagickCore
Magick load/save ..................: true
Build targets in project: 53
...
```
* Meson: improve summary table (#2943 )
* Meson: improve summary table
* Fix typo
* Remove redundant whitespace
* Fix libpng fall-back when build with `-Dspng=disabled` (#2955 )
* Meson: simplify dynamic module handling (#2956 )
* Deduplicate `--vips-config` with the build summary (#2957 )
* Deduplicate `--vips-config` with the build summary
* Ensure output is identical
Helps parses.
* Fix summary when build with `-Dnifti=disabled` (#2963 )
* Update ChangeLog
Co-authored-by: John Cupitt <jcupitt@gmail.com>
2022-07-31 10:09:00 +01:00
Kleis Auke Wolthuizen
df80ded468
Fix summary when build with -Dnifti=disabled
( #2963 )
2022-07-30 19:23:51 +01:00
Kleis Auke Wolthuizen
4d5622c217
Simplify VIPS_CONFIG
definition ( #2964 )
2022-07-30 19:23:09 +01:00
Kleis Auke Wolthuizen
99f239b4a6
CI: remove redundant JOBS env ( #2967 )
...
ninja runs as many parallel jobs as there are available CPU cores
by default. So, there's no need to set this environment variable.
2022-07-30 19:22:42 +01:00
Kleis Auke Wolthuizen
3f95543c2c
Allow to modify/create EXIF GPS* tags ( #2966 )
...
* Allow to modify/create EXIF GPS* tags
Make `tag_is_ascii` aware of the EXIF GPS* ASCII tags that are
available since libexif 0.6.23.
See: https://github.com/lovell/sharp/issues/2767
* Add tests
2022-07-30 19:21:54 +01:00
John Cupitt
8c71424e9a
version bump
...
and changelog update
2022-07-30 12:37:30 +01:00
John Cupitt
d17fd9b640
fix matlab block test
2022-07-30 12:36:56 +01:00
Kleis Auke Wolthuizen
cf97ea3ea1
Deduplicate --vips-config
with the build summary ( #2957 )
...
* Deduplicate `--vips-config` with the build summary
* Ensure output is identical
Helps parses.
2022-07-29 11:09:51 +01:00
Kleis Auke Wolthuizen
f132acf94a
doc: remove non-existent headers ( #2962 )
...
These pre-generated headers were removed in commit 0577039
.
2022-07-29 11:08:44 +01:00
Kleis Auke Wolthuizen
a24b556b26
Meson: simplify dynamic module handling ( #2956 )
2022-07-28 15:10:13 +01:00
Kleis Auke Wolthuizen
45bcd74a7a
Fix libpng fall-back when build with -Dspng=disabled
( #2955 )
2022-07-28 14:37:12 +01:00
Kleis Auke Wolthuizen
673a593161
test: remove TestIofuncs::test_split7
( #2954 )
...
See: https://github.com/libvips/pyvips/pull/341
2022-07-28 12:37:35 +01:00
Kleis Auke Wolthuizen
1679115432
Regenerate POTFILES.in ( #2951 )
2022-07-27 13:34:20 +01:00
John Cupitt
d17fa04a5d
AUTHORS can go too
2022-07-27 11:24:24 +01:00
John Cupitt
8b1679e138
NEWS is no longer needed
2022-07-27 11:23:20 +01:00
John Cupitt
c920f86517
remove THANKS file
...
since github tracks this automatically now
2022-07-27 11:20:41 +01:00
Kleis Auke Wolthuizen
057703938e
Remove remnant of Autotools ( #2950 )
...
* Remove `glib-mkenums` autotools templates and generated files
Meson uses the `enumtypes.c.in` and `enumtypes.h.in` in
`libvips/include/vips` and doesn't use the pre-generated
files.
* Remove man files for no longer existing tools
+ update the `meson.build`.
* Remove Autotools section in `.gitignore`
* Remove `po/messages` left-over
* Remove `g-ir-scanner` entry point
No longer needed by Meson.
* Remove `glib-genmarshal` generated files
Meson doesn't use these pre-generated files.
* Remove Autotools specific Git attributes
* Remove no longer existing tools in `.gitignore`
* Remove Make specific things in `.gitignore`
* Rename COPYING to LICENSE
* Remove no longer needed `.gitignore` sections
Meson only supports out-of-tree builds. This assumes that the
build directory is ignored.
* Remove no longer needed `.editorconfig` sections
2022-07-27 10:56:56 +01:00
Kleis Auke Wolthuizen
b808cba14a
Remove unneeded adapter function for Emscripten ( #2949 )
...
The `*_class_intern_init` functions have already been patched within
wasm-vips to include the missing `class_data` member, so this adapter
function was not needed.
2022-07-27 09:14:12 +01:00
John Cupitt
95970d0f40
ignore TAGS
2022-07-27 09:11:01 +01:00
John Cupitt
d3021c2775
Merge branch '8.13'
2022-07-27 09:09:12 +01:00
Kleis Auke Wolthuizen
a68eb00fbe
Meson: bump version to 8.13.1 ( #2948 )
...
Also, increment revision in the Autotools build.
2022-07-27 09:08:07 +01:00
John Cupitt
87fbafaebe
Merge branch '8.13'
2022-07-26 12:21:45 +01:00
John Cupitt
5e93ac43ac
bump 8.13 version
2022-07-26 12:20:43 +01:00
Kleis Auke Wolthuizen
8b4ef8bdfc
Fix detection of ImportImagePixels
and ImagesToBlob
for IM7 ( #2944 )
...
ImageMagick 7.x uses the `<MagickCore/MagickCore.h>` include
directive instead of `<magick/api.h>`.
2022-07-24 18:04:46 +01:00
John Cupitt
ffe13810fb
Remove cruft ( #2942 )
...
* remove autotools
It seems to all work. I tested with gtk-doc enabled. I probably missed a
few things argh.
* remove some old cruft
* oop, forgot m4/
* remove version check
since we no longer have a wrapper script
2022-07-24 11:18:30 +01:00
John Cupitt
538aa2a841
remove autotools ( #2941 )
...
* remove autotools
It seems to all work. I tested with gtk-doc enabled. I probably missed a
few things argh.
* oop, forgot m4/
2022-07-24 11:14:52 +01:00
Kleis Auke Wolthuizen
7010903538
Meson: improve summary table ( #2943 )
...
* Meson: improve summary table
* Fix typo
* Remove redundant whitespace
2022-07-24 11:06:40 +01:00
John Cupitt
c439d5e5d9
add a summary table at the end of configure
...
Copied from the old autotools summary. Sample clipped from "meson setup":
```
Program python3 found: YES (/usr/bin/python3)
Configuring variables.sh using configuration
Message:
*Build options
enable debug ......................: true
enable deprecated .................: true
enable modules ....................: true
enable gtk-doc ....................: true
enable doxygen ....................: false
enable introspection ..............: true
enable RAD load/save ..............: true
enable Analyze7 load/save .........: true
enable PPM load/save ..............: true
enable GIF load ...................: true
*Optional external packages
use fftw for FFTs .................: true
accelerate loops with ORC .........: true
ICC profile support with lcms .....: true
zlib ..............................: true
text rendering with pangocairo ....: true
font file support with fontcongfig : true
EXIF metadata support with libexif : true
*External image format libraries
JPEG load/save with libjpeg .......: true
JXL load/save with libjxl .........: false
JPEG2000 load/save with openjpeg ..: true
PNG load/save with libspng ........: false
PNG load/save with libpng .........: true
selected quantisation package .....: imagequant
TIFF load/save with libtiff .......: true
image pyramid save with libgsf ....: true
HEIC/AVIF load/save with libheif ..: true
WebP load/save with libwebp .......: true
PDF load with PDFium ..............: false
PDF load with poppler-glib ........: true
SVG load with librsvg .............: true
EXR load/save with openexr ........: true
OpenSlide load ....................: true
Matlab load with libmatio .........: true
NIfTI load/save with niftiio ......: true
FITS load/save with cfitsio .......: true
GIF save with cgif ................: true
selected Magick package ...........: MagickCore
Magick load/save ..................: true
Build targets in project: 53
...
```
2022-07-23 12:51:09 +01:00
Kleis Auke Wolthuizen
e93f56c8bb
Simplify/modernize vips_crop_get_type()
( #2940 )
2022-07-23 10:14:03 +01:00
Kleis Auke Wolthuizen
a846de017d
CI: fix macOS build ( #2938 )
...
The GLib utilities, including `glib-mkenums`, is split into its own
`glib-utils` formula, see:
https://github.com/Homebrew/homebrew-core/pull/103916
2022-07-22 15:34:17 +01:00
Kleis Auke Wolthuizen
a498680094
Update glib-mkenums
templates ( #2939 )
...
* Avoid writing the full path in enumtypes.h
Helps reproducible builds, as build paths can vary between builds.
* Use g_intern_static_string() for enum/flags type names
We are emitting a static string, so use that shortcut function to
intern it, which will save one allocation.
* Use g_once_init_enter/leave to register enum/flags type names
This is the more modern way, and ensures thread-safety.
2022-07-22 15:33:40 +01:00
Kleis Auke Wolthuizen
fa6c034b32
Link the main library with -Wl,-z,nodelete
to prevent unloading ( #2934 )
...
See: https://github.com/libvips/php-vips-ext/pull/44
2022-07-20 10:20:09 +01:00
John Cupitt
57fff0fe2b
don't check ADLER32 checksums on libpng load
...
can be rather chatty, and even cause loops on some libpng versions
see https://github.com/libvips/libvips/discussions/2930
2022-07-16 17:18:39 +01:00
Kleis Auke Wolthuizen
d546c81fa3
Fix dzsave_target
for ZIP output ( #2927 )
2022-07-15 19:39:56 +01:00
Lovell Fuller
1bf1a32f2c
pngsave: Change default row filter from 'all' to 'none' ( #2929 )
...
as this is usually faster and produces a smaller file size
2022-07-15 19:20:42 +01:00
Kleis Auke Wolthuizen
a69e61a6d0
Meson: remove redundant --no-undefined
link argument ( #2918 )
...
This is already controlled by the `b_lundef` built-in option, which defaults to `true`.
2022-07-12 12:34:22 +01:00