-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
client: Add async to anchor-client #2488
Conversation
@Aursen is attempting to deploy a commit to the coral-xyz Team on Vercel. A member of the Team first needs to authorize it. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I made the subscription method the same as the blocking version(no need event handler) and subscriptions only return an unsubscribe
function instead of a subscription id(since this is also what solana_client
returns). Let me know what you think!
Before:
let mut event_handler = program.create_event_handler().await?;
let event_id = event_handler.subscribe(...)?;
event_handler.unsubscribe(event_id).await;
After:
let event = program.on(...).await?;
event.unsubscribe().await;
One issue is that there is still too much duplicate code. What do you think we can do about it?
For the duplication, I need to think a bit |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for taking the time to reduce the duplication. I think it looks much better overall, and will be easier to maintain.
Let me know if there are any issues with the other comment.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you, looks great!
commit e1afcbf Author: acheron <98934430+acheroncrypto@users.noreply.github.com> Date: Fri Jun 9 18:00:35 2023 +0200 v0.28.0 (coral-xyz#2527) commit c7c7319 Author: acheron <98934430+acheroncrypto@users.noreply.github.com> Date: Thu Jun 8 18:59:44 2023 +0200 Allow wider range of dependency versions to reduce dependency issues (coral-xyz#2524) commit 6df34e7 Author: acheron <98934430+acheroncrypto@users.noreply.github.com> Date: Wed Jun 7 19:12:56 2023 +0200 Update crate authors and remove outdated registry (coral-xyz#2522) commit 1705d16 Author: Jean Marchand (Exotic Markets) <jeanno11@orange.fr> Date: Wed Jun 7 16:29:23 2023 +0200 docs: Add doc for InitSpace macro (coral-xyz#2521) commit 3d7c97b Author: acheron <98934430+acheroncrypto@users.noreply.github.com> Date: Tue Jun 6 19:28:24 2023 +0200 cli: Accept program lib name for `anchor deploy --program-name` (coral-xyz#2519) commit a88be42 Author: Sergo <rogaldh@radsh.red> Date: Tue Jun 6 14:07:33 2023 +0300 ts: Validate `error.data` exists on simulation response (coral-xyz#2508) commit 65c9d6e Author: Jean Marchand (Exotic Markets) <jeanno11@orange.fr> Date: Tue Jun 6 09:43:46 2023 +0200 client: Add async to anchor-client (coral-xyz#2488) Co-authored-by: acheron <acheroncrypto@gmail.com> commit b8eda69 Author: Deep Mehta <65382963+0xdeepmehta@users.noreply.github.com> Date: Mon Jun 5 22:35:24 2023 +0530 cli: Print not found message if the given program cannot be found during deployment (coral-xyz#2517) commit 1902b8e Author: CanardMandarin <thibault.marboud@gmail.com> Date: Mon Jun 5 14:16:10 2023 +0200 cli: Update programs in `Anchor.toml` when using `anchor new` (coral-xyz#2516) commit 383e440 Author: acheron <98934430+acheroncrypto@users.noreply.github.com> Date: Sun Jun 4 21:02:16 2023 +0200 cli: Initialize with the correct program id (coral-xyz#2509) commit 835dc5b Author: Sarfaraz Nawaz <sir_nawaz959@yahoo.com> Date: Sun Jun 4 23:20:03 2023 +0530 lang: Rename derive_anchor_deserialize -> derive_init_space (coral-xyz#2510) commit 1c6f86e Author: acheron <98934430+acheroncrypto@users.noreply.github.com> Date: Sun Jun 4 13:09:39 2023 +0200 Upgrade Solana to 1.16.0 (coral-xyz#2512) commit 2bf8afe Author: acheron <98934430+acheroncrypto@users.noreply.github.com> Date: Tue May 30 19:50:45 2023 +0200 cli: Use `confirmed` commitment level in commands (coral-xyz#2506) commit 70d9223 Author: acheron <98934430+acheroncrypto@users.noreply.github.com> Date: Sun May 28 22:34:53 2023 +0200 cli: Add `anchor keys sync` command (coral-xyz#2505) commit 0c8498d Author: cavemanloverboy <93507302+cavemanloverboy@users.noreply.github.com> Date: Sat May 27 06:53:02 2023 -0700 cli: Exit `anchor clean` without error when dirs don't exist (coral-xyz#2504) commit 23b90bf Author: Noah Gundotra <ngundotra@users.noreply.github.com> Date: Fri May 26 12:36:46 2023 -0400 Feature: CPI Events API (coral-xyz#2438) Co-authored-by: acheron <acheroncrypto@gmail.com> commit c3625c8 Author: Last Emperor <46998219+lastemp@users.noreply.github.com> Date: Wed May 24 15:05:47 2023 +0300 examples: Add an example with `instruction` method (coral-xyz#2501) Co-authored-by: acheron <acheroncrypto@gmail.com> commit 67eb752 Author: acheron <98934430+acheroncrypto@users.noreply.github.com> Date: Sat May 20 20:34:38 2023 +0200 tests: Fix zero-copy tests (coral-xyz#2498) commit f9d0eca Author: acheron <98934430+acheroncrypto@users.noreply.github.com> Date: Fri May 19 13:18:14 2023 +0200 spl: Update `spl-token-2022` to 0.6.1 (coral-xyz#2496) commit 4793b90 Author: acheron <98934430+acheroncrypto@users.noreply.github.com> Date: Fri May 19 10:58:16 2023 +0200 Fix `toml_datetime` 1.64.0 MSRV error (coral-xyz#2495) commit 41a4d82 Author: chalda <chalda@seznam.cz> Date: Thu May 18 19:12:25 2023 +0200 cli: Add print base64 instruction option for some of the IDL commands (coral-xyz#2486) Co-authored-by: acheron <acheroncrypto@gmail.com> commit b7bada1 Author: Pierre <Arrowana@users.noreply.github.com> Date: Tue May 16 23:46:40 2023 +1000 fix: remove skip preflight from cli (coral-xyz#2492) --------- Co-authored-by: acheron <acheroncrypto@gmail.com> commit 89e94d1 Author: Ryan De La O <rdelao@users.noreply.github.com> Date: Sat May 13 02:17:47 2023 -0700 cli: Fix incorrect metadata.address generation (coral-xyz#2485) Currently when running 'anchor deploy --program-name <name> --program-keypair <specified keypair>' the cli still uses the auto-generated keypair when fetching the program id to add to the IDL metadata at the end. It should instead use the address from the specified keypair. --------- Co-authored-by: acheron <acheroncrypto@gmail.com> commit 714d524 Author: CanardMandarin <thibault.marboud@gmail.com> Date: Tue May 9 16:17:11 2023 +0200 lang: Add error message when Mint and TokenAccount with `init` are not ordered correctly (coral-xyz#2484) commit 9a93a2e Author: James <juicy66173@gmail.com> Date: Mon May 8 10:17:51 2023 +0100 ts: Improve IDL typing (coral-xyz#2482) * Use XOR pattern for enum variants to prevent two variants being used at the same time. * Fix unknown for types like Option<[u8; 32]> commit d1ddf00 Author: CanardMandarin <thibault.marboud@gmail.com> Date: Sun May 7 11:03:37 2023 +0200 lang: Fix incorrectly checking the first init constraint (coral-xyz#2483)
Co-authored-by: acheron <acheroncrypto@gmail.com>
Co-authored-by: acheron <acheroncrypto@gmail.com>
Any example of rust code using an async client? |
Here is an example https://github.com/coral-xyz/anchor/blob/master/client/example/src/nonblocking.rs |
Thanks! |
No description provided.