Update to latest proc-macro-crate version (#8294)

This commit is contained in:
Bastian Köcher
2021-03-09 23:22:25 +01:00
committed by GitHub
parent 7599e0d6e8
commit c33235ac5b
17 changed files with 119 additions and 140 deletions
@@ -15,7 +15,7 @@ targets = ["x86_64-unknown-linux-gnu"]
proc-macro = true
[dependencies]
proc-macro-crate = "0.1.4"
proc-macro-crate = "1.0.0"
proc-macro2 = "1.0.6"
quote = "1.0.3"
syn = "1.0.58"
@@ -19,7 +19,7 @@
use proc_macro2::{Span, TokenStream};
use quote::quote;
use syn::{DeriveInput, Ident, Error};
use proc_macro_crate::crate_name;
use proc_macro_crate::{crate_name, FoundCrate};
const CRATE_NAME: &str = "sc-chain-spec";
const ATTRIBUTE_NAME: &str = "forks";
@@ -77,7 +77,8 @@ pub fn group_derive(ast: &DeriveInput) -> proc_macro::TokenStream {
let combine_with = generate_combine_with(&field_names);
let to_base = generate_fork_to_base(name, &field_names);
let serde_crate_name = match proc_macro_crate::crate_name("serde") {
Ok(name) => Ident::new(&name.replace("-", "_"), Span::call_site()),
Ok(FoundCrate::Itself) => Ident::new("serde", Span::call_site()),
Ok(FoundCrate::Name(name)) => Ident::new(&name, Span::call_site()),
Err(e) => {
let err = Error::new(
Span::call_site(),
@@ -151,14 +152,11 @@ pub fn derive(
_ => return err(),
};
const PROOF: &str = "CARGO_PKG_NAME always defined when compiling; qed";
let name = &ast.ident;
let crate_name = match crate_name(CRATE_NAME) {
Ok(chain_spec_name) => chain_spec_name,
Err(e) => if std::env::var("CARGO_PKG_NAME").expect(PROOF) == CRATE_NAME {
// we return the name of the crate here instead of `crate` to support doc tests.
CRATE_NAME.replace("-", "_")
} else {
Ok(FoundCrate::Itself) => CRATE_NAME.replace("-", "_"),
Ok(FoundCrate::Name(chain_spec_name)) => chain_spec_name,
Err(e) => {
let err = Error::new(Span::call_site(), &e).to_compile_error();
return quote!( #err ).into()
},
@@ -15,7 +15,7 @@ targets = ["x86_64-unknown-linux-gnu"]
proc-macro = true
[dependencies]
proc-macro-crate = "0.1.4"
proc-macro-crate = "1.0.0"
proc-macro2 = "1.0.6"
quote = { version = "1.0.3", features = ["proc-macro"] }
syn = { version = "1.0.58", features = ["proc-macro", "full", "extra-traits", "parsing"] }
+5 -13
View File
@@ -18,7 +18,7 @@
use proc_macro::TokenStream;
use proc_macro2::Span;
use proc_macro_crate::crate_name;
use proc_macro_crate::{crate_name, FoundCrate};
use quote::quote;
use syn::{Error, Expr, Ident, ItemFn};
@@ -118,18 +118,10 @@ pub fn prefix_logs_with(arg: TokenStream, item: TokenStream) -> TokenStream {
let name = syn::parse_macro_input!(arg as Expr);
let crate_name = if std::env::var("CARGO_PKG_NAME")
.expect("cargo env var always there when compiling; qed")
== "sc-tracing"
{
Ident::from(Ident::new("sc_tracing", Span::call_site()))
} else {
let crate_name = match crate_name("sc-tracing") {
Ok(x) => x,
Err(err) => return Error::new(Span::call_site(), err).to_compile_error().into(),
};
Ident::new(&crate_name, Span::call_site())
let crate_name = match crate_name("sc-tracing") {
Ok(FoundCrate::Itself) => Ident::from(Ident::new("sc_tracing", Span::call_site())),
Ok(FoundCrate::Name(crate_name)) => Ident::new(&crate_name, Span::call_site()),
Err(e) => return Error::new(Span::call_site(), e).to_compile_error().into(),
};
let ItemFn {