Changes:
Sun, 17 Feb 2019 08:41:53 +0100 Daniel Friesel <derf+feh@finalrewind.org>
* Releasev v3.1.3
* Fix missing filename in ~/.fehbg when using --no-xinerama on a feh
binary compiled with xinerama=1. This issue was introduced in v3.1.2.
Mon, 11 Feb 2019 17:24:13 +0100 Daniel Friesel <derf+feh@finalrewind.org>
* Release v3.1.2
* Fix missing filenames in ~/.fehbg when using --bg-* on directories and/or
with --randomize
* Fix repeated --slideshow-delay/-D option not properly overriding the
'start paused' flag
* Fix repeated --info option not properly overriding the 'draw info' flag
Fri, 07 Dec 2018 22:51:15 +0100 Daniel Friesel <derf+feh@finalrewind.org>
* Release v3.1.1
* Decrease libcurl timeout from indefinite to 30 minutes. This should
be sufficient even for use cases with unusually high timeouts (just in
case anyone wants to do interplanetary slideshows), while at the same
time avoiding stalls in unattended slideshows when encountering
temporary network issues.
* Handle SIGINT/SIGTERM/SIGQUIT signals while loading images using libcurl.
Previously, signals were ignored during a (possibly slow) libcurl
network transfer, which was not intended behaviour.
Wed, 21 Nov 2018 19:37:34 +0100 Daniel Friesel <derf+feh@finalrewind.org>
* Release v3.1
* Running "feh --start-at .../file.jpg" without specifying images,
directories or filelists to load is now equivalent to running
"feh --start-at .../file.jpg $(dirname .../file.jpg)". This way, it is
possible to view a specific file and browse all other files in the
corresponding directory. This is especially useful when starting feh
from file managers.
* Introduce fuzzy matching in --start-at: If the specified path is not
found in the file list, feh now resorts to comparing basenames (i.e.,
file names without the directory components). This allows calls
like "feh --start-at cat.jpg ~/Pictures", which led to a file not found
error in previous versions.
* Respect -j / --output-dir when using save_image or save_filelist actions.
Fri, 09 Nov 2018 17:17:15 +0100 Daniel Friesel <derf+feh@finalrewind.org>
* Release v3.0
* Remove deprecated webcam scripts (feh-cam and gen-cam-menu)
* Remove deprecated collage mode (-c/--collage)
* Remove deprecated option --cycle-once (use --on-last-slide=quit instead)
* Remove deprecated option --menu-bg
* Change default save_filelist key from "f" to "L" (mnemonic: fileList)
* Change default toggle_fullscreen key from "v" to "f" as this is also
used by mplayer, mpv and similar
* flip and rotation (keys "<", ">", "|", and "_") no longer change the
underlying file. This leaves delete ("Ctrl+Delete") as the only
destructive action which is enabled by default
* Add option --edit, which makes flip and rotation change the underlying
file as well as the displayed image. This was the default behaviour in
feh 1.x and 2.x
Sat, 27 Oct 2018 19:46:48 +0200 Daniel Friesel <derf+feh@finalrewind.org>
* Release v2.28.1
* Do not ignore quit signals (SIGTERM, SIGINT, SIGQUIT) during preload
* Add missing EXIF orientations 2, 4, 5, and 7 (when built with exif=1,
patch by Olof-Joachim Frahm)
* Improve randomness on non-glibc systems
Mon, 17 Sep 2018 21:17:04 +0200 Daniel Friesel <derf+feh@finalrewind.org>
* Release v2.28
* Decrease loading time for RAW images by utilizing dcraw to display the
embedded JPEG preview (patch by <https://github.com/ulteq>)
* Rename --magick-timeout to --conversion-timeout. --magick-timeout is
now deprecated and will be removed in a future release
* Fix unintened aliasing in rotated images whose rotation is not a
multiple of 90 degrees (patch by <https://github.com/ulteq>)
* New option: --on-last-slide=hold|quit|resume.
hold will cause feh to stop advancing beyond the last slide (patch by
<https://github.com/ulteq>), quit replaces --cycle-once (which is now
deprecated), and resume is the default (continue at the first image).
Tue, 17 Jul 2018 17:33:10 +0200 Daniel Friesel <derf+feh@finalrewind.org>
* Release v2.27.1
* Fix feh occasionally becoming unresponsive when asked to terminate
via SIGINT/SIGQUIT/SIGTERM (based on a patch by
<https://github.com/giladogit>)
* Fix --keep-zoom-vp issues introduced in 2.27
(patch by <https://github.com/ulteq>)
Thu, 28 Jun 2018 17:26:54 +0200 Daniel Friesel <derf+feh@finalrewind.org>
* Release v2.27
* Fix size_to_image ("w") command when both --scale-down and --keep-zoom-vp
are enabled
* Fix --auto-zoom not being triggered on window resize events when
--scale-down is enabled
* Fix --auto-zoom conflicting with manual zoom
* Fix feh_draw_checks not taking the zoom level into account properly
* Prevent --zoom <percent> from blocking --scale-down in fullscreen / fixed
geometry mode
* Prevent --keep-zoom-vp from blocking the dynamic window resizing
mechanism
* Prevent automatic recalculation of the zoom ratio when --keep_zoom_vp
is enabled
* All patches provided by <https://github.com/ulteq>. Thanks a lot!
Tue, 26 Jun 2018 10:33:04 +0200 Daniel Friesel <derf+feh@finalrewind.org>
* Release v2.26.4
* Correctly save --bg-max in ~/.fehbg (patch by Sebastian Bickerle)
Fri, 18 May 2018 22:58:02 +0200 Daniel Friesel <derf+feh@finalrewind.org>
* Release v2.26.3
* Properly escape --image-bg argument in ~/.fehbg (broken in 2.26.1)
Sat, 12 May 2018 16:33:56 +0200 Daniel Friesel <derf+feh@finalrewind.org>
* Release v2.26.2
* Show correct filelist position in windows opened from thumbnail mode.
Note that navigation is still not supported in those windows
* Improve support for key input from stdin
* Do not push menus off the screen when hitting screen limits
Fri, 11 May 2018 15:11:17 +0200 Daniel Friesel <derf+feh@finalrewind.org>
* Release v2.26.1
* Restore pre-2.21 ~/.fehbg behaviour. This fixes nondeterministic
wallpaper setting when using --bg-* --randomize, issues when specifying
--theme both in ~/.fehbg and on the commandline, and possibly other
edge cases
* Fix /tmp being cluttered with temporary ImageMagick files when using
--magick-timeout and a conversion takes longer than allowed
Thu, 19 Apr 2018 21:43:12 +0200 Daniel Friesel <derf+feh@finalrewind.org>
* Release v2.26
* Save absolute file paths in ~/.fehbg, similar to the behaviour prior to
feh 2.21
* Add %g (window dimensions) and %Z (precise zoom level) format specifiers
* Improve -z/--randomize randomness
Rename LIBRSVG_USE_RUST to LIBRSVG_TYPE.
Isolate the LIBRSVG_TYPE logic in available.mk mk fragments in
order that can be used by other librsvg mk (e.g. tool.mk) or by
other package to check the preferred librsvg implementation to be
used. (e.g. devel/pango, fonts/harfbuzz and misc/libreoffice).
Add a tool.mk mk fragment in order to be able to specify librsvg
as a tool dependency honoring user's LIBRSVG_TYPE.
Thanks to <wiz> for suggesting that!
Discussed on tech-pkg@:
<https://mail-index.NetBSD.org/tech-pkg/2019/06/05/msg021393.html>
This package generates a coloured contour around a given text
in order to enable printing text over a background without the
need of a coloured box around the text.
Changelog:
RAWTHERAPEE 5.6 RELEASE NOTES
This is RawTherapee 5.6, released on 2019-04-20.
Start by reading the "Getting Started" article on RawPedia:
http://rawpedia.rawtherapee.com/
NEWS RELEVANT TO PHOTOGRAPHERS
RawTherapee supports most raw formats, including Pentax and Sony Pixel Shift, Canon Dual-Pixel, and those from Foveon and X-Trans sensors.
If you're wondering whether it supports your camera's raw format, first download RawTherapee and try for yourself. If a raw format is not supported it will either not open, or the preview in the Editor tab will appear black, white, or have a strong color cast - usually magenta. In that case, read the "Adding Support for New Raw Formats" RawPedia article.
In order to use RawTherapee efficiently you should know that:
- You can scroll all panels using the mouse scroll-wheel.
- You can right-click on a tool's name to automatically expand it while collapsing all others.
- To change slider values or drop-down list items with the mouse scroll-wheel, hold the Shift key. This is so that you can safely scroll the panels without accidentally changing a slider or other tool setting.
- All curves support the Shift and Ctrl keys while dragging a point. Shift+drag makes the point snap to a meaningful axis (top, bottom, diagonal, other), while Ctrl+drag makes your mouse movement super-fine for precise point positioning.
- There are many keyboard shortcuts which make working with RawTherapee much faster and give you greater control. Make sure you familiarize yourself with them on RawPedia's "Keyboard Shortcuts" page!
New features since 5.5:
- Pseudo-HiDPI support, for a smooth and sharp user interface regardless of screen size. Pseudo-HiDPI mode is disabled by default, enable it in Preferences > General > Appearance. Scaling in RawTherapee depends on font size, DPI and display scaling. While scaling has been tested to work well in Windows, Linux and macOS, there are some macOS display modes which are incompatible with it, specifically those modes suffixed by "(HiDPI)" in macOS Display settings. Some versions of macOS (10.14.*) seem to not list any modes, in which case the user must just give it a try.
- Ability to move tools to a new Favorites tab, http://rawpedia.rawtherapee.com/Favorites_Tab
- "Unclipped" processing profile, to make it easy to save an image while preserving data across the whole tonal range, http://rawpedia.rawtherapee.com/Unclipped
- User-adjustable tiles-per-thread settings in Preferences > Performance, for users who want to find optimal values for their system. The default value of 2 tiles-per-thread performs best overall.
- Hundreds of speed optimizations, bug fixes, and overall improvements.
NEWS RELEVANT TO PACKAGE MAINTAINERS
New since 5.5:
- Requires librsvg >=2.40.
- GTK+ versions 3.24.2 - 3.24.6 have an issue where combobox menu scroll-arrows are missing when the combobox list does not fit vertically on the screen. As a result, users would not be able to scroll in the following comboboxes: Processing Profiles, Film Simulation, and the camera and lens profiles in Profiled Lens Correction.
In general:
- To get the source code, either clone from git or use the tarball from http://rawtherapee.com/shared/source/ . Do not use the auto-generated GitHub release tarballs.
- Requires GTK+ version >=3.16, though >=3.22.24 is recommended.
- RawTherapee 5 requires GCC-4.9 or higher, or Clang.
- Do not use -ffast-math, it will not make RawTherapee faster but will introduce artifacts.
- Use -O3, it will make RawTherapee faster with no known side-effects.
- For stable releases use -DCACHE_NAME_SUFFIX=""
- For development builds and release-candidates use -DCACHE_NAME_SUFFIX="5-dev"
NEWS RELEVANT TO DEVELOPERS
See CONTRIBUTING.md
DOCUMENTATION
http://rawpedia.rawtherapee.com/http://rawtherapee.com/blog/documentation
REPORTING BUGS
If you found a problem, don't keep it to yourself. Read the "How to write useful bug reports" article to get the problem fixed:
http://rawpedia.rawtherapee.com/How_to_write_useful_bug_reports
FORUM
RawTherapee shares a forum with users and developers of other Free/Libre/Open Source Software:
https://discuss.pixls.us/c/software/rawtherapee
LIVE CHAT WITH USERS AND DEVELOPERS
Network: freenode
Server: chat.freenode.net
Channel: #rawtherapee
You can use freenode webchat to communicate without installing anything:
http://webchat.freenode.net/?randomnick=1&channels=rawtherapee&prompt=1
More information here: http://rawpedia.rawtherapee.com/IRC
REVISION HISTORY
The complete changelog is available at:
https://github.com/Beep6581/RawTherapee/commits/
GLEW 2.1.0
adds support for OpenGL 4.6, new extensions and minor bug fixes
GLEW 2.0.0
adds support for forward-compatible contexts, adds new extensions,
OSMesa and EGL support, MX discontinued and minor bug fixes
This package now uses rust. The user-settable variable LIBRSVG_USE_RUST
allows switching between this and the (obsolete) plain-C version
in librsvg-c. It defaults to "yes" on platforms that lang/rust currently
supports.
Version 2.44.14
- Fix#425 - Don't fail parsing if the system's locale is broken (Paolo Borelli).
- Fix#438, #443 - Don't create intermediate raster surfaces unless
absolutely needed. This was causing blurred output for SVGs from
Inkscape and Illustrator, since they include an "enable-background"
property even when there are no filters in use. Thanks to Julian
Sparber, Jordan Petridis, Zeeshan Ali for doing a huge "git bisect"
to find the cause of this bug.
- Fix#443 - Fix blurry output when enable-background is used without filters.
- Fix#455 - Fix rounding error on i386 (Olivier Tilloy).
- Check for Cairo errors when constructing paths.
Version 2.44.13
- Updated compilation docs for Debian (Jordan Petridis)
- Fix#415 - register RsvgHandleFlags and the RsvgError enum values in
a thread-safe fashion (Sebastian Dröge).
Version 2.44.12
- At build time, you can now pass $CARGO and $RUSTC environment
variables if you need to override the default Rust toolchain.
Please see COMPILING.md for details. (Tobias Kortkamp)
- Fix#405 - In the gdk-pixbuf loader, don't crash the write()
function doesn't receive a GError.
- Fix#398 - Detect circular references in gradients.
Version 2.44.11
- Fix crash when a linear RGB filter is followed by an SRGB filter
(Ivan Molodetskikh).
- Fix#393 - Stack overflow when freeing thousands of sibling elements.
- Fix#395 - feMorphology was crashing with a negative scaling
transformation.
- Fix positioning of adjacent <tspan> elements.
Version 2.44.10
- Fix#385 - Don't crash if there is no rsvg_handle_write() before
rsvg_handle_close().
- Fix#391 - Avoid undefined behavior when casting opaque pointers
(Jordan Petridis).
- Added g_warning()s to ensure the API is called in the correct
sequence.
Version 2.44.9
- Fix#371 - rsvg-convert was positioning extracted elements
incorrectly when using the -w/-h options together with --export-id.
- Fix#372 - Mis-rendering in small arc segments.
- Fix#373 - Rendering of gradients for horizontal/vertical stroked
lines with gradientUnits="userSpaceOnUse".
- Fix a couple of memory leaks in the error paths of the GdkPixbuf
loader (Benedikt Heine).
Version 2.44.8
- Librsvg now requires Rust 1.27; this should have happened since
2.44.0. Apologies if the 2.44.x series didn't catch this build
failure early for you.
- Librsvg now requires Cairo 1.15.12.
- Fix#363 - Don't drop spaces around <tspan> elements.
- Fix#365 - rsvg-convert now uses pixel units for SVG output, instead
of points. This requires cairo 1.15.12 (Antonio Ospite).
- Fix#358, #366 - tweaks to have the test suite pass on i386 and
non-x86_64 platforms (Simon McVittie, Federico Mena).
- Fix#368 - With RSVG_LOG=1, librsvg will now report when SVGs have
references to nonexistent elements, to aid debugging (for example,
in an xlink:href attribute).
- Allow reference tests with a small difference to pass without
breaking the build (Simon McVittie).
Version 2.44.7
- Fix#256 - Correctly match the systemLanguage attribute with the
user's locale.
- Fix#320 - Parse xml:lang correctly.
- Fix#334 - Don't modify the caller's cairo_t state during rendering.
- Fix#349 - Don't panic if we get a "data:" URI with empty data.
- Fix#352 - Don't panic on getting a very large "order" for
feConvolveMatrix (Ivan Molodetskikh).
Version 2.44.6
- Fix 32-bit builds (Jordan Petridis).
Version 2.44.5
- Fix#343 - Handle child being in error in feComponentTransfer.
- Fix#346 - Handle filter primitives producing errors.
- Fix#347 - Regression in computation of text element extents.
- Fix#348 - Fix incorrect font sizing.
- Fix#349 - Don't panic when loading an external image that is bigger
than Cairo's limits.
- Fix - rsvg_handle_get_dimensions_sub() no longer panics if passed a
nonexistent fragment identifier.
- CSS processing code is now in Rust, although it still calls libcroco
to do the parsing.
Version 2.44.4
- Fix#341 - Don't infinite-loop with cyclic pattern references.
- Fix#342 - Don't crash if a <use> node references one of its ancestors.
- Fix#344 - Don't panic when a viewBox has overflowing numbers.
- Fix#345 - Fix panics due to bad path parsing and overflows in
surface size.
- Cleanups and refactoring (Paolo Borelli, Linus Unnebäck, Federico Mena).
Version 2.44.3
- Fix building when srcdir != builddir (Mathieu Bridon).
- Fix#339 - Panic in filters with primitiveUnits="objectBoundingBox"
on zero-sized elements (Ivan Molodetskikh).
- Fix#335 - Don't panic if the toplevel node is not <svg>.
- Fixes from fuzz testing (Ivan Molodetskikh): don't panic when the
feConvolveMatrix kernel is not set; fix upper bounds in filter pixel
getters.
- Fix#337 - Don't panic with "em" or "ex" units in the font-size property.
- Fix#338 - Don't panic when an image element doesn't have
width/height attributes.
- Fix#340 - Don't panic when a marker has a zero-sized viewBox attribute.
- Special thanks to Ivan Molodetskikh for doing a fuzz-testing run for
this round.
- Updates to the CI infrastructure and the build documentation (Jordan
Petridis).
Version 2.44.2
- A *double brown paper bag* release! Super strong, this one!
- Fix#325 - Don't leak all the elements at the toplevel.
- Fix#328 - Make masking work on big-endian. Thanks to
Simon McVittie for quick testing of this on s390x.
- Fix library ordering so -Wl,--as-needed works (Simon McVittie).
Version 2.44.1
- This is a brown paper bag release! Apologies for the bugs:
- Fix#324 - Don't panic if trying to render a non-empty SVG with no
elements (Paolo Borelli).
- Fix#325 - All the elements were being leaked at the toplevel.
- Fix#326 - Fix COMPILING.md - librsvg 2.44 does not build on Ubuntu
18.04 because it has a rust version that is too old.
Version 2.44.0
- Librsvg now has minimal logging for debugging by setting the
RSVG_LOG environment variable. See CONTRIBUTING.md for details.
- Speed improvements for Gaussian blur, SRGB conversions, and various
filters (Ivan Molodetskikh).
- Fix#264 - the letter-spacing property now supports "normal" in
addition to lengths (Paolo Borelli).
- Fix#318 - the font-weight property was being parsed incorrectly.
- Fix#323 - don't use 100% "forever" with malicious SVGs that cause
an exponential number of elements to be instanced through the
<use> element. We limit the number of <use> instances now.
- Fix#293 - Don't panic when masking an empty group.
- Fix#319 - Parse single font-family correctly.
- Cleanups for the internal representation of elliptical arcs in paths
(letheed).
Version 2.43.4
- This is an early release to test the effects of threading in librsvg.
- The lighting and Gaussian blur filters are now parallelized with
Rayon; they will use all available cores (Ivan Molodetskikh).
Version 2.43.3
- Tentative fix: #309 - Don't panic if rendering to a non-image Cairo surface.
- Optimizations for Gaussian blur and other filters (Ivan Molodetskikh).
- Optimizations in SRGB <-> linear RGB conversions (Ivan Molodetskikh).
- More C to Rust conversion in the loading code (Paolo Borelli).
Version 2.43.2
- All the filter effects have been ported to Rust as part of Ivan
Molodetskikh's Summer of Code project!!!!!
- We now require Rust 1.26.
- We now include Rust debug information even in release builds, to make it
easier to obtain stack traces.
- Fix#310 - Respect DPI in the font-size property (Mike Marcacci).
- Fix: draw the circle/ellipse elements with the same orientation as
the SVG 1.1 test suite; this is relevant for stroke-dasharray (Ivan
Molodetskikh).
- Refactoring of the drawing code and font sizes (Paolo Borelli).
- New filters in Rust: feConvolveMatrix, feColorMatrix, feMorphology,
feDisplacementMap, feGaussianBlur, feDistantLight, feSpotLight,
fePointLight, feTile.
- Updated Rust dependencies (Igor Gnatenko).
Version 2.43.1
- Fix: #259 - Test fonts should now work with --enable-installed-tests
- Fix: #277 - Don't panic when trying to filter an empty group
(Ivan Molodetskikh).
- Fix: #292 - Don't panic if we try to clip an empty group.
- Fix the feOffset filter's coordinate parsing. (Ivan Molodetskikh).
- Fix linearization of SRGB data in the feComposite filter (Ivan
Molodetskikh).
- Fix CSS cascading in filters (Ivan Molodetskikh).
- Fix, don't render filters if they are in error (Ivan Molodetskikh).
- Fixed a couple of memory leaks in the test suite.
- Filters now support FillPaint and StrokePaint for input (Ivan Molodetskikh).
- Filters now support the color-interpolation-filters property
(Ivan Molodetskikh).
- The feImage, feBlend, feComponentTransfer filters are now in Rust
(Ivan Molodetskikh).
- The feOffset filter now supports fractional offsets (Ivan Molodetskikh).
- The drawing context code is now in Rust. This is a tremendous
amount of work! (Paolo Borelli)
- All the style property parsers have been moved to rust-cssparser.
Version 2.43.0
- This is the start of the 2.43 development series, and you bet we are
doing extensive changes!
- Many, many thanks to Jordan Petridis for keeping our Continuous
Infrastructure updated all the time, and for emergency fixes when
they were necessary.
- As part of the Summer of Code 2018, Ivan Molodetskikh is porting the
filter effects to Rust. These are done so far: core filters
infrastructure, feComposite, feMerge, feOffset. The only remaining
SVG elements done in C pertain to filter effects, and Ivan is taking
care of them.
- The feComposite filter now operates in linear RGB space, for better
spec compliance. We transform back to SRGB for the final results
(see issue #275 for pending work on fully supporting this
elsewhere).
- Filters now compute their bounds to floating-point values, instead
of clipping them to integers.
- The text, tspan, tref elements are now in Rust (Paolo Borelli).
- Text rendering should be better. We now perform text measurement
operations with the actual affine transformation that the text will
use in the end. This should give Pango/Freetype a better chance of
doing scale-appropriate hinting.
- The basic styling infrastructure has moved to Rust (Paolo Borelli,
Federico Mena). We don't use the old and limited cascading code
anymore. We also audited which CSS properties are supposed to
inherit automatically or not; this should be working per the SVG
spec now. Special thanks to Paolo for doing the largest part of the
work in moving the style data to Rust; this was a painstaking,
months-long process of constant refactoring.
- The internals of the drawing infrastructure and bounding-box
computation are now done in Rust (Paolo Borelli).
- Element creation from the parsing stage is now in Rust (Saurav
Sachidanand).
- Clipping and Masking are now done in Rust (Paolo Borelli).
- Our tests now include the full Adwaita icon theme, so it doesn't
break.
- Fix: #241 - feDistantLight and feSpotLight now work again.
- Fix: #282 - feComposite is fixed not to overwrite the source image
in some cases; this fixes drop shadows generated from Inkscape (Ivan
Molodetskikh).
- We have the beginnings of Windows CI, courtesy of Guillaume Gomez.
- Changes from 2.42.4:
- Fix: elements with systemLanguage attributes without variants now
work better (Paolo Borelli).
- gitlab#227 - Fix: we now catch negative values in stroke-dasharray
properties instead of leaving the cairo_t in an error state.
- gitlab#228 - Fix: empty transform attribute now correctly yields an
identity transform (Dmitry Kontsevoy).
- Fix possible crash on invalid gradient references.
- Make robust against patterns and gradients with no children.
- Lots of code cleanups and refactorings (Jordan Petridis, Dmitry
Kontsevoy, Ivan Molodetskikh).
- Code moved to Rust: low-level path and PangoLayout drawing, "switch"
element (Paolo Borelli).
- New Rust dependencies: float_cmp, pangocairo crates.
- We now require Rust 1.21 or later.
- Changes from 2.42.5:
- #276 - rsvg_handle_render_cairo() will now refuse to render if the
cairo_t passed to it is in an error state. Fixes a panic in the
cairo-dock program.
- #206 - The test suite now writes test artifacts to tests/output
instead of /tmp (Saurav Sachidanand).
Version 2.42.3
- gitlab#205 - The configure script now checks for Rust 1.20.0 -
previously this minimum requirement was not well-defined.
- gitlab#204 - New feature: If an SVG has an <a> link element, we now
generate the corresponding link when outputting to a Cairo PDF
surface. If you use rsvg-convert(1) with PDF output, <a> links in
the SVG will work in the PDF (Dmitry Kontsevoy).
- gitlab#108 - New feature: support font-size:larger and font-size:smaller
relative sizes.
- New feature: rsvg-convert now supports SOURCE_DATE_EPOCH per
https://reproducible-builds.org/specs/source-date-epoch/ to generate
reproducible output for PDFs (Chris Lamb).
- gitlab#197 - New requirement: We now require Freetype2 2.9.0, which
fixes font rendering bugs. The test reference PNGs have been
regenerated with this version. You may see changes in font
rendering as a result of this updated requirement.
- gitlab#91 - Fix rendering of masks and clips when the initial
transformation has a translation component (Massimo).
- gitlab#112 - Fix: apply style attributes for all SVG elements, not just
for the toplevel one.
- gitlab#161 - Fix the marker angle for the last vertex of closed
paths (Juraj Fiala).
- gitlab#198 - Fix: Make rsvg_pixbuf_from_file() and its derived
functions work again. Now we have tests for the whole public API.
- gitlab#143 - Minor optimizations for Gaussian blurs (Timm Bäder).
- gitlab#201 - Minor speedups in the code to parse SVG attributes.
- gitlab#178 - Fix some tests that failed on 32-bit machines.
- COMPILING.md now lists our build dependencies, and has command lines
which you can use on openSUSE/Fedora/Debian/Ubuntu/MacOS to set up a
development environment for librsvg (Jordan Petridis, Brion Vibber).
- gitlab#211 - Running the configure script on MacOS now works and
doesn't try to use -Bsymbolic for linking (Brion Vibber).
- gitlab#In addtion to --enable-debug/--disable-debug to control the Rust
compilation, now you can use an environment variable
LIBRSVG_DEBUG=yes / LIBRSVG_DEBUG=no if you wish.
- Code moved to Rust: SVG paint servers (Dmitry Kontsevoy), SVG
attribute parsing.
- We now use a Cargo workspace internally, to move more things to Rust
(Jordan Petridis, Chun-wei Fan).
- Special thanks in this release to Jordan Petridis for MAJOR
improvements to our Continuous Integration infrastructure, the
repository structure, and updates to the compilation documentation.
Also for setting up 32-bit builds for continuous integration.
Version 2.42.2
- gitlab#193 - Don't crash when feConvolveMatrix doesn't specify
orderx/ordery attributes.
- gitlab#136 - Parse stroke-dasharray property correctly. This code
is in Rust now; yay! (Jordan Petridis).
- Don't render markers if they are zero-sized, per the spec.
- Performance: eliminate a bunch of string copies during parsing.
- Update rust-cssparser to 0.23 (Igor Gnatenko).
Version 2.42.1
- gitlab#182 - Parse the transform attribute in a faster/simpler way.
We now use rust-cssparser instead of lalrpop. This is especially
noticeable on SVGs with lots of "transform" attributes.
- gitlab#187 - Don't crash when setting a gradient on a zero-sized object.
- gitlab#184 - (Windows) Don't use PangoFT2 if not available (Chun-wei Fan).
- gitlab#181 - Inherit attributes in the <svg> element properly.
- gitlab#160 - rsvg-convert - fix error reporting when reading from
stdin (Phlip Withnall).
- gitlab#152 - Fix detection of image type in "data:" URIs when they
don't specify a MIME type (Andreas Smas).
- gitlab#117 - (Windows) rsvg-convert - Set stdout to O_BINARY
(Bakhtiar Hasmanan).
- gitlab#133 - More stringent parsing of path data; better tests.
- (Windows/MSVC) Fix linking of the Rust internals library (Chun-wei Fan).
- Fix typos and links in the .md files.
Version 2.42.0
- Fix a memory leak in rsvg_handle_new_from_file() (Lovell Fuller).
- Optimize the xml:space normalization function (Jordan Petridis).
- gitlab#179 - fix a runtime warning in the feMergeNode code.
- gitlab#175 - Clarify documentation about the rsvg_*_sub() APIs.
- Stylistic fixes from cargo-clippy (Jordan Petridis).
- Port the Pango glue code to Rust.
- New ARCHITECTURE.md with a description of librsvg's internals.
Version 2.41.2
- We now require glib 2.52.0.
- bgo#787895 - Fix mis-use of libxml2. Thanks to Nick Wellnhofer for
the guidance.
- bgo#761175 - Allow masks and clips to reuse a node being drawn.
- Fix xml:space normalization, per the spec.
- Don't access the file system when deciding whether to load a remote
file with a UNC path for a paint server (i.e. don't try to load it at all).
- We now support cross-compilation of the Rust code (David Michael).
See COMPILING.md for details.
- Fixed bugs from Coverity runs (Philip Withnall).
- Vastly improved README.md, new COMPILING.md, improved CONTRIBUTING.md.
- Markers now have the correct default size per the SVG spec.
- Visual Studio: We now use HIGHENTROPYVA linker option on x64 builds,
to enhance the security of built binaries (Chun-wei Fan).
- Cargo is now verbose as well if you use "make V=1".
- Fixed some memory leaks.
- Don't render elements that establish a viewport if their viewBox
size is 0, per the spec.
- SVG elements ported to Rust: image, clipPath, mask, character data in elements.
- Fixed loading files one byte at a time.
- Reference documentation is now DocBook 5.1.
- Reference docs now have an overview of the library.
- Distribute README.md in the tarball properly.
- Expanded the test suite.
- Lots of internal refactoring.
Version 2.41.1
- The feConvolveMatrix filter primitive wasn't being rendered at all;
now it works.
- Pattern specifications can now have a fallback color, per the spec -
https://www.w3.org/TR/SVG/painting.html#SpecifyingPaint
- Tests now use a very basic form of reproducible font rendering.
This means that "make check" should pass even if you have a custom
Fontconfig setup.
- Fixed recursive fallbacks in gradients.
- Per the spec, we now don't render elements which have invalid
attributes.
- Windows build: support building with Fontconfig; support Visual
Studio 2017; generate .pc files upon install (Chun-wei Fan)
- Fixed bgo#621088 - Text elements can now be used as clipping paths.
- Fixed bgo#587721 - Fix rendering of text elements with transformations
(Massimo)
- Fixed bgo#776932 - Don't crash on elements with an invalid
"transform" attribute.
- Fixed bgo#777155 - Ignore patterns that have close-to-zero dimensions.
- Fixed bgo#776297 - Don't render markers for rect / circle elements;
fix marker angles in some cases (Massimo).
- Fixed bgo#777834 - Don't crash when rendering text with empty
extents.
- Fixed bgo#634324 - Gaussian blur with negative-scaling
transformation was being rendered incorrectly.
- Fixed bgo#783835 - Don't divide by zero in Gaussian blurs
- Fixed division by zero in feTile filter when the input surface is
empty.
- Fixed bgo#779489 - Link to pangoft2 as required.
- Don't crash in filters when one of them yields an invalid surface
for an intermediate result.
- Update for bgo#778666 - Use our own thumbnailer specification file
(Jeremy Bicha).
- Fixed bgo#782098 - Don't pass deprecated options to gtkdoc-scangobj
(Ting-Wei Lan).
- Fixed bgo#777833 - Various memory leaks (Philip Withnall, Federico Mena)
- Fixed bgo#786372 - Use the correct default for the style element's
"type" attribute.
- Fixed bgo#634514 - Don't render unknown elements and their children.
- Fix parsing of "azimuth", "elevation", "limitingConeAngle" for
filter effects.
- Fixed bgo#785276 - Don't crash on empty or single-byte files.
- Made the <switch> element work; SVG feature names were being
tested incorrectly.
- Fixed a few cases of uninitialized struct fields.
- Code converted to Rust: preserveAspectRatio attribute, viewBox
attribute, core Node structure, path/line/rect/circle/ellipse basic
shapes, group/defs/switch/svg/use/symbol structural elements, pattern element
and pattern fallbacks, marker rendering, various parsers, error
propagation from parsers, gradient stops, gradient element,
- Added a bunch of new test cases for the new features and the
code converted to Rust.
- We now require cairo-rs 0.2.0
- We now require lalrpop 0.13.1
- The librsvg tarball now comes with the Rust dependencies embedded
using "cargo vendor". Linux distros can replace these dependencies
with their own versions using the infrastructure described in
http://doc.crates.io/source-replacement.html
Version 2.41.0
- The big news is that parts of librsvg are now implemented in the
Rust programming language, instead of C. The public API remains
identical. Rust should provide us with memory safety and nicer
built-in abstractions for the code, as well as an easier way to do
unit tests. Special thanks to all the people who sent tips on Rust
idioms, and to Sebastian Dröge and Hubert Figuière for the Automake bits.
- Added an "--enable-debug" option to configure.ac - this will tell
the Rust compiler to generate debugging code, instead of working in
release mode. Note that you must still pass CFLAGS by hand by the
regular means for the C code.
- For Windows builds, only MSVC 2012 and upward are supported now.
- Chun-wei Fan made it possible to regenerate the MSVC project files
when Makefile.am changes.
- Fixed bgo#763386 - handle curveto segments where three control
points are coincident. Thanks to Massimo for the detailed test cases.
- Fixed bgo#603550 - Compute the luminance correctly when generating a
mask. Thanks to Mike Lewis for the patch.
- Fixed bgo#776297 - Only render markers in path, line, polygon,
polyline elements.
- Fixed feImage filters when they reference SVG nodes; they were
translated incorrectly.
- Fixed feComponentTransferFunction when there are duplicated feFuncX
elements.
- Fixed bgo#761871 - handle reflection points for quadratic and cubic
curves correctly.
- Fixed bgo#686953 - support the "marker" shorthand property.
- Fixed a few minor issues pointed out by Coverity.
- The path data parser now handles boolean values in Arc elements correctly.
- Fixed conformance bugs in gradient inheritance.
- Radial gradients now adjust the focus point correctly to be within
the gradient's radius.
- Stroke width normalization is now conformant to the spec.
- Viewport-relative length normalization is now conformant to the spec.
- Added some of the official SVG 1.1 test files to our test suite. Fixed
a little bunch of conformance bugs.
- As a small optimization, we only push/pop CSS states when rendering
will actually happen, instead of for all (potentially invisible) nodes.
- Code that has been converted to Rust: marker orientations and
rendering, path data parser, path building, length normalization,
gradient inheritance, bounding boxes with affine transformations.
- Lots of refactoring to accomodate the Rust code, and general cleanups as well.
- Added tests/README.md with instructions on how to run the test suite
and update it.
rsvg-test can now skip files or directories that start with "ignore".
- Improved the README.
librsvg is Raph's scalable vector graphics library. It provides support for
SVG graphics, and is used by the GNOME desktop.
This package provides the librsvg library as well as some addons -- a pixbuf
loader and a theme engine -- for the GTK+ toolkit.
This package provides the older 2.40.x branch of librsvg that is written
in plain C.
2019-05-14 7.0.8-46 Cristy <quetzlzacatenango@image...>
* Release ImageMagick version 7.0.8-46, GIT revision 15655:84dd3301c:20190518
2019-05-14 7.0.8-46 Cristy <quetzlzacatenango@image...>
* PerlMagick unit tests pass again.
* Builds under MacOS X and FreeBSD works again.
* Return HEIC images in the sRGB colorspace.
2019-05-12 7.0.8-45 Cristy <quetzlzacatenango@image...>
* Release ImageMagick version 7.0.8-45, GIT revision 15634:784105bcb:20190512
2019-05-06 7.0.8-45 Cristy <quetzlzacatenango@image...>
* Fix image signatures to ensure they are Q-depth invariant (reference
https://imagemagick.org/discourse-server/viewtopic.php?f=1&t=35970).
* Fixed a number of issues (reference
https://imagemagick.org/discourse-server/viewforum.php?f=3).
* Fixed a number of issues (reference
https://github.com/ImageMagick/ImageMagick/issues).
2019-05-03 7.0.8-44 Cristy <quetzlzacatenango@image...>
* Release ImageMagick version 7.0.8-44, GIT revision 15600:41f47759a:20190503
2019-05-03 7.0.8-44 Cristy <quetzlzacatenango@image...>
* Fixed a number of issues (reference
https://imagemagick.org/discourse-server/viewforum.php?f=3).
* Fixed a number of issues (reference
https://github.com/ImageMagick/ImageMagick/issues).
2019-05-01 7.0.8-43 Cristy <quetzlzacatenango@image...>
* Release ImageMagick version 7.0.8-43, GIT revision 15595:0062cef74:20190502
2019-05-01 7.0.8-43 Cristy <quetzlzacatenango@image...>
* Fixed a number of issues (reference
https://imagemagick.org/discourse-server/viewforum.php?f=3).
* Fixed a number of issues (reference
https://github.com/ImageMagick/ImageMagick/issues).
This MetaPost library was initially written to automate some
elements of black and white illustrations for a physics
textbook. It provides functions to draw things like lines of
variable width, shaded spheres, and tubes of different kinds,
which can be used to produce images of a variety of objects.
The library also contains functions to draw some objects
constructed from these primitives.
Inkscape 0.92.4 is a stability and bugfix release. It also brings some
notable performance improvements for filter rendering, measure tool,
extensions, document saving and moving paths (with a live path effect)
and includes a couple of small, but impactful usage improvements.
### eom 1.22.1
* Translations update
* store: Add any image file in the current directory to the store
* help: update copyright
* Upgrade the manual to docbook 5.0
* Use persistent page setup
Changes since 2018.0.0
Added raw import: It converts the RAW images to TIFF using a raw converter. This can be done by dcraw (requires additional exiftool), RawTherapee or darktable. These programs needs to be installed externally.
Fixes for align_image_stack with EXR images.
Added option for range compression. Can be helpful for LDR panoramas to brighten the shadows before merging, because at this stage the blender has some more information which can be helpful.
New hotkeys for mask editor (change zoom level with 0, 1 and 2).
Expression parser (pto_var and "manipulate image variables" in GUI) can now read also all image variables.
line_find: Ignore lines with low distance to each other to get better coverage. Also use only central part of the panorama for searching for line control points (ignoring zenit/nadir near areas).
pano_modify: Added new switch --projection-parameter to set projection parameters.
Store program settings according to XDG base dir specification (Linux only, needs to compile with wxWidgets 3.1.1 or later).
2019-04-29 7.0.8-42 Cristy <quetzlzacatenango@image...>
* Release ImageMagick version 7.0.8-42, GIT revision 15570:71190ccd0:20190424
2019-04-20 7.0.8-42 Cristy <quetzlzacatenango@image...>
* Fixed a number of issues (reference
https://imagemagick.org/discourse-server/viewforum.php?f=3).
* Fixed a number of issues (reference
https://github.com/ImageMagick/ImageMagick/issues).
2019-04-19 7.0.8-41 Cristy <quetzlzacatenango@image...>
* Release ImageMagick version 7.0.8-41, GIT revision 15540:c78993d13:20190420
2019-04-13 7.0.8-41 Cristy <quetzlzacatenango@image...>
* Fixed a number of issues (reference
https://imagemagick.org/discourse-server/viewforum.php?f=3).
* Fixed a number of issues (reference
https://github.com/ImageMagick/ImageMagick/issues).
* Honor SOURCE_DATE_EPOCH environment variable (reference
https://github.com/ImageMagick/ImageMagick/pull/1496/).
* Standardize on UTC time for any image format timestamp.
* Add MagickAutoThresholdImage(), MagickCannyEdgeImage(),
MagickComplexImages(), MagickConnectedComponentsImage(),
MagickHoughLineImage(), MagickKuwaharaImage(), MagickLevelizeImageColors(),
MagickLevelImageColors(), MagickMeanShiftImage(), MagickPolynomialImage(),
MagickRangeThresholdImage(), MagickSetSeed(), MagickWaveletDenoiseImage()
methods to MagickWand API.
Breeze Icons
Add "notifications" and "notifications-disabled" icons
make start-here-kde also available start-here-kde-plasma
Sublime Merge Icon
Give applications-games and input-gaming more contrast with Breeze Dark
Make 24px go-up actually 24px
Add preferences-desktop-theme-applications and
preferences-desktop-theme-windowdecorations icons
Add symlinks from "preferences-desktop-theme" to
"preferences-desktop-theme-applications"
Remove preferences-desktop-theme in preparation to making it a symlink
Add collapse/expand-all, window-shade/unshade (bug 404344)
Improve consistency of window-* and add more
Make go-bottom/first/last/top look more like media-skip*
Change go-up/down-search symlinks target to go-up/down
Improve pixel grid alignment of go-up/down/next/previous/jump
Change media-skip* and media-seek* style
Enforce new muted icon style in all action icons
KIconThemes
Fix padding icon that doesn't exactly match the requested size
KImageFormats
ora:kra: qstrcmp -> memcmp
Fix RGBHandler::canRead
xcf: Don't crash with files with unsupported layer modes
Version 11.30 (production release)
Added a new Sony/Minolta LensType
Decode streaming metadata from TomTom Bandit Action Cam MP4 videos
Decode Reconyx HF2 PRO maker notes
Decode ColorData for some new Canon models
Enhanced -geotag feature to set AmbientTemperature if available
Remove non-significant spaces from some DICOM values
Fixed possible "'x' outside of string" error when reading corrupted EXIF
Fixed incorrect write group for GeoTIFF tags added in version 11.24
Version 11.29
Added support for Ricoh GR III maker notes
Added a new Canon LensType
Added a new XMP-crs tag
Enhanced -csv option to output base64-encoded binary data when combined with -b or when the -charset option is used and the text has invalid characters
Remove trailing space from even-length DICOM values
Patched to avoid "Hexadecimal number > 0xffffffff non-portable" warning
Fixed meta charset attribute in -htmlDump output
Version 11.28
Added support for reading INSV video and decode streaming GPS
Added a new Pentax LensType
Added a new FujiFilm ImageStabilization value
Allow exiftool to be run via a symbolic link on Mac/Linux
Reverted INDD patch of version 11.27 (ie. raise error again on incorrectly terminated INDD object list)
Changed handling of temporary documentation file in Windows version
Version 11.27
Added support for more XMP-dji-drone tags
Added new Olympus CameraType and LensType values
Added a new Canon LensType
Added a new CanonModelID
Decode yet another type of GPS from DashCam videos
Allow FileName to be written when only case is changed on case-insensitive filesystems
Improved identification of some iWork file types
Recognize the LRV file extension
Changed Windows version to use the parent folder of PAR_GLOBAL_TEMP for the temporary documentation file
Don't raise an error if an INDD object list is terminated by spaces instead of nulls
Fixed some problems with new -htmldump IFD highlighting feature
Fixed bug introduced in 11.24 with "-o -.EXT" feature
Version 11.26
Added a new Nikon LensID
Decode more tags for the Sony ICLE-6400
Enhanced -htmldump feature to highlight IFD when mousing over IFD offset
Version 11.25
Added a new Sony/Minolta LensType
Added a new Nikon LensID
Decode Leica D-Lux7 maker notes
Decode more Nikon AF tags for newer models
Decode Samsung Type2 maker notes with lower case Make
Decode another Sony tag
Improved decoding of Nikon LensType
Improved time shift feature to fix some incorrectly formatted date/time values
Renamed some Sony ImageCount tags to ShutterCount
Fixed problem reading back metadata written to some odd PDF files
Version 11.24
Compatibility Notice: Changed the meaning of '-' and '+' modifiers for %C formatting code (does not affect lower-case %c code)
Decode a number of new Nikon tags
Added new Olympus FlashType and FlashModel values
Added a new Canon LensType
Added a new Nikon LensID
Made more GeoTIFF tags writable
Handle XMP rdf:value when reading
Improved warning when trying to read a file with a zero-length name
Fixed decoding of PictureControl tags for Nikon Z-7
Fixed problem writing date/time values with " DST" designator at end of date/time string
Fixed problem in Windows which could cause ExifTool to abort due to a Win32::FindFile error if a file name contained surrogate Unicode characters
Version 11.23
Recognize DWG and DWF files
Minor improvement to some -validate warnings
Tolerate leading UTF-8 byte order mark (BOM) at start of JSON files
Fixed problem recognizing some streaming camm metadata in QuickTime videos
Version 11.22
Added read support for PC Paintbrush (PCX) files
Added two new Sony/Minolta LensTypes
Decode LensData tags for some newer Nikon models
Decode ColorData for the Canon EOS R
Recognize DCX files
Version 11.21
Added a new Sony/Minolta LensType
Added a new Olympus FlashModel
Improved decoding of FujiFilm InternalSerialNumber
Minor improvements to decoding of GPS from some dashcam videos
Made XMP-getty:Personality a List-type tag
Made it an error to use the -o option or write FileName or Directory tags when using the TestName dry-run feature
Fixed problem using -E with other character sets when writing
Version 11.20
Added a new Panasonic WhiteBalance value
Added a new Nikon LensID
Decode streaming GPS from MOV videos for another dashcam model
Improved -E option to support character sets other than UTF-8
version:3.4.6
OpenCV 3.4.6 has been released. Bug fixes, optimizations and other enhancements are propagated into OpenCV 4.1.0.
version:3.4.5
OpenCV 3.4.5 has been released. Bug fixes, optimizations and other enhancements are propagated into OpenCV 4.0.1.
version:3.4.4
OpenCV 3.4.4 has been released. This is a mantenance release. New features are landed in OpenCV 4.0.
version:3.4.3
OpenCV 3.4.3 has been released, with further extended dnn module, documentation improvements, some other new functionality and bug fixes.
version:3.4.2
OpenCV 3.4.2 has been released, with further extended dnn module, documentation improvements, some other new functionality and bug fixes.
OpenCV 3.4.x development is switched from "master" to "3.4" branch. "master" branch is used for development of upcoming OpenCV 4.x releases.
Bugfixes / optimizations / small improvemets should go into "3.4" branch. We will merge changes from "3.4" into "master" regularly (weekly/bi-weekly).
Version 0.16:
* API change allowing for library users to get the custom allocator
so it may be freed if necessary. This is useful if the allocator
is extended with e.g. a custom pointer needed by the allocator
callbacks.
This is largely a bugfix-only release. Most importantly, it contains
a fix for a use-after-free vulnerability (CVE-2019-7317) affecting
the simplified libpng API, and a fix for a memory leak affecting the
ARM NEON implementation of the palette-to-RGB(A) expansion.
0.8.4
=====
- Add missing field initializers
- Instead of thumbnails, the same icons with a crossed red circle (bug #13419)
- Resolve g_type_class_add_private() deprecation
- Glib-Critical errors to stdout: Source ID X was not found when attempting to
remove it (bug #15268)
- Fix memory leak (bug #12034)
- Show file size in the status bar (bug #14791)
- Fix opening of PPM files (bug #14709)
* Translation updates:
Arabic (ar), Asturian (ast), Belarusian (be), Bulgarian (bg), Catalan (ca),
Czech (cs), Danish (da), German (de), Greek (el), English (United Kingdom)
(en_GB), Spanish (es), Basque (eu), Finnish (fi), French (fr), Galician (gl),
Hebrew (he), Croatian (hr), Hungarian (hu), Indonesian (id), Icelandic (is),
Italian (it), Japanese (ja), Kazakh (kk), Korean (ko), Lithuanian (lt), Malay
(ms), Norwegian Bokmål (nb), Dutch (nl), Occitan (oc), Polish (pl), Portuguese
(pt), Portuguese (Brazil) (pt_BR), Romanian (ro), Russian (ru), Slovak (sk),
Slovenian (sl), Albanian (sq), Serbian (sr), Swedish (sv), Telugu (te), Thai
(th), Turkish (tr), Uighur (ug), Ukrainian (uk), Chinese (China) (zh_CN),
Chinese (Taiwan) (zh_TW)
-dri +osmesa. the dri case wasn't broken and already had expat.
expat is an easy dependency, and the default case will need it (and will
have it for various xorg things), so let's just keep it unconditional
and remove the conditional expat.
### mate-icon-theme 1.22.1
* Translations update
* Display the volume status with a better contrast in panels
* Upgrade svg source files to Inkscape 0.92.4
* Gen png icons from source - Mate theme
* Gen png icons from source. Mate: apps, categories & devices
* Update terminal icons for mate theme
Changelog:
Overview of Changes from GIMP 2.10.8 to GIMP 2.10.10
====================================================
Core:
- Add gimp-scratch allocator, a fast memory allocator (on the order of
magnitude of alloca()), suitable for small (up to a few megabytes),
short-lived (usually, bound to the current stack-frame) allocations.
Unlike alloca(), gimp-scratch doesn't use the stack, and is therefore
safer, and will also serve bigger requests, by falling-back to malloc().
- In gimp_drawable_transform_buffer_affine(), avoid modifying the
clipping mode when transforming layer masks, since this function
is used (among other things) to transform layer masks together with
their layer, in which case they should use the same clipping mode
as the layer. This fixes a regression introduced by commit 2ae823ba,
causing layer masks to be transformed with a mismatched clipping mode
during layer transforms, leading to discrepencies between the
transformed layer and the transformed mask.
- Moved swap/cache and temporary files out the GIMP user config dir and
added new config file substitutions ${gimp_cache_dir} and
${gimp_temp_dir}.
- Pass the GEGL tile-cache size, swap path, and thread-count to plug-ins
as part of their config, and have libgimp set the plug-in's GeglConfig
accordingly upon initialization.
- Layer groups are now rendered in bigger chunks rather than tile-by-tile
(which used to pretty much eliminate multithreading for groups), which
improves the rendering speed.
- Make saving/exporting files more robust to errors. In particular if
an error occurs during the process (be it a bug, a memory error, or
anything else), GIMP won't overwrite anymore any existing file with
incomplete contents, so that you won't end up with no valid files at
all.
- Fix a regression on support of various graphics tablet.
- Remove the "Edit -> Fade..." feature: it makes GIMP use two buffers
instead of one (east into system resources), it's broken in 2.10, and
we can make the UX better for filters.
- New generic canvas modifier 'Alt + middle click' allowing to pick
layers by clicking on pixels. The available layers will be looped
through (starting from the upper one) while Alt key is hold and the
picked layer name will be temporarily displayed in the status bar.
- When clearing a channel, do nothing if the channel is already empty;
otherwise, align the cleared rectangle to the channel buffer's tile
grid, so that all affected tiles are dropped, rather than zeroed.
Furthermore, only update the affected region of the channel.
- Brush and pattern saving logics has been moved to core code (instead
of plug-in).
- Clipboard brushes and pattern can now be duplicated.
- Parametric brushes are now 32-bit float to avoid posterization on
large brushes.
Note: raster brushes are still 8-bit and plug-ins only have access
to 8-bit versions of high-precision brushes/patterns. New API will
be required to handle high-precision data.
- On-canvas preview while editing a color in the colormap of an
indexed image.
User interface:
- Enabled HiDPI/Retina support for the GTK2/OSX build, fixes blurry icons.
- Add a tooltip to the "better compression" checkbox in save dialog to
make it clearer it does not mean that the file size is necessarily
smaller in every cases. In particular some best/worst case are
possible when an algorithm less efficient in general may end up
better on a particular image.
- Add basic support for cursors with a scale factor of 2 for HiDPI
(artwork to be updated).
- Foreground and background color icons, as well as color history will
now display out-of-gamut warning on indexed images for colors
outside of the palette, as well as on grayscale images, for non-gray
colors.
- Pack color picker and hexadecimal entry on same line in Color dock.
- Add an "Open as Image" button to the brushes dialog.
Usability:
- Attempting to transform locked layers or paint on them now results in
blinking around the status bar (where the warning message is displayed)
and around the toolbar where lock toggles are. The same applies to
attempting to move a selection where there is none — GIMP will blink
around the toolbar where the moving target (layer, selection, path)
is chosen.
- GIMP now allows selecting default export file type for new projects.
The choice is limited to PNG, JPEG, WebP, PSD, ORA, TIFF, BMP.
- GimpSpinScale widget now has an optional feature to constrain the
value to integer when dragging with a pointer (even if the scale
allows for fractional numbers), set with new function
gimp_spin_scale_set_constrain_drag().
This is useful for settings where fractional numbers are technically
possible, yet most common use case are with integers (such as pixel
sizes, angles in degrees, etc.) so you want the easy interface to be
constrained. Fractional numbers are still settable, for instance by
keyboard edit; and arrow incrementation won't drop fraction parts.
This is currently only activated for brush options in paint tools.
Tools:
- In scale tool, scale around center even when using numeric input.
- New algorithm in the Bucket Fill tool when selecting the affected
area "Fill by line art detection", based off the G'Mic algorithm for
"smart colorization": https://hal.archives-ouvertes.fr/hal-01891876
In a few words, it identifies painted pixels (either based on
grayscale or opacity values) and tries to close line arts to allow
filling even with not perfectly closed zones; the second step of the
algorithm will flood the colors under line art pixels to prevent
"holes" in the filling.
It is possible to control a max size (in pixels) for the flooding,
as well as max length of closing segments and splines.
- The Bucket Fill tool got new interaction allowing to hold the click
and move the mouse to fill based on several seed zones (for "Fill
by line art detection" as well as "Fill similar colors"). You can
now cancel the fill in progress with right click as in other tools.
- The Bucket Fill tool now allows color picking with ctrl-click, same
as every painting tool. It will pick either the foreground or
background color depending on the selected Fill Type. The ctrl-alt
modifier combination is also possible to pick the non-Fill Type
color.
- In the Bucket Fill tool, the Alt modifier will now switch to
"FG color fill" when "Pattern fill" was set (instead of doing
nothing).
- In the Unified Transform tool, default to preserving aspect ratio
when scaling up or down.
- In the Healing tool, "Sample merged" now also work for the target
pixels, allowing to draw in empty layers.
- Selection by color is now parallelized, hence improving speed of the
Select by Color tool (and any other processing which may share this
piece of code now or in the future).
- Add "Constrain handles" and "Around center" options to the
perspective-transform tool's GUI, which are similar to the
corresponding options of the unified-transform tool.
- Improve color picking on indexed image to always select an indexed
color corresponding to the picked pixel in the colormap.
Plug-ins:
- file-pdf-save GUI now clearly indicates the order the layers will be
used to make multi-page PDFs.
- Add DDS loading/exporting plug-in originally developed by Shawn Kirst
and Arne Reuter.
- Rename the Guillotine plug-in to Slice Using Guides.
- Add a new option saving a color profile when exporting PNG, JPEG, TIFF.
Always save it when exporting to PSD.
- Remove the "Advanced" expanders from the PNG and TIFF export dialogs.
- Full rewrite of the Spyrogimp plug-in with much more options and
better interaction.
- Indexed TIFF with alpha channel now supported.
Filters:
- Add on-canvas GUI (simple lines) for circular, linear, and zoom motion
blur.
Help:
- Link to the bugtracker directly from the Help menu, also link to the
wiki and the roadmap. Remove the link to currently disabled
registry.gimp.org.
Installers:
- Windows: proper fix for libthai to stop GIMP from crashing in the
Thai locale.
Translations:
- Czech, Danish, French, Italian, Japanese, Marathi, Polish, Russian,
Spanish, Swedish, Ukrainian.
Build:
- Bumping GTK+ dependency to the micro update GTK+ 2.24.32 to handle
several bugs on Windows (broken shortcuts on non-latin layouts and
broken vector icons).
Changelog:
GEGL-0.4.14 2019-03-xx
Core
New Scratch allocator for short lived buffers.
Removed unneeded buffer copies in some processing code paths in
GeglNode and GeglProcessor.
Add gegl_babl_variant API for getting variations on an existin
pixel-format/encoding.
Expose gegl_node_is_graph()
GeglBuffer
Compression of tile data.
Handle dynamically changing swap dir.
Improvements to mipmap damage propagation.
Fixes to threading race conditions.
Low-level tile handling more adapted to buffers creating from existing
linear data.
New iterator API is now the default, GEGL_BUFFER_ITERATOR2_API is no
longer needed.
CMYK/grayscale handling for scaled blits, code paths in samplers,
serialization.
New default tile-cache size, 50% of RAM.
Initialize the first OpenCL device with IMAGE support.
Added gegl_parallell_ from gimp_parallell_ API to distribute processing
for multiple cores.
Operations
crop, added aux-pad - if connected the incoming bounding box determines
the crop size.
Input-format specific processing for performance in watershed-transform
and invert ops. CMYK handling in jpg-load/save, tiff-load/save,
gaussian-blur, opacity, most composing and blending operations, text,
vector-stroke, path, and transform operations.
Improved or fixed mipmap preview rendering of emboss, linear-gradient
and radial-gradient.
Better ui strings/range/defaults for: distort/waves and dropshadow,
value-propagate.
gaussian-blur: fix mistake in implementation of IIR Young blur 1d,
which caused non circular halos.
New operation: pdf-load with build dependency on poppler-glib
Added offset properties to pixelize filter.
new ops in workshop: voroni diagram, Grey Color Removal, spyrograph.
Handle mipmap rendering for linear-gradient and radial-gradient.
UI
The existing microraptor-gui (immediate mode touch UI+CSS with cairo)
image viewer that can be built as part of the gegl binary has been
revisted, a graph/property editor has been added, and migration/
extension to lua has begun for parts of the code.
many parts of the UI is of exploratory proof of concept/alpha
Warning quality but released since it is part of the GEGL repository
and useful development tools both for creating and testing new
GEGL operations as well as GEGL itself.
Some screenshots showing some the process towards the state and
capabilties of the UI in this release can be seen at https://
www.patreon.com/posts/24123574
To build with this UI the following dependencies also need to be
satisifed, for now this is not intended to be packaged by distributions
yet.
libluajit-dev
lua-lgi (debian package name) upstream:
mmm https://github.com/hodefoting/mmm
mrg https://github.com/hodefoting/mrg
Features: folder view resolution independent UI touch oriented
navigation GIF / video playback PDF pagination goats that expose
performance and capabilty issues in GEGL efficient (though not
sandboxed) thumbnailing embedded simple commandline graph editor
zoomable automatic, consistent graph layout autogenerated
property-inspector ui visualization of color model/bitdepth through
styling of edges live-extendable with lua code for per-operation canvas
UI
Contributors to this release:
Alan Mortensen, Alexandre Prokoudine, Anders Jonsson, Andre Klapper,
Debarshi Ray, elad, Ell, Jehan, Marco Ciampa, Michael Natterer, Øyvind
Kolås, Piotr Drąg, Richard B. Kreckel, Rodrigo Lledó, sabri ünal,
thetoastcaper, Thomas Manni and woob.
This release depends on the new features of babl-0.1.62 which has the
following change summary for the last release:
Continuous integration with gitlab. Initial CMYK spaces with lcms2
based ICC support, much room for optimization. Improved custom space
support for palette formats. scRGB space, works like sRGB but always
with linear TRCs. Model introspection API permitting low overhead
checks whether a format/model is RGB, CMYK type of alpha and similar.
Changelog:
2019-02-01 babl-0.1.62
Continuous integration with gitlab.
Initial CMYK spaces with lcms2 based ICC support, much room for optimization.
Improved custom space support for palette formats.
scRGB space, works like sRGB but always with linear TRCs.
Model introspection API permitting low overhead checks whether a format/model
is RGB, CMYK type of alpha and similar.
6.0.0:
Python 2.7 support will be removed in Pillow 7.0.0
Add EXIF class
Add ImageOps exif_transpose method
Added warnings to deprecated CMSProfile attributes
Documented reading TIFF multiframe images
Improved speed of opening an MPO file
Update palette in quantize
Improvements to TIFF is_animated and n_frames
Fixed incompatible pointer type warnings
Improvements to PA and LA conversion and palette operations
Consistent DPI rounding
Change size of MPO image to match frame
Read Photoshop resolution data
Ensure image is mutable before saving
Correct remap_palette documentation
Promote P images to PA in putalpha
Allow RGB and RGBA values for new P images
Fixed TIFF bug when seeking backwards and then forwards
Cache EXIF information
Added transparency for all PNG greyscale modes
Fix deprecation warnings in Python 3.8
Fixed GIF bug when rewinding to a non-zero frame
Only close original fp in __del__ and __exit__ if original fp is exclusive
Fix BytesWarning in Tests/test_numpy.py
Add missing MIME types and extensions
Add I;16 PNG save
Add support for BMP RGBA bitfield compression
Added ability to set language for text rendering
Only close exclusive fp on Image __exit__
Changed EPS subprocess stdout from devnull to None
Add reading old-JPEG compressed TIFFs
Add EXIF support for PNG
Add option to set dither param on quantize
Add reading of DDS uncompressed RGB data
Correct length of Tiff BYTE tags
Add DIB saving and loading through Image open
Removed deprecated VERSION
Fix 'BytesWarning: Comparison between bytes and string' in PdfDict
Do not resize in Image.thumbnail if already the destination size
Replace .seek() magic numbers with io.SEEK_* constants
Make ContainerIO.isatty() return a bool, not int
Add support to all transpose operations for I;16 modes
Deprecate support for PyQt4 and PySide
Add TIFF compression codecs: LZMA, Zstd, WebP
Fixed pickling of iTXt class with protocol > 1
_util.isPath returns True for pathlib.Path objects
Remove unnecessary unittest.main() boilerplate from test files
Exif: Seek to IFD offset
Deprecate PIL.*ImagePlugin.__version__ attributes
Docs: Add note about ImageDraw operations that exceed image bounds
Allow for unknown PNG chunks after image data
Changed EPS subprocess stdin from devnull to None
Fix possible integer overflow
Catch BaseException for resource cleanup handlers
Improve pytest configuration to allow specific tests as CLI args
Drop support for Python 3.4
Remove deprecated PIL.OleFileIO
Remove deprecated ImageOps undocumented functions
Depends: Update libwebp to 1.0.2
Detect MIME types
v2.3.1:
v2.2.0 regression for decoding images where TNsot == 0
Int overflow in jp3d
Heap buffer overflow in opj_j2k_update_image_data() triggered with Ghostscript
LINUX install doesn't work when building shared libraries is disabled
OPENJPEG null ptr dereference in openjpeg-2.3.0/src/bin/jp2/convert.c:2243
How to drop certain subbands/layers in DWT
where is the MQ-Coder ouput stream in t2.c?
OpenJPEG 2.3 (and 2.2?) multi component image fails to decode with KDU v7.10
Missing checks for header_info.height and header_info.width in function pnmtoimage in src/bin/jpwl/convert.c, which can lead to heap buffer overflow
Assertion Failure in jp2.c
Division-by-zero vulnerabilities in the function pi_next_pcrl, pi_next_cprl and pi_next_rpcl in src/lib/openjp3d/pi.c
Precinct switch (-c) doesn't right-shift last record to remaining resolution levels
Sample: encode J2K a data using streams???
HIGH THROUGHPUT JPEG 2000 (HTJ2K)
How to build openjpeg for arm linux?
crash
JP2000 returning OPJ_CLRSPC_UNKNOWN color space
Compilation successful but install unsuccessful: Calling executables throws libraries missing error
fprintf format string requires 1 parameter but only 0 are given
fprintf format string requires 1 parameter but only 0 are given
sprintf buffer overflow
sprintf buffer overflow
Infinite loop when reading jp2
missing format string parameter
Excessive Iteration in opj_t1_encode_cblks (src/lib/openjp2/t1.c)
Out-of-bound left shift in opj_j2k_setup_encoder (src/lib/openjp2/j2k.c)
Encode image on Unsplash
Integer overflow in opj_t1_encode_cblks (src/lib/openjp2/t1.c)
Signed Integer Overflow - 68065512
Similar vulnerable functions related to CVE-2017-14041
[ERROR] COD marker already read. No more than one COD marker per tile.
failing to install latest version of openjpeg from source
Trouble compressing large raw image
Download and installed code from 2.3 archive. Installing 2.2?
missing fclose
NULL Pointer Access in function imagetopnm of convert.c(jp2):1289
NULL Pointer Access in function imagetopnm of convert.c:2226(jp2)
Heap Buffer Overflow in function imagetotga of convert.c(jp2):942
Merged pull requests:
abi-check.sh: fix broken download URL
opj_t1_encode_cblks: fix UBSAN signed integer overflow
convertbmp: detect invalid file dimensions early (CVE-2018-6616)
color_apply_icc_profile: avoid potential heap buffer overflow
Fix multiple potential vulnerabilities and bugs
Fix several memory and resource leaks
Fix some potential overflow issues
jp3d/jpwl convert: fix write stack buffer overflow
Int overflow fixed
Update knownfailures- files given current configurations
CVE-2018-5785: fix issues with zero bitmasks
openjp2/jp2: Fix two format strings
Changes in pnmtoimage if image data are missing
Relative path to header files is hardcoded in OpenJPEGConfig.cmake.in file
Cast on uint ceildiv
Add -DBUILD_PKGCONFIG_FILES to install instructions
Fix some typos in code comments and documentation
Fix regression in reading files with TNsot == 0 (refs
Use local type declaration for POSIX standard type only for MS compiler
Fix Mac builds
jp3d: Replace sprintf() by snprintf() in volumetobin()
opj_mj2_extract: Rename output_location to output_prefix
mj2: Add missing variable to format string in fprintf() invocation in meta_out.c
Convert files to UTF-8 encoding
fix unchecked integer multiplication overflow
Fixed typos
Note that seek uses SEEK_SET behavior.
Some Doxygen tags are removed
Fix resource leak (CID 179466)
Changed cmake version test to allow for cmake 2.8.11.x
Add missing fclose() statement in error condition.
FreeType 2.10.0
This release brings one notable feature, namely support for color-layered outline glyphs (for example, scalable emoji glyphs). Additionally, the API reference has been completely overhauled and modernized, as already announced.
1.78.0:
* Various improvements in handling boxa sequences and transforms.
* New regression tests: boxa4_reg, string_reg
* New function for copying a pix, filtered by a boxa.
* Modify histogram method for image comparison.
* More careful attention to invalid boxes in box geometry functions.
* Better string and array functions for search and replace.
* Convenience functions for generating simple masks.
* Allow pdf writing of jp2k images, in full generality.
* Allow writing compressed ps images for printing.
* Modified enum comments to include a suggested enum name.
* New program: imagetops
Upstream changes:
== Ruby-GNOME2 3.3.6: 2019-03-21
This is a follow-up release of 3.3.5.
=== Changes
==== Ruby/GIO2
* Improvements
* (({Gio::File#read})): Added support for block.
* (({Gio::File.open})): Added support for (({Pathname})).
* (({Gio::InputStream.open})): Added support for block.
==== Ruby/CairoGObject
* Fixes
* Fixed a bug that old cairo may be used.
==== Ruby/GObjectIntrospection
* Fixes
* Fixed a bug that 64bit integer conversion may be failed for
large integer.
* Fixed typos.