)]}'
{
  "log": [
    {
      "commit": "9d3432951bf3f58122c568580793a802a01571ea",
      "tree": "a09593d07bca168d606eb8326dd31b5b114e2f20",
      "parents": [
        "3b62d6cf270246c30f026635c644cbae57fee182"
      ],
      "author": {
        "name": "Gamze Abaka",
        "email": "gamze.abaka@netsia.com",
        "time": "Wed Feb 20 06:35:18 2019 +0000"
      },
      "committer": {
        "name": "Saurav Das",
        "email": "sauravdas@alumni.stanford.edu",
        "time": "Thu Feb 21 21:40:33 2019 +0000"
      },
      "message": "This patch solves the following bugs:\n\n* For the EAPOL trap flow, ONOS sends flow-mod including the meter id before the related meter-mod. Because of this, Voltha sends wrong flow count for the meter stats reply\n* Getting the tech profile id \u0026 inner vlan id from the write metadata instruction\n* ofp_flow_removed implementation is added\n\nChange-Id: Ib74c7b80db85506f675c2d7ff25bf644c64e5398\n"
    },
    {
      "commit": "53cc0a2df5e15ad73654ccc45e67fc4ccf67b36a",
      "tree": "8c5980e5fa4cb595551f356e5627e8bb68d4d74f",
      "parents": [
        "dddbd08a132fa557e049e2959296aa32b6e82afc"
      ],
      "author": {
        "name": "Gamze Abaka",
        "email": "gamze.abaka@netsia.com",
        "time": "Thu Jan 31 12:06:11 2019 +0000"
      },
      "committer": {
        "name": "Saurav Das",
        "email": "sauravdas@alumni.stanford.edu",
        "time": "Mon Feb 18 22:36:03 2019 +0000"
      },
      "message": "Flow decomposer support for Tech Profile Reference in metadata instead of using Flow Table ID as reference in Table 1.\n\nAlso in this patch:\n - Update flow count field of meter stats\n - ONU root field was True and because of this flow decomposer was not working properly - it is fixed (now onu root field is false) - related to VOL-1354\n - Meter \u0026 write metadata support is added to vcli\n - No-action (drop) flow support is added.\n - Removed broken wildcard inport support and in-band control support\n - Meter functions (meter stats reply, meter modify etc.) are fixed\n - Metadata information  passed on to the OLT and ONU Adapters.\n - Meter Reference in all Flow Tables passed on to the OLT and ONU Adapters.\n - Fixed unit tests and added more unit tests\n - Fixed ponsim (partially) to deal with changes to flow decomposer\n\nChange-Id: Id4b16fc05a6740a3f521b2cc4f6fdbff88da4fa5\n"
    },
    {
      "commit": "efcdf525860d442033b21e61423ff9ce164f28d2",
      "tree": "cd92b885ed52bacd5021c82c616835fb42489a79",
      "parents": [
        "85855e8445109a2f56014223cb7e6cb814cd4288"
      ],
      "author": {
        "name": "Koray Kokten",
        "email": "koray.kokten@netsia.com",
        "time": "Thu Dec 06 00:16:56 2018 +0300"
      },
      "committer": {
        "name": "Kailash Khalasi",
        "email": "kailash@onlab.us",
        "time": "Tue Jan 29 22:46:58 2019 +0000"
      },
      "message": "VOL-736: Initial Commit. Not Completed yet.\n\nWe will use Existing architecture of Flow Decomposer passing down to both OLT Adapter and ONU Adapter.  The Technology Profile Flow Table ID (range 64-255) and Meter Programming OpenFlow Messages MUST be passed unmodified down to the OLT and ONU Adapters.\n\nChange-Id: Ib4d21d1cc011ac4ceab536946cb727859cb2b525\n"
    },
    {
      "commit": "8592a239666129c4f167b79fa03189154c210750",
      "tree": "cb607a6ea641d45f5346df6cc1866c3c24ec7912",
      "parents": [
        "65423ce331ffb56ca27e104a85e5a55fe544c4b8"
      ],
      "author": {
        "name": "Koray Kokten",
        "email": "koraykokten@netsia.com",
        "time": "Mon Aug 27 07:41:14 2018 +0000"
      },
      "committer": {
        "name": "khenaidoo Nursimulu",
        "email": "knursimu@ciena.com",
        "time": "Tue Oct 30 15:45:22 2018 +0000"
      },
      "message": "733: Insert the description of the change.Need to support Error Checking for consistency – if Meter Reference made then need Meter to exist first before reference.\n\nIf Flow Table ID does not resolve to a Technology Profile in KV Store generate an error – initial approach to simplify implementation - the Technology for the Profile will not be used to qualify the lookup.\n\nInitially just do OF agent checks which do not need knowledge available in the adapter i.e. Meter Band Reference requires Meter Band definition first. Any Forward References need error checks (OF Error messages).\n\nOF Agent needs to pass through the Meter/Meter Band programming and the Flow Table ID used to reference the Technology Profile.\n\nThe VOLTHA core needs to be able to receive meters from the OFAgent and store them in the appropriate logical device. A new northbound API needs to be added to the core to support this.\n\nChange-Id: Ide776dbcbc04232c1d929a85707fec09e3dedf6f\n"
    },
    {
      "commit": "fd7b8b17b600a1de25fcff13e0923df5d8197d59",
      "tree": "a3241b1538173ab8f1c17262c4f1a65c3b7fcfa6",
      "parents": [
        "e7359fcdb4aa48f49d9e7037ceb9855be87dd031"
      ],
      "author": {
        "name": "Nicolas Palpacuer",
        "email": "np202g@att.com",
        "time": "Fri Jun 15 13:58:06 2018 -0400"
      },
      "committer": {
        "name": "Jonathan Hart",
        "email": "jono@opennetworking.org",
        "time": "Tue Jun 19 22:03:37 2018 +0000"
      },
      "message": "VOL-955 Handling of port stats in OFAgent\n\nChange-Id: Ib73bcb539dc573e577e5c9d736e425256c6a8972\n"
    },
    {
      "commit": "61c2e9814b3fed34c3b9a0124690f8f54b145ff6",
      "tree": "39b52572d946e6bc10bd12e80ce855dbf33b4346",
      "parents": [
        "3b67e335b91ec1efd547d2111195337b05952354"
      ],
      "author": {
        "name": "Gamze Abaka",
        "email": "gamze.abaka@netsia.com",
        "time": "Wed Feb 14 11:03:36 2018 +0000"
      },
      "committer": {
        "name": "khenaidoo Nursimulu",
        "email": "knursimu@ciena.com",
        "time": "Thu Apr 05 13:55:56 2018 +0000"
      },
      "message": "When we use voltha-onos docker, onos sends clear_actions instruction to voltha ofagent component. voltha ofagent component doesnt handle this instruction type and creates an exception:\n20180124T125506.456 ERROR of_protocol_handler.handle_flow_mod_request\n{e: \u003cclass \u0027loxi.of13.instruction.clear_actions\u0027\u003e, event: failed-to-convert, exception: Traceback (most recent call last): File \"/ofagent/ofagent/of_protocol_handler.py\", line 122, in handle_flow_mod_request grpc_req \u003d to_grpc(req) File \"/ofagent/ofagent/converter.py\", line 52, in to_grpc return converter(loxi_object) File \"/ofagent/ofagent/converter.py\", line 244, in loxi_flow_mod_to_ofp_flow_mod instructions\u003d[to_grpc(i) for i in lo.instructions]) File \"/ofagent/ofagent/converter.py\", line 51, in to_grpc converter \u003d to_grpc_converters[cls] KeyError: \u003cclass \u0027loxi.of13.instruction.clear_actions\u0027\u003e, instance_id: compose_ofagent_1}\nAs a conclusion, we see the flows at pending_add state when we check them at Onos cli.\n\nChange-Id: Icde46ba15dccaa2d25920d5d5d104baf88bdd22b\n"
    },
    {
      "commit": "f4fb2684c2d58bb665fe4351572d071173cfb491",
      "tree": "cc2e94f9084fd39ab3fbf5c507170650f892dd41",
      "parents": [
        "8afd69809e45b480973dda168d0281fa7d8e10f6"
      ],
      "author": {
        "name": "alshabib",
        "email": "alshabibi.ali@gmail.com",
        "time": "Thu Jan 12 00:32:56 2017 -0600"
      },
      "committer": {
        "name": "alshabib",
        "email": "alshabibi.ali@gmail.com",
        "time": "Thu Jan 12 00:32:56 2017 -0600"
      },
      "message": "fixing support for group desc stats\n\nChange-Id: I3d0d9c22e05e58b13b0fdc92fbc672590bb3dd18\n"
    },
    {
      "commit": "3578a1c3ac3c9898acff32b1e8b940ef18ceac1e",
      "tree": "428c3eb476abaac4ca390972e0990340c3836d78",
      "parents": [
        "6a5107c865a46df9a6c778d8d34e300621232264"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Tue Jan 10 15:29:02 2017 -0800"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Tue Jan 10 20:20:30 2017 -0800"
      },
      "message": "Expand field/action conversion scope of ofagent\n\nOfagent did not parse all fields back from protobuf to lexi,\nhence ONOS was not able to confirm downloaded flows. This\nmade her unhappy.\n\nAlso, DHCP config info is added to ONOS netcfg.json.\n\nChange-Id: I57ac5d3b4d14c8c52feb52e08bb420c15809238e\n"
    },
    {
      "commit": "6a5107c865a46df9a6c778d8d34e300621232264",
      "tree": "02db17e968a9c323942b6741d70ce6b7a6fa187c",
      "parents": [
        "6f746645ac6fa03c2c7c37c3ebbb33a2830f5d3f"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Mon Jan 09 23:42:41 2017 -0800"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Tue Jan 10 00:54:50 2017 -0800"
      },
      "message": "Adding support for OLT side metadata field\n\nDue to historic reasons, ONOS injects a metadata match field into one\nof the downstream unicats flow rules, which was not yet handled by voltha.\nThat is fixed and tested now.\n\nChange-Id: Ic8a47de515fa5837a70941be22da9e2d6539f614\n"
    },
    {
      "commit": "3eb27a56d762da3e4412e79b45a615ded900aad8",
      "tree": "e92eba2fa14f7d4ab77608022bf3680bae146ee4",
      "parents": [
        "9fbb223b548e5b2cd35d8dc77d2f423e176468d2"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Tue Jan 03 21:56:48 2017 -0800"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Tue Jan 03 21:56:48 2017 -0800"
      },
      "message": "Happy New Year 2017\n\nChange-Id: Ib9a77f5e7d8d857a519d20904ec0d745e32eb257\n"
    },
    {
      "commit": "8925d1f5bcd3da4db9c8872214cae32eb7bc5844",
      "tree": "faecd5a7e12eabad080387baa49448addec8f0d1",
      "parents": [
        "7626ce1a0466394c047985c9286f2e0dc065559c"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Wed Dec 21 00:45:19 2016 -0800"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Wed Dec 21 21:07:44 2016 -0800"
      },
      "message": "Packet-in channel plumbed thru whole stack\n\nChange-Id: I1df0265139259cc1757f29af19132c5384943c15\n"
    },
    {
      "commit": "217a12eb75007ad814269eb4b8e63108c0d81845",
      "tree": "ccd7f4abef105f199f469d22b2448f88b0969e80",
      "parents": [
        "7b312564a62e175fc385646a07e2acd3996d0cb0"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Mon Dec 19 16:37:55 2016 -0800"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Mon Dec 19 16:38:04 2016 -0800"
      },
      "message": "Propagate port change to SDN controller via OF13\n\nThis change adds plumbing to propagate new logical port\nadditions up to the SDN contoller via OpenFlow.\n\nChange-Id: Ic02586b096144c3697a0974ebbc8a7be8760bef8\n"
    },
    {
      "commit": "66862035accde9e1dcb32f7c711465d00e543af8",
      "tree": "366f637706444a93514af802d87889d3572073b9",
      "parents": [
        "00d9a842344958e9361aa02f15775f9151b3eab9"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Mon Nov 28 14:28:39 2016 -0800"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Wed Dec 07 11:50:29 2016 -0800"
      },
      "message": "Flow decomposition and miscellenous improvements\n\nSpecifically:\n\nThe biggest addition is an initial flow decomposition\nimplementation that splits flows and flow groups\ndefined over the logical device into per physical\ndevice flows, based on a very crude and heuristic\napproach. We expect this part to be much improved\nlater on, both in term of genericness as well as\nspeed.\n\nThe flow decomposition is triggered by any flow\nor group mods applied to a logical device, and it\nconsequently touches up the affected device tables.\nThis uses the POST_UPDATE (post-commit) mechanism\nof core.\n\nThere is also an initial arhcitecture diagram added\nunder docs.\n\nAdditional improvements:\n\n* Implemented metadata passing across the gRPC\n  link, both in Voltha and in Chameleon. This paves\n  the road to pass query args as metadata, and also\n  to pass HTTP header fields back and forth across\n  the gRPC API. This is alrady used to pass in depth\n  for GET /api/v1/local, and it will be used to\n  allow working with transactions and specific config\n  revs.\n* Improved automatic reload and reconnect of chameleon\n  after Voltha is restarted.\n* Improved error handling in gRPC hanlers, especially\n  for the \"resource not found (404)\", and bad argument\n  (400) type errors. This makes gRPC Rendezvous errors\n  a bit cleaner, and also allows Chameleon to map these\n  errors into 404/400 codes.\n* Better error logging in generic errors in gRPC handlers.\n* Many new test-cases\n* Initial skeleton and first many steps implemented for\n  the automated testing for the cold PON activation\n  sequence.\n* Convenience functions for working with flows (exemplified\n  by the test-cases)\n* Fixed bug in config engine that dropped changes that\n  were made in a POST_* callback, such as the ones used\n  to propagae the logical flow tables into the device\n  tables. The fix was to defer the callbacks till the\n  initial changes are complete and then execute all\n  callbacks in sequence.\n* Adapter proxy with well defined API that can be\n  used by the adapters to communicate back to Core.\n* Extended simulated_olt and simulated_onu adapters to\n  both demonstrate discovery-style and provisioned\n  activation style use cases.\n* Adapter-, device-, and logical device agents to provide\n  the active business logic associated with these\n  entities.\n* Fixed 64-bit value passing across the stack. There was\n  an issue due to inconsistent use of two JSON\u003c--\u003eProto\n  librarier, one of which did not adhere to the Google\n  specs which recommend passing 64-bit integer values as\n  strings.\n* Annotation added for all gRPC methods.\n\nAll Voltha test-cases are passing.\n\nChange-Id: Id949e8d1b76276741471bedf9901ac33bfad9ec6\n"
    },
    {
      "commit": "cd22adc23cff59dd5f6a96ec12a5b336036937ec",
      "tree": "f8884eee569867f43a28b450a6c2242f458f1221",
      "parents": [
        "862883a240b41c87dc49d956246edd2d37c604e1"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Tue Oct 25 00:13:06 2016 -0700"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Fri Oct 28 08:34:51 2016 -0700"
      },
      "message": "Packet in/out streaming from ofagent to core\nGetting ready for packet streaming\n\nChange-Id: I8d70d4d6ffbb23c0d7ab20582e9afac49f9f6461\n\nSupport flow_delete_strict\n\nChange-Id: I5dab5f74a7daddcddfeb8691a3940347cb2fc11b\n\nPacket out halfway plumbed\n\nChange-Id: I799d3f59d42ac9de0563b5e6b9a0064fd895a6f6\n\nrefactored async_twisted\n\nChange-Id: I68f8d12ce6fdbb70cee398f581669529b567d94d\n\nPacket in pipeline and ofagent refactoring\n\nChange-Id: I31ecbf7d52fdd18c3884b8d1870f673488f808df\n"
    },
    {
      "commit": "9125b1a90ceff0e60c944a6430e8054cf36a0f76",
      "tree": "9be01e5e9cc146403a86b89c68307c2806ff8549",
      "parents": [
        "40f039c39f0fff90a68f7cccf3d772c4e8efcf5d"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Mon Oct 24 22:54:33 2016 -0700"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Mon Oct 24 23:00:03 2016 -0700"
      },
      "message": "Fixed two bugs in OpenFlow land\n\nChange-Id: I74f37221d93c71398a1985143f03706297bd1661\n"
    },
    {
      "commit": "8a7743872b15bf3d95d4aaaf1b77bfad40cda35d",
      "tree": "43258f000eb932fc7121f523aa0756ecfb77dd49",
      "parents": [
        "023ea7cbbc9482643579b92ab02b3ed104e1f575"
      ],
      "author": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Mon Oct 24 18:25:54 2016 -0700"
      },
      "committer": {
        "name": "Zsolt Haraszti",
        "email": "zharaszt@ciena.com",
        "time": "Mon Oct 24 20:53:40 2016 -0700"
      },
      "message": "All olt-oftest flow and group commands propagate\n\nChange-Id: Iddde6ddddd5a0ca5100ee95d55fedd247ab7f263\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"
    }
  ]
}
