Upgrade rust/crates/serde to 1.0.119

Test: make
Change-Id: I971a0268ce558a1ca24d069e0aacab21eb575b12
diff --git a/.cargo_vcs_info.json b/.cargo_vcs_info.json
index 99b51b4..f5c327c 100644
--- a/.cargo_vcs_info.json
+++ b/.cargo_vcs_info.json
@@ -1,5 +1,5 @@
 {
   "git": {
-    "sha1": "e7974312681c9c1c54f7586e86b0d7013b350a54"
+    "sha1": "4c89cf89fdb84970c8d4e09b5f29507dc88c5547"
   }
 }
diff --git a/Android.bp b/Android.bp
index c992034..bd99321 100644
--- a/Android.bp
+++ b/Android.bp
@@ -32,7 +32,7 @@
 
 // dependent_library ["feature_list"]
 //   proc-macro2-1.0.24 "default,proc-macro"
-//   quote-1.0.7 "default,proc-macro"
-//   serde_derive-1.0.117 "default"
-//   syn-1.0.51 "clone-impls,default,derive,parsing,printing,proc-macro,quote,visit"
+//   quote-1.0.8 "default,proc-macro"
+//   serde_derive-1.0.119 "default"
+//   syn-1.0.58 "clone-impls,default,derive,parsing,printing,proc-macro,quote,visit"
 //   unicode-xid-0.2.1 "default"
diff --git a/Cargo.toml b/Cargo.toml
index 984ecbd..2d2aa64 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -12,7 +12,7 @@
 
 [package]
 name = "serde"
-version = "1.0.118"
+version = "1.0.119"
 authors = ["Erick Tryzelaar <erick.tryzelaar@gmail.com>", "David Tolnay <dtolnay@gmail.com>"]
 build = "build.rs"
 include = ["build.rs", "src/**/*.rs", "crates-io.md", "README.md", "LICENSE-APACHE", "LICENSE-MIT"]
@@ -30,7 +30,7 @@
 [package.metadata.playground]
 features = ["derive", "rc"]
 [dependencies.serde_derive]
-version = "=1.0.118"
+version = "=1.0.119"
 optional = true
 [dev-dependencies.serde_derive]
 version = "1.0"
diff --git a/Cargo.toml.orig b/Cargo.toml.orig
index a04ee8e..6ce9b1d 100644
--- a/Cargo.toml.orig
+++ b/Cargo.toml.orig
@@ -1,6 +1,6 @@
 [package]
 name = "serde"
-version = "1.0.118" # remember to update html_root_url and serde_derive dependency
+version = "1.0.119" # remember to update html_root_url and serde_derive dependency
 authors = ["Erick Tryzelaar <erick.tryzelaar@gmail.com>", "David Tolnay <dtolnay@gmail.com>"]
 license = "MIT OR Apache-2.0"
 description = "A generic serialization/deserialization framework"
@@ -14,7 +14,7 @@
 build = "build.rs"
 
 [dependencies]
-serde_derive = { version = "=1.0.118", optional = true, path = "../serde_derive" }
+serde_derive = { version = "=1.0.119", optional = true, path = "../serde_derive" }
 
 [dev-dependencies]
 serde_derive = { version = "1.0", path = "../serde_derive" }
diff --git a/METADATA b/METADATA
index 2e20bd2..3cb2563 100644
--- a/METADATA
+++ b/METADATA
@@ -7,13 +7,13 @@
   }
   url {
     type: ARCHIVE
-    value: "https://static.crates.io/crates/serde/serde-1.0.118.crate"
+    value: "https://static.crates.io/crates/serde/serde-1.0.119.crate"
   }
-  version: "1.0.118"
+  version: "1.0.119"
   license_type: NOTICE
   last_upgrade_date {
-    year: 2020
-    month: 12
-    day: 7
+    year: 2021
+    month: 1
+    day: 11
   }
 }
diff --git a/TEST_MAPPING b/TEST_MAPPING
new file mode 100644
index 0000000..270998f
--- /dev/null
+++ b/TEST_MAPPING
@@ -0,0 +1,14 @@
+// Generated by cargo2android.py for tests that depend on this crate.
+{
+  "presubmit": [
+    {
+      "name": "unicode-bidi_device_test_src_lib"
+    },
+    {
+      "name": "serde_test_device_test_src_lib"
+    },
+    {
+      "name": "url_device_test_src_lib"
+    }
+  ]
+}
diff --git a/src/de/impls.rs b/src/de/impls.rs
index d9af210..4d100d6 100644
--- a/src/de/impls.rs
+++ b/src/de/impls.rs
@@ -7,11 +7,11 @@
 #[cfg(any(core_duration, feature = "std", feature = "alloc"))]
 use de::MapAccess;
 
+use __private::de::InPlaceSeed;
 use de::from_primitive::FromPrimitive;
-use private::de::InPlaceSeed;
 
 #[cfg(any(feature = "std", feature = "alloc"))]
-use private::de::size_hint;
+use __private::de::size_hint;
 
 ////////////////////////////////////////////////////////////////////////////////
 
