| Vapor | |
|---|---|
| 開発者 | Tanner Nelson 他 |
| 初回リリース | 2016年1月18日[ 1 ] [ 2 ] (2016年1月18日) |
| 安定版リリース | 4.102.1 [ 3 ] / 2024年7月10日 ( 2024-07-10 ) |
| 言語 | Swift |
| オペレーティングシステム | macOS、Ubuntu |
| プラットフォーム | SwiftNIO |
| タイプ | ウェブフレームワーク |
| ライセンス | MITライセンス |
| ウェブサイト | vapor.codes |
VaporはSwiftで記述され、Swift開発用に設計されたオープンソースのウェブフレームワークです。WebSocketを使用したRESTful API、ウェブアプリ、リアルタイムアプリケーションの作成に使用できます。コアフレームワークに加えて、VaporはORM、テンプレート言語、およびユーザー認証と認可を容易にするパッケージを提供します。[ 4 ]
VaporのソースコードはGitHubでホストされており、MITライセンスの下でライセンスされています。[ 5 ] Vaporは2016年からSwiftのサーバーAPIワーキンググループに参加しています。[ 6 ] [ 7 ]
歴史
Vapor 0.1.0は、 AppleがSwiftをオープンソース化し、 2015年12月3日にLinuxプラットフォームのサポートを開始してから1か月後に、サーバー上のSwiftの概念実証としてリリースされました。[ 8 ] Vapor 1.0 [ 9 ]は2016年9月に登場し、続いて2017年5月にVapor 2.0がリリースされました。[ 10 ]
このフレームワークはVapor 3.0 [ 11 ]用に書き直され、AppleのノンブロッキングネットワークフレームワークSwiftNIO上に構築されました。Vapor 3は2018年5月にリリースされました。AppleはSwift.orgのメインサーバーページで、Vapor(とKitura)が新しいSwiftNIOフレームワークを採用したスピードについて言及しました。[ 12 ]
Vapor 3のベータ期間中、Packt [ 13 ] [ 14 ] [ 15 ] Paul Hudson [ 16 ] Razeware LLC [ 17 ]およびlynda.com [ 18 ]によって教育資料が公開されました。VaporはSwift.orgによって公式Swiftフォーラムとして認められ、2018年5月に関連プロジェクトの最初のグループに加わりました[ 19 ]。
Vapor 4 [ 20 ]のアルファ1リリースは2019年5月に開始され、安定版は2020年4月にリリースされました。[ 21 ]
リリース
| バージョン | リリース日 | Swiftバージョン |
|---|---|---|
| サポート対象外:1.0 | 2016年9月15日 | ≥ 3.0 |
| サポート対象外:2.0 | 2017年5月17日 | 3.1以上 |
| サポート対象外:3.0 | 2018年5月4日 | 4.1以上 |
| 最新バージョン:4.0 | 2020年4月9日 | ≥ 5.2 |
| 将来のバージョン:5.0 | 未定 | ≥ 未定 |
出典:Vapor Docs & GitHub Releases. [ 22 ] [ 23 ]
Swiftバージョンのサポート
Vapor 4は、Swiftの最新の3つのマイナーバージョンをサポートしています。2023年10月27日現在、これにはSwift 5.7、Swift 5.8、Swift 5.9が含まれます
これはSwift Server Workgroup [ 24 ]が定めた基準を満たしており、Vaporもそのメンバーである[ 25 ]
機能
Vaporは以下の機能をサポートしています: [ 26 ]
- 非同期/非ブロッキングIO
- 認証: 基本認証、ベアラー認証、JWT 認証、パスワード認証
- キャッシュ: Redisとメモリ内
- コマンド / コンソールのフォーマット
- コンテンツネゴシエーション: JSON、マルチパート、URLエンコード形式
- 暗号化: RNG、暗号、ダイジェスト、RSA
- 依存性注入/制御の反転[ 27 ]
- 流暢なORM: MySQL、[ 28 ] PostgreSQL、MongoDB、SQLite
- HTTPクライアントとサーバー
- リーフテンプレート: HTMLなど
- ログ記録
- URLルーティング
- 検証
- WebSocketクライアントとサーバー
- キュージョブ
参考文献
- ^ 「Vapor 0.1.0 リリース」 . GitHub . 2016年1月25日. 2018年4月3日閲覧
- ^ 「サーバーサイドSwiftフレームワークの比較」 。 2018年5月24日閲覧。
- ^ 「Vapor 4.102.1 リリース」 . GitHub . 2023年7月10日. 2024年7月23日閲覧。
- ^ 「Vapor GitHub Organization」 . GitHub . 2018年4月3日閲覧。
- ^ "vapor/vapor LICENSE at master" . GitHub . 2018年2月23日. 2018年4月3日閲覧。
- ^ “Swift Server APIs” . 2016年10月25日. 2021年5月10日時点のオリジナルよりアーカイブ。2018年5月22日閲覧。
- ^ 「Swift Blog: Server APIs Work Group」 . 2016年10月25日. 2018年5月22日閲覧。
- ^ 「Swiftはオープンソースです」 2015年12月3日。 2018年4月3日閲覧。
- ^ 「Vapor 1.0.0 リリース」 . GitHub . 2016年9月15日. 2018年4月3日閲覧。
- ^ 「Vapor 2.0.0 リリース」 . GitHub . 2018年5月17日. 2018年4月3日閲覧。
- ^ 「Vapor 3.0.0 リリース」 2018年5月4日. 2018年5月23日閲覧。
- ^ Inc., Apple. 「Swift.org」 . Swift.org . 2018年10月4日閲覧。
{{cite web}}:|last=一般的な名前があります(ヘルプ) - ^ Patel, Ankur (2018-03-30). 『Swiftによるフルスタック開発実践』 . Packt Publishing. ISBN 978-1788625241。
- ^ Yeung, Angus (2018). 『Swiftによる実践的なサーバーサイドWeb開発:2つの人気のSwift Webフレームワーク、Vapor 3.0とKitura 2.5を活用して動的なWebアプリを構築する』 Packt Publishing Ltd. ISBN 97817893458652019年12月16日閲覧
- ^ Kuepper, Ralph (2020-03-12). 『Hands-On Swift 5 Microservice Development』 . Packt Publishing. ISBN 978-1789530889。
- ^ハドソン、ポール (2018年3月1日).サーバーサイドSwift (Vapor版).
- ^ Condon, Tim; et al. Server Side Swift with Vapor . Razeware LLC.
- ^ 「VaporでサーバーサイドSwiftを学ぶ」 。 2021年5月9日時点のオリジナルよりアーカイブ。2018年5月22日閲覧。
- ^ 「Swiftフォーラムへの関連プロジェクトの紹介」 2018年5月10日。
- ^ VAPOR (2019年5月28日). 「Vapor 4: Alpha 1リリース開始」 . Medium . 2019年9月9日閲覧。
- ^ “Release Vapor 4.0.0 · vapor/vapor” . GitHub . 2021年2月15日閲覧。
- ^ 「GitHub: vapor/vapor リリース」 . GitHub . 2021年2月15日閲覧。
- ^ 「Vapor Docs: Support」 . Vapor. 2018年5月23日時点のオリジナルよりアーカイブ。2018年5月4日閲覧。
- ^ 「Swift Server Workgoup」。
- ^ 「Swift Server ワークグループのメンバー」。
- ^ “Vapor Docs” . docs.vapor.codes . 2021年7月22日時点のオリジナルよりアーカイブ。2018年5月22日閲覧。
- ^エリオット、キース (2016年10月6日). Swift 3 の新機能. Packt Publishing. ISBN 978-1786462718。
- ^フセイン、シャイスタ他 (2018年3月12日). 2018年第6回国際バイオインフォマティクスおよび計算生物学会議議事録. 計算機協会. ISBN 978-1-4503-6348-8。