Commit Graph

187 Commits

Author SHA1 Message Date
Derrick Hammer d73bb04a3d
*RPCMethod handler type needs to return a promise 2022-08-26 22:21:21 -04:00
Derrick Hammer c2dfe1f162
*Rename PluginAPI to PluginApiManager
*Rename RelayPluginAPI to PluginAPI
2022-08-26 22:14:02 -04:00
Derrick Hammer ba20b1f36e
*Dont put api methods in an api namespace 2022-08-26 22:12:13 -04:00
Derrick Hammer 48a5928256
*Super refactor for the beginning of a new rpc server, changed protocol and simple plugin system
*Remove all rpc methods to prepare them for becoming plugins
2022-08-26 21:52:19 -04:00
Derrick Hammer a0cab03073
*Remove local pokt node support while waiting on pokt v1 2022-08-24 13:05:38 -04:00
Derrick Hammer 61a0991bcd
*Use @lumeweb/pokt-rpc-endpoints 2022-08-24 11:15:07 -04:00
Derrick Hammer f89a8e93a4
*reorder logic to boot up the relay server only after the SSL is ready 2022-08-24 11:10:50 -04:00
Derrick Hammer 573ebec0a4
*Don't retry on boot, but catch any retry failures 2022-08-22 12:39:09 -04:00
Derrick Hammer 7f135c80b1
*Use promise-retry to make a best effort attempt at downloading the ssl cert and key in-case we have portal rate limits or downtime 2022-08-22 12:22:54 -04:00
Derrick Hammer 1a9f08cbba
*Add error to RPCResponse, dont put inside data 2022-08-22 11:45:51 -04:00
Derrick Hammer b37b3052ec
*Update force to bypassCache 2022-08-18 19:29:06 -04:00
Derrick Hammer 8c16ad5469
*Change pokt sol-mainnet to solana-mainnet 2022-08-18 19:28:49 -04:00
Derrick Hammer 00492de90c
*Add status code server to be used for extension proxy 2022-08-14 06:37:00 -04:00
Derrick Hammer 62409ac6d3
*Refactor IPFS to use an external IPFS node 2022-08-14 06:33:23 -04:00
Derrick Hammer f6a58ad4b6
*heavy simplification to not use in memory stores and use default on-disk repo 2022-08-06 10:10:02 -04:00
Derrick Hammer 8510c96cad
*Remove unused functions 2022-08-05 20:06:08 -04:00
Derrick Hammer 927efddfed
*Add size property to normal files 2022-08-05 20:04:57 -04:00
Derrick Hammer a58f7fec4e
*Remove slice 2022-08-05 09:55:24 -04:00
Derrick Hammer 80c48b3a1c
*Return error if hash is a directory since we don't want to download it all 2022-08-05 09:54:39 -04:00
Derrick Hammer 33fa36411b
*Handle base36 ipns keys 2022-08-05 07:50:19 -04:00
Derrick Hammer ffd3eec605
*Trim extra forward slashes 2022-08-05 02:40:55 -04:00
Derrick Hammer f22c4dd847
*Use validateChain 2022-08-05 02:39:40 -04:00
Derrick Hammer d3e234c7b7
*Make files array an object with name and size 2022-08-05 02:16:21 -04:00
Derrick Hammer 05c4fc40d9
*Use context var, not hns string 2022-08-05 02:15:32 -04:00
Derrick Hammer 50051076d9
Exit on SIGINT or SIGTERM 2022-08-05 00:06:31 -04:00
Derrick Hammer 1fd1c932ca
*Set context to RpcContext and ass type asserts 2022-08-05 00:01:03 -04:00
Derrick Hammer c95917f789
*Add get_methods to the misc chain 2022-08-05 00:00:29 -04:00
Derrick Hammer ec649d2d93
*add validateChain higher order function for RPC validation 2022-08-04 23:56:11 -04:00
Derrick Hammer 383ec64692
*Update rpc method list 2022-08-04 23:45:09 -04:00
Derrick Hammer c90d207b7c
*Add first version of the ipfs rpc methods 2022-08-04 23:44:50 -04:00
Derrick Hammer 44e1366856
*Refactor RPCConnection::processRequest to handle and process streams 2022-08-04 23:43:02 -04:00
Derrick Hammer 26e12d19a4
*Add a streams api for use with rpc 2022-08-04 23:41:40 -04:00
Derrick Hammer e0b91b02c0
*add a misc group of rpc functions starting with ping 2022-08-04 23:40:30 -04:00
Derrick Hammer 3c5b04893f
*Use ERR_INVALID_CHAIN 2022-08-04 23:39:08 -04:00
Derrick Hammer 65b02ea1f3
*Add error constants 2022-08-04 23:38:44 -04:00
Derrick Hammer 8b17fbf3d2
*Add rpcError helper method and change all rpc error handling to the function and use error constants 2022-08-04 23:38:30 -04:00
Derrick Hammer a36735a356
*SslData type not needed 2022-08-04 23:35:23 -04:00
Derrick Hammer 01a32d8734
*refactor to use dynamic imports for ESM modules and do so via a helper that bypasses typescript parsing. 2022-08-04 23:34:18 -04:00
Derrick Hammer 5a17b6befd *Remove all requires
*Switch to commonjs target
2022-08-03 02:02:40 -04:00
Derrick Hammer 451f646fb2 *Delete current-round property from response if it exists as it causes problems with deterministic processing 2022-08-01 00:06:47 -04:00
Derrick Hammer d3a90c7714 *Better catch rpc node errors and ensure they are passed through properly to the client 2022-07-25 23:09:26 -04:00
Derrick Hammer 9a9a888bcb *use app over api for pocket API keys 2022-07-25 22:38:44 -04:00
Derrick Hammer 84c00acdcf *Fix log information 2022-07-25 20:48:06 -04:00
Derrick Hammer b5a9a3b00d *Access port as uint 2022-07-25 20:35:21 -04:00
Derrick Hammer b6089446b8 *Fix port config option name 2022-07-25 20:18:31 -04:00
Derrick Hammer 79139fa980 *Only load ssl in setup if it is the bootup process 2022-07-25 03:05:38 -04:00
Derrick Hammer fca5d8b0a6 *Add missing boot call
*Remove module export
2022-07-25 02:50:27 -04:00
Derrick Hammer 5cc06d62c5 *Use loglevel 2022-07-25 02:45:16 -04:00
Derrick Hammer 98050b90b0 *WIP: minor refactor and build process to create application binaries 2022-07-24 22:36:49 -04:00
Derrick Hammer 0713216cd3 *Restructure to transpile to commonjs since vercel pkg does not support ESM 2022-07-23 23:16:34 -04:00
Derrick Hammer 755b760f94 *Use log library 2022-07-23 20:29:46 -04:00
Derrick Hammer 9b59415463 *Add dedicated logging library 2022-07-23 20:24:19 -04:00
Derrick Hammer 46fdc78082 *Refactor RPCConnection to fix design issues 2022-07-23 02:49:54 -04:00
Derrick Hammer 830aa19a4f *Skip cache update if error is ERR_NOT_READY 2022-07-23 02:49:02 -04:00
Derrick Hammer a4ddcdf518 *Refactor to start the dns up only after the ssl and server instances are ready so we don't announce ourselves on the registry pre-maturely 2022-07-23 02:48:02 -04:00
Derrick Hammer 8d7db21184 *Fix missing update to sslCtx for setting SSL 2022-07-23 02:46:33 -04:00
Derrick Hammer b01ea298b7 *Return ERR_NOT_READY rejection error if chain is not synced yet 2022-07-23 02:45:50 -04:00
Derrick Hammer b640084920 *Add xor on staging mode and the letsencrypt cert to reprocess if we are live with a staging cert or on staging mode with a live cert. 2022-07-22 21:10:14 -04:00
Derrick Hammer e44a87e379 *Add method to check if we are in staging mode for ssl 2022-07-22 21:09:06 -04:00
Derrick Hammer ea4a993182 *Refactor RPC connection to its own class 2022-07-22 20:58:32 -04:00
Derrick Hammer a9f5b4d2c8 *add typecast 2022-07-22 20:57:53 -04:00
Derrick Hammer e0c0ee3f83 *Move errorExit to dedicated file
*Add ERR_NOT_READY constant which will represent a chain not ready
2022-07-22 20:57:12 -04:00
Derrick Hammer 023b1387fc *Remove debug line 2022-07-22 20:28:13 -04:00
Derrick Hammer f5d00640cc *Setup os specific config locations 2022-07-22 20:27:54 -04:00
Derrick Hammer dc5996957e *Change the communication protocol to require a rpc text "command" before attempting to read as a second listener 2022-07-22 19:58:28 -04:00
Derrick Hammer 76a3010ae6 *Remove relay prefix from settings 2022-07-22 19:55:09 -04:00
Derrick Hammer 88dc104102 *Refactor SSL support to store to skynet as independent files
*Introduce ssl-mode config option to use staging letsencrypt
2022-07-22 19:53:11 -04:00
Derrick Hammer 330866c1e8 *dependency updates 2022-07-22 19:51:11 -04:00
Derrick Hammer 693081c740 *Move hashDataKey to a dedicated utility package 2022-07-22 19:50:15 -04:00
Derrick Hammer 20e9511eae *Reformat 2022-07-19 18:31:15 -04:00
Derrick Hammer 070b7825e2 *Refactoring
*Reformat
*Fix hsd node bootup
2022-07-19 18:24:53 -04:00
Derrick Hammer ff7ebb0984 *hard code maintain email again 2022-07-05 16:32:26 -04:00
Derrick Hammer 6ad101d71e *Fix import 2022-07-05 16:28:23 -04:00
Derrick Hammer e5ac39cb6c *add error checking for pocket settings 2022-07-05 16:27:39 -04:00
Derrick Hammer dc647f169e *createRequire needed again 2022-07-05 16:22:41 -04:00
Derrick Hammer ab6ee0f1a7 *createRequire needed again 2022-07-05 16:21:49 -04:00
Derrick Hammer 56ee75ffca *Add type import assert 2022-07-05 16:19:59 -04:00
Derrick Hammer 7c13ab7f3f *refactor loading networks.json 2022-07-05 16:14:39 -04:00
Derrick Hammer 81834bb41b *import pocket as a commonjs 2022-07-05 15:54:57 -04:00
Derrick Hammer f5416a2a75 *Store ssl config in config folder 2022-07-05 15:05:31 -04:00
Derrick Hammer e6d8decd07 *switch to using bcfg 2022-07-05 15:02:07 -04:00
Derrick Hammer 6103edf4a4 *Optimize SPVNode config 2022-07-05 14:09:50 -04:00
Derrick Hammer 8f74b249da *Add an embedded handshake node for simplicity 2022-07-04 20:30:10 -04:00
Derrick Hammer 8d95dde848 *Initial merge of rpcproxy 2022-07-04 19:17:58 -04:00
Derrick Hammer 660bb85203 *Switch to using a dynamic dns domain
*Add letsencrypt support
*Add afraid.org support
*Refactor env error checking
*Add dynamic ip polling and updating
2022-07-04 17:27:46 -04:00
Derrick Hammer c89eb93857 *Fix dht key and use constant 2022-06-27 17:52:20 -04:00
Derrick Hammer c8d422f1c9 *Initial version 2022-06-27 13:53:00 -04:00