)]}'
{
  "log": [
    {
      "commit": "2184de1e7f2747dac88c7788d8c54b15558c183d",
      "tree": "4d6333e1a67b0a4b295aa5bf677284e2c6918da1",
      "parents": [
        "9d7ef168252200dcc89a49b72f6ce90ace17c95c"
      ],
      "author": {
        "name": "Charles M.C. Chan",
        "email": "rascov@gmail.com",
        "time": "Sun Apr 26 02:24:53 2015 +0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Tue Apr 28 17:47:22 2015 +0000"
      },
      "message": "ONOS-1756: Improve CLI auto completers\n\n- Add more ICMP types and codes\n- Add completer for --icmp6Type\n- Add completer for --icmp6Code\n- Add completer for --extHdr\n    It is a multiValued option.\n    For example, the following command will match an IPv6 packet with both fragment and routing extension header:\n    add-point-intent --ethType IPV6 --extHdr FRAG --extHdr ROUTING\n    NOTE: OVS 2.3.1 does not support OFPXMC_OFB_IPV6_EXTHDR match field yet.\n- Change parameter of TrafficSelector.matchIPv6ExthdrFlags() from int to short since that field is 9 bits only\n\nChange-Id: I55944399f3985f2cc09330a726f21983de273341"
    },
    {
      "commit": "6b3312694dc10a4f38fbad7603aeff4c70418097",
      "tree": "3bcbc718dffd27f636532b0d9940432084eada07",
      "parents": [
        "7b8a9217630c2aaa956420d3e472b573dbea0403"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Mon Apr 27 11:09:07 2015 -0700"
      },
      "committer": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Mon Apr 27 11:12:32 2015 -0700"
      },
      "message": "Moved jdvue utility from ONOS-tools repo into onos repo.\n\nChange-Id: I0bc1cef80541075c800c5309cb642a244a79fa0b\n"
    },
    {
      "commit": "f80d97478d9ae2c2a76a4b8c5ef7c9fd58948e7b",
      "tree": "70784032cb008a6f820f0dceb7c1d64402cb05b5",
      "parents": [
        "9cf1a8d8185b8a786df66ce5e70967443e74293d"
      ],
      "author": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Tue Apr 21 15:52:31 2015 -0700"
      },
      "committer": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Tue Apr 21 15:52:31 2015 -0700"
      },
      "message": "Adding jnc shaded bundle to build\n\nChange-Id: Iae5dd0b63e567b8218a666ecdbea6558c9e98d70\n"
    },
    {
      "commit": "34c8b77aa2e8c59a1e049ebcd5c1965765c0ed0c",
      "tree": "c76d6b7f373f7066572955a2e076e0597a96046e",
      "parents": [
        "41e8c18f22e6d62f28e9f41c818bfb815a7d4321"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Tue Apr 21 14:20:12 2015 -0700"
      },
      "committer": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Tue Apr 21 14:34:13 2015 -0700"
      },
      "message": "Adding pom.xml to shade TailF JNC library and its dependency ganymed-ssh2 as a single OSGi bundle for use in ONOS NetConf providers.\n\nChange-Id: I5b27236070878b483dc199686ca94e2b44a4d5fa\n"
    },
    {
      "commit": "ce9808a43ae180315979aa76d33bfb69cc85cc7f",
      "tree": "43a44c58fc20cfcf9bb93b13abe08cfc83a2b7cc",
      "parents": [
        "6cc224b207f48b1569cdfca9199526d0e943341d"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Tue Apr 21 09:33:26 2015 -0700"
      },
      "committer": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Tue Apr 21 09:33:26 2015 -0700"
      },
      "message": "Javadoc clean-up and apps -s command clean-up.\n\nChange-Id: I6a4859fd05edb17a02333e4d68496d54589b586b\n"
    },
    {
      "commit": "b093c916e52c1faff89ed2271f3cc5318350ecb8",
      "tree": "9f05a9334e25db546de3c5bf72012dfc918d7ab4",
      "parents": [
        "6e0fb3028932245a91413e74cf5b1bafe2f107d2"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Mon Apr 20 10:28:26 2015 -0700"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Mon Apr 20 17:43:06 2015 +0000"
      },
      "message": "Renamed IOLoop \u0026 Netty to *MessagingManager for consistency.\n\nChange-Id: Id8859e24d0c7ac7f948516388069639093bad524\n"
    },
    {
      "commit": "c26eede6852d374ebcc2f3257b4708b6f4db9b26",
      "tree": "aff7f1739f597985ccefda4975e416bb782c9886",
      "parents": [
        "2a441c680779fb5453b528ec22e1b3f170b663cd"
      ],
      "author": {
        "name": "Madan Jampani",
        "email": "madan@onlab.us",
        "time": "Thu Apr 16 11:42:16 2015 -0700"
      },
      "committer": {
        "name": "Madan Jampani",
        "email": "madan@onlab.us",
        "time": "Mon Apr 20 05:28:48 2015 +0000"
      },
      "message": "Added a messaging service implementation on top of IOLoop. Added ability to easily switch between netty and io loop (default is netty)\n\nChange-Id: Id9af0756bf0a542f832f3611b486b2ac680b91e4\n"
    },
    {
      "commit": "e10f56b8b0574716351afe88838f904ad3ac2afa",
      "tree": "d0c2b39c47a1463570952f2fb05325411e8a8515",
      "parents": [
        "f5af0a2ab41bf0340ee84330163e74af578ba464"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Wed Apr 15 18:20:08 2015 -0700"
      },
      "committer": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Wed Apr 15 18:20:08 2015 -0700"
      },
      "message": "Fixing javadocs.\n\nChange-Id: I9e6b3d7eb08d17d4ad450277a1279f6aaefd4640\n"
    },
    {
      "commit": "34c959066dbd4dbada6d18ad9dccbebfd6af71c1",
      "tree": "5a391a46a388f6e79b46156af236cf877ae1e121",
      "parents": [
        "95c5087688d0c9d365d6a7a25822e4c89c03d9e2"
      ],
      "author": {
        "name": "Ray Milkey",
        "email": "ray@onlab.us",
        "time": "Wed Apr 15 09:47:53 2015 -0700"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Wed Apr 15 17:41:07 2015 +0000"
      },
      "message": "ONOS-533 Fix copyrights\n\n- Any files created in 2014 and modified in 2015 got a copyright of\n  2014-2015\n- Used canonical form of 2014-2015 to be inclusive of extra years.\n  Some files had 2014,2015\n\nChange-Id: If9a133618873e4000b8f10299bde7c870eb1fbd5\n"
    },
    {
      "commit": "c9e16bfa1d3d95b1fb704c99f82525cf2cb1fee8",
      "tree": "825e57a91e299102fce7c6801c2acd1ad0be9059",
      "parents": [
        "fd8c7d7288635bb91156e7429badb2dd0e9a1fc8"
      ],
      "author": {
        "name": "Pingping Lin",
        "email": "pingping@onlab.us",
        "time": "Fri Apr 10 14:42:41 2015 -0700"
      },
      "committer": {
        "name": "Jonathan Hart",
        "email": "jono@onlab.us",
        "time": "Wed Apr 15 16:31:14 2015 +0000"
      },
      "message": "add a virtual gateway for reactive routing\n\n  There is no physical gateway in SDN network.\n  However a host needs a gateway when it tries to communicate with a remote host.\n  So we designed a virtual gateway for SDN network.\n  The virtual gateway can have multiple IP addresses.\n  Each IP address is used as the default gateway address of an IP prefix.\n  We only configure one MAC address to the virtual gateway.\n  You can choose any MAC address from the BGP speakers as the virtual gateway MAC address.\n  We configure this MAC address staticly in the sdnip.json configuration file.\n\nChange-Id: I2a72bef797fc55d25bb5473e8fca624ad659e1d1\n"
    },
    {
      "commit": "43d9f7a7a576eb4095c938ab96cb6d3e94c1cb19",
      "tree": "31b9a7ff254e8ec681b4466a9e712522336e825a",
      "parents": [
        "b0352416eda1d9526c5cf4ee23e7c526dd8eae45"
      ],
      "author": {
        "name": "Jonathan Hart",
        "email": "jono@onlab.us",
        "time": "Mon Apr 13 16:53:06 2015 -0700"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Tue Apr 14 17:24:04 2015 +0000"
      },
      "message": "Remove deprecated openflow host and link providers\n\nChange-Id: I9dbaa28a70998b6265a178bb459a56221f458b75\n"
    },
    {
      "commit": "c40d463c2786dd1b195d8d47019808ea74595b78",
      "tree": "c6fb30c29eba9f6405c7ecccfb5c7f2ff8e7128b",
      "parents": [
        "a28f69af70d382275a1982bdca11181544c2dda3"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Thu Apr 09 16:55:03 2015 -0700"
      },
      "committer": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Tue Apr 14 01:23:24 2015 -0700"
      },
      "message": "Consolidating null providers and making them fully configurable and integrated with the ConfigProvider to allow arbitrary topologies.\n\nChange-Id: I899e27a9771af4013a3ce6da7f683a4927ffb438\n"
    },
    {
      "commit": "ec5ae341db7c7f9fa03ddfedebf6d7c84541d80f",
      "tree": "f3ae8bd9ef596ef6c848b31d6d23d14233b1985a",
      "parents": [
        "22fa5cbcec1caddfbdcb6ac0fb0651d0dab27826"
      ],
      "author": {
        "name": "Madan Jampani",
        "email": "madan@onlab.us",
        "time": "Mon Apr 13 15:43:10 2015 -0700"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Mon Apr 13 23:43:52 2015 +0000"
      },
      "message": "Use the Executor interface when specifying where to handle incoming messages\nThis is done so that one can simply specify a direct executor.\nChange-Id: I1c3ea977dd7c2d604588d587fd67f7012355eedf"
    },
    {
      "commit": "22fa5cbcec1caddfbdcb6ac0fb0651d0dab27826",
      "tree": "458cd230eb7e258930d4b8bf5632feb2fa21e46b",
      "parents": [
        "cfd63d2783f0320e2108496232be25dc0d8603cd"
      ],
      "author": {
        "name": "Madan Jampani",
        "email": "madan@onlab.us",
        "time": "Mon Apr 13 15:53:44 2015 -0700"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Mon Apr 13 23:42:46 2015 +0000"
      },
      "message": "Fix Kryo serialization memory leak\n\nChange-Id: I122cb811971aef1a70a73c3335b485125125c66b\n"
    },
    {
      "commit": "2bfa94cf1564d84dea493285decf9f554494e9c8",
      "tree": "71d41994e021ccca6037423e2cef99b18d81bb07",
      "parents": [
        "0feedc02601e726ed3aeb8e4b250c43569ce9568"
      ],
      "author": {
        "name": "Madan Jampani",
        "email": "madan@onlab.us",
        "time": "Sat Apr 11 05:03:49 2015 -0700"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Mon Apr 13 16:51:24 2015 +0000"
      },
      "message": "Revamped ClusterCommunicationService API\n\nChange-Id: I9326369de3d2413b0882b324979d10483c093de9\n"
    },
    {
      "commit": "b35a6191319b2469a42083f6d3c80d33b16d4791",
      "tree": "fd8ed5d43156a361808114f502bd6aa535b2060f",
      "parents": [
        "ca335e9366b65ba543189a1fae3b9b32c82e2d72"
      ],
      "author": {
        "name": "sangho",
        "email": "sangho@onlab.us",
        "time": "Wed Apr 01 13:05:26 2015 -0700"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Thu Apr 09 18:24:33 2015 +0000"
      },
      "message": "ONOS-686, 687, 1344 : The first commit for the Segment Routing application\n - ICMP/ARP/IP handlers are implemented as a part of the application for now\n - Default routing and link add/failure/recovery are also supprted\n - Temporary NetworkConfigHandler, which is hardcoded to support only 6 router FISH topology, is used for test\n - Some fixes on GroupHanlder app to support transit routers\n - Supports multi-instance (tested with two instances)\n\nChange-Id: Idfa67903e59e1c4cac4da430f89cd4c50e821420\n"
    },
    {
      "commit": "b0317c6a3f894746d15f6b029241ef9e9a84959e",
      "tree": "a3e618a6f355c23fe79f3c68c3040829d73363e4",
      "parents": [
        "429477825cf009fe8508743658846f025d005f46"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Wed Apr 08 23:58:58 2015 -0700"
      },
      "committer": {
        "name": "Ray Milkey",
        "email": "ray@onlab.us",
        "time": "Thu Apr 09 18:11:17 2015 +0000"
      },
      "message": "Fixed javadoc warning; added shared executor/timer wrappers to prevent inadvertent shutdown; added shutdown to CoreManager.deactivate.\n\nChange-Id: I27f31b5d41050d6d87cd6419ab863201c4585843\n"
    },
    {
      "commit": "197a012bf4f5b05c0979dd3b99678c52789cdd0a",
      "tree": "f55ac32286fa8e653153abf8f9035ac82a91f281",
      "parents": [
        "5bb99a401581bc140f89d01275e9dd923ce41481"
      ],
      "author": {
        "name": "Charles M.C. Chan",
        "email": "rascov@gmail.com",
        "time": "Wed Apr 08 18:15:34 2015 +0800"
      },
      "committer": {
        "name": "Ray Milkey",
        "email": "ray@onlab.us",
        "time": "Thu Apr 09 17:47:03 2015 +0000"
      },
      "message": "Refactor org.onlab.packet.{TCP,UDP,ICMP6}\n\n- ONOS-1012: Fix TCP checksum when using IPv6\n- ONOS-1013: Fix UDP checksum when using IPv6\n- ONOS-1593: Remove get/setTcpChecksum\n- Remove unnecessary parameter of getUrgentPointer() in TCP\n- Complete javadoc for TCP\n- Add unit test for {TCP,UDP,ICMP6}\n\nChange-Id: Iad5eeb35812ede6764a9a9a4a57b9837e5ea5dd6\n"
    },
    {
      "commit": "ca88bb7440af35197a5bbeb5aaea43b869347018",
      "tree": "3cc4133fd2b45296cee1c5d19bac8361a1a2ad6e",
      "parents": [
        "c7ae795c31c06163c8c7f9407d8f5d65f3b7892c"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Wed Apr 08 19:38:02 2015 -0700"
      },
      "committer": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Wed Apr 08 19:38:02 2015 -0700"
      },
      "message": "Cleaning up and enhancing driver subsystem and the flow objective subsystem.\n\nChange-Id: Ica600ef1aaa46d19e764cd7a197454a4e0f85a08\n"
    },
    {
      "commit": "553db17965719b83775e29418884195b55dd6343",
      "tree": "4c97cc9bd8ac0e52524780551166e369399e8d02",
      "parents": [
        "6148f36f161e54ce313ad62f9daf3fdbc79af479"
      ],
      "author": {
        "name": "Murat Parlakisik",
        "email": "murat.parlakisik@argela-usa.com",
        "time": "Wed Apr 08 03:29:04 2015 -0700"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Thu Apr 09 01:23:48 2015 +0000"
      },
      "message": "Shared system services configurability (ONOS-1304)\n\nChange-Id: I42210128fd973f16bb07955175d8e361858a9034\n"
    },
    {
      "commit": "e28ae4c8017a822b3637f64effc1017b6b5dbe42",
      "tree": "732a209e3a2dcdb17a72d57f2c948da901dd1e43",
      "parents": [
        "264c5ec59082b67e13dc88b4e76f98728231e926"
      ],
      "author": {
        "name": "Pingping Lin",
        "email": "pingping@onlab.us",
        "time": "Fri Mar 13 11:37:03 2015 -0700"
      },
      "committer": {
        "name": "Pingping Lin",
        "email": "pingping@onlab.us",
        "time": "Tue Apr 07 12:31:07 2015 -0700"
      },
      "message": "sdn-ip reactive routing\n\n   This module can handle 3 cases:\n   (1) one host wants to talk to another host, both two hosts are in SDN network.\n   (2) one host in SDN network wants to talk to another host in Internet.\n   (3) one host from Internet wants to talk to another host in SDN network.\n   In all cases, we use MultiPointToSinglePointIntent.\n\nChange-Id: I80dd954bd608e52b45b993f3c27e67636a7105d9\n"
    },
    {
      "commit": "346e8258a2dc56d638e3db4991a721041c51d578",
      "tree": "f7d682daa3cab315d45bd13bac4ec24f783d6a23",
      "parents": [
        "e586b799fbd80867ee42d7fa772f0fbb1a890512"
      ],
      "author": {
        "name": "HIGUCHI Yuta",
        "email": "y-higuchi@ak.jp.nec.com",
        "time": "Thu Mar 26 16:33:44 2015 -0700"
      },
      "committer": {
        "name": "HIGUCHI Yuta",
        "email": "y-higuchi@ak.jp.nec.com",
        "time": "Thu Mar 26 16:33:44 2015 -0700"
      },
      "message": "Use ephemeral port for acceptor loop test to avoid conflict.\n\nChange-Id: Ia7a16b320ce65b6e480049c1d1116ee704567fa2\n"
    },
    {
      "commit": "cd48bfd694249c9852d94583f74a39078e12f4cd",
      "tree": "b185602e24de99c72ab62cf71b194c209116b9da",
      "parents": [
        "b5dcc51d10dcfcc9e06e9c05d88f06a9025b48a5"
      ],
      "author": {
        "name": "Madan Jampani",
        "email": "madan@onlab.us",
        "time": "Wed Mar 25 18:06:22 2015 -0700"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Thu Mar 26 03:08:48 2015 +0000"
      },
      "message": "Make sure message handling executor references are appropriately managed when we modify the service configuration\n\nChange-Id: I56866dd8c3359de0fcf827fc247024c65a63c5c2\n"
    },
    {
      "commit": "7061acd6daf5810f11fd3077aa6739dccc77f455",
      "tree": "13072922b8b63040e09f1e62121777948b748c8c",
      "parents": [
        "7c98051892d9b8647fa5f3831098761a12c703bc"
      ],
      "author": {
        "name": "Jonathan Hart",
        "email": "jono@onlab.us",
        "time": "Wed Mar 04 13:15:32 2015 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Wed Mar 25 20:58:37 2015 +0000"
      },
      "message": "Unit tests for PartitionManager\n\nChange-Id: I721ed6489ce19cb78ce9e2f150dfed90882f3b0e\n"
    },
    {
      "commit": "67c22726a25e0e411a222429589240d65cd50453",
      "tree": "d831486a559cd1e1faca0446cff1adbeb9fc36cb",
      "parents": [
        "6ba7efceaffebd9fc894c6574051eb40696654bf"
      ],
      "author": {
        "name": "Ray Milkey",
        "email": "ray@onlab.us",
        "time": "Mon Mar 09 15:48:57 2015 -0700"
      },
      "committer": {
        "name": "Ray Milkey",
        "email": "ray@onlab.us",
        "time": "Mon Mar 23 20:40:33 2015 +0000"
      },
      "message": "ONOS-1242 - REST API for Withdrawing Intents\n\n- upgraded Jersey to 1.19 for some REST bug fixes for Java 8\n- consolidated references to Jersey by using the dependecy\n  management plugin in the top level pom file.\n\nChange-Id: Ic027f97f8fce6c673c9f2c02a92abaeedfedeb97\n"
    },
    {
      "commit": "d7b4584aae785c4800ee55a2c6ea88cbd5a1476b",
      "tree": "8032cc0eaa3ef95feeb33f475f98c7f3d0d3d600",
      "parents": [
        "023a1c72d6598e5048a306e7d916d695f54432f9"
      ],
      "author": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@onlab.us",
        "time": "Fri Mar 20 15:40:59 2015 -0700"
      },
      "committer": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@onlab.us",
        "time": "Fri Mar 20 15:40:59 2015 -0700"
      },
      "message": "Added empty space after \u0027.\u0027 between two sentences.\n\nChange-Id: I6fa88561264bffa2df568a47a9e562c4e4fe7df6\n"
    },
    {
      "commit": "945e7b0809eb174c2258bc6b1b5a0d94f44a0f27",
      "tree": "6b46572c9b22efca2eb86ade6c3b56dc20a494b9",
      "parents": [
        "4db8dce997591dcdfe4545fc14c6e75f3230e194"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Wed Mar 18 14:23:53 2015 -0700"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Wed Mar 18 23:15:12 2015 +0000"
      },
      "message": "Cleaning up documentation and some white-space.\n\nChange-Id: I3d8ba130f0d7b99c15e52a95a021a8a81e1a1a5f\n"
    },
    {
      "commit": "af1042df9a567e8306b3d4fe4e8a8acf3b54c081",
      "tree": "eaf13b9b19b12465d8cf01522ddfa0818666b437",
      "parents": [
        "eaa47be885f6ec9fabda00299c0eb30a594405c3"
      ],
      "author": {
        "name": "Murat Parlakisik",
        "email": "murat.parlakisik@argela-usa.com",
        "time": "Sat Mar 14 01:08:29 2015 -0700"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Wed Mar 18 16:24:36 2015 +0000"
      },
      "message": "Shared Executors implementation , (ONOS-1302)\nChange-Id: I7fe5e415bf605c198d3bb42328477aef396c5c89"
    },
    {
      "commit": "6ea48a22fe048509ecc17f4bc6cce73be01c4340",
      "tree": "cbac5f8790f2c58ad2d07f851a0f2bdf856c106e",
      "parents": [
        "91d9019b24c8c683325e762661bd975a69302508"
      ],
      "author": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Tue Mar 17 20:07:20 2015 -0700"
      },
      "committer": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Tue Mar 17 20:07:20 2015 -0700"
      },
      "message": "Starting snapshot 1.2.0-SNAPSHOT\n\nChange-Id: Iffa1055c22448849353ede6581c277f4d3de78d8\n"
    },
    {
      "commit": "91d9019b24c8c683325e762661bd975a69302508",
      "tree": "9c69d0d3531a9ae47f42b69ae224bdb61f42982e",
      "parents": [
        "2a784fcc536c5c9332201e232624360f692e37ad"
      ],
      "author": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Tue Mar 17 19:44:46 2015 -0700"
      },
      "committer": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Tue Mar 17 19:45:58 2015 -0700"
      },
      "message": "Tagging ONOS Blackbird release: 1.1.0\n\nChange-Id: Iee1accb8f83e03a1c4b2250d36d48aefd6383c97\n"
    },
    {
      "commit": "49115e931a61a24816b8c9e001423fc8a62fd191",
      "tree": "59d1c7a26d712691478b4df5b15158abf0fa5a6d",
      "parents": [
        "4f5a98a3604b931dbe56c181d49f7098311f2fb0"
      ],
      "author": {
        "name": "Madan Jampani",
        "email": "madan@onlab.us",
        "time": "Sat Mar 14 10:43:33 2015 -0700"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Sun Mar 15 21:40:47 2015 +0000"
      },
      "message": "Changed netty message type to String from Long to avoid potential collisions\n\nChange-Id: I42014a920917a8022744ae15a9fefa6bae6890a7\n"
    },
    {
      "commit": "1545b1ef0874b8a7099bbaf17044a57f3103dccb",
      "tree": "8cf046979e98f2f0bdf2a683429cb9299a7c2840",
      "parents": [
        "20fa3a45f9e8b7429187473044c434bdeae80870"
      ],
      "author": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Wed Mar 11 16:38:23 2015 -0700"
      },
      "committer": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Wed Mar 11 16:38:23 2015 -0700"
      },
      "message": "Starting snapshot 1.1.0-SNAPSHOT\n\nChange-Id: I8caca4df60027426c18b51c1b35c313fe9ac1c10\n"
    },
    {
      "commit": "20fa3a45f9e8b7429187473044c434bdeae80870",
      "tree": "91f74fc7da013c419f23185b937616798c3c956a",
      "parents": [
        "3b9ad04d723bc777319931786b39ee7ef879c87b"
      ],
      "author": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Wed Mar 11 16:23:07 2015 -0700"
      },
      "committer": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Wed Mar 11 16:23:07 2015 -0700"
      },
      "message": "Tagging 1.1.0-rc2\n\nChange-Id: I1fa0feb1b790f79baa465fd82965433e109b34b2\n"
    },
    {
      "commit": "0811bdd7035741182f947a45b95c2fd635fb4bcd",
      "tree": "4c9c58c21f4d2ce1aa999aac0d1aa5a55b382204",
      "parents": [
        "3181de3b02586a4ce3a7aabf5119c271a7a34427"
      ],
      "author": {
        "name": "Ray Milkey",
        "email": "ray@onlab.us",
        "time": "Wed Mar 11 10:21:55 2015 -0700"
      },
      "committer": {
        "name": "Ray Milkey",
        "email": "ray@onlab.us",
        "time": "Wed Mar 11 17:31:13 2015 +0000"
      },
      "message": "Disable some brittle tests that are causing problems with Jenkins\n\nChange-Id: I2f79a728545d50f9458048a5980261e84e112f2f\n"
    },
    {
      "commit": "6519e6f1defc10c72f4bcaa5c869ba1d554b203a",
      "tree": "2e0b5b691e890e733014161b6744d1f2e296fb5a",
      "parents": [
        "85c2926df210c0ba2d6fc0ec76167aab2110ecdc"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Wed Mar 11 02:29:31 2015 -0700"
      },
      "committer": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Wed Mar 11 09:12:41 2015 -0700"
      },
      "message": "Making number of components configurable using the central component configuration subsystem.\n\nChange-Id: Ia32c51480913689339a766d9849e792d62f7d133\n"
    },
    {
      "commit": "87dd930f2edf1c4d18f63d6a9f6ae48b864bacb0",
      "tree": "b96c4e3a26762d11060b1726a8b43ab401b9ed74",
      "parents": [
        "34ffe727537d5943547b618793d5929c861aca15"
      ],
      "author": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@onlab.us",
        "time": "Tue Mar 10 13:53:24 2015 -0700"
      },
      "committer": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@onlab.us",
        "time": "Tue Mar 10 13:53:24 2015 -0700"
      },
      "message": "Use a cleaner mechanism to test whether an IP address or prefix\nis IPv4 or IPv6.\n\nChange-Id: Ia88f76be87a30573a50eeeedb78d98713ac1ae27\n"
    },
    {
      "commit": "34ffe727537d5943547b618793d5929c861aca15",
      "tree": "eea69ecc39440f67b97454bd9c0f518910ebc2f4",
      "parents": [
        "70761df12c4435ea420ffd161ae15cb37f6e5965"
      ],
      "author": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@onlab.us",
        "time": "Tue Mar 10 12:48:55 2015 -0700"
      },
      "committer": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@onlab.us",
        "time": "Tue Mar 10 20:28:29 2015 +0000"
      },
      "message": "Added methods to test whether an IP address/prefix is IPv4 or IPv6:\n  IpAddress.isIp4()\n  IpAddress.isIp6()\n  IpPrefix.isIp4()\n  IpPrefix.isIp6()\n\nAlso, added the corresponding unit tests.\n\nChange-Id: I2b1f08501c94d61f75b15f2c6977c0349e313ebd\n"
    },
    {
      "commit": "5eaf033c6b6bd7cca40efcc022a3c6fb47e52224",
      "tree": "6404752199bbae3f9c9e3d7c0aec347224fecc10",
      "parents": [
        "6d697f185a34735f93f1d4fd0515400b6b8a7f71"
      ],
      "author": {
        "name": "sangho",
        "email": "sangho@onlab.us",
        "time": "Mon Mar 09 15:08:12 2015 -0700"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Tue Mar 10 18:30:56 2015 +0000"
      },
      "message": "Add ICMP handler in bgp router app\n\nChange-Id: I22a1dcdf5285e08c691767eb1ca41437e7ce1874\n"
    },
    {
      "commit": "3553b309753b932139cc0e818680b8c54e1a1b16",
      "tree": "43d6a2c1fbc3ea790ba05769229da9f3630e50ed",
      "parents": [
        "9730ec9da05abce3d7fab10d9aee41fd13ed68ce"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Sat Mar 07 14:49:43 2015 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Mon Mar 09 01:05:47 2015 +0000"
      },
      "message": "ONOS-1235 Enhanced UI extension mechanism to provide message handler factory and took a first cut at the core UiWebSocket mechanism.\n\nChange-Id: Iaad080c5371c3aa5e24a23489b1679d373ec0720\n"
    },
    {
      "commit": "480adad4a0dbe7d7abe58686df38592e97693917",
      "tree": "63e84ab3e5ee26be7433329bc136d8a06aa58605",
      "parents": [
        "375573b276eebc47941275a449689d9564f1e1a5"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Fri Mar 06 10:27:09 2015 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Fri Mar 06 19:10:23 2015 +0000"
      },
      "message": "Fixing uncaught exception handler and adding a test.\n\nChange-Id: I0861b0200bb39a14c39746ae7b72a1e21f957e35\n"
    },
    {
      "commit": "5eb77c88b6865ae8b848e0e3734f593339f6cdc7",
      "tree": "14afc328cfdec48355f773ada945a46e4fa7c2a1",
      "parents": [
        "233a18aeebebee7afa8acfaa4e7494759544581b"
      ],
      "author": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Mon Mar 02 18:09:39 2015 -0800"
      },
      "committer": {
        "name": "Ray Milkey",
        "email": "ray@onlab.us",
        "time": "Fri Mar 06 17:01:29 2015 +0000"
      },
      "message": "Updates to ECM interface\n\nChange-Id: Ie0cae42ac2b361cf3b94e5047c157cb0945f4209\n\nAdding origin to IntentData and use it to pick GossipIntentStore peer\n\nChange-Id: I50e9621a69a35ec02b8c8dd79cc926591e5a73e9\n"
    },
    {
      "commit": "233a18aeebebee7afa8acfaa4e7494759544581b",
      "tree": "b3c4cd841ae74088029dcc89df3b8297415531f1",
      "parents": [
        "fc751f44d1c1ec35f706d9bba3a371aea7e5bf16"
      ],
      "author": {
        "name": "Jonathan Hart",
        "email": "jono@onlab.us",
        "time": "Mon Mar 02 17:24:58 2015 -0800"
      },
      "committer": {
        "name": "Ray Milkey",
        "email": "ray@onlab.us",
        "time": "Fri Mar 06 08:53:31 2015 -0800"
      },
      "message": "Don\u0027t run anti-entropy when under high load\n\nChange-Id: I9e480708b9eced73da98e5c4cb27a18aeb08f09a\n"
    },
    {
      "commit": "3e2b651d939a854d3745fb427b72cbae142494e8",
      "tree": "c0483d04ecbc807d65c7aba068acc4ce6cf6be70",
      "parents": [
        "839a8a90b780fa74b1524e827bcc83612ac23c2c"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Thu Mar 05 09:25:03 2015 -0800"
      },
      "committer": {
        "name": "Ray Milkey",
        "email": "ray@onlab.us",
        "time": "Thu Mar 05 19:29:06 2015 +0000"
      },
      "message": "Fixing javadocs.\n\nChange-Id: I100488664315af9c1b7faffab2d66ea3263d57ca\n"
    },
    {
      "commit": "ba47223f6f3ec97084198e5c411dc38599dea187",
      "tree": "2451b633a5ef905ea611c46f6cef3c7793890ed9",
      "parents": [
        "e649c750d2d2f406a92376c110a731076b237f7f"
      ],
      "author": {
        "name": "Madan Jampani",
        "email": "madan@onlab.us",
        "time": "Wed Mar 04 13:00:50 2015 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Thu Mar 05 06:55:13 2015 +0000"
      },
      "message": "Bypass netty stack for messages that are sent to self\n\nChange-Id: Ifb1fd610892bd22a291cda472a8a5ef7a1dcfe6d\n\nManual serde for ClusterMessage to avoid one additional kryo serialization overhead for each message sent/received\n\nChange-Id: I08d9a2c10403b0e9e9e1736c6bd36fa008bb8db0\n"
    },
    {
      "commit": "30a57f891a259148a507849da176751cb6ea551b",
      "tree": "d5055e787506a6bf9da532a5ff2327c357cc493f",
      "parents": [
        "621c6ab1b928a3ad688cc11da89b6dfcb182f8f6"
      ],
      "author": {
        "name": "Madan Jampani",
        "email": "madan@onlab.us",
        "time": "Mon Mar 02 12:19:41 2015 -0800"
      },
      "committer": {
        "name": "Madan Jampani",
        "email": "madan@onlab.us",
        "time": "Mon Mar 02 23:26:04 2015 +0000"
      },
      "message": "Added creationTime to Versioned object. This enables supporting a electedTime in leadership, which in turn helps us track how stable leadership terms are.\n\nChange-Id: Ib051027625324646152ed85535ba337e95f8a061\n"
    },
    {
      "commit": "266ac66643ed75a03168dd0e14f162153614a655",
      "tree": "184794c6da71f17212bca5880c5dd01621078d90",
      "parents": [
        "d4cd0bfe1fd2976ba6d84ba3090d11075c5680e1"
      ],
      "author": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Sat Feb 28 23:14:38 2015 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Sun Mar 01 07:36:09 2015 +0000"
      },
      "message": "Starting snapshot 1.1.0-SNAPSHOT\n\nChange-Id: I2abf73c248c04f0559f97b313be034b48761695a\n"
    },
    {
      "commit": "352236e289ef66b6b0d8769c7a75a1f8bec4cb2c",
      "tree": "f09dffd347e970db07b205f13137dc05e0f47bd5",
      "parents": [
        "248e87b160330e90f8226c2e1afda187cc700334"
      ],
      "author": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Sat Feb 28 22:34:17 2015 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Sun Mar 01 07:36:08 2015 +0000"
      },
      "message": "Tagging 1.1.0-rc1\n\nChange-Id: I9c95f8309e1c98bc1a25eeaad1962b4d28257261\n"
    },
    {
      "commit": "c6713a83a32758c085ff3bf3707d84f9f47c9fe3",
      "tree": "8107936aae90edea49589d0882dfc0769a820289",
      "parents": [
        "18489171d823f36ac1b85000d1c38f5af9f25d6b"
      ],
      "author": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Tue Feb 24 11:55:48 2015 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Sat Feb 28 01:29:50 2015 +0000"
      },
      "message": "Adding BoundedThreadPool and BlockingBoolean\n\nUpdating EventuallyConsistentMap to use BoundedThreadPool for broadcast threads,\nand disabling anti-entropy for now.\n\nChange-Id: Id1bfcdaf1d0a19745fe7336e4ac9eaf649871d5d\n"
    },
    {
      "commit": "52860be06934cfe78558e6199eed6365fef05254",
      "tree": "ff3cdda5439ec9409b267918f9ed7c40ead5f497",
      "parents": [
        "0cb00679220f8cb619c362cdb673f7693f9bc5eb"
      ],
      "author": {
        "name": "Madan Jampani",
        "email": "madan@onlab.us",
        "time": "Fri Feb 27 12:52:37 2015 -0800"
      },
      "committer": {
        "name": "Madan Jampani",
        "email": "madan@onlab.us",
        "time": "Fri Feb 27 12:52:37 2015 -0800"
      },
      "message": "Debug log level where appropriate + Throwing an exception where appropriate\n\nChange-Id: Ica18c122c8a2cb8286d4f48c017a06ffe10452e1\n"
    },
    {
      "commit": "c6aef928c1c15301a2a32904d699d559586dca0a",
      "tree": "1b104cc1fc22777f7909ceff0df5a6c0d95e2921",
      "parents": [
        "eeb95106f8db22b42da0b11f6a56bb387ee61742"
      ],
      "author": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@onlab.us",
        "time": "Fri Feb 27 10:23:04 2015 -0800"
      },
      "committer": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@onlab.us",
        "time": "Fri Feb 27 10:23:04 2015 -0800"
      },
      "message": "Fix a bug when serliazing ICMPv6 packets and the IPv6 packet contains\nhop-by-hop options.\n\nThis fixes ONOS-1201\n\nChange-Id: I736f96268695dd7e74c99631f25273d1b34d8a6c\n"
    },
    {
      "commit": "1058080de192b193a440c2d860ee59835e62b9a5",
      "tree": "1aa101ffd20a7a619dd2e407cf772dbf0c07e212",
      "parents": [
        "3a6f7cdc87ca47fa6152563b4b51be9a88fe564c"
      ],
      "author": {
        "name": "alshabib",
        "email": "alshabibi.ali@gmail.com",
        "time": "Wed Feb 18 18:30:33 2015 -0800"
      },
      "committer": {
        "name": "Jonathan Hart",
        "email": "jono@onlab.us",
        "time": "Thu Feb 26 03:31:44 2015 +0000"
      },
      "message": "WIP: Started implementing static flows for corsa vanderweken pipeline.\n\nModified to not use Corsa driver by default.\n\nChange-Id: If8df5769cf084346121d34bf4490f578e6b6f2d0\n"
    },
    {
      "commit": "459bddf56a719a00211e558973000ceadd4d403e",
      "tree": "a5735d0bc71452dde7c364ce8d801ed3161ab166",
      "parents": [
        "dc2e7c26f904b915f5d69bff889536a442a8bc27"
      ],
      "author": {
        "name": "HIGUCHI Yuta",
        "email": "y-higuchi@ak.jp.nec.com",
        "time": "Tue Feb 24 14:57:08 2015 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Tue Feb 24 23:46:06 2015 +0000"
      },
      "message": "Fix type mismatch\n\nChange-Id: I26d094c4ae0d7c6699e49a0aa9885bd4d6d89e33\n"
    },
    {
      "commit": "dbeab4cc33e3779a7698a6a1f500fa8484a17597",
      "tree": "481c7777848bdc5488ae85f55d1b047a9f0838f7",
      "parents": [
        "5a7787a62c6b7716629411bf48d7b2ff72fe5082"
      ],
      "author": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@onlab.us",
        "time": "Mon Feb 23 09:37:49 2015 -0800"
      },
      "committer": {
        "name": "Ray Milkey",
        "email": "ray@onlab.us",
        "time": "Mon Feb 23 22:30:55 2015 +0000"
      },
      "message": "Fix a bug when using IpPrefix.contains() and we are mixing IP address\nfamilies.\n\nThe bug (an exception) is triggered when internally we try to create\na masked IPv4 address with a very long IPv6-derived mask length.\n\nAdded the corresponding unit tests.\n\nChange-Id: Id835d27ab3ff38dcf7a1387ff32ccb701aa2fe11\n"
    },
    {
      "commit": "7887b477ce3f82a74e7bb9f06eda2bbbfd0d6ffd",
      "tree": "c27a09b9a7a12deaab291e120f1ffc9c0c5427c2",
      "parents": [
        "d450da9d1896871f8db18c6b4af63e6a1cf5f1aa"
      ],
      "author": {
        "name": "Yuta HIGUCHI",
        "email": "y-higuchi@ak.jp.nec.com",
        "time": "Mon Feb 23 11:08:36 2015 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Mon Feb 23 21:45:52 2015 +0000"
      },
      "message": "Exclude generated fields from ImmutableClass check\n\n- Eclipse sometimes auto-generates switch table, which fails the immutability unit tests.\n  Ignore field name starting with _ or $, which tends to be used for auto-generated names.\n\n----\nFailed tests:\n  IpAddressTest.testImmutable:41\nExpected: is \"a properly defined immutable class\"\n    but : was \"a field named \u0027$SWITCH_TABLE$org$onlab$packet$IpAddress$Version\u0027 that is not final\"\n  IpPrefixTest.testImmutable:39\nExpected: is \"a properly defined immutable class\"\n    but : was \"a field named \u0027$SWITCH_TABLE$org$onlab$packet$IpAddress$Version\u0027 that is not final\"\n----\n\nChange-Id: Ibca5f61b9ca6b6006424a4288f1863b6e60ad484\n"
    },
    {
      "commit": "2af244a9770f85e802bca4a22982fe244c90604e",
      "tree": "7ebd3d30b89ba6d53b9d194c6efc99de8e4f0841",
      "parents": [
        "a853709a6b1e9a671ff484b10a23570865d182b6"
      ],
      "author": {
        "name": "Madan Jampani",
        "email": "madan@onlab.us",
        "time": "Sun Feb 22 13:12:01 2015 -0800"
      },
      "committer": {
        "name": "Madan Jampani",
        "email": "madan@onlab.us",
        "time": "Mon Feb 23 20:37:25 2015 +0000"
      },
      "message": "Never process incoming messages on the netty event loop thread pool.\nCurrently in a lot of places we are deserializing incoming messages on this threadpool and that could be significantly limiting throughput.\n\nChange-Id: I83eb7e91004cea4addb28bc28f27e50de10028fe\n"
    },
    {
      "commit": "75af68aad9a37a2af1e688a08eb6ab3b02aaff19",
      "tree": "ccf9c4085b82a2441aafd46416c0858a1ed90d69",
      "parents": [
        "a132e3acd3ce9f39526c18095a30c350a10d25fd"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Sun Feb 22 12:13:52 2015 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Sun Feb 22 20:41:54 2015 +0000"
      },
      "message": "Enhancing accumulator to allow subclasses to indicate whether they are ready for the batch to be processed. Default behaviour returns true.\n\nChange-Id: I53a3ffc3ecd75ed2607f155a61971e05a6009a66\n"
    },
    {
      "commit": "2e5f87b548d20e077895c71c739ee1506d06eeab",
      "tree": "9b9fb97a88fcf494fbd30db03fa8ed9294ad70f8",
      "parents": [
        "d32bfdcaa9ca5e7712ae725496868c3af624da86"
      ],
      "author": {
        "name": "Madan Jampani",
        "email": "madan@onlab.us",
        "time": "Sun Feb 22 10:37:15 2015 -0800"
      },
      "committer": {
        "name": "Madan Jampani",
        "email": "madan@onlab.us",
        "time": "Sun Feb 22 10:37:15 2015 -0800"
      },
      "message": "Limit the amont of work that happens on netty event loop threads.\nCurrently we are kryo serializing/deserializing the message envelope which can potentially limit throughput.\n\nChange-Id: I0ae9dab53bbb765b7618ceaefda1edf4f77b0b59\n"
    },
    {
      "commit": "8dc820868cf886719198f401a0e111b8f629d1ac",
      "tree": "c504445f76a6012e5d9e9dc9277cb9d7f4a454d4",
      "parents": [
        "bf23c550f1ea231f9b97196aebb01402c19d8a90"
      ],
      "author": {
        "name": "Ray Milkey",
        "email": "ray@onlab.us",
        "time": "Fri Feb 20 16:22:38 2015 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Sat Feb 21 05:52:36 2015 +0000"
      },
      "message": "Fix some compiler warnings about unchecked types\n\nChange-Id: Ib360aa05fd0e194a65bbc0b624447e4bdb4ced93\n"
    },
    {
      "commit": "bf23c550f1ea231f9b97196aebb01402c19d8a90",
      "tree": "3e220c7d0a03cd2633c8fd538f09ece91b9d565f",
      "parents": [
        "0249b5377d6a64bb12b51b36f76160ffd4906c6a"
      ],
      "author": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@onlab.us",
        "time": "Fri Feb 20 14:20:30 2015 -0800"
      },
      "committer": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@onlab.us",
        "time": "Sat Feb 21 02:49:01 2015 +0000"
      },
      "message": "Added new methods IPv4.getDscp() / IPv4.setDscp()\nand IPv4.getEcn() / IPv4.setEcn().\n\nThose can be used to get/set the DSCP and ECN bits in the IPv4 header\nwithout explicit bit manipulation at the caller.\n\nChange-Id: Ia7c5779abae5c4fc7a343e3f7ef3355eb7e86e3d\n"
    },
    {
      "commit": "041515f5f23ddab3efc7d6517bb47ead2dc47218",
      "tree": "b79cbc303660a8e1ceece6fd90626638b9c975c8",
      "parents": [
        "33bd2302ceea5c2ebca72d45368de94efa88ddc5"
      ],
      "author": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Thu Feb 19 15:36:17 2015 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Thu Feb 19 23:50:59 2015 +0000"
      },
      "message": "temporary fix for ONOS-1144: slow IPAddress.toString()\n\nChange-Id: Ia7b9a71bb8c5b90dbc6256c35e8aa5a6567299c8\n"
    },
    {
      "commit": "ecb63c5a01aae16d673d30a7b52032528f326012",
      "tree": "36b33ce4a43f286fa9009eb5ca0870f320754e39",
      "parents": [
        "8546348bba3904589de6ffce50251b48e3c3c432"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Thu Feb 19 10:03:48 2015 -0800"
      },
      "committer": {
        "name": "Ray Milkey",
        "email": "ray@onlab.us",
        "time": "Thu Feb 19 18:26:00 2015 +0000"
      },
      "message": "Updated accumulator documentation and refactored names to remove the event heritage.\n\nChange-Id: I2238ab1215281702e670a406fb901ba8a4ef85ce\n"
    },
    {
      "commit": "a2626ef9823b64d2925b859fc234b7bd92820da9",
      "tree": "c871a9f5bf4743e70638147803959792b0379468",
      "parents": [
        "4b2ba5f8bb15c3254ea0cf2125be4cc759ed365c"
      ],
      "author": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@onlab.us",
        "time": "Wed Feb 18 18:33:25 2015 -0800"
      },
      "committer": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@onlab.us",
        "time": "Thu Feb 19 17:17:56 2015 +0000"
      },
      "message": "Implemented a mechanism to easily add and access Neighbor Discovery protocol\npacket options.\n\nFixes ONOS-1011\n\nChange-Id: I94daa3f3c1297fb9a7b44901927738a29aff030a\n"
    },
    {
      "commit": "6b6d0c193c3b26b3b4a944fd02666dcebb2569b7",
      "tree": "d08b80bdc34c4470bd93d0ace1b4588a356e9ef6",
      "parents": [
        "1fdfacd1f1da3488a812f43c43c0c0a51b65db80"
      ],
      "author": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Wed Feb 18 20:53:18 2015 -0800"
      },
      "committer": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Wed Feb 18 21:04:55 2015 -0800"
      },
      "message": "AbstractAccumulator: synchronized add and null check\n\nChange-Id: I2999311d19ab36c17413ebc93398483a7d012714\n"
    },
    {
      "commit": "c13b90af1a2bd46430aa1043429badceb473fca7",
      "tree": "491d61ee1b23c0ce655dbf7ff1098b46e4761616",
      "parents": [
        "2d7c50d5727a008c6d26e2a22b1b487f12a39a18"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Wed Feb 18 18:19:55 2015 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Thu Feb 19 02:34:06 2015 +0000"
      },
      "message": "Added thread-group name as a prefix to the thread-group pattern.\n\nChange-Id: Id804ba00f2391d18a1bc4ea06cd39934208d6c18\n"
    },
    {
      "commit": "62ad95f3f1b7dfab11ba291dc25eb8c95d80dcc8",
      "tree": "353d97ae219a35b2e59f7ffda15bcaedbb7d9feb",
      "parents": [
        "36a8a6e8ef5934b3ef3e88d1e11db2756cd8ddc5"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Wed Feb 18 12:11:36 2015 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Wed Feb 18 21:33:52 2015 +0000"
      },
      "message": "Added ability to upload apps as both app.xml or app.zip.\nAdded a number of app.xml files for built-in apps.\nAdded ability to install \u0026 activate in one command.\n\nChange-Id: I3fa5fa487ef76d9fe3da4d6dce8045d538cba423\n"
    },
    {
      "commit": "9c17a6d72a3e6dbd1b85f3494db0358c88dc070c",
      "tree": "0efe4e4f89c7838dd497d0fbb2534eafae649209",
      "parents": [
        "da36c40e9d2d1229c8fbc63ef96b6927faa42ebf"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Tue Feb 17 23:36:43 2015 -0800"
      },
      "committer": {
        "name": "Ray Milkey",
        "email": "ray@onlab.us",
        "time": "Wed Feb 18 19:04:51 2015 +0000"
      },
      "message": "Adding ability to easily create name thread factories with threads belonging to hierarchical thread groups.\n\nChange-Id: Iaab3251c13e14b73c54a8edc945f5aa476a7ca54\n"
    },
    {
      "commit": "3ebe170d8707cc559e786e075f0e1f74b53b142c",
      "tree": "02b38c33147709a53c35418e831fbf61672f27e3",
      "parents": [
        "e97fec4ffba7ffaa80222dd9e10da53dd3185995"
      ],
      "author": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@onlab.us",
        "time": "Tue Feb 17 09:53:17 2015 -0800"
      },
      "committer": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@onlab.us",
        "time": "Tue Feb 17 21:13:24 2015 +0000"
      },
      "message": "MPLS-related bug fixes:\n - Use subtype() instead of type() inside method\n   ModMplsLabelInstruction.toString()\n - Check whether the MPLS value is negative inside the MplsLabel()\n   constructor.\n\nChange-Id: I770194774219f0c919474928803e078226f2005d\n"
    },
    {
      "commit": "4b6019e44963c8ab9c7cc55794b1faa7150ea417",
      "tree": "0fca22d69e0153c2b7c10b66a4ff2df13409b2f1",
      "parents": [
        "e1bda3f157d0fa208f5684384afe9e20faf612a9"
      ],
      "author": {
        "name": "Michele Santuari",
        "email": "michele.santuari@create-net.org",
        "time": "Fri Dec 19 11:31:45 2014 +0100"
      },
      "committer": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Sat Feb 14 10:00:48 2015 +0000"
      },
      "message": "ONOS-631 #Initial MPLS intent implementation\n\nChange-Id: I6f906b953f06f395cc67e612648802e333c0e581\n"
    },
    {
      "commit": "e2eac102fc3f47c06c0cc1230dde59f6e4255328",
      "tree": "500dd3b72a6272de657524e622669d13de6a43be",
      "parents": [
        "9288836389c06ecc92aeacd37e55724f7c5d7a7d"
      ],
      "author": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Thu Feb 12 18:30:22 2015 -0800"
      },
      "committer": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Fri Feb 13 14:16:23 2015 -0800"
      },
      "message": "Using replace instead install when there is already an intent\n\nFixes the problem of flows being left on the data plane\n\nChange-Id: Iec3db8b460123f2744a57d8c08d14c8effe9ec34\n"
    },
    {
      "commit": "db15b04081d9181b477f5f150118cd3801079aff",
      "tree": "6885510004ec203735caed3c7e097d7b34089df1",
      "parents": [
        "098da072fe85a5ace1205478bec5e5ffa9dc55dd"
      ],
      "author": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Wed Feb 04 14:59:28 2015 -0800"
      },
      "committer": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Fri Feb 13 14:10:46 2015 -0800"
      },
      "message": "started work to parrallize compliation and \"installation\"\n\nChange-Id: I2e7f03b9f8074ef6f9e1c186009ed3cad6980b49\n"
    },
    {
      "commit": "cff03322bf8eac48174cc2ce11a8db574570d260",
      "tree": "3d97037db629f9477a651848d236ff984f66b5f5",
      "parents": [
        "9d810f6bed01f6c40c265b150f27b6ea55e2eabb"
      ],
      "author": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Tue Feb 03 15:28:59 2015 -0800"
      },
      "committer": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Fri Feb 13 13:59:19 2015 -0800"
      },
      "message": "Started refactoring Intent Manager\n\nIntroduced IntentData and reworked APIs\n\nChange-Id: I1fa437ceb1b72c4017ac2da1573bfbeb64c0632a\n"
    },
    {
      "commit": "a22b970637e9ddbbe8fd0b51a93e6f1154ba86da",
      "tree": "c19e9171cf07ebf65cac82255453aa8949f7943f",
      "parents": [
        "9322445f119b3fe2642f307e08b74710e2d77e1e"
      ],
      "author": {
        "name": "Dusan Pajin",
        "email": "dusan.pajin@amres.ac.rs",
        "time": "Thu Feb 12 16:25:23 2015 +0100"
      },
      "committer": {
        "name": "Ray Milkey",
        "email": "ray@onlab.us",
        "time": "Thu Feb 12 22:25:31 2015 +0000"
      },
      "message": "ProxyArpManager - fix IPv6 ND Adv issue with Option fields and ARP/NDP Reply\nwith first IP address from Host service\n\nThis fixes ONOS-1010\n\nAlso, add protocol-related constants to class NeighborAdvertisement.\n\nChange-Id: Iacf9e48a8a03a86e1cc4e89e7e2b2b4ccc4a7e3a\n"
    },
    {
      "commit": "0a0b9e46bfe73b10170128de1fbdfa1d43a9b8fa",
      "tree": "5095f894fe6a3c282f8b51ac1159da0d4ff31bcb",
      "parents": [
        "506ce0aa50dad0051c7fe4e5bf8e1b8c91c249d8"
      ],
      "author": {
        "name": "Yuta HIGUCHI",
        "email": "y-higuchi@ak.jp.nec.com",
        "time": "Wed Feb 11 16:57:12 2015 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Thu Feb 12 01:43:12 2015 +0000"
      },
      "message": "Log more info when inter-Node messaging fails.\n\nChange-Id: Ifd749a3023854d688a675c7279c27868b8bed436\n"
    },
    {
      "commit": "a7a4e5d2b5f4c051752d52ed60f3f9e1bfe6ed4c",
      "tree": "817a0c9503e06b2fff76b625ab95b3d3fb9c4a8b",
      "parents": [
        "8f31b7b41f36f26ea128e7144b909f255a82de6f"
      ],
      "author": {
        "name": "Yuta HIGUCHI",
        "email": "y-higuchi@ak.jp.nec.com",
        "time": "Wed Feb 11 14:20:58 2015 -0800"
      },
      "committer": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@onlab.us",
        "time": "Wed Feb 11 23:51:32 2015 +0000"
      },
      "message": "move TestServiceDirectory from main -\u003e test\n\nChange-Id: If2de618a86757e74b6e13d195403e0680ed53459\n"
    },
    {
      "commit": "79f515f50a2d031bb6873d87fb60f7cb20e4aedd",
      "tree": "83084987f9317010a40edd38ea166c46be4ed5fd",
      "parents": [
        "802920559dbdd5fa83d7ab9e8da8f4f9b0826a25"
      ],
      "author": {
        "name": "Dusan Pajin",
        "email": "dusan.pajin@amres.ac.rs",
        "time": "Wed Feb 11 16:40:34 2015 +0100"
      },
      "committer": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@onlab.us",
        "time": "Wed Feb 11 18:24:18 2015 +0000"
      },
      "message": "ICMPv6 checksum calculation fixed in ICMPv6.java\n\nChange-Id: I4ac4a9138e9256318c0345668e7692f2778c136e\n"
    },
    {
      "commit": "c611d927aaaea477e289a467ad542be9c594ba1d",
      "tree": "43d31a6c694c1232ee88e6f4f8432d77bc7b9ccb",
      "parents": [
        "8791a8100b922fb3cd0ad7f84cfb01e55f255fca"
      ],
      "author": {
        "name": "Yuta HIGUCHI",
        "email": "y-higuchi@ak.jp.nec.com",
        "time": "Tue Feb 10 16:07:38 2015 -0800"
      },
      "committer": {
        "name": "Yuta Higuchi",
        "email": "y-higuchi@onlab.us",
        "time": "Wed Feb 11 06:21:35 2015 +0000"
      },
      "message": "Fix Cache Removal listener\n\n- Removal lister will be called even if the entry was manually\n  invalidated. Timeout handler should check for the cause.\n\nNote: In both of the cases fixed in this patch, Future should silently ignore\n  setException, external behavior-wise no change by this patch.\n\nChange-Id: Id46f23c9ff8dfa607874cfd94807000f03a95b31\n"
    },
    {
      "commit": "09342706b029b9943a2d2d201b37663060eeb3d8",
      "tree": "fbc1b29efd2db2c4a9aaf1951bf026c2e0d38847",
      "parents": [
        "89bf6fb1f3300bad0bc6c631e5b1e0b03b060dd8"
      ],
      "author": {
        "name": "Madan Jampani",
        "email": "madan@onlab.us",
        "time": "Thu Feb 05 23:32:40 2015 -0800"
      },
      "committer": {
        "name": "Jonathan Hart",
        "email": "jono@onlab.us",
        "time": "Wed Feb 11 05:26:26 2015 +0000"
      },
      "message": "WIP: Consistent map implementation.\n\nChange-Id: I51b2d954b7a8ff2c51c425d9a8125937d4eaa6b0\n\nChange-Id: Ib27799d4eb60fc4bfaa8d2f21a904365ff5437eb\n\nChange-Id: I95c937600ceb8f282a482280217671c471f40b9c\n"
    },
    {
      "commit": "cb7ab08e950a02f2b304dd30d58105304e2bd81c",
      "tree": "4ed9d008ea6d0bdca5f75a312292e071920fd291",
      "parents": [
        "9ee62f52f2d14fb3e6a24da32db2723ef6a440a9"
      ],
      "author": {
        "name": "Madan Jampani",
        "email": "madan@onlab.us",
        "time": "Fri Feb 06 15:33:03 2015 -0800"
      },
      "committer": {
        "name": "Madan Jampani",
        "email": "madan@onlab.us",
        "time": "Fri Feb 06 15:33:57 2015 -0800"
      },
      "message": "Pom fixes to correctly shade copycat jars.\n\nChange-Id: I1ed97b32ad242e1c6d7c06387219308802a1f773\n"
    },
    {
      "commit": "94c23538756fef560b60b83a3fa5489c01c81e25",
      "tree": "6506b82473fda8a2fd8eb8587c5852900d1c5320",
      "parents": [
        "6a0bb17d284959bc3e318cccd178ef003588ef86"
      ],
      "author": {
        "name": "Madan Jampani",
        "email": "madan@onlab.us",
        "time": "Thu Feb 05 17:40:01 2015 -0800"
      },
      "committer": {
        "name": "Jonathan Hart",
        "email": "jono@onlab.us",
        "time": "Fri Feb 06 19:04:24 2015 +0000"
      },
      "message": "WIP: Partitioned Database based on Raft.\nRemoved the implementation based on previous Copycat API.\n\nChange-Id: I6b9d67e943e17095f585ae2a2cb6304c248cd686\n"
    },
    {
      "commit": "90b453f11c05934a6e0eb1234a4cc8bca964d69e",
      "tree": "b8be561740df3b10d1134df8a7a5990431b1e6b9",
      "parents": [
        "b269a4302f4c19924505c0019e6c293de0c35b8c"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Fri Jan 30 18:57:14 2015 -0800"
      },
      "committer": {
        "name": "Ray Milkey",
        "email": "ray@onlab.us",
        "time": "Mon Feb 02 22:23:35 2015 +0000"
      },
      "message": "ONOS-785 Adding distributed store for apps \u0026 app admin CLIs\n\nChange-Id: Ia7639f3258fca2a18ba513f0c95de0ab8ea7ceee\n"
    },
    {
      "commit": "02aeb0339f584153798906c5f3a1c2809ead511e",
      "tree": "c0a25a6da637c60c6e6529bf4615a61b6a409139",
      "parents": [
        "ea4d7d14212a7a429f3e45843633884bd35b4bc5"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Tue Jan 06 22:36:30 2015 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Fri Jan 30 00:28:45 2015 +0000"
      },
      "message": "ONOS-542 Defining application subsystem interfaces \u0026 public constructs.\n\nChange-Id: Iba0d2cb69dace5beee8a68def9918059ce755b5c\n"
    },
    {
      "commit": "c31d9f1dccdaf4f4172ff29443d4179009a7c7ef",
      "tree": "2c042ce767ef8dd3ecb750a605de6291d2c5a496",
      "parents": [
        "988934ec2d9c0fa4c31febccb57ef215bee5b217"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Thu Jan 22 12:33:27 2015 -0800"
      },
      "committer": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Fri Jan 23 12:57:34 2015 -0800"
      },
      "message": "ONOS-745 Refactoring topology to compute only broadcast tree and not pre-compute paths.\nONOS-744 Refactoring graph search to allow requesting max number of paths.\n\nChange-Id: I28467246b92df32ebb3155c45774ecc051fdd3dd\n"
    },
    {
      "commit": "6cd2f3594be450aa6d25eb7e4c44d91493945407",
      "tree": "2bcf67a1e99ddce4080105f669c489323f358e4d",
      "parents": [
        "7dc1d048798d3284e77e82f8e991640701a14516"
      ],
      "author": {
        "name": "Jonathan Hart",
        "email": "jono@onlab.us",
        "time": "Tue Jan 13 17:44:45 2015 -0800"
      },
      "committer": {
        "name": "Jonathan Hart",
        "email": "jono@onlab.us",
        "time": "Thu Jan 22 03:28:52 2015 +0000"
      },
      "message": "Implemented VLAN-to-VLAN routing support for SDN-IP.\n\nSDN-IP can now support peering and routing between hosts that are connected\non VLANs.\n\nChanges include:\n * Updated NetworkConfigReader app to read (optional) VLAN configuration\n * Updated VlanId to support the \u0027VLAN present\u0027 value - in a match this means\n   that a VLAN tag must be present, but it can contain any value.\n * Updated SDN-IP to set destination VLAN tag values if appropriate\n * Updated FlowModBuilder and FlowEntryBuilder to support \u0027VLAN present\u0027 value\n * Slew of test updates.\n\nChange-Id: Ief48cede5c1fd50e1efa851da5a97fb4a8edda29\n"
    },
    {
      "commit": "d916bcd87292fd09a674f90379af4e9cf560c026",
      "tree": "13c4c87fce14e463d580f82484dd07b900f2c980",
      "parents": [
        "d3edd037a1a4c005e951a32d21a35018224f17c4"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Fri Jan 16 13:03:27 2015 -0800"
      },
      "committer": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Fri Jan 16 13:03:27 2015 -0800"
      },
      "message": "Corrected a javadoc message.\n\nChange-Id: I06dda39b91eda900b0db48e2b3d8665b2cad15e5\n"
    },
    {
      "commit": "c8ad76dc50086c7c046f42f808e5f2564b8c6852",
      "tree": "2746704e71377d558f49e140f9bdc52252218124",
      "parents": [
        "bc0e84dadf3c786722ba1d5add9a887dcb281647"
      ],
      "author": {
        "name": "Yuta HIGUCHI",
        "email": "y-higuchi@ak.jp.nec.com",
        "time": "Mon Jan 12 22:31:25 2015 -0800"
      },
      "committer": {
        "name": "Ray Milkey",
        "email": "ray@onlab.us",
        "time": "Tue Jan 13 18:07:11 2015 +0000"
      },
      "message": "Allow null as parameter\n\nChange-Id: I9601bca4af0dadf706a2e0ca2502595d10e7ee74\n"
    },
    {
      "commit": "5c0b476e73dbb1aec475344b502d6f9b554f6011",
      "tree": "778ad8d8f600b6176e5e20f76ed67a572acf4158",
      "parents": [
        "94f37374faf19e9211ccb77f40a989951e7d2e3f"
      ],
      "author": {
        "name": "Charles M.C. Chan",
        "email": "rascov@gmail.com",
        "time": "Sat Jan 10 18:38:37 2015 +0800"
      },
      "committer": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@onlab.us",
        "time": "Sat Jan 10 17:06:31 2015 +0000"
      },
      "message": "Refactor: Avoid using ternary operator. Remove unnecessary casting.\n\n\t* Apply suggestion in #2192 to previous implemented classes\n\nChange-Id: I271d64202dd43968825600cd9afc49eb400371bf\n"
    },
    {
      "commit": "94f37374faf19e9211ccb77f40a989951e7d2e3f",
      "tree": "43ed16c499ac3a7230a353e691c86b03176b7ca8",
      "parents": [
        "7c92a3d003d684ab5b0b8b5c2b2132084d7d03f8"
      ],
      "author": {
        "name": "Charles M.C. Chan",
        "email": "rascov@gmail.com",
        "time": "Sat Jan 10 17:53:42 2015 +0800"
      },
      "committer": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@onlab.us",
        "time": "Sat Jan 10 17:03:26 2015 +0000"
      },
      "message": "ONOS-512: Implement IPv6 Extension Headers\n\n* Create IExtensionHeader interface\n    - setNextHeader, getNextHeader interface for all extension header classes\n        - Except EncapSecurityPayload, in which the nextHeader field is encrypted\n\n* Create BaseOptions class\n    - Super class of HopByHopOptions and DestinationOptions, since these two are very similar\n\n* Implement following classes with unit test\n    - HopByHopOptions\n    - DestinationOptions\n    - Fragment\n    - Routing\n    - Authentication\n    - EncapSecurityPayload\n\nChange-Id: If65894eccf20ac90f04bc2b0cb42aac6dd5a9674\n"
    },
    {
      "commit": "9a39eca2e7e5f0130102bdad6e5db44ae40a0769",
      "tree": "31f6064f922dbf3d70ea4ad48389766c7eaa319a",
      "parents": [
        "f4df00560f1e79cb6c186d496bb40744a656c9a7"
      ],
      "author": {
        "name": "Ray Milkey",
        "email": "ray@onlab.us",
        "time": "Mon Jan 05 09:41:01 2015 -0800"
      },
      "committer": {
        "name": "Ray Milkey",
        "email": "ray@onlab.us",
        "time": "Tue Jan 06 20:51:15 2015 +0000"
      },
      "message": "ONOS-423 - Throw a specific exception when resources are exhausted\n\nCreate an exception to throw when no resources are available\nSimple, Hazelcast and Distributed link resource stores throw ResourceAllocationException\nUnit tests for successful and unsuccessful bandwidth and lambda allocations\n\nChange-Id: If062d10d2233935dd59efabfa5f37a446e275a5b\n"
    },
    {
      "commit": "ea5aa47ef7919b740d38a420015bf9dd6cacd472",
      "tree": "b75f9d039d8ae17695e297a3d63fa43650e45692",
      "parents": [
        "7fee36a5eb3fdb3746a6e41d47ad0665d51b9879"
      ],
      "author": {
        "name": "Charles M.C. Chan",
        "email": "rascov@gmail.com",
        "time": "Sat Jan 03 13:40:39 2015 +0800"
      },
      "committer": {
        "name": "Charles M.C. Chan",
        "email": "rascov@gmail.com",
        "time": "Tue Jan 06 02:57:58 2015 +0800"
      },
      "message": "Implement NDP-related classes\n\n* Resolve ONOS-511\n* Refactor: Move NDP-related classes into org.onlab.packet.ndp package\n* Bugfix: payload is not properly set in testSerialize\n\nChange-Id: Idb2dbfbd0297152c0e26ac2d5d5f8dba62824660\n"
    },
    {
      "commit": "7fee36a5eb3fdb3746a6e41d47ad0665d51b9879",
      "tree": "72177e1d201c674953b24054283a6184a6661d2a",
      "parents": [
        "d37c9cadabcb07da75fad369b28982d6ec39e4df"
      ],
      "author": {
        "name": "Charles M.C. Chan",
        "email": "rascov@gmail.com",
        "time": "Wed Dec 31 00:19:59 2014 +0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Thu Jan 01 19:25:29 2015 +0000"
      },
      "message": "Trace IPv6 hosts\n\nONOS-511: Implement NeighborSolicitation\n\nChange-Id: I9aaf35d499cfc7885c74f9c4bf281210ef9f3969\n\nONOS-507: Trace NeighborSolicitation/NeighborAdvertisement/IPv6 packets in HostLocationProvider\n\t* Complete Javadoc of IPv6, ICMP6, NeighborAdvertisement and NeighborSolicitation\n\t\t- The Javadoc for serialize() is removed since the one in its superclass just works fine.\n\t* Change \u0027diffServ\u0027 in IPv6 to \u0027trafficClass\u0027 to meet the field name in RFC.\n\t\t- The setter method, getter method and unit test are also updated accordingly.\n\t* Add IpAddress.isZero() to determine if this address is zero.\n\t\t- The unit test is also updated accordingly.\n\t* Fix misuse of IpAddress.valueOf(int) in HostLocationProvider\n\nChange-Id: Id0d873aeb1bc61bf26d4964e7aab4bb06ccd0a38\n"
    },
    {
      "commit": "93b7fb0e07fc7c481f39292a65692942a887aeb7",
      "tree": "f29377f158fcf889c34d81c399d501fb77347ff5",
      "parents": [
        "412893888eb5e1a076635a2729d80e69bcc051fb"
      ],
      "author": {
        "name": "Charles M.C. Chan",
        "email": "rascov@gmail.com",
        "time": "Sun Dec 28 03:59:36 2014 +0800"
      },
      "committer": {
        "name": "Charles M.C. Chan",
        "email": "rascov@gmail.com",
        "time": "Mon Dec 29 18:35:57 2014 +0800"
      },
      "message": "ONOS-508: Implement IPv6, ICMP6 and NeighborAdvertisement class\n\nCreate ICMP6 class, which is mostly like ICMP\n\nChange-Id: I11d7abec4a8f1fd202e5dfb0a500f621773c2c3a\n\nCreate IPv6 class, which is mostly like IPv4\n\nChange-Id: I7a301a0f94263df5d6d30f73050332ec7acfe611\n\nRegister handler class of IPv6 to Ethernet\n\nChange-Id: Iccdef1680664520f9d66360a289809710982ce54\n\nFix FIXED_HEADER_LENGTH\n\nChange-Id: Iff4fb22638416595f2865ff46b682a0579ba33d5\n\nFix payloadLength\n\nChange-Id: I8dea4dd52f0bb5926fbff0d9e74fdd19404cabff\n\nAdd unittest for serialize\n\nChange-Id: If194aa2530ce517a33b36b97b8478b0a4c463954\n\nAdd unittest for deserialize. Fix assertArrayEquals. Refine test structure.\n\nChange-Id: I94f2a348b2be2f5907d8bac6b9029b37eb31456d\n\nPayload length should be handled during serializing/deserializing procedure\n\nChange-Id: Ib079bf939a01a38356c824ed972793293ed8ca1e\n\nAdd unittest for comparator\n\nChange-Id: I937dd9330d7c23a81ecd8434ac0fcf7345cc5c00\n\nFix typo. Fix checkstyle error\n\nChange-Id: I2fe1af81c65416b0fddaa0fb9ae206b87b889628\n\nAdd implementation and unittest for NeighborAdvertisement\n\nChange-Id: I7610462a5712f9fee5be0416c08e1de302e0780d\n\nRegister handler class of NeighborAdvertisement to ICMP6\n\nChange-Id: I3a7a9cf044cfdcd8908579942c159c2f0aad198d\n"
    },
    {
      "commit": "3f0c97ebc591407887dba626f29ef7d075908927",
      "tree": "c340c51d95e6b0c55c0b519a35812f7959de4a8e",
      "parents": [
        "dec50095c6903f400c51b7b79bdbc681eafd601a"
      ],
      "author": {
        "name": "Ray Milkey",
        "email": "ray@onlab.us",
        "time": "Mon Dec 08 14:53:30 2014 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Tue Dec 09 00:53:06 2014 +0000"
      },
      "message": "ONOS-395 - tighten up exception handling\n\nChange-Id: Ice3ee55adacbd890100def5d9da44c6e2a770945\n"
    },
    {
      "commit": "7f2e9bf19acd904519feee8029c87eeb72ad3299",
      "tree": "4156f14d04087f6ce3999997659f3c3b983ac210",
      "parents": [
        "5b29ebd309a8eab95b61e98aa5db75960a8b1fb9"
      ],
      "author": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Thu Dec 04 23:35:13 2014 -0800"
      },
      "committer": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Thu Dec 04 23:45:40 2014 -0800"
      },
      "message": "bumping version to 1.1.0-SNAPSHOT\n\nChange-Id: I35f10fa7ffab12365ad852f5253bc1f395282f9b\n"
    },
    {
      "commit": "5b29ebd309a8eab95b61e98aa5db75960a8b1fb9",
      "tree": "4cebed9ab803741a8f0b911eb5bcbc4734c05b8c",
      "parents": [
        "0af6747f8048987b36df992e8e9626545688bf0a"
      ],
      "author": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Thu Dec 04 21:22:06 2014 -0800"
      },
      "committer": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Thu Dec 04 21:54:26 2014 -0800"
      },
      "message": "Bumping version to 1.0.0\n\nChange-Id: I0cdd1f64a9292c91af27b86e89bd8251b2c298f3\n"
    },
    {
      "commit": "ab98466b10d5df036d492b50296db4886bca5e7f",
      "tree": "970a4e98c6db51fb22c2765c7d61df9da5fb0891",
      "parents": [
        "1f40081594a33b312e6007c23758f779fdf9a8dd"
      ],
      "author": {
        "name": "alshabib",
        "email": "alshabibi.ali@gmail.com",
        "time": "Thu Dec 04 18:56:18 2014 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Fri Dec 05 05:05:32 2014 +0000"
      },
      "message": "adding license to ALL files\n\nChange-Id: I9df3277760d79732317816fe5b2f1f482e9f5375\n"
    },
    {
      "commit": "4785eec52935b19880c7cfae7bbbb5efad12b7b5",
      "tree": "62bb45effaa821d8226cb5dadb421718872c667f",
      "parents": [
        "a1a00c247e5ff9f91430afbea87da861e40f026c"
      ],
      "author": {
        "name": "alshabib",
        "email": "alshabibi.ali@gmail.com",
        "time": "Thu Dec 04 16:45:45 2014 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Fri Dec 05 00:59:35 2014 +0000"
      },
      "message": "removing some TODOs\n\nChange-Id: Ic98c811573a1b37813993eedddec512ec85729f3\n"
    },
    {
      "commit": "932d94149ef4037343c2c8f5ef464cc9891ac829",
      "tree": "f955a13c65290212b3f8a88a662eb77055e28995",
      "parents": [
        "30f45fbb0d1512a5be106e1a15744c7fa5450f1a"
      ],
      "author": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Wed Dec 03 17:20:11 2014 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Thu Dec 04 02:54:42 2014 +0000"
      },
      "message": "preparing pom.xml\u0027s for release\n\nChange-Id: I14cecba9816493e2cf1b3fb6daf3a653ddb1fd2e\n"
    },
    {
      "commit": "abafb50f58363c90e525873a96a1d14cc2449200",
      "tree": "71bd9a07c79945746e29ae8311ab5f768aa1640b",
      "parents": [
        "03defe793917884eedd233a39b82dafe14ebedd5"
      ],
      "author": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Tue Dec 02 22:26:20 2014 -0800"
      },
      "committer": {
        "name": "Brian O\u0027Connor",
        "email": "bocon@onlab.us",
        "time": "Tue Dec 02 22:26:20 2014 -0800"
      },
      "message": "Changing org.onlab.onos package to org.onosproject\n\nChange-Id: Ic81421faa27acdcff045add47d9e0a715cd4f575\n"
    },
    {
      "commit": "5dd52f7ac47d994af7e6e5dd4b6701e772eb71b1",
      "tree": "0ca51977192da4794d2f2306a3810a93d7140e41",
      "parents": [
        "18fdb25a95817c455f4d7ef5dbb240666c0143b7"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Fri Nov 28 19:27:45 2014 -0800"
      },
      "committer": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Sat Nov 29 10:43:30 2014 -0800"
      },
      "message": "Enhancing the GUI traffic-related code.\nFixed a defect in reactive forwarding.\n\nChange-Id: I1a91f6e5f57b39425ef06092c82b06d04c9b59a0\n"
    },
    {
      "commit": "26df2f2dd5f3f8a3252a98a8f4c5e3aa892f1b73",
      "tree": "3117fd55a2e00f64af9970eb3cf6f8ca8d08209c",
      "parents": [
        "deb8a1098d9d5439acc2f8460a7e3b6d688fc583"
      ],
      "author": {
        "name": "Thomas Vachuska",
        "email": "tom@onlab.us",
        "time": "Wed Nov 26 13:25:22 2014 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit@onlab.us",
        "time": "Thu Nov 27 00:39:26 2014 +0000"
      },
      "message": "Added short-circuit to Dijkstra when there are no edges.\n\nChange-Id: I7e647ffceeae9de1736c5f36159c33d882bdb9f2\n"
    }
  ],
  "next": "683e97874d9dcdc16bcc3ec0c8ccbd70282e5653"
}
