)]}'
{
  "log": [
    {
      "commit": "6f3abd72f38c8dca4fd146634216f4b5d3301646",
      "tree": "ba4e7102aa3c0a9727fa99e1d5ca02da4dd44414",
      "parents": [
        "cc9f70053599eab616aa522f34eae1b32d6d3e23"
      ],
      "author": {
        "name": "Neil Williams",
        "email": "neil@reddit.com",
        "time": "Sun Feb 15 23:58:31 2026"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Mon Feb 16 00:12:03 2026"
      },
      "message": "config: support ~ as user\u0027s home directory in Include\n\nIn ssh_config(5) it says:\n\n    each pathname may contain glob(7) wildcards and, for user\n    configurations, shell-like \u0027~\u0027 references to user home directories.\n\nThis adds support for expanding the ~ into the path for the user\u0027s home\ndirectory when not parsing a system config.\n\nCloses #31.\n\nCo-Authored-By: Claude Opus 4.6 \u003cnoreply@anthropic.com\u003e\n"
    },
    {
      "commit": "cc9f70053599eab616aa522f34eae1b32d6d3e23",
      "tree": "b39db64cd7d9e96771a9eb52342fc7052451ab7a",
      "parents": [
        "538d5a78536d897be3ed48a94d41d863b92961ed"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sun Feb 15 22:30:32 2026"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Mon Feb 16 00:06:01 2026"
      },
      "message": "config: simplify composite literal in newConfig\n\nAlso add a check to the repo to ensure that we can\u0027t make this\nsame mistake again. Uses github.com/kevinburke/differ to run gofmt\n-s -w and fail if any files are modified, catching redundant type\nannotations in composite literals and other simplifications.\n\nCo-Authored-By: Claude Opus 4.6 \u003cnoreply@anthropic.com\u003e\n"
    },
    {
      "commit": "538d5a78536d897be3ed48a94d41d863b92961ed",
      "tree": "abce65d57eacfa0cf86403f62b7e10147131ea31",
      "parents": [
        "04e0fd693c75ffbe3377458a77e19c414b11193c"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sun Feb 15 13:12:03 2026"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sun Feb 15 13:12:03 2026"
      },
      "message": "config: default to a space before \u0027#\u0027 in EOL comments\n\nWhen a Host or KV is created programmatically with an EOLComment,\nthe unexported spaceBeforeComment/spaceAfterValue fields default to\n\"\", producing output like \"Host foo#comment\" with no space before\nthe \u0027#\u0027. Default to a single space when a comment is present but\nno spacing has been set.\n\nFixes #50.\n\nCo-Authored-By: Claude Opus 4.6 \u003cnoreply@anthropic.com\u003e\n"
    },
    {
      "commit": "04e0fd693c75ffbe3377458a77e19c414b11193c",
      "tree": "cf4676dc635fc62c641d05524eaa134cb6ee4e61",
      "parents": [
        "568811ae7cc1ae0265dcc717bcf5a3f6e416a2b6"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sun Feb 15 12:51:11 2026"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sun Feb 15 12:51:11 2026"
      },
      "message": "config: strip surrounding double quotes from parsed values\n\nOpenSSH allows values to be surrounded by double quotes (e.g.\nIdentityFile \"/path/to/file\"), but Get/GetAll returned those quotes\nas literal characters, causing file-not-found errors for consumers.\n\nStrip surrounding double quotes from KV.Value at parse time, while\npreserving the original text in a rawValue field so that String()\nand MarshalText() can roundtrip the config file faithfully.\n\nFixes #61.\n\nCo-Authored-By: Claude Opus 4.6 \u003cnoreply@anthropic.com\u003e\n"
    },
    {
      "commit": "568811ae7cc1ae0265dcc717bcf5a3f6e416a2b6",
      "tree": "d76af570405583732017f2f1724c47b05911513b",
      "parents": [
        "e0b4ce953a70794a085eb763967633a835c1e7f4"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sat Feb 14 12:26:35 2026"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sat Feb 14 12:26:35 2026"
      },
      "message": "ci: disable setup-go cache, update checkout to v6\n\nsetup-go has caching enabled by default and looks for go.sum, which\ndoesn\u0027t exist since this project has no external dependencies.\n\nCo-Authored-By: Claude Opus 4.6 \u003cnoreply@anthropic.com\u003e\n"
    },
    {
      "commit": "e0b4ce953a70794a085eb763967633a835c1e7f4",
      "tree": "9298da226f102ef732c979f8da8e778761a1eac9",
      "parents": [
        "f2e12b8b8c1769efe9f803f351fd5d19fd303ce5"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sat Feb 14 12:18:44 2026"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sat Feb 14 12:18:44 2026"
      },
      "message": "1.5.0\n"
    },
    {
      "commit": "f2e12b8b8c1769efe9f803f351fd5d19fd303ce5",
      "tree": "62c1626f3574d731a909fefc7ed3ab63dc61ed59",
      "parents": [
        "f1fac02d87e79645383834fa89e9bb7ca049320e"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sat Feb 14 12:16:16 2026"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sat Feb 14 12:16:16 2026"
      },
      "message": "CHANGELOG.md: improve fidelity and dates\n"
    },
    {
      "commit": "f1fac02d87e79645383834fa89e9bb7ca049320e",
      "tree": "d7d534bba60245ace6bcda84c2b61f8245709d19",
      "parents": [
        "482de704302ff32e1f95f3e7d4e09a99fb10e36e"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Feb 12 13:07:27 2026"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Fri Feb 13 15:08:39 2026"
      },
      "message": "all: implement Match support\n\nThis implements most of the spec for Match while still leaving \u0027Match\nexec\u0027 unimplemented.\n\nAdd new tests for this functionality, as well as measures of code\ncoverage, and then add additional tests based on the code coverage\nresults.\n\nImplements changes from https://github.com/kevinburke/ssh_config/pull/67\n\nCo-Authored-By: sio2boss \u003csio2boss@users.noreply.github.com\u003e\nCo-Authored-By: Claude Opus 4.6 \u003cnoreply@anthropic.com\u003e\n"
    },
    {
      "commit": "482de704302ff32e1f95f3e7d4e09a99fb10e36e",
      "tree": "1fac8a3922be9eb518ab78c5dc2dabbcee34ebbb",
      "parents": [
        "40dba82e609e5e30fa27cb62f5ecf8ca2f285b9c"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Sep 18 22:52:27 2025"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Sep 18 22:52:27 2025"
      },
      "message": "SECURITY.md: add\n"
    },
    {
      "commit": "40dba82e609e5e30fa27cb62f5ecf8ca2f285b9c",
      "tree": "78c643f757f24e2af6e52f0406a7a4f1116a5c97",
      "parents": [
        "4d09c9dd1eb6ca8d20bbfcbdad78b2fcbc653db4"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Sep 18 22:02:43 2025"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Sep 18 22:02:43 2025"
      },
      "message": ".github: add dependabot configuration\n"
    },
    {
      "commit": "4d09c9dd1eb6ca8d20bbfcbdad78b2fcbc653db4",
      "tree": "1a82a27bac77de57ed0c0cb0c9d4b7e4c43b66f0",
      "parents": [
        "d87420c3e28c1ebb3b8a1f39592c925bfbb8174c"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Wed Sep 17 14:27:03 2025"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Wed Sep 17 14:27:03 2025"
      },
      "message": ".github: latest Go version\n\nAlso switch back to the official \u0027actions\u0027 Go installer, and latest\nversions of each.\n"
    },
    {
      "commit": "d87420c3e28c1ebb3b8a1f39592c925bfbb8174c",
      "tree": "5c81fc94a77647d922e95cf6b8b6b2bcaeeab6cb",
      "parents": [
        "6cb5d6c7abb577f3104aabbe5d8063156317a4e9"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Tue Aug 19 20:36:04 2025"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Tue Aug 19 20:36:04 2025"
      },
      "message": "1.4.0\n"
    },
    {
      "commit": "6cb5d6c7abb577f3104aabbe5d8063156317a4e9",
      "tree": "114f5d6e4ae78d618874553dbde6986409a2131e",
      "parents": [
        "bf7d55a2d04a1a63e04501bc0fe8e9a7d013f9bf"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Tue Aug 19 20:35:30 2025"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Tue Aug 19 20:35:30 2025"
      },
      "message": "config: change release format to \"1.3.0\"\n\nThis makes things nicer when/if you are importing this library in a\nGo program, otherwise go.mod reports a long version number with the\ncommit and date.\n"
    },
    {
      "commit": "bf7d55a2d04a1a63e04501bc0fe8e9a7d013f9bf",
      "tree": "5b6aa9d7d8729def54dd255574db4841edc6530c",
      "parents": [
        "d227026b5b77d4a47bd1f5bea2fd958586d6e1f4"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Tue Aug 19 20:32:46 2025"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Tue Aug 19 20:35:03 2025"
      },
      "message": "CHANGELOG,AUTHORS.txt: add notes and add Simon Josefsson\n"
    },
    {
      "commit": "d227026b5b77d4a47bd1f5bea2fd958586d6e1f4",
      "tree": "34ec50a26cd530aa777736bf160cff6c85b2d0e3",
      "parents": [
        "1bd630c1057da6bd6192af0ab6db9d0c94f86863"
      ],
      "author": {
        "name": "Simon Josefsson",
        "email": "simon@josefsson.org",
        "time": "Tue Aug 19 13:30:46 2025"
      },
      "committer": {
        "name": "Simon Josefsson",
        "email": "simon@josefsson.org",
        "time": "Tue Aug 19 13:42:04 2025"
      },
      "message": "Store tests/dos-lines as CRLF in git instead of using .gitattributes (#72)\n"
    },
    {
      "commit": "1bd630c1057da6bd6192af0ab6db9d0c94f86863",
      "tree": "095154fbea9b1cbb76e03a509cfc2497d6a6503a",
      "parents": [
        "200a8b4c545bc9fffed7e41a68c9aee6b6562fd3"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Feb 20 08:21:01 2025"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Feb 20 08:21:01 2025"
      },
      "message": "1.3\n"
    },
    {
      "commit": "200a8b4c545bc9fffed7e41a68c9aee6b6562fd3",
      "tree": "ca5955ad163af3cfa37b10728a2d6e13a810b614",
      "parents": [
        "1d09c0b50564c4a7f8c56c9d5d6d935e06ee94da"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Feb 20 08:02:43 2025"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Feb 20 08:20:14 2025"
      },
      "message": ".github: update CI for more recent Go versions\n"
    },
    {
      "commit": "1d09c0b50564c4a7f8c56c9d5d6d935e06ee94da",
      "tree": "da8eb940172f46c3f611707e85f41a598a279c03",
      "parents": [
        "974a52c2c04b3e24e189311ef9776b87153dd961"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sun Oct 22 04:21:54 2023"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sun Oct 22 04:24:32 2023"
      },
      "message": ".github: set latest Go versions\n"
    },
    {
      "commit": "974a52c2c04b3e24e189311ef9776b87153dd961",
      "tree": "38fcf156d540104381b94851fdbe7ffd1dfe2402",
      "parents": [
        "3c7724c1bbc42e3e240ee4ba47b0454c8de2c092"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Fri Nov 25 15:46:23 2022"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Fri Nov 25 15:46:23 2022"
      },
      "message": ".github: use Go 1.19\n"
    },
    {
      "commit": "3c7724c1bbc42e3e240ee4ba47b0454c8de2c092",
      "tree": "d019f1c3210e2bb4ecb4c304e2daa25be587162a",
      "parents": [
        "7df84450529f63af3613b1fc8d8d87ccbf87bc36"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Wed Nov 09 04:20:52 2022"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Wed Nov 09 04:20:52 2022"
      },
      "message": "README.md: update donate information\n"
    },
    {
      "commit": "7df84450529f63af3613b1fc8d8d87ccbf87bc36",
      "tree": "9e872d560820ce7a81a19a872a7f54e053df1d5e",
      "parents": [
        "a56e914e72838f8ba013f750ccb71ff6d5d25529"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Wed Jun 15 16:39:35 2022"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Wed Jun 15 16:39:52 2022"
      },
      "message": "go.mod: add\n"
    },
    {
      "commit": "a56e914e72838f8ba013f750ccb71ff6d5d25529",
      "tree": "26892469ca0ec01823f3d173f480ab0f3d7530cf",
      "parents": [
        "5724bd127982289dd52e79933bbe60b98a5b639e"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sun Jun 05 19:50:36 2022"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sun Jun 05 20:48:31 2022"
      },
      "message": ".github: run lint only on Go 1.18\n"
    },
    {
      "commit": "5724bd127982289dd52e79933bbe60b98a5b639e",
      "tree": "f2fbaac6f05cad8cf129fd7155b1b880d92ebbc9",
      "parents": [
        "aae6f39972de32733b05fe16635cee42383b7fd0"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sun Jun 05 19:44:00 2022"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sun Jun 05 19:47:11 2022"
      },
      "message": "config: add UserSettings.ConfigFinder\n\nFixes #48.\n"
    },
    {
      "commit": "aae6f39972de32733b05fe16635cee42383b7fd0",
      "tree": "7aaa4ba2989fd116150c475c3bf3de6ca41f2feb",
      "parents": [
        "df4d8e6716fcd4f51d524eb1930761d003bd4db8"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Mar 31 18:37:00 2022"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Mar 31 18:37:00 2022"
      },
      "message": "1.2\n"
    },
    {
      "commit": "df4d8e6716fcd4f51d524eb1930761d003bd4db8",
      "tree": "04aee3345f11fc96e0eb45eda1886c5cbbdcc11b",
      "parents": [
        "f6c711132329f21728354e04e7fa5349e2c44123"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Mar 31 18:36:52 2022"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Mar 31 18:36:52 2022"
      },
      "message": "config: update version to match git tags\n"
    },
    {
      "commit": "f6c711132329f21728354e04e7fa5349e2c44123",
      "tree": "ca0d735fea19fa9f4b49632aea00e5679ff82dfe",
      "parents": [
        "9b1b4df300dad4631e3eb7c0ad6c1ebc46d26e6f"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Mar 31 17:59:35 2022"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Mar 31 17:59:35 2022"
      },
      "message": "Makefile: add tag prefix to release command\n\nThis makes go.mod happier.\n"
    },
    {
      "commit": "9b1b4df300dad4631e3eb7c0ad6c1ebc46d26e6f",
      "tree": "d509983f8ab4d5955ececac59f85aabce35fed83",
      "parents": [
        "91cd224c7f262013b7d44b3b3a9dbeacf3ced698"
      ],
      "author": {
        "name": "Scott Lessans",
        "email": "slessans@gmail.com",
        "time": "Tue Mar 29 19:56:20 2022"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Mar 31 17:57:24 2022"
      },
      "message": "config: fix EOL whitespace for key/value pairs and Host lines\n\nSee the description in the CHANGELOG - we were handling this\nincorrectly and attaching whitespace to the end of values where that\ndidn\u0027t make much sense to do.\n"
    },
    {
      "commit": "91cd224c7f262013b7d44b3b3a9dbeacf3ced698",
      "tree": "a5705c7f0b1073da997a0dca69c8b86ab1bc2723",
      "parents": [
        "a432d6fbae5106d3b520711fcf4cac2a9869c304"
      ],
      "author": {
        "name": "Carlos A Becker",
        "email": "caarlos0@gmail.com",
        "time": "Thu Feb 03 18:58:56 2022"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Mar 31 16:49:09 2022"
      },
      "message": "config: add DecodeBytes to directly read a byte array\n\nSigned-off-by: Carlos A Becker \u003ccaarlos0@gmail.com\u003e\n"
    },
    {
      "commit": "a432d6fbae5106d3b520711fcf4cac2a9869c304",
      "tree": "c7d33ba54a39455d4a42d3c39521fd99538a8843",
      "parents": [
        "6ad71ac26ef41b372c2f0ca7839ec35e8f1a4235"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Mar 31 16:31:12 2022"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Mar 31 16:31:12 2022"
      },
      "message": "README: add more information\n"
    },
    {
      "commit": "6ad71ac26ef41b372c2f0ca7839ec35e8f1a4235",
      "tree": "6cdf3f8910dc3eb48b99032df27b1819e96c489a",
      "parents": [
        "0970dd2cc49c9022f85ebb19511e87a2680355a1"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Mar 31 16:20:11 2022"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Mar 31 16:26:24 2022"
      },
      "message": "config: remove io/ioutil\n\nIt\u0027s deprecated now.\n"
    },
    {
      "commit": "0970dd2cc49c9022f85ebb19511e87a2680355a1",
      "tree": "ef6de43e590da3b660afd7d8b4d269ebc7cff37f",
      "parents": [
        "c7f8dec5c76b172ce220452b451a28b2b75d1c22"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Mar 31 16:20:53 2022"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Mar 31 16:22:50 2022"
      },
      "message": ".github: add latest Go versions to CI\n"
    },
    {
      "commit": "c7f8dec5c76b172ce220452b451a28b2b75d1c22",
      "tree": "12f646ecb9f098d158eab2f043348f97df657664",
      "parents": [
        "beb851b6a483ff883e6af0e2912d64ff2088753d"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Tue Nov 02 21:45:45 2021"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Tue Nov 02 21:58:53 2021"
      },
      "message": "fuzz_test: add fuzz tests\n\nAlso add a sample corpus.\n"
    },
    {
      "commit": "beb851b6a483ff883e6af0e2912d64ff2088753d",
      "tree": "7880c5322ca10c46c2d38ec35ec4f5880a7b2fa9",
      "parents": [
        "124166206d4a0bb6b065541711b51fda944e6ea1"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sat Mar 27 20:54:12 2021"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sat Mar 27 20:54:12 2021"
      },
      "message": "AUTHORS.txt: add Dustin Spicuzza\n"
    },
    {
      "commit": "124166206d4a0bb6b065541711b51fda944e6ea1",
      "tree": "89884cba1f499b9025ab169b01172c820734ee01",
      "parents": [
        "42c0635e2fac9bf2c9fc5208bda3367616a419ed"
      ],
      "author": {
        "name": "Dustin Spicuzza",
        "email": "dustin@virtualroadside.com",
        "time": "Wed Jul 11 04:37:12 2018"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sat Mar 27 20:38:21 2021"
      },
      "message": "Support retrieving multiple values for a given keyword\n\nIdentityFile among others supports being provided multiple times and\naggregated across, potentially, multiple files. Support that workflow\nby adding GetAll and GetAllStrict alongside the current functions.\n"
    },
    {
      "commit": "42c0635e2fac9bf2c9fc5208bda3367616a419ed",
      "tree": "9ec2dc8ce9f57e224f423eda273e88919c3a59d6",
      "parents": [
        "4977a11b4351f5439a591127be8ac5f0c1ae6d96"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sat Mar 27 17:05:01 2021"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Sat Mar 27 17:07:43 2021"
      },
      "message": ".github: add github actions\n"
    },
    {
      "commit": "4977a11b4351f5439a591127be8ac5f0c1ae6d96",
      "tree": "027df84be705d81e3911323fbbee08d9cc2e7c01",
      "parents": [
        "62d16166c634adb9428671941ca2ec01cc8f7eb0"
      ],
      "author": {
        "name": "santosh653",
        "email": "70637961+santosh653@users.noreply.github.com",
        "time": "Wed Nov 04 09:49:57 2020"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Fri Nov 06 05:09:09 2020"
      },
      "message": "travis.yml: test ppc64le\n"
    },
    {
      "commit": "62d16166c634adb9428671941ca2ec01cc8f7eb0",
      "tree": "3b729e734e0d39446d734e018b4a13b2d6ec66a6",
      "parents": [
        "5a772a75fa55199426dc2d7ea63f3fb211cc9038"
      ],
      "author": {
        "name": "santosh653",
        "email": "70637961+santosh653@users.noreply.github.com",
        "time": "Mon Oct 19 16:01:41 2020"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Fri Nov 06 05:08:12 2020"
      },
      "message": "Update .travis.yml\n\nAdding Power Support"
    },
    {
      "commit": "5a772a75fa55199426dc2d7ea63f3fb211cc9038",
      "tree": "c23466b060d76be97de5d777b51f245b0cde3514",
      "parents": [
        "01f96b0aa0cdcaa93f9495f89bbc6cb5a992ce6e"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Fri Nov 06 04:49:48 2020"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Fri Nov 06 05:06:12 2020"
      },
      "message": "travis.yml: test latest Go versions\n\nStaticcheck only works going back to Go 1.13 so only test that far\nback.\n"
    },
    {
      "commit": "01f96b0aa0cdcaa93f9495f89bbc6cb5a992ce6e",
      "tree": "f898f8525d7f00e10845553d7cf1315210a3efa1",
      "parents": [
        "6cfae18c12b8934b1afba3ce8159476fdef666ba"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu Jul 25 05:45:49 2019"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kevin@burke.dev",
        "time": "Thu Jul 25 05:47:13 2019"
      },
      "message": "AUTHORS.txt: add Mark Nevill\n\nAlso change addresses to use my new email.\n"
    },
    {
      "commit": "6cfae18c12b8934b1afba3ce8159476fdef666ba",
      "tree": "c3864ba6f6d2ebe38c2c62a34fee59201607c5a7",
      "parents": [
        "14846fb743b68bface9321da06f8d83a6bfa7924"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Wed Jul 24 20:58:21 2019"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Wed Jul 24 20:58:21 2019"
      },
      "message": "1.0\n"
    },
    {
      "commit": "14846fb743b68bface9321da06f8d83a6bfa7924",
      "tree": "8b9165d38a48fe0b3acea2b15980471cb3aa45f4",
      "parents": [
        "2e50c441276c45da12db9a8e3df6f7f1d2f820f1"
      ],
      "author": {
        "name": "Mark Nevill",
        "email": "nev@improbable.io",
        "time": "Fri Jun 21 11:17:37 2019"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Wed Jul 24 20:52:01 2019"
      },
      "message": "all: rewrite the lexer to consume the entire input first\n\nPreviously we used the buffruneio package to buffer input. However,\nthe error handling was not good, and we would often panic when parsing\ninputs.\n\nSSH config files are generally not large, on the order of kilobytes or\nmegabytes, and it\u0027s fine to just read the entire thing into memory and\nthen parse from there. This also simplifies the parser significantly\nand lets us remove a dependency and several defer calls.\n\nAdd a test that panicked with the old version and then modify the code\nto ensure the test no longer panics.\n\nThanks to Mark Nevill (@devnev) for the initial error report and\nfailing test case.\n\nFixes #10.\nFixes #24.\n"
    },
    {
      "commit": "2e50c441276c45da12db9a8e3df6f7f1d2f820f1",
      "tree": "8a53c5b3796025ced1511638845213cc7b0d5700",
      "parents": [
        "f648cfb84bf2fe6794b014c5cc9e9d6b29832c28"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sun Jun 30 03:57:51 2019"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sun Jun 30 04:04:20 2019"
      },
      "message": "all: fix lint issues\n\nstaticcheck updated, and it requires inline fixes as well as dropping\nsupport for 1.9 and 1.10.\n"
    },
    {
      "commit": "f648cfb84bf2fe6794b014c5cc9e9d6b29832c28",
      "tree": "e3a8179c429735fdcebe4d141393e962cea9e635",
      "parents": [
        "81db2a75821ed34e682567d48be488a1c3121088"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sun Jun 30 03:37:49 2019"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sun Jun 30 03:37:49 2019"
      },
      "message": "all: use ints instead of uints\n\nFiles are small and these are cheap enough that we should be more\nworried about overflow errors than the space cost.\n"
    },
    {
      "commit": "81db2a75821ed34e682567d48be488a1c3121088",
      "tree": "1c64b9a9c667e87202a8a62a729ff7aa6d89f079",
      "parents": [
        "b64c0219b657a2c958a4531cb1a64a1d82e39286"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu Aug 30 20:53:28 2018"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu Aug 30 20:53:28 2018"
      },
      "message": "0.5\n"
    },
    {
      "commit": "b64c0219b657a2c958a4531cb1a64a1d82e39286",
      "tree": "bb696fd6aa916b18103f2e2bddd9b765fc15a2ba",
      "parents": [
        "555f37af0a67a1b12037851ace9a9ab837f6c537"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu Aug 30 20:47:24 2018"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu Aug 30 20:47:24 2018"
      },
      "message": "Add Go 1.11 to build matrix\n"
    },
    {
      "commit": "555f37af0a67a1b12037851ace9a9ab837f6c537",
      "tree": "745805d95f81219b4357bddf8c05e43310f8dd20",
      "parents": [
        "82cf3f92643814c75904bc4b01dd5721afa7bb89"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu Aug 30 18:02:32 2018"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu Aug 30 20:46:27 2018"
      },
      "message": "Correctly parse files without trailing newline\n\nIf the file did not have a newline character as the last character,\nparseKV() would panic with an NPE. Handle the parser changes better.\n\nFixes #21.\n"
    },
    {
      "commit": "82cf3f92643814c75904bc4b01dd5721afa7bb89",
      "tree": "fd658aecc7fd09a48ae502a9deae7241f0943544",
      "parents": [
        "4fcc689beeab13c6dd7ab1d65cb9d7a1aeea9663"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Wed Jul 11 16:47:46 2018"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Wed Jul 11 16:47:46 2018"
      },
      "message": "Remove 1.7 and 1.8 from build matrix\n\nThey don\u0027t work with megacheck anymore. The source code and tests will\nprobably still pass, however.\n"
    },
    {
      "commit": "4fcc689beeab13c6dd7ab1d65cb9d7a1aeea9663",
      "tree": "de308f3b797470e53dd2ccce7666348c7d4f43c8",
      "parents": [
        "6c3af74fa5b59d325e597106f6ef94b9b413685c"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sun Apr 22 19:34:03 2018"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sun Apr 22 19:34:03 2018"
      },
      "message": "Use kevinburke/bump_version instead of Shyp/bump_version\n"
    },
    {
      "commit": "6c3af74fa5b59d325e597106f6ef94b9b413685c",
      "tree": "6a1e2ef08c2f5af3d4468956b69a0e5cd2c9b996",
      "parents": [
        "b8c871d977a83aa18057e89f0fe06f160006835d"
      ],
      "author": {
        "name": "Wayne Ashley Berry",
        "email": "wayneashleyberry@gmail.com",
        "time": "Mon Apr 02 19:28:30 2018"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Tue Apr 03 03:41:57 2018"
      },
      "message": "Run tests with the race detector\n\nAt some point recently this was fixed (maybe investigate more and\nfigure out how/why this has been resolved?)\n\nAdd Go 1.10 to Travis CI.\n"
    },
    {
      "commit": "b8c871d977a83aa18057e89f0fe06f160006835d",
      "tree": "4b17eca334a58b40c95171d69891dfbc2ba51483",
      "parents": [
        "9fc7bb800b555d63157c65a904c86a2cc7b4e795"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sat Mar 17 17:56:17 2018"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sat Mar 17 17:56:17 2018"
      },
      "message": "run tests before releasing a new version\n"
    },
    {
      "commit": "9fc7bb800b555d63157c65a904c86a2cc7b4e795",
      "tree": "813f669118eb39132837fb8e8be7356a696b1a92",
      "parents": [
        "fe204ef364e0cbeb969255bf3e8fa70416a31ec6"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sat Mar 17 17:55:31 2018"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sat Mar 17 17:55:31 2018"
      },
      "message": "0.4\n"
    },
    {
      "commit": "fe204ef364e0cbeb969255bf3e8fa70416a31ec6",
      "tree": "fba18d6df1b97f8261b0158f6670075ea764d9ce",
      "parents": [
        "0ff8514904a8ebfcfb3c32ad73e1f8498a7f81b4"
      ],
      "author": {
        "name": "Eugene Terentev",
        "email": "eugene@terentev.net",
        "time": "Sun Mar 04 18:35:48 2018"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sat Mar 17 17:50:38 2018"
      },
      "message": "Fix DOS line endings parsing\n\nPreviously we would fail to lex lines ending with CRLF properly.\n"
    },
    {
      "commit": "0ff8514904a8ebfcfb3c32ad73e1f8498a7f81b4",
      "tree": "a8742342c44c373027124f23cf78cf5aa54f4534",
      "parents": [
        "fc20c60f74463da0fa02401e4d8b8d0338423a32"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sat Jan 27 19:48:58 2018"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sat Jan 27 19:48:58 2018"
      },
      "message": "0.3\n"
    },
    {
      "commit": "fc20c60f74463da0fa02401e4d8b8d0338423a32",
      "tree": "f7df6ab6f6a37c6c71974d924c09101110a0c9af",
      "parents": [
        "c665f6f4429a31f20a97fceca0d5e660f211ca01"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sat Jan 27 19:48:38 2018"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sat Jan 27 19:48:38 2018"
      },
      "message": "Add AUTHORS file\n"
    },
    {
      "commit": "c665f6f4429a31f20a97fceca0d5e660f211ca01",
      "tree": "65127bb0ae6f58f5048f51a16571bedd9beadefd",
      "parents": [
        "802051befeb51da415c46972b5caf36e7c33c53d"
      ],
      "author": {
        "name": "Sergey Lukjanov",
        "email": "me@slukjanov.name",
        "time": "Sat Jan 27 08:28:50 2018"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sat Jan 27 19:46:18 2018"
      },
      "message": "Fix potential index out of range error\n\nI had some extra spaces and junk in my ssh config and it was causing\nthis part of the code to fail with an out of range error.\n"
    },
    {
      "commit": "802051befeb51da415c46972b5caf36e7c33c53d",
      "tree": "b2e52ff683f0e8db7e174435420c128000e12be2",
      "parents": [
        "db49ba357de1f26c56dac48a5de39c65785bf24a"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Fri Oct 13 21:14:58 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Fri Oct 13 21:14:58 2017"
      },
      "message": "Implement encoding.TextMarshaler interface\n"
    },
    {
      "commit": "db49ba357de1f26c56dac48a5de39c65785bf24a",
      "tree": "fc92354721151f71df502cac097286bf6540da3a",
      "parents": [
        "4ec3da02a795384225d1b5c762049e8f6a3722f6"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Tue Aug 22 17:15:53 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Tue Aug 22 17:15:53 2017"
      },
      "message": "Use better dependencies in Makefile\n"
    },
    {
      "commit": "4ec3da02a795384225d1b5c762049e8f6a3722f6",
      "tree": "a80776e455590a119fbc8dce590820da73770906",
      "parents": [
        "fc8c3320314f3749d0758c539507548d55c99f67"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Fri May 26 18:07:48 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Fri May 26 18:07:48 2017"
      },
      "message": "add Default example\n"
    },
    {
      "commit": "fc8c3320314f3749d0758c539507548d55c99f67",
      "tree": "31c00b46cee4a60942d59d347c82f2dcf5e3987d",
      "parents": [
        "2b545126285f34050a469f83d2e27168b0415c97"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Fri May 26 18:06:09 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Fri May 26 18:06:09 2017"
      },
      "message": "fix example\n"
    },
    {
      "commit": "2b545126285f34050a469f83d2e27168b0415c97",
      "tree": "a5f6849f42d0190d4316505f5844133d4b95916d",
      "parents": [
        "6dcd4cf59573552963e7c3d51104d26650a0a940"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Fri May 26 17:01:24 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Fri May 26 17:01:24 2017"
      },
      "message": "switch staticcheck for megacheck and fix things it complains about\n"
    },
    {
      "commit": "6dcd4cf59573552963e7c3d51104d26650a0a940",
      "tree": "556e07a415ea456559068588903f09ea9b19581a",
      "parents": [
        "873a8ad95fd7f92e2c9a6e5ffead3c78481cd97b"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Fri May 26 05:05:04 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Fri May 26 05:05:04 2017"
      },
      "message": "update README and add more examples\n"
    },
    {
      "commit": "873a8ad95fd7f92e2c9a6e5ffead3c78481cd97b",
      "tree": "2940748feb9c3522204cea98ba8a6f3dd143076f",
      "parents": [
        "8b24c0d360cfb330dfad1f5de5e5891074fe8ddd"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu May 25 15:22:23 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu May 25 15:22:23 2017"
      },
      "message": "add errata\n"
    },
    {
      "commit": "8b24c0d360cfb330dfad1f5de5e5891074fe8ddd",
      "tree": "1ac12f914d48adcd50c6bc5aea58309c48614480",
      "parents": [
        "b365efcd38270967b1228fa081938ff42685bf2b"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu May 25 15:16:57 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu May 25 15:16:57 2017"
      },
      "message": "improve the documentation\n"
    },
    {
      "commit": "b365efcd38270967b1228fa081938ff42685bf2b",
      "tree": "12619170e4da1872cf198cad9aaf43ba0b61ba71",
      "parents": [
        "fa48d7ff1cfb9f26c514b80d520880394293bf08"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu May 25 15:11:58 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu May 25 15:11:58 2017"
      },
      "message": "add a release target\n"
    },
    {
      "commit": "fa48d7ff1cfb9f26c514b80d520880394293bf08",
      "tree": "0e45d98b480790b138101c2abee2b302d36a32b9",
      "parents": [
        "4a3c8dfaf044ae1b99b91b15ea373aca51b3892c"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu May 25 15:11:05 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu May 25 15:11:05 2017"
      },
      "message": "0.2\n"
    },
    {
      "commit": "4a3c8dfaf044ae1b99b91b15ea373aca51b3892c",
      "tree": "4328c5ab0be5423dbeeb879c5257b50f4b217faf",
      "parents": [
        "e05b90745b94a56532a2445846b2a1e03e319d02"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu May 25 15:11:01 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu May 25 15:11:01 2017"
      },
      "message": "add a version constant\n"
    },
    {
      "commit": "e05b90745b94a56532a2445846b2a1e03e319d02",
      "tree": "3ed7534dfe70d4c9ed98dbde49a5b267023375f6",
      "parents": [
        "7897293c53a37109841220de24d94fcd5501b87b"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu May 25 15:09:30 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu May 25 15:09:30 2017"
      },
      "message": "more doc tweaks\n"
    },
    {
      "commit": "7897293c53a37109841220de24d94fcd5501b87b",
      "tree": "953e4e0d0e283a79e4a2a7c185bc9776ea237915",
      "parents": [
        "3fad3c64da206df4f90bbc2945acb5172e989ee2"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu May 25 15:00:10 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu May 25 15:00:10 2017"
      },
      "message": "Cleanup for public release\n\n- Test Include string representation\n\n- Add docs and examples\n"
    },
    {
      "commit": "3fad3c64da206df4f90bbc2945acb5172e989ee2",
      "tree": "30d2cd034903f842a807d8568635f7099c1eef53",
      "parents": [
        "1c4ddb97d7751cb75e2bd2254423be27aeff4de3"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu May 25 05:10:17 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu May 25 05:10:17 2017"
      },
      "message": "Add more documentation and correctness fix\n"
    },
    {
      "commit": "1c4ddb97d7751cb75e2bd2254423be27aeff4de3",
      "tree": "4fb5b09c581335f0e9abb8b8c03d533ecf29cb0f",
      "parents": [
        "c20644453da2021b962b38db6035f7429a7a4aa7"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu May 25 04:30:13 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Thu May 25 04:30:13 2017"
      },
      "message": "use Default() and validate()\n"
    },
    {
      "commit": "c20644453da2021b962b38db6035f7429a7a4aa7",
      "tree": "8ec53d37bb66c838f993fe87857d5eaef0cb6d6a",
      "parents": [
        "54fabb9a3764ca25f792b23dd5bae5474afa1d6b"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Wed May 24 17:11:10 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Wed May 24 17:11:10 2017"
      },
      "message": "add Default() and start of a validate() function\n"
    },
    {
      "commit": "54fabb9a3764ca25f792b23dd5bae5474afa1d6b",
      "tree": "591024ab8973e693a9fd5642cca09dbdf48e92bd",
      "parents": [
        "ad36f0d71ac9a83236bf93cd2a322f7edce9aec2"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Mon Apr 24 18:06:33 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Wed May 24 03:09:31 2017"
      },
      "message": "Implement Include directive\n\nIt\u0027s tricky because it involves recursive filesystem parsing, depth\nchecking and glob matching. But figured it out.\n\nFixes #4.\n"
    },
    {
      "commit": "ad36f0d71ac9a83236bf93cd2a322f7edce9aec2",
      "tree": "657d4641456a9b75b0450157d3f4d48b2456030a",
      "parents": [
        "3918a52bb76bd253a886db50af3c736bb8b95256"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sun Apr 23 23:39:15 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sun Apr 23 23:39:17 2017"
      },
      "message": "Implement negative match\n\nFixes #3.\n"
    },
    {
      "commit": "3918a52bb76bd253a886db50af3c736bb8b95256",
      "tree": "8ab4de73a9c34af9d2f3177996152ad53269848c",
      "parents": [
        "01f73642b5bb8f0404aeed4c9ba9abdbb4267468"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sun Apr 23 19:13:57 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sun Apr 23 19:13:57 2017"
      },
      "message": "Add a LICENSE\n"
    },
    {
      "commit": "01f73642b5bb8f0404aeed4c9ba9abdbb4267468",
      "tree": "29a3cdbead590e99d9946421d23cd8d17123204c",
      "parents": [
        "251b79e492221edd483142faec02d0e171fdd03a"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sun Apr 23 19:10:47 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sun Apr 23 19:10:47 2017"
      },
      "message": "Add more documentation\n"
    },
    {
      "commit": "251b79e492221edd483142faec02d0e171fdd03a",
      "tree": "64a585573de7b805586a7037c242c25d679ddf80",
      "parents": [
        "bc2824eae3f22127262e8747e52049f53740f9c7"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sun Apr 23 18:59:34 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sun Apr 23 18:59:34 2017"
      },
      "message": "install staticcheck on host\n"
    },
    {
      "commit": "bc2824eae3f22127262e8747e52049f53740f9c7",
      "tree": "a1954cfaea6d75447f375bd3a577de5acf0ae50b",
      "parents": [
        "67c39ca6b47d468e90f304db1a51c130d349269d"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sun Apr 23 18:47:51 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sun Apr 23 18:47:51 2017"
      },
      "message": "tweak readme again\n"
    },
    {
      "commit": "67c39ca6b47d468e90f304db1a51c130d349269d",
      "tree": "a5b478c51d3b7574de178bd32b59e04f1b2cf1e3",
      "parents": [
        "c40e54d2bf9daea566357450b62eee3347a3b062"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sun Apr 23 18:42:22 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sun Apr 23 18:42:22 2017"
      },
      "message": "Implement Get and wildcard match\n\nLots of changes and new API\u0027s here.\n\nFixes #7.\n"
    },
    {
      "commit": "c40e54d2bf9daea566357450b62eee3347a3b062",
      "tree": "d637258af28a492e106987ac8b86109f9a9ae517",
      "parents": [
        "8075e819ada914c81ac0ab1c7ea46d68b27876b0"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sat Apr 22 03:39:44 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Sat Apr 22 03:39:44 2017"
      },
      "message": "fix tests\n"
    },
    {
      "commit": "8075e819ada914c81ac0ab1c7ea46d68b27876b0",
      "tree": "e32849e646c4a2938228a3cfd05b31b6e84ca76b",
      "parents": [
        "c07ebbe98d4e7f48bfedcbff64df99e23370dde9"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Tue Apr 18 17:57:51 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Tue Apr 18 17:57:51 2017"
      },
      "message": "tweak interface\n"
    },
    {
      "commit": "c07ebbe98d4e7f48bfedcbff64df99e23370dde9",
      "tree": "c0d8b891f99317e0d396de1c7d2d93af720431b6",
      "parents": [
        "ab5641d3b9966b5365ee8805c9d91b6018bda90e"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Mon Apr 17 18:24:14 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Mon Apr 17 18:24:14 2017"
      },
      "message": "add very basic README\n"
    },
    {
      "commit": "ab5641d3b9966b5365ee8805c9d91b6018bda90e",
      "tree": "39ebc7707b8f0bec49f00860f6ce2a9339e1d289",
      "parents": [
        "29f594a81c43c99ae49d620711ac1e542884571d"
      ],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Mon Apr 17 18:11:18 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Mon Apr 17 18:16:04 2017"
      },
      "message": "Add Travis\n"
    },
    {
      "commit": "29f594a81c43c99ae49d620711ac1e542884571d",
      "tree": "119176f8fd88f0d0c40c311f0c0945b685ff34f9",
      "parents": [],
      "author": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Mon Apr 17 04:13:13 2017"
      },
      "committer": {
        "name": "Kevin Burke",
        "email": "kev@inburke.com",
        "time": "Mon Apr 17 18:08:10 2017"
      },
      "message": "Add alpha SSH config parser\n\nThe error handling is nonexistent and there\u0027s no easy way to get\ndata out. But we can parse a SSH config file into a Go struct, and\nroundtrip that struct back to a file that looks (roughly) the same.\n"
    }
  ]
}
