v5.13 发布说明
欢迎使用 gatsby@5.13.0 版本(2023 年 12 月 #1)
本次发布的主要亮点
另请参阅 值得关注的错误修复。
前沿:想尽快尝试新功能?安装 gatsby@next 并告诉我们您遇到的任何 问题。
自定义图片和文件 CDN URL 生成器
gatsby@4.10.0 为 Gatsby 用户引入了 Image CDN 功能。为了获得最佳构建性能,它需要在部署的站点上处理图片转换,而不是在构建时处理。到目前为止,处理这些请求需要支持 Gatsby 生成的特定 URL 格式。在此版本中,我们引入了对自定义 URL 生成器的支持,允许您使用自己的 URL 格式。这使得与提供 Image CDN 功能的现有站点部署平台集成,或者通过生成 CDN 所期望的格式的 URL 来使用自管理的 Image CDN 更加容易。
Adapter API 现在提供为 Image CDN (gatsbyImage) 和 File CDN (publicUrl) 提供自定义 URL 生成器模块的能力。gatsby-adapter-netlify@1.1.0 可选地使用此功能来利用 Netlify 的 Image CDN。请务必查看 Netlify Adapter 文档,以获取有关如何启用和配置它的更多信息。
Image and File CDN 现在使用远程 URL 作为源文件。建议仅允许使用某些远程 URL 以防止滥用。此版本还引入了一种方式,供支持 Image and File CDN 的源插件使用新添加的 addRemoteFileAllowedUrl 操作来声明允许的远程 URL 列表。Adapters 将收到一个允许的 URL 列表,以自动配置或指导用户如何配置其部署以允许这些远程 URL。
最新版本的 Gatsby 插件 - gatsby-source-contentful (v8.13.0)、gatsby-source-drupal (v6.13.0) 和 gatsby-source-wordpress (v7.13.0) - 现在包含一个新操作来指定允许的远程 URL。此外,gatsby-adapter-netlify (v1.1.0) 利用此更新来帮助配置 Netlify 的 Image CDN。它确保允许这些远程 URL,并在您的 netlify.toml 文件需要调整以支持这些 URL 时提供信息性消息。
如果您有兴趣在您的 adapter 中使用自定义 URL 生成器,请查看 gatsby-adapter-netlify 的源代码以获取参考实现
值得关注的错误修复和改进
gatsby:- 通过 PR #38453 禁用自动生成的 GraphQL 类型的 prettier 格式化
- 修复 Windows 上的 API 函数编译问题,通过 PR #38489
- 修复 DSG/SSR 函数挂载在只读目录中的分段错误,通过 PR #38631
- 检测 LMDB 预编译二进制文件是否未使用,并尝试在 SSR/DSG 引擎中使用预编译二进制文件,以避免在函数环境与从源构建的二进制文件不兼容时出现运行时问题,通过 PR #38691
- 将
headerRoutes添加到 Adapters API,以便能够使用一组规则来设置标头,而不是单独设置每个路径的标头,通过 PR #38644 - 在 Adapter 的 Route Manifest 中处理带前缀的路径,通过 PR #38666
gatsby-adapter-netlify:gatsby-source-contentful:- 多个使用
sharp(图片处理库)的包- 通过升级
sharp的使用版本来解决安全漏洞,通过 PR #38374
- 通过升级
贡献者
非常感谢 为本次发布做出贡献的社区成员 💜
- 0o001:fix: GatsbyNodeAPI 类型 PR #38461
- CountryTk:feat(gatsby-plugin-google-tagmanager): 添加自托管路径选项 PR #38731
- Hrishikesh-K:chore: 添加缓存处理日志记录 PR #38654
- axe312ger:fix: contentful delta 更新 PR #38468
- cunhacf:fix(gatsby): 支持 gatsbyImage placeholderUrl 中同名变量的多个实例 PR #38626
- derrysucari:fix(gatsby): 禁用 graphql 类型生成的 prettier 格式化 PR #38453
- dhayab:chore(docs): 更新 algolia 指南 PR #38458
- holtzy:docs: 修复一个微小的拼写错误(1个字母) PR #38463
- joshuajames:chore(docs): 更新 README.md PR #38495
- jouni:docs: 更新
npm-cache目录位置 PR #38373 - kaltepeter:chore(docs): 修复 graphql-typegen 文档中损坏的 eslint 文档链接 PR #38367
- laurenskling:docs: 更新 node-model.js 以使用新的 sort 语法 PR #38515
- lovell:chore(deps): 将 sharp 升级到最新的 v0.32.6 PR #38374
- palmiak:docs: 更改了其中一项服务的名称 PR #38650
- stephan1echung