mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2025-02-17 03:20:02 +00:00
Fix problems with $tw.utils.checkVersions()
Previous changes since 5.1.7 broke the documented semantics by no longer returning true when the versions match. It affected the upgrade process, making it impossible to upgrade to a later pre-release (ie where the version numbers in the upgrade.html match those in the file being upgraded). Also reviewed and updated the calls to checkVersions. @felixhayashi I think that this effectively reverts the change you original submitted. Are you OK with it?
This commit is contained in:
parent
ddac13317e
commit
e386e26b2d
@ -375,7 +375,7 @@ $tw.utils.checkVersions = function(versionStringA,versionStringB) {
|
||||
];
|
||||
return (diff[0] > 0) ||
|
||||
(diff[0] === 0 && diff[1] > 0) ||
|
||||
(diff[0] === 0 && diff[1] === 0 && diff[2] > 0);
|
||||
(diff[0] === 0 && diff[1] === 0 && diff[2] >= 0);
|
||||
};
|
||||
|
||||
/*
|
||||
@ -1750,7 +1750,7 @@ $tw.boot.startup = function(options) {
|
||||
// Read package info
|
||||
$tw.packageInfo = require("../package.json");
|
||||
// Check node version number
|
||||
if($tw.utils.checkVersions($tw.packageInfo.engines.node.substr(2),process.version.substr(1))) {
|
||||
if(!$tw.utils.checkVersions(process.version.substr(1),$tw.packageInfo.engines.node.substr(2))) {
|
||||
$tw.utils.error("TiddlyWiki5 requires node.js version " + $tw.packageInfo.engines.node);
|
||||
}
|
||||
}
|
||||
|
@ -40,14 +40,12 @@ exports.upgrade = function(wiki,titles,tiddlers) {
|
||||
var incomingTiddler = tiddlers[title];
|
||||
// Check if we're dealing with a plugin
|
||||
if(incomingTiddler && incomingTiddler["plugin-type"] && incomingTiddler.version) {
|
||||
// Upgrade the incoming plugin if we've got a newer version in the upgrade library
|
||||
// Upgrade the incoming plugin if it is in the upgrade library
|
||||
var libraryTiddler = getLibraryTiddler(title);
|
||||
if(libraryTiddler && libraryTiddler["plugin-type"] && libraryTiddler.version) {
|
||||
if($tw.utils.checkVersions(libraryTiddler.version,incomingTiddler.version)) {
|
||||
tiddlers[title] = libraryTiddler;
|
||||
messages[title] = $tw.language.getString("Import/Upgrader/Plugins/Upgraded",{variables: {incoming: incomingTiddler.version, upgraded: libraryTiddler.version}});
|
||||
return;
|
||||
}
|
||||
tiddlers[title] = libraryTiddler;
|
||||
messages[title] = $tw.language.getString("Import/Upgrader/Plugins/Upgraded",{variables: {incoming: incomingTiddler.version, upgraded: libraryTiddler.version}});
|
||||
return;
|
||||
}
|
||||
// Suppress the incoming plugin if it is older than the currently installed one
|
||||
var existingTiddler = wiki.getTiddler(title);
|
||||
|
@ -211,7 +211,7 @@ exports.importTiddler = function(tiddler) {
|
||||
// Check if we're dealing with a plugin
|
||||
if(tiddler && tiddler.hasField("plugin-type") && tiddler.hasField("version") && existingTiddler && existingTiddler.hasField("plugin-type") && existingTiddler.hasField("version")) {
|
||||
// Reject the incoming plugin if it is older
|
||||
if($tw.utils.checkVersions(existingTiddler.fields.version,tiddler.fields.version)) {
|
||||
if(!$tw.utils.checkVersions(tiddler.fields.version,existingTiddler.fields.version)) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user