From 5a092cae1d74f81e7ea95480f296356b7d837b1e Mon Sep 17 00:00:00 2001
From: Hernando Castano <hernando@hcastano.com>
Date: Thu, 17 Mar 2022 09:03:01 -0700
Subject: [PATCH 1/2] Stop specifying path for `parity-scale-codec` crate

Looks like the original PR in the `v3.1` release broke this
unintentionally, but it is back to normal in `v3.1.2`
---
 crates/lang/codegen/src/generator/as_dependency/call_builder.rs | 1 -
 crates/lang/codegen/src/generator/as_dependency/contract_ref.rs | 1 -
 crates/lang/codegen/src/generator/events.rs                     | 1 -
 crates/lang/codegen/src/generator/trait_def/call_builder.rs     | 1 -
 crates/lang/codegen/src/generator/trait_def/call_forwarder.rs   | 1 -
 5 files changed, 5 deletions(-)

diff --git a/crates/lang/codegen/src/generator/as_dependency/call_builder.rs b/crates/lang/codegen/src/generator/as_dependency/call_builder.rs
index ce4b402a7c6..074b7c66843 100644
--- a/crates/lang/codegen/src/generator/as_dependency/call_builder.rs
+++ b/crates/lang/codegen/src/generator/as_dependency/call_builder.rs
@@ -97,7 +97,6 @@ impl CallBuilder<'_> {
                 ::core::cmp::Eq,
                 ::core::clone::Clone,
             )]
-            #[codec(crate = ::scale)]
             pub struct #cb_ident {
                 account_id: AccountId,
             }
diff --git a/crates/lang/codegen/src/generator/as_dependency/contract_ref.rs b/crates/lang/codegen/src/generator/as_dependency/contract_ref.rs
index a06a94de00f..a25bafe2306 100644
--- a/crates/lang/codegen/src/generator/as_dependency/contract_ref.rs
+++ b/crates/lang/codegen/src/generator/as_dependency/contract_ref.rs
@@ -101,7 +101,6 @@ impl ContractRef<'_> {
                 ::core::cmp::Eq,
                 ::core::clone::Clone,
             )]
-            #[codec(crate = ::scale)]
             #( #doc_attrs )*
             pub struct #ref_ident {
                 inner: <#storage_ident as ::ink_lang::codegen::ContractCallBuilder>::Type,
diff --git a/crates/lang/codegen/src/generator/events.rs b/crates/lang/codegen/src/generator/events.rs
index b94f6da7d4d..3f1ab62b923 100644
--- a/crates/lang/codegen/src/generator/events.rs
+++ b/crates/lang/codegen/src/generator/events.rs
@@ -95,7 +95,6 @@ impl<'a> Events<'a> {
         quote! {
             #[allow(non_camel_case_types)]
             #[derive(::scale::Encode, ::scale::Decode)]
-            #[codec(crate = ::scale)]
             #[cfg(not(feature = "__ink_dylint_EventBase"))]
             pub enum #base_event_ident {
                 #( #event_idents(#event_idents), )*
diff --git a/crates/lang/codegen/src/generator/trait_def/call_builder.rs b/crates/lang/codegen/src/generator/trait_def/call_builder.rs
index f45e641ac0c..29d8b869172 100644
--- a/crates/lang/codegen/src/generator/trait_def/call_builder.rs
+++ b/crates/lang/codegen/src/generator/trait_def/call_builder.rs
@@ -111,7 +111,6 @@ impl CallBuilder<'_> {
             #[doc(hidden)]
             #[allow(non_camel_case_types)]
             #[derive(::scale::Encode, ::scale::Decode)]
-            #[codec(crate = ::scale)]
             #[repr(transparent)]
             pub struct #call_builder_ident<E>
             where
diff --git a/crates/lang/codegen/src/generator/trait_def/call_forwarder.rs b/crates/lang/codegen/src/generator/trait_def/call_forwarder.rs
index 781cf0dd074..f1ecece69f3 100644
--- a/crates/lang/codegen/src/generator/trait_def/call_forwarder.rs
+++ b/crates/lang/codegen/src/generator/trait_def/call_forwarder.rs
@@ -115,7 +115,6 @@ impl CallForwarder<'_> {
             #[doc(hidden)]
             #[allow(non_camel_case_types)]
             #[derive(::scale::Encode, ::scale::Decode)]
-            #[codec(crate = ::scale)]
             #[repr(transparent)]
             pub struct #call_forwarder_ident<E>
             where

From a70b896d43c04830a3c7f88a86687a2cd14c67b3 Mon Sep 17 00:00:00 2001
From: Hernando Castano <hernando@hcastano.com>
Date: Thu, 17 Mar 2022 09:07:16 -0700
Subject: [PATCH 2/2] Fix UI tests

---
 .../tests/ui/contract/fail/message-returns-non-codec.stderr     | 2 +-
 .../tests/ui/trait_def/fail/message_output_non_codec.stderr     | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/crates/lang/tests/ui/contract/fail/message-returns-non-codec.stderr b/crates/lang/tests/ui/contract/fail/message-returns-non-codec.stderr
index 1dfcc2aac2c..75a79991b23 100644
--- a/crates/lang/tests/ui/contract/fail/message-returns-non-codec.stderr
+++ b/crates/lang/tests/ui/contract/fail/message-returns-non-codec.stderr
@@ -40,7 +40,7 @@ error[E0599]: the method `fire` exists for struct `ink_env::call::CallBuilder<De
     = note: the following trait bounds were not satisfied:
             `NonCodecType: parity_scale_codec::Decode`
 note: the following trait must be implemented
-   --> $CARGO/parity-scale-codec-3.1.0/src/codec.rs
+   --> $CARGO/parity-scale-codec-3.1.2/src/codec.rs
     |
     | / pub trait Decode: Sized {
     | |     // !INTERNAL USE ONLY!
diff --git a/crates/lang/tests/ui/trait_def/fail/message_output_non_codec.stderr b/crates/lang/tests/ui/trait_def/fail/message_output_non_codec.stderr
index 18829b12ca4..730acb0a9b1 100644
--- a/crates/lang/tests/ui/trait_def/fail/message_output_non_codec.stderr
+++ b/crates/lang/tests/ui/trait_def/fail/message_output_non_codec.stderr
@@ -24,7 +24,7 @@ error[E0599]: the method `fire` exists for struct `CallBuilder<E, Set<Call<E>>,
     = note: the following trait bounds were not satisfied:
             `NonCodec: parity_scale_codec::Decode`
 note: the following trait must be implemented
-   --> $CARGO/parity-scale-codec-3.1.0/src/codec.rs
+   --> $CARGO/parity-scale-codec-3.1.2/src/codec.rs
     |
     | / pub trait Decode: Sized {
     | |     // !INTERNAL USE ONLY!