-
Notifications
You must be signed in to change notification settings - Fork 69
Add SendableTransaction
type
#482
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
base: 05-06-make_fullysignedtransaction_composable
Are you sure you want to change the base?
Add SendableTransaction
type
#482
Conversation
🦋 Changeset detectedLatest commit: ec1907d The changes in this PR will be included in the next version bump. This PR includes changesets to release 40 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
This stack of pull requests is managed by Graphite. Learn more about stacking. |
BundleMonFiles updated (7)
Unchanged files (120)
Total files change +85B +0.02% Final result: ✅ View report in BundleMon website ➡️ |
Documentation Preview: https://kit-docs-5nkxpp0xj-anza-tech.vercel.app |
56e29d2
to
9c23a11
Compare
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.
Absolutely not important, but I wonder if we can do better than ‘sendable,’ mostly because everything is sendable. I can send whatever junk I want to the network. Whether it's *****able by the network or not is the question this name tries to answer.
- Processable?
- Landable?
- Executable?
- Acceptable?
- Ingestible?
- Admissible?
- Comittable?
b433163
to
aee8ba5
Compare
9c23a11
to
5431523
Compare
aee8ba5
to
8049329
Compare
5431523
to
2725d93
Compare
@steveluscher I thought about this for a while and perhaps something like |
8049329
to
f0467c6
Compare
2725d93
to
6e3e968
Compare
f0467c6
to
f5461ca
Compare
6e3e968
to
33b6f6b
Compare
33b6f6b
to
b1d71bd
Compare
f5461ca
to
811b8db
Compare
811b8db
to
b9ae938
Compare
b1d71bd
to
8a5802f
Compare
b9ae938
to
d6e404c
Compare
57cfad3
to
a8f2ba0
Compare
18f6e43
to
f796886
Compare
a8f2ba0
to
356d914
Compare
8c3b97e
to
8042266
Compare
356d914
to
0f9c310
Compare
0f9c310
to
ec1907d
Compare
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.
Looks good!
This type represents a transaction that has all the required conditions to be sent to the network. Namely: | ||
|
||
- It must be fully signed (ie. conform to `FullySignedTransaction`) | ||
- It must be within size limit (ie. conform to `TransactionWithSizeLimit`) |
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.
Should TransactionWithSizeLimit
have a section in the readme too?
TransactionWithinSizeLimit satisfies SendableTransaction; | ||
} | ||
|
||
// It does not satify Transaction alone. |
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.
// It does not satify Transaction alone. | |
// It is not satisfied by Transaction alone. |
I think this is a clearer way to word the relationship here
null as unknown as Transaction satisfies SendableTransaction; | ||
} | ||
|
||
// It does not satify Transaction with missing required conditions. |
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.
// It does not satify Transaction with missing required conditions. | |
// It is not satisfied by Transaction with missing required conditions. |
Since we now have more than one condition for a transaction to be sendable — i.e.
FullySignedTransaction
andTransactionWithinSizeLimit
— this PR introduces a new umbrella type calledSendableTransaction
that contains all the type "flags" required for a transaction be sent to the network.