[librsvg: 1/2] Update all gtk related crates



commit 5177a3d09429f663bd97c2deeab397b08df7a452
Author: Bastien Orivel <eijebong bananium fr>
Date:   Thu Jul 11 20:26:37 2019 +0200

    Update all gtk related crates

 Cargo.lock                                         | 162 ++++++++++-----------
 librsvg_crate/Cargo.toml                           |   8 +-
 librsvg_crate/examples/render_to_file.rs           |   2 +-
 librsvg_crate/src/lib.rs                           |   6 +-
 rsvg_internals/Cargo.toml                          |  24 +--
 rsvg_internals/src/aspect_ratio.rs                 |   2 +-
 rsvg_internals/src/bbox.rs                         |   1 -
 rsvg_internals/src/c_api.rs                        |   6 +-
 rsvg_internals/src/clip_path.rs                    |   2 +-
 rsvg_internals/src/drawing_ctx.rs                  |   8 +-
 rsvg_internals/src/filters/bounds.rs               |   2 +-
 rsvg_internals/src/filters/context.rs              |   2 +-
 rsvg_internals/src/filters/convolve_matrix.rs      |   2 +-
 rsvg_internals/src/filters/displacement_map.rs     |   2 +-
 rsvg_internals/src/filters/gaussian_blur.rs        |   1 -
 rsvg_internals/src/filters/image.rs                |   2 +-
 rsvg_internals/src/filters/light/light_source.rs   |   1 -
 rsvg_internals/src/filters/light/lighting.rs       |   2 +-
 rsvg_internals/src/filters/mod.rs                  |   2 +-
 rsvg_internals/src/filters/morphology.rs           |   2 +-
 rsvg_internals/src/filters/node.rs                 |   2 +-
 rsvg_internals/src/filters/offset.rs               |   2 +-
 rsvg_internals/src/filters/tile.rs                 |   4 +-
 rsvg_internals/src/filters/turbulence.rs           |   2 +-
 rsvg_internals/src/gradient.rs                     |  24 ++-
 rsvg_internals/src/image.rs                        |   2 +-
 rsvg_internals/src/io.rs                           |   2 +-
 rsvg_internals/src/mask.rs                         |   2 +-
 rsvg_internals/src/node.rs                         |   2 +-
 rsvg_internals/src/pattern.rs                      |   3 +-
 rsvg_internals/src/pixbuf_utils.rs                 |   6 +-
 rsvg_internals/src/rect.rs                         |   1 -
 rsvg_internals/src/surface_utils/shared_surface.rs |   5 +-
 rsvg_internals/src/text.rs                         |   8 +-
 rsvg_internals/src/transform.rs                    |   1 -
 35 files changed, 142 insertions(+), 163 deletions(-)
---
diff --git a/Cargo.lock b/Cargo.lock
index 9fbc6b29..fabbee76 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -62,23 +62,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index";
 
 [[package]]
 name = "cairo-rs"
