)]}'
{
  "log": [
    {
      "commit": "484018016424d215c0b87c42f4c9b57d980fbd00",
      "tree": "d0ad24f248841b648175a03a2479aba8573fcd94",
      "parents": [
        "ef8578da8d8e1217ea44313b23edf46154b198ab"
      ],
      "author": {
        "name": "Simon Hauser",
        "email": "Simon-Hauser@outlook.de",
        "time": "Tue Jan 30 10:56:56 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jan 30 10:56:56 2024"
      },
      "message": "fix: only append MethodOptions as allowed method if HandleOPTIONS is true (#360)\n\n"
    },
    {
      "commit": "ef8578da8d8e1217ea44313b23edf46154b198ab",
      "tree": "99c5dddf7d348a2840a807d151f062264e0acc87",
      "parents": [
        "0a59d7fb07b0ad37f859d10f5d8fd68f265c32c1"
      ],
      "author": {
        "name": "Hildeberto Mendonça",
        "email": "200272+htmfilho@users.noreply.github.com",
        "time": "Tue Jan 30 10:56:15 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jan 30 10:56:15 2024"
      },
      "message": "Explained how to install the package to guide beginners (#341)\n\n* Explained how to install the package to guide beginners.\r\n\r\n* Fixed small typo"
    },
    {
      "commit": "0a59d7fb07b0ad37f859d10f5d8fd68f265c32c1",
      "tree": "d9d3e945c5a4a4dc41d4bd5f34b7191a63113a60",
      "parents": [
        "d4aabdb1faa018e2dc5b6e680d4f6f3f4f5e78fa"
      ],
      "author": {
        "name": "dbubel",
        "email": "50341559+dbubel@users.noreply.github.com",
        "time": "Tue Jan 30 10:55:18 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jan 30 10:55:18 2024"
      },
      "message": "Added Intake to web frameworks based on HttpRouter (#356)\n\n* include intake in README\r\n\r\n* README: keep list of frameworks sorted\r\n\r\n---------\r\n\r\nCo-authored-by: Julien Schmidt \u003cjulienschmidt@users.noreply.github.com\u003e"
    },
    {
      "commit": "d4aabdb1faa018e2dc5b6e680d4f6f3f4f5e78fa",
      "tree": "2ce1defe3938e8657066e3e6514b482f799c0fad",
      "parents": [
        "2dc7cb6adf3b1fe0f1bce4580218e2bb1f77d85f"
      ],
      "author": {
        "name": "Saurabh Pujari",
        "email": "saurabhpuj99@gmail.com",
        "time": "Tue Jan 30 10:53:04 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jan 30 10:53:04 2024"
      },
      "message": "Added Jett to web frameworks based on HttpRouter (#355)\n\n"
    },
    {
      "commit": "2dc7cb6adf3b1fe0f1bce4580218e2bb1f77d85f",
      "tree": "d65e5bf2952445010956e97487e14eb28ae186df",
      "parents": [
        "a1456524b5691cc90a9bb2454baffa42f20af04a"
      ],
      "author": {
        "name": "xpume",
        "email": "770954908@qq.com",
        "time": "Tue Jan 30 10:52:22 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jan 30 10:52:22 2024"
      },
      "message": "tree: fix unnecessary type conversion (#365)\n\n"
    },
    {
      "commit": "a1456524b5691cc90a9bb2454baffa42f20af04a",
      "tree": "56644bd177fb3e33f3d69bd1e2c2be60de4091f3",
      "parents": [
        "f0e42ac24ea52525eda369fa601e0d8fce6a936a"
      ],
      "author": {
        "name": "David Sharnoff",
        "email": "github@dave.sharnoff.org",
        "time": "Tue Jan 30 10:51:49 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jan 30 10:51:49 2024"
      },
      "message": "Update README.md - add nchi (#368)\n\n[nchi](http://github.com/muir/nchi) is built on top of HttpRouter, add it to the list of frameworks based on HttpRouter."
    },
    {
      "commit": "f0e42ac24ea52525eda369fa601e0d8fce6a936a",
      "tree": "d56cf643e3548df0ad980adfcc9a3d5693f05e93",
      "parents": [
        "34250257ea144905c752bfaae80d6885f190daf6"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Tue Jan 30 10:47:32 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jan 30 10:47:32 2024"
      },
      "message": "README: Remove Travis Badge"
    },
    {
      "commit": "34250257ea144905c752bfaae80d6885f190daf6",
      "tree": "6bdf3620d5dde3b178a47d03069d6793c0215e9a",
      "parents": [
        "829d723ff8dce371ac6c55a1d68175d2ced8708e"
      ],
      "author": {
        "name": "Fov",
        "email": "791969680@qq.com",
        "time": "Fri Jun 03 15:51:59 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jun 03 15:51:59 2022"
      },
      "message": "Fix: #322 (#342)\n\nCo-authored-by: yuanyuan \u003cyuanyuan@umu.com\u003e"
    },
    {
      "commit": "829d723ff8dce371ac6c55a1d68175d2ced8708e",
      "tree": "8fd549da0a4e8211dd5751e0a0600a365735320d",
      "parents": [
        "fe77dd05ab5a80f54110cccf1b7d8681c2648323"
      ],
      "author": {
        "name": "Joseph Mukorivo",
        "email": "josemukorivo@gmail.com",
        "time": "Fri Jun 03 15:50:42 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jun 03 15:50:42 2022"
      },
      "message": "Use pkg.go.dev domain (#346)\n\n* fix: use the new pkg.go.dev domain instead of godoc.org\r\n\r\n* Revert \"fix: use the new pkg.go.dev domain instead of godoc.org\"\r\n\r\nThis reverts commit 7c3a938c3f3e237ff27ae5a8d4638a8112c32052.\r\n\r\n* fix: use the new pkg.go.dev domain instead of godoc.org\r\n\r\n* Update README.md"
    },
    {
      "commit": "fe77dd05ab5a80f54110cccf1b7d8681c2648323",
      "tree": "e4ea54c65d39a315c0b54a91c85cf5e8b1eecf15",
      "parents": [
        "2d16253c761c85ed5477aea0c90958e5498eae9e"
      ],
      "author": {
        "name": "Weijun Huang",
        "email": "erichuang1994@users.noreply.github.com",
        "time": "Mon Sep 21 13:50:23 2020"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 21 13:50:23 2020"
      },
      "message": "Support TSR when wildcard follows named param (#321)\n\n"
    },
    {
      "commit": "2d16253c761c85ed5477aea0c90958e5498eae9e",
      "tree": "cda1f238e4122c5199a27c4d768ad7676acdc4cc",
      "parents": [
        "4f0d8066214674e810d46f1e86cf0b88727e9549"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Aug 14 18:20:55 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Aug 14 18:20:55 2020"
      },
      "message": "router: explicitly ignore cast err and remove ps shadowing\n"
    },
    {
      "commit": "4f0d8066214674e810d46f1e86cf0b88727e9549",
      "tree": "484a4e548741a4faccf99a37a1abd0f6d2a22a13",
      "parents": [
        "574f375a9d0da0d6cb03485a026fd317c2aa928d"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Aug 14 18:19:15 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Aug 14 18:19:15 2020"
      },
      "message": "tree: reduce nesting\n"
    },
    {
      "commit": "574f375a9d0da0d6cb03485a026fd317c2aa928d",
      "tree": "376c8a2ee39723e2765183d0d3200ee47563d72e",
      "parents": [
        "6a662d88aaea791fc746bae4d9c40cf4e921ca4b"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Aug 14 18:18:46 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Aug 14 18:18:46 2020"
      },
      "message": "tree_test: remove superfluous conversions to string\n"
    },
    {
      "commit": "6a662d88aaea791fc746bae4d9c40cf4e921ca4b",
      "tree": "00e9212e3f0ecc8058d22069aacbe2bf998bdc15",
      "parents": [
        "98f8ba30b5ad2e4a8fabcde0d00cc8d6390e8926"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Aug 14 18:18:20 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Aug 14 18:18:20 2020"
      },
      "message": "tree_test: rewrite if-else chain as switch\n"
    },
    {
      "commit": "98f8ba30b5ad2e4a8fabcde0d00cc8d6390e8926",
      "tree": "ef851a15f5891435acdc3d6599c1314ccecd4cef",
      "parents": [
        "ca14a4f911b860a6c5d2b4071766f795e68cba8d"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Aug 14 18:17:12 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Aug 14 18:17:12 2020"
      },
      "message": "tree_test: remove dead code\n"
    },
    {
      "commit": "ca14a4f911b860a6c5d2b4071766f795e68cba8d",
      "tree": "5fd54eb0d7aa332738099cbb851513901a2a4291",
      "parents": [
        "f91437c9fb78979af880df4e98d539b3027cd6e8"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Aug 14 18:16:42 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Aug 14 18:16:42 2020"
      },
      "message": "Remove bare returns\n"
    },
    {
      "commit": "f91437c9fb78979af880df4e98d539b3027cd6e8",
      "tree": "54533f5e56cffdc1a468848843cc1a7b48810e7d",
      "parents": [
        "719e522b345b40a9d6ad6e65115a4420e4e508f3"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Aug 14 18:16:16 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Aug 14 18:16:16 2020"
      },
      "message": "Fix for-range scope issues\n"
    },
    {
      "commit": "719e522b345b40a9d6ad6e65115a4420e4e508f3",
      "tree": "e4229ed80de61f02206b697fbe9097fd2c3daa36",
      "parents": [
        "f028acfbffc34e9baf5bd15dfb775a43f694031b"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Jul 26 22:45:45 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Jul 26 22:45:45 2020"
      },
      "message": "tree: simplify empty tree check\n"
    },
    {
      "commit": "f028acfbffc34e9baf5bd15dfb775a43f694031b",
      "tree": "905c882f022f3b0e4ee00174c1cffd9e87a2fb86",
      "parents": [
        "8c9f31f047a304abedb5614d4a18a843cd5f4a40"
      ],
      "author": {
        "name": "Razon Yang",
        "email": "razonyang@gmail.com",
        "time": "Fri Jul 24 13:51:17 2020"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 24 13:51:17 2020"
      },
      "message": "README: Fix Automatic OPTIONS responses and CORS example bug (#314)\n\nFixes #312"
    },
    {
      "commit": "8c9f31f047a304abedb5614d4a18a843cd5f4a40",
      "tree": "c93d560dd154484071daa70b496774b192f7484c",
      "parents": [
        "bbc3ec198cdb96eafe52d6400f61a627ab671625"
      ],
      "author": {
        "name": "Grant Stephens",
        "email": "grant@stephens.co.za",
        "time": "Tue Jan 14 09:48:04 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Tue Jan 14 09:48:04 2020"
      },
      "message": "router: document OPTIONS shortcut function (#295)\n\nSmall update to documentation about the OPTIONS shortcut function"
    },
    {
      "commit": "bbc3ec198cdb96eafe52d6400f61a627ab671625",
      "tree": "8fac717e0dc7ace51aec5a5db66208a06a276d94",
      "parents": [
        "6455b8a2397b4b3942d593905f61ec0a2919f6a7"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Jan 13 20:04:31 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Jan 13 20:04:31 2020"
      },
      "message": "router: clarify that MatchedRoutePathParam is only used when Router.SaveMatchedRoutePath is set\n"
    },
    {
      "commit": "6455b8a2397b4b3942d593905f61ec0a2919f6a7",
      "tree": "acb0b012abe0fa4ec56dc3ccfda615fdc7730cbf",
      "parents": [
        "5a929245551f3b06a94a32dc1e573176b80140a9"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Jan 13 20:02:49 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Jan 13 20:02:49 2020"
      },
      "message": "router: clarify that Params.MatchedRoutePath requires Router.SaveMatchedRoutePath to be set\n"
    },
    {
      "commit": "5a929245551f3b06a94a32dc1e573176b80140a9",
      "tree": "1a4583ccf29ae4af6d94b1fd6764b936a22b67e0",
      "parents": [
        "0a8b88a57ebc6ee00c2aa568bd88e318a598232b"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Jan 13 19:59:30 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Jan 13 19:59:30 2020"
      },
      "message": "router: extend matched route path test for static routes\n"
    },
    {
      "commit": "0a8b88a57ebc6ee00c2aa568bd88e318a598232b",
      "tree": "e9ab2e2d867598b7caaa31b7f9deda96c44acb1c",
      "parents": [
        "4d33e11c88aafaaffcd28c1300128fad2f50ce2b"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Jan 12 20:46:47 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Jan 13 19:50:24 2020"
      },
      "message": "router: save matched route path to Params\n"
    },
    {
      "commit": "4d33e11c88aafaaffcd28c1300128fad2f50ce2b",
      "tree": "1c7b4e4f758993f94c9695d10d7eb580e90d216c",
      "parents": [
        "f6c6c29247efd93f6f20930285b064ca977942fb"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Jan 12 12:58:16 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Jan 13 19:46:24 2020"
      },
      "message": "router: clarify when the matched route path is saved\n"
    },
    {
      "commit": "f6c6c29247efd93f6f20930285b064ca977942fb",
      "tree": "f5048fa094ce855f423bfa6a25fcb43f846c0074",
      "parents": [
        "b64aad36d57ed0ffa2ea095059ffacfd6c9727de"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Jan 12 12:53:35 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Jan 13 19:46:24 2020"
      },
      "message": "router: extended MatchedRoutePathFromContext test\n"
    },
    {
      "commit": "b64aad36d57ed0ffa2ea095059ffacfd6c9727de",
      "tree": "5a78825e5d2867e9dda0852ef0f412faf67a2b37",
      "parents": [
        "92b40224d545dc82d51192e40442096d3efcdaa0"
      ],
      "author": {
        "name": "George MacRorie",
        "email": "me@georgemac.com",
        "time": "Thu Nov 21 13:46:54 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Jan 13 19:44:41 2020"
      },
      "message": "router: add option to save matched route path\n\nFixes #139\nFixes #286\n\nCo-authored-by: Julien Schmidt \u003cgit@julienschmidt.com\u003e\n"
    },
    {
      "commit": "92b40224d545dc82d51192e40442096d3efcdaa0",
      "tree": "80e4027a7ca45fe9086175e377eaaca453da1c93",
      "parents": [
        "cfa3cb764b4fc4eb98cae67a2020a91c79e065be"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Jan 12 12:09:26 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Jan 12 12:09:26 2020"
      },
      "message": "router: range over Params values\n"
    },
    {
      "commit": "cfa3cb764b4fc4eb98cae67a2020a91c79e065be",
      "tree": "3c40df193a496e39b0dae685ab1e1bf69a960337",
      "parents": [
        "6bade33e09870c3aab467bd44cce4410bfbd1e48"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Jan 12 12:07:48 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Jan 12 12:07:48 2020"
      },
      "message": "tree: remove duplicate assignment\n"
    },
    {
      "commit": "6bade33e09870c3aab467bd44cce4410bfbd1e48",
      "tree": "2b34be55d92fa65e73d643a1d7a3840a27780f99",
      "parents": [
        "15782a78c61201cf2fdbc138d63aa60fff114695"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Jan 11 22:00:01 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Jan 11 22:00:01 2020"
      },
      "message": "tree: use stack buffer for common cases in findCaseInsensitivePath\n"
    },
    {
      "commit": "15782a78c61201cf2fdbc138d63aa60fff114695",
      "tree": "96c5e22ddb0a95491c2bf248dea546e21650cd80",
      "parents": [
        "8e4b52b881a5220199361a383698abed7720411c"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Jan 10 11:53:29 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Jan 10 11:53:29 2020"
      },
      "message": "path: improve comments\n"
    },
    {
      "commit": "8e4b52b881a5220199361a383698abed7720411c",
      "tree": "3dea9227f870871263af02e121fbed57fa79c130",
      "parents": [
        "7b49e86e83232ee8072527dc90555e6f78fc9642"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Jan 06 14:54:43 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Jan 06 14:54:43 2020"
      },
      "message": "path: add test and benchmark for long CleanPath inputs\n"
    },
    {
      "commit": "7b49e86e83232ee8072527dc90555e6f78fc9642",
      "tree": "87089c1f97f862b6e9a26820354e905549366cbe",
      "parents": [
        "8222db13dbb3b3ab1eb84edb61a7030708b93bfa"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Jan 06 12:54:12 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Jan 06 12:54:12 2020"
      },
      "message": "path: avoid some dereferences in bufApp\n"
    },
    {
      "commit": "8222db13dbb3b3ab1eb84edb61a7030708b93bfa",
      "tree": "ea7d85dc1234b355e9c02219003db0c743372d79",
      "parents": [
        "f53938f8d3c7f4bb35e8b574ac60145097bd96b9"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Jan 06 12:35:02 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Jan 06 12:35:02 2020"
      },
      "message": "path: use stack buffer in CleanPath to avoid allocs in common case\n"
    },
    {
      "commit": "f53938f8d3c7f4bb35e8b574ac60145097bd96b9",
      "tree": "b1273f41a1c7c8eeee57a50891e0c38d3abffdf7",
      "parents": [
        "586a1d39750582cc7f7386629b12005b5309700a"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Jan 06 12:31:26 2020"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Jan 06 12:31:26 2020"
      },
      "message": "path: add CleanPath Benchmark\n"
    },
    {
      "commit": "586a1d39750582cc7f7386629b12005b5309700a",
      "tree": "815249da604e74baac304ce62b4d433f43c93196",
      "parents": [
        "08a3b3d20bbeeab9ca4889bcdb65fec0423ef882"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Oct 05 17:22:04 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Oct 05 17:22:04 2019"
      },
      "message": "tree: fix typo in comment\n"
    },
    {
      "commit": "08a3b3d20bbeeab9ca4889bcdb65fec0423ef882",
      "tree": "ab610288fa33cdacffd3d3dc601a8984fe301b1a",
      "parents": [
        "bbffb24dcda5ec5bd9a53bf843516e59cb4d2178"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Oct 05 17:17:06 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Oct 05 17:17:06 2019"
      },
      "message": "tree: use range []byte(string) loops\n\nThe compiler got smarter and optimizes this case to just iterate over\nthe bytes without any allocations.\n"
    },
    {
      "commit": "bbffb24dcda5ec5bd9a53bf843516e59cb4d2178",
      "tree": "bd3ae998c1e154679ee22a7373821558fbb5ce12",
      "parents": [
        "e746cd609a26ce7237331c6edd57fc455462095e"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Oct 05 17:00:40 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Oct 05 17:00:40 2019"
      },
      "message": "tree: reduce complexity of insertChild\n"
    },
    {
      "commit": "e746cd609a26ce7237331c6edd57fc455462095e",
      "tree": "c2652555446707a96f58354698ddae3639fb03d0",
      "parents": [
        "776638b9ee84fe3332f3969a0c4c6812b7aca734"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Oct 04 17:42:14 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Oct 04 17:42:14 2019"
      },
      "message": "tree: further simplify addRoute\n"
    },
    {
      "commit": "776638b9ee84fe3332f3969a0c4c6812b7aca734",
      "tree": "a779ac4450d5bcd5eab3e978eccf0d6c25cc2499",
      "parents": [
        "48eff9eecf5f2986feb581252b1d46bd763ee7ac"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Oct 04 16:48:04 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Oct 04 16:48:04 2019"
      },
      "message": "router: fix input validation test\n"
    },
    {
      "commit": "48eff9eecf5f2986feb581252b1d46bd763ee7ac",
      "tree": "f0047d875edf1a479db6e7712b58d383e3124a99",
      "parents": [
        "1ef69b73a2bc1a4e5ceb8267f872d10a6eb90b8d"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Oct 04 16:42:52 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Oct 04 16:42:52 2019"
      },
      "message": "router: better input validation\n"
    },
    {
      "commit": "1ef69b73a2bc1a4e5ceb8267f872d10a6eb90b8d",
      "tree": "3bf85d629026abbb76871732ce0e0d73097755d9",
      "parents": [
        "e1d836068390fda70a608348e13b5d4795b3d5d9"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Oct 04 15:32:35 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Oct 04 15:32:35 2019"
      },
      "message": "tree: return string from findCaseInsensitivePath, and only if found\n"
    },
    {
      "commit": "e1d836068390fda70a608348e13b5d4795b3d5d9",
      "tree": "3fc2cbeda3a6c1cb05a53128173b957e9f2d1753",
      "parents": [
        "6289311caafefac132cb3583bdd8d85580c0aecc"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Oct 04 15:26:22 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Oct 04 15:26:22 2019"
      },
      "message": "tree: minor documentation and style fixes in getValue\n"
    },
    {
      "commit": "6289311caafefac132cb3583bdd8d85580c0aecc",
      "tree": "885348bea158da1f6ace96c705d2dd3db6d35ddd",
      "parents": [
        "a62d42bea881adabafe26da3b3d2c9415539af8e"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Oct 04 15:20:51 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Oct 04 15:20:51 2019"
      },
      "message": "tree: improve param name check\n"
    },
    {
      "commit": "a62d42bea881adabafe26da3b3d2c9415539af8e",
      "tree": "1e78283c4e303d47fca39b2300285b4ec7ee153c",
      "parents": [
        "3e505fb5696d8a71112a3aeb131220440b47e797"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Oct 04 15:15:44 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Fri Oct 04 15:15:44 2019"
      },
      "message": "tree: improve readability of addRoute\n"
    },
    {
      "commit": "3e505fb5696d8a71112a3aeb131220440b47e797",
      "tree": "7738593356257b7f24bcffb9758a431ff9faf606",
      "parents": [
        "59e6ae001480c6e6de7dc6607b33308ccf35419d"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Thu Oct 03 10:45:25 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Thu Oct 03 10:45:25 2019"
      },
      "message": "travis: don\u0027t wait for go master build and allow it to fail\n"
    },
    {
      "commit": "59e6ae001480c6e6de7dc6607b33308ccf35419d",
      "tree": "6922ff6e5d6358718e2913266cc4855ee3a39f86",
      "parents": [
        "ab38d942a0c5f10cff6cb4795b77861c7aad2561"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Thu Oct 03 10:40:03 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Thu Oct 03 10:40:03 2019"
      },
      "message": "router: use status constants from http package and fix test\n"
    },
    {
      "commit": "ab38d942a0c5f10cff6cb4795b77861c7aad2561",
      "tree": "77dc0f2769d587caf3ad1bd5ff93c625dced257b",
      "parents": [
        "7072f59069b7dfa4273a1febe87a643e75632578"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Thu Oct 03 09:47:43 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Thu Oct 03 09:47:43 2019"
      },
      "message": "router: use status 308 instead of 307 for non-GET redirects\n\nFixes #206\n"
    },
    {
      "commit": "7072f59069b7dfa4273a1febe87a643e75632578",
      "tree": "36226340837ab78e1a0ffa1b452542b7bd2f5d7c",
      "parents": [
        "b9a36063a10f224c4ae2596f12964d9e59443515"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Sep 30 23:15:32 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Sep 30 23:15:32 2019"
      },
      "message": "router: properly handle nil params in Lookup\n\nFixes #280\n"
    },
    {
      "commit": "b9a36063a10f224c4ae2596f12964d9e59443515",
      "tree": "058fd858f8e6a573bfbe17c1bc2439979de9c6b3",
      "parents": [
        "83b1fecca6b7e284b26c8fe3f83f2a2bb5436c0f"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Sep 30 16:58:29 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Sep 30 16:58:29 2019"
      },
      "message": "tree: minor optimizations\n"
    },
    {
      "commit": "83b1fecca6b7e284b26c8fe3f83f2a2bb5436c0f",
      "tree": "82fbd214deca7aefd880f98b20a93b550560fcc6",
      "parents": [
        "bb64ef0474aabe033ecac48a0cd88e04e9878242"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Sep 30 16:34:40 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Sep 30 16:34:40 2019"
      },
      "message": "tree: comment style fixes\n"
    },
    {
      "commit": "bb64ef0474aabe033ecac48a0cd88e04e9878242",
      "tree": "4df197d49c92c54ac0fc063fb83bff753c1802dc",
      "parents": [
        "19b98be7737c102a3b78ca81c8d0e81040c4ad36"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Sep 30 16:16:10 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Sep 30 16:16:10 2019"
      },
      "message": "tree: simplify path segmentation code\n"
    },
    {
      "commit": "19b98be7737c102a3b78ca81c8d0e81040c4ad36",
      "tree": "0ca00f580c72458056be4389dfd64eef85117225",
      "parents": [
        "aa49b73dd2de41212264bf71211d8681829c71d8"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Sep 30 08:07:34 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Sep 30 08:07:34 2019"
      },
      "message": "tree: optimize countParams\n"
    },
    {
      "commit": "aa49b73dd2de41212264bf71211d8681829c71d8",
      "tree": "d4a6283073fc23b7a052a71d9a861340515b20ba",
      "parents": [
        "ebb305a39bf23ab31f5b2430e76a95dd275d5a7e"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Sep 29 16:09:18 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Sep 30 07:59:27 2019"
      },
      "message": "rooter: simplify params handling\n"
    },
    {
      "commit": "ebb305a39bf23ab31f5b2430e76a95dd275d5a7e",
      "tree": "e56e66b7beb6d4ac0d904eb8248b0c0a3c1c69a8",
      "parents": [
        "4eec211fa4e8df74ed978dc5681612131854144f"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Thu Sep 26 21:37:50 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Mon Sep 30 07:59:27 2019"
      },
      "message": "use sync.Pool for Params\n"
    },
    {
      "commit": "4eec211fa4e8df74ed978dc5681612131854144f",
      "tree": "c8950c7056b5534ef5f54832bdecaa179ac3099b",
      "parents": [
        "8e1132c0c4f38ecd8ba7d9f96149e4b52566d9e6"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Sep 29 23:21:22 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Sep 29 23:21:22 2019"
      },
      "message": "tree: fix node struct packing\n"
    },
    {
      "commit": "8e1132c0c4f38ecd8ba7d9f96149e4b52566d9e6",
      "tree": "272096eafbf688e2cfe5c4764d2dfbe3de997297",
      "parents": [
        "2fda79dd70f321055df768a9b8c89daba790277e"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Sep 29 23:21:06 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Sep 29 23:21:06 2019"
      },
      "message": "router: fix ineffective assignment in test\n"
    },
    {
      "commit": "2fda79dd70f321055df768a9b8c89daba790277e",
      "tree": "5911de357508110920986ab69973b9f66dec54b6",
      "parents": [
        "b390476b92b14b79a3df554867be35d160b5c8c1"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Sep 29 23:02:29 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Sep 29 23:02:29 2019"
      },
      "message": "router: minor style fixes\n"
    },
    {
      "commit": "b390476b92b14b79a3df554867be35d160b5c8c1",
      "tree": "a6c4be39a4a0e75193d376b4c162ba94c180162f",
      "parents": [
        "aff381be15b3011d172e03888b2022b5b919aea4"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Sep 29 20:26:07 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Sep 29 20:26:58 2019"
      },
      "message": "router: add GlobalOPTIONS handler\n\nCloses #200, #214, #260\nUpdates #156\n"
    },
    {
      "commit": "aff381be15b3011d172e03888b2022b5b919aea4",
      "tree": "0d2ba76ae020e723f53bd4e8fea49b73d9928f85",
      "parents": [
        "bcdc802b5194bea5461a5aa40f0ef0ed38dc0ca7"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Sep 29 17:49:02 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Sep 29 17:49:02 2019"
      },
      "message": "router: cache allowed methods for *\n"
    },
    {
      "commit": "bcdc802b5194bea5461a5aa40f0ef0ed38dc0ca7",
      "tree": "8e4748af125e6388ccdc222e2eaf2b8f2ad0015b",
      "parents": [
        "b64ea83919261edd921848433c9b646623212f5e"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Sep 29 17:47:51 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Sep 29 17:47:51 2019"
      },
      "message": "router: sort allowed methods\n\nFixes #248\n"
    },
    {
      "commit": "b64ea83919261edd921848433c9b646623212f5e",
      "tree": "518c558703b9fc83a0432c93508f137cac33ff86",
      "parents": [
        "4fa1cc7490cba144ea66eb98c4baedad73e2a8b1"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Wed Sep 25 22:37:31 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Wed Sep 25 22:37:31 2019"
      },
      "message": "tree: prevent adding children to catchAlls\n\nFixes #172\n"
    },
    {
      "commit": "4fa1cc7490cba144ea66eb98c4baedad73e2a8b1",
      "tree": "8c02d44d96c671fae565f99a6f49e554ff752c04",
      "parents": [
        "e62e5dfca059cb908d56c93d8a938ee6b14a6d56"
      ],
      "author": {
        "name": "chendonghai",
        "email": "cdh_cjx@163.com",
        "time": "Tue Jul 04 12:22:10 2017"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Wed Sep 25 22:07:43 2019"
      },
      "message": "router: avoid out of range with empty path(#204)\n\nCo-authored-by: Julien Schmidt \u003cgit@julienschmidt.com\u003e\n"
    },
    {
      "commit": "e62e5dfca059cb908d56c93d8a938ee6b14a6d56",
      "tree": "3219eb5c7c342624c00bf6da34f65a2f1281f881",
      "parents": [
        "1bd7422872601c5c56d6990c7f1716b7833f014d"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Wed Sep 25 21:47:55 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Wed Sep 25 21:47:55 2019"
      },
      "message": "README: fix example code spacing\n"
    },
    {
      "commit": "1bd7422872601c5c56d6990c7f1716b7833f014d",
      "tree": "7bf360fdacd0a2e48796f05f5f50b4cb4e2b8c14",
      "parents": [
        "a18f2230c76ebb8b63403b078371f529ea570acf"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Wed Sep 25 21:44:53 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Wed Sep 25 21:45:55 2019"
      },
      "message": "README: Update ParamsFromContext documentation\n"
    },
    {
      "commit": "a18f2230c76ebb8b63403b078371f529ea570acf",
      "tree": "5df620dac9aee5a9737c4dd215f92a629b8c904f",
      "parents": [
        "64894722053b8e23670e49dea3d1a8feb445ff95"
      ],
      "author": {
        "name": "Karl Pokus",
        "email": "karl.pokus@gmail.com",
        "time": "Fri Jan 04 15:34:26 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Wed Sep 25 21:45:55 2019"
      },
      "message": "add notes on accessing named params from request.Context\n"
    },
    {
      "commit": "64894722053b8e23670e49dea3d1a8feb445ff95",
      "tree": "4c32d22f7327068399af4c47a2c9e0465ac4d66a",
      "parents": [
        "21c8d5201d51ea174dae281222c42f24c61e20e6"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Wed Sep 25 21:26:36 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Wed Sep 25 21:26:36 2019"
      },
      "message": "router: store params in context only if it has contents\n"
    },
    {
      "commit": "21c8d5201d51ea174dae281222c42f24c61e20e6",
      "tree": "b1d75167daf994512e8dd1c57de023957703daac",
      "parents": [
        "0162dec293e2e5a2a7e1c66c03d95df69a89a347"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Wed Sep 25 20:53:52 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Wed Sep 25 20:53:52 2019"
      },
      "message": "router: add test for ParamsFromContext\n"
    },
    {
      "commit": "0162dec293e2e5a2a7e1c66c03d95df69a89a347",
      "tree": "20b155418c853e762f543950cdd934fdb69f9365",
      "parents": [
        "4c7fa626ec2b0dcdf2a926656da705a4a1f0208d"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Wed Sep 25 20:39:14 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Wed Sep 25 20:46:00 2019"
      },
      "message": "router: move context params stuff to router.go\n"
    },
    {
      "commit": "4c7fa626ec2b0dcdf2a926656da705a4a1f0208d",
      "tree": "bc1817ebcf3e9cd690a5b08f3e01636dbc2de287",
      "parents": [
        "ccb1657ac6d5d3c7e98861d977faaf2a0f9507b7"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Wed Sep 25 20:29:11 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Wed Sep 25 20:32:58 2019"
      },
      "message": "tree: add test for #261\n"
    },
    {
      "commit": "ccb1657ac6d5d3c7e98861d977faaf2a0f9507b7",
      "tree": "d2b316a7884ba90b29ff6169fcdd27aec0a43f74",
      "parents": [
        "df4f025f65278a1d4f2a6baaf9ea4a3081b0c2b4"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Wed Sep 25 20:20:06 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Wed Sep 25 20:32:58 2019"
      },
      "message": "tree: simplify maxParams check for catch-all and add comment\n"
    },
    {
      "commit": "df4f025f65278a1d4f2a6baaf9ea4a3081b0c2b4",
      "tree": "6a694a67d3b19349e82fa026e43dce3c0f104742",
      "parents": [
        "667c1dbb44f3b5528b874c3c9071b23702e3dd0f"
      ],
      "author": {
        "name": "lianxm",
        "email": "1034552569@qq.com",
        "time": "Thu Dec 06 10:24:51 2018"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Wed Sep 25 20:32:58 2019"
      },
      "message": "fix maxParams bug\n"
    },
    {
      "commit": "667c1dbb44f3b5528b874c3c9071b23702e3dd0f",
      "tree": "845f3e3ad1b5d29be974c4c6e7034d5b7e9fac27",
      "parents": [
        "6d4f4fb4d2ae6d1cb069aecb0e330fd3ee9e0b43"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Tue Sep 24 00:07:05 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Tue Sep 24 00:07:05 2019"
      },
      "message": "tree: fix findCaseInsensitivePath for split multibyte runes\n"
    },
    {
      "commit": "6d4f4fb4d2ae6d1cb069aecb0e330fd3ee9e0b43",
      "tree": "e4f38a7a659f7b8f8820c8da3535731a072f6f0d",
      "parents": [
        "705dec71322f50c507dc0c13e8d2fbc2ec6212be"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Sep 15 22:21:01 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Sep 15 22:21:01 2019"
      },
      "message": "README: fix typos and other minor things\n"
    },
    {
      "commit": "705dec71322f50c507dc0c13e8d2fbc2ec6212be",
      "tree": "a39fb9a71f620243c6ddae408b91b598836829be",
      "parents": [
        "5ae94dc50114da2d1a0bd1ee2206c106bbc4530b"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Sep 14 11:02:06 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Sep 14 11:02:21 2019"
      },
      "message": "increase min go version to 1.7, remove legacy params\n"
    },
    {
      "commit": "5ae94dc50114da2d1a0bd1ee2206c106bbc4530b",
      "tree": "f40201205ff571d510a1bfa89d6cc3ad5494cbd6",
      "parents": [
        "21a0ca1f7c060b1e886398e1cba0ebd595750cd5"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Sep 14 10:55:27 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Sep 14 10:55:27 2019"
      },
      "message": "min go version is 1.6\n"
    },
    {
      "commit": "21a0ca1f7c060b1e886398e1cba0ebd595750cd5",
      "tree": "f3bcd0aa1ae4529f8e7702323308132d615da4cb",
      "parents": [
        "b6cd75ec14496953f1c5c8cfef8eb902948b1408"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Sep 14 10:43:48 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Sep 14 10:47:28 2019"
      },
      "message": "Fix LICENSE\n\nThe wording of the license text unintentionally subtly deviated from the 3-clause BSD license.\n\nFixes #269\n"
    },
    {
      "commit": "b6cd75ec14496953f1c5c8cfef8eb902948b1408",
      "tree": "ccb068ee7ea6f3451e1738c58698b50197d0ebf5",
      "parents": [
        "2d849fc0bce7c1d1590cea59759cbb38ffec65df"
      ],
      "author": {
        "name": "Vamshi Palreddy",
        "email": "vamshi29292@gmail.com",
        "time": "Sat Sep 14 10:34:54 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Sat Sep 14 10:34:54 2019"
      },
      "message": "Remove Roxanna from the list of frameworks (#265)\n\nLink doesn\u0027t work anymore."
    },
    {
      "commit": "2d849fc0bce7c1d1590cea59759cbb38ffec65df",
      "tree": "9c3b8155c798e1e8b0abb90d5d1dd27aa9c08179",
      "parents": [
        "90ef33e1709f1f049b2ecc4dfab58869d93eff14"
      ],
      "author": {
        "name": "Sean Chen",
        "email": "40845434+two@users.noreply.github.com",
        "time": "Sat Sep 14 10:33:30 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Sat Sep 14 10:33:30 2019"
      },
      "message": "use maxParamCount const instead of magic number (#247)\n\n"
    },
    {
      "commit": "90ef33e1709f1f049b2ecc4dfab58869d93eff14",
      "tree": "838e94e4371b8263c3fff57a9393c2404bbe1877",
      "parents": [
        "3ec713a2984315dea644a425f3c86bea454f221a"
      ],
      "author": {
        "name": "Jeremy Loy",
        "email": "jeremy.b.loy@icloud.com",
        "time": "Sat Sep 14 10:32:11 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Sat Sep 14 10:32:11 2019"
      },
      "message": "Use http.Method Constants (#256)\n\n"
    },
    {
      "commit": "3ec713a2984315dea644a425f3c86bea454f221a",
      "tree": "c46db1c4f984da493d41d24c0ab1558ca5f479ec",
      "parents": [
        "d3aedbc352d8f9258e721e8f2382873f0ae6a1a2"
      ],
      "author": {
        "name": "chai2010",
        "email": "chaishushan@gmail.com",
        "time": "Sat Sep 14 10:30:09 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Sat Sep 14 10:30:09 2019"
      },
      "message": "Add pbgo to list of frameworks (#245)\n\n"
    },
    {
      "commit": "d3aedbc352d8f9258e721e8f2382873f0ae6a1a2",
      "tree": "fe4e8679897e25f3a08e07c238d75c378355903b",
      "parents": [
        "4edaa04a1431b7c298d514203becc04b62d1fc53"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Sep 14 10:18:32 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Sep 14 10:21:00 2019"
      },
      "message": "travis: remove golint\n"
    },
    {
      "commit": "4edaa04a1431b7c298d514203becc04b62d1fc53",
      "tree": "9de2481e01ef5e6e01b0c0066574245877b60ce7",
      "parents": [
        "9d035f2fa6b76e255e58e604cb11b3b52f3a74f4"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Sep 14 10:15:53 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Sep 14 10:15:53 2019"
      },
      "message": "add go.mod\n"
    },
    {
      "commit": "9d035f2fa6b76e255e58e604cb11b3b52f3a74f4",
      "tree": "ece3f8a66150064f2f7ce434f7db1ffce273d7a7",
      "parents": [
        "8a04eca2f9537762b5f0c22d36763126cf0f3ef8"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Sep 14 10:13:04 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Sep 14 10:13:04 2019"
      },
      "message": "travis: remove useless gocover dependency\n"
    },
    {
      "commit": "8a04eca2f9537762b5f0c22d36763126cf0f3ef8",
      "tree": "cbc6dfb6c64904893e456894326a415613d47f9a",
      "parents": [
        "26a05976f9bf5c3aa992cc20e8588c359418ee58"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Sep 14 10:12:16 2019"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Sep 14 10:12:16 2019"
      },
      "message": "travis: update go versions\n"
    },
    {
      "commit": "26a05976f9bf5c3aa992cc20e8588c359418ee58",
      "tree": "68396e64d5cbd8cb82bd71d157bc8ffa88a9c6b1",
      "parents": [
        "606cda683640239cd05e3de6034756296adbf01d"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Oct 21 22:38:31 2018"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sun Oct 21 22:38:31 2018"
      },
      "message": "update travis config\n"
    },
    {
      "commit": "606cda683640239cd05e3de6034756296adbf01d",
      "tree": "d059da3866fa3c44c659356dc1458d180ca372bf",
      "parents": [
        "348b672cd90d8190f8240323e372ecd1e66b59dc"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Oct 13 19:42:57 2018"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Sat Oct 13 19:42:57 2018"
      },
      "message": "travis: fix golint import path\n"
    },
    {
      "commit": "348b672cd90d8190f8240323e372ecd1e66b59dc",
      "tree": "855d0cd6a36fe5c97d38e41460793a4b728b3807",
      "parents": [
        "adbc77eec0d91467376ca515bc3a14b8434d0f18"
      ],
      "author": {
        "name": "soren yang",
        "email": "SorenYang@foxmail.com",
        "time": "Sun Jul 15 16:18:54 2018"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Sun Jul 15 16:18:54 2018"
      },
      "message": "small enhance at CleanPath (#243)\n\n"
    },
    {
      "commit": "adbc77eec0d91467376ca515bc3a14b8434d0f18",
      "tree": "ac1d99821d7e1f887ae7b28d29369ac5b5a6e206",
      "parents": [
        "5aa29e8dfcfa8e46993f5058297931ec75eb93dd"
      ],
      "author": {
        "name": "Todd Niswonger",
        "email": "tniswong@users.noreply.github.com",
        "time": "Wed Apr 11 15:45:01 2018"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Wed Apr 11 15:45:01 2018"
      },
      "message": "Throw 405 if !handleOPTIONS and no OPTIONS handler set (#201)\n\n"
    },
    {
      "commit": "5aa29e8dfcfa8e46993f5058297931ec75eb93dd",
      "tree": "540e37d7965b0a430c60c9cf3ce5ea23b9889eb3",
      "parents": [
        "d1898390779332322e6b5ca5011da4bf249bb056"
      ],
      "author": {
        "name": "Huan Wang",
        "email": "fredwanghuan@gmail.com",
        "time": "Wed Apr 11 15:39:45 2018"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Wed Apr 11 15:39:45 2018"
      },
      "message": "path: fix missing root in paths with length 2 (#239)\n\n"
    },
    {
      "commit": "d1898390779332322e6b5ca5011da4bf249bb056",
      "tree": "f857f28e3721cc23c896fc0d35428432fc0b6e9b",
      "parents": [
        "8545a7bcb55ffd416fa6d52914b60b8f38b0ada1"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Thu Feb 22 16:05:26 2018"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Thu Feb 22 16:05:26 2018"
      },
      "message": "travis: fix Go 1.10 env\n"
    },
    {
      "commit": "8545a7bcb55ffd416fa6d52914b60b8f38b0ada1",
      "tree": "83219ce7e026189a77197a3c795444d85e27928b",
      "parents": [
        "a859014af401ec5c1e642c95b5708dea5a86579d"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Thu Feb 22 15:58:21 2018"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Thu Feb 22 15:58:21 2018"
      },
      "message": "travis: test with Go 1.10\n"
    },
    {
      "commit": "a859014af401ec5c1e642c95b5708dea5a86579d",
      "tree": "43802f968c87f88d41b1c698bb5be5d264f8fa01",
      "parents": [
        "1a335ec78c93251aa9196c093c6f3d95d8ecef97"
      ],
      "author": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Thu Feb 22 14:38:39 2018"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "git@julienschmidt.com",
        "time": "Thu Feb 22 14:38:39 2018"
      },
      "message": "rename params files\n"
    },
    {
      "commit": "1a335ec78c93251aa9196c093c6f3d95d8ecef97",
      "tree": "66b07a4041ed0bc465e837225dacfdb2383f31b8",
      "parents": [
        "6115e6d293c580eb958850a81c95a66079696c0d"
      ],
      "author": {
        "name": "Rodolfo Rodriguez",
        "email": "rodolfo.rodrigarci@gmail.com",
        "time": "Thu Feb 22 14:29:06 2018"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Thu Feb 22 14:29:06 2018"
      },
      "message": "Update README.md (#225)\n\n"
    },
    {
      "commit": "6115e6d293c580eb958850a81c95a66079696c0d",
      "tree": "4c823c002ed3835b5213463732ada963e2c413b5",
      "parents": [
        "d767e5908949fd4ad5ada98690d44c86d5b1a893"
      ],
      "author": {
        "name": "Marcus Franke",
        "email": "marcus.franke@gmail.com",
        "time": "Thu Feb 22 14:27:37 2018"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Thu Feb 22 14:27:37 2018"
      },
      "message": "travis: go versions (#227)\n\nThere is a gap in the tested go versions. tip points already to the coming 1.10.\r\nI added the kind of missing 1.9 release"
    },
    {
      "commit": "d767e5908949fd4ad5ada98690d44c86d5b1a893",
      "tree": "e96c5f81bc2585ed6029dba9d0d243c214d12008",
      "parents": [
        "e1b9828bc9e5904baec057a154c09ca40fe7fae0"
      ],
      "author": {
        "name": "Travis Parker",
        "email": "travis.parker@gmail.com",
        "time": "Thu Feb 22 14:26:55 2018"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Thu Feb 22 14:26:55 2018"
      },
      "message": "Params via Go 1.7 Contexts (#147)\n\n* Supports Params in net/http Handlers with go1.7+\r\n\r\nGo 1.7 introduces request-scoped context, providing a place to hang\r\nParams even in net/http standard Handlers attached with Router.Handler\r\nor Router.HandlerFunc.\r\n\r\nThis provides an alternative implementation of Router.Handler which\r\nattaches the params to the request context. It also includes a bit of\r\nnew public API: ParamsKey is the context key used, and\r\nParamsFromContext uses ParamsKey to get Params from a context.Context.\r\n\r\nAll of this is guarded by a \"go1.7\" build tag. With go 1.6 and older\r\nnone of the new API is available and Params continue to be thrown away\r\nin Handler/HandlerFunc-attached endpoints.\r\n\r\n* WithValue is the \u0027context\u0027 function\r\n\r\n* use an un-exported struct{} alias to collision-proof the key\r\n\r\n* no longer a const\r\n\r\n* update README.md to reflect additional allocations with the stdlib-compatible api\r\n"
    },
    {
      "commit": "e1b9828bc9e5904baec057a154c09ca40fe7fae0",
      "tree": "c914c968f7cb43f0378e9e5e3b5e0d9e62b8f5db",
      "parents": [
        "1779f7e889ee7a0ce8221a2d9a77140c8659cd47"
      ],
      "author": {
        "name": "Conor Landry",
        "email": "clandry94@ufl.edu",
        "time": "Fri Oct 27 13:37:09 2017"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Fri Oct 27 13:37:09 2017"
      },
      "message": "README: Fix typo in example code comment for ServeHTTP method (#193)\n\n"
    },
    {
      "commit": "1779f7e889ee7a0ce8221a2d9a77140c8659cd47",
      "tree": "2a1f88f8aae101493d38b77100dd87a8ae35bee0",
      "parents": [
        "0b0afca848ce5cf472a0dbb426b54e5cdb630f16"
      ],
      "author": {
        "name": "Edward Betts",
        "email": "edward@4angle.com",
        "time": "Fri Oct 27 13:35:24 2017"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Fri Oct 27 13:35:24 2017"
      },
      "message": "README: fix typo (#215)\n\nSame as #221 🤷‍♂️"
    },
    {
      "commit": "0b0afca848ce5cf472a0dbb426b54e5cdb630f16",
      "tree": "2a1f88f8aae101493d38b77100dd87a8ae35bee0",
      "parents": [
        "78865fbbf4a4e0e73fa1d65b4df3c01311b0a912"
      ],
      "author": {
        "name": "Rebecca Stambler",
        "email": "rstambler@golang.org",
        "time": "Fri Oct 27 13:33:06 2017"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Fri Oct 27 13:33:06 2017"
      },
      "message": "router_test.go: fix to handle changes to Content-Type header (#220)\n\n"
    },
    {
      "commit": "78865fbbf4a4e0e73fa1d65b4df3c01311b0a912",
      "tree": "bb3cc1023092747b29f516db0bd5bbec9a61ed08",
      "parents": [
        "975b5c4c7c21c0e3d2764200bf2aa8e34657ae6e"
      ],
      "author": {
        "name": "Darren Scerri",
        "email": "darren@scerri.me",
        "time": "Fri Oct 27 13:31:57 2017"
      },
      "committer": {
        "name": "Julien Schmidt",
        "email": "julienschmidt@users.noreply.github.com",
        "time": "Fri Oct 27 13:31:57 2017"
      },
      "message": "README: Fix typo (#221)\n\n"
    }
  ],
  "next": "975b5c4c7c21c0e3d2764200bf2aa8e34657ae6e"
}
