Skip to content
  • wilkie's avatar
    Adds EnvironmentMap/Target resolution and the Daemon. · 6493c73f
    wilkie authored
    The OCCAM Daemon allows commands to be executed via sending messages to
    a local socket. The web component will be a client that uses OCCAM
    through a connection to this daemon.
    
    This is much like how service-oriented software like Docker work and it
    makes much more sense to separate the concerns from the website (which
    is honestly more of a client than a server... in this topsy-turvy world
    we have made for ourselves)
    
    It means the library must now be threadsafe since the daemon will spawn
    a thread per connection, but the design so far had that in mind. The
    exceptions are Log, which is now configured per thread and has better
    support for capturing output which the daemon will send as a response
    back to the client, and, due to some weirdness, the SQLite3 driver. This
    is solved currently by setting the properties which are apparently
    per-thread with every session creation. Though, a better solution would
    involve being notified that the thread has been killed, and I just don't
    have that kind of callback system. Does the python threading library??
    Can you add a thread-based finalize??
    6493c73f
This project manages its dependencies using pip. Learn more