Index: general.ent
===================================================================
--- general.ent	(revision 4969ec3ca751829dfcd6903040590e588eab355e)
+++ general.ent	(revision ec2353a36fbe0a2bc55d0f671f3875912771728b)
@@ -1,5 +1,5 @@
 <!-- $LastChangedBy$ $Date$ -->
 
-<!ENTITY day          "16">                   <!-- Always 2 digits -->
+<!ENTITY day          "17">                   <!-- Always 2 digits -->
 <!ENTITY month        "03">                   <!-- Always 2 digits -->
 <!ENTITY year         "2020">
Index: general/graphlib/librsvg.xml
===================================================================
--- general/graphlib/librsvg.xml	(revision 4969ec3ca751829dfcd6903040590e588eab355e)
+++ general/graphlib/librsvg.xml	(revision ec2353a36fbe0a2bc55d0f671f3875912771728b)
@@ -5,10 +5,10 @@
   %general-entities;
 
-  <!ENTITY librsvg-download-http "&gnome-download-http;/librsvg/2.46/librsvg-&librsvg-version;.tar.xz">
-  <!ENTITY librsvg-download-ftp  "&gnome-download-ftp;/librsvg/2.46/librsvg-&librsvg-version;.tar.xz">
-  <!ENTITY librsvg-md5sum        "aca4001b267de77924b786886a1ad64a">
-  <!ENTITY librsvg-size          "12 MB">
-  <!ENTITY librsvg-buildsize     "849 MB (add 375 MB for tests)">
-  <!ENTITY librsvg-time          "1.7 SBU (add 1.2 SBU for tests)">
+  <!ENTITY librsvg-download-http "&gnome-download-http;/librsvg/2.48/librsvg-&librsvg-version;.tar.xz">
+  <!ENTITY librsvg-download-ftp  "&gnome-download-ftp;/librsvg/2.48/librsvg-&librsvg-version;.tar.xz">
+  <!ENTITY librsvg-md5sum        "1f682259f2d11e786f283079e4ed02b7">
+  <!ENTITY librsvg-size          "13 MB">
+  <!ENTITY librsvg-buildsize     "1.3 GB (83 MB installed), add 616 MB for tests">
+  <!ENTITY librsvg-time          "2.3 SBU (on a 4-core machine), add 1.0 SBU for tests">
 ]>
 
@@ -77,5 +77,4 @@
     <para role="required">
       <xref linkend="gdk-pixbuf"/>,
-      <xref linkend="libcroco"/>,
       <xref linkend="cairo"/>,
       <xref linkend="pango"/>, and 
@@ -113,9 +112,11 @@
 
     <para>
-      To test the results, issue: <command>make check</command>. Over 100 tests
-      fail as a result of problems with the test suite. These test failures
-      are primarily related to svg1.1, and are comparison problems due to 
-      using a later version of Pango than what the developers created the
-      initial SVG files with.
+      To test the results, issue: <command>make check</command>.
+      <!-- https://gitlab.gnome.org/GNOME/librsvg/issues/511 -->
+      Many of the tests in 'reftests' may fail (45 failed in March 2020) because
+      they produce, and then diff, graphic files with text and the details such
+      as spacing vary when the system versions of cairo, freetype, pixman, pango
+      and perhaps harfbuzz differ from the versions on the system where the
+      reference files were created.
     </para>
 
Index: general/prog/rust.xml
===================================================================
--- general/prog/rust.xml	(revision 4969ec3ca751829dfcd6903040590e588eab355e)
+++ general/prog/rust.xml	(revision ec2353a36fbe0a2bc55d0f671f3875912771728b)
@@ -7,6 +7,6 @@
   <!ENTITY rust-download-http "https://static.rust-lang.org/dist/rustc-&rust-version;-src.tar.gz">
   <!ENTITY rust-download-ftp  " ">
