Repository: ron-rs/ron
Pull request #441 (2023-03-13 13:51:53)

depend on `serde_derive` separately for more compilation parallelism
* [x] I've included my change in `CHANGELOG.md`

If no crate enables the `derive` feature of `serde`, then `serde` and `serde_derive` can compile in parallel, and anything depending only on `serde` can compile while `serde_derive` is not yet done.
This can save up to 5 seconds of compilation, depending on whether this helps the critical chain and if no other crate enables the feature. 


![image](https://user-images.githubusercontent.com/22177966/224720751-3bdebf5a-a620-45d1-89d2-4f4a90a609a2.png)


codecov-commenter: ## [Codecov](https://codecov.io/gh/ron-rs/ron/pull/441?src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None) Report
Patch coverage has no change and project coverage change: **`+2.20`** :tada:
> Comparison is base [(`d15bacc`)](https://codecov.io/gh/ron-rs/ron/commit/d15baccd13f6c815c84f2c973c7d6bf727f47fb9?el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None) 84.52% compared to head [(`92872d9`)](https://codecov.io/gh/ron-rs/ron/pull/441?src=pr&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None) 86.73%.

:mega: This organization is not using Codecov’s [GitHub App Integration](https://github.com/apps/codecov). We recommend you install it so Codecov can continue to function properly for your repositories. [Learn more](https://about.codecov.io/blog/codecov-is-updating-its-github-integration/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None)

<details><summary>Additional details and impacted files</summary>


```diff
@@            Coverage Diff             @@
##           master     #441      +/-   ##
==========================================
+ Coverage   84.52%   86.73%   +2.20%     
==========================================
  Files          59       59              
  Lines        7470     7280     -190     
==========================================
  Hits         6314     6314              
+ Misses       1156      966     -190     
```


| [Impacted Files](https://codecov.io/gh/ron-rs/ron/pull/441?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None) | Coverage Δ | |
|---|---|---|
| [src/de/tests.rs](https://codecov.io/gh/ron-rs/ron/pull/441?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None#diff-c3JjL2RlL3Rlc3RzLnJz) | `100.00% <ø> (ø)` | |
| [src/extensions.rs](https://codecov.io/gh/ron-rs/ron/pull/441?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None#diff-c3JjL2V4dGVuc2lvbnMucnM=) | `100.00% <ø> (ø)` | |
| [src/options.rs](https://codecov.io/gh/ron-rs/ron/pull/441?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None#diff-c3JjL29wdGlvbnMucnM=) | `42.64% <ø> (-0.64%)` | :arrow_down: |
| [src/ser/mod.rs](https://codecov.io/gh/ron-rs/ron/pull/441?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None#diff-c3JjL3Nlci9tb2QucnM=) | `71.15% <ø> (+0.47%)` | :arrow_up: |
| [src/ser/tests.rs](https://codecov.io/gh/ron-rs/ron/pull/441?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None#diff-c3JjL3Nlci90ZXN0cy5ycw==) | `100.00% <ø> (ø)` | |
| [src/value/mod.rs](https://codecov.io/gh/ron-rs/ron/pull/441?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None#diff-c3JjL3ZhbHVlL21vZC5ycw==) | `50.38% <ø> (-17.09%)` | :arrow_down: |

... and [4 files with indirect coverage changes](https://codecov.io/gh/ron-rs/ron/pull/441/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None)

Help us with your feedback. Take ten seconds to tell us [how you rate us](https://about.codecov.io/nps?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None). Have a feature suggestion? [Share it here.](https://app.codecov.io/gh/feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None)

</details>

[:umbrella: View full report in Codecov by Sentry](https://codecov.io/gh/ron-rs/ron/pull/441?src=pr&el=continue&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None).   
:loudspeaker: Do you have feedback about the report comment? [Let us know in this issue](https://about.codecov.io/codecov-pr-comment-feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None).


Patch:
diff --git a/CHANGELOG.md b/CHANGELOG.md
index b94213d0..52c8c5ac 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -17,6 +17,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
 - Add `escape_strings` option to `PrettyConfig` to allow serialising with or without escaping ([#426](https://github.com/ron-rs/ron/pull/426))
 - Bump MSRV to 1.57.0 and bump dependency: `base64` to 0.20 ([#431](https://github.com/ron-rs/ron/pull/431))
 - Bump dependency `base64` to 0.21 ([#433](https://github.com/ron-rs/ron/pull/433))
+- Depend on `serde_derive` directly to potentially enable more compilation parallelism ([#441](https://github.com/ron-rs/ron/pull/441))
 
 ## [0.8.0] - 2022-08-17
 
diff --git a/Cargo.toml b/Cargo.toml
index 607ea2c1..58aef3ea 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -28,9 +28,11 @@ base64 = "0.21"
 bitflags = "1.3"
 indexmap = { version = "1.9", features = ["serde-1"], optional = true }
 # serde supports i128/u128 from 1.0.60 onwards
-serde = { version = "1.0.60", features = ["serde_derive"] }
+serde = "1.0.60"
+serde_derive = "1.0"
 
 [dev-dependencies]
+serde = { version = "1.0", features = ["derive"] }
 serde_bytes = "0.11"
 serde_json = "1.0"
 bitflags-serial = { git = "https://github.com/kvark/bitflags-serial" }
diff --git a/src/extensions.rs b/src/extensions.rs
index 08abf069..19472c2a 100644
--- a/src/extensions.rs
+++ b/src/extensions.rs
@@ -1,4 +1,4 @@
-use serde::{Deserialize, Serialize};
+use serde_derive::{Deserialize, Serialize};
 
 bitflags::bitflags! {
     #[derive(Serialize, Deserialize)]
diff --git a/src/options.rs b/src/options.rs
index 588b3813..b0c5816b 100644
--- a/src/options.rs
+++ b/src/options.rs
@@ -2,7 +2,8 @@
 
 use std::io;
 
-use serde::{de, ser, Deserialize, Serialize};
+use serde::{de, ser};
+use serde_derive::{Deserialize, Serialize};
 
 use crate::{
     de::Deserializer,
diff --git a/src/ser/mod.rs b/src/ser/mod.rs
index c8d3f6d1..16dfd2db 100644
--- a/src/ser/mod.rs
+++ b/src/ser/mod.rs
@@ -1,7 +1,8 @@
 use std::io;
 
 use base64::Engine;
-use serde::{ser, Deserialize, Serialize};
+use serde::{ser, ser::Serialize};
+use serde_derive::{Deserialize, Serialize};
 
 use crate::{
     error::{Error, Result},
diff --git a/src/value/mod.rs b/src/value/mod.rs
index 826e6d9c..c6884ee7 100644
--- a/src/value/mod.rs
+++ b/src/value/mod.rs
@@ -9,8 +9,9 @@ use std::{
 
 use serde::{
     de::{DeserializeOwned, DeserializeSeed, Deserializer, MapAccess, SeqAccess, Visitor},
-    forward_to_deserialize_any, Deserialize, Serialize,
+    forward_to_deserialize_any,
 };
+use serde_derive::{Deserialize, Serialize};
 
 use crate::{de::Error, error::Result};
 


Test patch:
diff --git a/src/de/tests.rs b/src/de/tests.rs
index 1dbae0e9..2c46eb68 100644
--- a/src/de/tests.rs
+++ b/src/de/tests.rs
@@ -1,5 +1,5 @@
-use serde::Deserialize;
 use serde_bytes;
+use serde_derive::Deserialize;
 
 use crate::{
     de::from_str,
diff --git a/src/ser/tests.rs b/src/ser/tests.rs
index 8b1b6c84..fce7f007 100644
--- a/src/ser/tests.rs
+++ b/src/ser/tests.rs
@@ -1,4 +1,4 @@
-use serde::Serialize;
+use serde_derive::Serialize;
 
 use super::to_string;