Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-pycrdt for openSUSE:Factory 
checked in at 2024-09-10 21:13:20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pycrdt (Old)
 and      /work/SRC/openSUSE:Factory/.python-pycrdt.new.17570 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-pycrdt"

Tue Sep 10 21:13:20 2024 rev:5 rq:1199728 version:0.9.11

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pycrdt/python-pycrdt.changes      
2024-09-09 14:43:48.993145835 +0200
+++ /work/SRC/openSUSE:Factory/.python-pycrdt.new.17570/python-pycrdt.changes   
2024-09-10 21:14:38.645564216 +0200
@@ -1,0 +2,5 @@
+Mon Sep  9 18:25:15 UTC 2024 - Ben Greiner <c...@bnavigator.de>
+
+- Bump upper limit of trio gh#jupyter-server/pycrdt#160
+
+-------------------------------------------------------------------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-pycrdt.spec ++++++
--- /var/tmp/diff_new_pack.nSzJis/_old  2024-09-10 21:14:39.513600383 +0200
+++ /var/tmp/diff_new_pack.nSzJis/_new  2024-09-10 21:14:39.517600549 +0200
@@ -34,7 +34,7 @@
 BuildRequires:  %{python_module pytest >= 7.4.2}
 BuildRequires:  %{python_module anyio >= 4.4.0 with %python-anyio < 5}
 BuildRequires:  %{python_module exceptiongroup if %python-base < 3.11}
-BuildRequires:  %{python_module trio >= 0.25.1 with %python-trio < 0.26}
+BuildRequires:  %{python_module trio >= 0.25.1 with %python-trio < 0.27}
 # /SECTION
 %python_subpackages
 
@@ -49,6 +49,8 @@
 
 %prep
 %autosetup -p1 -n pycrdt-%{version} -a1
+# gh#jupyter-server/pycrdt#160
+sed -i '/trio/ s/<0.26/<0.27/' pyproject.toml
 
 %build
 %pyproject_wheel

++++++ vendor.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Cargo.lock new/Cargo.lock
--- old/Cargo.lock      1970-01-01 01:00:00.000000000 +0100
+++ new/Cargo.lock      1970-01-01 01:00:00.000000000 +0100
@@ -204,9 +204,9 @@
 
 [[package]]
 name = "parking"
-version = "2.2.0"
+version = "2.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae"
+checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba"
 
 [[package]]
 name = "parking_lot_core"
@@ -345,18 +345,18 @@
 
 [[package]]
 name = "serde"
