{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":16112842,"defaultBranch":"master","name":"json-to-go","ownerLogin":"mholt","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2014-01-21T18:11:13.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/1128849?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1721985114.0","currentOid":""},"activityList":{"items":[{"before":"c1626643b46e75212aaa9caa4ee18af02bf68280","after":"b4253943303b3718414e073665162da054da23f1","ref":"refs/heads/master","pushedAt":"2024-07-31T15:59:24.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"grische","name":"Grische","path":"/grische","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2787581?s=80&v=4"},"commit":{"message":"upgrade ints and floats in arrays with mixed sizes","shortMessageHtmlLink":"upgrade ints and floats in arrays with mixed sizes"}},{"before":"93b78eabd321bab7e4191a65e252ad62366b45dd","after":"c1626643b46e75212aaa9caa4ee18af02bf68280","ref":"refs/heads/master","pushedAt":"2024-07-26T16:51:26.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"grische","name":"Grische","path":"/grische","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2787581?s=80&v=4"},"commit":{"message":"deprecate -big parameter","shortMessageHtmlLink":"deprecate -big parameter"}},{"before":"b490b8cbf451ae372ac56f949244460b4b33a2e6","after":"93b78eabd321bab7e4191a65e252ad62366b45dd","ref":"refs/heads/master","pushedAt":"2024-07-26T11:10:02.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"grische","name":"Grische","path":"/grische","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2787581?s=80&v=4"},"commit":{"message":"improve error handling when calling json-to-go.js","shortMessageHtmlLink":"improve error handling when calling json-to-go.js"}},{"before":"8700ecaa4a9b614b2f0c25fa626b22ccc270ae86","after":null,"ref":"refs/heads/rework-argv-parsing","pushedAt":"2024-07-26T09:11:54.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"grische","name":"Grische","path":"/grische","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2787581?s=80&v=4"}},{"before":"a2f7c51ba22881c4dbc50b198f284b36b62cff8e","after":"b490b8cbf451ae372ac56f949244460b4b33a2e6","ref":"refs/heads/master","pushedAt":"2024-07-26T09:11:52.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"grische","name":"Grische","path":"/grische","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2787581?s=80&v=4"},"commit":{"message":"rework argv parsing","shortMessageHtmlLink":"rework argv parsing"}},{"before":null,"after":"8700ecaa4a9b614b2f0c25fa626b22ccc270ae86","ref":"refs/heads/rework-argv-parsing","pushedAt":"2024-07-25T22:06:40.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"grische","name":"Grische","path":"/grische","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2787581?s=80&v=4"},"commit":{"message":"rework argv parsing","shortMessageHtmlLink":"rework argv parsing"}},{"before":"1e827f8f6e24a570a9afff0c505ca76954bbf38b","after":"a2f7c51ba22881c4dbc50b198f284b36b62cff8e","ref":"refs/heads/master","pushedAt":"2024-07-25T21:07:03.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"grische","name":"Grische","path":"/grische","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2787581?s=80&v=4"},"commit":{"message":"make non-matching types in arrays type \"any\"","shortMessageHtmlLink":"make non-matching types in arrays type \"any\""}},{"before":"a268b24c32bd8f802c2d45c420c5d4f7aacdb664","after":"1e827f8f6e24a570a9afff0c505ca76954bbf38b","ref":"refs/heads/master","pushedAt":"2024-07-25T21:03:32.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"grische","name":"Grische","path":"/grische","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2787581?s=80&v=4"},"commit":{"message":"show carriage return on tests","shortMessageHtmlLink":"show carriage return on tests"}},{"before":"e6978af3403afbfdeb437e4839b911973501a7ad","after":"a268b24c32bd8f802c2d45c420c5d4f7aacdb664","ref":"refs/heads/master","pushedAt":"2024-07-25T21:01:54.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"grische","name":"Grische","path":"/grische","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2787581?s=80&v=4"},"commit":{"message":"Merge pull request #140 from grische/feature/github-ci\n\nadd Github Actions CI","shortMessageHtmlLink":"Merge pull request #140 from grische/feature/github-ci"}},{"before":"d8a0826e9431bbb499a4e8ca65ad225fedcda562","after":"e6978af3403afbfdeb437e4839b911973501a7ad","ref":"refs/heads/master","pushedAt":"2024-07-25T21:00:50.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"grische","name":"Grische","path":"/grische","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2787581?s=80&v=4"},"commit":{"message":"Merge pull request #136 from grische/fix/file-reading-with-older-nodejs\n\nfix reading files of version older than nodejs v18","shortMessageHtmlLink":"Merge pull request #136 from grische/fix/file-reading-with-older-nodejs"}},{"before":"25237b6d3393caa166ff050b108da8e6940aa48b","after":"d8a0826e9431bbb499a4e8ca65ad225fedcda562","ref":"refs/heads/master","pushedAt":"2024-07-25T20:18:37.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"grische","name":"Grische","path":"/grische","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2787581?s=80&v=4"},"commit":{"message":"Merge pull request #135 from grische/fix/final-newline-for-files\n\nfix final newline when reading files","shortMessageHtmlLink":"Merge pull request #135 from grische/fix/final-newline-for-files"}},{"before":"e7be945ad500aa662bb0d7108482492c27d38d39","after":"25237b6d3393caa166ff050b108da8e6940aa48b","ref":"refs/heads/master","pushedAt":"2024-07-24T17:34:16.000Z","pushType":"pr_merge","commitsCount":4,"pusher":{"login":"mholt","name":"Matt Holt","path":"/mholt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1128849?s=80&v=4"},"commit":{"message":"Merge pull request #131 from grische/fix/duplicate-top-level-structs\n\nfix duplicate top-level structs","shortMessageHtmlLink":"Merge pull request #131 from grische/fix/duplicate-top-level-structs"}},{"before":"c3eee6cb2593ca9bee49bbb5de143abad0e8e431","after":"e7be945ad500aa662bb0d7108482492c27d38d39","ref":"refs/heads/master","pushedAt":"2024-07-24T17:04:22.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mholt","name":"Matt Holt","path":"/mholt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1128849?s=80&v=4"},"commit":{"message":"Add support for reading files (#127)","shortMessageHtmlLink":"Add support for reading files (#127)"}},{"before":"b271f84ac1623d192a95ba3e29de89f76676850b","after":"c3eee6cb2593ca9bee49bbb5de143abad0e8e431","ref":"refs/heads/master","pushedAt":"2024-07-24T17:03:42.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mholt","name":"Matt Holt","path":"/mholt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1128849?s=80&v=4"},"commit":{"message":"fix scope of exp (#129)\n\navoid accidental side-effects of a previously defined exp","shortMessageHtmlLink":"fix scope of exp (#129)"}},{"before":"086b5b22221d4b01d73e98913e5ed23e5a296839","after":"b271f84ac1623d192a95ba3e29de89f76676850b","ref":"refs/heads/master","pushedAt":"2024-07-24T16:59:32.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mholt","name":"Matt Holt","path":"/mholt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1128849?s=80&v=4"},"commit":{"message":"add final newline (#128)\n\nreplace console.log with stdout.write to avoid creating multiple newlines","shortMessageHtmlLink":"add final newline (#128)"}},{"before":"e9233d6ba09833ffe657bfcd642bc184de029f0f","after":"086b5b22221d4b01d73e98913e5ed23e5a296839","ref":"refs/heads/master","pushedAt":"2023-11-03T03:53:19.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mholt","name":"Matt Holt","path":"/mholt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1128849?s=80&v=4"},"commit":{"message":"Fix greedy regex causing time.Time (#123)\n\nThe code in question is this small two lines.\r\n\r\nif (/\\d{4}-\\d\\d-\\d\\dT\\d\\d:\\d\\d:\\d\\d(\\.\\d+)?(\\+\\d\\d:\\d\\d|Z)/.test(val))\r\n return \"time.Time\";\r\n\r\nBut what happens if the string in the object contains a timestamp and a\r\nbunch of other junk meaning it isn't a time at all, but rather just a\r\nstring. There's a lot of valid use cases for this. For example, parsing\r\nsyslog...or something.\r\n\r\nlet val = \"2023-11-03T02:18:10+00:00 my name is bob\"\r\nif (/\\d{4}-\\d\\d-\\d\\dT\\d\\d:\\d\\d:\\d\\d(\\.\\d+)?(\\+\\d\\d:\\d\\d|Z)/.test(val)) {\r\n console.log(\"time.Time\");\r\n}\r\n> time.Time\r\n\r\nOh no. It also seems to function in this way when the extra junk is on\r\nthe other side of the timestamp.\r\n\r\nlet val = \"my name is bob 2023-11-03T02:18:10+00:00\"\r\nif (/\\d{4}-\\d\\d-\\d\\dT\\d\\d:\\d\\d:\\d\\d(\\.\\d+)?(\\+\\d\\d:\\d\\d|Z)/.test(val)) {\r\n console.log(\"time.Time\");\r\n}\r\n> time.Time\r\n\r\nThat's no fun. This is easy to overlook, and luckily it's a simple fix.\r\n\r\nlet val = \"2023-11-03T02:18:10+00:00 my name is bob\"\r\nif (/^\\d{4}-\\d\\d-\\d\\dT\\d\\d:\\d\\d:\\d\\d(\\.\\d+)?(\\+\\d\\d:\\d\\d|Z)$/.test(val)) {\r\n console.log(\"time.Time\");\r\n} else {\r\n console.log(\"Fixed\")\r\n}\r\n> Fixed","shortMessageHtmlLink":"Fix greedy regex causing time.Time (#123)"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEjkEsFQA","startCursor":null,"endCursor":null}},"title":"Activity ยท mholt/json-to-go"}