SuperAPI AI 工具集

style-spec-parity

编程与开发

查看项目

更新于 10-16 00:05

技能介绍

用途:让 MapLibre Compose 的样式 API 与已发布的 MapLibre 样式规范保持一致。MapLibre GL JS 与 MapLibre Native 实现规范的进度不同,该工具用于在新增图层或数据源属性、或某平台已实现另一平台尚未实现的属性时进行对齐。

主要能力:mise run style-spec:parity 会读取固定版本 maplibre-style-spec 的 v8.json,并与所有写入图层或数据源的 Main 源集比较。--check 在以下情况失败:固定引擎已实现的图层类型、数据源类型或 paint/layout 属性在已实现它的引擎上缺失、以另一种类型写入、被无人调用的 setter 包裹,或 native 不支持表与固定支持不一致。

使用方式:

  • mise run style-spec:parity
  • mise run style-spec:parity -- --check
  • mise run style-spec:parity -- --spec /path/to/v8.json 验证命令:mise run style-spec:parity -- --check、mise run test:desktop、mise run test:js、mise run check。修改目录检查器时运行 mise run ci:test-scripts。

适用场景:新增两引擎都实现的属性、新增 native 缺失的属性、新增某引擎缺失的整个图层类型,以及维护样式根对象(light、sky、projection)。

限制:sdk-support 版本仅在不超过 pin 时计数;maplibre-js 与 maplibre-styleSpec 需一起升级;FFI pin 为日期戳;仅存在于更新 GL JS 的属性不在范围内;terrain 在 API 暴露前属于 omitted 集合;规范未列出的类型、API 不构造的类型及以别名写入的属性分别归入 extra、omitted、alias 集合。具体集合与目录内容需查阅 ci/style_spec_parity.py 与目录。