)]}'
{
  "log": [
    {
      "commit": "a3ad54e4ad83d92c485560707055aa0b96789dfc",
      "tree": "595d5cca5cc3d08b123905a5965f9cbe04456d07",
      "parents": [
        "619f059efe2d39741ef178fd6ca264f6cf159f12"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@gmail.com",
        "time": "Fri Apr 24 11:40:51 2026 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@gmail.com",
        "time": "Fri Apr 24 11:40:51 2026 +0800"
      },
      "message": "feat: update repo path\n"
    },
    {
      "commit": "619f059efe2d39741ef178fd6ca264f6cf159f12",
      "tree": "651489f59654ba5002a1fdac8699eb997d96a065",
      "parents": [
        "ca101185da8ae7d88f82756ae407415c9a358405"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@gmail.com",
        "time": "Wed Apr 22 23:53:27 2026 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@gmail.com",
        "time": "Fri Apr 24 10:12:47 2026 +0800"
      },
      "message": "feat: support Casbin v3\n"
    },
    {
      "commit": "ca101185da8ae7d88f82756ae407415c9a358405",
      "tree": "ee98460edd6da3f2b08059ae3dada2d47a6850d8",
      "parents": [
        "634e6df8a2096c5dab7bc1d0e35ad8aed1b9c34e"
      ],
      "author": {
        "name": "yxrxy",
        "email": "1532529704@qq.com",
        "time": "Wed Jul 23 00:37:41 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 23 00:37:41 2025 +0800"
      },
      "message": "feat: fix duplicated index creation bug in PostgreSQL (#68)\n\n"
    },
    {
      "commit": "634e6df8a2096c5dab7bc1d0e35ad8aed1b9c34e",
      "tree": "beee64a34cb85db44c9e5da3f604a9442e455ce5",
      "parents": [
        "a5eaefea3467ac7ded5707b97b80de49e194f180"
      ],
      "author": {
        "name": "沐",
        "email": "MuZhou233@outlook.com",
        "time": "Tue Apr 09 10:46:11 2024 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 09 10:46:11 2024 +0800"
      },
      "message": "feat: pass context down to xorm (#65)\n\n* feat: pass context down to xorm\r\n\r\n* fix: update README"
    },
    {
      "commit": "a5eaefea3467ac7ded5707b97b80de49e194f180",
      "tree": "054c88798b8b2430f5cfc828717fd176f3e8a145",
      "parents": [
        "09000e0f96f3d4cca9632c6f33e61e6e7fbf0704"
      ],
      "author": {
        "name": "沐",
        "email": "MuZhou233@outlook.com",
        "time": "Wed Mar 27 23:40:36 2024 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Mar 27 23:40:36 2024 +0800"
      },
      "message": "feat: replace xorm-adapter/v2 with xorm-adapter/v3 in README (#63)\n\n"
    },
    {
      "commit": "09000e0f96f3d4cca9632c6f33e61e6e7fbf0704",
      "tree": "a41d31436f168ec381c0f759f3f1fba0e9a7d309",
      "parents": [
        "fead645e7a95be8e214e9b9b6d65f9a9ba281446"
      ],
      "author": {
        "name": "Eric Luo",
        "email": "hsluoyz@qq.com",
        "time": "Wed Mar 27 23:29:45 2024 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Mar 27 23:29:45 2024 +0800"
      },
      "message": "docs: Update README.md"
    },
    {
      "commit": "fead645e7a95be8e214e9b9b6d65f9a9ba281446",
      "tree": "9c84796f20a0c40ffcf7c6d7a15f4269edaf9e4f",
      "parents": [
        "1089d551d1211e2450d3bebc4a7e713381442c58"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Wed Mar 27 23:26:29 2024 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Wed Mar 27 23:26:29 2024 +0800"
      },
      "message": "fix: upgrade CI Go version to 1.19\n"
    },
    {
      "commit": "1089d551d1211e2450d3bebc4a7e713381442c58",
      "tree": "fd955284d9856709cf1680783973a4c5848e7ac3",
      "parents": [
        "047522b422b51ea5f3c8a91abe7d97e150291c7e"
      ],
      "author": {
        "name": "鱼竿钓鱼干",
        "email": "46661603+PokIsemaine@users.noreply.github.com",
        "time": "Wed Sep 06 17:13:13 2023 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 06 17:13:13 2023 +0800"
      },
      "message": "feat: Contextadapter (#59)\n\n* feat: context adapter\r\n\r\n* feat: context adapter\r\n\r\n* feat: context adapter"
    },
    {
      "commit": "047522b422b51ea5f3c8a91abe7d97e150291c7e",
      "tree": "254bbc40ee19f5121d726919c304ccc5fac33388",
      "parents": [
        "2bfc45306f3963dbebce1c603e364a5fa9d4ecdb"
      ],
      "author": {
        "name": "Vishal Bihani",
        "email": "vishal.bihani2@gmail.com",
        "time": "Wed Aug 16 17:20:07 2023 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Aug 16 19:50:07 2023 +0800"
      },
      "message": "feat: fix bug in Postgres dialect where if a table already exists then it would give error (Invalid query) (#58)\n\n"
    },
    {
      "commit": "2bfc45306f3963dbebce1c603e364a5fa9d4ecdb",
      "tree": "9e68b645bacc2fe3e70e2d9f4cbae1ff1cf21f34",
      "parents": [
        "c1890c6b0ecacfc0ca11a80bed06ab19c7882076"
      ],
      "author": {
        "name": "YunShu",
        "email": "YunShuEmail@foxmail.com",
        "time": "Tue Aug 08 13:18:39 2023 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Aug 08 13:18:39 2023 +0800"
      },
      "message": "fix: fix broken links (#57)\n\n"
    },
    {
      "commit": "c1890c6b0ecacfc0ca11a80bed06ab19c7882076",
      "tree": "72c05c1c97809236bdd6ca3e66ac9a58eb1b3df0",
      "parents": [
        "84f074b653548dc3b83d8815197c3a6d953826fc"
      ],
      "author": {
        "name": "WangGuan",
        "email": "45236136+wangguan1024@users.noreply.github.com",
        "time": "Tue Sep 27 22:00:02 2022 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Sep 27 22:00:02 2022 +0800"
      },
      "message": "fix: update major version in go module path (#55)\n\n"
    },
    {
      "commit": "84f074b653548dc3b83d8815197c3a6d953826fc",
      "tree": "da97e24aeb1930b553693b0d91ccf5cb7d6844bd",
      "parents": [
        "7a90dd8bfb2e70b3a768479c866162b4d2a4cb7b"
      ],
      "author": {
        "name": "Ter",
        "email": "JalinWang@outlook.com",
        "time": "Tue Aug 09 17:04:47 2022 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Aug 09 17:04:47 2022 +0800"
      },
      "message": "fix!: Rename `p-type` column to `ptype` \u0026 PType to Ptype (#54)\n\nBREAKING CHANGE: Rename `p-type` column in the database to `ptype` and  Filter.PType to Filter.Ptype"
    },
    {
      "commit": "7a90dd8bfb2e70b3a768479c866162b4d2a4cb7b",
      "tree": "31262b63cb8cd68fd69583d1b6c6e66c7a478539",
      "parents": [
        "efcd2bf1db6b96ad395d5cba54242288b6431fff"
      ],
      "author": {
        "name": "Ter",
        "email": "JalinWang@outlook.com",
        "time": "Thu Jul 28 21:10:42 2022 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 28 21:10:42 2022 +0800"
      },
      "message": "docs: upgrade installation instruction to v2 version (#52)\n\nfix: https://github.com/casbin/xorm-adapter/issues/51"
    },
    {
      "commit": "efcd2bf1db6b96ad395d5cba54242288b6431fff",
      "tree": "de6254b7e71400ea0141eb920e939204362adf15",
      "parents": [
        "eadfe045b52f90eb635d0a097dafdb2ef53e75ed"
      ],
      "author": {
        "name": "abawchen",
        "email": "abaw.chen@gmail.com",
        "time": "Tue Jul 19 19:55:16 2022 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 19 19:55:16 2022 +0800"
      },
      "message": "docs: fix postgres sample code (#50)\n\nSigned-off-by: Abaw Chen \u003cabaw.chen@gmail.com\u003e"
    },
    {
      "commit": "eadfe045b52f90eb635d0a097dafdb2ef53e75ed",
      "tree": "c6afbb7be7a5f37a239db3d887cde572755cec67",
      "parents": [
        "a77f89266281dc1f919077df5b6cec675c275ef0"
      ],
      "author": {
        "name": "Bingchang Chen",
        "email": "19990626.love@163.com",
        "time": "Thu Jan 20 13:19:09 2022 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jan 20 13:19:09 2022 +0800"
      },
      "message": "fix: remove underscore (#48)\n\nSigned-off-by: abingcbc \u003cabingcbc626@gmail.com\u003e"
    },
    {
      "commit": "a77f89266281dc1f919077df5b6cec675c275ef0",
      "tree": "57473bb22182079f983b829fe0e833bf8f3b70b8",
      "parents": [
        "2ea99d3d5243b834e6528113b9e0e660d62edb7f"
      ],
      "author": {
        "name": "Bingchang Chen",
        "email": "19990626.love@163.com",
        "time": "Thu Jan 20 11:37:40 2022 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jan 20 11:37:40 2022 +0800"
      },
      "message": "feat: table prefix (#47)\n\nSigned-off-by: abingcbc \u003cabingcbc626@gmail.com\u003e"
    },
    {
      "commit": "2ea99d3d5243b834e6528113b9e0e660d62edb7f",
      "tree": "4e441d44035e8bb0f149bcf43d2d612c9ba90388",
      "parents": [
        "6fc8c432b3fe09407b70b4f63db19e0ce727c02f",
        "5678dab8094ec58b6f947de63efc99505c1a4983"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Sat Sep 04 00:47:50 2021 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Sep 04 00:47:50 2021 +0800"
      },
      "message": "Merge pull request #45 from tangyang9464/master\n\nfeat: add UpdateFilteredPolicies method"
    },
    {
      "commit": "5678dab8094ec58b6f947de63efc99505c1a4983",
      "tree": "4e441d44035e8bb0f149bcf43d2d612c9ba90388",
      "parents": [
        "6fc8c432b3fe09407b70b4f63db19e0ce727c02f"
      ],
      "author": {
        "name": "tangyang9464",
        "email": "tangyang9464@163.com",
        "time": "Sun Aug 29 12:55:58 2021 +0800"
      },
      "committer": {
        "name": "tangyang9464",
        "email": "tangyang9464@163.com",
        "time": "Sun Aug 29 13:18:04 2021 +0800"
      },
      "message": "feat: add UpdateFilteredPolicies method\n\nSigned-off-by: tangyang9464 \u003ctangyang9464@163.com\u003e\n"
    },
    {
      "commit": "6fc8c432b3fe09407b70b4f63db19e0ce727c02f",
      "tree": "23910922e8ff682dab30f8f2ee73d884414cf12a",
      "parents": [
        "01aca29244b5ce757fd5faf101114afc5b672f2b",
        "7f5ee0088d4af92e35c946dfbd64799bdc4c4da1"
      ],
      "author": {
        "name": "hsluoyz",
        "email": "hsluoyz@qq.com",
        "time": "Fri May 14 17:21:14 2021 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 14 17:21:14 2021 +0800"
      },
      "message": "Merge pull request #43 from closetool/master\n\nfix: add github action"
    },
    {
      "commit": "7f5ee0088d4af92e35c946dfbd64799bdc4c4da1",
      "tree": "23910922e8ff682dab30f8f2ee73d884414cf12a",
      "parents": [
        "01aca29244b5ce757fd5faf101114afc5b672f2b"
      ],
      "author": {
        "name": "closetool",
        "email": "4closetool3@gmail.com",
        "time": "Fri May 14 15:38:57 2021 +0800"
      },
      "committer": {
        "name": "closetool",
        "email": "4closetool3@gmail.com",
        "time": "Fri May 14 16:12:03 2021 +0800"
      },
      "message": "fix: add github action\n\nSigned-off-by: closetool \u003c4closetool3@gmail.com\u003e\n"
    },
    {
      "commit": "01aca29244b5ce757fd5faf101114afc5b672f2b",
      "tree": "5ec351a36e3875b5e67071754ee41f448398a264",
      "parents": [
        "66091b9ab5fb35956305507d4dad793db265097f",
        "1a949104d2512f8a4b5cff11977116d80a62cf51"
      ],
      "author": {
        "name": "hsluoyz",
        "email": "hsluoyz@qq.com",
        "time": "Thu May 13 20:18:07 2021 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu May 13 20:18:07 2021 +0800"
      },
      "message": "Merge pull request #41 from tson1111/master\n\nfix: add empty policy check in SavePolicy function."
    },
    {
      "commit": "1a949104d2512f8a4b5cff11977116d80a62cf51",
      "tree": "5ec351a36e3875b5e67071754ee41f448398a264",
      "parents": [
        "66091b9ab5fb35956305507d4dad793db265097f"
      ],
      "author": {
        "name": "Cong Ding",
        "email": "masdc98@icloud.com",
        "time": "Thu May 13 19:29:15 2021 +0800"
      },
      "committer": {
        "name": "Cong Ding",
        "email": "masdc98@icloud.com",
        "time": "Thu May 13 19:31:58 2021 +0800"
      },
      "message": "fix: add empty policy check in SavePolicy function.\n\nSigned-off-by: Cong Ding \u003cmasdc98@icloud.com\u003e\n"
    },
    {
      "commit": "66091b9ab5fb35956305507d4dad793db265097f",
      "tree": "e7dadb804f1feccab04ebcaec6d13dd7cefd5099",
      "parents": [
        "03d3f2c3ebfb80b5d7078a7e34c7c6b43a756066",
        "d2952a50402459d8062a38829b2b597ffa460960"
      ],
      "author": {
        "name": "hsluoyz",
        "email": "hsluoyz@qq.com",
        "time": "Sat Apr 03 15:41:07 2021 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Apr 03 15:41:07 2021 +0800"
      },
      "message": "Merge pull request #39 from closetool/master\n\nfix: missing method UpdatePolicies(#38)"
    },
    {
      "commit": "d2952a50402459d8062a38829b2b597ffa460960",
      "tree": "e7dadb804f1feccab04ebcaec6d13dd7cefd5099",
      "parents": [
        "03d3f2c3ebfb80b5d7078a7e34c7c6b43a756066"
      ],
      "author": {
        "name": "closetool",
        "email": "c299999999@qq.com",
        "time": "Sat Apr 03 14:56:38 2021 +0800"
      },
      "committer": {
        "name": "closetool",
        "email": "c299999999@qq.com",
        "time": "Sat Apr 03 14:56:38 2021 +0800"
      },
      "message": "fix: missing method UpdatePolicies(#38)\n\nSigned-off-by: closetool \u003cc299999999@qq.com\u003e\n"
    },
    {
      "commit": "03d3f2c3ebfb80b5d7078a7e34c7c6b43a756066",
      "tree": "9f32b153fc901c0dba4e2e23d19dc56e9523d6da",
      "parents": [
        "5c98582943386abf6fdd29e87fdb63f887fbac01",
        "87b7d8c3f1b3ce28e7fed389071289f9ce6d3578"
      ],
      "author": {
        "name": "hsluoyz",
        "email": "hsluoyz@qq.com",
        "time": "Wed Feb 03 20:23:40 2021 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Feb 03 20:23:40 2021 +0800"
      },
      "message": "Merge pull request #37 from closetool/master\n\nfeat: add UpdatePolicy(#36)"
    },
    {
      "commit": "87b7d8c3f1b3ce28e7fed389071289f9ce6d3578",
      "tree": "9f32b153fc901c0dba4e2e23d19dc56e9523d6da",
      "parents": [
        "5c98582943386abf6fdd29e87fdb63f887fbac01"
      ],
      "author": {
        "name": "closetool",
        "email": "c299999999@qq.com",
        "time": "Wed Feb 03 15:09:39 2021 +0800"
      },
      "committer": {
        "name": "closetool",
        "email": "c299999999@qq.com",
        "time": "Wed Feb 03 15:09:39 2021 +0800"
      },
      "message": "feat: add UpdatePolicy(#36)\n\nSigned-off-by: closetool \u003cc299999999@qq.com\u003e\n"
    },
    {
      "commit": "5c98582943386abf6fdd29e87fdb63f887fbac01",
      "tree": "0a52ebf53c2049312a2997c9f9d5dac1ed4a38a7",
      "parents": [
        "f4aab12c85f2d2c0c3926f4fd8d6cce923264af5",
        "3abf9b3c846074c2dcce6b25f398fc08d02f939e"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Oct 09 19:48:40 2020 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 09 19:48:40 2020 +0800"
      },
      "message": "Merge pull request #35 from dawndiy/fix_tableName\n\nFix table name while query list"
    },
    {
      "commit": "3abf9b3c846074c2dcce6b25f398fc08d02f939e",
      "tree": "0a52ebf53c2049312a2997c9f9d5dac1ed4a38a7",
      "parents": [
        "86c1750a98c863c3f3c9867e05037f0f54d65bed"
      ],
      "author": {
        "name": "dawndiy",
        "email": "dawndiy.dev@gmail.com",
        "time": "Fri Oct 09 19:16:28 2020 +0800"
      },
      "committer": {
        "name": "dawndiy",
        "email": "dawndiy.dev@gmail.com",
        "time": "Fri Oct 09 19:16:45 2020 +0800"
      },
      "message": "repair broken go.mod go.sum\n\nSigned-off-by: dawndiy \u003cdawndiy.dev@gmail.com\u003e\n"
    },
    {
      "commit": "86c1750a98c863c3f3c9867e05037f0f54d65bed",
      "tree": "98fd12b2f79d9253a494f010755b7bea332b7726",
      "parents": [
        "f4aab12c85f2d2c0c3926f4fd8d6cce923264af5"
      ],
      "author": {
        "name": "dawndiy",
        "email": "dawndiy.dev@gmail.com",
        "time": "Fri Oct 09 12:11:46 2020 +0800"
      },
      "committer": {
        "name": "dawndiy",
        "email": "dawndiy.dev@gmail.com",
        "time": "Fri Oct 09 12:11:46 2020 +0800"
      },
      "message": "fix custom tablename while query list\n\nSigned-off-by: dawndiy \u003cdawndiy.dev@gmail.com\u003e\n"
    },
    {
      "commit": "f4aab12c85f2d2c0c3926f4fd8d6cce923264af5",
      "tree": "260974bc884b10d8356e2b6d148acf30b0adcc8e",
      "parents": [
        "57e277376e5dd185e392436d311c65aadc7376f8",
        "e3cef73d44c8dd5884a4e75eff27fd23832f6134"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Mon Aug 31 16:18:44 2020 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Aug 31 16:18:44 2020 +0800"
      },
      "message": "Merge pull request #34 from Blank-Xu/master\n\nimprove filterQuery func and format codes."
    },
    {
      "commit": "e3cef73d44c8dd5884a4e75eff27fd23832f6134",
      "tree": "260974bc884b10d8356e2b6d148acf30b0adcc8e",
      "parents": [
        "57e277376e5dd185e392436d311c65aadc7376f8"
      ],
      "author": {
        "name": "Blank",
        "email": "blank.xu@qq.com",
        "time": "Wed Aug 26 17:05:33 2020 +0800"
      },
      "committer": {
        "name": "Blank",
        "email": "blank.xu@qq.com",
        "time": "Fri Aug 28 17:56:35 2020 +0800"
      },
      "message": "improve filterQuery func and format codes.\n\nSigned-off-by: Blank \u003cblank.xu@qq.com\u003e\n"
    },
    {
      "commit": "57e277376e5dd185e392436d311c65aadc7376f8",
      "tree": "29ac5d3841b36d4dbddec1d07b638270a9a24df9",
      "parents": [
        "283549edb2fc6a139d52a3727ec53ae5ce024b8a"
      ],
      "author": {
        "name": "Pin Dude",
        "email": "linxing301@gmail.com",
        "time": "Sat Aug 22 00:23:59 2020 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Aug 22 00:23:59 2020 +0800"
      },
      "message": "add RemovePolicies and AddPolicies (#32)\n\nSigned-off-by: linxing \u003clinxing301@gmail.com\u003e"
    },
    {
      "commit": "283549edb2fc6a139d52a3727ec53ae5ce024b8a",
      "tree": "a246f6dc4a3a5af8b0b81b0be39ee81c05652195",
      "parents": [
        "0ca20dc2bb09df054049df3155096f13264373d4"
      ],
      "author": {
        "name": "Zixuan Liu",
        "email": "nodeces@gmail.com",
        "time": "Tue Aug 18 15:18:52 2020 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Aug 18 15:18:52 2020 +0800"
      },
      "message": "ci: update travis (#33)\n\nSigned-off-by: Zixuan Liu \u003cnodeces@gmail.com\u003e"
    },
    {
      "commit": "0ca20dc2bb09df054049df3155096f13264373d4",
      "tree": "fca3fbaf937b948c74049bb2ff32f9b061f7bbf1",
      "parents": [
        "0bb458fe3451dfb664990a4f4e1890e715b7dae1"
      ],
      "author": {
        "name": "CyJaySong",
        "email": "29367599+CyJaySong@users.noreply.github.com",
        "time": "Tue Jul 14 12:59:01 2020 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 14 12:59:01 2020 +0800"
      },
      "message": "Add custom tablename support (#30)\n\n* Fix custom tablename support"
    },
    {
      "commit": "0bb458fe3451dfb664990a4f4e1890e715b7dae1",
      "tree": "bfa01846d72f2c708408791a6489aa636e2e4a09",
      "parents": [
        "695d84de0d262c204a583e4a3fb1a59e04fd0b37",
        "299dcecb30b89c9f0c09512202dec4e0b5196b6a"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Sun Jul 12 11:13:28 2020 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 12 11:13:28 2020 +0800"
      },
      "message": "Merge pull request #31 from dovics/loadFilteredPolicy\n\nfeat: add LoadFilteredPolicy"
    },
    {
      "commit": "299dcecb30b89c9f0c09512202dec4e0b5196b6a",
      "tree": "bfa01846d72f2c708408791a6489aa636e2e4a09",
      "parents": [
        "695d84de0d262c204a583e4a3fb1a59e04fd0b37"
      ],
      "author": {
        "name": "dovics",
        "email": "wrs369@163.com",
        "time": "Sun Jul 12 10:16:27 2020 +0800"
      },
      "committer": {
        "name": "dovics",
        "email": "wrs369@163.com",
        "time": "Sun Jul 12 10:28:05 2020 +0800"
      },
      "message": "feat: add LoadFilteredPolicy\n"
    },
    {
      "commit": "695d84de0d262c204a583e4a3fb1a59e04fd0b37",
      "tree": "27a30fcdc92a3609c492eeff120ecf815d5530dc",
      "parents": [
        "79a2aa54a016320eb29cf90090f642183827750b",
        "51c7996bd9692c6dbdf5949fc29654ce747f4e11"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Wed Jun 17 14:59:16 2020 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 17 14:59:16 2020 +0800"
      },
      "message": "Merge pull request #29 from dovics/master\n\nfix: change the way of loadPolicyLine"
    },
    {
      "commit": "51c7996bd9692c6dbdf5949fc29654ce747f4e11",
      "tree": "27a30fcdc92a3609c492eeff120ecf815d5530dc",
      "parents": [
        "79a2aa54a016320eb29cf90090f642183827750b"
      ],
      "author": {
        "name": "dovics",
        "email": "wrs369@163.com",
        "time": "Wed Jun 17 08:21:47 2020 +0800"
      },
      "committer": {
        "name": "dovics",
        "email": "wrs369@163.com",
        "time": "Wed Jun 17 08:21:47 2020 +0800"
      },
      "message": "fix: change the way of loadPolicyLine\n"
    },
    {
      "commit": "79a2aa54a016320eb29cf90090f642183827750b",
      "tree": "8b86de615bf26f8096de5442a21a1ad0ee46b3cb",
      "parents": [
        "26747826035016c67ef5a381263da206504f959a",
        "c8c2b2cb5be301c7a5fafe35b602e7c27d98a363"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Thu Dec 12 19:10:58 2019 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Dec 12 19:10:58 2019 +0800"
      },
      "message": "Merge pull request #24 from mrchar/master\n\nfix issues#22"
    },
    {
      "commit": "c8c2b2cb5be301c7a5fafe35b602e7c27d98a363",
      "tree": "8b86de615bf26f8096de5442a21a1ad0ee46b3cb",
      "parents": [
        "26747826035016c67ef5a381263da206504f959a"
      ],
      "author": {
        "name": "char",
        "email": "mrchar@qq.com",
        "time": "Thu Dec 12 18:03:18 2019 +0800"
      },
      "committer": {
        "name": "char",
        "email": "mrchar@qq.com",
        "time": "Thu Dec 12 18:03:18 2019 +0800"
      },
      "message": "fix issues#22\n\ndeclares the module as \"github.com/casbin/xorm-adapter/v2.\"\n"
    },
    {
      "commit": "26747826035016c67ef5a381263da206504f959a",
      "tree": "3befdb2af4b82fef0ff12cad0780c0d6f164236c",
      "parents": [
        "f11f9b23cc3de66ee2c4e3e3670ab85dc96c3b86",
        "1fbe0b2e847a088996b12ad951c280f67ba57d71"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Wed Nov 20 11:08:38 2019 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 20 11:08:38 2019 +0800"
      },
      "message": "Merge pull request #20 from mousedownmike/feature/xorm_project_moved\n\nUpdate xorm project location"
    },
    {
      "commit": "1fbe0b2e847a088996b12ad951c280f67ba57d71",
      "tree": "3befdb2af4b82fef0ff12cad0780c0d6f164236c",
      "parents": [
        "f11f9b23cc3de66ee2c4e3e3670ab85dc96c3b86"
      ],
      "author": {
        "name": "Mike Dalrymple",
        "email": "mike@mousedown.com",
        "time": "Tue Nov 19 19:03:20 2019 -0800"
      },
      "committer": {
        "name": "Mike Dalrymple",
        "email": "mike@mousedown.com",
        "time": "Tue Nov 19 19:03:20 2019 -0800"
      },
      "message": "Update to point to new xorm project location https://gitea.com/xorm\n"
    },
    {
      "commit": "f11f9b23cc3de66ee2c4e3e3670ab85dc96c3b86",
      "tree": "65fb50bcbbbee91faadb81efe871feda23929a29",
      "parents": [
        "0629743c28574a2e97ea62421ffda3ddfb691ce2",
        "6291f6be0df8a0828010df49ac30d5f5823b7d14"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Sat Oct 26 09:13:36 2019 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Oct 26 09:13:36 2019 +0800"
      },
      "message": "Merge pull request #19 from luochuanyuewu/master\n\nfix import path for xorm, xorm is moving to gitea.com"
    },
    {
      "commit": "6291f6be0df8a0828010df49ac30d5f5823b7d14",
      "tree": "65fb50bcbbbee91faadb81efe871feda23929a29",
      "parents": [
        "0629743c28574a2e97ea62421ffda3ddfb691ce2"
      ],
      "author": {
        "name": "luochuanyuewu",
        "email": "luochuanyuewu@gmail.com",
        "time": "Sat Oct 26 01:20:09 2019 +0800"
      },
      "committer": {
        "name": "luochuanyuewu",
        "email": "luochuanyuewu@gmail.com",
        "time": "Sat Oct 26 01:20:09 2019 +0800"
      },
      "message": "fix import path for xorm, due to the fact that xorm is on longer avaliable on github soon.\n"
    },
    {
      "commit": "0629743c28574a2e97ea62421ffda3ddfb691ce2",
      "tree": "2f760b807a569ddcee44a01b66a6863eab77ba24",
      "parents": [
        "af09ce67e18640937cd62cbf0960daa71795d1a9"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Tue Aug 06 16:56:43 2019 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Tue Aug 06 16:56:43 2019 +0800"
      },
      "message": "Fix typo.\n"
    },
    {
      "commit": "af09ce67e18640937cd62cbf0960daa71795d1a9",
      "tree": "832fb648eac7a8eb38c1a4810902504553c3b2d8",
      "parents": [
        "072487b281494a0fb8f86bead6941e975d85593d"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Tue Aug 06 16:43:32 2019 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Tue Aug 06 16:43:32 2019 +0800"
      },
      "message": "Add postgresql service to Travis CI.\n"
    },
    {
      "commit": "072487b281494a0fb8f86bead6941e975d85593d",
      "tree": "9ca60604a172404ed7b33216fa6f97a9b45cc550",
      "parents": [
        "8905dad95f4f052d31c10cd825c53530a61bf878"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Tue Aug 06 16:40:08 2019 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Tue Aug 06 16:40:08 2019 +0800"
      },
      "message": "Update README to Casbin 2.x\n"
    },
    {
      "commit": "8905dad95f4f052d31c10cd825c53530a61bf878",
      "tree": "b3ecbd68e9fb33571632f074b7a39ec77df908e9",
      "parents": [
        "a317737a1007f1b445874e23f6487527df0c12a8",
        "ebef68566824a8c2980e359cf2401793fe424148"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Tue Aug 06 16:37:44 2019 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Aug 06 16:37:44 2019 +0800"
      },
      "message": "Merge pull request #16 from ctxnop/master\n\nUpdated to casbin v2 and use strings.Builder"
    },
    {
      "commit": "ebef68566824a8c2980e359cf2401793fe424148",
      "tree": "b3ecbd68e9fb33571632f074b7a39ec77df908e9",
      "parents": [
        "a317737a1007f1b445874e23f6487527df0c12a8"
      ],
      "author": {
        "name": "Loïc Collignon",
        "email": "loic.collignon@iot.bzh",
        "time": "Mon Aug 05 09:48:31 2019 +0200"
      },
      "committer": {
        "name": "Loïc Collignon",
        "email": "loic.collignon@iot.bzh",
        "time": "Tue Aug 06 10:19:23 2019 +0200"
      },
      "message": "Updated to casbin v2 and use strings.Builder\n\nUpdated imports to be used with casbin v2.\nAlso, use a strings.Builder when building some string to reduce garbage\ncollection workload.\n\nChange-Id: I8120265ab954c0ab587da4901698f0c1b4c2d074\nSigned-off-by: Loïc Collignon \u003cloic.collignon@iot.bzh\u003e\n"
    },
    {
      "commit": "a317737a1007f1b445874e23f6487527df0c12a8",
      "tree": "8326af2fb4333f5e0f3336e119f25bc9da99b75a",
      "parents": [
        "bb179984e46ca7f51f8d5f55bfd63ab2e5063b1c",
        "d9bce66133ee9916c59b8248f9658c8791d00e30"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Tue Jul 16 08:42:26 2019 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 16 08:42:26 2019 +0800"
      },
      "message": "Merge pull request #15 from Blank-Xu/improve\n\nImprove Efficiency"
    },
    {
      "commit": "d9bce66133ee9916c59b8248f9658c8791d00e30",
      "tree": "8326af2fb4333f5e0f3336e119f25bc9da99b75a",
      "parents": [
        "bb179984e46ca7f51f8d5f55bfd63ab2e5063b1c"
      ],
      "author": {
        "name": "Blank",
        "email": "blank.xu@qq.com",
        "time": "Sat Feb 16 16:11:07 2019 +0800"
      },
      "committer": {
        "name": "Blank",
        "email": "blank.xu@qq.com",
        "time": "Mon Jul 15 23:14:26 2019 +0800"
      },
      "message": "Improve Efficiency\n"
    },
    {
      "commit": "bb179984e46ca7f51f8d5f55bfd63ab2e5063b1c",
      "tree": "b3dddd2750143f045401ad165b177c7e1d57440c",
      "parents": [
        "48bf9c36e25296d21f6b8adbb7f1c2439d0c794e"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 12 22:34:47 2019 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 12 22:46:22 2019 +0800"
      },
      "message": "Use error instead of panic.\n"
    },
    {
      "commit": "48bf9c36e25296d21f6b8adbb7f1c2439d0c794e",
      "tree": "c2a3c4848619fe396b0001bae9caba81b2404d54",
      "parents": [
        "9b17d80119cb29c6d09806fbe3dc97fcbec3c01e"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 12 22:10:58 2019 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 12 22:15:26 2019 +0800"
      },
      "message": "Update to Casbin 2.x\n"
    },
    {
      "commit": "9b17d80119cb29c6d09806fbe3dc97fcbec3c01e",
      "tree": "5c2cb267e2830b59113b4939e8a117f301de1800",
      "parents": [
        "8e63783e2864c40076fbb4b62041c3ee51496258",
        "fa6c6f81271d0666121db5eff7a06c32cfc83a52"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Thu May 23 11:09:17 2019 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu May 23 11:09:17 2019 +0800"
      },
      "message": "Merge pull request #13 from ch3lo/master\n\nAdded NewAdapterByEngine"
    },
    {
      "commit": "8e63783e2864c40076fbb4b62041c3ee51496258",
      "tree": "4851738d95aeefd856ed4a2f2d78e7fc626ac3e2",
      "parents": [
        "e40cbd17d53fd7a5cee646cc1083631432bce8ee",
        "52185c5e175fca4ff9b53a7256754a09a812a126"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Tue Mar 19 07:53:44 2019 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 19 07:53:44 2019 +0800"
      },
      "message": "Merge pull request #12 from OGKevin/patch-1\n\nFix sqlite3 compatibility."
    },
    {
      "commit": "52185c5e175fca4ff9b53a7256754a09a812a126",
      "tree": "4851738d95aeefd856ed4a2f2d78e7fc626ac3e2",
      "parents": [
        "e40cbd17d53fd7a5cee646cc1083631432bce8ee"
      ],
      "author": {
        "name": "Kevin Hellemun",
        "email": "17928966+OGKevin@users.noreply.github.com",
        "time": "Mon Mar 18 01:02:49 2019 +0100"
      },
      "committer": {
        "name": "Kevin Hellemun",
        "email": "17928966+OGKevin@users.noreply.github.com",
        "time": "Mon Mar 18 09:03:35 2019 +0100"
      },
      "message": "Fix sqlite3 compatibility.\n\nSee explanation: https://github.com/casbin/gorm-adapter/pull/10#issue-261883480\n\nBasically for sqlite, the query create database should not be executed nor should the database name be appended to the data source. This will cause panics.\n\nRevert unneeded removal of database selection.\n"
    },
    {
      "commit": "fa6c6f81271d0666121db5eff7a06c32cfc83a52",
      "tree": "3393196978b72942406c15fefc9ce2e2cdcb5128",
      "parents": [
        "e40cbd17d53fd7a5cee646cc1083631432bce8ee"
      ],
      "author": {
        "name": "Marcelo Salazar",
        "email": "marcelo.salazar@latam.com",
        "time": "Sun Mar 03 19:52:33 2019 -0300"
      },
      "committer": {
        "name": "Marcelo Salazar",
        "email": "marcelo.salazar@latam.com",
        "time": "Sun Mar 03 19:52:33 2019 -0300"
      },
      "message": "Added NewAdapterByEngine\n"
    },
    {
      "commit": "e40cbd17d53fd7a5cee646cc1083631432bce8ee",
      "tree": "f800583ff3bf4286a4dc4312dd985a29dc83f7c2",
      "parents": [
        "6d86407ce2631ca1f6f6943374c6129c5b03e190"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Dec 07 23:09:28 2018 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Dec 07 23:09:28 2018 +0800"
      },
      "message": "Handle PostgreSQL duplicated db error better, fix: https://github.com/casbin/xorm-adapter/issues/8\n"
    },
    {
      "commit": "6d86407ce2631ca1f6f6943374c6129c5b03e190",
      "tree": "d3060961bc452cc88f22eee6b43c05cc2093fcaa",
      "parents": [
        "6d28ef80f4e64d865081a63145757101326af8fd"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Sat Apr 21 23:41:00 2018 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Sat Apr 21 23:41:00 2018 +0800"
      },
      "message": "Add t.Helper() to test.\n"
    },
    {
      "commit": "6d28ef80f4e64d865081a63145757101326af8fd",
      "tree": "a248f749d72c02a7ad6b87880ae64d929ca25bde",
      "parents": [
        "31e0574e2a58738e37fcd424e91965250752c36c"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Aug 11 14:15:51 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Aug 11 14:15:51 2017 +0800"
      },
      "message": "Add SQL index to gain speed.\n"
    },
    {
      "commit": "31e0574e2a58738e37fcd424e91965250752c36c",
      "tree": "c2b42727597cc537b140aeb87e0edc71b0f8bde7",
      "parents": [
        "f6d928fb731b27e3bfa87b700ecd200dba8a5b83"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Aug 11 13:07:58 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Aug 11 13:07:58 2017 +0800"
      },
      "message": "Simplify the code.\n"
    },
    {
      "commit": "f6d928fb731b27e3bfa87b700ecd200dba8a5b83",
      "tree": "078f01aeaf0834a16eda2486e28910c3f8cd72b4",
      "parents": [
        "6d58ad0ffc38c7b3a467eef7e0f3bfd34b2e1a5e"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Mon Jul 31 00:46:55 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Mon Jul 31 00:47:46 2017 +0800"
      },
      "message": "Rename the table name from \"line\" to \"casbin_rule\".\n"
    },
    {
      "commit": "6d58ad0ffc38c7b3a467eef7e0f3bfd34b2e1a5e",
      "tree": "e2c8e3820e457b4ffa4c4067012b8cd5e1466f19",
      "parents": [
        "4da985c6bd8780cd08cf3a586dc0af3396a57c44"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Sun Jul 30 13:31:01 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Sun Jul 30 13:34:50 2017 +0800"
      },
      "message": "Add dbSpecified to NewAdapter().\n"
    },
    {
      "commit": "4da985c6bd8780cd08cf3a586dc0af3396a57c44",
      "tree": "e21e2ca7ae243077c9296ce5002448aa1131f995",
      "parents": [
        "9bc5b4ee03a833e0dfb152bb19a0534b36732025"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Sat Jul 29 10:45:22 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Sat Jul 29 10:45:22 2017 +0800"
      },
      "message": "Fix a typo.\n"
    },
    {
      "commit": "9bc5b4ee03a833e0dfb152bb19a0534b36732025",
      "tree": "c73c36a8bd619b9a760f3515a4fe6b715363b39c",
      "parents": [
        "9b26d5726c665d378fe7f1c338c01eb002717f31"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Sat Jul 22 10:55:52 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Sat Jul 22 10:55:52 2017 +0800"
      },
      "message": "Add comments to auto-save functions.\n"
    },
    {
      "commit": "9b26d5726c665d378fe7f1c338c01eb002717f31",
      "tree": "ee1293b16e3a3e078f343d94358dd5f04c307a43",
      "parents": [
        "ae3806f48c95c8b8a6671d25de1d77f8b0399643"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 15:27:44 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 15:27:44 2017 +0800"
      },
      "message": "Rename testAdapter() to testSaveLoad().\n"
    },
    {
      "commit": "ae3806f48c95c8b8a6671d25de1d77f8b0399643",
      "tree": "ca2d2e644a8ee441e5694a2f1b3041b09a756fb2",
      "parents": [
        "479942d7cc2224613b0de62c481ea3d2afd10574"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 15:26:14 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 15:26:14 2017 +0800"
      },
      "message": "Add TestAutoSaves().\n"
    },
    {
      "commit": "479942d7cc2224613b0de62c481ea3d2afd10574",
      "tree": "ac31da829cb6099d9386d5bf1e888e92a71dd7cf",
      "parents": [
        "63073f9db61cf0e768f482e0b7320cee40a9cc51"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 15:23:50 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 15:23:50 2017 +0800"
      },
      "message": "Merge TestMySQLAdapter(), TestPostgresAdapter() into TestAdapters().\n"
    },
    {
      "commit": "63073f9db61cf0e768f482e0b7320cee40a9cc51",
      "tree": "b051ebee6548ac9793c6b4e64dc6369360e71bb1",
      "parents": [
        "5571f858cb1d204097f2ef524322b45efe426040"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 15:19:36 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 15:19:36 2017 +0800"
      },
      "message": "Merge initMySQLPolicy(), initPostgresPolicy() into initPolicy().\n"
    },
    {
      "commit": "5571f858cb1d204097f2ef524322b45efe426040",
      "tree": "b0e2f97b5a921f736215376431225daef64622a6",
      "parents": [
        "f54d943bf5b7cae5d1b02dc0299ce5d8bc9dadce"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 15:07:12 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 15:07:12 2017 +0800"
      },
      "message": "Implement RemoveFilteredPolicy() in the new token way.\n"
    },
    {
      "commit": "f54d943bf5b7cae5d1b02dc0299ce5d8bc9dadce",
      "tree": "7076d65bf4f75c96d558650dc9e9e82f28ff6bf9",
      "parents": [
        "8aff01e2f220a4d5c2f53a1d67836eea10d96ad0"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 14:55:39 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 14:55:39 2017 +0800"
      },
      "message": "Rename V1-V6 to V0-V5.\n"
    },
    {
      "commit": "8aff01e2f220a4d5c2f53a1d67836eea10d96ad0",
      "tree": "e4db331ba0c8ca26b0ebc3d4e2de67f171737874",
      "parents": [
        "eb61370e62396097bce18f7cdbc83503ff14a7c6"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 14:51:45 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 14:51:45 2017 +0800"
      },
      "message": "Implement AddPolicy() and RemovePolicy() in the new token way.\n"
    },
    {
      "commit": "eb61370e62396097bce18f7cdbc83503ff14a7c6",
      "tree": "8862b1b5e94d17ea14aad0ac41a01cdd819b9858",
      "parents": [
        "f4e850fe4d766bd302946366eb481612b9cef0e6"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 14:48:41 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 14:48:41 2017 +0800"
      },
      "message": "Refactor out savePolicyLine().\n"
    },
    {
      "commit": "f4e850fe4d766bd302946366eb481612b9cef0e6",
      "tree": "f214514267b9549923091626eb56e04f8cf18aa6",
      "parents": [
        "9818914023f3410e24894e47050d372fdd8acae5"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 14:45:26 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 14:45:26 2017 +0800"
      },
      "message": "Store the rule in tokens.\n"
    },
    {
      "commit": "9818914023f3410e24894e47050d372fdd8acae5",
      "tree": "2c50720ca52953defcf4e7a0d17e12e4579ad138",
      "parents": [
        "1080fab96344c351f49c9b0c229461f2a7d3151e"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 14:11:53 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 14:11:53 2017 +0800"
      },
      "message": "Replace loadPolicyLine() with persist.LoadPolicyLine().\n"
    },
    {
      "commit": "1080fab96344c351f49c9b0c229461f2a7d3151e",
      "tree": "1dfa8a811323b0ab850f3c3c236738e52ef05125",
      "parents": [
        "08a6e7a1004036c946179081606d2a2905e11eba"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 14:01:09 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 14:01:09 2017 +0800"
      },
      "message": "Describe supported databases in README.\n"
    },
    {
      "commit": "08a6e7a1004036c946179081606d2a2905e11eba",
      "tree": "40fae94d516aa5bff0b424be083bf0006f2651a8",
      "parents": [
        "ea8902039d4407f85cd2923921df51caf358aa83"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 13:49:07 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 13:49:07 2017 +0800"
      },
      "message": "Implement the RemovePolicy() function.\n"
    },
    {
      "commit": "ea8902039d4407f85cd2923921df51caf358aa83",
      "tree": "585992ebd33fe218018f56f01c7bcfb9fca369b3",
      "parents": [
        "26b6191b3f28017c8f167c4f7c7c37f4c85ec05c"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 13:35:09 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 13:35:09 2017 +0800"
      },
      "message": "Refactor out initMySQLPolicy() and initPostgresPolicy().\n"
    },
    {
      "commit": "26b6191b3f28017c8f167c4f7c7c37f4c85ec05c",
      "tree": "dfbc652085f70b98ef3b0d16752f82c211c4237c",
      "parents": [
        "67b597e52fae6b0e33101bfd62fb2630b55af1d7"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 13:30:38 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 13:30:38 2017 +0800"
      },
      "message": "Implement the AddPolicy() function.\n"
    },
    {
      "commit": "67b597e52fae6b0e33101bfd62fb2630b55af1d7",
      "tree": "b506ce9982d538320bf055241515466688255844",
      "parents": [
        "3479819434f30d1a75475951a9a86704f6c37a86"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 13:16:52 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 13:16:52 2017 +0800"
      },
      "message": "Rename Rule struct to Line.\n"
    },
    {
      "commit": "3479819434f30d1a75475951a9a86704f6c37a86",
      "tree": "dbaa5d8e30363c498ae7794d3be11040ae2ac6c6",
      "parents": [
        "0c7a2d3aaf7d61e55a58398dcfa0fb65ca40230f"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 13:11:55 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 13:11:55 2017 +0800"
      },
      "message": "Rename the policy parameter to rule.\n"
    },
    {
      "commit": "0c7a2d3aaf7d61e55a58398dcfa0fb65ca40230f",
      "tree": "c9266c930c0e47fed60107e29bb8ec52cf3ffd7d",
      "parents": [
        "ac9a9de0f87931cebb299f2b22f1f6d3990653f2"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 12:54:28 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 12:54:28 2017 +0800"
      },
      "message": "Use finalizer to close the DB. Do not open/close the DB for multiple times.\n"
    },
    {
      "commit": "ac9a9de0f87931cebb299f2b22f1f6d3990653f2",
      "tree": "683a0c5318c02f5a3a51069e0d2943a79bd7e236",
      "parents": [
        "8bae039068a9ab431e28172e10d39615582f6fdc"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 11:27:17 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 21 11:27:17 2017 +0800"
      },
      "message": "Provide empty implementation for three optional methods.\n"
    },
    {
      "commit": "8bae039068a9ab431e28172e10d39615582f6fdc",
      "tree": "3596fdb93d8fa3f8f6941c2ed5cc4640085f4ac1",
      "parents": [
        "2a760040bb7e634571011fdf7cd86b394d40f89d"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 14 10:00:21 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 14 10:00:21 2017 +0800"
      },
      "message": "Fix a typo in README.\n"
    },
    {
      "commit": "2a760040bb7e634571011fdf7cd86b394d40f89d",
      "tree": "431ff8d9a2ef7077bfa09499973d8d1ef95b4df4",
      "parents": [
        "b268c2e21d6457cc09d49dec13fae0d3a21760e5",
        "8f023c8bec2c5599c1bfedf264448a9fddb69035"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Fri Jul 14 09:58:35 2017 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 14 09:58:35 2017 +0800"
      },
      "message": "Merge pull request #1 from sadayuki-matsuno/use_postgres_backend\n\nuse postgres backend"
    },
    {
      "commit": "8f023c8bec2c5599c1bfedf264448a9fddb69035",
      "tree": "431ff8d9a2ef7077bfa09499973d8d1ef95b4df4",
      "parents": [
        "b268c2e21d6457cc09d49dec13fae0d3a21760e5"
      ],
      "author": {
        "name": "Sadayuki Matsuno",
        "email": "sadayuki.matsuno@gmail.com",
        "time": "Fri Jul 14 02:59:54 2017 +0900"
      },
      "committer": {
        "name": "Sadayuki Matsuno",
        "email": "sadayuki.matsuno@gmail.com",
        "time": "Fri Jul 14 02:59:54 2017 +0900"
      },
      "message": "use postgres backend\n"
    },
    {
      "commit": "b268c2e21d6457cc09d49dec13fae0d3a21760e5",
      "tree": "f64bd60d18bb01314ae116a890be04b8ea9e1669",
      "parents": [
        "77e8205e3a7e44d2a5f455b13ec581be8bb2e306"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Tue Jul 11 22:01:50 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Tue Jul 11 22:01:50 2017 +0800"
      },
      "message": "Add Travis CI and coverage.\n"
    },
    {
      "commit": "77e8205e3a7e44d2a5f455b13ec581be8bb2e306",
      "tree": "0156cd1d053b8763c403a41e0e2e676e5c3238b4",
      "parents": [
        "bb0206128e95ebae4ea0f78c85023a492058c2fe"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Tue Jul 11 21:59:15 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Tue Jul 11 21:59:15 2017 +0800"
      },
      "message": "Add README.\n"
    },
    {
      "commit": "bb0206128e95ebae4ea0f78c85023a492058c2fe",
      "tree": "737d681546490ca37afa607b41c4a84392d721fb",
      "parents": [
        "b84420d25b0a22ad1de545251e8a60d23d538e05"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Tue Jul 11 21:59:07 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Tue Jul 11 21:59:07 2017 +0800"
      },
      "message": "Add the code.\n"
    },
    {
      "commit": "b84420d25b0a22ad1de545251e8a60d23d538e05",
      "tree": "f4d5bb00967d589d63a12ef38e096646429f0a9f",
      "parents": [
        "d966731489197e55b769c73991d946ea2162f882"
      ],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Tue Jul 11 18:43:54 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Tue Jul 11 18:43:54 2017 +0800"
      },
      "message": "Ignore IDEA files.\n"
    },
    {
      "commit": "d966731489197e55b769c73991d946ea2162f882",
      "tree": "5d6667a39c13c0c31f555c2cc49930743f7efd55",
      "parents": [],
      "author": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Tue Jul 11 18:38:29 2017 +0800"
      },
      "committer": {
        "name": "Yang Luo",
        "email": "hsluoyz@qq.com",
        "time": "Tue Jul 11 18:38:29 2017 +0800"
      },
      "message": "Initial commit"
    }
  ]
}
