docs(module-versioning): version comparison trigger, duplicate module copies and /upm as of v6.3.0 - #106
Open
wisdommen wants to merge 3 commits into
Open
docs(module-versioning): version comparison trigger, duplicate module copies and /upm as of v6.3.0#106wisdommen wants to merge 3 commits into
wisdommen wants to merge 3 commits into
Conversation
…duplicate copies and /upm, as of v6.3.0 - UltiTools-Dev-Doc#96: hasNewerVersionLoaded and unregisterSupersededVersions are reached when code registers another instance of a loaded module's main class, not by two JARs on disk; both table rows, the mandatory-rule tip and the admission paragraph reworded (English and Chinese) - new section "Two copies of one module": file-name discovery order (UltiTools-Reborn#476), the one start-up warning naming every copy, /upm uninstall deleting every copy (UltiTools-Reborn#516) - new section "Updating and uninstalling on a server": /upm update staged and committed only after the next start observes the module loaded, rollback and failure lines, the version check, the cross-file-system refusal; /upm uninstall cancelling staged updates and deferring deletion (UltiTools-Reborn#505, #513, #518) - prose and inline code only, no new examples references; companion of UltiTools-Reborn#561 Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Deploying ultitools-dev-doc with
|
| Latest commit: |
ad39951
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://604668b2.ultitools-dev-doc.pages.dev |
| Branch Preview URL: | https://docs-p17-fu-module-files.ultitools-dev-doc.pages.dev |
… load first, as of v6.3.0 A JAR in the modules folder that declares the module's main: and sorts before the new JAR's name would keep supplying the classes, so every update would be rolled back; /upm update now stages nothing and names the copies. Prose only, English and Chinese. Companion of UltiTools-Reborn#561 (maintainer follow-up 19). Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…cord, else waits for the operator, as of v6.3.0 A changed or unexpected file among those an update moves or needs free makes it do nothing, keep its record on hold for the operator, and log each file with its expected and found hash; later starts repeat the line, /upm update and /upm uninstall refuse, and the operator resolves it by deleting the record and its folder. English and Chinese, prose only. Companion of UltiTools-Reborn#561. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Documentation companion of UltiKits/UltiTools-Reborn#561 (module files:
/upm updateby observation, deferred uninstall deletion, file-name discovery order, per-module JAR identity). This PR targetsalphadeliberately: it describes behaviour that lands in v6.3.0 and is not released yet;masteris the published branch.Changes to
guide/advanced/module-versioning.md, English and Chinese, prose and inline code only (no newexamples/references, no version bump):PluginManager.hasNewerVersionLoadedandunregisterSupersededVersionsnow name their real trigger, code callingPluginManager#register(...)with another instance of an already loaded main class. Two JARs of one module on disk never reach them. The mandatory-rule tip and the admission paragraph are reworded to match.main:and the JAR the classes load from, quoted verbatim from the framework'sen.json;/upm uninstalldeletes every JAR whoseplugin.ymlmain:names the module's main class (UltiTools-Reborn#516)./upm updaterefuses, before downloading anything, while another JAR declaring the module'smain:sorts before the new JAR's name, because that copy would keep supplying the classes and every update would roll back; the reply names the new JAR and every such copy, and the retry after removing them needs no restart./upm updatestages the download under.ultikits/upm-transactions/and the next start commits it only after observing the module loaded from the new JAR at the new version, otherwise rolls back; the version check on the download; failed moves and the cross-file-system refusal;/upm uninstallcancelling any staged update of the module and deferring a deletion it cannot do now (UltiTools-Reborn#505, #513, #518)./upm update//upm uninstallrefuse until the operator deletes the record and its folder (the foreign-file rule of UltiTools-Reborn#561).Checks
npm run build: success;check-rendered-links.sh --clean: 0 failures; in-page anchors of both built pages resolve.check-bilingual-parity.sh: OK (20 headings on each side);check-container-length.shon both pages: no violation.Issue closure
None. UltiTools-Dev-Doc#96 is closed by hand after this PR merges (the docs repository's default branch is
master, so a closing keyword intoalphawould not act).中文说明
UltiKits/UltiTools-Reborn#561 的文档配套 PR,有意以
alpha为目标分支(描述的是 v6.3.0 才发布的行为)。module-versioning.md中英两侧同步修改:更正hasNewerVersionLoaded的实际触发条件(#96);新增「同一模块的两个副本」(文件名顺序、启动警告、/upm uninstall删除所有副本;另有副本文件名排在新 JAR 之前时/upm update当场拒绝并列出副本)与「在服务器上更新和卸载」(/upm update暂存、下次启动观察到加载成功才保留、否则回滚;卸载取消暂存的更新并延迟删除;更新只处理哈希与记录一致的文件,否则暂停等待管理员处理)两节。#96 在合并后手动关闭。🤖 Generated with Claude Code