Skip to content
This repository has been archived by the owner on Sep 30, 2021. It is now read-only.

Update quote requirement from 0.6 to 1.0 #4

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

dependabot-preview[bot]
Copy link
Contributor

@dependabot-preview dependabot-preview bot commented Aug 14, 2019

⚠️ Dependabot Preview has been deactivated ⚠️

This pull request was created by Dependabot Preview, and you've upgraded to Dependabot. This means it won't respond to dependabot commands nor will it be automatically closed if a new version is found.

If you close this pull request, Dependabot will re-create it the next time it checks for updates and everything will work as expected.


Updates the requirements on quote to permit the latest version.

Release notes

Sourced from quote's releases.

1.0.0

This release fixes some longstanding limitations of the quote! macro, bringing quote better in line with the patterns that macro authors are used to from working with macro_rules.


Duplicate interpolations in a repetition

In past versions of quote, interpolating the same variable multiple times inside of one repeating block was not allowed.

For example if we had an iterator of local variable names and wanted the generated code to do a clone of each one, that wouldn't compile:

error[E0416]: identifier `var` is bound more than once in the same pattern
 --> src/main.rs:7:27
  |
7 |         #( let #var = #var.clone(); )*
  |                        ^^^ used in a pattern more than once

Macros usually worked around this by having the same sequence of interpolated values named two different things:

// old workaround 1
let var = input.fields.iter().map(|field| &field.ident);
let var2 = var.clone();

quote! {
    #( let #var = #var2.clone(); )*
}

or by giving up on repetitions and doing more of the work within the iterator chain:

// old workaround 2
let var_clones = input
    .fields
    .iter()
    .map(|field| {
        let var = &field.ident;
        quote! {
            let #var = #var.clone();
        }
    });

quote! {
    #(#var_clones)*
}
... (truncated)
Commits

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.

Dependabot will not automatically merge this PR because this dependency is pre-1.0.0.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
  • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
  • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
  • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language
  • @dependabot badge me will comment on this PR with code to add a "Dependabot enabled" badge to your readme

Additionally, you can set the following in your Dependabot dashboard:

  • Update frequency (including time of day and day of week)
  • Automerge options (never/patch/minor, and dev/runtime dependencies)
  • Pull request limits (per update run and/or open at any time)
  • Out-of-range updates (receive only lockfile updates, if desired)
  • Security updates (receive only security updates, if desired)

Finally, you can contact us by mentioning @dependabot.

Updates the requirements on [quote](https://github.com/dtolnay/quote) to permit the latest version.
- [Release notes](https://github.com/dtolnay/quote/releases)
- [Commits](dtolnay/quote@0.6.0...1.0.0)

Signed-off-by: dependabot-preview[bot] <[email protected]>
@dependabot-preview dependabot-preview bot added the dependencies Pull requests that update a dependency file label Aug 14, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants