-
Notifications
You must be signed in to change notification settings - Fork 195
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
Fabric plugin #184
Fabric plugin #184
Conversation
Codecov Report
@@ Coverage Diff @@
## main #184 +/- ##
===========================================
- Coverage 100.00% 99.79% -0.21%
===========================================
Files 199 201 +2
Lines 10859 11141 +282
===========================================
+ Hits 10859 11118 +259
- Misses 0 17 +17
- Partials 0 6 +6
Continue to review full report at Codecov.
|
0d0cdae
to
32cbe5f
Compare
Codecov Report
@@ Coverage Diff @@
## main #184 +/- ##
===========================================
- Coverage 100.00% 99.53% -0.47%
===========================================
Files 214 217 +3
Lines 11820 12181 +361
===========================================
+ Hits 11820 12124 +304
- Misses 0 42 +42
- Partials 0 15 +15
Continue to review full report at Codecov.
|
0a27087
to
b587a50
Compare
Signed-off-by: Jim Zhang <jim.zhang@kaleido.io>
Signed-off-by: Jim Zhang <jim.zhang@kaleido.io>
Signed-off-by: Jim Zhang <jim.zhang@kaleido.io>
Signed-off-by: Nicko Guyer <nicko.guyer@kaleido.io>
Signed-off-by: Jim Zhang <jim.zhang@kaleido.io>
Signed-off-by: Jim Zhang <jim.zhang@kaleido.io>
Signed-off-by: Jim Zhang <jim.zhang@kaleido.io>
Signed-off-by: Nicko Guyer <nicko.guyer@kaleido.io>
Signed-off-by: Jim Zhang <jim.zhang@kaleido.io>
Signed-off-by: Jim Zhang <jim.zhang@kaleido.io>
Signed-off-by: Jim Zhang <jim.zhang@kaleido.io>
Signed-off-by: Jim Zhang <jim.zhang@kaleido.io>
Signed-off-by: Jim Zhang <jim.zhang@kaleido.io>
Signed-off-by: Jim Zhang <jim.zhang@kaleido.io>
Signed-off-by: Jim Zhang <jim.zhang@kaleido.io>
Signed-off-by: Nicko Guyer <nicko.guyer@kaleido.io>
Signed-off-by: Jim Zhang <jim.zhang@kaleido.io>
Signed-off-by: Jim Zhang <jim.zhang@kaleido.io>
Signed-off-by: Jim Zhang <jim.zhang@kaleido.io>
b587a50
to
71a6a03
Compare
Signed-off-by: Jim Zhang <jim.zhang@kaleido.io>
71a6a03
to
6cc5007
Compare
Why are there solidity files in this PR? Was that from files moving around, and maybe things got duplicated? |
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.
A couple of questions, but otherwise looks good to me
Contexts: hashes, | ||
} | ||
input := newTxInput(pinInput) | ||
res, err := f.invokeContractMethod(ctx, f.defaultChannel, f.chaincode, signingKey, operationID.String(), input, tx) |
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 this always be using f.defaultChannel
? Or is the plan to revisit this once the concept of multiple ledgers is built out in FireFly?
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.
correct, support for the ledger
construct needs to be worked on in the future. I believe there are some work related to tokens to allow one ledger to be used for messages and another ledger for tokens, that @awrichar may be getting to soon. That should help teasing out the proper support for ledgers in FireFly, at which point we should consider adding the proper channel support in the Fabric plugin.
At the moment, since there's only a single ledger in FireFly, it'll always be mapped to the default channel in the Fabric plugin.
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.
Maybe I can attempt to clarify the difference between plugins
, ledgers
, and ordering contexts
. With regards to plugins, we make no assumptions about any of them sharing a particular chain or contract - so the plugins for blockchain-pinned messages and for tokens are treated separately and can be some combination (such as messaging on Fabric and tokens on Ethereum ERC1155). This also implies that the ordering contexts for token events and messaging events are separate (but related), and the implications of that are still being sorted on #245.
Ledgers are a further grouping of visibility within a particular blockchain plugin (basically corresponding to channels on Fabric). Currently there is no support for ledgers in the token plugin.
thanks for catching that, must have been my mishandling during rebase, will remove that in a commit |
Signed-off-by: Jim Zhang <jim.zhang@kaleido.io>
The plugin provides:
BatchPin
transactions and events supportuser1
to the fully expanded form that is consistent to the representation used by the FireFly Chaincode such asmyMSP::x509::CN=user1,OU=client::CN=fabric-ca-server
. The conversion is based on the local MSP configurations of the downstream fabconnect microserviceWhat About Tokens?
Tokens support for a Fabric based token contract implementation will be added in a future PR. This will need some careful planning and hopefully soliciting a wide range of opinions from the community in order to first determine:
Unlike the tokens specs and implementations in the Ethereum ecosystem, which has high quality libraries like OpenZepplin that captures contract implementations already proven in the mainnet deployments, the Fabric ecosystem has not yet produced clear standards or proven implementations.