我们已经很久没有发布关于 Swagger 最新进展的消息了,但现在提供一些更新还不算太晚!在过去的几个月里,我们致力于进行了一些改变,其中一些是技术性的,另一些则更偏向用户界面。在这篇文章中,我们将尝试涵盖这些更新中的一部分,不分重要性顺序。
通用发布
我们已经为我们的各种项目进行了多次发布,可能没有必要一一列举。但是,如果您不知道,我们所有的发布都附带发布说明,详细说明了改进、错误修复以及(尽管我们尽力避免)破坏性变更。
GitHub 中的每个项目都有一个“发布”部分,例如:https://github.com/swagger-api/swagger-ui/releases。
在那里您可以找到我们所有的说明和各种版本。另一种跟踪新发布的好方法是“关注”一个项目,并将其设置为“仅发布”。这样,您只会在发布时收到通知,而不会收到所有提交的问题和 PR。

值得关注的发布
尽管我们定期发布版本,但最近也发布了一些提供新功能的版本。所有新项目现在也都基于 OpenAPI 3.0!
我们已经正式发布了验证器徽章的第2版。虽然我们更改了项目的基础设施,但 API 保持不变,此外还增加了对 OpenAPI 3.0 的支持,在 Swagger/OpenAPI 2.0 的基础上。
为了反映这一变化,项目的 master 分支代表当前版本,而 v1 分支则保留了上一版本的副本。
托管版本更新: 截至目前,托管版本位于 https://online.swagger.io/validator。目前,此 URL 仍然有效并公开验证器的 v1 版本。新版本的验证器托管在 https://validator.swagger.io 下,最新版本的 Swagger UI 使用该 URL。我们强烈鼓励使用旧 URL 的用户切换到新 URL。在未来的某个时候,我们将重定向旧 URL 到新 URL,或将其关闭。

报告问题和提交贡献: 验证器徽章项目是一个封装了 Swagger Parser 的简单 Web 服务项目。如果您遇到 Web 服务问题(例如,API 未按预期工作),请在 https://github.com/swagger-api/validator-badge 提交问题。但是,如果您发现验证本身存在问题,请在 https://github.com/swagger-api/swagger-parser 提交。如果您不确定,请不要担心——您可以在任何您想提交的地方提交问题,如果需要,我们将进行转移。
转换器是一个比较新的项目。我们将其幕后运行了一段时间,现在终于将其作为开源项目发布。与验证器徽章非常相似,Swagger 转换器是一个封装了 Swagger Parser 的 Web 服务,能够将旧的定义文件转换为 OpenAPI 3。托管版本已在 https://converter.swagger.io 上线,您也可以自行构建和运行,或者使用 Docker 镜像。
报告问题和提交贡献: 如果您遇到 Web 服务问题(例如,API 未按预期工作),请在 https://github.com/swagger-api/swagger-converter 提交问题。但是,如果您发现转换本身存在问题,请在 https://github.com/swagger-api/swagger-parser 提交。同样,如果您不确定,只需在您想提交的地方提交问题,如果需要,我们将进行转移。
等等,什么?! 期待已久,Pet Store 的 OpenAPI 3 版本现已上线!
目前,您可以在 https://petstore3.swagger.io 找到它。将来,我们将用 v3 替换主站点 https://petstore.swagger.io,并将 v2 保留在单独的 URL 中。
Pet Store v3 目前只是将 v2 简单迁移到 OpenAPI 3。但是,目前我们尚未充分利用 OAS3 的所有功能。我们确实希望改变这一点,您也可以提供帮助!
与以前采用代码优先方法的 Pet Store 版本不同,新版本的 Pet Store 我们正在利用设计优先方法。这意味着即使您不熟悉代码本身,只要您了解 OpenAPI 3,就可以提交 PR 并帮助我们改进 Pet Store 本身。请记住,Pet Store 不一定旨在展示良好的 API 设计,更多是为了涵盖规范的不同功能。
另一个变化是,现在更容易找到 Pet Store 的源代码。只需访问 https://github.com/swagger-api/swagger-petstore。两个托管版本都在那里(v3 为 master 分支,v2 为 v2 分支)。
报告问题和提交贡献: 现在有了新的仓库,提交想法、修复和更改比以往任何时候都更容易。只需访问 https://github.com/swagger-api/swagger-petstore 即可开始。如果您只想对公开的 API 提出建议,只需向 https://github.com/swagger-api/swagger-petstore/blob/master/src/main/resources/openapi.yaml 提交 PR 即可,这就是设计优先方法的奇妙之处。
新贡献指南
开源项目的一大优势是能够根据您自己的需求进行贡献和改进。无论您是新手还是经验丰富的用户,您可能都会对最佳贡献方式有一些疑问。
我们重视您的时间,并感谢您的乐于助人。以下是一些帮助您入门的信息。请记住,开源贡献有多种形式,不仅仅是代码贡献。
在我们的贡献指南中,我们描述了不同的帮助方式,从回答问题到测试,再到进行代码更改。
对于那些不知道的人,当您在 GitHub 中开启一个新问题时,右侧面板底部会有一个(或多个)链接,指向项目维护者提供的常用资源。例如

您可以在此处找到贡献指南的源文件:https://github.com/swagger-api/.github/blob/master/CONTRIBUTING.md。
一如既往,我们欢迎反馈和贡献,请记住这是我们所有项目的通用指南。