This prevents hard-to-detect errors with JSON communication.
The patch series also corrects several such errors discovered this way.
Fixes issue #829.
Petr Pudlak (10):
Helper functions for listing dictionary keys of fields
Add helpers for implementing show/readJSON from DictObject
When parsing JSON dictionaries, check if all keys are used
Generate explicit type annotations for JSON generated fns
Generate 'DictObject' instance for OpCodes
Generate 'opToArgs' using a 'DictObject' instance
Remove the 'disks_info' attribute from 'Instance'
Add {hv,disk}_state_static to the cluster configuration
Fix HvInfo data type used for NodeInfo RPC calls
Compute the list of dictionary keys used in op-codes
lib/objects.py | 10 ++-
src/Ganeti/JSON.hs | 46 +++++++++++++-
src/Ganeti/Objects.hs | 14 +++++
src/Ganeti/OpCodes.hs | 30 ++++-----
src/Ganeti/Rpc.hs | 7 ++-
src/Ganeti/THH.hs | 165 +++++++++++++++++++++++++++++++-------------------
6 files changed, 186 insertions(+), 86 deletions(-)
--
2.0.0.526.g5318336