Skip to content

仓库杂项/1.20支持 TODO List #3367

@dovisutu

Description

@dovisutu

相比于#2821 而言,这次的时间应该没那么紧张。但是先列出来吧。
其中有一些可能不是马上就需要的,但是也先列出来吧。

目前,1.20工具链已经完成,且理论上已经开始分发了。余下的大多是些远期规划。

  • 确定1.20(或更高版本)的支持计划
    • 目前确定为1.20与1.20-fabric分开支持
  • 建立1.20的预备分支,在工作完成后合并 -- dovisutu:1.20-preps 基于3288的分支,在合并后会手动rebase

文件结构/工作流程

  • 正确书写文件层级,以及Packer的配置文件
  • Github Actions 相关内容
    • 优化结构: - 预备分支中 未测试
      • 采用matrix,减少配置的复制粘贴
      • 用缓存减少构造次数
        • Uploader似乎会生成一大堆dll,光搬个exe跑不了......在解决这个问题前,只有每次上传都构造一次了。
        • Packer倒只有两个文件,没多大问题。
      • pr-packer只打包更改模组(需要Packer支持)
        也可以缩短传artifact的时长
    • 分发相关:Packer、PR-Packer - 预备分支中
    • 校验相关:Labeler、Path-Checker(可能可以合并)
      • 路径校验在Bot和Packer中分别集成了一份,应该可以避免无效资源包流出。
      • 标签工作有部分集成到了CFPABot,但有的仍需修改Action。
  • bot支持
  • i18n模组版本支持
  • (远期)可以考虑重新开始爬取模组,前提是准备高效的办法统揽翻译工作(现在这种手工做法显然不行)

Packer TODO

dovisutu:packer-rework

  • Applied Energistics 2 1.20 指南翻译提交 #3669 更好地选取无语言标记的文件
  • 支持传参模组表,仅选取这些模组打包
  • oωo 翻译提交 #3527 打包器支持非平铺的语言文件(至少不要崩溃) - 啊c#好像没有Union...
  • 集成在打包器中的路径校验,对无效路径现场抛异常,防止资源包崩溃
  • 打包器部分流程会重复执行,现有代码不够健壮,导致处理非文本文件时会崩溃。
  • 检索部分重写:真正地使用Linq
  • 检索逻辑独立成库,以便其他工具链检索语言文件(如cfpaBot、各种统计工具)

分发流程

这里与1.20没有直接关系,但是也是最近要做的。

  • 增量更新
    • 自动向服务器上传差异文件 - Uploader;ETA未知
    • 服务端提供API(?)
  • 按需打包(部分打包)
    • 确认用于判断现有模组的方案:modid,或是其他潜在的方案
      • 如果使用modid,信息区分度是否足以判定需要哪组资源?
    • 确认时序:这种资源包在哪一步打?
      • 个人的意见是直接在第一步(Packer)生成,因为这里有完整的模组标识符->命名空间表
    • 实现部分
      • Packer:需要支持指定模组(见Packer ToDo);模组表为“模组标识符”
      • (未知组件)维护modid->标识符的映射
      • i18nmod:合适地读取modid表

资源包

文档相关

合理的TODO列表

  • 确定合适的实现方式(projects?但是Github Mobile看不到)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    Status

    进行中

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions