John Cupitt
58b6d73a70
deprecate vips_popen()
...
it didn't work well on win, and we no longer use it anyway
2020-07-27 15:21:59 +01:00
Kleis Auke Wolthuizen
9226303b1c
Add missing vips7 compat wrappers
...
For im_{lr,tb}mosaic and im_correl.
2020-07-13 15:38:09 +02:00
John Cupitt
e728e5638d
Merge pull request #1697 from kleisauke/wasm-function-pointers
...
Support for use in WASM environments (#192 )
2020-07-03 02:09:39 +01:00
John Cupitt
3c071a8ebb
more the rest of mosaicing into private API
...
chkpair, lr|tbmosaic, etc.
2020-07-02 12:35:37 +01:00
John Cupitt
0803de07e7
move vips__lr|tbmerge to private API
2020-07-01 17:31:25 +01:00
Kleis Auke Wolthuizen
9246094033
Fix function pointer cast issues
...
It is undefined behavior in C and C++ to cast a function pointer
to another type and call it that way. This does work in most native
platforms, however, despite it being UB, but in WASM it can fail.
See:
https://emscripten.org/docs/porting/guidelines/function_pointer_issues.html
2020-06-30 13:35:41 +02:00
Kleis Auke Wolthuizen
c3da8ee583
Convert the mosaicing directory to vips8
2020-06-18 14:36:46 +02:00
Kleis Auke Wolthuizen
8a5dc95fb6
Convert the morphology directory to vips8
2020-06-18 14:29:42 +02:00
John Cupitt
981d5c4b16
revise autorot system
...
- deprecate vips_autorot_get_angle() since orientation is no longer a
simple rotate
- add vips_image_get_orientation() and vips_image_get_orientation_swap()
- revise tiff and jpeg loader autorotate to just call vips_autorot(),
but only if necessary
- revise thumbnail autorotate too
2020-06-06 17:25:46 +01:00
John Cupitt
dc29f8dde6
add subifd select to tiff load
2020-05-28 12:40:31 +01:00
John Cupitt
9ef8b55218
better handling of short files in vips7 compat
...
the sniffer could read beyond the end of the file sometimes
2020-03-04 17:38:41 +00:00
John Cupitt
fe47ce12e9
move csvsave to the new target API
2020-02-21 17:57:28 +00:00
John Cupitt
63d54e5df2
final code cleanups after stream -> source rename
2019-12-30 14:23:51 +00:00
John Cupitt
252996e3ff
make check passes after stream -> source rename
2019-12-30 12:48:20 +00:00
John Cupitt
119dd2cb72
pytest passes again after stream -> source/target
2019-12-29 23:08:33 +00:00
John Cupitt
4c5873809f
experiment with renaming stream
...
rename as VipsConnection, VipsSource, VipsTarget etc.
see https://github.com/libvips/libvips/issues/1494#issuecomment-569498619
renamed with this script:
```
set -e
edit() {
sed -i -E "$1" rename
}
for i in $*; do
cp $i rename
edit s/VIPS_STREAMOU/VIPS_TARGET_CUSTOM/g
edit s/VIPS_STREAMO/VIPS_TARGET/g
edit s/VIPS_STREAMIU/VIPS_SOURCE_CUSTOM/g
edit s/VIPS_STREAMI/VIPS_SOURCE/g
edit s/VIPS_STREAM/VIPS_CONNECTION/g
edit s/vips_streamou/vips_target_custom/g
edit s/vips_streamo/vips_target/g
edit s/vips_streamiu/vips_source_custom/g
edit s/vips_streami/vips_source/g
edit s/vips_stream/vips_connection/g
edit s/VipsStreamou/VipsTargetCustom/g
edit s/VipsStreamo/VipsTarget/g
edit s/VipsStreamiu/VipsSourceCustom/g
edit s/VipsStreami/VipsSource/g
edit s/VipsStream/VipsConnection/g
# eg. VIPS_TYPE_STREAM or VIPS_IS_STREAM
edit "s/VIPS_([A-Z]+)_STREAMOU/VIPS_\1_TARGET_CUSTOM/g"
edit "s/VIPS_([A-Z]+)_STREAMO/VIPS_\1_TARGET/g"
edit "s/VIPS_([A-Z]+)_STREAMIU/VIPS_\1_SOURCE_CUSTOM/g"
edit "s/VIPS_([A-Z]+)_STREAMI/VIPS_\1_SOURCE/g"
edit "s/VIPS_([A-Z]+)_STREAM/VIPS_\1_CONNECTION/g"
edit s/streamou/target_custom/g
edit s/streamo/target/g
edit s/streamiu/source_custom/g
edit s/streami/source/g
# various identifiers which also change
edit s/is_a_stream/is_a_source/g
edit s/find_load_stream/find_load_source/g
edit s/find_save_stream/find_save_target/g
edit s/new_from_stream/new_from_source/g
edit s/write_to_stream/write_to_target/g
edit s/vips_thumbnail_stream/vips_thumbnail_source/g
# eg. vips_webpload_stream
edit "s/vips_([a-z]+)load_stream/vips_\1load_source/g"
# eg. vips_webpsave_stream
edit "s/vips_([a-z]+)save_stream/vips_\1save_target/g"
mv rename $i
done
```
2019-12-29 21:40:21 +00:00
John Cupitt
562da3e5ab
rename new_from_filename as new_from_file
...
So VipsStreami matches VipsImage. Same for new_to_filename.
2019-11-22 17:13:20 +00:00
John Cupitt
f5a4f41edf
rename VipsStream* variables
...
The convention is now:
VipStreami *streami;
We had `input` in many places, a left-over from the old VipStreamInput
name.
2019-11-11 09:09:34 +00:00
John Cupitt
ee3270f8e9
more refactoring
2019-10-22 11:08:54 +01:00
John Cupitt
226819b8a8
move tiffload to streams
...
test_descriptors seems to fail now though, odd
2019-10-17 10:58:56 +01:00
John Cupitt
98410042ac
add webpload stream
...
webp uses the new VipsStreamInput mmap interface
2019-10-15 15:46:37 +01:00
John Cupitt
1bdadeed61
add png stream load
2019-10-14 18:03:45 +01:00
John Cupitt
6c1d7db31b
remove old jpeg load stuff
...
it's just stream now
works on buffer, but seems to fail on
vipsheader йцук.jpg
curiously
2019-10-11 09:43:12 +01:00
John Cupitt
2ab5aa7bf5
fix a used-before-set error in im_vips2dz
...
we were reading an uninited string in a vips7 compatibility wrapper, thanks
yifengchen-cc
see https://github.com/libvips/libvips/issues/1419
2019-09-03 13:17:18 +01:00
John Cupitt
4af242b599
fix travis compiler warnings
...
- older libpng don't have consts decls for some set/get funcs
- use g_ascii_strcasecmp() on program text strings (instead of strcasecmp)
2019-02-20 12:49:59 +00:00
John Cupitt
e106e1d100
add n/page params to webpload
...
and renumber all optional load args
2018-11-01 20:43:07 +00:00
John Cupitt
5623bb1330
add a nifti wrapper for vips7
...
so nip2 can now load nifti images
2018-09-10 14:35:49 +01:00
John Cupitt
b7bac0d88d
fix vips7 split on empty filename
...
a "" filename in vips7 compat mode could trigger a read beyond the end of
the string
see https://github.com/jcupitt/libvips/issues/1040
2018-07-23 18:50:53 +01:00
John Cupitt
b085908558
remove vips7 stuff from API
...
You must now include vips7 support explicitly with
#include <vips/vips7compat.h>
in your code just after including `vips.h`.
The old vips7 names, such as `Rect`, were starting to cause problems
with other packages like opencv.
2018-05-16 15:08:21 +01:00
John Cupitt
f1f2a9de55
fix a warning if tiff is disabled
2018-04-10 15:14:09 +01:00
John Cupitt
34970d0cf2
remove some casts
...
and use VIPS_AREA instead
2017-07-26 14:57:27 +01:00
John Cupitt
cbd9fad040
fix a few more problems with input args
...
a few other operators were modifying input args and messing up caching
2017-05-29 18:58:24 +01:00
John Cupitt
3019e5966b
vips_conv*() default to float
...
we had INT as the default, but this will cause serious precision loss
with many masks ... instead, have float (always correct) as the default
and let people turn on int if they cn
2017-05-08 13:28:23 +01:00
John Cupitt
d5a706e47e
better behaviour for truncated PNG files
...
truncated PNG files failed with an error, even if --fail was not set ...
instead, just warn, and only error out if fail is on
see https://github.com/jcupitt/libvips/issues/629
2017-03-30 17:13:25 +01:00
John Cupitt
0a5375b6cd
Merge branch 'master' into remove-seq-stalling
2017-03-15 12:26:44 +00:00
John Cupitt
51f96ce9af
argh revert the arg order change
...
we need to patch bindings instead
2017-03-13 08:24:06 +00:00
John Cupitt
507212e3d8
Merge branch 'master' into remove-seq-stalling
2017-03-08 09:30:48 +00:00
John Cupitt
205fb817e8
change three C API funcs to match Python/C++/CLI
...
vips_math2_const(), vips_boolean_const() and vips_relational_const() had
the const and oper args reversed from the Python/CLI/C++ API
add something to check for arg priority conflicts and resolve the
conflicts it found
2017-03-07 14:28:31 +00:00
John Cupitt
362c7efdfc
argh reapply seq removal
2017-03-06 11:55:38 +00:00
John Cupitt
98f5421c10
Revert "remove readbehind"
...
This reverts commit cb83918a3f
.
2017-02-27 10:24:56 +00:00
John Cupitt
cb83918a3f
remove readbehind
2017-02-21 17:14:33 +00:00
John Cupitt
3f92cfc935
oops, don't copy header fields
...
in prev commit
2017-02-20 13:42:19 +00:00
John Cupitt
abf6a250c2
fix wrapmany compat
...
it was not setting reorder hints, then failing on recomp
the nip2 display control bar was broken by this, for example
2017-02-20 13:32:12 +00:00
John Cupitt
61d9f03ef8
tiny fixes
2017-01-24 11:02:40 +00:00
John Cupitt
6b325145e4
use new hints and prepare everywhere
2017-01-12 14:36:44 +00:00
John Cupitt
07e6ac1994
support --vips-info
...
now turns on glib g_info() output
2017-01-04 07:23:50 +00:00
John Cupitt
2be0b97dce
switch to g_warning()_/g_info()
...
we had vips_warn() and vips_info(), but they are a bit crappy ... switch
to g_warning() and g_info() instead
see https://github.com/jcupitt/libvips/issues/544
2017-01-03 15:52:27 +00:00
John Cupitt
6e26e317e0
update magick6 loader
...
now supports page/n/page-height
2016-11-25 14:46:46 +00:00
John Cupitt
3ef6a4695a
start adding read many page support
...
but it's not easy ... we'll need to be very strict about every page
being identical if we want to share readers
2016-11-15 10:07:09 +00:00
John Cupitt
bb0a6643f9
move @fail from jpegload into the base load class
...
and add fail support to csv and openslide
see https://github.com/jcupitt/libvips/issues/546
2016-11-12 15:33:35 +00:00