)]}'
{
  "log": [
    {
      "commit": "6e0241bdc67cdc2df0b317205c843cac004ab168",
      "tree": "c8a81bb0e7400b0ec72beca5c270120f6e78d34c",
      "parents": [
        "7941d40d11b0ba83fbcebdc041bc564b4b8f4b84"
      ],
      "author": {
        "name": "Khen Nursimulu",
        "email": "knursimu@ciena.com",
        "time": "Thu Nov 10 18:05:01 2016 -0800"
      },
      "committer": {
        "name": "Khen Nursimulu",
        "email": "knursimu@ciena.com",
        "time": "Thu Nov 10 18:05:01 2016 -0800"
      },
      "message": "Restoring the descriptor.desc file in the chameleon directory\n\nChange-Id: I16992b3d9459b7c240f88947bc78af3cda855674\n"
    },
    {
      "commit": "6618662aee433d3fec1c92b41c4199ed24f53190",
      "tree": "5e5fe18dfc4b23c137b8d2bc9deb0ecef87c14a8",
      "parents": [
        "3c74d3b1fc6ad14854fd6d18f37c9b37567889e5"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Tue Nov 08 14:24:00 2016 -0800"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Tue Nov 08 16:54:29 2016 -0800"
      },
      "message": "Remove generated artifacts from git\n\nChange-Id: I1d8f9a5a4519004618e2df87c28fdb8849b68c00\n"
    },
    {
      "commit": "1edb82867fe4828813a9bb7c6a3953b314105a1c",
      "tree": "582255fc5cd72aa1cea5c713be95e1ad17c3054f",
      "parents": [
        "fa523c636bb0b8446a9a827713731ae8c6de8090"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Tue Nov 08 10:57:19 2016 -0800"
      },
      "committer": {
        "name": "khenaidoo Nursimulu",
        "email": "knursimu@ciena.com",
        "time": "Tue Nov 08 11:15:18 2016 -0800"
      },
      "message": "Fix to docker import issues and swagger error\n\nThis is actually two fixes in one change:\n1. Fixing the import issues in the docker containers, also cleaning\n   it up.\n2. Avoiding the creation of multiple swagger.json files by specifying\n   which of the proto files represent the top-level service.\n\nChange-Id: I9fec5cf48df127725673ba53f0e91d2ed2e275ad\n"
    },
    {
      "commit": "7eeb2b35568aa53c175013d1bec1f84abd928c71",
      "tree": "16413cdeb84c641a485484efdc012f288301f9c9",
      "parents": [
        "91350ebd11fc030359a79332bfe18e75da139d54"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Sun Nov 06 14:04:55 2016 -0800"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Mon Nov 07 00:49:10 2016 -0800"
      },
      "message": "Refactored protobuf framework, added loader\n\nIncluded changes:\n\n* Initial adapter interface spec\n* Adapter loader to auto-load adapters\n* Initial adapter NBI\n* Better import support in chameleon, allowing more flexible\n  protobuf structure (by organizing artifacts and service\n  into separate proto files.\n* Refactored voltha.proto to split things into logical proto\n  modules.\n* Some additional cleanup\n\nChange-Id: I75f9883c6992148ea8df430bcdaebf85115fea4a\n"
    },
    {
      "commit": "d70cd4de56b7d8b57493a2d1077749d7c58fb3fe",
      "tree": "af229c5f94e131d7346b739f1cd8bfe845fe5f3a",
      "parents": [
        "0df86c177f6e7f81abcc463ad560e6ea7a93f55e"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Thu Nov 03 23:23:36 2016 -0700"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Fri Nov 04 22:05:27 2016 -0700"
      },
      "message": "Moved event bus to common lib\n\nChange-Id: I530498db2d4fd3ba644dd4a92e0b6ce74bce3a27\n"
    },
    {
      "commit": "2bdb6b31e4b86a5ae88fbceb70bd05143cef318b",
      "tree": "766a1571ac170fc997e1a87829de5f3976e8a94a",
      "parents": [
        "3d565e206c2dc0ac28f3921e1e44e6a865d4fc8c"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Thu Nov 03 16:56:17 2016 -0700"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Thu Nov 03 19:33:59 2016 -0700"
      },
      "message": "Nomralize component start()/stop()\n\nAlso fixed the /schema swagger/rest entry. It did not work\nbecause the 3rdparty protobuf_to_dict library cannot handle\nMap fields. Changed the two map fields to a single list\nentry.\n\nChange-Id: Ib25a528701b67d58d32451687724c8247da6efa5\n"
    },
    {
      "commit": "023ea7cbbc9482643579b92ab02b3ed104e1f575",
      "tree": "e75ec5bff25548904e2a8e358029cc5fe8bb6466",
      "parents": [
        "4ba198966634f48c11a7dfb5590b404b1b2a1f34"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Sun Oct 16 19:30:34 2016 -0700"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Mon Oct 24 01:38:54 2016 -0700"
      },
      "message": "Async/streaming gRPC client/server proto\n\nThis experiment was to fine-tune how we can implement\nasync gRPC client and server code inside a Twisted\npython app.\n\nChange-Id: I945014e27f4b9d6ed624666e0284cc298548adb3\n\nMajor cleanup of openflow_13.proto\n\nChange-Id: I4e54eaf87b682124ec518a0ade1a6050a6ec6da8\n\nRelocated openflow_13.proto to voltha\n\nChange-Id: I66ae45a9142d180c2c6651e75c7a1ee08aef7ef8\n\nRemoved forced utest from make build\n\nChange-Id: If0da58e9d135ebde6ca68c3316688a03a7b10f2f\n\ntwisted openflow agent first pass\n\nChange-Id: Ibe5b4727ccfe92e6fd464ccd3baf6275569ef5d3\n\nstore openflow derived files\n\nChange-Id: Ib3e1384bb2ca2a9c0872767f7b793f96b0a154e2\n\nMinor cleanup\n\nChange-Id: I1280ed3acb606121b616a0efd573f5f59d010dca\n\nFactored out common utils\n\nChange-Id: Icd86fcd50f60d0900924674cbcd65e13e47782a1\n\nRefactored twisted agent\n\nChange-Id: I71f26ce5357a4f98477df60b8c5ddc068cf75d43\n\nRelocated openflow agent to ofagent\n\n... and preserved obsolete working (non-twisted) agent under\n~/obsolete, so we can still run the olt-oftest and pass tests,\nunit the new twisted based agent reaches that maturity point.\n\nChange-Id: I727f8d7144b1291a40276dad2966b7643bd7bc4b\n\nolt-oftest in fake mode works with new agent\n\nChange-Id: I43b4f5812e8dfaa9f45e4a77fdcf6c30ac520f8d\n\nInitial ofagent/voltha operation\n\nChange-Id: Ia8104f1285a6b1c51635d36d7d78fc113f800e79\n\nAdditional callouts to Voltha\n\nChange-Id: If8f483d5140d3c9d45f22b480b8d33249a29cd4e\n\nMore gRPC calls\n\nChange-Id: I7d24fadf9425217fb26ffe18f25359d072ef38fa\n\nFlow add/list now works\n\nChange-Id: Ie3e3e73108645b47891cef798fc61372a022fd93\n\nMissed some files\n\nChange-Id: I29e81238ff1a26c095c0c73e521579edf7092e21\n"
    },
    {
      "commit": "bae127558ab82e7d662e20e077415fcaccecd765",
      "tree": "83ae8e5895e901ed3467b384e89b92393cdfbade",
      "parents": [
        "c51c065b01038381efb030cc7abdd3fcbe38eb75"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Mon Oct 10 09:55:30 2016 -0700"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Wed Oct 12 00:44:51 2016 -0700"
      },
      "message": "Chameleon swagger support\n\nChange-Id: I63b8dc7b31d5e87aa0e5153da302537d90ff733e\n"
    },
    {
      "commit": "c51c065b01038381efb030cc7abdd3fcbe38eb75",
      "tree": "11202a67640d829c3527c6605d2634a00ac7e9ec",
      "parents": [
        "a4bca4a2db4f0f227568c8c1f4a55b3d18d0b99c"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Wed Oct 05 20:40:19 2016 -0700"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Wed Oct 05 20:40:19 2016 -0700"
      },
      "message": "Fix overlapping reconnect loops\n\nChange-Id: I23f5c17700f9ac17baf9c8136739bf32d656bbf0\n"
    },
    {
      "commit": "d4226ed3cd4d1f3bd15117ff3b847a8c1ac4b5d9",
      "tree": "5af094ccd68d23aa5d282e9f21e343d86e805df3",
      "parents": [
        "1504408a3591f5dad8f9bdd85f198f455a5f28fc"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Wed Oct 05 17:49:27 2016 -0700"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Wed Oct 05 17:49:27 2016 -0700"
      },
      "message": "Chameleon fault tolerance\n\nChange-Id: Id7060f121f85a444005dfeff6279daef51a59295\n"
    },
    {
      "commit": "1504408a3591f5dad8f9bdd85f198f455a5f28fc",
      "tree": "9767c43ca22da02a048316e46985b4ceec640524",
      "parents": [
        "034db37f38b01a23ff855a3a7a502e40e9fd002c"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Wed Oct 05 00:18:57 2016 -0700"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Wed Oct 05 00:18:57 2016 -0700"
      },
      "message": "Dockerized chameleon to work\n"
    },
    {
      "commit": "034db37f38b01a23ff855a3a7a502e40e9fd002c",
      "tree": "9292a8c75da35dbaddd632bdc5fa1cae9ec40eaa",
      "parents": [
        "7baf38ae39134b37d984dc0d45bac21b7b019cdb"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Mon Oct 03 22:26:41 2016 -0700"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Mon Oct 03 22:26:41 2016 -0700"
      },
      "message": "Chameleon self boot-strapping API\n"
    },
    {
      "commit": "7baf38ae39134b37d984dc0d45bac21b7b019cdb",
      "tree": "ba9080c9ec888a2eef85d2e0c3acd8371127a2e1",
      "parents": [
        "4a325d3e07b459f00c1b4e76536374ea07d23457"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Sat Oct 01 15:15:18 2016 -0700"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Sat Oct 01 15:15:18 2016 -0700"
      },
      "message": "Swagger UI files\n"
    },
    {
      "commit": "5cd64703098cf50d2ac0d7a0fadd68d1a5a1587d",
      "tree": "1471e7c1915c39da0bf013a09860dbbce79f3ed9",
      "parents": [
        "4536335b5f70b739e22d789da7a138c05b2bbacc"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Tue Sep 27 13:48:35 2016 -0700"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Tue Sep 27 13:48:35 2016 -0700"
      },
      "message": "Chameleon rest-grpc gateway fetching and compiling\n"
    },
    {
      "commit": "553826cbe02a32148d85444d6cf1a8a9fa3a585f",
      "tree": "8a87cd98db6d58b559e3bcfbdda711ded9da8d87",
      "parents": [
        "86be6f169288f52d602e5b415fdc80c76df5d0c4"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Tue Sep 27 10:24:27 2016 -0700"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Tue Sep 27 10:24:27 2016 -0700"
      },
      "message": "Make GRPC port configurable\n"
    },
    {
      "commit": "86be6f169288f52d602e5b415fdc80c76df5d0c4",
      "tree": "f32eaea8033d9ec5206d112587c90be85e743bde",
      "parents": [
        "32dda55a7ff8244661aa7151e1cdc16d5eba2de3"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Tue Sep 27 09:56:49 2016 -0700"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Tue Sep 27 09:56:49 2016 -0700"
      },
      "message": "Chameleon outline: a REST-to-GRPC gateway\n"
    }
  ]
}
