~singpolyma/sgx-jmp

ref: 53d08945b8bf88df86c34929255f765797aa4ad4 sgx-jmp/sgx_jmp.rb -rw-r--r-- 13.4 KiB
Merge branch 'cancel-timeout'

* cancel-timeout:
  Timeout is not a fatal error
  When user cancels the command, respond with canceled
Timeout is not a fatal error

If the user does not proceed with a command after N time, we don't hold on to it
forever and time out.  We cannot return anything to the user because they
haven't sent us anything, so just ignore it.
Merge branch 'command-object'

* command-object:
  ErrorToSend => FinalStanza
  Since Command#finish causes an error, a then off the end won't work
  Refactor commands to have Command and Command::Execution objects
ErrorToSend => FinalStanza
Since Command#finish causes an error, a then off the end won't work
Merge branch 'statsd-logging'

* statsd-logging:
  Use the logger for all gems
Use the logger for all gems
Refactor commands to have Command and Command::Execution objects

Brings the common elements of all commands together, and threads the most useful
state (such as ability to reply) through automatically using the new EMPromise
fiber trampoline.
Factor out CustomerRepo

Using the Repository pattern to encapsulate the fetch and create operations on
the persistence layer for a domain object.  These were not really factories in
the classic sense, but rather "fetch from persisitence layer" methods, and so
they now have a home.
Merge branch 'logging'

* logging:
  Slightly better logging
Slightly better logging

Import structured logging gem ougai and replace current use of puts/warn with
logging calls.  Gives us level, timestamp, and formatting for exceptions and/or
hash of arbitrary context data.  Can do JSON logging if we ever need that, but
set to human-readable (with colour if isatty) for now.
Merge branch 'btc_spop'

* btc_spop:
  Get new Bitcoin address from Redis set
Get new Bitcoin address from Redis set

This set is populated by a cron job to have only known-good available addresses
in it.
Explicitly wrap errors we want to send
Sync/flush stdout when logging
Set type map on *all* connections in pool
Command cancel rejects the promise

So it won't be taken as next by naive code.
Funnel statsd for registration
Next