-  <!ENTITY rust-md5sum        "e67432b37150f13e186ebfb67e5192fb">
-  <!ENTITY rust-size          "147 MB">
+  <!ENTITY rust-md5sum        "b348233fdbbf7858763bab7cb9c314ae">
+  <!ENTITY rust-size          "146 MB">
   <!-- Gentle Reminder: buildsize is how much the user requires for the real
        install, i.e. the source with its DESTDIR *plus* the DESTDIR.  You
@@ -14,6 +14,6 @@
        to measure it. -->
 
-  <!ENTITY rust-buildsize     "5.3GB (375 MB installed) including 429MB of ~/.cargo files for the user building this. Add 1.7 GB if running the tests">
-  <!ENTITY rust-time          "24 SBU (add 13 SBU for tests, both with 4 processors)">
+  <!ENTITY rust-buildsize     "7.7 GB (607 MB installed) including 398 MB of ~/.cargo files for the user building this. Add 2.1 GB if running the tests">
+  <!ENTITY rust-time          "24 SBU (add 12 SBU for tests, both on a 4-core machine)">
 ]>
 
@@ -42,8 +42,9 @@
     <para>
       This package is updated on a six-weekly release cycle. Because it is
-      such a large and slow package to build, and is at the moment only required
-      by a few packages in this book, the BLFS editors take the view that it
-      should only be updated when that is necessary (either to fix problems,
-      or to allow a new version of <application>firefox</application> to build).
+      such a large and slow package to build, is at the moment only required
+      by a few packages in this book, and particularly because newer versions
+      tend to break older mozilla packages, the BLFS editors take the view that
+      it should only be updated when that is necessary (either to fix problems,
+      or to allow a new version of a package to build).
     </para>
 
@@ -82,6 +83,6 @@
         class="directory">/opt</filename> directory.  In particular, if you
         have reason to rebuild with a modified configuration (e.g. using the
-        shipped LLVM after building with shared LLVM, but perhaps also the
-        reverse situation) it it possible for the install to leave a broken
+        shipped LLVM after building with shared LLVM, or for the
+        reverse situation) it is possible for the install to leave a broken
         <command>cargo</command> program. In such a situation, either remove
         the existing installation first, or use a different prefix such as
@@ -167,5 +168,5 @@
     </itemizedlist>
 
-    <bridgehead renderas="sect3">Additional Downloads</bridgehead>
+<!--<bridgehead renderas="sect3">Additional Downloads</bridgehead>
     <itemizedlist spacing="compact">
       <listitem>
@@ -175,5 +176,5 @@
         </para>
       </listitem>
-    </itemizedlist>
+    </itemizedlist>-->
 
     <bridgehead renderas="sect3">Rust Dependencies</bridgehead>
@@ -276,12 +277,12 @@
 EOF</userinput></screen>
 
-    <para>
+<!--<para>
      Adapt rustc to allow it to build and function with the changes in LLVM-9:
     </para>
 
-<screen><userinput remap="pre">patch -Np1 -i ../rustc-&rust-version;-llvm9_fixes-1.patch</userinput></screen>
-
-    <para>
-      Now compile <application>Rust</application> by running the following
+<screen><userinput remap="pre">patch -Np1 -i ../rustc-&rust-version;-llvm9_fixes-1.patch</userinput></screen>-->
+
+    <para>
+      Compile <application>Rust</application> by running the following
       commands:
     </para>
@@ -316,5 +317,7 @@
       <filename>run-make-fulldeps/sysroot-crates-are-unstable</filename>
       fails, presumably because we are using only stable features.
-      <!-- appears to be fixed now
+      <!-- https://github.com/rust-lang/rust/issues/63520 -->
+      A fifth test, run-make-fulldeps/linker-output-non-utf8, is broken.
+      <!-- gdb appears to be fixed now
       If gdb has been installed, in some circumstances tests in
       <filename class="directory">debuginfo</filename> may fail.--> As with all
@@ -324,5 +327,4 @@
       'stderr:' lines. Any mention of
       SIGSEGV or signal 11 in a failing test is a cause for concern.
-      A fifth test, run-make-fulldeps/linker-output-non-utf8, is known to fail.
     </para>
 
@@ -335,5 +337,5 @@
 
     <para>
