dfinity / interface-spec

IC Interface Specification
https://khsfq-wqaaa-aaaak-qckvq-cai.icp0.io/docs
37 stars 20 forks source link

specify composite queries #144

Closed mraszyk closed 1 year ago

mraszyk commented 1 year ago

This PR introduces a new public entry point of canisters: composite queries.

netlify[bot] commented 1 year ago

Deploy Preview for ic-interface-spec ready!

Name Link
Latest commit 668e9c926054719b79744fc321e498f60a34dcc2
Latest deploy log https://app.netlify.com/sites/ic-interface-spec/deploys/64ad6601a132bf0008e47bb7
Deploy Preview https://deploy-preview-144--ic-interface-spec.netlify.app
Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

nomeata commented 1 year ago

Not sure if this is on the agenda already, but since the caller needs to know whether a method is a query or a composite query method (makes a difference when doing a call from an update method), this requires extending candid to include that information in the interface, in https://github.com/dfinity/candid/blob/master/spec/Candid.md#structure-1, extending

<funcann>  ::= oneway | query

(Pinging @chenyan-dfinity, @rossberg and @crusso.)

Or do you plan to just ignore this issue and support update → compquery soon enough (so that query vs. compquery becomes an implementation detail not visible to the caller, as arguably it should)?

mraszyk commented 1 year ago

Or do you plan to just ignore this issue and support update → compquery soon enough (so that query vs. compquery becomes an implementation detail not visible to the caller, as arguably it should)?

Very good point! @nomeata Replicated execution of composite query methods is not gonna be available any time soon to the best of my knowledge.

Dfinity-Bjoern commented 1 year ago

As discussed in interface spec meeting: we should resolve the open issues and comments and then it's ready to go in.