-version = "1.0.209"
+version = "1.0.210"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "99fce0ffe7310761ca6bf9faf5115afbc19688edd00171d81b1bb1b116c63e09"
+checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.209"
+version = "1.0.210"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "a5831b979fd7b5439637af1752d535ff49f4860c0f341d1baeb6faf0f4242170"
+checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f"
 dependencies = [
  "proc-macro2",
  "quote",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/parking/.cargo-checksum.json 
new/vendor/parking/.cargo-checksum.json
--- old/vendor/parking/.cargo-checksum.json     1970-01-01 01:00:00.000000000 
+0100
+++ new/vendor/parking/.cargo-checksum.json     1970-01-01 01:00:00.000000000 
+0100
@@ -1 +1 @@
-{"files":{"CHANGELOG.md":"388fbcffc436eeb94c3415d4fc3869471d440c6a1eae0f9e57752f0ea6468373","Cargo.toml":"54465df37dd6011d2de34226996dcc73a0249e2688789ceb7ee3fb90b9f6c6ae","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","LICENSE-THIRD-PARTY":"9a6d7a3c1b8edcc706c4b6c37f8dae9a77f02c7f9051df603f975db136b55419","README.md":"c3c9a484f17cf3e0596df7337591f68e88d45b43808b8ca0083a1768c9011ecb","src/lib.rs":"6819c3a1e5ed4237a3ed1497f3bb7ec3daeaf216adc5fa03509aba42fc7cbf34","tests/loom.rs":"27d5dd8afc0241d9c62a0e7678b0984a9de9fb6859ef145b69500f9c8e2e4c93","tests/parking.rs":"202b392df3bbce1cbd4045d9269f62dd12abc725f3f17fe92feb561c3eafd35c"},"package":"bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae"}
\ No newline at end of file
+{"files":{"CHANGELOG.md":"cde9fe20ea7d438e13aa08a82be3b47f851cf59ca526c4d3bc755e2e5acba95e","Cargo.toml":"06994b8edc975b1af488f385bafc91f3c6c4c79394fc2d2e662cc8f05dd786dd","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","LICENSE-THIRD-PARTY":"9a6d7a3c1b8edcc706c4b6c37f8dae9a77f02c7f9051df603f975db136b55419","README.md":"c2d29c2e898bc73cfece19b7ce7fe1763f6e1f1471f89376ae28043ad4c0bd3f","src/lib.rs":"775370db46257b33510128938c6693dac2ccf9f27a472e503967b1d1ae18461d","tests/loom.rs":"e13cbefd9e838a0010c555f1c4c5a9917b75c6c9518f45f0ebe138f5e7d5f968","tests/parking.rs":"63fafaf40f613bdcadf3fd5238ae72ce00cd7540f05d77888c7ae0d362eadc52"},"package":"f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba"}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/parking/CHANGELOG.md 
new/vendor/parking/CHANGELOG.md
--- old/vendor/parking/CHANGELOG.md     1970-01-01 01:00:00.000000000 +0100
+++ new/vendor/parking/CHANGELOG.md     1970-01-01 01:00:00.000000000 +0100
@@ -1,3 +1,7 @@
+# Version 2.2.1
+
+- Specify the reason for using `parking` in the docs. (#25)
+
 # Version 2.2.0
 
 - Implement `From<Unparker>` for `Waker`. This enables `Waker`s to be 
constructed from `Unparker`s without allocating. (#18)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/parking/Cargo.toml 
new/vendor/parking/Cargo.toml
--- old/vendor/parking/Cargo.toml       1970-01-01 01:00:00.000000000 +0100
+++ new/vendor/parking/Cargo.toml       1970-01-01 01:00:00.000000000 +0100
@@ -13,12 +13,17 @@
 edition = "2018"
 rust-version = "1.51"
 name = "parking"
-version = "2.2.0"
+version = "2.2.1"
 authors = [
     "Stjepan Glavina <stjep...@gmail.com>",
     "The Rust Project Developers",
 ]
+build = false
 exclude = ["/.*"]
+autobins = false
+autoexamples = false
+autotests = false
+autobenches = false
 description = "Thread parking and unparking"
 homepage = "https://github.com/smol-rs/parking";
 documentation = "https://docs.rs/parking";
@@ -34,6 +39,18 @@
 license = "Apache-2.0 OR MIT"
 repository = "https://github.com/smol-rs/parking";
 
+[lib]
+name = "parking"
+path = "src/lib.rs"
+
+[[test]]
+name = "loom"
+path = "tests/loom.rs"
+
+[[test]]
+name = "parking"
+path = "tests/parking.rs"
+
 [dev-dependencies.easy-parallel]
 version = "3.0.0"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/parking/README.md new/vendor/parking/README.md
--- old/vendor/parking/README.md        1970-01-01 01:00:00.000000000 +0100
+++ new/vendor/parking/README.md        1970-01-01 01:00:00.000000000 +0100
@@ -11,9 +11,20 @@
 
 Thread parking and unparking.
 
-A parker is in either notified or unnotified state. Method `park()` blocks
-the current thread until the parker becomes notified and then puts it back 
into unnotified
-state. Method `unpark()` puts it into notified state.
+A `Parker` is in either the notified or unnotified state. The `park()` method 
blocks
+the current thread until the `Parker` becomes notified and then puts it back 
into the unnotified
+state. The `unpark()` method puts it into the notified state.
+
+This API is similar to [`thread::park()`] and [`Thread::unpark()`] from the 
standard library.
+The difference is that the state "token" managed by those functions is shared 
across an entire
+thread, and anyone can call [`thread::current()`] to access it. If you use 
`park` and `unpark`,
+but you also call a function that uses `park` and `unpark` internally, that 
function could
+cause a deadlock by consuming a wakeup that was intended for you. The `Parker` 
object in this
+crate avoids that problem by managing its own state, which isn't shared with 
unrelated callers.
+
+[`thread::park()`]: https://doc.rust-lang.org/std/thread/fn.park.html
+[`Thread::unpark()`]: 
https://doc.rust-lang.org/std/thread/struct.Thread.html#method.unpark
+[`thread::current()`]: https://doc.rust-lang.org/std/thread/fn.current.html
 
 ## Examples
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/parking/src/lib.rs 
new/vendor/parking/src/lib.rs
--- old/vendor/parking/src/lib.rs       1970-01-01 01:00:00.000000000 +0100
+++ new/vendor/parking/src/lib.rs       1970-01-01 01:00:00.000000000 +0100
@@ -1,8 +1,19 @@
 //! Thread parking and unparking.
 //!
-//! A parker is in either notified or unnotified state. Method 
[`park()`][`Parker::park()`] blocks
-//! the current thread until the parker becomes notified and then puts it back 
into unnotified
-//! state. Method [`unpark()`][`Unparker::unpark()`] puts it into notified 
state.
+//! A [`Parker`] is in either the notified or unnotified state. The 
[`park()`][`Parker::park()`] method blocks
+//! the current thread until the [`Parker`] becomes notified and then puts it 
back into the unnotified
+//! state. The [`unpark()`][`Unparker::unpark()`] method puts it into the 
notified state.
+//!
+//! This API is similar to [`thread::park()`] and [`Thread::unpark()`] from 
the standard library.
+//! The difference is that the state "token" managed by those functions is 
shared across an entire
+//! thread, and anyone can call [`thread::current()`] to access it. If you use 
`park` and `unpark`,
+//! but you also call a function that uses `park` and `unpark` internally, 
that function could
+//! cause a deadlock by consuming a wakeup that was intended for you. The 
[`Parker`] object in this
+//! crate avoids that problem by managing its own state, which isn't shared 
with unrelated callers.
+//!
+//! [`thread::park()`]: https://doc.rust-lang.org/std/thread/fn.park.html
+//! [`Thread::unpark()`]: 
https://doc.rust-lang.org/std/thread/struct.Thread.html#method.unpark
+//! [`thread::current()`]: https://doc.rust-lang.org/std/thread/fn.current.html
 //!
 //! # Examples
 //!
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/parking/tests/loom.rs 
new/vendor/parking/tests/loom.rs
--- old/vendor/parking/tests/loom.rs    1970-01-01 01:00:00.000000000 +0100
+++ new/vendor/parking/tests/loom.rs    1970-01-01 01:00:00.000000000 +0100
@@ -12,3 +12,17 @@
         u.unpark();
     });
 }
+
+#[test]
+fn yield_then_unpark() {
+    loom::model(|| {
+        let (p, u) = parking::pair();
+
+        loom::thread::spawn(move || {
+            loom::thread::yield_now();
+            u.unpark();
+        });
+
+        p.park();
+    });
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/parking/tests/parking.rs 
new/vendor/parking/tests/parking.rs
--- old/vendor/parking/tests/parking.rs 1970-01-01 01:00:00.000000000 +0100
+++ new/vendor/parking/tests/parking.rs 1970-01-01 01:00:00.000000000 +0100
@@ -1,15 +1,16 @@
+use std::future::Future;
+use std::task::{Context, Poll, Waker};
 use std::thread::sleep;
-use std::time::Duration;
-use std::u32;
+use std::time::{Duration, Instant};
 
 use easy_parallel::Parallel;
 use parking::Parker;
 
 #[test]
 fn park_timeout_unpark_before() {
-    let p = Parker::new();
+    let (p, u) = parking::pair();
     for _ in 0..10 {
-        p.unparker().unpark();
+        u.unpark();
         p.park_timeout(Duration::from_millis(u32::MAX as u64));
     }
 }
@@ -39,3 +40,106 @@
             .run();
     }
 }
