UIGF-org / UIGF-org.github.io

UIGF Documents site
https://uigf.org
MIT License
26 stars 21 forks source link

Introducing UIGF v4.0 #70

Closed Lightczx closed 3 months ago

netlify[bot] commented 4 months ago

Deploy Preview for uigf ready!

Name Link
Latest commit c9ad921e25d20f833db054bb51dc3bb2da47b74c
Latest deploy log https://app.netlify.com/sites/uigf/deploys/669313812f83d30008b18a52
Deploy Preview https://deploy-preview-70--uigf.netlify.app
Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

Lighthouse
1 paths audited
Performance: 89 (🟢 up 2 from production)
Accessibility: 96 (no change from production)
Best Practices: 92 (no change from production)
SEO: 92 (no change from production)
PWA: -
View the detailed breakdown and full score reports

To edit notification comments on pull requests, go to your Netlify site configuration.

ShikiSuen commented 4 months ago

这个 UIGFv4 Schema 拿到 https://app.quicktype.io 当作 Schema 转换的时候,网页根本没反应。不知道是 quickType 网站的问题、还是这个 Schema 的问题。

看来得自己手动实作了。

ShikiSuen commented 4 months ago

string|integer 这种 type 二义性对部分 type-safe 语言非常不友好。 (放到 Swift 就是超出三倍的实作成本。) 如果 UIGFv4 还有商讨的余地的话,建议将所有用到 stringed integers 的栏位都强制要求 string。 integer 的话可能会被某些刻意制造的 json 攻击(手段是写入数值过大的 integer value)。

cc @Scighost

image
ShikiSuen commented 4 months ago

@TremblingMoeNew 不然改称 HIGF(Hoyoverse Interchangeable GachaLog Format)?

============

备注:DismissedLight 否决了这个提案。

Lightczx commented 4 months ago

边栏需重新分类;UIGF v4.0应单独分为一类;由于中断性更新问题,UIGF v3.0和SRGF v1.0应当继续保留在边栏中

建议添加专门的UIGF v4.0更新说明日志文档,提醒与协助开发者进行新旧版本的兼容

@Masterain98 cc

Masterain98 commented 4 months ago

image @UIGF-org/uigf-update-audience @Lightczx @TremblingMoeNew Looks good?

Lightczx commented 4 months ago

LGTM

Masterain98 commented 4 months ago

https://github.com/UIGF-org/UIGF-org.github.io/blob/c5db1b0530584f1db47c0b7c6681130404d23c98/docs/zh/standards/uigf.md?plain=1#L153-L163

关于 Json Schema 的问题:

  1. API 返回 是否应该强调为米哈游 API 返回
  2. time 的解释是否应该强调为服务器时间?可能会产生歧义,并且可能与API 返回相悖

If you believe in changing to "server time", please react with 👍; If you believe in keeping the "local time" description, please react with 👎.

Masterain98 commented 4 months ago

image

@UIGF-org/uigf-constitutors 是否应该强调语言代码的格式?(图来源 SRGF v1.0)

Scighost commented 4 months ago

string|integer 这种 type 二义性对部分 type-safe 语言非常不友好。 (放到 Swift 就是超出三倍的实作成本。) 如果 UIGFv4 还有商讨的余地的话,建议将所有用到 stringed integers 的栏位都强制要求 string。 integer 的话可能会被某些刻意制造的 json 攻击(手段是写入数值过大的 integer value)。

cc @Scighost image

可以呀,改成 string, integer, string|integer 我都没意见

Lightczx commented 4 months ago

可以呀,改成 string, integer, string|integer 我都没意见

已经定成 oneof string integer了

ShikiSuen commented 4 months ago

已经定成 oneof string integer了

可。实测 QuickType 能够正常解析该 Schema。没有疑虑了。

BTMuli commented 4 months ago

本标准起码得等到绝区零下个版本,卡池经过一次迭代后才会合并,在此之前不会有较为巨大的变动。

各位开发者可以着手实现相关功能,但是务必注明标准还在制定当中或者添加对应tag(beta or dev),以免后期可能出现的 breaking change。

@UIGF-org/uigf-update-audience @UIGF-org/uigf-constitutors @UIGF-org/srgf-update-audience @UIGF-org/srgf-constitutors

earthjasonlin commented 4 months ago

希望能完善timezone相关的文档表述,还有list里面time的;API的这个region_time_zone好像国服是0,那是什么意思呢;应该转化成什么呢;我看DismissedLight大佬的UIGF导出后不管哪个服timezone都是0

Lightczx commented 4 months ago

希望能完善timezone相关的文档表述,还有list里面time的;API的这个region_time_zone好像国服是0,那是什么意思呢;应该转化成什么呢;我看DismissedLight大佬的UIGF导出后不管哪个服timezone都是0

API返回: time:LocalTime + region_time_zone: LocalTimeZone UIGF 4 在选定任一时区后: time: LocalTime + timezone: LocalTimeZone

例如:你在 2024.07.23 10:00:00+08:00 在国服抽取了一个物品 那么在你从服务器获取到记录时由于国服处于东八区: time: 2024.07.23 10:00:00 region_time_zone: 8 此时如果你选择 UTC+0 作为基准时区,则导出时: time: 2024.07.23 02:00:00 timezone: 0 选择其他时区均会得出类似结果,导出时允许选择任意时区 同样导入时也必须能够处理任意时区下的记录