-version = "0.6.0"
+version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 dependencies = [
  "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "cairo-sys-rs 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "glib 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "glib-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gobject-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cairo-sys-rs 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glib 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glib-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gobject-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "libc 0.2.55 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "cairo-sys-rs"
-version = "0.8.0"
+version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 dependencies = [
- "glib-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glib-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "libc 0.2.55 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -344,26 +344,26 @@ dependencies = [
 
 [[package]]
 name = "gdk-pixbuf"
-version = "0.6.0"
+version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 dependencies = [
- "gdk-pixbuf-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gio 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gio-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "glib 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "glib-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gobject-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gdk-pixbuf-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gio 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gio-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glib 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glib-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gobject-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "libc 0.2.55 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "gdk-pixbuf-sys"
-version = "0.8.0"
+version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 dependencies = [
- "gio-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "glib-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gobject-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gio-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glib-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gobject-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "libc 0.2.55 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
@@ -378,45 +378,45 @@ dependencies = [
 
 [[package]]
 name = "gio"
-version = "0.6.0"
+version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 dependencies = [
  "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
  "fragile 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gio-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "glib 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "glib-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gobject-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gio-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glib 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glib-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gobject-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "libc 0.2.55 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "gio-sys"
-version = "0.8.0"
+version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 dependencies = [
- "glib-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gobject-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glib-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gobject-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "libc 0.2.55 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "glib"
-version = "0.7.1"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 dependencies = [
  "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "glib-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gobject-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glib-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gobject-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "libc 0.2.55 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "glib-sys"
-version = "0.8.0"
+version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 dependencies = [
  "libc 0.2.55 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -425,10 +425,10 @@ dependencies = [
 
 [[package]]
 name = "gobject-sys"
-version = "0.8.0"
+version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 dependencies = [
- "glib-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glib-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "libc 0.2.55 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
@@ -480,9 +480,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index";
 name = "librsvg"
 version = "0.0.1"
 dependencies = [
- "cairo-rs 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gio 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "glib 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cairo-rs 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gio 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glib 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
  "rsvg_internals 0.0.1",
  "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -609,55 +609,55 @@ source = "registry+https://github.com/rust-lang/crates.io-index";
 
 [[package]]
 name = "pango"
-version = "0.6.0"
+version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 dependencies = [
  "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "glib 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "glib-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gobject-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glib 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glib-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gobject-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "libc 0.2.55 (registry+https://github.com/rust-lang/crates.io-index)",
- "pango-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pango-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "pango-sys"
-version = "0.8.0"
+version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 dependencies = [
- "glib-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gobject-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glib-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gobject-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "libc 0.2.55 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "pangocairo"
-version = "0.7.0"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 dependencies = [
  "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "cairo-rs 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "cairo-sys-rs 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "glib 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "glib-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gobject-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cairo-rs 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cairo-sys-rs 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glib 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glib-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gobject-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "libc 0.2.55 (registry+https://github.com/rust-lang/crates.io-index)",
- "pango 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "pango-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "pangocairo-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pango 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pango-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pangocairo-sys 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "pangocairo-sys"
-version = "0.9.0"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 dependencies = [
- "cairo-sys-rs 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "glib-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cairo-sys-rs 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glib-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "libc 0.2.55 (registry+https://github.com/rust-lang/crates.io-index)",
- "pango-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pango-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
@@ -913,21 +913,21 @@ name = "rsvg_internals"
 version = "0.0.1"
 dependencies = [
  "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "cairo-rs 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "cairo-sys-rs 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cairo-rs 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cairo-sys-rs 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "criterion 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
  "cssparser 0.25.5 (registry+https://github.com/rust-lang/crates.io-index)",
  "data-url 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "downcast-rs 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
  "encoding 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
  "float-cmp 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gdk-pixbuf 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gdk-pixbuf-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gio 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gio-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "glib 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "glib-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "gobject-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gdk-pixbuf 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gdk-pixbuf-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gio 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gio-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glib 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glib-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gobject-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "itertools 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -936,9 +936,9 @@ dependencies = [
  "markup5ever 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "nalgebra 0.18.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
- "pango 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "pango-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "pangocairo 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pango 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pango-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pangocairo 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
  "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "rctree 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1194,8 +1194,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index";
 "checksum autocfg 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = 
"0e49efa51329a5fd37e7c79db4621af617cd4e3e5bc224939808d076077077bf"
 "checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = 
"228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12"
 "checksum byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = 
"a019b10a2a7cdeb292db131fc8113e57ea2a908f6e7894b0c3c671893b65dbeb"
-"checksum cairo-rs 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"9e09d8a818b2ccc8983f04d95a9350c3cf8d24cc456cedca3b88fa3a81fdc0e2"
-"checksum cairo-sys-rs 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"b3fa13914fdc013387afa771f554f2f71d6ae931f4e5be9246c337d60c3dc484"
+"checksum cairo-rs 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = 
"e05db47de3b0f09a222fa4bba2eab957d920d4243962a86b2d77ab401e4a359c"
+"checksum cairo-sys-rs 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"90a1ec04603a78c111886a385edcec396dbfbc57ea26b9e74aeea6a1fe55dcca"
 "checksum cast 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = 
"926013f2860c46252efceabb19f4a6b308197505082c609025aa6706c011d427"
 "checksum cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = 
"b486ce3ccf7ffd79fdeb678eac06a9e6c09fc88d33836340becb8fffe87c5e33"
 "checksum clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"5067f5bb2d80ef5d68b4c87db81601f0b75bca627bc2ef76b141d7b846a3c6d9"
@@ -1225,14 +1225,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index";
 "checksum fragile 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"05f8140122fa0d5dcb9fc8627cfce2b37cc1500f752636d46ea28bc26785c2f9"
 "checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = 
"a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
 "checksum futf 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = 
"7c9c1ce3fa9336301af935ab852c437817d14cd33690446569392e65170aac3b"
-"checksum gdk-pixbuf 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"9a1bcb11b461ff5638f6bf03c9f173d3dc250eabc8e57a60644b6f529d3a7c91"
-"checksum gdk-pixbuf-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"10e1115ca451907b6d775fc0392641d14c89277662d98828412fb68555e7e8c8"
+"checksum gdk-pixbuf 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"9726408ee1bbada83094326a99b9c68fea275f9dbb515de242a69e72051f4fcc"
+"checksum gdk-pixbuf-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"b1d6778abf5764b9080a9345a16c5d16289426a3b3edd808a29a9061d431c465"
 "checksum generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"3c0f28c2f5bfb5960175af447a2da7c18900693738343dc896ffbcabd9839592"
-"checksum gio 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"ff120a666f4a0f41cca7554fbac82defc2562e90eccf3b26a30e6461fa1bbde8"
-"checksum gio-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"04957c40df00dd72f7c9ec8e382b01ff8ed4a904fcd2fa608b7ae7fbaccfda8f"
-"checksum glib 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = 
"0c4e8fdc159c196a5dfa53a92929ac4c10c8a6637ffb43951f3fff89c2cd2365"
-"checksum glib-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"5bda542f3caee39a027638e9644ff89204101ad916fd7370b585ad2c5fc97e61"
-"checksum gobject-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"23e05a14290d3dc255223cba51db4b0f3da438d5250657996fa99b2a30faf43e"
+"checksum gio 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"6261b5d34c30c2d59f879e643704cf54cb44731f3a2038000b68790c03e360e3"
+"checksum gio-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"778b856a70a32e2cc5dd5cc7fa1b0c4b6df924fdf5c82984bc28f30565657cfe"
+"checksum glib 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"d70d737019da0473a7cd6d9240571cf58c6897dcb10edf32b90774f4ba237c1b"
+"checksum glib-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"4b86a9169fbc9cf9a0ef315039c2304b09d5c575c5fde7defba3576a0311b863"
+"checksum gobject-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"61d55bc9202447ca776f6ad0048c36e3312010f66f82ab478e97513e93f3604b"
 "checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = 
"38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e"
 "checksum itertools 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"5b8467d9c1cebe26feb08c640139247fac215782d35371ade9a2136ed6085358"
 "checksum itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = 
"501266b7edd0174f8530248f87f99c88fbe60ca4ef3dd486835b8d8d53136f7f"
@@ -1255,10 +1255,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index";
 "checksum num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = 
"6ba9a427cfca2be13aa6f6403b0b7e7368fe982bfa16fccc450ce74c46cd9b32"
 "checksum num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"1a23f0ed30a54abaa0c7e83b1d2d87ada7c3c23078d1d87815af3e3b6385fbba"
 "checksum numtoa 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"b8f8bdf33df195859076e54ab11ee78a1b208382d3a26ec40d142ffc1ecc49ef"
-"checksum pango 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"4e36b55d7cd522bd183efeb3dfabc547bda1f26eadf8a1241dac09ab3fd3242c"
-"checksum pango-sys 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"747ab9cd4d537e6dc5ef0e4308c10dde8b706673b0237fed4e056b8d2c0b23c8"
-"checksum pangocairo 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"706e885b46a16ba96f46f3c8d880ca6082c2c62693b75f3d167bd3aa4e34b0d4"
-"checksum pangocairo-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"868310e83da5269323c28bd47b641557d032426f396cddfa45e247ff44da9a12"
+"checksum pango 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"393fa071b144f8ffb83ede273758983cf414ca3c0b1d2a5a9ce325b3ba3dd786"
+"checksum pango-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"1ee97abcad820f9875e032656257ad1c790e7b11a0e6ce2516a8f5b0d8f8213f"
+"checksum pangocairo 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"7486695787f206924b662cb8ca7b3c987fdbbff4ccff3612017cf471aee65162"
+"checksum pangocairo-sys 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = 
"bd3ef177ef222904c6cafd94ddca16db24e6287089b796dd9912f99a139006e3"
 "checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = 
"31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831"
 "checksum phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = 
"b3da44b85f8e8dfaec21adae67f95d93244b2ecf6ad2a692320598dcc8e6dd18"
 "checksum phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = 
"b03e85129e324ad4166b06b2c7491ae27fe3ec353af72e72cd1654c7225d517e"
diff --git a/librsvg_crate/Cargo.toml b/librsvg_crate/Cargo.toml
index 294c63fe..c4565bb4 100644
--- a/librsvg_crate/Cargo.toml
+++ b/librsvg_crate/Cargo.toml
@@ -10,14 +10,14 @@ edition = "2018"
 name = "librsvg"
 
 [dependencies]
-cairo-rs = "0.6.0"
-glib = "0.7.0"
-gio = { version="0.6.0", features=["v2_48"] } # per configure.ac
+cairo-rs = "0.7.0"
+glib = "0.8.0"
+gio = { version="0.7.0", features=["v2_48"] } # per configure.ac
 rsvg_internals = { path = "../rsvg_internals" }
 url = "1.7.2"
 
 [dev-dependencies]
-cairo-rs = { version = "0.6.0", features = ["png", "svg"] }
+cairo-rs = { version = "0.7.0", features = ["png", "svg"] }
 rsvg_internals = { path = "../rsvg_internals" }
 
 [build-dependencies]
diff --git a/librsvg_crate/examples/render_to_file.rs b/librsvg_crate/examples/render_to_file.rs
index 9551331d..38c4bd07 100644
--- a/librsvg_crate/examples/render_to_file.rs
+++ b/librsvg_crate/examples/render_to_file.rs
@@ -10,7 +10,7 @@ fn main() {
         .unwrap();
     let renderer = librsvg::CairoRenderer::new(&handle);
 
-    let surface = cairo::svg::File::new(width, height, output);
+    let surface = cairo::SvgSurface::new(width, height, output);
     let cr = cairo::Context::new(&surface);
     renderer
         .render_element_to_viewport(
diff --git a/librsvg_crate/src/lib.rs b/librsvg_crate/src/lib.rs
index 9b3c66c6..33286d6d 100644
--- a/librsvg_crate/src/lib.rs
+++ b/librsvg_crate/src/lib.rs
@@ -296,11 +296,7 @@ impl Loader {
 }
 
 fn url_from_file(file: &gio::File) -> Result<Url, LoadingError> {
-    if let Some(uri) = file.get_uri() {
-        Ok(Url::parse(&uri).map_err(|_| LoadingError::BadUrl)?)
-    } else {
-        Err(LoadingError::BadUrl)
-    }
+    Ok(Url::parse(&file.get_uri()).map_err(|_| LoadingError::BadUrl)?)
 }
 
 /// Handle used to hold SVG data in memory.
diff --git a/rsvg_internals/Cargo.toml b/rsvg_internals/Cargo.toml
index 6c6f045f..5cd9c88e 100644
--- a/rsvg_internals/Cargo.toml
+++ b/rsvg_internals/Cargo.toml
@@ -19,20 +19,20 @@ edition = "2018"
 
 [dependencies]
 bitflags = "1.0"
-cairo-rs = { version="0.6.0", features=["v1_16"] }
-cairo-sys-rs = "0.8.0"
+cairo-rs = { version="0.7.0", features=["v1_16"] }
+cairo-sys-rs = "0.9.0"
 cssparser = "0.25.5"
 data-url = "0.1"
 downcast-rs = "^1.0.0"
 encoding = "0.2.33"
 float-cmp = "= 0.4.0"
-gdk-pixbuf = "0.6.0"
-gdk-pixbuf-sys = "0.8.0"
-gio = { version="0.6.0", features=["v2_48"] } # per configure.ac
-gio-sys = "0.8.0"
-glib = { version="0.7.0", features=["subclassing"] }
-glib-sys = "0.8.0"
-gobject-sys = "0.8.0"
+gdk-pixbuf = "0.7.0"
+gdk-pixbuf-sys = "0.9.0"
+gio = { version="0.7.0", features=["v2_48"] } # per configure.ac
+gio-sys = "0.9.0"
+glib = { version="0.8.0", features=["subclassing"] }
+glib-sys = "0.9.0"
+gobject-sys = "0.9.0"
 itertools = "0.8"
 language-tags = "0.2.2"
 lazy_static = "1.0.0"
@@ -41,9 +41,9 @@ locale_config = "*" # recommended explicitly by locale_config's README.md
 markup5ever = "0.8.1"
 nalgebra = "0.18"
 num-traits = "0.2"
-pango = "0.6.0"
-pango-sys = "0.8.0"
-pangocairo = "0.7.0"
+pango = "0.7.0"
+pango-sys = "0.9.0"
+pangocairo = "0.8.0"
 phf = "0.7.21"
 rayon = "1"
 rctree = "0.3.3"
diff --git a/rsvg_internals/src/aspect_ratio.rs b/rsvg_internals/src/aspect_ratio.rs
index f26e219f..a4df07b6 100644
--- a/rsvg_internals/src/aspect_ratio.rs
+++ b/rsvg_internals/src/aspect_ratio.rs
@@ -22,7 +22,7 @@
 
 use std::ops::Deref;
 
-use cairo::{self, MatrixTrait};
+use cairo;
 
 use crate::error::ValueErrorKind;
 use crate::float_eq_cairo::ApproxEqCairo;
diff --git a/rsvg_internals/src/bbox.rs b/rsvg_internals/src/bbox.rs
index 4c76b805..68ccae69 100644
--- a/rsvg_internals/src/bbox.rs
+++ b/rsvg_internals/src/bbox.rs
@@ -1,5 +1,4 @@
 use cairo;
-use cairo::MatrixTrait;
 
 use crate::rect::RectangleExt;
 
diff --git a/rsvg_internals/src/c_api.rs b/rsvg_internals/src/c_api.rs
index 13ad19fb..642fd225 100644
--- a/rsvg_internals/src/c_api.rs
+++ b/rsvg_internals/src/c_api.rs
@@ -508,11 +508,7 @@ impl CHandle {
     }
 
     pub fn set_base_gfile(&self, file: &gio::File) {
-        if let Some(uri) = file.get_uri() {
-            self.set_base_url(&uri);
-        } else {
-            panic!("file has no URI; will not set the base URI");
-        }
+        self.set_base_url(&file.get_uri());
     }
 
     pub fn get_base_url_as_ptr(&self) -> *const libc::c_char {
diff --git a/rsvg_internals/src/clip_path.rs b/rsvg_internals/src/clip_path.rs
index b6ad0c20..a6958459 100644
--- a/rsvg_internals/src/clip_path.rs
+++ b/rsvg_internals/src/clip_path.rs
@@ -1,4 +1,4 @@
-use cairo::{self, MatrixTrait};
+use cairo;
 use markup5ever::local_name;
 
 use crate::bbox::BoundingBox;
diff --git a/rsvg_internals/src/drawing_ctx.rs b/rsvg_internals/src/drawing_ctx.rs
index b5d8da27..36da8957 100644
--- a/rsvg_internals/src/drawing_ctx.rs
+++ b/rsvg_internals/src/drawing_ctx.rs
@@ -1,9 +1,9 @@
 use cairo;
-use cairo::prelude::*;
 use cairo_sys;
 use glib::translate::*;
 use std::cell::RefCell;
 use std::rc::{Rc, Weak};
+use std::convert::TryFrom;
 
 use crate::allowed_url::Fragment;
 use crate::aspect_ratio::AspectRatio;
@@ -437,7 +437,7 @@ impl DrawingCtx {
                     // Create temporary surface and its cr
 
                     let cr = if filter.is_some() {
-                        cairo::Context::new(&dc.create_surface_for_toplevel_viewport()?)
+                        cairo::Context::new(&*dc.create_surface_for_toplevel_viewport()?)
                     } else {
                         cairo::Context::new(
                             &dc.create_similar_surface_for_toplevel_viewport(&dc.cr.get_target())?,
@@ -461,11 +461,11 @@ impl DrawingCtx {
                     // Filter
 
                     let source_surface = if let Some(filter_uri) = filter {
-                        let child_surface = cairo::ImageSurface::from(dc.cr.get_target()).unwrap();
+                        let child_surface = cairo::ImageSurface::try_from(dc.cr.get_target()).unwrap();
                         let img_surface =
                             dc.run_filter(filter_uri, node, values, &child_surface, dc.bbox)?;
                         // turn into a Surface
-                        img_surface.as_ref().clone()
+                        (*img_surface).clone()
                     } else {
                         dc.cr.get_target()
                     };
diff --git a/rsvg_internals/src/filters/bounds.rs b/rsvg_internals/src/filters/bounds.rs
index 9a6a9a10..10548726 100644
--- a/rsvg_internals/src/filters/bounds.rs
+++ b/rsvg_internals/src/filters/bounds.rs
@@ -1,5 +1,5 @@
 //! Filter primitive subregion computation.
-use cairo::{self, MatrixTrait};
+use cairo;
 
 use crate::bbox::BoundingBox;
 use crate::drawing_ctx::DrawingCtx;
diff --git a/rsvg_internals/src/filters/context.rs b/rsvg_internals/src/filters/context.rs
index 430abd08..d74853a2 100644
--- a/rsvg_internals/src/filters/context.rs
+++ b/rsvg_internals/src/filters/context.rs
@@ -2,7 +2,7 @@ use std::cell::UnsafeCell;
 use std::collections::HashMap;
 use std::f64;
 
-use cairo::{self, MatrixTrait};
+use cairo;
 
 use crate::bbox::BoundingBox;
 use crate::coord_units::CoordUnits;
diff --git a/rsvg_internals/src/filters/convolve_matrix.rs b/rsvg_internals/src/filters/convolve_matrix.rs
index d5ce1f17..4ba955ca 100644
--- a/rsvg_internals/src/filters/convolve_matrix.rs
+++ b/rsvg_internals/src/filters/convolve_matrix.rs
@@ -1,4 +1,4 @@
-use cairo::{self, ImageSurface, MatrixTrait};
+use cairo::{self, ImageSurface};
 use markup5ever::{local_name, LocalName};
 use nalgebra::{DMatrix, Dynamic, VecStorage};
 
diff --git a/rsvg_internals/src/filters/displacement_map.rs b/rsvg_internals/src/filters/displacement_map.rs
index b6c581cd..ea491613 100644
--- a/rsvg_internals/src/filters/displacement_map.rs
+++ b/rsvg_internals/src/filters/displacement_map.rs
@@ -1,4 +1,4 @@
-use cairo::{self, ImageSurface, MatrixTrait};
+use cairo::{self, ImageSurface};
 use markup5ever::{local_name, LocalName};
 
 use crate::drawing_ctx::DrawingCtx;
diff --git a/rsvg_internals/src/filters/gaussian_blur.rs b/rsvg_internals/src/filters/gaussian_blur.rs
index 723e643e..61e75971 100644
--- a/rsvg_internals/src/filters/gaussian_blur.rs
+++ b/rsvg_internals/src/filters/gaussian_blur.rs
@@ -1,7 +1,6 @@
 use std::cmp::min;
 use std::f64;
 
-use cairo::MatrixTrait;
 use markup5ever::local_name;
 use nalgebra::{DMatrix, Dynamic, VecStorage};
 
diff --git a/rsvg_internals/src/filters/image.rs b/rsvg_internals/src/filters/image.rs
index e5b06a71..8adf9ed8 100644
--- a/rsvg_internals/src/filters/image.rs
+++ b/rsvg_internals/src/filters/image.rs
@@ -1,4 +1,4 @@
-use cairo::{self, ImageSurface, MatrixTrait, PatternTrait, Rectangle};
+use cairo::{self, ImageSurface, Rectangle};
 use markup5ever::local_name;
 
 use crate::allowed_url::{Fragment, Href};
diff --git a/rsvg_internals/src/filters/light/light_source.rs 
b/rsvg_internals/src/filters/light/light_source.rs
index 974a2d8f..e8661346 100644
--- a/rsvg_internals/src/filters/light/light_source.rs
+++ b/rsvg_internals/src/filters/light/light_source.rs
@@ -1,4 +1,3 @@
-use cairo::MatrixTrait;
 use cssparser;
 use markup5ever::local_name;
 use nalgebra::Vector3;
diff --git a/rsvg_internals/src/filters/light/lighting.rs b/rsvg_internals/src/filters/light/lighting.rs
index 67e78fbe..2b27405e 100644
--- a/rsvg_internals/src/filters/light/lighting.rs
+++ b/rsvg_internals/src/filters/light/lighting.rs
@@ -1,6 +1,6 @@
 use std::cmp::max;
 
-use cairo::{self, ImageSurface, MatrixTrait};
+use cairo::{self, ImageSurface};
 use cssparser;
 use markup5ever::local_name;
 use nalgebra::Vector3;
diff --git a/rsvg_internals/src/filters/mod.rs b/rsvg_internals/src/filters/mod.rs
index e25d59b7..067d9dd6 100644
--- a/rsvg_internals/src/filters/mod.rs
+++ b/rsvg_internals/src/filters/mod.rs
@@ -1,7 +1,7 @@
 use std::ops::Deref;
 use std::time::Instant;
 
-use cairo::{self, MatrixTrait};
+use cairo;
 use markup5ever::local_name;
 
 use crate::bbox::BoundingBox;
diff --git a/rsvg_internals/src/filters/morphology.rs b/rsvg_internals/src/filters/morphology.rs
index 23741166..286c254f 100644
--- a/rsvg_internals/src/filters/morphology.rs
+++ b/rsvg_internals/src/filters/morphology.rs
@@ -1,6 +1,6 @@
 use std::cmp::{max, min};
 
-use cairo::{self, ImageSurface, MatrixTrait};
+use cairo::{self, ImageSurface};
 use markup5ever::{local_name, LocalName};
 
 use crate::drawing_ctx::DrawingCtx;
diff --git a/rsvg_internals/src/filters/node.rs b/rsvg_internals/src/filters/node.rs
index 7c036652..5ced7c0a 100644
--- a/rsvg_internals/src/filters/node.rs
+++ b/rsvg_internals/src/filters/node.rs
@@ -1,5 +1,5 @@
 //! The <filter> node.
-use cairo::{self, MatrixTrait};
+use cairo;
 use markup5ever::local_name;
 
 use crate::bbox::BoundingBox;
diff --git a/rsvg_internals/src/filters/offset.rs b/rsvg_internals/src/filters/offset.rs
index e4fa299e..03661c99 100644
--- a/rsvg_internals/src/filters/offset.rs
+++ b/rsvg_internals/src/filters/offset.rs
@@ -1,4 +1,4 @@
-use cairo::{self, ImageSurface, MatrixTrait};
+use cairo::{self, ImageSurface};
 use markup5ever::local_name;
 
 use crate::drawing_ctx::DrawingCtx;
diff --git a/rsvg_internals/src/filters/tile.rs b/rsvg_internals/src/filters/tile.rs
index 156a80f7..e4800d97 100644
--- a/rsvg_internals/src/filters/tile.rs
+++ b/rsvg_internals/src/filters/tile.rs
@@ -1,4 +1,4 @@
-use cairo::{self, ImageSurface, Matrix, MatrixTrait, PatternTrait};
+use cairo::{self, ImageSurface, Matrix};
 
 use crate::drawing_ctx::DrawingCtx;
 use crate::node::{NodeResult, NodeTrait, RsvgNode};
@@ -89,7 +89,7 @@ impl Filter for Tile {
                     );
                     cr.clip();
 
-                    cr.set_source(&cairo::Pattern::SurfacePattern(ptn));
+                    cr.set_source(&ptn);
                     cr.paint();
                 }
 
diff --git a/rsvg_internals/src/filters/turbulence.rs b/rsvg_internals/src/filters/turbulence.rs
index b096096b..f491dc41 100644
--- a/rsvg_internals/src/filters/turbulence.rs
+++ b/rsvg_internals/src/filters/turbulence.rs
@@ -1,4 +1,4 @@
-use cairo::{self, ImageSurface, MatrixTrait};
+use cairo::{self, ImageSurface};
 use markup5ever::{local_name, LocalName};
 
 use crate::drawing_ctx::DrawingCtx;
diff --git a/rsvg_internals/src/gradient.rs b/rsvg_internals/src/gradient.rs
index 087cba78..45bcde3b 100644
--- a/rsvg_internals/src/gradient.rs
+++ b/rsvg_internals/src/gradient.rs
@@ -1,4 +1,4 @@
-use cairo::{self, MatrixTrait};
+use cairo;
 use cssparser::{self, CowRcStr, Parser, Token};
 use markup5ever::local_name;
 
@@ -197,9 +197,9 @@ impl CommonGradientData {
         }
     }
 
-    fn add_color_stops_to_pattern<T, G: cairo::Gradient<PatternType = T>>(
+    fn add_color_stops_to_pattern(
         &self,
-        pattern: &mut G,
+        pattern: &cairo::Gradient,
         opacity: &UnitInterval,
     ) {
         if let Some(stops) = self.stops.as_ref() {
@@ -219,9 +219,9 @@ impl CommonGradientData {
         }
     }
 
-    fn set_on_pattern<P: cairo::PatternTrait + cairo::Gradient>(
+    fn set_on_pattern(
         &self,
-        pattern: &mut P,
+        pattern: &cairo::Gradient,
         bbox: &BoundingBox,
         opacity: &UnitInterval,
     ) {
@@ -494,7 +494,7 @@ macro_rules! impl_resolve {
 }
 
 macro_rules! impl_paint_source {
-    ($gradient:ty, $node_type:pat, $other_gradient:ty, $other_type:pat, $cairo_pattern:expr) => {
+    ($gradient:ty, $node_type:pat, $other_gradient:ty, $other_type:pat) => {
         impl PaintSource for $gradient {
             type Source = $gradient;
 
@@ -569,10 +569,10 @@ macro_rules! impl_paint_source {
                     draw_ctx.get_view_params()
                 };
 
-                let mut p = gradient.variant.to_cairo_gradient(values, &params);
-                gradient.common.set_on_pattern(&mut p, bbox, opacity);
+                let p = gradient.variant.to_cairo_gradient(values, &params);
+                gradient.common.set_on_pattern(&p, bbox, opacity);
                 let cr = draw_ctx.get_cairo_context();
-                cr.set_source(&$cairo_pattern(p));
+                cr.set_source(&p);
 
                 Ok(true)
             }
@@ -610,8 +610,7 @@ impl_paint_source!(
     NodeLinearGradient,
     NodeType::LinearGradient,
     NodeRadialGradient,
-    NodeType::RadialGradient,
-    cairo::Pattern::LinearGradient
+    NodeType::RadialGradient
 );
 
 #[derive(Clone, Default)]
@@ -628,8 +627,7 @@ impl_paint_source!(
     NodeRadialGradient,
     NodeType::RadialGradient,
     NodeLinearGradient,
-    NodeType::LinearGradient,
-    cairo::Pattern::RadialGradient
+    NodeType::LinearGradient
 );
 
 #[cfg(test)]
diff --git a/rsvg_internals/src/image.rs b/rsvg_internals/src/image.rs
index 215ca355..2e844039 100644
--- a/rsvg_internals/src/image.rs
+++ b/rsvg_internals/src/image.rs
@@ -1,5 +1,5 @@
 use cairo;
-use cairo::{PatternTrait, Rectangle};
+use cairo::Rectangle;
 use markup5ever::local_name;
 
 use crate::allowed_url::Href;
diff --git a/rsvg_internals/src/io.rs b/rsvg_internals/src/io.rs
index d6d1794b..69702333 100644
--- a/rsvg_internals/src/io.rs
+++ b/rsvg_internals/src/io.rs
@@ -108,7 +108,7 @@ pub fn acquire_data(
         let file = GFile::new_for_uri(uri);
         let (contents, _etag) = file.load_contents(cancellable)?;
 
-        let (content_type, _uncertain) = gio::content_type_guess(uri, &contents);
+        let (content_type, _uncertain) = gio::content_type_guess(Some(uri), &contents);
         let mime_type = gio::content_type_get_mime_type(&content_type).map(String::from);
 
         Ok(BinaryData {
diff --git a/rsvg_internals/src/mask.rs b/rsvg_internals/src/mask.rs
index e5a50947..8226d60b 100644
--- a/rsvg_internals/src/mask.rs
+++ b/rsvg_internals/src/mask.rs
@@ -1,4 +1,4 @@
-use cairo::{self, MatrixTrait};
+use cairo;
 use markup5ever::local_name;
 
 use crate::bbox::BoundingBox;
diff --git a/rsvg_internals/src/node.rs b/rsvg_internals/src/node.rs
index 2184777a..01dec01f 100644
--- a/rsvg_internals/src/node.rs
+++ b/rsvg_internals/src/node.rs
@@ -1,4 +1,4 @@
-use cairo::{Matrix, MatrixTrait};
+use cairo::Matrix;
 use downcast_rs::*;
 use markup5ever::{local_name, LocalName};
 use std::cell::Ref;
diff --git a/rsvg_internals/src/pattern.rs b/rsvg_internals/src/pattern.rs
index 941a644a..b387b66f 100644
--- a/rsvg_internals/src/pattern.rs
+++ b/rsvg_internals/src/pattern.rs
@@ -1,5 +1,4 @@
 use cairo;
-use cairo::{MatrixTrait, PatternTrait};
 use markup5ever::local_name;
 use std::cell::RefCell;
 use std::f64;
@@ -360,7 +359,7 @@ impl PaintSource for NodePattern {
         surface_pattern.set_matrix(matrix);
         surface_pattern.set_filter(cairo::Filter::Best);
 
-        cr_save.set_source(&cairo::Pattern::SurfacePattern(surface_pattern));
+        cr_save.set_source(&surface_pattern);
 
         res.and_then(|_| Ok(true))
     }
diff --git a/rsvg_internals/src/pixbuf_utils.rs b/rsvg_internals/src/pixbuf_utils.rs
index 5dd413db..1c03717e 100644
--- a/rsvg_internals/src/pixbuf_utils.rs
+++ b/rsvg_internals/src/pixbuf_utils.rs
@@ -198,11 +198,7 @@ fn get_default_dpi() -> Dpi {
 }
 
 fn url_from_file(file: &gio::File) -> Result<Url, LoadingError> {
-    if let Some(uri) = file.get_uri() {
-        Ok(Url::parse(&uri).map_err(|_| LoadingError::BadUrl)?)
-    } else {
-        Err(LoadingError::BadUrl)
-    }
+    Ok(Url::parse(&file.get_uri()).map_err(|_| LoadingError::BadUrl)?)
 }
 
 fn pixbuf_from_file_with_size_mode(
diff --git a/rsvg_internals/src/rect.rs b/rsvg_internals/src/rect.rs
index 3564a634..fbf37554 100644
--- a/rsvg_internals/src/rect.rs
+++ b/rsvg_internals/src/rect.rs
@@ -1,5 +1,4 @@
 use cairo;
-use cairo::MatrixTrait;
 
 use crate::float_eq_cairo::ApproxEqCairo;
 
diff --git a/rsvg_internals/src/surface_utils/shared_surface.rs 
b/rsvg_internals/src/surface_utils/shared_surface.rs
index 1a236973..e30aa9db 100644
--- a/rsvg_internals/src/surface_utils/shared_surface.rs
+++ b/rsvg_internals/src/surface_utils/shared_surface.rs
@@ -3,7 +3,6 @@ use std::cmp::min;
 use std::marker::PhantomData;
 use std::ptr::NonNull;
 
-use cairo::prelude::SurfaceExt;
 use cairo::{self, ImageSurface};
 use cairo_sys;
 use gdk_pixbuf::{Colorspace, Pixbuf};
@@ -313,8 +312,8 @@ impl SharedImageSurface {
     }
 
     /// Creates a Cairo surface pattern from the surface
-    pub fn to_cairo_pattern(&self) -> cairo::Pattern {
-        cairo::Pattern::SurfacePattern(cairo::SurfacePattern::create(&self.surface))
+    pub fn to_cairo_pattern(&self) -> cairo::SurfacePattern {
+        cairo::SurfacePattern::create(&self.surface)
     }
 
     /// Returns a new `ImageSurface` with the same contents as the one stored in this
diff --git a/rsvg_internals/src/text.rs b/rsvg_internals/src/text.rs
index e9a4b3b9..cb73aff4 100644
--- a/rsvg_internals/src/text.rs
+++ b/rsvg_internals/src/text.rs
@@ -1,6 +1,6 @@
 use glib::translate::*;
 use markup5ever::local_name;
-use pango::{self, ContextExt, FontMapExt, LayoutExt};
+use pango::{self, FontMapExt};
 use pango_sys;
 use pangocairo;
 use std::cell::RefCell;
@@ -903,7 +903,7 @@ fn get_pango_context(cr: &cairo::Context, is_testing: bool) -> pango::Context {
         options.set_hint_style(cairo::HintStyle::Full);
         options.set_hint_metrics(cairo::HintMetrics::On);
 
-        pangocairo::functions::context_set_font_options(&context, &options);
+        pangocairo::functions::context_set_font_options(&context, Some(&options));
     }
 
     context
@@ -955,7 +955,7 @@ fn create_pango_layout(
 
     let layout = pango::Layout::new(&pango_context);
     layout.set_auto_dir(false);
-    layout.set_font_description(&font_desc);
+    layout.set_font_description(Some(&font_desc));
 
     let attr_list = pango::AttrList::new();
 
@@ -974,7 +974,7 @@ fn create_pango_layout(
         attr_list.insert(pango::Attribute::new_strikethrough(true).unwrap());
     }
 
-    layout.set_attributes(&attr_list);
+    layout.set_attributes(Some(&attr_list));
     layout.set_alignment(pango::Alignment::from(values.direction));
     layout.set_text(text);
 
diff --git a/rsvg_internals/src/transform.rs b/rsvg_internals/src/transform.rs
index 3e39590e..32bca3b3 100644
--- a/rsvg_internals/src/transform.rs
+++ b/rsvg_internals/src/transform.rs
@@ -2,7 +2,6 @@ use cairo;
 
 use std::f64::consts::*;
 
-use cairo::MatrixTrait;
 use cssparser::{ParseError as CssParseError, Parser, Token};
 
 use crate::error::*;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]