dfinity / quill

Governance & ledger toolkit for cold wallets
Apache License 2.0
81 stars 29 forks source link

Update dependencies #208

Closed anchpop closed 10 months ago

anchpop commented 10 months ago

Description

This PR is a followup to #207, and fixes #206. It updates many dependencies to their latest versions, including candid and everything that depends on the IC repo.

How Has This Been Tested?

I ran

cargo run --no-default-features -- sns make-proposal "016709e02f2466d9cfafc13fcc549cfb3d59f142c2996d2f18c94a3edbe93570" --proposal '(
    record {
        title = "Mint 41100 ICP to Foo Labs";
        url = "https://sns-examples.com/proposal/42";
        summary = "Mint 411 ICP to Foo Labs";
        action = opt variant {
            MintSnsTokens = record {

                to_principal = opt principal "ozcnp-xcxhg-inakz-sg3bi-nczm3-jhg6y-idt46-cdygl-ebztx-iq4ft-vae";

                to_subaccount = null;

                memo = null;

                amount_e8s = opt 4_110_000_000_000 : opt nat64;
            }
        }
    }
)' --canister-ids-file canister-ids.json > msg.json

Then

❯ cargo run -- send --yes msg.json --insecure-local-dev-mode
    Finished dev [unoptimized + debuginfo] target(s) in 0.61s
     Running `target/debug/quill send --yes msg.json --insecure-local-dev-mode`
Sending message with

  Call type:   update
  Sender:      2vxsx-fae
  Canister id: br5f7-7uaaa-aaaaa-qaaca-cai
  Method name: manage_neuron
  Arguments:   (
  record {
    subaccount = blob "\01\67\09\e0\2f\24\66\d9\cf\af\c1\3f\cc\54\9c\fb\3d\59\f1\42\c2\99\6d\2f\18\c9\4a\3e\db\e9\35\70";
    command = opt variant {
      MakeProposal = record {
        url = "https://sns-examples.com/proposal/42";
        title = "Mint 41100 ICP to Foo Labs";
        action = opt variant {
          MintSnsTokens = record {
            to_principal = opt principal "ozcnp-xcxhg-inakz-sg3bi-nczm3-jhg6y-idt46-cdygl-ebztx-iq4ft-vae";
            to_subaccount = null;
            memo = null;
            amount_e8s = opt (4_110_000_000_000 : nat64);
          }
        };
        summary = "Mint 411 ICP to Foo Labs";
      }
    };
  },
)

Which did not work before.

I didn't do any tests of anything that required build features to be enabled (e.g. ledger nano)

Updating dependencies required updating the rust version, which introduced new clippy lints, which then had to be fixed to get CI to pass (and should be fixed anyway :D ). So much of the changeset is from that.