From c684505cba2a821e4754c19c383dd8dbaacdd09e Mon Sep 17 00:00:00 2001 From: Benjamin Gill Date: Mon, 29 Jul 2019 14:01:01 +0100 Subject: [PATCH] Stop deriving Eq for models (#3463) It fails if the model contains a float, which don't implement Eq. Fix for bug introduced in #3309. We really need to improve the testing of the rust generator to catch this sort of mistake in future. I don't have time to do this now, though. --- .../openapi-generator/src/main/resources/rust/model.mustache | 4 ++-- .../client/petstore/rust-reqwest/src/models/api_response.rs | 2 +- samples/client/petstore/rust-reqwest/src/models/category.rs | 2 +- samples/client/petstore/rust-reqwest/src/models/order.rs | 4 ++-- samples/client/petstore/rust-reqwest/src/models/pet.rs | 4 ++-- samples/client/petstore/rust-reqwest/src/models/tag.rs | 2 +- samples/client/petstore/rust-reqwest/src/models/user.rs | 2 +- samples/client/petstore/rust/src/models/api_response.rs | 2 +- samples/client/petstore/rust/src/models/category.rs | 2 +- samples/client/petstore/rust/src/models/order.rs | 4 ++-- samples/client/petstore/rust/src/models/pet.rs | 4 ++-- samples/client/petstore/rust/src/models/tag.rs | 2 +- samples/client/petstore/rust/src/models/user.rs | 2 +- 13 files changed, 18 insertions(+), 18 deletions(-) diff --git a/modules/openapi-generator/src/main/resources/rust/model.mustache b/modules/openapi-generator/src/main/resources/rust/model.mustache index f371e0e703c..1572a1a8718 100644 --- a/modules/openapi-generator/src/main/resources/rust/model.mustache +++ b/modules/openapi-generator/src/main/resources/rust/model.mustache @@ -20,7 +20,7 @@ pub enum {{classname}} { {{!-- for non-enum schemas --}} {{^isEnum}} -#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)] +#[derive(Debug, PartialEq, Serialize, Deserialize)] pub struct {{{classname}}} { {{#vars}} {{#description}} @@ -49,7 +49,7 @@ impl {{{classname}}} { {{#vars}} {{#isEnum}} /// {{{description}}} -#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)] +#[derive(Debug, PartialEq, Serialize, Deserialize)] pub enum {{enumName}} { {{#allowableValues}} {{#enumVars}} diff --git a/samples/client/petstore/rust-reqwest/src/models/api_response.rs b/samples/client/petstore/rust-reqwest/src/models/api_response.rs index d83716a9a1b..45395215a3f 100644 --- a/samples/client/petstore/rust-reqwest/src/models/api_response.rs +++ b/samples/client/petstore/rust-reqwest/src/models/api_response.rs @@ -11,7 +11,7 @@ /// ApiResponse : Describes the result of uploading an image resource -#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)] +#[derive(Debug, PartialEq, Serialize, Deserialize)] pub struct ApiResponse { #[serde(rename = "code", skip_serializing_if = "Option::is_none")] pub code: Option, diff --git a/samples/client/petstore/rust-reqwest/src/models/category.rs b/samples/client/petstore/rust-reqwest/src/models/category.rs index 4b2c812339b..1c8763902ba 100644 --- a/samples/client/petstore/rust-reqwest/src/models/category.rs +++ b/samples/client/petstore/rust-reqwest/src/models/category.rs @@ -11,7 +11,7 @@ /// Category : A category for a pet -#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)] +#[derive(Debug, PartialEq, Serialize, Deserialize)] pub struct Category { #[serde(rename = "id", skip_serializing_if = "Option::is_none")] pub id: Option, diff --git a/samples/client/petstore/rust-reqwest/src/models/order.rs b/samples/client/petstore/rust-reqwest/src/models/order.rs index 637dd71cde5..685e080e312 100644 --- a/samples/client/petstore/rust-reqwest/src/models/order.rs +++ b/samples/client/petstore/rust-reqwest/src/models/order.rs @@ -11,7 +11,7 @@ /// Order : An order for a pets from the pet store -#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)] +#[derive(Debug, PartialEq, Serialize, Deserialize)] pub struct Order { #[serde(rename = "id", skip_serializing_if = "Option::is_none")] pub id: Option, @@ -43,7 +43,7 @@ impl Order { } /// Order Status -#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)] +#[derive(Debug, PartialEq, Serialize, Deserialize)] pub enum Status { #[serde(rename = "placed")] Placed, diff --git a/samples/client/petstore/rust-reqwest/src/models/pet.rs b/samples/client/petstore/rust-reqwest/src/models/pet.rs index efc6f370ff5..2da297169eb 100644 --- a/samples/client/petstore/rust-reqwest/src/models/pet.rs +++ b/samples/client/petstore/rust-reqwest/src/models/pet.rs @@ -11,7 +11,7 @@ /// Pet : A pet for sale in the pet store -#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)] +#[derive(Debug, PartialEq, Serialize, Deserialize)] pub struct Pet { #[serde(rename = "id", skip_serializing_if = "Option::is_none")] pub id: Option, @@ -43,7 +43,7 @@ impl Pet { } /// pet status in the store -#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)] +#[derive(Debug, PartialEq, Serialize, Deserialize)] pub enum Status { #[serde(rename = "available")] Available, diff --git a/samples/client/petstore/rust-reqwest/src/models/tag.rs b/samples/client/petstore/rust-reqwest/src/models/tag.rs index 69e361463e3..364143932c0 100644 --- a/samples/client/petstore/rust-reqwest/src/models/tag.rs +++ b/samples/client/petstore/rust-reqwest/src/models/tag.rs @@ -11,7 +11,7 @@ /// Tag : A tag for a pet -#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)] +#[derive(Debug, PartialEq, Serialize, Deserialize)] pub struct Tag { #[serde(rename = "id", skip_serializing_if = "Option::is_none")] pub id: Option, diff --git a/samples/client/petstore/rust-reqwest/src/models/user.rs b/samples/client/petstore/rust-reqwest/src/models/user.rs index e204a5e325c..b6b9fc78fb9 100644 --- a/samples/client/petstore/rust-reqwest/src/models/user.rs +++ b/samples/client/petstore/rust-reqwest/src/models/user.rs @@ -11,7 +11,7 @@ /// User : A User who is purchasing from the pet store -#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)] +#[derive(Debug, PartialEq, Serialize, Deserialize)] pub struct User { #[serde(rename = "id", skip_serializing_if = "Option::is_none")] pub id: Option, diff --git a/samples/client/petstore/rust/src/models/api_response.rs b/samples/client/petstore/rust/src/models/api_response.rs index d83716a9a1b..45395215a3f 100644 --- a/samples/client/petstore/rust/src/models/api_response.rs +++ b/samples/client/petstore/rust/src/models/api_response.rs @@ -11,7 +11,7 @@ /// ApiResponse : Describes the result of uploading an image resource -#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)] +#[derive(Debug, PartialEq, Serialize, Deserialize)] pub struct ApiResponse { #[serde(rename = "code", skip_serializing_if = "Option::is_none")] pub code: Option, diff --git a/samples/client/petstore/rust/src/models/category.rs b/samples/client/petstore/rust/src/models/category.rs index 4b2c812339b..1c8763902ba 100644 --- a/samples/client/petstore/rust/src/models/category.rs +++ b/samples/client/petstore/rust/src/models/category.rs @@ -11,7 +11,7 @@ /// Category : A category for a pet -#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)] +#[derive(Debug, PartialEq, Serialize, Deserialize)] pub struct Category { #[serde(rename = "id", skip_serializing_if = "Option::is_none")] pub id: Option, diff --git a/samples/client/petstore/rust/src/models/order.rs b/samples/client/petstore/rust/src/models/order.rs index 637dd71cde5..685e080e312 100644 --- a/samples/client/petstore/rust/src/models/order.rs +++ b/samples/client/petstore/rust/src/models/order.rs @@ -11,7 +11,7 @@ /// Order : An order for a pets from the pet store -#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)] +#[derive(Debug, PartialEq, Serialize, Deserialize)] pub struct Order { #[serde(rename = "id", skip_serializing_if = "Option::is_none")] pub id: Option, @@ -43,7 +43,7 @@ impl Order { } /// Order Status -#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)] +#[derive(Debug, PartialEq, Serialize, Deserialize)] pub enum Status { #[serde(rename = "placed")] Placed, diff --git a/samples/client/petstore/rust/src/models/pet.rs b/samples/client/petstore/rust/src/models/pet.rs index efc6f370ff5..2da297169eb 100644 --- a/samples/client/petstore/rust/src/models/pet.rs +++ b/samples/client/petstore/rust/src/models/pet.rs @@ -11,7 +11,7 @@ /// Pet : A pet for sale in the pet store -#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)] +#[derive(Debug, PartialEq, Serialize, Deserialize)] pub struct Pet { #[serde(rename = "id", skip_serializing_if = "Option::is_none")] pub id: Option, @@ -43,7 +43,7 @@ impl Pet { } /// pet status in the store -#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)] +#[derive(Debug, PartialEq, Serialize, Deserialize)] pub enum Status { #[serde(rename = "available")] Available, diff --git a/samples/client/petstore/rust/src/models/tag.rs b/samples/client/petstore/rust/src/models/tag.rs index 69e361463e3..364143932c0 100644 --- a/samples/client/petstore/rust/src/models/tag.rs +++ b/samples/client/petstore/rust/src/models/tag.rs @@ -11,7 +11,7 @@ /// Tag : A tag for a pet -#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)] +#[derive(Debug, PartialEq, Serialize, Deserialize)] pub struct Tag { #[serde(rename = "id", skip_serializing_if = "Option::is_none")] pub id: Option, diff --git a/samples/client/petstore/rust/src/models/user.rs b/samples/client/petstore/rust/src/models/user.rs index e204a5e325c..b6b9fc78fb9 100644 --- a/samples/client/petstore/rust/src/models/user.rs +++ b/samples/client/petstore/rust/src/models/user.rs @@ -11,7 +11,7 @@ /// User : A User who is purchasing from the pet store -#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)] +#[derive(Debug, PartialEq, Serialize, Deserialize)] pub struct User { #[serde(rename = "id", skip_serializing_if = "Option::is_none")] pub id: Option,