-      That should report 16499 tests. Similarly, the total tests which failed can
+      That should report 17349 tests. Similarly, the total tests which failed can
       be found by running:
     </para>
@@ -528,5 +530,5 @@
       <seglistitem>
         <seg>
-          cargo-clippy, cargo-fmt, cargo-miri, cargo, clippy-driver, miri, rls, rust-gdb, rust-lldb, rustc, rustdoc, rustfmt.
+          cargo-clippy, cargo-fmt, cargo-miri, cargo, clippy-driver, miri, rls, rust-gdb, rust-gdbgui, rust-lldb, rustc, rustdoc, rustfmt.
         </seg>
         <seg>
@@ -651,4 +653,17 @@
       </varlistentry>
 
+      <varlistentry id="rust-gdbgui">
+        <term><command>rust-gdbgui</command></term>
+        <listitem>
+          <para>
+            is a wrapper script for a graphical front end to gdb that runs in a
+            browser.
+          </para>
+          <indexterm zone="rust rust-gdbgui">
+            <primary sortas="b-rust-gdbgui">rust-gdbgui</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
       <varlistentry id="rust-lldb">
         <term><command>rust-lldb</command></term>
Index: gnome/platform/gnome-shell.xml
===================================================================
--- gnome/platform/gnome-shell.xml	(revision 4969ec3ca751829dfcd6903040590e588eab355e)
+++ gnome/platform/gnome-shell.xml	(revision ec2353a36fbe0a2bc55d0f671f3875912771728b)
@@ -81,4 +81,6 @@
       <xref linkend="gnome-autoar"/>,
       <xref linkend="gnome-control-center"/>,
+      <!-- FIXME in gnome-shell-3.36.0 libcroco will be included,
+        so when that goes in please archive libcroco -->
       <xref linkend="libcroco"/>,
       <xref linkend="mutter"/>,
Index: introduction/welcome/changelog.xml
===================================================================
--- introduction/welcome/changelog.xml	(revision 4969ec3ca751829dfcd6903040590e588eab355e)
+++ introduction/welcome/changelog.xml	(revision ec2353a36fbe0a2bc55d0f671f3875912771728b)
@@ -43,4 +43,20 @@
        -->
     <listitem>
+      <para>March 17th, 2020</para>
+      <itemizedlist>
+        <listitem>
+          <para>[ken] - Adjust seamonkey-2.53.0 to build with
+          rustc-1.39.0. Fixes
+          <ulink url="&blfs-ticket-root;13271">#13271</ulink>.</para>
+        </listitem>
+        <listitem>
+          <para>[ken] - Update to librsvg-2.48.0, and hence update to
+          rustc-1.39.0. Fixes
+          <ulink url="&blfs-ticket-root;13230">#13230</ulink>.</para>
+        </listitem>
+      </itemizedlist>
+    </listitem>
+
+    <listitem>
       <para>March 16th, 2020</para>
       <itemizedlist>
Index: packages.ent
===================================================================
--- packages.ent	(revision 4969ec3ca751829dfcd6903040590e588eab355e)
+++ packages.ent	(revision ec2353a36fbe0a2bc55d0f671f3875912771728b)
@@ -214,5 +214,5 @@
 <!ENTITY libmypaint-version           "1.5.1"> <!-- version 1 only -->
 <!ENTITY libpng-version               "1.6.37">
-<!ENTITY librsvg-version              "2.46.4">   <!-- Normally even minors -->
+<!ENTITY librsvg-version              "2.48.0">   <!-- Normally even minors -->
 <!ENTITY libraw-version               "0.19.5">
 <!ENTITY libtiff-version              "4.1.0">
@@ -353,5 +353,5 @@
 <!ENTITY ruby-patch-version           "0">
 <!ENTITY ruby-version                 "&ruby-minor-version;.&ruby-patch-version;">
-<!ENTITY rust-version                 "1.37.0">
+<!ENTITY rust-version                 "1.39.0">
 <!ENTITY scons-version                "3.1.2">
 <!ENTITY slang-version                "2.3.2">
