g-ace icon indicating copy to clipboard operation
g-ace copied to clipboard

Refactor commands library

Open wyozi opened this issue 9 years ago • 0 comments

  • Parsing arguments should use a promise; eg paths can't be validated without them
  • Avoid using register command and a million callback_ prefix functions
  • IPC should be first class aka not implemented using hooks but core code
  • Arguments should map directly into a netmsg schema for transparent optimization
  • Avoid ambiguous argument flags, such as take_rest (sometimes it needs to be used for more parameters than just the last one)
  • Should server and clientside functions go through different validation pipeline (clientside input needs to be always validated, but should serverside input be validated as rigurously?)
  • IPC should not be a string parameter. Netmsg id/name should automatically be derived from command id
  • Clear distinction between server and client commands! Should it even be possible for clients to be purely clientside?
  • Testability! It should be possible to test each part of IPC pipeline independently

wyozi avatar Feb 06 '15 18:02 wyozi