-
Notifications
You must be signed in to change notification settings - Fork 8
Description
I've been evaluating this SDK (as a replacement of Polkadot SDK) to use on Apillon project and I like the benefits this SDK brings but I've noticed that it isn't compatible with most of the parachain SDKs, mostly due to the fact that all SDKs rely on Polkadot SDK (either they use it under the hood or require ApiPromise to be injected).
Here is an example of using Phala SDK and concrete issue where variable api has invalid type (DedotClient) passed to Phalas OnChainRegistry:
import { DedotClient, LegacyClient, WsProvider } from 'dedot';
import { OnChainRegistry} from '@phala/sdk';
const api = await DedotClient.new(new WsProvider(this.rpcEndpoint));
const registry = await OnChainRegistry.create(api, {
strategy: periodicityChecker(),
});
Most if not all SDKs all suffer from tight Polkadot SDK coupling with them that's why I wanted to open an issue to see what are other people thoughts on this issue. I know solution is not trivial since each of SDKs would have to support this SDK or at least use compatible interface. I'm afraid this issue will prevent adoption of this SDK since it's only compatible with generic substrate side but not with specialized parachain side.
Is it reasonable to expect that parachains will ever be compatible with different API clients?