Index: xsoft/graphweb/firefox.xml
===================================================================
--- xsoft/graphweb/firefox.xml	(revision 4969ec3ca751829dfcd6903040590e588eab355e)
+++ xsoft/graphweb/firefox.xml	(revision ec2353a36fbe0a2bc55d0f671f3875912771728b)
@@ -15,5 +15,5 @@
    most practical way to get a timing on a machine with more cores, if taking
    cores offline is not practical. If in doubt, round up -->
-  <!ENTITY firefox-time          "23 SBU (with parallelism=4) without tests">
+  <!ENTITY firefox-time          "23 SBU (on a 4-core machine) without tests">
 ]>
 
Index: xsoft/graphweb/seamonkey.xml
===================================================================
--- xsoft/graphweb/seamonkey.xml	(revision 4969ec3ca751829dfcd6903040590e588eab355e)
+++ xsoft/graphweb/seamonkey.xml	(revision ec2353a36fbe0a2bc55d0f671f3875912771728b)
@@ -10,5 +10,5 @@
   <!ENTITY seamonkey-size          "277 MB">
   <!ENTITY seamonkey-buildsize     "6.9 GB (154 MB installed)">
-  <!ENTITY seamonkey-time          "19 SBU (using parallelism=4)">
+  <!ENTITY seamonkey-time          "19 SBU (on a 4-core machine)">
 ]>
 
@@ -220,5 +220,4 @@
 ac_add_options --with-system-nss
 ac_add_options --with-system-icu
-
 <!-- seems OK with icu-60, seamonkey-2.49
 # Use the internal version of icu due to execution problems-->
@@ -280,4 +279,11 @@
 
 <screen><userinput>sed -i -e '/pid_t gettid/,+3 s@^@//@' mozilla/tools/profiler/core/platform.h</userinput></screen>
+
+    <para>
+      No adapt the code for a change introduced in rustc-1.39.0:
+    </para>
+
+<screen><userinput>sed -i '/deny(warnings)/d' mozilla/xpcom/rust/nsstring/src/lib.rs</userinput></screen>
+
     <!-- Doesn't seem to be needed anymore with 2.53.1
     <para>
@@ -362,4 +368,10 @@
     </para>
 -->
+    <para>
+      <command>sed -i '/deny(warnings)/d' ...</command> : rust-1.39 deprecated
+      the "try!" call in favour of "?" which causes warnings, nsstring was
+      treating warnings as errors.
+    </para>
+
     <para>
       <command>make -f client.mk</command>: Mozilla products are packaged to
Index: xsoft/other/thunderbird.xml
===================================================================
--- xsoft/other/thunderbird.xml	(revision 4969ec3ca751829dfcd6903040590e588eab355e)
+++ xsoft/other/thunderbird.xml	(revision ec2353a36fbe0a2bc55d0f671f3875912771728b)
@@ -10,6 +10,7 @@
   <!ENTITY thunderbird-size          "316 MB">
   <!ENTITY thunderbird-buildsize     "8.9 GB (145 MB installed)">
-  <!ENTITY thunderbird-time          "27 SBU (with -j4, estimated 81 SBU with -j1)">
-  <!-- Verified the time at -j1 on another system for posterity's sake. -->
+  <!ENTITY thunderbird-time          "27 SBU (on a 4-core machine)">
+  <!-- Removed the -j1 time because python and rust do not obey it, although
+       the C/C++ code appears to obey it -->
 ]>
 
@@ -154,9 +155,9 @@
 
 <screen><userinput>cat &gt; mozconfig &lt;&lt; "EOF"
-<literal># If you have a multicore machine, the build may be faster if using parallel
-# jobs. The build system automatically adds -jN to the "make" flags, where N
-# is the number of CPU cores. The option below is therefore useless, unless
-# you want to use a smaller number of jobs:
+<literal># If you have a multicore machine, all cores will be used.
+# The option below may cause parts of the build to only use one core
+# if you want to use a smaller number of jobs:
 #mk_add_options MOZ_MAKE_FLAGS="-j1"
+
 
 # If you have installed dbus-glib, comment out this line:
