by Satinder Grewal | back
a little update:
Since I’m doing gRPC, I see that my existing RPC API is pretty much as is being ported to gRPC, since all the logic code is written in the existing API.
and gRPC is too easy to define and work as I learned and practicing now.
But I found there is some pointer error which is thrown if any single coin’s RPC Is busy while other coins’ RPC is responding.
For example if KMD is doing
importprivkey command and busy doing the rescan, and all other coins like PIRATE, DEX, MCL etc are responding, my gRPC code throws that pointer error and ends the process.
I tried to solve that, but feels lacking in my debugging skills with
dlv which is similar to
will try to solve that sooner or later coz it’s kind of critical bug to fix.
Right now, I’m checking on FFI ( foreign function interface) so that I can compile my gRPC code to a library and call it’s functions/methods/variables etc from Dart Language.
looking at latest developments happening in Flutter, at the moment, it’s Desktop rendering engine is experimental, but really hoping that by the end of 2020, or early 2021, this Desktop Rendering engine will be mature enough to be out in public use with some level of stability.
I’d prefer to use the official Desktop Rendering engine instead of going the unofficial Hover Go, the Flutter’s unofficial Desktop rendering engine
It’s known that Flutter’s official Desktop rendering engine is good enough state for Linux, and is in development for Mac and Windows. I need to check on it’s latest development updates.
But as I suspect since Apple is now moving to Apple’s own Silicon Chips, I suspect it won’t take long enough for Flutter team to support Mac with full support for Desktops too
that means new Mac machines will have full support of official Desktop app rendering engines
since Flutter is already stable and supported on mobile devices, and Apple Silicon will be on same chipset/framework for desktops
feeling like I’m playing with a lot and lots of new technologies in their development state 😅
so, using FFI, and calling Golang library from Dart, I’ll be able to execute the gRPC on the device itself where the application will run.
and since on iOS it is not supported to bundle an executable on iOS Apps, using FFI is the only route as I understand, so being already future ready with the code architecture
so, this Dart code of Flutter will always invoke the main function from Golang library code to start gRPC server and Dart will act as a client, where the purpose of golang’s gRPC server will be interact with Native coins’ RPC or nSPV or Electrum or etc etc.
Kind clearing my mind to a debugging duck here if anyone reads 😅