+
+#[test]
+fn park_deadline_unpark_called_other_thread() {
+    for _ in 0..10 {
+        let p = Parker::new();
+        let u = p.unparker();
+
+        Parallel::new()
+            .add(move || {
+                sleep(Duration::from_millis(50));
+                u.unpark();
+            })
+            .add(move || {
+                let deadline = Instant::now() + Duration::from_micros(u32::MAX 
as u64);
+                p.park_deadline(deadline);
+            })
+            .run();
+    }
+}
+
+#[test]
+fn park_then_wake_from_other_thread() {
+    for _ in 0..10 {
+        let (p, u) = parking::pair();
+
+        Parallel::new()
+            .add(move || {
+                sleep(Duration::from_millis(50));
+                u.unpark();
+            })
+            .add(move || {
+                let start = Instant::now();
+                p.park();
+                assert!(Instant::now().duration_since(start) >= 
Duration::from_millis(50));
+            })
+            .run();
+    }
+}
+
+#[test]
+fn unpark() {
+    let p = Parker::default();
+
+    assert!(p.unpark());
+    assert!(!p.unpark());
+}
+
+#[test]
+fn same_parker() {
+    let (p1, u1) = parking::pair();
+    let (p2, u2) = parking::pair();
+
+    assert!(u1.will_unpark(&p1));
+    assert!(!u1.will_unpark(&p2));
+    assert!(u1.same_parker(&u1.clone()));
+    assert!(!u1.same_parker(&u2));
+}
+
+#[test]
+fn waker() {
+    let (p, u) = parking::pair();
+    let waker: Waker = u.into();
+
+    waker.wake();
+    assert!(p.park_timeout(Duration::from_secs(2)));
+}
+
+#[test]
+fn future() {
+    struct Yield(bool);
+
+    impl Future for Yield {
+        type Output = ();
+
+        fn poll(mut self: std::pin::Pin<&mut Self>, cx: &mut Context<'_>) -> 
Poll<Self::Output> {
+            if self.0 {
+                Poll::Ready(())
+            } else {
+                self.0 = true;
+                cx.waker().wake_by_ref();
+                Poll::Pending
+            }
+        }
+    }
+
+    let (p, u) = parking::pair();
+    let waker = u.into();
+    let mut context = Context::from_waker(&waker);
+
+    let mut future = Box::pin(Yield(false));
+
+    assert!(!p.park_timeout(Duration::from_millis(0)));
+    assert_eq!(future.as_mut().poll(&mut context), Poll::Pending);
+    assert!(p.park_timeout(Duration::from_millis(0)));
+    assert_eq!(future.as_mut().poll(&mut context), Poll::Ready(()));
+    assert!(!p.park_timeout(Duration::from_millis(0)));
+}
+
+#[test]
+fn debug_for_coverage() {
+    let (p, u) = parking::pair();
+    let _ = format!("{:?} {:?}", &p, &u);
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/serde/.cargo-checksum.json 
new/vendor/serde/.cargo-checksum.json
--- old/vendor/serde/.cargo-checksum.json       1970-01-01 01:00:00.000000000 
+0100
+++ new/vendor/serde/.cargo-checksum.json       1970-01-01 01:00:00.000000000 
+0100
@@ -1 +1 @@
-{"files":{"Cargo.toml":"68cf9c1f5e3213b996b890b110c4797fe537515e7b2558e32c29698bbd931320","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"731c044fc5f98b37a89e9049c9214267db98763309cb63146b45c029640f82a3","build.rs":"8653bc5c754a533b55849c29ccb0e75f06758d415cd768c94c3e08e790c2e953","crates-io.md":"407d92b2932923f8708aaf31db266fd7db32e2b0afa6c569d134b680b74a1920","src/de/format.rs":"c85071b016df643b161859682d21ce34fa0ebf2a3bdbeeea69859da48f5d934f","src/de/ignored_any.rs":"6480f2b2a83dc4764d01b2eec7309729eef2492eede2e5ee98d23a60b05198eb","src/de/impls.rs":"f1d691a1bd4f0404c590eb217bab1d07c7d56ff9e874da6ab28d4affa7fef94c","src/de/mod.rs":"14880617db97f5bd68f991248051c0327098730e6e0f15c763fc0f0048ce3dbe","src/de/seed.rs":"045d890712a04eb33ffc5a021e5d948a63c89402b8ffeea749df2171b7484f8f","src/de/size_hint.rs":"fff83dc39d30e75e8e611991f9c5399188a1aad23a6462dbca2
 
c8b62655cfedb","src/de/value.rs":"0c485908b1f755e4750af0aefa2132460dadbcf30919c15c06ca795a92d96430","src/integer128.rs":"29ef30b7d94507b34807090e68173767cdc7aff62edccd38affe69e75338dddc","src/lib.rs":"6f5ec7c32e2d609815d08ccba25bc3d3e985725de9b65c9fb95c479a05d76ea6","src/macros.rs":"0d4b392ed6fe529fda2c5439c8547fe9717e64f528bfd01f633bb725f98b53cd","src/private/de.rs":"c12df7ee5ac43c9c30389e1f02d2bb5c206b1b850e598963dfedeb303e448f5a","src/private/doc.rs":"b222decb40321190155209e1b8a5a52e3adfaa470047e379e664b71e0320655a","src/private/mod.rs":"b8f0c348621d91dd9da3db83d8877e70bc61ad0a2dc2d6fb57c6fc2c2cbafa26","src/private/ser.rs":"4343ccbe0b345288dce0dbf1023c6082ef42ae7073c911b535e3d9e88c3aa472","src/ser/fmt.rs":"d1cfd9623605413e45a23ef778d97f0ac4da4adaed23739f1f9d7414b30e384b","src/ser/impls.rs":"585908d859fc89adcc1c6a7acc8f12467feba7daeb8c44ae28d25fd40d140f2c","src/ser/impossible.rs":"5c325da8e0370ab22abe1e15d8af1dc7a1707b127508f61e720cd7f0caa80593","src/ser/mod.rs":"eee3a4ecfc0999367
 
7df0be4772c1c7edde43ec9591be0b5595cb113a548a8a2","src/std_error.rs":"25a07149e2e468747ffa5a58051c7f93d7b3c0fa0372f012a96c97ec8ab03b97"},"package":"99fce0ffe7310761ca6bf9faf5115afbc19688edd00171d81b1bb1b116c63e09"}
\ No newline at end of file
+{"files":{"Cargo.toml":"6d6add51c2e5e089ce4597070f2a2770d3caaf07da77070b01afe7a2dec19592","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"731c044fc5f98b37a89e9049c9214267db98763309cb63146b45c029640f82a3","build.rs":"a98eaa82c783fdb4169d1646c06028ec5cb82937d39ee127ec8ed33651d2f238","crates-io.md":"407d92b2932923f8708aaf31db266fd7db32e2b0afa6c569d134b680b74a1920","src/de/ignored_any.rs":"6480f2b2a83dc4764d01b2eec7309729eef2492eede2e5ee98d23a60b05198eb","src/de/impls.rs":"18ed2d8221b04c7fe8f7a757445a04cd1d28c887f46f7a8717afff10eada146f","src/de/mod.rs":"b34735b2e5c9c93e9857540f24cba393f1b767a2ba33d469c2d28f15049e8f6c","src/de/seed.rs":"045d890712a04eb33ffc5a021e5d948a63c89402b8ffeea749df2171b7484f8f","src/de/size_hint.rs":"fff83dc39d30e75e8e611991f9c5399188a1aad23a6462dbca2c8b62655cfedb","src/de/value.rs":"0c485908b1f755e4750af0aefa2132460dadbcf30919c15c06ca
 
795a92d96430","src/format.rs":"c85071b016df643b161859682d21ce34fa0ebf2a3bdbeeea69859da48f5d934f","src/integer128.rs":"29ef30b7d94507b34807090e68173767cdc7aff62edccd38affe69e75338dddc","src/lib.rs":"ff721a04872d840e4a9aabd0cbd98c1a60ae3eefd6237f5c6c1474b9549e4f04","src/macros.rs":"0d4b392ed6fe529fda2c5439c8547fe9717e64f528bfd01f633bb725f98b53cd","src/private/de.rs":"c12df7ee5ac43c9c30389e1f02d2bb5c206b1b850e598963dfedeb303e448f5a","src/private/doc.rs":"b222decb40321190155209e1b8a5a52e3adfaa470047e379e664b71e0320655a","src/private/mod.rs":"b8f0c348621d91dd9da3db83d8877e70bc61ad0a2dc2d6fb57c6fc2c2cbafa26","src/private/ser.rs":"4343ccbe0b345288dce0dbf1023c6082ef42ae7073c911b535e3d9e88c3aa472","src/ser/fmt.rs":"d1cfd9623605413e45a23ef778d97f0ac4da4adaed23739f1f9d7414b30e384b","src/ser/impls.rs":"00b58a84f7c07b2f575219d6d0745fd1258dae9b9c8ec5b9b299a712c482b1a3","src/ser/impossible.rs":"5c325da8e0370ab22abe1e15d8af1dc7a1707b127508f61e720cd7f0caa80593","src/ser/mod.rs":"9aab34f08defdd6be044
 
383ad41aeb59acee3abe7cacb73ac5bc8c70f747a67e","src/std_error.rs":"25a07149e2e468747ffa5a58051c7f93d7b3c0fa0372f012a96c97ec8ab03b97"},"package":"c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a"}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/serde/Cargo.toml new/vendor/serde/Cargo.toml
--- old/vendor/serde/Cargo.toml 1970-01-01 01:00:00.000000000 +0100
+++ new/vendor/serde/Cargo.toml 1970-01-01 01:00:00.000000000 +0100
@@ -13,7 +13,7 @@
 edition = "2018"
 rust-version = "1.31"
 name = "serde"
-version = "1.0.209"
+version = "1.0.210"
 authors = [
     "Erick Tryzelaar <erick.tryzel...@gmail.com>",
     "David Tolnay <dtol...@gmail.com>",
@@ -76,4 +76,4 @@
 unstable = []
 
 [target."cfg(any())".dependencies.serde_derive]
-version = "=1.0.209"
+version = "=1.0.210"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/serde/build.rs new/vendor/serde/build.rs
--- old/vendor/serde/build.rs   1970-01-01 01:00:00.000000000 +0100
+++ new/vendor/serde/build.rs   1970-01-01 01:00:00.000000000 +0100
@@ -15,6 +15,8 @@
 
     if minor >= 77 {
         println!("cargo:rustc-check-cfg=cfg(no_core_cstr)");
+        println!("cargo:rustc-check-cfg=cfg(no_core_error)");
+        println!("cargo:rustc-check-cfg=cfg(no_core_net)");
         println!("cargo:rustc-check-cfg=cfg(no_core_num_saturating)");
         println!("cargo:rustc-check-cfg=cfg(no_core_try_from)");
         println!("cargo:rustc-check-cfg=cfg(no_diagnostic_namespace)");
@@ -86,11 +88,23 @@
         println!("cargo:rustc-cfg=no_core_num_saturating");
     }
 
+    // Support for core::net stabilized in Rust 1.77.
+    // https://blog.rust-lang.org/2024/03/21/Rust-1.77.0.html
+    if minor < 77 {
+        println!("cargo:rustc-cfg=no_core_net");
+    }
+
     // Support for the `#[diagnostic]` tool attribute namespace
     // 
https://blog.rust-lang.org/2024/05/02/Rust-1.78.0.html#diagnostic-attributes
     if minor < 78 {
         println!("cargo:rustc-cfg=no_diagnostic_namespace");
     }
+
+    // The Error trait became available in core in 1.81.
+    // https://blog.rust-lang.org/2024/09/05/Rust-1.81.0.html#coreerrorerror
+    if minor < 81 {
+        println!("cargo:rustc-cfg=no_core_error");
+    }
 }
 
 fn rustc_minor_version() -> Option<u32> {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/serde/src/de/format.rs 
new/vendor/serde/src/de/format.rs
--- old/vendor/serde/src/de/format.rs   1970-01-01 01:00:00.000000000 +0100
+++ new/vendor/serde/src/de/format.rs   1970-01-01 01:00:00.000000000 +0100
@@ -1,30 +0,0 @@
-use crate::lib::fmt::{self, Write};
-use crate::lib::str;
-
-pub(super) struct Buf<'a> {
-    bytes: &'a mut [u8],
-    offset: usize,
-}
-
-impl<'a> Buf<'a> {
-    pub fn new(bytes: &'a mut [u8]) -> Self {
-        Buf { bytes, offset: 0 }
-    }
-
-    pub fn as_str(&self) -> &str {
-        let slice = &self.bytes[..self.offset];
-        unsafe { str::from_utf8_unchecked(slice) }
-    }
-}
-
-impl<'a> Write for Buf<'a> {
-    fn write_str(&mut self, s: &str) -> fmt::Result {
-        if self.offset + s.len() > self.bytes.len() {
-            Err(fmt::Error)
-        } else {
-            self.bytes[self.offset..self.offset + 
s.len()].copy_from_slice(s.as_bytes());
-            self.offset += s.len();
-            Ok(())
-        }
-    }
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/serde/src/de/impls.rs 
new/vendor/serde/src/de/impls.rs
--- old/vendor/serde/src/de/impls.rs    1970-01-01 01:00:00.000000000 +0100
+++ new/vendor/serde/src/de/impls.rs    1970-01-01 01:00:00.000000000 +0100
@@ -1583,12 +1583,9 @@
 
 
////////////////////////////////////////////////////////////////////////////////
 
+#[cfg(any(feature = "std", not(no_core_net)))]
 macro_rules! parse_ip_impl {
-    (
-        $(#[$attr:meta])*
-        $ty:ty, $expecting:expr, $size:tt
-    ) => {
-        $(#[$attr])*
+    ($ty:ty, $expecting:expr, $size:tt) => {
         impl<'de> Deserialize<'de> for $ty {
             fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
             where
@@ -1604,7 +1601,7 @@
     };
 }
 
-#[cfg(feature = "std")]
+#[cfg(any(feature = "std", not(no_core_net)))]
 macro_rules! variant_identifier {
     (
         $name_kind:ident ($($variant:ident; $bytes:expr; $index:expr),*)
@@ -1679,7 +1676,7 @@
     }
 }
 
-#[cfg(feature = "std")]
+#[cfg(any(feature = "std", not(no_core_net)))]
 macro_rules! deserialize_enum {
     (
         $name:ident $name_kind:ident ($($variant:ident; $bytes:expr; 
$index:expr),*)
@@ -1716,8 +1713,7 @@
     }
 }
 
-#[cfg(feature = "std")]
-#[cfg_attr(docsrs, doc(cfg(feature = "std")))]
+#[cfg(any(feature = "std", not(no_core_net)))]
 impl<'de> Deserialize<'de> for net::IpAddr {
     fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
     where
@@ -1736,25 +1732,18 @@
     }
 }
 
-parse_ip_impl! {
-    #[cfg(feature = "std")]
-    #[cfg_attr(docsrs, doc(cfg(feature = "std")))]
-    net::Ipv4Addr, "IPv4 address", 4
-}
+#[cfg(any(feature = "std", not(no_core_net)))]
+parse_ip_impl!(net::Ipv4Addr, "IPv4 address", 4);
 
-parse_ip_impl! {
-    #[cfg(feature = "std")]
-    #[cfg_attr(docsrs, doc(cfg(feature = "std")))]
-    net::Ipv6Addr, "IPv6 address", 16
-}
+#[cfg(any(feature = "std", not(no_core_net)))]
+parse_ip_impl!(net::Ipv6Addr, "IPv6 address", 16);
 
+#[cfg(any(feature = "std", not(no_core_net)))]
 macro_rules! parse_socket_impl {
     (
-        $(#[$attr:meta])*
         $ty:ty, $expecting:tt,
         $new:expr,
     ) => {
-        $(#[$attr])*
         impl<'de> Deserialize<'de> for $ty {
             fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
             where
@@ -1770,8 +1759,7 @@
     };
 }
 
-#[cfg(feature = "std")]
-#[cfg_attr(docsrs, doc(cfg(feature = "std")))]
+#[cfg(any(feature = "std", not(no_core_net)))]
 impl<'de> Deserialize<'de> for net::SocketAddr {
     fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
     where
@@ -1790,16 +1778,14 @@
     }
 }
 
+#[cfg(any(feature = "std", not(no_core_net)))]
 parse_socket_impl! {
-    #[cfg(feature = "std")]
-    #[cfg_attr(docsrs, doc(cfg(feature = "std")))]
     net::SocketAddrV4, "IPv4 socket address",
     |(ip, port)| net::SocketAddrV4::new(ip, port),
 }
 
+#[cfg(any(feature = "std", not(no_core_net)))]
 parse_socket_impl! {
-    #[cfg(feature = "std")]
-    #[cfg_attr(docsrs, doc(cfg(feature = "std")))]
     net::SocketAddrV6, "IPv6 socket address",
     |(ip, port)| net::SocketAddrV6::new(ip, port, 0, 0),
 }
@@ -3160,13 +3146,13 @@
     AtomicU64 "64"
 }
 
-#[cfg(feature = "std")]
+#[cfg(any(feature = "std", not(no_core_net)))]
 struct FromStrVisitor<T> {
     expecting: &'static str,
     ty: PhantomData<T>,
 }
 
-#[cfg(feature = "std")]
+#[cfg(any(feature = "std", not(no_core_net)))]
 impl<T> FromStrVisitor<T> {
     fn new(expecting: &'static str) -> Self {
         FromStrVisitor {
@@ -3176,7 +3162,7 @@
     }
 }
 
-#[cfg(feature = "std")]
+#[cfg(any(feature = "std", not(no_core_net)))]
 impl<'de, T> Visitor<'de> for FromStrVisitor<T>
 where
     T: str::FromStr,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/serde/src/de/mod.rs 
new/vendor/serde/src/de/mod.rs
--- old/vendor/serde/src/de/mod.rs      1970-01-01 01:00:00.000000000 +0100
+++ new/vendor/serde/src/de/mod.rs      1970-01-01 01:00:00.000000000 +0100
@@ -118,17 +118,16 @@
 
 pub mod value;
 
-mod format;
 mod ignored_any;
 mod impls;
 pub(crate) mod size_hint;
 
 pub use self::ignored_any::IgnoredAny;
 
-#[cfg(not(any(feature = "std", feature = "unstable")))]
+#[cfg(all(not(feature = "std"), no_core_error))]
 #[doc(no_inline)]
 pub use crate::std_error::Error as StdError;
-#[cfg(all(feature = "unstable", not(feature = "std")))]
+#[cfg(not(any(feature = "std", no_core_error)))]
 #[doc(no_inline)]
 pub use core::error::Error as StdError;
 #[cfg(feature = "std")]
@@ -1374,7 +1373,7 @@
         E: Error,
     {
         let mut buf = [0u8; 58];
-        let mut writer = format::Buf::new(&mut buf);
+        let mut writer = crate::format::Buf::new(&mut buf);
         fmt::Write::write_fmt(&mut writer, format_args!("integer `{}` as 
i128", v)).unwrap();
         Err(Error::invalid_type(
             Unexpected::Other(writer.as_str()),
@@ -1436,7 +1435,7 @@
         E: Error,
     {
         let mut buf = [0u8; 57];
-        let mut writer = format::Buf::new(&mut buf);
+        let mut writer = crate::format::Buf::new(&mut buf);
         fmt::Write::write_fmt(&mut writer, format_args!("integer `{}` as 
u128", v)).unwrap();
         Err(Error::invalid_type(
             Unexpected::Other(writer.as_str()),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/serde/src/format.rs 
new/vendor/serde/src/format.rs
--- old/vendor/serde/src/format.rs      1970-01-01 01:00:00.000000000 +0100
+++ new/vendor/serde/src/format.rs      1970-01-01 01:00:00.000000000 +0100
@@ -0,0 +1,30 @@
+use crate::lib::fmt::{self, Write};
+use crate::lib::str;
+
+pub(super) struct Buf<'a> {
+    bytes: &'a mut [u8],
+    offset: usize,
+}
+
+impl<'a> Buf<'a> {
+    pub fn new(bytes: &'a mut [u8]) -> Self {
+        Buf { bytes, offset: 0 }
+    }
+
+    pub fn as_str(&self) -> &str {
+        let slice = &self.bytes[..self.offset];
+        unsafe { str::from_utf8_unchecked(slice) }
+    }
+}
+
+impl<'a> Write for Buf<'a> {
+    fn write_str(&mut self, s: &str) -> fmt::Result {
+        if self.offset + s.len() > self.bytes.len() {
+            Err(fmt::Error)
+        } else {
+            self.bytes[self.offset..self.offset + 
s.len()].copy_from_slice(s.as_bytes());
+            self.offset += s.len();
+            Ok(())
+        }
+    }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/serde/src/lib.rs new/vendor/serde/src/lib.rs
--- old/vendor/serde/src/lib.rs 1970-01-01 01:00:00.000000000 +0100
+++ new/vendor/serde/src/lib.rs 1970-01-01 01:00:00.000000000 +0100
@@ -95,7 +95,7 @@
 
////////////////////////////////////////////////////////////////////////////////
 
 // Serde types in rustdoc of other crates get linked to here.
-#![doc(html_root_url = "https://docs.rs/serde/1.0.209";)]
+#![doc(html_root_url = "https://docs.rs/serde/1.0.210";)]
 // Support using Serde without the standard library!
 #![cfg_attr(not(feature = "std"), no_std)]
 // Show which crate feature enables conditionally compiled APIs in 
documentation.
@@ -238,8 +238,13 @@
     #[cfg(feature = "std")]
     pub use std::ffi::CString;
 
+    #[cfg(all(not(no_core_net), not(feature = "std")))]
+    pub use self::core::net;
     #[cfg(feature = "std")]
-    pub use std::{error, net};
+    pub use std::net;
+
+    #[cfg(feature = "std")]
+    pub use std::error;
 
     #[cfg(feature = "std")]
     pub use std::collections::{HashMap, HashSet};
@@ -305,6 +310,8 @@
 pub mod de;
 pub mod ser;
 
+mod format;
+
 #[doc(inline)]
 pub use crate::de::{Deserialize, Deserializer};
 #[doc(inline)]
@@ -318,7 +325,7 @@
 #[path = "de/seed.rs"]
 mod seed;
 
-#[cfg(not(any(feature = "std", feature = "unstable")))]
+#[cfg(all(not(feature = "std"), no_core_error))]
 mod std_error;
 
 // Re-export #[derive(Serialize, Deserialize)].
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/serde/src/ser/impls.rs 
new/vendor/serde/src/ser/impls.rs
--- old/vendor/serde/src/ser/impls.rs   1970-01-01 01:00:00.000000000 +0100
+++ new/vendor/serde/src/ser/impls.rs   1970-01-01 01:00:00.000000000 +0100
@@ -773,28 +773,17 @@
 /// statically known to never have more than a constant `MAX_LEN` bytes.
 ///
 /// Panics if the `Display` impl tries to write more than `MAX_LEN` bytes.
-#[cfg(feature = "std")]
+#[cfg(any(feature = "std", not(no_core_net)))]
 macro_rules! serialize_display_bounded_length {
     ($value:expr, $max:expr, $serializer:expr) => {{
         let mut buffer = [0u8; $max];
-        let remaining_len = {
-            let mut remaining = &mut buffer[..];
-            write!(remaining, "{}", $value).unwrap();
-            remaining.len()
-        };
-        let written_len = buffer.len() - remaining_len;
-        let written = &buffer[..written_len];
-
-        // write! only provides fmt::Formatter to Display implementations, 
which
-        // has methods write_str and write_char but no method to write 
arbitrary
-        // bytes. Therefore `written` must be valid UTF-8.
-        let written_str = str::from_utf8(written).expect("must be valid 
UTF-8");
-        $serializer.serialize_str(written_str)
+        let mut writer = crate::format::Buf::new(&mut buffer);
+        write!(&mut writer, "{}", $value).unwrap();
+        $serializer.serialize_str(writer.as_str())
     }};
 }
 
-#[cfg(feature = "std")]
-#[cfg_attr(docsrs, doc(cfg(feature = "std")))]
+#[cfg(any(feature = "std", not(no_core_net)))]
 impl Serialize for net::IpAddr {
     fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
     where
@@ -818,7 +807,7 @@
     }
 }
 
-#[cfg(feature = "std")]
+#[cfg(any(feature = "std", not(no_core_net)))]
 const DEC_DIGITS_LUT: &[u8] = b"\
       0001020304050607080910111213141516171819\
       2021222324252627282930313233343536373839\
@@ -826,7 +815,7 @@
       6061626364656667686970717273747576777879\
       8081828384858687888990919293949596979899";
 
-#[cfg(feature = "std")]
+#[cfg(any(feature = "std", not(no_core_net)))]
 #[inline]
 fn format_u8(mut n: u8, out: &mut [u8]) -> usize {
     if n >= 100 {
@@ -847,7 +836,7 @@
     }
 }
 
-#[cfg(feature = "std")]
+#[cfg(any(feature = "std", not(no_core_net)))]
 #[test]
 fn test_format_u8() {
     let mut i = 0u8;
@@ -864,8 +853,7 @@
     }
 }
 
-#[cfg(feature = "std")]
-#[cfg_attr(docsrs, doc(cfg(feature = "std")))]
+#[cfg(any(feature = "std", not(no_core_net)))]
 impl Serialize for net::Ipv4Addr {
     fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
     where
@@ -889,8 +877,7 @@
     }
 }
 
-#[cfg(feature = "std")]
-#[cfg_attr(docsrs, doc(cfg(feature = "std")))]
+#[cfg(any(feature = "std", not(no_core_net)))]
 impl Serialize for net::Ipv6Addr {
     fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
     where
@@ -906,8 +893,7 @@
     }
 }
 
-#[cfg(feature = "std")]
-#[cfg_attr(docsrs, doc(cfg(feature = "std")))]
+#[cfg(any(feature = "std", not(no_core_net)))]
 impl Serialize for net::SocketAddr {
     fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
     where
@@ -931,8 +917,7 @@
     }
 }
 
-#[cfg(feature = "std")]
-#[cfg_attr(docsrs, doc(cfg(feature = "std")))]
+#[cfg(any(feature = "std", not(no_core_net)))]
 impl Serialize for net::SocketAddrV4 {
     fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
     where
@@ -948,8 +933,7 @@
     }
 }
 
-#[cfg(feature = "std")]
-#[cfg_attr(docsrs, doc(cfg(feature = "std")))]
+#[cfg(any(feature = "std", not(no_core_net)))]
 impl Serialize for net::SocketAddrV6 {
     fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
     where
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/serde/src/ser/mod.rs 
new/vendor/serde/src/ser/mod.rs
--- old/vendor/serde/src/ser/mod.rs     1970-01-01 01:00:00.000000000 +0100
+++ new/vendor/serde/src/ser/mod.rs     1970-01-01 01:00:00.000000000 +0100
@@ -115,10 +115,10 @@
 
 pub use self::impossible::Impossible;
 
-#[cfg(not(any(feature = "std", feature = "unstable")))]
+#[cfg(all(not(feature = "std"), no_core_error))]
 #[doc(no_inline)]
 pub use crate::std_error::Error as StdError;
-#[cfg(all(feature = "unstable", not(feature = "std")))]
+#[cfg(not(any(feature = "std", no_core_error)))]
 #[doc(no_inline)]
 pub use core::error::Error as StdError;
 #[cfg(feature = "std")]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/serde_derive/.cargo-checksum.json 
new/vendor/serde_derive/.cargo-checksum.json
--- old/vendor/serde_derive/.cargo-checksum.json        1970-01-01 
01:00:00.000000000 +0100
+++ new/vendor/serde_derive/.cargo-checksum.json        1970-01-01 
01:00:00.000000000 +0100
@@ -1 +1 @@
-{"files":{"Cargo.toml":"7ca37ffebc73fe7fc549fc7675bcd014538a03da37b4e9c82879adce2c84a57c","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"731c044fc5f98b37a89e9049c9214267db98763309cb63146b45c029640f82a3","crates-io.md":"407d92b2932923f8708aaf31db266fd7db32e2b0afa6c569d134b680b74a1920","src/bound.rs":"6c5c20785ac95af9480f8d0de35a7e844cc36a16012f6468db148acd03cb15c2","src/de.rs":"e0a2186fb31e24b95cdfc499b1adad295bb3eac0448a41fc37f7609cadda52c7","src/dummy.rs":"9533dfee23f20d92ea75734c739022820c2787ded0d54f459feacdeb770ec912","src/fragment.rs":"6757cb4c3131d4300f093572efc273c4ab5a20e3e1efb54a311dcfa52d0bd6eb","src/internals/ast.rs":"171478e83d203193cd96f2c9c922bd240214e05fdf76add73fb7e029784bace8","src/internals/attr.rs":"8ab89c54ec7713a16767971507733f6692eff1919fe7add6911b33c40dfc45a7","src/internals/case.rs":"10c8dda2b32d8c6c6b63cf09cdc63d02375af7e95ecefe8
 
fecb34f93b65191bb","src/internals/check.rs":"d842eb9912fd29311060b67f3bc62c438eb7b5d86093355acb4de7eee02a0ef8","src/internals/ctxt.rs":"83a4e6fbe0e439d578478883594407e03f2f340541be479bdf0b04a202633a37","src/internals/mod.rs":"ed021ca635c18132a0e5c3d90f21b7f65def0a61e946421a30200b5b9ab6ad43","src/internals/receiver.rs":"710f875da3bad3e2a7fc1df40ab6805bb5e971b6a2a04c1b643b8a0aa29e8496","src/internals/respan.rs":"899753859c58ce5f532a3ec4584796a52f13ed5a0533191e48c953ba5c1b52ff","src/internals/symbol.rs":"d619e88caa3c7a09b03014257f2b349ee922290062d9b97b4dd19d0e64532690","src/lib.rs":"859329090a2685a2d4e6c6fe3e6ff2e7c17db5ca488bcff95431dee26fcfc93e","src/pretend.rs":"7facc10a5b805564dd95735ae11118ec17ca6adcc49a59764e7c920e27b9fc4a","src/ser.rs":"120588172988a1078af4a090fbe6ffc2f9ba3ac6993f9baebea17cfe5ac6e7fa","src/this.rs":"87818dc80cbb521b51938a653d09daf10aafc220bb10425948de82ad670fcb85"},"package":"a5831b979fd7b5439637af1752d535ff49f4860c0f341d1baeb6faf0f4242170"}
\ No newline at end of file
+{"files":{"Cargo.toml":"f02849531e614dd38ab37ad86c0e4f5bf16ede7becaa75ebbb6604170ea294e6","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"731c044fc5f98b37a89e9049c9214267db98763309cb63146b45c029640f82a3","crates-io.md":"407d92b2932923f8708aaf31db266fd7db32e2b0afa6c569d134b680b74a1920","src/bound.rs":"6c5c20785ac95af9480f8d0de35a7e844cc36a16012f6468db148acd03cb15c2","src/de.rs":"e0a2186fb31e24b95cdfc499b1adad295bb3eac0448a41fc37f7609cadda52c7","src/dummy.rs":"9533dfee23f20d92ea75734c739022820c2787ded0d54f459feacdeb770ec912","src/fragment.rs":"6757cb4c3131d4300f093572efc273c4ab5a20e3e1efb54a311dcfa52d0bd6eb","src/internals/ast.rs":"171478e83d203193cd96f2c9c922bd240214e05fdf76add73fb7e029784bace8","src/internals/attr.rs":"8ab89c54ec7713a16767971507733f6692eff1919fe7add6911b33c40dfc45a7","src/internals/case.rs":"10c8dda2b32d8c6c6b63cf09cdc63d02375af7e95ecefe8
 
fecb34f93b65191bb","src/internals/check.rs":"d842eb9912fd29311060b67f3bc62c438eb7b5d86093355acb4de7eee02a0ef8","src/internals/ctxt.rs":"83a4e6fbe0e439d578478883594407e03f2f340541be479bdf0b04a202633a37","src/internals/mod.rs":"ed021ca635c18132a0e5c3d90f21b7f65def0a61e946421a30200b5b9ab6ad43","src/internals/receiver.rs":"710f875da3bad3e2a7fc1df40ab6805bb5e971b6a2a04c1b643b8a0aa29e8496","src/internals/respan.rs":"899753859c58ce5f532a3ec4584796a52f13ed5a0533191e48c953ba5c1b52ff","src/internals/symbol.rs":"d619e88caa3c7a09b03014257f2b349ee922290062d9b97b4dd19d0e64532690","src/lib.rs":"67d0a9e8509324573bf42467f98eb3d9e4e15da67410a3e23bb87bdbd742f5ed","src/pretend.rs":"7facc10a5b805564dd95735ae11118ec17ca6adcc49a59764e7c920e27b9fc4a","src/ser.rs":"120588172988a1078af4a090fbe6ffc2f9ba3ac6993f9baebea17cfe5ac6e7fa","src/this.rs":"87818dc80cbb521b51938a653d09daf10aafc220bb10425948de82ad670fcb85"},"package":"243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f"}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/serde_derive/Cargo.toml 
new/vendor/serde_derive/Cargo.toml
--- old/vendor/serde_derive/Cargo.toml  1970-01-01 01:00:00.000000000 +0100
+++ new/vendor/serde_derive/Cargo.toml  1970-01-01 01:00:00.000000000 +0100
@@ -13,7 +13,7 @@
 edition = "2015"
 rust-version = "1.56"
 name = "serde_derive"
-version = "1.0.209"
+version = "1.0.210"
 authors = [
     "Erick Tryzelaar <erick.tryzel...@gmail.com>",
     "David Tolnay <dtol...@gmail.com>",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/serde_derive/src/lib.rs 
new/vendor/serde_derive/src/lib.rs
--- old/vendor/serde_derive/src/lib.rs  1970-01-01 01:00:00.000000000 +0100
+++ new/vendor/serde_derive/src/lib.rs  1970-01-01 01:00:00.000000000 +0100
@@ -13,7 +13,7 @@
 //!
 //! [https://serde.rs/derive.html]: https://serde.rs/derive.html
 
-#![doc(html_root_url = "https://docs.rs/serde_derive/1.0.209";)]
+#![doc(html_root_url = "https://docs.rs/serde_derive/1.0.210";)]
 #![cfg_attr(not(check_cfg), allow(unexpected_cfgs))]
 // Ignored clippy lints
 #![allow(

Reply via email to