{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":551067248,"defaultBranch":"main","name":"next-rest-framework","ownerLogin":"blomqma","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2022-10-13T19:37:09.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/35772402?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1715336956.0","currentOid":""},"activityList":{"items":[{"before":"d4e5109ddb9b0806c7811d50a2131062159c55cd","after":"b9a592c0b18d054c211ec32da3a31bd9a321fa9a","ref":"refs/heads/main","pushedAt":"2024-05-10T10:29:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"v6.0.1","shortMessageHtmlLink":"v6.0.1"}},{"before":"6825ae1feb0b0fb9b09b8dfd72f660e58e61793d","after":null,"ref":"refs/heads/docs-route-req-clone-fix","pushedAt":"2024-05-10T10:27:04.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"}},{"before":"2feaca10bd5abb7170357f2cb479fabaf82dc36c","after":"d4e5109ddb9b0806c7811d50a2131062159c55cd","ref":"refs/heads/main","pushedAt":"2024-05-10T10:27:03.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"Fix dynamic server usage in app router docs route (#168)\n\nCurrently in the app router docs route we read the request\r\nheaders directly from the original request object. This is\r\nproblematic because it leads to a dynamic server usage\r\nerror unless the docs endpoint is explicitly set to `force-dynamic`\r\ncaching strategy. By reading the headers from a cloned request\r\nobject the docs endpoint can be used with the default caching\r\nstrategy, fixing this issue.","shortMessageHtmlLink":"Fix dynamic server usage in app router docs route (#168)"}},{"before":"5b1a58f1847aefc507e36ff3c95359ae66b4c997","after":"6825ae1feb0b0fb9b09b8dfd72f660e58e61793d","ref":"refs/heads/docs-route-req-clone-fix","pushedAt":"2024-05-10T10:26:32.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"Fix dynamic server usage in app router docs route\n\nCurrently in the app router docs route we read the request\nheaders directly from the original request object. This is\nproblematic because it leads to a dynamic server usage\nerror unless the docs endpoint is explicitly set to `force-dynamic`\ncaching strategy. By reading the headers from a cloned request\nobject the docs endpoint can be used with the default caching\nstrategy, fixing this issue.","shortMessageHtmlLink":"Fix dynamic server usage in app router docs route"}},{"before":null,"after":"5b1a58f1847aefc507e36ff3c95359ae66b4c997","ref":"refs/heads/docs-route-req-clone-fix","pushedAt":"2024-05-10T10:24:21.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"Fix dynamic server usage in app router docs route\n\nCurrently in the app router docs route we read the request\nheaders directly from the original request object. This is\nproblematic because it leads to a dynamic server usage\nerror unless the docs endpoint is explicitly set to `force-dynamic`\ncaching strategy. By reading the headers from a cloned request\nobject the docs endpoint can be used with the default caching\nstrategy, fixing this issue.","shortMessageHtmlLink":"Fix dynamic server usage in app router docs route"}},{"before":"6f9cb4bdd15ccc4745c9a5b43b2e4f3dcbbd61e4","after":"2feaca10bd5abb7170357f2cb479fabaf82dc36c","ref":"refs/heads/main","pushedAt":"2024-05-04T09:26:17.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"v6.0.0","shortMessageHtmlLink":"v6.0.0"}},{"before":"1751340a3dc1caf516012e17160ada0fbe1d39d0","after":null,"ref":"refs/heads/typing-improvements","pushedAt":"2024-05-04T09:21:33.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"}},{"before":"65d1e4c1d72689ef17f11c50d86e47f23fa6dfeb","after":"6f9cb4bdd15ccc4745c9a5b43b2e4f3dcbbd61e4","ref":"refs/heads/main","pushedAt":"2024-05-04T09:21:32.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"Fix async middleware typings (#165)\n\n* Fix example app SwaggerUI link\r\n\r\n* Fix async middleware typings\r\n\r\nThis fixes the TS error when using an async\r\nmiddleware by fixing the return types of the\r\nmiddleware function. This also exports the typings\r\nof `TypedNextRerquest`, `TypedNextApiRequest` and\r\n`TypedNextApiResponse` so that they can be used for\r\ncustom abstractions.","shortMessageHtmlLink":"Fix async middleware typings (#165)"}},{"before":null,"after":"1751340a3dc1caf516012e17160ada0fbe1d39d0","ref":"refs/heads/typing-improvements","pushedAt":"2024-05-04T09:17:13.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"Fix async middleware typings\n\nThis fixes the TS error when using an async\nmiddleware by fixing the return types of the\nmiddleware function. This also exports the typings\nof `TypedNextRerquest`, `TypedNextApiRequest` and\n`TypedNextApiResponse` so that they can be used for\ncustom abstractions.","shortMessageHtmlLink":"Fix async middleware typings"}},{"before":"509fa3a24ac34939647c53ba18f8bfcc85c7af68","after":"65d1e4c1d72689ef17f11c50d86e47f23fa6dfeb","ref":"refs/heads/main","pushedAt":"2024-04-16T22:49:30.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"v6.0.0-beta.4","shortMessageHtmlLink":"v6.0.0-beta.4"}},{"before":"d72becb70791e5d0e4d268dcee26dc5f8d8f0399","after":null,"ref":"refs/heads/cli-esbuild-fix","pushedAt":"2024-04-16T22:45:17.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"}},{"before":"19e5e380433f215bf6923acfd4d8d567e6981408","after":"509fa3a24ac34939647c53ba18f8bfcc85c7af68","ref":"refs/heads/main","pushedAt":"2024-04-16T22:45:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"Remove CLI ESBuild step (#161)\n\n* Remove CLI ESBuild step\r\n\r\nThis fix aims to address various ESBuild issues of\r\nusers by removing the ESBuild step from the CLI\r\ncommands and parsing parsing the OpenAPI spec\r\ndirectly from TS/JS files without any build step by\r\nusing tsx.\r\n\r\nThe `generate` and `validate` functions are now\r\nalso exposed as entry points for the ESBuild output,\r\nallowing those functions to be used for custom CLIs.\r\n\r\n* Add routes with external dependency to example app\r\n\r\nThis allows testing that API routes with third-party dependencies\r\nlike JSDom don't cause issues in the OpenAPI generation.\r\n\r\nThis commit also adds an example on writing custom scripts\r\nfor generating/validating the OpenAPI spec.\r\n\r\nThe deep object comparison as part of the OpenAPI\r\ngeneration/validation is also replaced with a faster\r\nstringified comparison between the generated and\r\nexisting OpenAPI specs.\r\n\r\nCo-authored-by: Austin Kelleher \r\n\r\n---------\r\n\r\nCo-authored-by: Austin Kelleher ","shortMessageHtmlLink":"Remove CLI ESBuild step (#161)"}},{"before":"26cac4f361ceab3dfff294e80ea9520de9b9317a","after":"d72becb70791e5d0e4d268dcee26dc5f8d8f0399","ref":"refs/heads/cli-esbuild-fix","pushedAt":"2024-04-16T22:43:31.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"Add routes with external dependency to example app\n\nThis allows testing that API routes with third-party dependencies\nlike JSDom don't cause issues in the OpenAPI generation.\n\nThis commit also adds an example on writing custom scripts\nfor generating/validating the OpenAPI spec.\n\nThe deep object comparison as part of the OpenAPI\ngeneration/validation is also replaced with a faster\nstringified comparison between the generated and\nexisting OpenAPI specs.\n\nCo-authored-by: Austin Kelleher ","shortMessageHtmlLink":"Add routes with external dependency to example app"}},{"before":"5e3e98058ccb828b5ff3920b74f720db9f4b265f","after":"26cac4f361ceab3dfff294e80ea9520de9b9317a","ref":"refs/heads/cli-esbuild-fix","pushedAt":"2024-04-16T22:36:57.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"Add routes with external dependency to example app\n\nThis allows testing that API routes with third-party dependencies\nlike JSDom don't cause issues in the OpenAPI generation.\n\nThis commit also adds an example on writing custom scripts\nfor generating/validating the OpenAPI spec.\n\nThe deep object comparison as part of the OpenAPI\ngeneration/validation is also replaced with a faster\nstringified comparison between the generated and\nexisting OpenAPI specs.\n\nCo-authored-by: Austin Kelleher ","shortMessageHtmlLink":"Add routes with external dependency to example app"}},{"before":"2f094146c504791aaa920fe2ebcde83612e42326","after":"5e3e98058ccb828b5ff3920b74f720db9f4b265f","ref":"refs/heads/cli-esbuild-fix","pushedAt":"2024-04-16T21:06:52.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"Add JS route with external dependency to example app\n\nThis allows testing that API routes written with JS are also\nsupported and that third-party dependencies like JSDom\ndon't cause issues in the OpenAPI generation.\n\nThis commit also adds an example on writing custom scripts\nfor generating/validating the OpenAPI spec.\n\nThe deep object comparison as part of the OpenAPI\ngeneration/validation is also replaced with a faster\nstringified comparison between the generated and\nexisting OpenAPI specs.\n\nCo-authored-by: Austin Kelleher ","shortMessageHtmlLink":"Add JS route with external dependency to example app"}},{"before":null,"after":"2f094146c504791aaa920fe2ebcde83612e42326","ref":"refs/heads/cli-esbuild-fix","pushedAt":"2024-04-15T23:54:53.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"Remove CLI ESBuild step\n\nThis fix aims to address various ESBuild issues of\nusers by removing the ESBuild step from the CLI\ncommands and parsing parsing the OpenAPI spec\ndirectly from TS/JS files without any build step by\nusing tsx.\n\nThe `generate` and `validate` functions are now\nalso exposed as entry points for the ESBuild output,\nallowing those functions to be used for custom CLIs.","shortMessageHtmlLink":"Remove CLI ESBuild step"}},{"before":"ab1a07abebbe1dc784b5836f2c6d7d64e03f6263","after":"19e5e380433f215bf6923acfd4d8d567e6981408","ref":"refs/heads/main","pushedAt":"2024-04-13T12:40:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"v6.0.0-beta.3","shortMessageHtmlLink":"v6.0.0-beta.3"}},{"before":"8de41d1e6c68f363ef801c4b3190b9f059c40070","after":null,"ref":"refs/heads/path-params-validation-improvement","pushedAt":"2024-04-13T09:07:27.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"}},{"before":"586205f8c4a97d05f914b52f229f5cc5f686b96a","after":"ab1a07abebbe1dc784b5836f2c6d7d64e03f6263","ref":"refs/heads/main","pushedAt":"2024-04-13T09:07:26.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"Improve path parameter validation (#155)\n\nThis change adds support for validating path\r\nparameters and query parameters separately\r\nalso on pages router using the `params` and\r\n´query´ schemas similarly as with app router.\r\n\r\nThis also adds support for Zod's `describe` method\r\nso that the schema descriptions are included the\r\nOpenAPI spec.","shortMessageHtmlLink":"Improve path parameter validation (#155)"}},{"before":"b4c3aaed5f09189edb0d78ecd4464e6cbc0dfd67","after":"8de41d1e6c68f363ef801c4b3190b9f059c40070","ref":"refs/heads/path-params-validation-improvement","pushedAt":"2024-04-13T09:03:43.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"Improve path parameter validation\n\nThis change adds support for validating path\nparameters and query parameters separately\nalso on pages router using the `params` and\n´query´ schemas similarly as with app router.\n\nThis also adds support for Zod's `describe` method\nso that the schema descriptions are included the\nOpenAPI spec.","shortMessageHtmlLink":"Improve path parameter validation"}},{"before":"8fb181671188c08d688628557a08b290bf91a7a4","after":"b4c3aaed5f09189edb0d78ecd4464e6cbc0dfd67","ref":"refs/heads/path-params-validation-improvement","pushedAt":"2024-04-13T08:59:13.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"Improve path parameter validation WIP","shortMessageHtmlLink":"Improve path parameter validation WIP"}},{"before":"34a9422e133b89bc2db0353539bebddd33d4b22a","after":"8fb181671188c08d688628557a08b290bf91a7a4","ref":"refs/heads/path-params-validation-improvement","pushedAt":"2024-04-13T08:57:53.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"Improve path parameter validation WIP","shortMessageHtmlLink":"Improve path parameter validation WIP"}},{"before":"a9567baee9aa8279b15d1b90a1794402daaca002","after":"34a9422e133b89bc2db0353539bebddd33d4b22a","ref":"refs/heads/path-params-validation-improvement","pushedAt":"2024-04-08T22:05:59.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"Improve path parameter validation WIP","shortMessageHtmlLink":"Improve path parameter validation WIP"}},{"before":null,"after":"a9567baee9aa8279b15d1b90a1794402daaca002","ref":"refs/heads/path-params-validation-improvement","pushedAt":"2024-04-02T18:16:21.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"Improve path parameter validation WIP","shortMessageHtmlLink":"Improve path parameter validation WIP"}},{"before":"ec00287b15853a85f9af7e4692f99251e84f5d70","after":"586205f8c4a97d05f914b52f229f5cc5f686b96a","ref":"refs/heads/main","pushedAt":"2024-03-26T23:11:41.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"v6.0.0-beta.2","shortMessageHtmlLink":"v6.0.0-beta.2"}},{"before":"56e472169161d286ac37bc91722c6d36a382d553","after":null,"ref":"refs/heads/path-params-validation","pushedAt":"2024-03-26T23:04:11.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"}},{"before":"c35d4115649bea84315e7c72a6ff547d0270cfc1","after":"ec00287b15853a85f9af7e4692f99251e84f5d70","ref":"refs/heads/main","pushedAt":"2024-03-26T23:04:10.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"Validation & response serialization improvements (#152)\n\n* Fix request body & path param parsing\r\n\r\nThis fixes a bug where the Zod-parsed request\r\nbody accessed via `req.json()` had potentially\r\nincorrect types due to JSON serialization. Now\r\nthe `json()` method is overridden so that the parsed\r\ndata is returned as is without the JSON serialization.\r\n\r\nAdditionally, the request path parameters are now also\r\nvalidated when using app router when previously they\r\nwere used only for providing types for the used path\r\nparameters.\r\n\r\n* Add 10s timeout for form parsing\r\n\r\n* Improve RPC route response serialization\r\n\r\nThis change serializes Blob data for API routes\r\nand creates a JSON object from form responses,\r\nalthough these are rare cases.","shortMessageHtmlLink":"Validation & response serialization improvements (#152)"}},{"before":"1dc6506e9f182032d30bc36d15da26a6c0287434","after":"56e472169161d286ac37bc91722c6d36a382d553","ref":"refs/heads/path-params-validation","pushedAt":"2024-03-26T22:59:45.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"Improve RPC route response serialization\n\nThis change serializes Blob data for API routes\nand creates a JSON object from form responses,\nalthough these are rare cases.","shortMessageHtmlLink":"Improve RPC route response serialization"}},{"before":null,"after":"1dc6506e9f182032d30bc36d15da26a6c0287434","ref":"refs/heads/path-params-validation","pushedAt":"2024-03-26T18:38:44.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"Fix request body & path param parsing\n\nThis fixes a bug where the Zod-parsed request\nbody accessed via `req.json()` had potentially\nincorrect types due to JSON serialization. Now\nthe `json()` method is overridden so that the parsed\ndata is returned as is without the JSON serialization.\n\nAdditionally, the request path parameters are now also\nvalidated when using app router when previously they\nwere used only for providing types for the used path\nparameters.","shortMessageHtmlLink":"Fix request body & path param parsing"}},{"before":"65196e38d352dfe5a82b2ca3d5d200209a52e991","after":"4cda2b3aa4c9f156e85bc29b1e68a3d9e9dabf0c","ref":"refs/heads/testing-coverage","pushedAt":"2024-03-24T22:40:03.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"blomqma","name":"Markus Blomqvist","path":"/blomqma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35772402?s=80&v=4"},"commit":{"message":"Add Windows to the CI OS matrix","shortMessageHtmlLink":"Add Windows to the CI OS matrix"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAERna9UAA","startCursor":null,"endCursor":null}},"title":"Activity · blomqma/next-rest-framework"}