Repository navigation
Conversation
…0.0.6) mirthsync 3.8.0 sorts collections Mirth stores in no fixed order (code template context types, library/alert channel ID sets, the configuration map, etc.) on pull, so repeated pulls produce stable diffs. It is on by default; --no-sort-unordered keeps the server's order. Bump the dependency to 3.8.0 in the server and client modules (its dependency list is identical to 3.7.0, so the runtime whitelist still covers the closure) and the plugin to 0.0.6 in all four POMs. Settings panel gains "Sort unordered collections" (property key sortUnordered), checked by default and mirrored through preset defaults, the preset serialization key list, snapshot/restore, and properties load/save. Settings and presets saved before this key existed have no value for it (or the blank value preset serialization writes for a missing key), so those read as true. Only the opt-out is passed to mirthsync: --no-sort-unordered when unchecked, nothing when checked. Users will see a one-time commit that only reorders elements on their first pull after upgrading.
mirthsync 3.8.1 fixes a quadratic orphan check on pull and makes a failed --deploy-all exit nonzero. Its dependency list is unchanged from 3.8.0, so the runtime whitelist still covers it. The plugin version stays 0.0.6. README: the one-time reorder commit only appears on a pull with "Force overwrite" checked, because mirthsync does not overwrite existing files on a pull without --force.
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.
What
server/pom.xmlstill covers it.sortUnordered, stored as"true"/"false"). It is checked by default and included in presets, snapshot/restore and properties load/save. Settings and presets saved before this change have no value for the key, so they read as checked. Unchecking it adds--no-sort-unordered. Checking it adds nothing, because sorting is already mirthsync's default.Why
On pull, mirthsync 3.8.0 and later sort collections that Mirth stores in no fixed order (code template context types, library/alert channel IDs, configuration map, etc.), so repeated pulls give stable diffs. After upgrading, the first pull with "Force overwrite" checked produces a one-time commit that only reorders elements. A pull without it doesn't overwrite existing files, because the plugin passes
--forceonly when that box is checked.mirthsync 3.8.1 (released 2026-10-21) adds a linear-time orphan check on pull (it was quadratic in the channel count) and makes a failed
--deploy-allexit nonzero.Testing
./build.shsucceeds.com.saga-it:mirthsync:3.8.1resolves from Clojars, andlibs/mirthsync-3.8.1.jaris bundled and listed inplugin.xml(pluginVersion0.0.6). No 3.8.0 jar is bundled.mirthsync.core.mainFuncdirectly on the server module's Maven classpath, plus httpmime, which Mirth provides at runtime.--versionreturns3.8.1with exit 0, and-hlists--[no-]sort-unordered.--no-sort-unorderedgot past option parsing and failed only on the connection, as expected with no server.