-
Notifications
You must be signed in to change notification settings - Fork 3
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
feat: add macros for shared interfaces #105
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #105 +/- ##
==========================================
+ Coverage 93.74% 95.26% +1.52%
==========================================
Files 47 48 +1
Lines 3053 3083 +30
==========================================
+ Hits 2862 2937 +75
+ Misses 191 146 -45 ☔ View full report in Codecov by Sentry. |
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 do like the approach, but a few notes:
- I'd prefer if contracts don't have to depend directly on the derive crate, instead have an indirect import (potentially with feature flag "derive") in the axelar-soroban-sdk. See the amplifier repo for how to do that
- remove the leading
::
in paths, it makes the code much more brittle, like with goldie, and you have to define the import at the root level, it won't look at the local relative context - you only showed the trivial migration data example, how does it work with more complex data?
- Are you sure that the contract proc macro actually picks up on the generated code and creates entrypoints for it?
The Rust doc recommended the |
Yeah, forgot about that. Refactored |
AXE-6852
Shared interfaces can now be implemented via derive macros: