{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":96071,"defaultBranch":"main","name":"rack","ownerLogin":"rack","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2008-12-24T03:03:12.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/42379?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1710983909.0","currentOid":""},"activityList":{"items":[{"before":"e42999123d314d26301ca613037f8a85912b6a35","after":"51e229f67f70d2a01536e43939c8c843ce4aa593","ref":"refs/heads/main","pushedAt":"2024-05-10T22:04:31.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"Fix a typo in the spec (#2178)","shortMessageHtmlLink":"Fix a typo in the spec (#2178)"}},{"before":"9a5f6c2edc29aa09013bcb480e71db0f5e239f25","after":"e42999123d314d26301ca613037f8a85912b6a35","ref":"refs/heads/main","pushedAt":"2024-05-10T22:03:08.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"Remove Ruby 1.9 references from the spec (#2179)","shortMessageHtmlLink":"Remove Ruby 1.9 references from the spec (#2179)"}},{"before":"efe2a9ddf6247f90e3094c9b4b9645fbf628e7e0","after":"cf26ef1547c2adce33693a3c8e2e4f197a570165","ref":"refs/heads/3-0-stable","pushedAt":"2024-05-09T22:42:12.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"Remove Ruby 3.0 from test-external (#2177)\n\nv0.5.1 of `protocol-rack` dropped support for Ruby 3.0","shortMessageHtmlLink":"Remove Ruby 3.0 from test-external (#2177)"}},{"before":"0507300c13cffe5129491664da515e89e8b555a5","after":"9a5f6c2edc29aa09013bcb480e71db0f5e239f25","ref":"refs/heads/main","pushedAt":"2024-05-09T22:41:02.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"Remove Ruby 3.0 from test-external (#2177)\n\nv0.5.1 of `protocol-rack` dropped support for Ruby 3.0","shortMessageHtmlLink":"Remove Ruby 3.0 from test-external (#2177)"}},{"before":"a211246ac797f4fbb98965e9aabf371d8c918609","after":"0507300c13cffe5129491664da515e89e8b555a5","ref":"refs/heads/main","pushedAt":"2024-05-09T22:38:49.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"Update CHANGELOG","shortMessageHtmlLink":"Update CHANGELOG"}},{"before":"3b5cef7188188673cf003c2f0f6ce3523ab1b345","after":"efe2a9ddf6247f90e3094c9b4b9645fbf628e7e0","ref":"refs/heads/3-0-stable","pushedAt":"2024-05-09T22:37:32.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"Update CHANGELOG","shortMessageHtmlLink":"Update CHANGELOG"}},{"before":"b9a60d910b302e27b09147ac64107bae0b984cfd","after":"3b5cef7188188673cf003c2f0f6ce3523ab1b345","ref":"refs/heads/3-0-stable","pushedAt":"2024-05-09T22:34:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"Bump patch version.","shortMessageHtmlLink":"Bump patch version."}},{"before":"4da4e4a8af2f6d8ad8b5d3d7675cb83952233d36","after":"b9a60d910b302e27b09147ac64107bae0b984cfd","ref":"refs/heads/3-0-stable","pushedAt":"2024-05-09T22:30:41.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"Backport #2062 to 3-0-stable (#2176)\n\n* Do not allow BodyProxy to respond to to_str, make to_ary call close\r\n\r\nSee https://github.com/rack/rack-test/issues/335 for an example\r\nwhere allowing BodyProxy to respond to to_str (when provided an\r\ninvalid rack body) complicated debugging.\r\n\r\nCall BodyProxy#close if BodyProxy#to_ary is called, as not doing so\r\nviolates SPEC.\r\n\r\n* Changelog for #2062\r\n\r\n---------\r\n\r\nCo-authored-by: Jeremy Evans ","shortMessageHtmlLink":"Backport #2062 to 3-0-stable (#2176)"}},{"before":"40df0e260f608403355bfa3cd58056991cb91f79","after":"a211246ac797f4fbb98965e9aabf371d8c918609","ref":"refs/heads/main","pushedAt":"2024-04-25T05:22:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"Add 3.0.9.1 to CHANGELOG (#2175)\n\n[ci skip]","shortMessageHtmlLink":"Add 3.0.9.1 to CHANGELOG (#2175)"}},{"before":"d3c545e69d58e588622bcf9b1ab9f971b8a02112","after":"4da4e4a8af2f6d8ad8b5d3d7675cb83952233d36","ref":"refs/heads/3-0-stable","pushedAt":"2024-04-22T23:39:53.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"Update deprecation message (#2173)","shortMessageHtmlLink":"Update deprecation message (#2173)"}},{"before":"8c73aefcc7085c71bdfe6c1ec867f126ede34124","after":"40df0e260f608403355bfa3cd58056991cb91f79","ref":"refs/heads/main","pushedAt":"2024-04-02T14:31:52.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jeremyevans","name":"Jeremy Evans","path":"/jeremyevans","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3846?s=80&v=4"},"commit":{"message":"Remove `ostruct` require\n\nOpenStruct usage was removed in #2004 but this was missed.\n\nIn Ruby 3.5 this require would trigger a warning","shortMessageHtmlLink":"Remove ostruct require"}},{"before":"487178f7cf634b5dc62e6db7e2f92581f09b3d2e","after":"8c73aefcc7085c71bdfe6c1ec867f126ede34124","ref":"refs/heads/main","pushedAt":"2024-03-21T01:39:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"Tidy up external links in readme.","shortMessageHtmlLink":"Tidy up external links in readme."}},{"before":"f7d40f91ab18e250af71d8207fc72a0cde9a263c","after":"b1deebdc0a4f61cc141cece5a911917ff1e4b901","ref":"refs/heads/2-2-stable","pushedAt":"2024-03-21T01:18:21.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"Bump patch version.","shortMessageHtmlLink":"Bump patch version."}},{"before":"ac1fdba319bdb93eee3d0d560c788d66aa0036c4","after":"487178f7cf634b5dc62e6db7e2f92581f09b3d2e","ref":"refs/heads/main","pushedAt":"2024-03-20T22:01:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"Update changelog.","shortMessageHtmlLink":"Update changelog."}},{"before":"f856dbda10d6523ddf99b515b22f059d5a8066c1","after":"d3c545e69d58e588622bcf9b1ab9f971b8a02112","ref":"refs/heads/3-0-stable","pushedAt":"2024-03-20T21:56:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"Bump patch version.","shortMessageHtmlLink":"Bump patch version."}},{"before":"dff6cfd249832d32ab190e6d20605bce0d6c702d","after":"ac1fdba319bdb93eee3d0d560c788d66aa0036c4","ref":"refs/heads/main","pushedAt":"2024-03-20T20:21:08.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"Refactored multipart_spec.rb to improve readability and consistency. (#2161)\n\nUpdate the spec description for improved grammar and consistency with the surrounding spec descriptions.","shortMessageHtmlLink":"Refactored multipart_spec.rb to improve readability and consistency. (#…"}},{"before":"a4bc5e0f41c750135969ceece8772ab112dc8f17","after":"f856dbda10d6523ddf99b515b22f059d5a8066c1","ref":"refs/heads/3-0-stable","pushedAt":"2024-03-20T16:32:53.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jeremyevans","name":"Jeremy Evans","path":"/jeremyevans","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3846?s=80&v=4"},"commit":{"message":"Backport #2104 to 3-0-stable\nReturn empty when parsing a multi-part POST with only one end delimiter.\n\nFixed: #2103\n\nSending the following request in a browser generates a request with\nwith only one end delimiter.\n\n```javascript\nconst formData = new FormData();\nconst request = new Request('http://127.0.0.1:8080/', {\n method: 'POST',\n body: formData,\n});\nconst response = fetch(request);\n```\n\n```\ncurl 'http://127.0.0.1:8080/' \\\n -H 'Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryR1LC4tR6ayskIXJm' \\\n --data-raw $'------WebKitFormBoundaryR1LC4tR6ayskIXJm--\\r\\n'\n```\n\nThis request is not compliant RFC7578, but is generated by major browsers such as\nFireFox and Chrome.\nSupporting this request will cause the multipart parser to return an empty value.","shortMessageHtmlLink":"Backport #2104 to 3-0-stable"}},{"before":"1848851b75579236e0939b13758913ca6b046b03","after":"dff6cfd249832d32ab190e6d20605bce0d6c702d","ref":"refs/heads/main","pushedAt":"2024-02-26T06:51:48.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"Ignore Range header if served file is 0 bytes (#2159) (#2159)\n\nNormally Rack::Files truncates a byte range to fit a file's contents as long as\r\nat least some bytes are within range. However, an empty (0 byte) file is a\r\nspecial case. Previously, empty files requested with a Range header always\r\nresulted in a 416 error. This changes 0 byte files to ignore the Range header\r\nand return the empty file.\r\n\r\nThis improves compatibility with clients that speculatively request files with\r\nbyte ranges.","shortMessageHtmlLink":"Ignore Range header if served file is 0 bytes (#2159) (#2159)"}},{"before":"9996d403584fb7609708f582f7647868b4444949","after":"8eb8bc6c7c4d3dd912d169c850fe2695d1728555","ref":"refs/heads/2-0-stable","pushedAt":"2024-02-21T19:25:13.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"tenderlove","name":"Aaron Patterson","path":"/tenderlove","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3124?s=80&v=4"},"commit":{"message":"updating version","shortMessageHtmlLink":"updating version"}},{"before":"7bdc55dd21ec76811ad74c1ae14c1588d2f2ca49","after":"c465c6389cc56ffdfa30718e490f31bcc2efbfc9","ref":"refs/heads/2-1-stable","pushedAt":"2024-02-21T19:24:58.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"tenderlove","name":"Aaron Patterson","path":"/tenderlove","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3124?s=80&v=4"},"commit":{"message":"bump version","shortMessageHtmlLink":"bump version"}},{"before":"fdb12cbd43ada0bcc5e34fbda94a4d0e8c2c1719","after":"f7d40f91ab18e250af71d8207fc72a0cde9a263c","ref":"refs/heads/2-2-stable","pushedAt":"2024-02-21T19:24:44.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"tenderlove","name":"Aaron Patterson","path":"/tenderlove","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3124?s=80&v=4"},"commit":{"message":"Merge branch '2-2-sec' into 2-2-stable\n\n* 2-2-sec:\n bump version\n Avoid 2nd degree polynomial regexp in MediaType\n Return an empty array when ranges are too large\n Fixing ReDoS in header parsing","shortMessageHtmlLink":"Merge branch '2-2-sec' into 2-2-stable"}},{"before":"0b3f997e7bb14c1dc42130e1eb50e62797d8c039","after":"a4bc5e0f41c750135969ceece8772ab112dc8f17","ref":"refs/heads/3-0-stable","pushedAt":"2024-02-21T19:24:22.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"tenderlove","name":"Aaron Patterson","path":"/tenderlove","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3124?s=80&v=4"},"commit":{"message":"bump version","shortMessageHtmlLink":"bump version"}},{"before":"ae7d6a171963a70918b4e43525408c571a3f28fe","after":"1848851b75579236e0939b13758913ca6b046b03","ref":"refs/heads/main","pushedAt":"2024-02-21T19:24:13.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"tenderlove","name":"Aaron Patterson","path":"/tenderlove","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3124?s=80&v=4"},"commit":{"message":"Avoid 2nd degree polynomial regexp in MediaType","shortMessageHtmlLink":"Avoid 2nd degree polynomial regexp in MediaType"}},{"before":"449ed4dd7abaf444a1e9b5bab34b79de0bfb0eda","after":"ae7d6a171963a70918b4e43525408c571a3f28fe","ref":"refs/heads/main","pushedAt":"2024-02-07T09:39:28.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"CHANGELOG.md: Add 3.0.9 section (#2156)","shortMessageHtmlLink":"CHANGELOG.md: Add 3.0.9 section (#2156)"}},{"before":"589540e5d69d5af8a87dd71749b3b36a37122de8","after":null,"ref":"refs/heads/rack-lint-remove-http_version-check","pushedAt":"2024-01-31T23:23:08.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"}},{"before":"25e0e0194dc2746bf7a9698a9666cd4116e1a19d","after":"449ed4dd7abaf444a1e9b5bab34b79de0bfb0eda","ref":"refs/heads/main","pushedAt":"2024-01-31T23:23:07.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"Remove HTTP_VERSION validation from `Rack::Lint`. (#2154)","shortMessageHtmlLink":"Remove HTTP_VERSION validation from Rack::Lint. (#2154)"}},{"before":"c502709c365944bf251bc248844f0eaf18aadf31","after":"589540e5d69d5af8a87dd71749b3b36a37122de8","ref":"refs/heads/rack-lint-remove-http_version-check","pushedAt":"2024-01-31T23:14:45.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"Remove HTTP_VERSION validation from `Rack::Lint`.","shortMessageHtmlLink":"Remove HTTP_VERSION validation from Rack::Lint."}},{"before":null,"after":"c502709c365944bf251bc248844f0eaf18aadf31","ref":"refs/heads/rack-lint-remove-http_version-check","pushedAt":"2024-01-31T23:11:40.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"Remove HTTP_VERSION validation from `Rack::Lint`.","shortMessageHtmlLink":"Remove HTTP_VERSION validation from Rack::Lint."}},{"before":"e50b72a9b2400cbe3b25f3619926f306796503ac","after":"25e0e0194dc2746bf7a9698a9666cd4116e1a19d","ref":"refs/heads/main","pushedAt":"2024-01-31T22:06:57.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jeremyevans","name":"Jeremy Evans","path":"/jeremyevans","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3846?s=80&v=4"},"commit":{"message":"Document rewind behavior change of rack input.","shortMessageHtmlLink":"Document rewind behavior change of rack input."}},{"before":"d3d415ed68fe9471f04bafe4a299eb099330fcb1","after":"0b3f997e7bb14c1dc42130e1eb50e62797d8c039","ref":"refs/heads/3-0-stable","pushedAt":"2024-01-31T07:51:57.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ioquatix","name":"Samuel Williams","path":"/ioquatix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30030?s=80&v=4"},"commit":{"message":"Bump patch version.","shortMessageHtmlLink":"Bump patch version."}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAERvX_7gA","startCursor":null,"endCursor":null}},"title":"Activity · rack/rack"}