为何firebase_core Flutter包pubspec的homepage字段被扣除pub.dev评分点
背景
我发现firebase_core 1.5.0的评分页面仅获得130分满分中的120分。该包因未遵循Dart文件规范被扣10分,在提供有效的pubspec.yaml板块下,扣分原因为“Homepage URL没有帮助”。
问题
其pubspec.yaml文件中具体是homepage URL的什么问题导致扣分(违反Dart文件规范)?从下方的文件内容可以看到description字段下的行有缩进,看似问题出在这里,但该缩进是对应提交记录中的有意设计。
该文件内容看起来是合法的Yaml格式,因此是否需要调整pub.dev上的pubspec.yaml分析器以适配多行内容条目?
pubspec.yaml内容
name: firebase_core description: Flutter plugin for Firebase Core, enabling connecting to multiple Firebase apps. homepage: https://firebase.flutter.dev/docs/core/usage repository: https://github.com/FirebaseExtended/flutterfire/tree/master/packages/firebase_core/firebase_core version: 1.5.0
问题解答
本次扣分和description的多行缩进没有任何关联,你列出的homepage链接本身格式完全符合规范,问题出在当时版本的pub.dev分析器逻辑缺陷:
- 旧版pub.dev的pubspec校验逻辑会简单判定homepage的域名必须和代码仓库的域名完全一致,而该版本firebase_core的homepage填的是官方文档域名,和代码仓库的GitHub域名不一致,就被误判为无帮助的无效链接。
- 该校验逻辑后续已经被官方修正,现在合法的文档类链接可以正常作为homepage字段值,不会再触发误判,更高版本的firebase_core也已经恢复了这部分的得分。
- 多行description的缩进是标准的YAML语法,目前pub.dev的分析器早已完整支持多行内容条目,不需要额外做适配调整。
内容的提问来源于stack exchange,提问作者aaronkelton
相关产品推荐
相关产品推荐

