)]}'
{
  "log": [
    {
      "commit": "fc38418f1eaed754d59c16ab585450d8f8aa33ff",
      "tree": "16d34079e2e105d226fda65b53ea4720f03775dd",
      "parents": [
        "25c428535bd3f55a16f149a9daebd3fa4c5a562b"
      ],
      "author": {
        "name": "srinivas32",
        "email": "70689972+srinivas32@users.noreply.github.com",
        "time": "Thu Nov 12 13:06:36 2020"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Nov 12 13:06:36 2020"
      },
      "message": "added power support arch ppc64le on yml file. (#8)\n\nAdded power support for the travis.yml file with ppc64le. This is part of the Ubuntu distribution for ppc64le."
    },
    {
      "commit": "25c428535bd3f55a16f149a9daebd3fa4c5a562b",
      "tree": "98c274917c5838f5f64b52305e8f5f46460629cb",
      "parents": [
        "de1592c34d9c6055a32fc9ebe2b3ee50ca468ebe"
      ],
      "author": {
        "name": "Thomas Pelletier",
        "email": "pelletier.thomas@gmail.com",
        "time": "Thu Jan 03 23:56:59 2019"
      },
      "committer": {
        "name": "Thomas Pelletier",
        "email": "pelletier.thomas@gmail.com",
        "time": "Thu Jan 03 23:56:59 2019"
      },
      "message": "Fix bug while read error occurs during peek\n"
    },
    {
      "commit": "de1592c34d9c6055a32fc9ebe2b3ee50ca468ebe",
      "tree": "a4c803b711732a2eb2db444857662d573a66f50f",
      "parents": [
        "e2f66f8164ca709d4c21e815860afd2024e9b894"
      ],
      "author": {
        "name": "Thomas Pelletier",
        "email": "pelletier.thomas@gmail.com",
        "time": "Mon Aug 27 16:26:05 2018"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Aug 27 16:26:05 2018"
      },
      "message": "Add LICENSE file\n\nSignal the project is under MIT license.\r\n\r\nFixes #6"
    },
    {
      "commit": "e2f66f8164ca709d4c21e815860afd2024e9b894",
      "tree": "73ad9dfa341e5a9d9fdf81b95381273081e2459c",
      "parents": [
        "5fdf8e1427e319194e626c82d166bdba28b723dc"
      ],
      "author": {
        "name": "Thomas Pelletier",
        "email": "pelletier.thomas@gmail.com",
        "time": "Fri Jan 19 16:21:33 2018"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jan 19 16:21:33 2018"
      },
      "message": "Update Go versions (#5)\n\n"
    },
    {
      "commit": "5fdf8e1427e319194e626c82d166bdba28b723dc",
      "tree": "64442e35fbd25c13e424f85d71b6f2eec58ce8de",
      "parents": [
        "f2f53fb600b7e81ef24db69bcd2eee062b81e808"
      ],
      "author": {
        "name": "Rob Phoenix",
        "email": "rob@robphoenix.com",
        "time": "Fri Jan 19 16:09:48 2018"
      },
      "committer": {
        "name": "Thomas Pelletier",
        "email": "pelletier.thomas@gmail.com",
        "time": "Fri Jan 19 16:09:48 2018"
      },
      "message": "Fix github link in README (#4)\n\n"
    },
    {
      "commit": "f2f53fb600b7e81ef24db69bcd2eee062b81e808",
      "tree": "ab19fffa4c57ac9afd7b697b6a1a4cbf56fa485b",
      "parents": [
        "c37440a7cf42ac63b919c752ca73a85067e05992"
      ],
      "author": {
        "name": "Russ Cox",
        "email": "rsc@golang.org",
        "time": "Fri Jan 19 15:54:40 2018"
      },
      "committer": {
        "name": "Thomas Pelletier",
        "email": "pelletier.thomas@gmail.com",
        "time": "Fri Jan 19 15:54:40 2018"
      },
      "message": "Performance improvement by using slice instead of list (#3)\n\n* add benchmark, a few more tests\r\n\r\nThis is for comparison with a faster slice-based implementation\r\nin the next commit.\r\n\r\n* replace container/list implementation with slice implementation\r\n\r\nThis commit drops the use of the container/list package\r\nin favor of a simple slice of runes, which dramatically reduces\r\nthe amount of allocation and memory footprint of the\r\nbuffered input and makes the implementation run about 4-5X faster.\r\n\r\n* fix a bug in Forget (see the modified tests).\r\n\r\nIt seems clear that users are not using Forget, or else\r\nthey would have reported the bug being fixed,\r\nso this commit also revises the doc comments to make\r\nit clearer that best practice is to call Forget when processing\r\npotentially large inputs, to avoid unbounded buffering.\r\n\r\n* add details of the handling of io.EOF versus non-io.EOF errors\r\n\r\n* drop the mention of wrapping bufio\r\n\r\nThat is an internal implementation detail not exposed in the\r\npublic API.\r\n\r\n```\r\nname             old time/op    new time/op    delta\r\nRead16K-8           886µs ± 1%     200µs ± 0%   -77.47%  (p\u003d0.000 n\u003d9+8)\r\nReadForget16K-8     944µs ± 4%     191µs ± 4%   -79.82%  (p\u003d0.000 n\u003d10+9)\r\nReadRewind16K-8     987µs ± 1%     278µs ± 1%   -71.87%  (p\u003d0.000 n\u003d9+10)\r\n\r\nname             old speed      new speed      delta\r\nRead16K-8        18.5MB/s ± 1%  82.0MB/s ± 1%  +343.56%  (p\u003d0.000 n\u003d9+9)\r\nReadForget16K-8  17.4MB/s ± 4%  86.0MB/s ± 4%  +395.53%  (p\u003d0.000 n\u003d10+9)\r\nReadRewind16K-8  16.6MB/s ± 1%  59.0MB/s ± 1%  +255.49%  (p\u003d0.000 n\u003d9+10)\r\n\r\nname             old alloc/op   new alloc/op   delta\r\nRead16K-8           791kB ± 0%     208kB ± 0%   -73.73%  (p\u003d0.002 n\u003d8+10)\r\nReadForget16K-8     791kB ± 0%       5kB ± 0%   -99.34%  (p\u003d0.000 n\u003d10+10)\r\nReadRewind16K-8     791kB ± 0%     208kB ± 0%   -73.74%  (p\u003d0.000 n\u003d10+10)\r\n\r\nname             old allocs/op  new allocs/op  delta\r\nRead16K-8           24.6k ± 0%      0.0k ± 0%   -99.94%  (p\u003d0.000 n\u003d10+10)\r\nReadForget16K-8     24.6k ± 0%      0.0k ± 0%   -99.99%  (p\u003d0.000 n\u003d10+10)\r\nReadRewind16K-8     24.6k ± 0%      0.0k ± 0%   -99.94%  (p\u003d0.000 n\u003d10+10)\r\n```\r\n\r\nhttps://perf.golang.org/search?q\u003dupload:20180119.1\r\n"
    },
    {
      "commit": "c37440a7cf42ac63b919c752ca73a85067e05992",
      "tree": "eafc2d0c39dce51c92e51fabb97073024ac39d90",
      "parents": [
        "df1e16fde7fc330a0ca68167c23bf7ed6ac31d6d"
      ],
      "author": {
        "name": "Thomas Pelletier",
        "email": "pelletier.thomas@gmail.com",
        "time": "Mon Feb 27 22:03:11 2017"
      },
      "committer": {
        "name": "Thomas Pelletier",
        "email": "pelletier.thomas@gmail.com",
        "time": "Mon Feb 27 22:03:11 2017"
      },
      "message": "Breaking changes to make govet pass\n\n* Peek -\u003e PeekRunes\n* ReadRune(int) rune, error -\u003e ReadRune(int) rune, int, error\n"
    },
    {
      "commit": "df1e16fde7fc330a0ca68167c23bf7ed6ac31d6d",
      "tree": "0d86e97cbc5ae5525365c4789a064b7abff9bb8e",
      "parents": [
        "bd48575e632545cdc89f100f1528315d39a86187"
      ],
      "author": {
        "name": "Thomas Pelletier",
        "email": "pelletier.thomas@gmail.com",
        "time": "Sun Jan 24 19:35:03 2016"
      },
      "committer": {
        "name": "Thomas Pelletier",
        "email": "pelletier.thomas@gmail.com",
        "time": "Sun Jan 24 19:35:03 2016"
      },
      "message": "Update README\n"
    },
    {
      "commit": "bd48575e632545cdc89f100f1528315d39a86187",
      "tree": "d5d806545655ef1e5525cdac98c065297ba05e6f",
      "parents": [
        "8a3f0ddf885d71d56f68eb3a3add84546d48f622"
      ],
      "author": {
        "name": "Thomas Pelletier",
        "email": "pelletier.thomas@gmail.com",
        "time": "Sun Jan 24 19:13:57 2016"
      },
      "committer": {
        "name": "Thomas Pelletier",
        "email": "pelletier.thomas@gmail.com",
        "time": "Sun Jan 24 19:13:57 2016"
      },
      "message": "Peek support\n"
    },
    {
      "commit": "8a3f0ddf885d71d56f68eb3a3add84546d48f622",
      "tree": "e297ec2f15818e523ba5b932f40c8cb610e0ed3d",
      "parents": [
        "b8dd659e95ab5ef5aa6e997e8821511119d424b2"
      ],
      "author": {
        "name": "Thomas Pelletier",
        "email": "pelletier.thomas@gmail.com",
        "time": "Sun Jan 24 18:26:34 2016"
      },
      "committer": {
        "name": "Thomas Pelletier",
        "email": "pelletier.thomas@gmail.com",
        "time": "Sun Jan 24 18:26:34 2016"
      },
      "message": "Add travis badge\n"
    },
    {
      "commit": "b8dd659e95ab5ef5aa6e997e8821511119d424b2",
      "tree": "b51e238c5e74c2c4911642d817d16f248cb71d77",
      "parents": [
        "c515e6b40f4861b9ba0a0ae0c31b5f8e03ba831a"
      ],
      "author": {
        "name": "Thomas Pelletier",
        "email": "pelletier.thomas@gmail.com",
        "time": "Sun Jan 24 18:25:29 2016"
      },
      "committer": {
        "name": "Thomas Pelletier",
        "email": "pelletier.thomas@gmail.com",
        "time": "Sun Jan 24 18:25:29 2016"
      },
      "message": "Fix version number\n"
    },
    {
      "commit": "c515e6b40f4861b9ba0a0ae0c31b5f8e03ba831a",
      "tree": "581e068fb3fe4e0ecbaa075ce3cbce7bd2f4f5f0",
      "parents": [
        "4f0d91afabc0cb58fbe4064fb5bc57e7e4759459"
      ],
      "author": {
        "name": "Thomas Pelletier",
        "email": "pelletier.thomas@gmail.com",
        "time": "Sun Jan 24 18:22:52 2016"
      },
      "committer": {
        "name": "Thomas Pelletier",
        "email": "pelletier.thomas@gmail.com",
        "time": "Sun Jan 24 18:22:52 2016"
      },
      "message": "Add .travis\n"
    },
    {
      "commit": "4f0d91afabc0cb58fbe4064fb5bc57e7e4759459",
      "tree": "abdb6a3f3422f3322cf3311b7f9e122636f19959",
      "parents": [],
      "author": {
        "name": "Thomas Pelletier",
        "email": "pelletier.thomas@gmail.com",
        "time": "Sun Jan 24 18:21:50 2016"
      },
      "committer": {
        "name": "Thomas Pelletier",
        "email": "pelletier.thomas@gmail.com",
        "time": "Sun Jan 24 18:21:50 2016"
      },
      "message": "First version\n"
    }
  ]
}
