Skip to content
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

Factor out RPC from Polykey #8

Merged
merged 3 commits into from
Sep 26, 2023
Merged

Factor out RPC from Polykey #8

merged 3 commits into from
Sep 26, 2023

Commits on Sep 7, 2023

  1. ci: updated to node 20

    WIPO
    
    Adding matrix packages to package.json
    
    WIP
    
    Changing dir
    
    WIP
    * Errors added new error type and sig dec for RPCServer
    
    RPCServer rewritten without PK dependency.
    
    * New utils with isObj and promise methods implemented
    
    middleware import fix
    
    WIP
    
    * Apparently fixing RPCServer.ts fixed all of import issues of RPCClient.ts as well, and client has no PK related imports now, so its fixed? #COPE
    
    WIP
    
    cping tests from pk to js-rpc
    
    experimental Decorators and changing logger version
    
    experimental Decorators and changing logger version
    
    sleep in utils.ts
    
    WIP
    
    Test resolve
    
    wip
    
    wip
    CMCDragonkai authored and addievo committed Sep 7, 2023
    Configuration menu
    Copy the full SHA
    c162788 View commit details
    Browse the repository at this point in the history

Commits on Sep 26, 2023

  1. Works as a standalone library now. Pending review to merge to staging.

    callers and handlers are now refactored
    
    * WIP - Newline now works, refers issue #1
    
    node v20 fix
    
    feat: handlers implementations are now abstract arrow functions
    
    * Fixes #5
    
    [ci skip]
    
    * resolves issue 5, makes RPC handlers abstract arrow function properties
    
    feat: rename to uppercase
    
    [ci skip]
    
    fix: handler export fix
    
    [ci skip]
    
    fix: tsconf from quic
    
    [ci skip]
    
    fix: dependencies (js quic), events and errors versions, changing to relative imports, jest dev dependency, js-quic tsconfig
    
    [ci skip]
    
    fix: tests imports, using @
    
    [ci skip]
    
    chore: removed sysexits
    
    chore: fix default exports for callers and handlers
    Fixed index for handlers
    
    fix: remove @matrixai/id
    
    fix: remove @matrixai/id and ix
    
    chore : diagram
    
    [ci skip]
    
    chore : lintfix
    fix: errors now extend AbstractError
    
    [ci skip]
    
    fix: undoing fix #1
    
    [ci skip]
    
    replacd errorCode with just code, references std error codes from rpc spec
    
    feat: events based createDestroy
    
    [ci skip]
    
    chore: img format fix
    
    [ci skip]
    
    chore: img in README.md
    
    [ci skip]
    
    feat: allows the user to pass in a generator function if the user wishes to specify a particular id
    
    [ci skip]
    
    fix: fixes #7
    
    * Removes graceTimer and related jests
    
    chore: idGen name change. idGen parameter in creation and constructor. No longer optional. Only defaulted in one place.
    
    wip: added idgen to jests, was missing.
    
    [ci skip]
    
    wip: reimported ix, since a few tests rely on it.
    removed, matrixai/id
    
    wip: jests for #4
    removed, matrixai/id
    
    wip: * Implements custom RPC Error codes.
         * Fixed jest for concurrent timeouts
         * All errors now have a cause
         * All errors now use custom error codes.
    
    wip: *Client uses ctx timer now
    
    wip: *Jests to test concurrency
    
    wip: *custom RPC based errors for RPC Client, now all errors have a cause and an error message
    
    WIP: * Refactor out sensitiveReplacer
    
    WIP: * Refactor out sensitiveReplacer
    
    WIP: * Update to latest async init and events
    * set default timeout to Infinity
    * jest to check server and client with infinite timeout
    * fixing jests which broke after changing default timeout to infinity
    
    WIP: f1x #4
    
    WIP: f1x #11
    
    f1x: parameterize toError, fromError and replacer
    
    wip: tofrom
    
    fix: parameterize toError, fromError and replacer
    
    fix: Makes concurrent jests non deterministic
    
    * Related #4
    
    fix: parameterize replacer toError and fromError, change fromError to return JSONValue, stringify fromError usages
    
    * Related #10
    
    fix: Converted global state for fromError to handle it internally.
    
    *Related: #10
    Reviewed-by: @tegefaulkes
    [ci skip]
    
    chore: Jests for fromError and toError, and using a custom replacer.
    
    related: #10
    
    [ci skip]
    addievo committed Sep 26, 2023
    Configuration menu
    Copy the full SHA
    f30da25 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    39b046a View commit details
    Browse the repository at this point in the history