Engine/EngineBreakfast/Log_20200616

  • messageToSend() callback should support encFormat
    • make a ticket (fdik)
  • passphrase support
    • FPMAIL-335
    • Heck makes respective tickets for ALL adapters
    • Heck implements in ALL adapters (in collab with the current adapter maintainers)
      • Joerg - COM
      • Roker - JSON
      • Dirk - ObjC
    • Heck implements passphrase-cache in libpEpAdapter
      • In memory only
      • One cache for all sessions
      • Thread safe (semaphore) Locked on write / parallel reads
      • Configurable cache entry timeout (platform headers engine for time types)
      • Lazy invalidation (invalidate on read)
  • desktop adapters
    • All desktop adapters must:
      • Expose the pEp API through their native IPC method
      • Expose the pEp API through JSON-RPC (pEpJSONServerAdapter)
      • Provide automatic self-update through the platform native way of doing this, OR do have an own implementation (downloadclient)
    • COM server adapter (Windows desktop adapter)
      • Provides pEp API through COM
      • Joerg has the JSONServerAdapter built in
      • Needs downloadclient built in.
    • macOS desktop adapter
      • Will contain the Objective-C adapter and expose his API through XPC (???)
      • Needs pEpJSONSServerAdapter built in
      • needs downloadclient built in
    • Freedesktop.org adapter
      • GNU/Linux deployment to be clarified/evaluated
      • Native IPC will be dbus most likely
      • Needs pEpJSONServerAdapter built in
  • adapter testing
    • Reto will join heck for writing adapter tests

    • Heck will introduce and mentor Reto (starting this week)

    • Reto starts with fundamental DEV setup
      • Setup MacOS DEV system
      • Setup Debian DEV system (e.g virtualBox)
      • Build on Mac and Linux
        • pEpJNIAdapter
        • pEpPythonAdapter
      • Use/verify/improve Adapter_Build_Instructions
    • pEpJNIAdapter testing
      • Reto will learn how to use the pEpJNIAdapter test framework
      • Reto/Heck will write use-case scenarios
    • pEpPythonAdapter testing
      • Heck will integrate pyTest into pEpPythonAdpater
      • Reto/Heck will write use-case scenarios
    • Use python to write tests for ALL adapters (Future plans)
      • Allows to use the SAME tests for all adapters
      • Every adapter will get pythonBindings
        • pEpPythonAdapter - native
        • pEpJNIAdapter - Jython
        • pEpCOMServerAdapter - COM module (???)
        • pEpJSONServerAdapter - JSON-RPC module
        • pEpObjectiveCAdapter - (C-ABI somehow ???)
        • XPC ???
        • DBUS ???
      • All of these Bindings will be generated
  • python adapter
    • PYADPT-75 clarified with Volker, see ticket.
  • Minor
    • pEp message formats and MIME
    • KeySync FSM open questions