@@ -1906,7 +1906,7 @@
                             b"secs" => Ok(Field::Secs),
                             b"nanos" => Ok(Field::Nanos),
                             _ => {
-                                let value = ::export::from_utf8_lossy(value);
+                                let value = ::__private::from_utf8_lossy(value);
                                 Err(Error::unknown_field(&value, FIELDS))
                             }
                         }
@@ -2214,7 +2214,7 @@
                         b"start" => Ok(Field::Start),
                         b"end" => Ok(Field::End),
                         _ => {
-                            let value = ::export::from_utf8_lossy(value);
+                            let value = ::__private::from_utf8_lossy(value);
                             Err(Error::unknown_field(&value, FIELDS))
                         }
                     }
diff --git a/src/de/value.rs b/src/de/value.rs
index 4044f32..96f2a90 100644
--- a/src/de/value.rs
+++ b/src/de/value.rs
@@ -24,8 +24,8 @@
 use lib::*;
 
 use self::private::{First, Second};
+use __private::de::size_hint;
 use de::{self, Expected, IntoDeserializer, SeqAccess};
-use private::de::size_hint;
 use ser;
 
 ////////////////////////////////////////////////////////////////////////////////
diff --git a/src/export.rs b/src/export.rs
deleted file mode 100644
index caa1f4d..0000000
--- a/src/export.rs
+++ /dev/null
@@ -1,39 +0,0 @@
-pub use lib::clone::Clone;
-pub use lib::convert::{From, Into};
-pub use lib::default::Default;
-pub use lib::fmt::{self, Formatter};
-pub use lib::marker::PhantomData;
-pub use lib::option::Option::{self, None, Some};
-pub use lib::result::Result::{self, Err, Ok};
-
-pub use self::string::from_utf8_lossy;
-
-#[cfg(any(feature = "alloc", feature = "std"))]
-pub use lib::{ToString, Vec};
-
-#[cfg(core_try_from)]
-pub use lib::convert::TryFrom;
-
-mod string {
-    use lib::*;
-
-    #[cfg(any(feature = "std", feature = "alloc"))]
-    pub fn from_utf8_lossy(bytes: &[u8]) -> Cow<str> {
-        String::from_utf8_lossy(bytes)
-    }
-
-    // The generated code calls this like:
-    //
-    //     let value = &_serde::export::from_utf8_lossy(bytes);
-    //     Err(_serde::de::Error::unknown_variant(value, VARIANTS))
-    //
-    // so it is okay for the return type to be different from the std case as long
-    // as the above works.
-    #[cfg(not(any(feature = "std", feature = "alloc")))]
-    pub fn from_utf8_lossy(bytes: &[u8]) -> &str {
-        // Three unicode replacement characters if it fails. They look like a
-        // white-on-black question mark. The user will recognize it as invalid
-        // UTF-8.
-        str::from_utf8(bytes).unwrap_or("\u{fffd}\u{fffd}\u{fffd}")
-    }
-}
diff --git a/src/integer128.rs b/src/integer128.rs
index 01d6f34..3028c0a 100644
--- a/src/integer128.rs
+++ b/src/integer128.rs
@@ -10,7 +10,7 @@
 /// bother with this macro and may assume support for 128-bit integers.
 ///
 /// ```edition2018
-/// # use serde::private::ser::Error;
+/// # use serde::__private::ser::Error;
 /// #
 /// # struct MySerializer;
 /// #
diff --git a/src/lib.rs b/src/lib.rs
index 12154da..325c1af 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -9,11 +9,9 @@
 //! these two groups interact with each other, allowing any supported data
 //! structure to be serialized and deserialized using any supported data format.
 //!
-//! See the Serde website [https://serde.rs/] for additional documentation and
+//! See the Serde website <https://serde.rs/> for additional documentation and
 //! usage examples.
 //!
-//! [https://serde.rs/]: https://serde.rs/
-//!
 //! ## Design
 //!
 //! Where many other languages rely on runtime reflection for serializing data,
@@ -57,6 +55,8 @@
 //!   Lisp language family.
 //! - [D-Bus]'s binary wire format.
 //! - [FlexBuffers], the schemaless cousin of Google's FlatBuffers zero-copy serialization format.
+//! - [DynamoDB Items], the format used by [rusoto_dynamodb] to transfer data to
+//!   and from DynamoDB.
 //!
 //! [JSON]: https://github.com/serde-rs/json
 //! [Bincode]: https://github.com/servo/bincode
@@ -78,11 +78,13 @@
 //! [S-expressions]: https://github.com/rotty/lexpr-rs
 //! [D-Bus]: https://docs.rs/zvariant
 //! [FlexBuffers]: https://github.com/google/flatbuffers/tree/master/rust/flexbuffers
+//! [DynamoDB Items]: https://docs.rs/serde_dynamo
+//! [rusoto_dynamodb]: https://docs.rs/rusoto_dynamodb
 
 ////////////////////////////////////////////////////////////////////////////////
 
 // Serde types in rustdoc of other crates get linked to here.
