Repository navigation
Releases: YU322142/MCSync
Release list
MCSync 2.0.3
MCSync 2.0.3 发布说明 / Release Notes
发布日期 / Release date: 2026-08-26
中文
MCSync 2.0.3 是一次可靠性修复版。核心原则改为:云端或网络故障不能阻止玩家使用上一次完整可用的客户端;只有本地存在未能自动恢复的事务损坏时才阻止启动,避免继续写坏文件。
主要变更
-
云端故障放行
mods-v5.json、前置自更新入口、文件下载、平台来源或服务器列表临时失败时,保留当前客户端并正常进入游戏,下次启动自动重试。- 服务器列表同步独立于玩法 OTA;服务器列表故障不会推翻已经完成的核心更新。
- 下载、校验和暂存阶段失败不会修改正式文件。
-
中断恢复与本体更新加固
- 每次联网前先恢复未完成的本地发布事务,再检查新版本。
- BakaXL 的持久实例与运行副本会先全部预检下载和哈希,再开始任一目录提交,避免双目录半升级。
- 若自动回滚失败并留下
.modsync/RECOVERY_REQUIRED.txt,启动仍会被阻止,以免在已知损坏状态上继续运行。 - 前置自更新不再先生成第二个文件名。退出后只原子替换当前 MCSync JAR 的内容,完整 OTA 在下一次启动整理文件名,消除强杀时出现两个相同
modIdJAR 的崩溃窗口。
-
更快的平台匹配
- 移除发布阶段的 SHA-512 查询。Modrinth 使用 SHA-1 定位固定文件元数据,客户端仍以清单锁定的大小和 SHA-256 验收实际下载。
- CurseForge fingerprint/fileId 只用于锁定文件元数据;发布器不再为每个 Mod 重复下载完整 JAR。客户端最终 SHA-256 不符时拒绝该候选并保留旧客户端。
- 未变化文件继续复用本地哈希与平台证据缓存。
-
故障回归覆盖
- 新增 HTTP 500、无效 JSON、文件 503、下载失败、事务中断及人工恢复标记等故障测试。
- 构建流程新增真实启动冒烟测试:云端不可用必须进入游戏,本地回滚不完整必须阻止启动。
兼容说明
- 技术
modId仍为mcmodsync,schema-v5 和旧版升级入口保持不变。 - 2.0.3 可以读取现有 2.0.x 发布项目和清单,不要求重新设计云端目录。
- 云端故障放行不是跳过安全校验:任何下载仍必须匹配清单中的大小和 SHA-256;失败时使用旧文件,而不是安装未经确认的文件。
English
MCSync 2.0.3 is a reliability release. Its central rule is that cloud or network failures must not prevent players from using the last complete working client. Startup is blocked only when a local interrupted transaction cannot be recovered safely.
Highlights
-
Fail-open cloud handling
- Temporary failures of
mods-v5.json, the updater bootstrap, artifact downloads, platform sources, or the server-list endpoint preserve the current client and allow the game to start. MCSync retries on the next launch. - Server-list synchronization is isolated from gameplay OTA, so a server-list outage cannot invalidate an otherwise successful core update.
- Failures during download, verification, or staging do not modify live files.
- Temporary failures of
-
Interrupted-update recovery and safer self-update
- Pending local release transactions are recovered before any new network work begins.
- BakaXL persistent and runtime copies are fully prefetched and hash-checked before either copy is committed, preventing a half-updated pair.
- If automatic rollback fails and leaves
.modsync/RECOVERY_REQUIRED.txt, startup remains blocked to avoid operating on known-corrupt local state. - The bootstrap updater no longer creates a second updater filename first. After exit it atomically replaces the bytes of the current MCSync JAR; the next full OTA normalizes the filename. A hard kill therefore cannot leave two JARs with the same
modId.
-
Faster platform matching
- Removed publisher-side SHA-512 lookup. Modrinth now uses SHA-1 to locate pinned file metadata, while the client still accepts downloaded bytes only after manifest size and SHA-256 verification.
- CurseForge fingerprint/fileId is metadata location only. The publisher no longer redownloads every complete Mod JAR; a client-side SHA-256 mismatch rejects the candidate and preserves the old client.
- Unchanged files continue to reuse local hash and platform-evidence caches.
-
Fault-regression coverage
- Added coverage for HTTP 500, invalid JSON, artifact 503, download failures, interrupted transactions, and explicit recovery markers.
- The build now performs real startup smoke tests: cloud outages must reach the game, while incomplete local rollback must block startup.
Compatibility
- The technical
modIdremainsmcmodsync; schema-v5 and legacy upgrade entry points are unchanged. - 2.0.3 reads existing 2.0.x publisher projects and manifests without requiring a new cloud layout.
- Fail-open cloud handling does not bypass integrity verification. Every downloaded artifact must still match its manifest size and SHA-256; on failure MCSync uses the old file instead of installing unverified bytes.
MCSync 2.0.2
MCSync 2.0.2 发布说明 / Release Notes
发布日期 / Release date: 2026-08-25
中文
MCSync 2.0.2 是面向 OTA 稳定性和更新器自更新链路的兼容维护版。它保留 schema-v5 和技术 modId=mcmodsync,重点解决旧版更新器必须先完整理解新清单、导致自身无法更新的问题。
主要变更
-
独立前置自更新通道
- 稳定清单旁新增
mcsync-bootstrap-v1.json。 - 客户端先只验证 MCSync 自身的版本、发布序号、文件大小、SHA-256 和 JAR 身份。
- 有更新时只下载 MCSync,游戏退出后原子替换;下一次启动才处理完整玩法 OTA。
- 稳定清单旁新增
-
严格但可兼容的入口策略
- 前置清单尚未部署并返回 HTTP 404 时,旧客户端继续走兼容路径。
- 前置清单已经存在但格式、版本、大小、SHA-256 或下载失败时严格阻止,不自动绕过安全检查。
- 发布序号仍执行单调防降级和同序号分叉保护。
-
发布器自动生成
- 发布工作台从唯一的必需、本地托管
modId=mcmodsyncJAR 自动生成前置清单。 - MCSync 自身不依赖 Modrinth、CurseForge 或镜像站解析。
- 发布指南明确要求先上传内容对象和前置清单,最后替换
mods-v5.json稳定入口。
- 发布工作台从唯一的必需、本地托管
-
平台镜像回退修复
- 旧清单把 Modrinth 官方 CDN 地址标记为镜像时,客户端会回退到固定官方地址。
- 每个回退候选仍必须通过清单锁定的 SHA-256 和文件大小校验。
兼容说明
- 技术 Mod ID 仍为
mcmodsync,旧的 1.9.x/1.6.x 网关仍可识别。 modRemovals的最低兼容版本仍为 2.0.1;2.0.2 不改变既有 schema-v5 清单格式。- 旧客户端第一次跨越到独立前置通道时,仍需要一次可被旧版本读取的过桥更新;完成后后续更新不再依赖旧版完整清单解析能力。
English
MCSync 2.0.2 is a compatibility maintenance release focused on OTA reliability and updater self-update behavior. It preserves schema-v5 and the technical modId=mcmodsync, while removing the circular dependency that required an old updater to fully understand every future release before updating itself.
Highlights
-
Independent updater bootstrap lane
- Added
mcsync-bootstrap-v1.jsonbeside the stable manifest. - The client first verifies only the MCSync version, release sequence, file size, SHA-256, and JAR identity.
- When an update is needed, only MCSync is downloaded and atomically committed after exit; the full gameplay OTA runs on the next launch.
- Added
-
Strict but compatible endpoint policy
- An undeployed bootstrap endpoint returning HTTP 404 keeps the legacy compatibility path.
- Existing but malformed, divergent, size-invalid, hash-invalid, or failed bootstrap data blocks safely instead of bypassing verification.
- Release sequences still enforce monotonic anti-downgrade and same-sequence fork protection.
-
Automatic publisher generation
- The publisher derives the bootstrap from the single required, publisher-hosted
modId=mcmodsyncJAR. - MCSync itself never depends on Modrinth, CurseForge, or mirror resolution.
- Deployment guidance now uploads content objects and the bootstrap before atomically replacing
mods-v5.json.
- The publisher derives the bootstrap from the single required, publisher-hosted
-
Platform mirror fallback fix
- If an older manifest labels a Modrinth official CDN URL as a mirror, the client falls back to the exact pinned official URL.
- Every fallback candidate remains locked to the manifest size and SHA-256.
Compatibility
- The technical Mod ID remains
mcmodsync; legacy 1.9.x and 1.6.x gateways remain recognizable. - The
modRemovalsminimum compatibility version remains 2.0.1; 2.0.2 does not change schema-v5 semantics. - A legacy client still needs one readable bridge update to enter the independent bootstrap lane; after that, future updates no longer depend on old full-manifest parsing.
MCSync 2.0.0
MCSync 2.0.0
中文
- 云端托管改为 SHA-256 内容寻址:
objects/sha256/<前两位>/<完整哈希>,不再生成时间戳版本目录。 - 完整历史清单位于
manifests/<releaseId>.json;正式入口仍为channel/stable/mods-v5.json,并且必须最后替换。 - 新增重新全量发布模式:可沿用同哈希的平台验证证据,但会完整导出全部本地托管对象;后续 OTA 只需上传新哈希对象。
- 发布 GUI 可在完整发布中生成旧版网关,也可独立生成不触发全量扫描的 1.9.x、1.6.x/1.7.x 永久升级入口上传包,并附机器清单、SHA-256 清单和中英文说明。
- 发布序号继续按当前系统时间生成并承担防降级,不参与文件 URL。
- 修复 Iris、Indigo 和 PacketFixer 自写配置造成的反复重启。
- 发布 GUI、命令行发布器、中英文文档和 106 项回归测试已同步更新。
English
- Cloud hosting now uses SHA-256 content addressing at
objects/sha256/<first-two>/<full-hash>instead of timestamp-named release directories. - Complete historical manifests live at
manifests/<releaseId>.json; the stable entry remainschannel/stable/mods-v5.jsonand must be replaced last. - Added a fresh full-publication mode that may reuse exact-hash platform verification evidence while still exporting every locally hosted object. Later OTA releases only need newly introduced hashes.
- The publishing GUI can include legacy gateways in a complete publication or generate a standalone permanent 1.9.x and 1.6.x/1.7.x gateway upload package without a full rescan. The package includes a machine manifest, SHA-256 sums, and equivalent Chinese and English instructions.
- Release sequences are still generated from the current system time and enforce anti-downgrade rules, but no longer participate in payload URLs.
- Fixed restart loops caused by self-rewriting Iris, Indigo, and PacketFixer configuration files.
- The publishing GUI, command-line publisher, bilingual documentation, and all 106 regression tests have been updated together.
MCModSync 1.9.6
中文
MCModSync 1.9.6 正式版。
主要更新
- 修复 NeoForge/Linux 辅助进程的桌面同步窗口。
- 默认最多使用 8 个并行下载线程。
- Mod 或资源包下载失败时只重试失败任务,保留已经成功校验的文件。
- 在客户端 mods 目录永久保留经过验证的 mods-v4.txt 云端清单副本。
- 加宽独立清单发布器和必须/推荐清单编辑器。
- 默认启用继续编辑上次清单,并自动匹配 mods/mods-v4.txt。
- 继续编辑旧清单时生成新的当前时间 catalog-version。
- 提供中英文界面与日志,以及 Fabric/NeoForge 1.21.1 元数据。
SHA256:9171B0FEC763AFAA03014EAA657430387411D659B28347516DED8E46482373AE
English
MCModSync 1.9.6 stable release.
Highlights
- Fixes desktop synchronization dialogs for NeoForge/Linux helper processes.
- Uses up to 8 parallel download threads by default.
- Retries only failed Mod or resource-pack tasks while retaining successfully validated downloads.
- Keeps a validated cloud catalog copy at mods/mods-v4.txt.
- Widens the standalone catalog publisher and required/recommended catalog editor.
- Enables previous-catalog continuation by default and automatically matches mods/mods-v4.txt.
- Generates a fresh timestamp-based catalog-version when continuing an earlier catalog.
- Includes bilingual UI/logging and Fabric/NeoForge 1.21.1 metadata.
SHA256: 9171B0FEC763AFAA03014EAA657430387411D659B28347516DED8E46482373AE