{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":14421569,"defaultBranch":"main","name":"plug","ownerLogin":"elixir-plug","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2013-11-15T10:30:47.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/30179070?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1718891856.0","currentOid":""},"activityList":{"items":[{"before":"0fa1f9262e9cfa84fa2557acec4fd9762934df61","after":"e11e5c4cb2ceed52914af460d3d9bb07a84fc8eb","ref":"refs/heads/main","pushedAt":"2024-09-19T18:26:43.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"docs: no longer recommend soft-deprecated :logger :console config (#1246)","shortMessageHtmlLink":"docs: no longer recommend soft-deprecated :logger :console config (#1246"}},{"before":"d8c17361f16530acce75edc157a8c107fd883a63","after":"0fa1f9262e9cfa84fa2557acec4fd9762934df61","ref":"refs/heads/main","pushedAt":"2024-09-05T17:42:34.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Improve Plug README","shortMessageHtmlLink":"Improve Plug README"}},{"before":"9037502a599d6c77e2bfe7c6652f72926f6ec556","after":"d8c17361f16530acce75edc157a8c107fd883a63","ref":"refs/heads/main","pushedAt":"2024-08-29T21:18:09.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"improve custom body reader example (#1243)","shortMessageHtmlLink":"improve custom body reader example (#1243)"}},{"before":"2f00897a980f7935e9226f986e79f98eafc2f0e4","after":"9037502a599d6c77e2bfe7c6652f72926f6ec556","ref":"refs/heads/main","pushedAt":"2024-08-26T15:03:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Plug Debugger wrap exception text (#1241)\n\nSometimes exceptions print out with really long lines which makes it\r\ndifficult to read the exceptions on the error page.","shortMessageHtmlLink":"Plug Debugger wrap exception text (#1241)"}},{"before":"7b14af2de0825b01b728e4af80a72cf410678ded","after":"2f00897a980f7935e9226f986e79f98eafc2f0e4","ref":"refs/heads/main","pushedAt":"2024-08-26T12:48:21.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Plug Debugger add spacing between arguments (#1242)\n\n* Plug Debugger add spacing between arguments\r\n\r\n* Also change color to primary (but with partial saturation)","shortMessageHtmlLink":"Plug Debugger add spacing between arguments (#1242)"}},{"before":"9f67dd924c2809ab07b4a798a3c3e718c9da4107","after":"7b14af2de0825b01b728e4af80a72cf410678ded","ref":"refs/heads/main","pushedAt":"2024-07-17T18:20:59.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Add __RELATIVEFILE__ to PLUG_EDITOR replacements (#1240)","shortMessageHtmlLink":"Add __RELATIVEFILE__ to PLUG_EDITOR replacements (#1240)"}},{"before":"cb9f1c76bb9255e0dd8f6f16537de21e94a5ed48","after":"9f67dd924c2809ab07b4a798a3c3e718c9da4107","ref":"refs/heads/main","pushedAt":"2024-07-07T09:58:59.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Update and remove deprecated badges in readme (#1238)","shortMessageHtmlLink":"Update and remove deprecated badges in readme (#1238)"}},{"before":"90590abcd9f7c8881f09b37fb02ab72d4cc322ba","after":"cb9f1c76bb9255e0dd8f6f16537de21e94a5ed48","ref":"refs/heads/main","pushedAt":"2024-06-27T18:43:12.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Add Plug.Static tests (#1236)\n\n* Add test that asserts Plug.Static.call/2 serves files from the\r\n app directory using a :from with an application name and\r\n directory.","shortMessageHtmlLink":"Add Plug.Static tests (#1236)"}},{"before":"b9af9013546c8bd34caaa26d3332dc52030b40de","after":"90590abcd9f7c8881f09b37fb02ab72d4cc322ba","ref":"refs/heads/main","pushedAt":"2024-06-25T15:53:35.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Add Plug.Router tests (#1234)\n\n* Add test that asserts an error is raised with the expected\r\n message when Plug.Router.match/3 is not given :to or :do option.\r\n\r\n* Add test that asserts an error is raised with the expected\r\n message when no routes are defined in a Plug module.","shortMessageHtmlLink":"Add Plug.Router tests (#1234)"}},{"before":"a317031e38af531bf9994369e6b725b7db033f70","after":"b9af9013546c8bd34caaa26d3332dc52030b40de","ref":"refs/heads/main","pushedAt":"2024-06-25T12:55:15.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Add Plug.Adapters.Test.Conn tests (#1235)\n\n* Add Plug.Adapters.Test.Conn.conn/4 test cases for params that\r\n have a struct or function value.\r\n\r\n* Add test that asserts Plug.Adapters.Test.Conn.conn/4 writes a\r\n message to stderr when the URI path does not start with forward\r\n slash.\r\n\r\n* Add test that asserts Plug.Adapters.Test.Conn.push/3 sends\r\n message including path and headers.","shortMessageHtmlLink":"Add Plug.Adapters.Test.Conn tests (#1235)"}},{"before":"27a81cbb6b755d263ccc85a986bf2ce92e4477c2","after":"a317031e38af531bf9994369e6b725b7db033f70","ref":"refs/heads/main","pushedAt":"2024-06-24T08:32:28.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Add Plug.CSRFProtection tests (#1233)\n\n* Add test that asserts an InvalidCSRFTokenError error is raised\r\n when the CSRF token payload is not a Base64 encoded string.\r\n\r\n* Add test that refutes\r\n Plug.CSRFProtection.valid_state_and_csrf_token?/2 returns a\r\n truthy value when given a CSRF token that is not Base64 encoded.","shortMessageHtmlLink":"Add Plug.CSRFProtection tests (#1233)"}},{"before":"58a6bff0f6119c3e3d7eecada8c2ebbf4a8d7c1a","after":"27a81cbb6b755d263ccc85a986bf2ce92e4477c2","ref":"refs/heads/main","pushedAt":"2024-06-24T07:45:58.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Add Plug.BasicAuth exception test (#1232)","shortMessageHtmlLink":"Add Plug.BasicAuth exception test (#1232)"}},{"before":"5b11e8dc48aa6465ee42187de99950431fa9cf07","after":"58a6bff0f6119c3e3d7eecada8c2ebbf4a8d7c1a","ref":"refs/heads/main","pushedAt":"2024-06-23T14:59:05.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Add Plug.Conn.Cookies tests (#1231)\n\n* Add test for when Plug.Conn.Cookies.decode/1 is given an\r\n argument equal to \"=;\".\r\n\r\n* Add test for Plug.Conn.Cookies.encode/2 that uses only the\r\n first argument, so that the default value of the second\r\n argument is used.\r\n\r\n* Expand the \"encodes with :max_age\" test to include test cases\r\n for all of the weekday and month names, and padding of a number\r\n (day) between 0 and 9.","shortMessageHtmlLink":"Add Plug.Conn.Cookies tests (#1231)"}},{"before":"872f079a245026638876235c1af42fdc473050b6","after":"5b11e8dc48aa6465ee42187de99950431fa9cf07","ref":"refs/heads/main","pushedAt":"2024-06-21T12:22:24.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"whatyouhide","name":"Andrea Leopardi","path":"/whatyouhide","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3890250?s=80&v=4"},"commit":{"message":"Add Plug.Conn.Utils tests (#1230)","shortMessageHtmlLink":"Add Plug.Conn.Utils tests (#1230)"}},{"before":"cc535b13c5569f199dbde5ca5c030eb8a6d61e8b","after":"872f079a245026638876235c1af42fdc473050b6","ref":"refs/heads/main","pushedAt":"2024-06-21T11:29:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"whatyouhide","name":"Andrea Leopardi","path":"/whatyouhide","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3890250?s=80&v=4"},"commit":{"message":"Add Plug.Conn.Status.code/1 test for integer status (#1229)","shortMessageHtmlLink":"Add Plug.Conn.Status.code/1 test for integer status (#1229)"}},{"before":"f58996908fd9df00f918d982dbb55e8a8eebcda6","after":"cc535b13c5569f199dbde5ca5c030eb8a6d61e8b","ref":"refs/heads/main","pushedAt":"2024-06-20T13:57:33.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Release v1.16.1","shortMessageHtmlLink":"Release v1.16.1"}},{"before":"f9bca8c3584c630bc826c5cd3d76ad01652779a2","after":"f58996908fd9df00f918d982dbb55e8a8eebcda6","ref":"refs/heads/main","pushedAt":"2024-06-20T12:00:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Optimize cookie decoding\n\nThis should be 10x faster and allocate 10x fewer memory.\nThe main changes are to avoid creating sub-binaries and\nsplitting the list as we traverse it.\n\nCloses #1227.","shortMessageHtmlLink":"Optimize cookie decoding"}},{"before":"238caf470ff267ae2b4402ce92a768cd6f80390f","after":null,"ref":"refs/heads/al/elixir-1.17","pushedAt":"2024-06-12T19:22:05.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"whatyouhide","name":"Andrea Leopardi","path":"/whatyouhide","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3890250?s=80&v=4"}},{"before":"9871e866e71cfd027751f72d65382f36b8a4cb32","after":"f9bca8c3584c630bc826c5cd3d76ad01652779a2","ref":"refs/heads/main","pushedAt":"2024-06-12T19:22:03.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"whatyouhide","name":"Andrea Leopardi","path":"/whatyouhide","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3890250?s=80&v=4"},"commit":{"message":"Update Elixir/Erlang in CI (#1226)","shortMessageHtmlLink":"Update Elixir/Erlang in CI (#1226)"}},{"before":null,"after":"238caf470ff267ae2b4402ce92a768cd6f80390f","ref":"refs/heads/al/elixir-1.17","pushedAt":"2024-06-12T19:17:32.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"whatyouhide","name":"Andrea Leopardi","path":"/whatyouhide","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3890250?s=80&v=4"},"commit":{"message":"Update Elixir/Erlang in CI","shortMessageHtmlLink":"Update Elixir/Erlang in CI"}},{"before":"82eb2204f59e6e2f4b40cbcab1699076f04a5758","after":"9871e866e71cfd027751f72d65382f36b8a4cb32","ref":"refs/heads/main","pushedAt":"2024-06-04T07:57:07.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Persist stack trace toggle in `localStorage` (#1224)","shortMessageHtmlLink":"Persist stack trace toggle in localStorage (#1224)"}},{"before":"4280765e9624d88f4b1b86df5fba2690a63167bd","after":"82eb2204f59e6e2f4b40cbcab1699076f04a5758","ref":"refs/heads/main","pushedAt":"2024-05-20T10:36:34.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Do not rely on all DOWN messages being delivered simultaniously","shortMessageHtmlLink":"Do not rely on all DOWN messages being delivered simultaniously"}},{"before":"1ff85b71bad792e276c9f85702e88f51ea1c0e46","after":"4280765e9624d88f4b1b86df5fba2690a63167bd","ref":"refs/heads/main","pushedAt":"2024-05-20T10:21:31.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Fix typos (#1223)","shortMessageHtmlLink":"Fix typos (#1223)"}},{"before":"0b58ea8b248c8bbc17927537c370f52dd294068f","after":"1ff85b71bad792e276c9f85702e88f51ea1c0e46","ref":"refs/heads/main","pushedAt":"2024-05-19T07:03:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Add `@behaviour` attribute to example modules (#1222)","shortMessageHtmlLink":"Add @behaviour attribute to example modules (#1222)"}},{"before":"d0e3407fea0a434b516bca6bd4256f15016047a8","after":"0b58ea8b248c8bbc17927537c370f52dd294068f","ref":"refs/heads/main","pushedAt":"2024-05-18T09:27:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Release v1.16.0","shortMessageHtmlLink":"Release v1.16.0"}},{"before":"0574733fb933e4a2ea78532e38e687d9cffb4858","after":"d0e3407fea0a434b516bca6bd4256f15016047a8","ref":"refs/heads/main","pushedAt":"2024-05-17T06:56:04.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Track conn value in Plug.Debugger.run_action/1 (#1221)","shortMessageHtmlLink":"Track conn value in Plug.Debugger.run_action/1 (#1221)"}},{"before":"bd8a574fd825d2c0c203613aa0935d983df664dd","after":"0574733fb933e4a2ea78532e38e687d9cffb4858","ref":"refs/heads/main","pushedAt":"2024-05-14T07:29:06.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Support x-forwarded-for","shortMessageHtmlLink":"Support x-forwarded-for"}},{"before":"30fa3f0bec3137e57ed90ce8f804b523de3aa417","after":"bd8a574fd825d2c0c203613aa0935d983df664dd","ref":"refs/heads/main","pushedAt":"2024-05-14T07:07:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Support MFArgs in rewrite_on","shortMessageHtmlLink":"Support MFArgs in rewrite_on"}},{"before":"9bfa83be669b993a5031441b1be957617df6abb8","after":"30fa3f0bec3137e57ed90ce8f804b523de3aa417","ref":"refs/heads/main","pushedAt":"2024-05-09T14:29:53.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Fix Enum reference in Plug.Conn.chunk/2 docs (#1219)","shortMessageHtmlLink":"Fix Enum reference in Plug.Conn.chunk/2 docs (#1219)"}},{"before":"73092587c81488b5dfa09a17f62e734a688ab2b6","after":"9bfa83be669b993a5031441b1be957617df6abb8","ref":"refs/heads/main","pushedAt":"2024-04-29T21:12:27.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"josevalim","name":"José Valim","path":"/josevalim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9582?s=80&v=4"},"commit":{"message":"Discard nil max_age in put_resp_cookie/4 (#1218)","shortMessageHtmlLink":"Discard nil max_age in put_resp_cookie/4 (#1218)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0xOVQxODoyNjo0My4wMDAwMDBazwAAAAS7MlSv","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0xOVQxODoyNjo0My4wMDAwMDBazwAAAAS7MlSv","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNC0yOVQyMToxMjoyNy4wMDAwMDBazwAAAAQ9ZSZe"}},"title":"Activity · elixir-plug/plug"}