{"id":33583,"name":"github.com/vapor/websocket-kit","ecosystem":"cocoapods","repository_url":null,"issues_count":2,"created_at":"2025-06-07T13:27:42.032Z","updated_at":"2025-06-07T13:27:42.032Z","purl":"pkg:cocoapods/github.com/vapor/websocket-kit","unique_repositories_count":1,"unique_repositories_count_past_30_days":1,"recent_issues":[{"uuid":"3140360025","node_id":"PR_kwDOO55ujs6aOOGk","number":2,"state":"open","title":"fix: bump the vapor group with 6 updates","user":"dependabot[bot]","labels":["dependencies","swift_package_manager"],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-12T13:43:30.000Z","updated_at":"2025-09-16T15:09:16.212Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"fix: bump","group_name":"vapor","update_count":6,"packages":[{"name":"github.com/vapor/vapor","old_version":"4.102.0","new_version":"4.115.0","repository_url":"https://github.com/vapor/vapor"},{"name":"github.com/vapor/async-kit","old_version":"1.19.0","new_version":"1.20.0","repository_url":"https://github.com/vapor/async-kit"},{"name":"github.com/vapor/console-kit","old_version":"4.14.3","new_version":"4.15.2","repository_url":"https://github.com/vapor/console-kit"},{"name":"github.com/vapor/routing-kit","old_version":"4.9.1","new_version":"4.9.2","repository_url":"https://github.com/vapor/routing-kit"},{"name":"github.com/vapor/websocket-kit","old_version":"2.15.0","new_version":"2.16.1","repository_url":"https://github.com/vapor/websocket-kit"},{"name":"github.com/vapor/multipart-kit","old_version":"4.7.0","new_version":"4.7.1","repository_url":"https://github.com/vapor/multipart-kit"}],"path":null,"ecosystem":"cocoapods"},"body":"Bumps the vapor group with 6 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [github.com/vapor/vapor](https://github.com/vapor/vapor) | `4.102.0` | `4.115.0` |\n| [github.com/vapor/async-kit](https://github.com/vapor/async-kit) | `1.19.0` | `1.20.0` |\n| [github.com/vapor/console-kit](https://github.com/vapor/console-kit) | `4.14.3` | `4.15.2` |\n| [github.com/vapor/routing-kit](https://github.com/vapor/routing-kit) | `4.9.1` | `4.9.2` |\n| [github.com/vapor/websocket-kit](https://github.com/vapor/websocket-kit) | `2.15.0` | `2.16.1` |\n| [github.com/vapor/multipart-kit](https://github.com/vapor/multipart-kit) | `4.7.0` | `4.7.1` |\n\nUpdates `github.com/vapor/vapor` from 4.102.0 to 4.115.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vapor/vapor/releases\"\u003egithub.com/vapor/vapor's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.115.0 - Improve \u003ccode\u003eVaporTesting\u003c/code\u003e's \u003ccode\u003ewithApp\u003c/code\u003e method\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eImprove \u003ccode\u003eVaporTesting\u003c/code\u003e's \u003ccode\u003ewithApp\u003c/code\u003e method by \u003ca href=\"https://github.com/fpseverino\"\u003e\u003ccode\u003e@​fpseverino\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3332\"\u003e#3332\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eThis PR makes the \u003ccode\u003ewithApp\u003c/code\u003e helper method work as advertised, allowing an optional configuration method for the \u003ccode\u003eApplication\u003c/code\u003e to be passed.\u003c/p\u003e\n\u003cp\u003eAlso, marks it with \u003ccode\u003e@discardableResult\u003c/code\u003e to avoid unnecessary warnings.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch6\u003e\u003cem\u003eThis patch was released by \u003ca href=\"https://github.com/gwynne\"\u003e\u003ccode\u003e@​gwynne\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/h6\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vapor/vapor/compare/4.114.1...4.115.0\"\u003ehttps://github.com/vapor/vapor/compare/4.114.1...4.115.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e4.114.1 - Correct SessionData's Codable conformance\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eCorrect SessionData's Codable conformance by \u003ca href=\"https://github.com/gwynne\"\u003e\u003ccode\u003e@​gwynne\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3317\"\u003e#3317\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eThe \u003ccode\u003eSessionData\u003c/code\u003e type (which is nothing but a very thin wrapper over a \u003ccode\u003e[String: String]\u003c/code\u003e dictionary anyway) had a \u003ccode\u003eCodable\u003c/code\u003e implementation that was technically incorrect. This corrects it. There should not be any effect whatsoever on behavior unless someone is using a very esoteric \u003ccode\u003eEncoder\u003c/code\u003e or \u003ccode\u003eDecoder\u003c/code\u003e to encode or decode it, but it’s still more correct this way.\u003c/p\u003e\n\u003cp\u003eAlso took the opportunity to do a little code formatting cleanup and to replace the silly use of \u003ccode\u003e.reduce()\u003c/code\u003e in the \u003ccode\u003eExpressibleByDictionaryLiteral\u003c/code\u003e initializer with use of the applicable (and somewhat faster) \u003ccode\u003eDictionary\u003c/code\u003e initializer.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch2\u003eReviewers\u003c/h2\u003e\n\u003cp\u003eThanks to the reviewers for their help:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ptoffy\"\u003e\u003ccode\u003e@​ptoffy\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch6\u003e\u003cem\u003eThis patch was released by \u003ca href=\"https://github.com/gwynne\"\u003e\u003ccode\u003e@​gwynne\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/h6\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vapor/vapor/compare/4.114.0...4.114.1\"\u003ehttps://github.com/vapor/vapor/compare/4.114.0...4.114.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e4.114.0 - Added a cache policy for file middleware\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eAdded a cache policy for file middleware by \u003ca href=\"https://github.com/dimitribouniol\"\u003e\u003ccode\u003e@​dimitribouniol\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3314\"\u003e#3314\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eCurrently, if a vapor app uses \u003ccode\u003eFileMiddleware\u003c/code\u003e to deliver static resources, it would have no control over the cache policy used by the browser for those files. This adds a configurable cache policy interface with reasonable defaults to better control when and how often a browser re-requests files (for instance, disabling caches during development).\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch6\u003e\u003cem\u003eThis patch was released by \u003ca href=\"https://github.com/0xTim\"\u003e\u003ccode\u003e@​0xTim\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/h6\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vapor/vapor/compare/4.113.2...4.114.0\"\u003ehttps://github.com/vapor/vapor/compare/4.113.2...4.114.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e4.113.2 - Fix warning in service fix\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eFix warning in service fix by \u003ca href=\"https://github.com/0xTim\"\u003e\u003ccode\u003e@​0xTim\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3303\"\u003e#3303\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c/blockquote\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/vapor/commit/4014016aad591a120f244f9b9e8a57252b7e62b4\"\u003e\u003ccode\u003e4014016\u003c/code\u003e\u003c/a\u003e Improve \u003ccode\u003eVaporTesting\u003c/code\u003e's \u003ccode\u003ewithApp\u003c/code\u003e method (\u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3332\"\u003e#3332\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/vapor/commit/1cbae2c4afd44552d27f93a323dc2c58b5256dc9\"\u003e\u003ccode\u003e1cbae2c\u003c/code\u003e\u003c/a\u003e Add import for Android in AsyncAuthTests.swift (\u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3319\"\u003e#3319\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/vapor/commit/6e863e713033c01ac34b9c53d2f6311acdb464ec\"\u003e\u003ccode\u003e6e863e7\u003c/code\u003e\u003c/a\u003e Bump actions/create-github-app-token from 1 to 2 in the dependencies group (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/vapor/commit/87b0edd2633c35de543cb7573efe5fbf456181bc\"\u003e\u003ccode\u003e87b0edd\u003c/code\u003e\u003c/a\u003e Correct SessionData's Codable conformance (\u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3317\"\u003e#3317\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/vapor/commit/f6459d6417d4968f91979224dd8fd38fa99b042c\"\u003e\u003ccode\u003ef6459d6\u003c/code\u003e\u003c/a\u003e Added a cache policy for file middleware (\u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3314\"\u003e#3314\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/vapor/commit/1fdd1c2ff090427476f534fcc9b9eb45a195c390\"\u003e\u003ccode\u003e1fdd1c2\u003c/code\u003e\u003c/a\u003e Fix a typo in a comment in HTTPServer.swift (\u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3311\"\u003e#3311\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/vapor/commit/c58bf54d365f96a1e89aec1d9c700d9efda950cf\"\u003e\u003ccode\u003ec58bf54\u003c/code\u003e\u003c/a\u003e Fix thread pool size documentation comment (\u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3312\"\u003e#3312\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/vapor/commit/fb0f968593b5309a18f39f05683a5ef366c8bde5\"\u003e\u003ccode\u003efb0f968\u003c/code\u003e\u003c/a\u003e Fix typo in  Storage.swift (\u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3305\"\u003e#3305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/vapor/commit/a425e32f9b9d19c0ecab952cb4484c1c15e2536f\"\u003e\u003ccode\u003ea425e32\u003c/code\u003e\u003c/a\u003e Fix warning in service fix (\u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3303\"\u003e#3303\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/vapor/commit/4f2dcf7d3b47d0af25137ee586405bdffb584045\"\u003e\u003ccode\u003e4f2dcf7\u003c/code\u003e\u003c/a\u003e Prevent stack overflow by using \u003ccode\u003eNIOLock\u003c/code\u003e instead of \u003ccode\u003eNIOLockedValueBox\u003c/code\u003e duri...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vapor/vapor/compare/4.102.0...4.115.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/vapor/async-kit` from 1.19.0 to 1.20.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vapor/async-kit/releases\"\u003egithub.com/vapor/async-kit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.20.0 - Add \u003ccode\u003eshutdownAsync\u003c/code\u003e\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eAdd \u003ccode\u003eshutdownAsync\u003c/code\u003e by \u003ca href=\"https://github.com/0xTim\"\u003e\u003ccode\u003e@​0xTim\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/async-kit/issues/109\"\u003e#109\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eEven calling Dispatch’s \u003ccode\u003e.wait()\u003c/code\u003e can cause the concurrency pool to deadlock meaning the connection pool never returns. This provides a proper async version of \u003ccode\u003eshutdown()\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eAnnotates the offending functions with \u003ccode\u003e@noasync\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://swift-open-source.slack.com/archives/C9MMT6VGB/p1722432257179729\"\u003ehttps://swift-open-source.slack.com/archives/C9MMT6VGB/p1722432257179729\u003c/a\u003e for more context\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch2\u003eReviewers\u003c/h2\u003e\n\u003cp\u003eThanks to the reviewers for their help:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MahdiBM\"\u003e\u003ccode\u003e@​MahdiBM\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch6\u003e\u003cem\u003eThis patch was released by \u003ca href=\"https://github.com/0xTim\"\u003e\u003ccode\u003e@​0xTim\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/h6\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vapor/async-kit/compare/1.19.1...1.20.0\"\u003ehttps://github.com/vapor/async-kit/compare/1.19.1...1.20.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.19.1 - Fix typo in connection request error message\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eFix typo in connection request error message by \u003ca href=\"https://github.com/rausnitz\"\u003e\u003ccode\u003e@​rausnitz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/async-kit/issues/108\"\u003e#108\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eThere’s a parenthesis missing in the connection request error message.\u003c/p\u003e\n\u003cp\u003eThis fixes \u003ca href=\"https://redirect.github.com/vapor/async-kit/issues/107\"\u003evapor/async-kit#107\u003c/a\u003e.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch6\u003e\u003cem\u003eThis patch was released by \u003ca href=\"https://github.com/0xTim\"\u003e\u003ccode\u003e@​0xTim\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/h6\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vapor/async-kit/compare/1.19.0...1.19.1\"\u003ehttps://github.com/vapor/async-kit/compare/1.19.0...1.19.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/async-kit/commit/e048c8ee94967e8d8a1c2ec0e1156d6f7fa34d31\"\u003e\u003ccode\u003ee048c8e\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eshutdownAsync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/vapor/async-kit/issues/109\"\u003e#109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/async-kit/commit/15b3fb7b2437f9db11f6ddcf365c5b5db8c3a346\"\u003e\u003ccode\u003e15b3fb7\u003c/code\u003e\u003c/a\u003e Fix typo in connection request error message (\u003ca href=\"https://redirect.github.com/vapor/async-kit/issues/108\"\u003e#108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/async-kit/commit/bfcc9cb15b41b3138074196503e29ba5a3e4c6e9\"\u003e\u003ccode\u003ebfcc9cb\u003c/code\u003e\u003c/a\u003e Update README\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/async-kit/commit/22c9ed42d30b0a44df2aaf565f7892019e13a186\"\u003e\u003ccode\u003e22c9ed4\u003c/code\u003e\u003c/a\u003e [skip ci] Create dependabot.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/async-kit/commit/2cb0b79a69696db15401bdf4016e960562180ecf\"\u003e\u003ccode\u003e2cb0b79\u003c/code\u003e\u003c/a\u003e [skip ci] Workaround Github's broken image caching\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vapor/async-kit/compare/1.19.0...1.20.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/vapor/console-kit` from 4.14.3 to 4.15.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vapor/console-kit/releases\"\u003egithub.com/vapor/console-kit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.15.2 - Fix Android support\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eFix Android support by \u003ca href=\"https://github.com/marcprux\"\u003e\u003ccode\u003e@​marcprux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/console-kit/issues/207\"\u003e#207\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eThis PR adds the imports necessary to get Android compiling again.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch6\u003e\u003cem\u003eThis patch was released by \u003ca href=\"https://github.com/gwynne\"\u003e\u003ccode\u003e@​gwynne\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/h6\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vapor/console-kit/compare/4.15.1...4.15.2\"\u003ehttps://github.com/vapor/console-kit/compare/4.15.1...4.15.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e4.15.0 - Don't animate ActivityIndicator when outputting to a file\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eDon't animate ActivityIndicator when outputting to a file by \u003ca href=\"https://github.com/jflan-dd\"\u003e\u003ccode\u003e@​jflan-dd\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/console-kit/issues/202\"\u003e#202\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eLong running loading/progress indicators create a lot of noisy output when an executable is outputting to Xcode’s console, being captured to a file, or a piped to another command. e.g. \u003ca href=\"https://redirect.github.com/vapor/console-kit/issues/141\"\u003e#141\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis PR skips writing the animated output of an \u003ccode\u003eActivityIndicator\u003c/code\u003e if the console will not handle it well.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch6\u003e\u003cem\u003eThis patch was released by \u003ca href=\"https://github.com/0xTim\"\u003e\u003ccode\u003e@​0xTim\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/h6\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vapor/console-kit/compare/4.14.3...4.15.0\"\u003ehttps://github.com/vapor/console-kit/compare/4.14.3...4.15.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/console-kit/commit/742f624a998cba2a9e653d9b1e91ad3f3a5dff6b\"\u003e\u003ccode\u003e742f624\u003c/code\u003e\u003c/a\u003e Fix Android support (\u003ca href=\"https://redirect.github.com/vapor/console-kit/issues/207\"\u003e#207\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/console-kit/commit/966d89ae64cd71c652a1e981bc971de59d64f13d\"\u003e\u003ccode\u003e966d89a\u003c/code\u003e\u003c/a\u003e Fix Windows build break in Terminal. (\u003ca href=\"https://redirect.github.com/vapor/console-kit/issues/205\"\u003e#205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/console-kit/commit/a44d67133251fa8559303580f208b6b44a4cb922\"\u003e\u003ccode\u003ea44d671\u003c/code\u003e\u003c/a\u003e Add Windows unit tests to CI workflow. (\u003ca href=\"https://redirect.github.com/vapor/console-kit/issues/206\"\u003e#206\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/console-kit/commit/1490e7b0478313afae4de782b19c219bc66835c4\"\u003e\u003ccode\u003e1490e7b\u003c/code\u003e\u003c/a\u003e Fix DocC Links (\u003ca href=\"https://redirect.github.com/vapor/console-kit/issues/204\"\u003e#204\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/console-kit/commit/78c0dd739df8cb9ee14a8bbbf770facc4fc3402a\"\u003e\u003ccode\u003e78c0dd7\u003c/code\u003e\u003c/a\u003e Don't animate ActivityIndicator when outputting to a file (\u003ca href=\"https://redirect.github.com/vapor/console-kit/issues/202\"\u003e#202\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/console-kit/commit/479a6af06ec51f5019f786611edf01f7501b5328\"\u003e\u003ccode\u003e479a6af\u003c/code\u003e\u003c/a\u003e Try adding CI for MUSL (\u003ca href=\"https://redirect.github.com/vapor/console-kit/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vapor/console-kit/compare/4.14.3...4.15.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/vapor/routing-kit` from 4.9.1 to 4.9.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vapor/routing-kit/releases\"\u003egithub.com/vapor/routing-kit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.9.2 - General updates and cleanup\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eGeneral updates and cleanup by \u003ca href=\"https://github.com/gwynne\"\u003e\u003ccode\u003e@​gwynne\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/routing-kit/issues/131\"\u003e#131\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eThe usual - bump the minimum to 5.10, update the README, clean up the API docs, update the CI. Also converts the existing performance tests to use the \u003ccode\u003epackage-benchmarks\u003c/code\u003e tooling also used by JWTKit.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch2\u003eReviewers\u003c/h2\u003e\n\u003cp\u003eThanks to the reviewers for their help:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ptoffy\"\u003e\u003ccode\u003e@​ptoffy\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MahdiBM\"\u003e\u003ccode\u003e@​MahdiBM\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch6\u003e\u003cem\u003eThis patch was released by \u003ca href=\"https://github.com/gwynne\"\u003e\u003ccode\u003e@​gwynne\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/h6\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vapor/routing-kit/compare/4.9.1...4.9.2\"\u003ehttps://github.com/vapor/routing-kit/compare/4.9.1...4.9.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/routing-kit/commit/93f7222c8e195cbad39fafb5a0e4cc85a8def7ea\"\u003e\u003ccode\u003e93f7222\u003c/code\u003e\u003c/a\u003e General updates and cleanup (\u003ca href=\"https://redirect.github.com/vapor/routing-kit/issues/131\"\u003e#131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vapor/routing-kit/compare/4.9.1...4.9.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/vapor/websocket-kit` from 2.15.0 to 2.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vapor/websocket-kit/releases\"\u003egithub.com/vapor/websocket-kit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.16.0 - Deal with Sendable and clean up package in general\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eDeal with Sendable and clean up package in general by \u003ca href=\"https://github.com/gwynne\"\u003e\u003ccode\u003e@​gwynne\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/websocket-kit/issues/158\"\u003e#158\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eCovers fixing a bunch of \u003ccode\u003eSendable\u003c/code\u003e things and does the usual round of package cleanup - bump the Swift minimum to 5.10, update the CI and the README, and so forth. Also fixes up some issues in the tests.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch2\u003eReviewers\u003c/h2\u003e\n\u003cp\u003eThanks to the reviewers for their help:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MahdiBM\"\u003e\u003ccode\u003e@​MahdiBM\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch6\u003e\u003cem\u003eThis patch was released by \u003ca href=\"https://github.com/gwynne\"\u003e\u003ccode\u003e@​gwynne\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/h6\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vapor/websocket-kit/compare/2.15.0...2.16.0\"\u003ehttps://github.com/vapor/websocket-kit/compare/2.15.0...2.16.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/websocket-kit/commit/8666c92dbbb3c8eefc8008c9c8dcf50bfd302167\"\u003e\u003ccode\u003e8666c92\u003c/code\u003e\u003c/a\u003e Increase minimum required version of Swift-Nio to 2.78.0 (\u003ca href=\"https://redirect.github.com/vapor/websocket-kit/issues/159\"\u003e#159\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/websocket-kit/commit/014ccd52891b8c098d7e1033d5e72ed76fef7a86\"\u003e\u003ccode\u003e014ccd5\u003c/code\u003e\u003c/a\u003e Deal with Sendable and clean up package in general (\u003ca href=\"https://redirect.github.com/vapor/websocket-kit/issues/158\"\u003e#158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/websocket-kit/commit/b49c32141dd71469605856febce62811579c567c\"\u003e\u003ccode\u003eb49c321\u003c/code\u003e\u003c/a\u003e Update CI (\u003ca href=\"https://redirect.github.com/vapor/websocket-kit/issues/154\"\u003e#154\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vapor/websocket-kit/compare/2.15.0...2.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/vapor/multipart-kit` from 4.7.0 to 4.7.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vapor/multipart-kit/releases\"\u003egithub.com/vapor/multipart-kit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.7.1 - Exclude \u003ccode\u003edocc\u003c/code\u003e files from sources to avoid build warnings\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eExclude \u003ccode\u003edocc\u003c/code\u003e files from sources to avoid build warnings by \u003ca href=\"https://github.com/omochi\"\u003e\u003ccode\u003e@​omochi\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/multipart-kit/issues/102\"\u003e#102\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eWhen using this package as a dependency, the following warning appears during the build process:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003ewarning: 'multipart-kit': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target\n    /Users/omochi/\u0026lt;myproject\u0026gt;/.build/checkouts/multipart-kit/Sources/MultipartKit/Docs.docc\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eThis happens because \u003ccode\u003edocc\u003c/code\u003e files are treated as undefined source files.\nThis patch explicitly excludes them using the exclude directive, clarifying that they are not source files and preventing the warning from being displayed.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch6\u003e\u003cem\u003eThis patch was released by \u003ca href=\"https://github.com/0xTim\"\u003e\u003ccode\u003e@​0xTim\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/h6\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vapor/multipart-kit/compare/4.7.0...4.7.1\"\u003ehttps://github.com/vapor/multipart-kit/compare/4.7.0...4.7.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/multipart-kit/commit/3498e60218e6003894ff95192d756e238c01f44e\"\u003e\u003ccode\u003e3498e60\u003c/code\u003e\u003c/a\u003e Exclude \u003ccode\u003edocc\u003c/code\u003e files from sources to avoid build warnings (\u003ca href=\"https://redirect.github.com/vapor/multipart-kit/issues/102\"\u003e#102\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vapor/multipart-kit/compare/4.7.0...4.7.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/LoriMarshall/meteoweather/pull/2","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/LoriMarshall%2Fmeteoweather/issues/2","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2/packages"}],"issue_packages":[{"old_version":"2.15.0","new_version":"2.16.1","update_type":"minor","path":null,"pr_created_at":"2025-06-12T13:43:30.000Z","version_change":"2.15.0 → 2.16.1","issue":{"uuid":"3140360025","node_id":"PR_kwDOO55ujs6aOOGk","number":2,"state":"open","title":"fix: bump the vapor group with 6 updates","user":"dependabot[bot]","labels":["dependencies","swift_package_manager"],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-12T13:43:30.000Z","updated_at":"2025-09-16T15:09:16.212Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"fix: bump","group_name":"vapor","update_count":6,"packages":[{"name":"github.com/vapor/vapor","old_version":"4.102.0","new_version":"4.115.0","repository_url":"https://github.com/vapor/vapor"},{"name":"github.com/vapor/async-kit","old_version":"1.19.0","new_version":"1.20.0","repository_url":"https://github.com/vapor/async-kit"},{"name":"github.com/vapor/console-kit","old_version":"4.14.3","new_version":"4.15.2","repository_url":"https://github.com/vapor/console-kit"},{"name":"github.com/vapor/routing-kit","old_version":"4.9.1","new_version":"4.9.2","repository_url":"https://github.com/vapor/routing-kit"},{"name":"github.com/vapor/websocket-kit","old_version":"2.15.0","new_version":"2.16.1","repository_url":"https://github.com/vapor/websocket-kit"},{"name":"github.com/vapor/multipart-kit","old_version":"4.7.0","new_version":"4.7.1","repository_url":"https://github.com/vapor/multipart-kit"}],"path":null,"ecosystem":"cocoapods"},"body":"Bumps the vapor group with 6 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [github.com/vapor/vapor](https://github.com/vapor/vapor) | `4.102.0` | `4.115.0` |\n| [github.com/vapor/async-kit](https://github.com/vapor/async-kit) | `1.19.0` | `1.20.0` |\n| [github.com/vapor/console-kit](https://github.com/vapor/console-kit) | `4.14.3` | `4.15.2` |\n| [github.com/vapor/routing-kit](https://github.com/vapor/routing-kit) | `4.9.1` | `4.9.2` |\n| [github.com/vapor/websocket-kit](https://github.com/vapor/websocket-kit) | `2.15.0` | `2.16.1` |\n| [github.com/vapor/multipart-kit](https://github.com/vapor/multipart-kit) | `4.7.0` | `4.7.1` |\n\nUpdates `github.com/vapor/vapor` from 4.102.0 to 4.115.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vapor/vapor/releases\"\u003egithub.com/vapor/vapor's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.115.0 - Improve \u003ccode\u003eVaporTesting\u003c/code\u003e's \u003ccode\u003ewithApp\u003c/code\u003e method\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eImprove \u003ccode\u003eVaporTesting\u003c/code\u003e's \u003ccode\u003ewithApp\u003c/code\u003e method by \u003ca href=\"https://github.com/fpseverino\"\u003e\u003ccode\u003e@​fpseverino\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3332\"\u003e#3332\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eThis PR makes the \u003ccode\u003ewithApp\u003c/code\u003e helper method work as advertised, allowing an optional configuration method for the \u003ccode\u003eApplication\u003c/code\u003e to be passed.\u003c/p\u003e\n\u003cp\u003eAlso, marks it with \u003ccode\u003e@discardableResult\u003c/code\u003e to avoid unnecessary warnings.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch6\u003e\u003cem\u003eThis patch was released by \u003ca href=\"https://github.com/gwynne\"\u003e\u003ccode\u003e@​gwynne\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/h6\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vapor/vapor/compare/4.114.1...4.115.0\"\u003ehttps://github.com/vapor/vapor/compare/4.114.1...4.115.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e4.114.1 - Correct SessionData's Codable conformance\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eCorrect SessionData's Codable conformance by \u003ca href=\"https://github.com/gwynne\"\u003e\u003ccode\u003e@​gwynne\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3317\"\u003e#3317\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eThe \u003ccode\u003eSessionData\u003c/code\u003e type (which is nothing but a very thin wrapper over a \u003ccode\u003e[String: String]\u003c/code\u003e dictionary anyway) had a \u003ccode\u003eCodable\u003c/code\u003e implementation that was technically incorrect. This corrects it. There should not be any effect whatsoever on behavior unless someone is using a very esoteric \u003ccode\u003eEncoder\u003c/code\u003e or \u003ccode\u003eDecoder\u003c/code\u003e to encode or decode it, but it’s still more correct this way.\u003c/p\u003e\n\u003cp\u003eAlso took the opportunity to do a little code formatting cleanup and to replace the silly use of \u003ccode\u003e.reduce()\u003c/code\u003e in the \u003ccode\u003eExpressibleByDictionaryLiteral\u003c/code\u003e initializer with use of the applicable (and somewhat faster) \u003ccode\u003eDictionary\u003c/code\u003e initializer.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch2\u003eReviewers\u003c/h2\u003e\n\u003cp\u003eThanks to the reviewers for their help:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ptoffy\"\u003e\u003ccode\u003e@​ptoffy\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch6\u003e\u003cem\u003eThis patch was released by \u003ca href=\"https://github.com/gwynne\"\u003e\u003ccode\u003e@​gwynne\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/h6\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vapor/vapor/compare/4.114.0...4.114.1\"\u003ehttps://github.com/vapor/vapor/compare/4.114.0...4.114.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e4.114.0 - Added a cache policy for file middleware\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eAdded a cache policy for file middleware by \u003ca href=\"https://github.com/dimitribouniol\"\u003e\u003ccode\u003e@​dimitribouniol\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3314\"\u003e#3314\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eCurrently, if a vapor app uses \u003ccode\u003eFileMiddleware\u003c/code\u003e to deliver static resources, it would have no control over the cache policy used by the browser for those files. This adds a configurable cache policy interface with reasonable defaults to better control when and how often a browser re-requests files (for instance, disabling caches during development).\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch6\u003e\u003cem\u003eThis patch was released by \u003ca href=\"https://github.com/0xTim\"\u003e\u003ccode\u003e@​0xTim\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/h6\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vapor/vapor/compare/4.113.2...4.114.0\"\u003ehttps://github.com/vapor/vapor/compare/4.113.2...4.114.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e4.113.2 - Fix warning in service fix\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eFix warning in service fix by \u003ca href=\"https://github.com/0xTim\"\u003e\u003ccode\u003e@​0xTim\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3303\"\u003e#3303\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c/blockquote\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/vapor/commit/4014016aad591a120f244f9b9e8a57252b7e62b4\"\u003e\u003ccode\u003e4014016\u003c/code\u003e\u003c/a\u003e Improve \u003ccode\u003eVaporTesting\u003c/code\u003e's \u003ccode\u003ewithApp\u003c/code\u003e method (\u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3332\"\u003e#3332\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/vapor/commit/1cbae2c4afd44552d27f93a323dc2c58b5256dc9\"\u003e\u003ccode\u003e1cbae2c\u003c/code\u003e\u003c/a\u003e Add import for Android in AsyncAuthTests.swift (\u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3319\"\u003e#3319\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/vapor/commit/6e863e713033c01ac34b9c53d2f6311acdb464ec\"\u003e\u003ccode\u003e6e863e7\u003c/code\u003e\u003c/a\u003e Bump actions/create-github-app-token from 1 to 2 in the dependencies group (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/vapor/commit/87b0edd2633c35de543cb7573efe5fbf456181bc\"\u003e\u003ccode\u003e87b0edd\u003c/code\u003e\u003c/a\u003e Correct SessionData's Codable conformance (\u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3317\"\u003e#3317\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/vapor/commit/f6459d6417d4968f91979224dd8fd38fa99b042c\"\u003e\u003ccode\u003ef6459d6\u003c/code\u003e\u003c/a\u003e Added a cache policy for file middleware (\u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3314\"\u003e#3314\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/vapor/commit/1fdd1c2ff090427476f534fcc9b9eb45a195c390\"\u003e\u003ccode\u003e1fdd1c2\u003c/code\u003e\u003c/a\u003e Fix a typo in a comment in HTTPServer.swift (\u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3311\"\u003e#3311\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/vapor/commit/c58bf54d365f96a1e89aec1d9c700d9efda950cf\"\u003e\u003ccode\u003ec58bf54\u003c/code\u003e\u003c/a\u003e Fix thread pool size documentation comment (\u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3312\"\u003e#3312\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/vapor/commit/fb0f968593b5309a18f39f05683a5ef366c8bde5\"\u003e\u003ccode\u003efb0f968\u003c/code\u003e\u003c/a\u003e Fix typo in  Storage.swift (\u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3305\"\u003e#3305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/vapor/commit/a425e32f9b9d19c0ecab952cb4484c1c15e2536f\"\u003e\u003ccode\u003ea425e32\u003c/code\u003e\u003c/a\u003e Fix warning in service fix (\u003ca href=\"https://redirect.github.com/vapor/vapor/issues/3303\"\u003e#3303\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/vapor/commit/4f2dcf7d3b47d0af25137ee586405bdffb584045\"\u003e\u003ccode\u003e4f2dcf7\u003c/code\u003e\u003c/a\u003e Prevent stack overflow by using \u003ccode\u003eNIOLock\u003c/code\u003e instead of \u003ccode\u003eNIOLockedValueBox\u003c/code\u003e duri...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vapor/vapor/compare/4.102.0...4.115.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/vapor/async-kit` from 1.19.0 to 1.20.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vapor/async-kit/releases\"\u003egithub.com/vapor/async-kit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.20.0 - Add \u003ccode\u003eshutdownAsync\u003c/code\u003e\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eAdd \u003ccode\u003eshutdownAsync\u003c/code\u003e by \u003ca href=\"https://github.com/0xTim\"\u003e\u003ccode\u003e@​0xTim\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/async-kit/issues/109\"\u003e#109\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eEven calling Dispatch’s \u003ccode\u003e.wait()\u003c/code\u003e can cause the concurrency pool to deadlock meaning the connection pool never returns. This provides a proper async version of \u003ccode\u003eshutdown()\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eAnnotates the offending functions with \u003ccode\u003e@noasync\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://swift-open-source.slack.com/archives/C9MMT6VGB/p1722432257179729\"\u003ehttps://swift-open-source.slack.com/archives/C9MMT6VGB/p1722432257179729\u003c/a\u003e for more context\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch2\u003eReviewers\u003c/h2\u003e\n\u003cp\u003eThanks to the reviewers for their help:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MahdiBM\"\u003e\u003ccode\u003e@​MahdiBM\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch6\u003e\u003cem\u003eThis patch was released by \u003ca href=\"https://github.com/0xTim\"\u003e\u003ccode\u003e@​0xTim\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/h6\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vapor/async-kit/compare/1.19.1...1.20.0\"\u003ehttps://github.com/vapor/async-kit/compare/1.19.1...1.20.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.19.1 - Fix typo in connection request error message\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eFix typo in connection request error message by \u003ca href=\"https://github.com/rausnitz\"\u003e\u003ccode\u003e@​rausnitz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/async-kit/issues/108\"\u003e#108\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eThere’s a parenthesis missing in the connection request error message.\u003c/p\u003e\n\u003cp\u003eThis fixes \u003ca href=\"https://redirect.github.com/vapor/async-kit/issues/107\"\u003evapor/async-kit#107\u003c/a\u003e.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch6\u003e\u003cem\u003eThis patch was released by \u003ca href=\"https://github.com/0xTim\"\u003e\u003ccode\u003e@​0xTim\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/h6\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vapor/async-kit/compare/1.19.0...1.19.1\"\u003ehttps://github.com/vapor/async-kit/compare/1.19.0...1.19.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/async-kit/commit/e048c8ee94967e8d8a1c2ec0e1156d6f7fa34d31\"\u003e\u003ccode\u003ee048c8e\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eshutdownAsync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/vapor/async-kit/issues/109\"\u003e#109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/async-kit/commit/15b3fb7b2437f9db11f6ddcf365c5b5db8c3a346\"\u003e\u003ccode\u003e15b3fb7\u003c/code\u003e\u003c/a\u003e Fix typo in connection request error message (\u003ca href=\"https://redirect.github.com/vapor/async-kit/issues/108\"\u003e#108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/async-kit/commit/bfcc9cb15b41b3138074196503e29ba5a3e4c6e9\"\u003e\u003ccode\u003ebfcc9cb\u003c/code\u003e\u003c/a\u003e Update README\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/async-kit/commit/22c9ed42d30b0a44df2aaf565f7892019e13a186\"\u003e\u003ccode\u003e22c9ed4\u003c/code\u003e\u003c/a\u003e [skip ci] Create dependabot.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/async-kit/commit/2cb0b79a69696db15401bdf4016e960562180ecf\"\u003e\u003ccode\u003e2cb0b79\u003c/code\u003e\u003c/a\u003e [skip ci] Workaround Github's broken image caching\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vapor/async-kit/compare/1.19.0...1.20.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/vapor/console-kit` from 4.14.3 to 4.15.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vapor/console-kit/releases\"\u003egithub.com/vapor/console-kit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.15.2 - Fix Android support\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eFix Android support by \u003ca href=\"https://github.com/marcprux\"\u003e\u003ccode\u003e@​marcprux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/console-kit/issues/207\"\u003e#207\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eThis PR adds the imports necessary to get Android compiling again.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch6\u003e\u003cem\u003eThis patch was released by \u003ca href=\"https://github.com/gwynne\"\u003e\u003ccode\u003e@​gwynne\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/h6\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vapor/console-kit/compare/4.15.1...4.15.2\"\u003ehttps://github.com/vapor/console-kit/compare/4.15.1...4.15.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e4.15.0 - Don't animate ActivityIndicator when outputting to a file\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eDon't animate ActivityIndicator when outputting to a file by \u003ca href=\"https://github.com/jflan-dd\"\u003e\u003ccode\u003e@​jflan-dd\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/console-kit/issues/202\"\u003e#202\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eLong running loading/progress indicators create a lot of noisy output when an executable is outputting to Xcode’s console, being captured to a file, or a piped to another command. e.g. \u003ca href=\"https://redirect.github.com/vapor/console-kit/issues/141\"\u003e#141\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis PR skips writing the animated output of an \u003ccode\u003eActivityIndicator\u003c/code\u003e if the console will not handle it well.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch6\u003e\u003cem\u003eThis patch was released by \u003ca href=\"https://github.com/0xTim\"\u003e\u003ccode\u003e@​0xTim\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/h6\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vapor/console-kit/compare/4.14.3...4.15.0\"\u003ehttps://github.com/vapor/console-kit/compare/4.14.3...4.15.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/console-kit/commit/742f624a998cba2a9e653d9b1e91ad3f3a5dff6b\"\u003e\u003ccode\u003e742f624\u003c/code\u003e\u003c/a\u003e Fix Android support (\u003ca href=\"https://redirect.github.com/vapor/console-kit/issues/207\"\u003e#207\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/console-kit/commit/966d89ae64cd71c652a1e981bc971de59d64f13d\"\u003e\u003ccode\u003e966d89a\u003c/code\u003e\u003c/a\u003e Fix Windows build break in Terminal. (\u003ca href=\"https://redirect.github.com/vapor/console-kit/issues/205\"\u003e#205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/console-kit/commit/a44d67133251fa8559303580f208b6b44a4cb922\"\u003e\u003ccode\u003ea44d671\u003c/code\u003e\u003c/a\u003e Add Windows unit tests to CI workflow. (\u003ca href=\"https://redirect.github.com/vapor/console-kit/issues/206\"\u003e#206\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/console-kit/commit/1490e7b0478313afae4de782b19c219bc66835c4\"\u003e\u003ccode\u003e1490e7b\u003c/code\u003e\u003c/a\u003e Fix DocC Links (\u003ca href=\"https://redirect.github.com/vapor/console-kit/issues/204\"\u003e#204\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/console-kit/commit/78c0dd739df8cb9ee14a8bbbf770facc4fc3402a\"\u003e\u003ccode\u003e78c0dd7\u003c/code\u003e\u003c/a\u003e Don't animate ActivityIndicator when outputting to a file (\u003ca href=\"https://redirect.github.com/vapor/console-kit/issues/202\"\u003e#202\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/console-kit/commit/479a6af06ec51f5019f786611edf01f7501b5328\"\u003e\u003ccode\u003e479a6af\u003c/code\u003e\u003c/a\u003e Try adding CI for MUSL (\u003ca href=\"https://redirect.github.com/vapor/console-kit/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vapor/console-kit/compare/4.14.3...4.15.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/vapor/routing-kit` from 4.9.1 to 4.9.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vapor/routing-kit/releases\"\u003egithub.com/vapor/routing-kit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.9.2 - General updates and cleanup\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eGeneral updates and cleanup by \u003ca href=\"https://github.com/gwynne\"\u003e\u003ccode\u003e@​gwynne\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/routing-kit/issues/131\"\u003e#131\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eThe usual - bump the minimum to 5.10, update the README, clean up the API docs, update the CI. Also converts the existing performance tests to use the \u003ccode\u003epackage-benchmarks\u003c/code\u003e tooling also used by JWTKit.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch2\u003eReviewers\u003c/h2\u003e\n\u003cp\u003eThanks to the reviewers for their help:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ptoffy\"\u003e\u003ccode\u003e@​ptoffy\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MahdiBM\"\u003e\u003ccode\u003e@​MahdiBM\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch6\u003e\u003cem\u003eThis patch was released by \u003ca href=\"https://github.com/gwynne\"\u003e\u003ccode\u003e@​gwynne\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/h6\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vapor/routing-kit/compare/4.9.1...4.9.2\"\u003ehttps://github.com/vapor/routing-kit/compare/4.9.1...4.9.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/routing-kit/commit/93f7222c8e195cbad39fafb5a0e4cc85a8def7ea\"\u003e\u003ccode\u003e93f7222\u003c/code\u003e\u003c/a\u003e General updates and cleanup (\u003ca href=\"https://redirect.github.com/vapor/routing-kit/issues/131\"\u003e#131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vapor/routing-kit/compare/4.9.1...4.9.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/vapor/websocket-kit` from 2.15.0 to 2.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vapor/websocket-kit/releases\"\u003egithub.com/vapor/websocket-kit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.16.0 - Deal with Sendable and clean up package in general\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eDeal with Sendable and clean up package in general by \u003ca href=\"https://github.com/gwynne\"\u003e\u003ccode\u003e@​gwynne\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/websocket-kit/issues/158\"\u003e#158\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eCovers fixing a bunch of \u003ccode\u003eSendable\u003c/code\u003e things and does the usual round of package cleanup - bump the Swift minimum to 5.10, update the CI and the README, and so forth. Also fixes up some issues in the tests.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch2\u003eReviewers\u003c/h2\u003e\n\u003cp\u003eThanks to the reviewers for their help:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MahdiBM\"\u003e\u003ccode\u003e@​MahdiBM\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch6\u003e\u003cem\u003eThis patch was released by \u003ca href=\"https://github.com/gwynne\"\u003e\u003ccode\u003e@​gwynne\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/h6\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vapor/websocket-kit/compare/2.15.0...2.16.0\"\u003ehttps://github.com/vapor/websocket-kit/compare/2.15.0...2.16.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/websocket-kit/commit/8666c92dbbb3c8eefc8008c9c8dcf50bfd302167\"\u003e\u003ccode\u003e8666c92\u003c/code\u003e\u003c/a\u003e Increase minimum required version of Swift-Nio to 2.78.0 (\u003ca href=\"https://redirect.github.com/vapor/websocket-kit/issues/159\"\u003e#159\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/websocket-kit/commit/014ccd52891b8c098d7e1033d5e72ed76fef7a86\"\u003e\u003ccode\u003e014ccd5\u003c/code\u003e\u003c/a\u003e Deal with Sendable and clean up package in general (\u003ca href=\"https://redirect.github.com/vapor/websocket-kit/issues/158\"\u003e#158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/websocket-kit/commit/b49c32141dd71469605856febce62811579c567c\"\u003e\u003ccode\u003eb49c321\u003c/code\u003e\u003c/a\u003e Update CI (\u003ca href=\"https://redirect.github.com/vapor/websocket-kit/issues/154\"\u003e#154\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vapor/websocket-kit/compare/2.15.0...2.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/vapor/multipart-kit` from 4.7.0 to 4.7.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vapor/multipart-kit/releases\"\u003egithub.com/vapor/multipart-kit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.7.1 - Exclude \u003ccode\u003edocc\u003c/code\u003e files from sources to avoid build warnings\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eExclude \u003ccode\u003edocc\u003c/code\u003e files from sources to avoid build warnings by \u003ca href=\"https://github.com/omochi\"\u003e\u003ccode\u003e@​omochi\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vapor/multipart-kit/issues/102\"\u003e#102\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eWhen using this package as a dependency, the following warning appears during the build process:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003ewarning: 'multipart-kit': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target\n    /Users/omochi/\u0026lt;myproject\u0026gt;/.build/checkouts/multipart-kit/Sources/MultipartKit/Docs.docc\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eThis happens because \u003ccode\u003edocc\u003c/code\u003e files are treated as undefined source files.\nThis patch explicitly excludes them using the exclude directive, clarifying that they are not source files and preventing the warning from being displayed.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch6\u003e\u003cem\u003eThis patch was released by \u003ca href=\"https://github.com/0xTim\"\u003e\u003ccode\u003e@​0xTim\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/h6\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vapor/multipart-kit/compare/4.7.0...4.7.1\"\u003ehttps://github.com/vapor/multipart-kit/compare/4.7.0...4.7.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vapor/multipart-kit/commit/3498e60218e6003894ff95192d756e238c01f44e\"\u003e\u003ccode\u003e3498e60\u003c/code\u003e\u003c/a\u003e Exclude \u003ccode\u003edocc\u003c/code\u003e files from sources to avoid build warnings (\u003ca href=\"https://redirect.github.com/vapor/multipart-kit/issues/102\"\u003e#102\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vapor/multipart-kit/compare/4.7.0...4.7.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/LoriMarshall/meteoweather/pull/2","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/LoriMarshall%2Fmeteoweather/issues/2","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2/packages"}}]}