-#![doc(html_root_url = "https://docs.rs/serde/1.0.118")]
+#![doc(html_root_url = "https://docs.rs/serde/1.0.119")]
 // Support using Serde without the standard library!
 #![cfg_attr(not(feature = "std"), no_std)]
 // Unstable functionality only if the user asks for it. For tracking and
@@ -264,13 +266,15 @@
 #[doc(inline)]
 pub use ser::{Serialize, Serializer};
 
-// Generated code uses these to support no_std. Not public API.
+// Used by generated code and doc tests. Not public API.
 #[doc(hidden)]
-pub mod export;
+#[path = "private/mod.rs"]
+pub mod __private;
 
-// Helpers used by generated code and doc tests. Not public API.
-#[doc(hidden)]
-pub mod private;
+#[allow(unused_imports)]
+use self::__private as export;
+#[allow(unused_imports)]
+use self::__private as private;
 
 #[cfg(not(feature = "std"))]
 mod std_error;
diff --git a/src/macros.rs b/src/macros.rs
index 57600a5..6502a23 100644
--- a/src/macros.rs
+++ b/src/macros.rs
@@ -124,7 +124,7 @@
 macro_rules! forward_to_deserialize_any_method {
     ($func:ident<$l:tt, $v:ident>($($arg:ident : $ty:ty),*)) => {
         #[inline]
-        fn $func<$v>(self, $($arg: $ty,)* visitor: $v) -> $crate::export::Result<$v::Value, Self::Error>
+        fn $func<$v>(self, $($arg: $ty,)* visitor: $v) -> $crate::__private::Result<$v::Value, Self::Error>
         where
             $v: $crate::de::Visitor<$l>,
         {
diff --git a/src/private/macros.rs b/src/private/macros.rs
index 4f7054f..39d66f6 100644
--- a/src/private/macros.rs
+++ b/src/private/macros.rs
@@ -37,7 +37,7 @@
 #[macro_export]
 macro_rules! __serialize_unimplemented_method {
     ($func:ident $(<$t:ident>)* ($($arg:ty),*) -> $ret:ident) => {
-        fn $func $(<$t: ?Sized + $crate::Serialize>)* (self $(, _: $arg)*) -> $crate::export::Result<Self::$ret, Self::Error> {
+        fn $func $(<$t: ?Sized + $crate::Serialize>)* (self $(, _: $arg)*) -> $crate::__private::Result<Self::$ret, Self::Error> {
             unimplemented!()
         }
     };
diff --git a/src/private/mod.rs b/src/private/mod.rs
index 79e0a7d..73355e4 100644
--- a/src/private/mod.rs
+++ b/src/private/mod.rs
@@ -2,3 +2,43 @@
 
 pub mod de;
 pub mod ser;
+
+pub use lib::clone::Clone;
+pub use lib::convert::{From, Into};
+pub use lib::default::Default;
+pub use lib::fmt::{self, Formatter};
+pub use lib::marker::PhantomData;
+pub use lib::option::Option::{self, None, Some};
+pub use lib::result::Result::{self, Err, Ok};
+
+pub use self::string::from_utf8_lossy;
+
+#[cfg(any(feature = "alloc", feature = "std"))]
+pub use lib::{ToString, Vec};
+
+#[cfg(core_try_from)]
+pub use lib::convert::TryFrom;
+
+mod string {
+    use lib::*;
+
+    #[cfg(any(feature = "std", feature = "alloc"))]
+    pub fn from_utf8_lossy(bytes: &[u8]) -> Cow<str> {
+        String::from_utf8_lossy(bytes)
+    }
+
+    // The generated code calls this like:
+    //
+    //     let value = &_serde::__private::from_utf8_lossy(bytes);
+    //     Err(_serde::de::Error::unknown_variant(value, VARIANTS))
+    //
+    // so it is okay for the return type to be different from the std case as long
+    // as the above works.
+    #[cfg(not(any(feature = "std", feature = "alloc")))]
+    pub fn from_utf8_lossy(bytes: &[u8]) -> &str {
+        // Three unicode replacement characters if it fails. They look like a
+        // white-on-black question mark. The user will recognize it as invalid
+        // UTF-8.
+        str::from_utf8(bytes).unwrap_or("\u{fffd}\u{fffd}\u{fffd}")
+    }
+}
diff --git a/src/ser/impossible.rs b/src/ser/impossible.rs
index 90bab29..8a6501e 100644
--- a/src/ser/impossible.rs
+++ b/src/ser/impossible.rs
@@ -17,7 +17,7 @@
 ///
 /// ```edition2018
 /// # use serde::ser::{Serializer, Impossible};
-/// # use serde::private::ser::Error;
+/// # use serde::__private::ser::Error;
 /// #
 /// # struct MySerializer;
 /// #
diff --git a/src/ser/mod.rs b/src/ser/mod.rs
index 8a4b2e3..1e7ef8a 100644
--- a/src/ser/mod.rs
+++ b/src/ser/mod.rs
@@ -711,7 +711,7 @@
     ///
     /// ```edition2018
     /// # use serde::ser::{Serializer, SerializeSeq};
-    /// # use serde::private::ser::Error;
+    /// # use serde::__private::ser::Error;
     /// #
     /// # struct MySerializer;
     /// #