1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2026-01-24 11:54:41 +00:00

Compare commits

...

31 Commits

Author SHA1 Message Date
Jeremy Ruston
0c333d8d2e Merge branch 'master' into offload-server-components 2025-09-12 15:17:56 +01:00
Jeremy Ruston
ffb0a2fde2 Merge branch 'tiddlywiki-com' 2025-09-12 15:15:58 +01:00
Jeremy Ruston
c5a80a1984 [v5.4.0] New release note architecture (#9287)
* Initial Commit

* Move the old release notes out of the way

* A self-referential change note

* Fix procedure name

* Rationalise link badges in old release notes

Some of them were hardly used, and getting rid of them makes it easier to see what badges we need in the new system

* Update 5.4.0 and 5.3.8 to use the new format
2025-09-12 15:13:07 +01:00
Jeremy Ruston
948c040554 Revert "Move old-style release notes out of the way"
This reverts commit ee16e48a43.
2025-09-11 16:23:11 +01:00
Jeremy Ruston
5f104f129f Revert "Move the 5.4.0 release note into the right place"
This reverts commit 3f5c2bfba3.
2025-09-11 16:23:01 +01:00
Jeremy Ruston
98f850609d Merge branch 'master' into offload-server-components 2025-09-11 13:13:28 +01:00
Jeremy Ruston
3592a0be67 Merge branch 'tiddlywiki-com' 2025-09-09 21:15:51 +01:00
Jeremy Ruston
3f5c2bfba3 Move the 5.4.0 release note into the right place 2025-09-08 16:42:12 +01:00
Jeremy Ruston
ee16e48a43 Move old-style release notes out of the way 2025-09-08 16:30:07 +01:00
Jeremy Ruston
a989079201 Merge branch 'master' into offload-server-components 2025-09-04 17:19:48 +01:00
Jeremy Ruston
3c45c17b45 Merge branch 'tiddlywiki-com' 2025-09-02 18:02:33 +01:00
Jeremy Ruston
1a81f8ee06 Merge branch 'tiddlywiki-com' 2025-09-01 16:54:26 +01:00
Jeremy Ruston
ae970fde02 Merge branch 'tiddlywiki-com' 2025-09-01 12:13:46 +01:00
Jeremy Ruston
e38d7960a9 Merge branch 'tiddlywiki-com' 2025-09-01 10:44:05 +01:00
Jeremy Ruston
2246ffdc05 Merge branch 'tiddlywiki-com' 2025-08-29 12:09:23 +01:00
Jeremy Ruston
dba34f3323 Merge branch 'tiddlywiki-com' 2025-08-26 17:50:30 +01:00
Jeremy Ruston
617394ff08 Merge branch 'tiddlywiki-com' 2025-08-21 11:32:36 +01:00
Jeremy Ruston
373eec45cd Add final batch of survey responses 2025-08-19 10:40:18 +01:00
Jeremy Ruston
38462d4464 Merge branch 'tiddlywiki-com' 2025-08-07 19:16:55 +01:00
Jeremy Ruston
b2656c82dd Preparing for v5.4.0 2025-08-07 09:33:55 +01:00
Jeremy Ruston
12934caaa8 Move filesystem utilities into core-server 2025-08-05 16:16:51 +01:00
Jeremy Ruston
f70e1b8a46 Fix test failure 2025-07-26 21:23:58 +01:00
Jeremy Ruston
52ee685572 Reapply "Extend server-only mechanism to be usable by other plugins"
This reverts commit c6c83bc18b.
2025-07-26 21:12:17 +01:00
Jeremy Ruston
c684f885ce Revert "in"
This reverts commit b80213128f.
2025-07-26 21:11:45 +01:00
Jeremy Ruston
c6c83bc18b Revert "Extend server-only mechanism to be usable by other plugins"
This reverts commit 3faf503073.
2025-07-26 21:09:49 +01:00
Jeremy Ruston
b80213128f in 2025-07-26 21:09:42 +01:00
Jeremy Ruston
3faf503073 Extend server-only mechanism to be usable by other plugins 2025-07-26 15:12:24 +01:00
Jeremy Ruston
2ea6153a74 Fix crash in browser 2025-07-25 09:38:32 +01:00
Jeremy Ruston
1752eba1e8 Missed commander.js 2025-07-25 09:33:48 +01:00
Jeremy Ruston
98dc094593 Package server files as new $:/core-server plugin 2025-07-25 09:15:34 +01:00
Jeremy Ruston
fc4190bb25 Move Node.js specific files out of the core plugin 2025-07-24 14:49:37 +01:00
134 changed files with 370 additions and 96 deletions

View File

@@ -5,7 +5,7 @@
# Default to the current version number for building the plugin library
if [ -z "$TW5_BUILD_VERSION" ]; then
TW5_BUILD_VERSION=v5.3.8
TW5_BUILD_VERSION=v5.4.0
fi
echo "Using TW5_BUILD_VERSION as [$TW5_BUILD_VERSION]"

View File

@@ -1433,7 +1433,7 @@ $tw.Wiki = function(options) {
checkTiddler = function(tiddler,title) {
if(tiddler && tiddler.fields.type === "application/json" && tiddler.fields["plugin-type"] && (!pluginType || tiddler.fields["plugin-type"] === pluginType)) {
var disablingTiddler = self.getTiddler("$:/config/Plugins/Disabled/" + title);
if(title === "$:/core" || !disablingTiddler || (disablingTiddler.fields.text || "").trim() !== "yes") {
if(title === "$:/core" || title === "$:/core-server" || !disablingTiddler || (disablingTiddler.fields.text || "").trim() !== "yes") {
self.unregisterPluginTiddlers(null,[title]); // Unregister the plugin if it's already registered
pluginTiddlers.push(tiddler);
registeredTitles.push(tiddler.fields.title);
@@ -2350,6 +2350,7 @@ $tw.loadTiddlersNode = function() {
});
// Load the core tiddlers
$tw.wiki.addTiddler($tw.loadPluginFolder($tw.boot.corePath));
$tw.wiki.addTiddler($tw.loadPluginFolder($tw.boot.coreServerPath));
// Load any extra plugins
$tw.utils.each($tw.boot.extraPlugins,function(name) {
if(name.charAt(0) === "+") { // Relative path to plugin
@@ -2423,6 +2424,7 @@ $tw.boot.initStartup = function(options) {
// System paths and filenames
$tw.boot.bootPath = options.bootPath || path.dirname(module.filename);
$tw.boot.corePath = path.resolve($tw.boot.bootPath,"../core");
$tw.boot.coreServerPath = path.resolve($tw.boot.bootPath,"../core-server");
// If there's no arguments then default to `--help`
if($tw.boot.argv.length === 0) {
$tw.boot.argv = ["--help"];

View File

@@ -76,6 +76,7 @@ WikiFolderMaker.prototype.tiddlersToIgnore = [
"$:/boot/boot.js",
"$:/boot/bootprefix.js",
"$:/core",
"$:/core-server",
"$:/library/sjcl.js",
"$:/temp/info-plugin"
];

11
core-server/plugin.info Normal file
View File

@@ -0,0 +1,11 @@
{
"title": "$:/core-server",
"name": "Core Server Components",
"description": "TiddlyWiki5 core server components",
"author": "JeremyRuston",
"core-version": ">=5.0.0",
"platform": "server",
"plugin-priority": "0",
"list": "readme",
"stability": "STABILITY_2_STABLE"
}

6
core-server/readme.tid Normal file
View File

@@ -0,0 +1,6 @@
title: $:/core-server/readme
This plugin contains TiddlyWiki's core components that are only needed on the server, comprising:
* Commands
* HTTP server code

View File

@@ -31,5 +31,7 @@ exports.startup = function() {
$tw.modules.applyMethods("tiddlerdeserializer",$tw.Wiki.tiddlerDeserializerModules);
$tw.macros = $tw.modules.getModulesByTypeAsHashmap("macro");
$tw.wiki.initParsers();
$tw.Commander.initCommands();
if($tw.node) {
$tw.Commander.initCommands();
}
};

View File

@@ -3,7 +3,7 @@ title: $:/core/save/all-external-js
\whitespace trim
\import [subfilter{$:/core/config/GlobalImportFilter}]
\define saveTiddlerFilter()
[is[tiddler]] -[prefix[$:/state/popup/]] -[prefix[$:/temp/]] -[prefix[$:/HistoryList]] -[status[pending]plugin-type[import]] -[[$:/core]] -[[$:/boot/boot.css]] -[is[system]type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]] $(publishFilter)$
[is[tiddler]] -[prefix[$:/state/popup/]] -[prefix[$:/temp/]] -[prefix[$:/HistoryList]] -[status[pending]plugin-type[import]] -[[$:/core]] -[[$:/boot/boot.css]] -[is[system]type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] -[has[plugin-type]field:platform[server]] +[sort[title]] $(publishFilter)$
\end
<!-- Important: core library is provided by serving URI encoded $:/core/templates/tiddlywiki5.js -->

View File

@@ -3,7 +3,7 @@ title: $:/core/save/offline-external-js
\whitespace trim
\import [subfilter{$:/core/config/GlobalImportFilter}]
\define saveTiddlerFilter()
[is[tiddler]] -[prefix[$:/state/popup/]] -[prefix[$:/temp/]] -[prefix[$:/HistoryList]] -[status[pending]plugin-type[import]] -[[$:/core]] -[[$:/plugins/tiddlywiki/filesystem]] -[[$:/plugins/tiddlywiki/tiddlyweb]] -[[$:/boot/boot.css]] -[is[system]type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]] $(publishFilter)$
[is[tiddler]] -[prefix[$:/state/popup/]] -[prefix[$:/temp/]] -[prefix[$:/HistoryList]] -[status[pending]plugin-type[import]] -[[$:/core]] -[[$:/plugins/tiddlywiki/filesystem]] -[[$:/plugins/tiddlywiki/tiddlyweb]] -[[$:/boot/boot.css]] -[is[system]type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] -[has[plugin-type]field:platform[server]] +[sort[title]] $(publishFilter)$
\end
\define defaultCoreURL() tiddlywikicore-$(version)$.js
<$let coreURL={{{ [[coreURL]is[variable]then<coreURL>else<defaultCoreURL>] }}}>

View File

@@ -2,6 +2,6 @@ title: $:/core/save/all
\import [subfilter{$:/core/config/GlobalImportFilter}]
\define saveTiddlerFilter()
[is[tiddler]] -[prefix[$:/state/popup/]] -[prefix[$:/temp/]] -[prefix[$:/HistoryList]] -[status[pending]plugin-type[import]] -[[$:/boot/boot.css]] -[is[system]type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]] $(publishFilter)$
[is[tiddler]] -[prefix[$:/state/popup/]] -[prefix[$:/temp/]] -[prefix[$:/HistoryList]] -[status[pending]plugin-type[import]] -[[$:/boot/boot.css]] -[is[system]type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] -[has[plugin-type]field:platform[server]] +[sort[title]] $(publishFilter)$
\end
{{$:/core/templates/tiddlywiki5.html}}

View File

@@ -1,6 +1,6 @@
title: $:/core/save/empty
\define saveTiddlerFilter()
[is[system]] -[prefix[$:/state/popup/]] -[[$:/boot/boot.css]] -[is[system]type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]]
[is[system]] -[prefix[$:/state/popup/]] -[[$:/boot/boot.css]] -[is[system]type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] -[has[plugin-type]field:platform[server]] +[sort[title]]
\end
{{$:/core/templates/tiddlywiki5.html}}

View File

@@ -1,7 +1,7 @@
title: $:/core/save/lazy-all
\define saveTiddlerFilter()
[is[system]] -[prefix[$:/state/popup/]] -[[$:/HistoryList]] -[[$:/boot/boot.css]] -[is[system]type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] [is[tiddler]type[application/javascript]] +[sort[title]]
[is[system]] -[prefix[$:/state/popup/]] -[[$:/HistoryList]] -[[$:/boot/boot.css]] -[is[system]type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] -[has[plugin-type]field:platform[server]] [is[tiddler]type[application/javascript]] +[sort[title]]
\end
\define skinnySaveTiddlerFilter()
[!is[system]] -[type[application/javascript]]

View File

@@ -1,7 +1,7 @@
title: $:/core/save/lazy-images
\define saveTiddlerFilter()
[is[tiddler]] -[prefix[$:/state/popup/]] -[[$:/HistoryList]] -[[$:/boot/boot.css]] -[is[system]type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] -[!is[system]is[image]] +[sort[title]]
[is[tiddler]] -[prefix[$:/state/popup/]] -[[$:/HistoryList]] -[[$:/boot/boot.css]] -[is[system]type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] -[has[plugin-type]field:platform[server]] -[!is[system]is[image]] +[sort[title]]
\end
\define skinnySaveTiddlerFilter()
[!is[system]is[image]]

View File

@@ -1,6 +1,6 @@
title: $:/config/OfficialPluginLibrary
tags: $:/tags/PluginLibrary
url: https://tiddlywiki.com/library/v5.3.8/index.html
url: https://tiddlywiki.com/library/v5.4.0/index.html
caption: {{$:/language/OfficialPluginLibrary}}
{{$:/language/OfficialPluginLibrary/Hint}}

View File

@@ -4,7 +4,7 @@ title: $:/editions/de-AT-DE/download-empty
type: text/vnd.tiddlywiki
\define saveTiddlerFilter()
[[$:/core]] [[$:/isEncrypted]] [[$:/themes/tiddlywiki/snowwhite]] [[$:/themes/tiddlywiki/vanilla]] [[$:/languages/de-DE]] [[$:/languages/de-AT]] [[$:/language]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]]
[[$:/core]] [[$:/isEncrypted]] [[$:/themes/tiddlywiki/snowwhite]] [[$:/themes/tiddlywiki/vanilla]] [[$:/languages/de-DE]] [[$:/languages/de-AT]] [[$:/language]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] -[has[plugin-type]field:platform[server]] +[sort[title]]
\end
\define savingEmpty()
yes

View File

@@ -2,7 +2,7 @@ title: $:/editions/es-ES/download-empty
type: text/vnd.tiddlywiki
\define saveTiddlerFilter()
[[$:/core]] [[$:/isEncrypted]] [[$:/themes/tiddlywiki/snowwhite]] [[$:/themes/tiddlywiki/vanilla]] [[$:/languages/es-ES]] [[$:/language]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]]
[[$:/core]] [[$:/isEncrypted]] [[$:/themes/tiddlywiki/snowwhite]] [[$:/themes/tiddlywiki/vanilla]] [[$:/languages/es-ES]] [[$:/language]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] -[has[plugin-type]field:platform[server]] +[sort[title]]
\end
\define savingEmpty()
yes

View File

@@ -2,7 +2,7 @@ title: $:/editions/fr-FR/download-empty
type: text/vnd.tiddlywiki
\define saveTiddlerFilter()
[[$:/core]] [[$:/isEncrypted]] [[$:/themes/tiddlywiki/snowwhite]] [[$:/themes/tiddlywiki/vanilla]] [[$:/languages/fr-FR]] [[$:/language]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]]
[[$:/core]] [[$:/isEncrypted]] [[$:/themes/tiddlywiki/snowwhite]] [[$:/themes/tiddlywiki/vanilla]] [[$:/languages/fr-FR]] [[$:/language]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] -[has[plugin-type]field:platform[server]] +[sort[title]]
\end
\define savingEmpty()
yes

View File

@@ -2,7 +2,7 @@ title: $:/editions/ja-JP/download-empty
type: text/vnd.tiddlywiki
\define saveTiddlerFilter()
[[$:/core]] [[$:/isEncrypted]] [[$:/themes/tiddlywiki/snowwhite]] [[$:/themes/tiddlywiki/vanilla]] [[$:/languages/ja-JP]] [[$:/language]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]]
[[$:/core]] [[$:/isEncrypted]] [[$:/themes/tiddlywiki/snowwhite]] [[$:/themes/tiddlywiki/vanilla]] [[$:/languages/ja-JP]] [[$:/language]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] -[has[plugin-type]field:platform[server]] +[sort[title]]
\end
\define savingEmpty()
yes

View File

@@ -2,7 +2,7 @@ title: $:/editions/ko-KR/download-empty
type: text/vnd.tiddlywiki
\define saveTiddlerFilter()
[[$:/core]] [[$:/isEncrypted]] [[$:/themes/tiddlywiki/snowwhite]] [[$:/themes/tiddlywiki/vanilla]] [[$:/languages/ko-KR]] [[$:/language]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]]
[[$:/core]] [[$:/isEncrypted]] [[$:/themes/tiddlywiki/snowwhite]] [[$:/themes/tiddlywiki/vanilla]] [[$:/languages/ko-KR]] [[$:/language]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] -[has[plugin-type]field:platform[server]] +[sort[title]]
\end
\define savingEmpty()
yes

View File

@@ -1,6 +1,6 @@
title: $:/config/LocalPluginLibrary
tags: $:/tags/PluginLibrary
url: http://127.0.0.1:8080/prerelease/library/v5.3.7/index.html
url: http://127.0.0.1:8080/prerelease/library/v5.4.0/index.html
caption: {{$:/language/OfficialPluginLibrary}} (Prerelease Local)
A locally installed version of the official ~TiddlyWiki plugin library at tiddlywiki.com for testing and debugging. //Requires a local web server to share the library//

View File

@@ -1,6 +1,6 @@
title: $:/config/OfficialPluginLibrary
tags: $:/tags/PluginLibrary
url: https://tiddlywiki.com/prerelease/library/v5.3.8/index.html
url: https://tiddlywiki.com/prerelease/library/v5.4.0/index.html
caption: {{$:/language/OfficialPluginLibrary}} (Prerelease)
The prerelease version of the official ~TiddlyWiki plugin library at tiddlywiki.com. Plugins, themes and language packs are maintained by the core team.

View File

@@ -2,7 +2,7 @@ title: $:/editions/tw5.com/download-empty
code-body: yes
\define saveTiddlerFilter()
[[$:/core]] [[$:/isEncrypted]] [[$:/themes/tiddlywiki/snowwhite]] [[$:/themes/tiddlywiki/vanilla]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] [[$:/config/OfficialPluginLibrary]] +[sort[title]]
[[$:/core]] [[$:/isEncrypted]] [[$:/themes/tiddlywiki/snowwhite]] [[$:/themes/tiddlywiki/vanilla]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] -[has[plugin-type]field:platform[server]] [[$:/config/OfficialPluginLibrary]] +[sort[title]]
\end
\define savingEmpty()
yes

View File

@@ -1137,7 +1137,7 @@ Tests the filtering mechanism.
// No such tiddlers. Nothing to return.
expect(wiki.filterTiddlers("[[nonexistent]moduleproperty[name]]").length).toBe(0);
// Non string properties should get toStringed.
expect(wiki.filterTiddlers("[[$:/core/modules/commands/init.js]moduleproperty[info]]").join(" ")).toBe('{"name":"init","synchronous":true}');
expect(wiki.filterTiddlers("[[$:/core/modules/startup.js]moduleproperty[synchronous]]").join(" ")).toBe('true');
});
it("should minimize unnecessary variable lookup", function() {

View File

@@ -197,17 +197,11 @@ This is an example tiddler. See [[Table-of-Contents Macros (Examples)]].
<!-- TODO use $:/palette colour settings -->
\procedure .link-badge-added(link,colour:#ffe246) <$macrocall $name=".link-badge" text="added" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-addendum(link,colour:#fcc84a) <$macrocall $name=".link-badge" text="addendum" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-extended(link,colour:#f9a344) <$macrocall $name=".link-badge" text="extended" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-fixed(link,colour:#ffa86d) <$macrocall $name=".link-badge" text="fixed" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-here(link,colour:#d88e63) <$macrocall $name=".link-badge" text="here" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-hide(link,colour:#9d959f) <$macrocall $name=".link-badge" text="hide" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-improved(link,colour:#7593c7) <$macrocall $name=".link-badge" text="improved" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-modified(link,colour:#7f99c9) <$macrocall $name=".link-badge" text="modified" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-removed(link,colour:#a9aabc) <$macrocall $name=".link-badge" text="removed" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-renamed(link,colour:#b4b995) <$macrocall $name=".link-badge" text="renamed" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-updated(link,colour:#91ba66) <$macrocall $name=".link-badge" text="updated" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-reverted(link,colour:#ba8e66) <$macrocall $name=".link-badge" text="reverted" link=<<link>> colour=<<colour>>/>
\procedure .banner-credits(credit,url)
<img src=<<url>> width="140" style="float:left;margin-right:0.5em;"/>

View File

@@ -254,6 +254,12 @@ a.doc-deprecated-version.tc-tiddlylink {
text-decoration: underline;
}
.doc-changenote-body {
margin-left: 2em;
font-style: italic;
font-size: 0.9em;
}
.doc-tiddler-fields {
background-color: <<colour code-background>>;
border: 1px solid <<colour tiddler-border>>;
@@ -283,6 +289,7 @@ a.doc-deprecated-version.tc-tiddlylink {
list-style: none;
display: flex;
flex-wrap: wrap;
padding: 0;
}
ol.doc-github-contributors li {
display: flex;

Binary file not shown.

Before

Width:  |  Height:  |  Size: 121 KiB

After

Width:  |  Height:  |  Size: 91 KiB

View File

@@ -19,4 +19,5 @@ Plugins are stored as tiddlers with the following fields:
|text |JSON encoding of the list of tiddlers comprising the plugin |
|title |Title of plugin |
|type |Must be ''application/json'' |
|version |//(optional)// Version string (should conform to [ext[SemanticVersioning|http://semver.org/]] convention) |
|version |//(optional)// Version string (should conform to [ext[SemanticVersioning|http://semver.org/]] convention) |
|platform |<<.from-version 5.4.0>> //(optional)// Set this field to ''node'' to restrict the plugin to only be loaded on the server (this is accomplished by suppressing such plugins from the various save templates) |

View File

@@ -0,0 +1,8 @@
title: $:/changenotes/5.3.8/#9133
description: Update Chinese translation
release: 5.3.8
tags: $:/tags/ChangeNote
change-type: enhancement
change-category: translation
link: https://github.com/TiddlyWiki/TiddlyWiki5/pull/9133
github-contributors: BramChen

View File

@@ -0,0 +1,8 @@
title: $:/changenotes/5.3.8/#9166
description: Fixed name field of fa-IR language plugin
release: 5.3.8
tags: $:/tags/ChangeNote
change-type: bugfix
change-category: translation
link: https://github.com/TiddlyWiki/TiddlyWiki5/issue/9166
github-contributors: Leilei332

View File

@@ -0,0 +1,8 @@
title: $:/changenotes/5.3.8/#9175
description: Fixed Flexoki palette regressions
release: 5.3.8
tags: $:/tags/ChangeNote
change-type: bugfix
change-category: palette
link: https://github.com/TiddlyWiki/TiddlyWiki5/pull/9175
github-contributors: Leilei332

View File

@@ -0,0 +1,8 @@
title: $:/changenotes/5.3.8/#9184
description: Update Polish translation
release: 5.3.8
tags: $:/tags/ChangeNote
change-type: enhancement
change-category: translation
link: https://github.com/TiddlyWiki/TiddlyWiki5/pull/9184
github-contributors: EvidentlyCube

View File

@@ -0,0 +1,8 @@
title: $:/changenotes/5.3.8/#9185
description: Fixed [[Highlight Plugin]] theme listing
release: 5.3.8
tags: $:/tags/ChangeNote
change-type: bugfix
change-category: plugin
link: https://github.com/TiddlyWiki/TiddlyWiki5/pull/9185
github-contributors: Leilei332

View File

@@ -0,0 +1,10 @@
title: $:/changenotes/5.3.8/32caeb69c3e7b75a80a84a1e14363e87175b164e
description: Revert breakage of [[list-tagged-draggable Macro]]
release: 5.3.8
tags: $:/tags/ChangeNote
change-type: bugfix
change-category: hackability
link: https://github.com/TiddlyWiki/TiddlyWiki5/commit/32caeb69c3e7b75a80a84a1e14363e87175b164e
github-contributors: Jermolene
Reverted the [[change in v5.3.7|https://github.com/TiddlyWiki/TiddlyWiki5/pull/8721]] that broke the [[list-tagged-draggable Macro]]. The change involved updating some core macros to use procedures

View File

@@ -0,0 +1,8 @@
title: $:/changenotes/5.3.8/75502266176de9d4a5e1f89cd7f2e455b7a2f6da
description: Update Greek translation
release: 5.3.8
tags: $:/tags/ChangeNote
change-type: enhancement
change-category: translation
link: https://github.com/TiddlyWiki/TiddlyWiki5/commit/75502266176de9d4a5e1f89cd7f2e455b7a2f6da
github-contributors: superuser-does

View File

@@ -0,0 +1,8 @@
title: $:/changenotes/5.3.8/93d30f374da4a6b2037b335f7f7d4eddce8192db
description: Fixed display of field names longer than the available width in the info panel
release: 5.3.8
tags: $:/tags/ChangeNote
change-type: bugfix
change-category: usability
link: https://github.com/TiddlyWiki/TiddlyWiki5/commit/93d30f374da4a6b2037b335f7f7d4eddce8192db
github-contributors: Jermolene

View File

@@ -0,0 +1,10 @@
title: $:/changenotes/5.4.0/#9183
description: Offload server-only components to a plugin
release: 5.4.0
tags: $:/tags/ChangeNote
change-type: pluginisation
change-category: internal
link: https://github.com/TiddlyWiki/TiddlyWiki5/pull/9183
github-contributors: Jermolene
This change reduces the size of the core plugin by 114.5KB or about 4.5%.

View File

@@ -0,0 +1,10 @@
title: $:/changenotes/5.4.0/#9287
description: Split release notes into individual change notes
release: 5.4.0
tags: $:/tags/ChangeNote
change-type: enhancement
change-category: internal
link: https://github.com/TiddlyWiki/TiddlyWiki5/pull/9287
github-contributors: Jermolene
Doing so enables us to filter and group changes. For example, we could show all the breaking changes between two releases.

View File

@@ -0,0 +1,13 @@
caption: 5.4.0
created: 20250901000000000
modified: 20250901000000000
tags: ReleaseNotes
title: Release 5.4.0
type: text/vnd.tiddlywiki
description: Under development
\define release-introduction()
Release v5.4.0 includes major improvements in a number of areas. See the [[project plan|https://github.com/orgs/TiddlyWiki/projects/4]] for more details.
\end release-introduction
<<releasenote 5.4.0>>

View File

@@ -1,43 +0,0 @@
caption: 5.3.8
created: 20250807084952911
description: Bugfix release for 5.3.7
modified: 20250807100514203
released: 20250807084952911
tags: ReleaseNotes
title: Release 5.3.8
type: text/vnd.tiddlywiki
//[[See GitHub for detailed change history of this release|https://github.com/TiddlyWiki/TiddlyWiki5/compare/v5.3.7...master]]//
<<.banner-credits
credit:"""Congratulations to [[Christian Byron|https://talk.tiddlywiki.org/u/Christian_Byron]] for their winning design for the banner for this release (here is the [[discussion|https://talk.tiddlywiki.org/t/planning-a-v5-3-8-bug-fix-release/12963]]).
"""
url:"https://raw.githubusercontent.com/TiddlyWiki/TiddlyWiki5/e8a7bbf14e078d83ab6ba55a80cb8d9ba5290303/editions/tw5.com/tiddlers/images/New%20Release%20Banner.png"
>>
This is a bug fix release for TiddlyWiki [[Release 5.3.7]] that fixes problems introduced in that release.
! Translation improvements
* Chinese
* Polish
* Greek
! Bug Fixes
* <<.link-badge-reverted "https://github.com/TiddlyWiki/TiddlyWiki5/commit/32caeb69c3e7b75a80a84a1e14363e87175b164e">> the [[change in v5.3.7|https://github.com/TiddlyWiki/TiddlyWiki5/pull/8721]] that broke the [[list-tagged-draggable Macro]]. The change involved updating some core macros to use procedures
* <<.link-badge-fixed "https://github.com/TiddlyWiki/TiddlyWiki5/commit/93d30f374da4a6b2037b335f7f7d4eddce8192db">> display of field names longer than the available width in the info panel
* <<.link-badge-fixed "https://github.com/TiddlyWiki/TiddlyWiki5/pull/9185">> [[Highlight Plugin]] theme listing
* <<.link-badge-fixed "https://github.com/TiddlyWiki/TiddlyWiki5/pull/9175">> Flexoki palette regressions
* <<.link-badge-fixed "https://github.com/TiddlyWiki/TiddlyWiki5/issues/9166">> name field of fa-IR language plugin
! Acknowledgements
[[@Jermolene|https://github.com/Jermolene]] would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki:
<<.contributors """
CeeBeeTree
EvidentlyCube
Leilei332
pmario
""">>

View File

@@ -0,0 +1,38 @@
title: Release Notes and Changes
! Release Notes
! Change Notes
* `title` by convention titles are formed `$:/changenotes/<version>/<unique identifier>`. The unique identifier is typically a GitHub PR or issue like `#1234` or a GitHub commit ID such as `98f850609d29bc36ded83f90c0d5be231649254b`
* `tags` must include `$:/tags/ChangeNote`, see below for other valid tags
* `change-type` the type of change as a single string; see below for values
* `change-category` the category of the change; see below for vqalues
Other valid tags for change notes:
* `$:/tags/ChangeNote/Deprecation`
* `$:/tags/ChangeNote/Breaking`
Valid change note types are as follows:
* ''bugfix''
* ''feature''
* ''enhancement''
* ''deprecation''
* ''security''
* ''pluginisation''
Valid change categories are as follows:
* ''internal''
* ''translation''
* ''plugin''
* ''widget''
* ''filters''
* ''usability''
* ''palette''
* ''hackability''
* ''nodejs''
* ''performance''
* ''developer''

View File

@@ -0,0 +1,25 @@
title: $:/tw5.com/releases/info/
category-order: translation plugin usability palette hackability widget filters performance nodejs internal developer
categories/internal/caption: Internal
categories/translation/caption: Translation
categories/plugin/caption: Plugin
categories/widget/caption: Widget
categories/usability/caption: Usability
categories/palette/caption: Palette
categories/hackability/caption: Hackability
categories/nodejs/caption: Node.js
categories/performance/caption: Performance
categories/developer/caption: Developer
change-types/bugfix/caption: BUGFIX
change-types/bugfix/colour: #ffe246
change-types/feature/caption: FEATURE
change-types/feature/colour: #91ba66
change-types/enhancement/caption: ENHANCEMENT
change-types/enhancement/colour: #cba5ff
change-types/deprecation/caption: DEPRECATION
change-types/deprecation/colour: #ff9d6c
change-types/security/caption: SECURITY
change-types/security/colour: #ff6666
change-types/pluginisation/caption: PLUGINISATION
change-types/pluginisation/colour: #aaaaaa

View File

@@ -0,0 +1,115 @@
title: $:/tw5.com/releases/procedures
tags: $:/tags/Global
\procedure github-changes-link()
<a
class="tc-tiddlylink-external"
href=`https://github.com/TiddlyWiki/TiddlyWiki5/compare/v${ [all[tiddlers]tag[ReleaseNotes]has[released]!sort[released]] :filter[get[released]compare:number:lt<releaseTiddlerCreated>] +[get[caption]] }$...${ [<releaseTiddler>has[released]get[caption]addprefix[v]] :else[[master]] }$`
rel="noopener noreferrer"
target="_blank"
>
See ~GitHub for detailed change history of this release
</a>
\end github-changes-link
\procedure banner-credits()
<%if [<banner-credit-user-name>!match[]] %>
<img src=<<banner-credit-permalink>> width="140" style="float:left;margin-right:0.5em;"/>
Congratulations to
<a
class="tc-tiddlylink-external"
href=<<banner-credit-user-link>>
rel="noopener noreferrer"
target="_blank"
><$text text=<<banner-credit-user-name>>/></a>
for their winning design for the banner for this release (here is the
<a
class="tc-tiddlylink-external"
href=<<banner-credit-discussion-link>>
rel="noopener noreferrer"
target="_blank"
>discussion</a>).
<div style="clear:both;"/>
<%endif%>
\end banner-credits
\procedure change-list()
\whitespace trim
<$list filter="[enlist{$:/tw5.com/releases/info/category-order}]" variable="category">
<%if [tag[$:/tags/ChangeNote]] :filter[{!!release}match<release>] :filter[{!!change-category}match<category>] %>
<h2>
<$text text={{{ [[$:/tw5.com/releases/info/categories/]addsuffix<category>addsuffix[/caption]get[text]] }}} />
</h2>
<ul>
<$list filter="[tag[$:/tags/ChangeNote]] :filter[{!!release}match<release>] :filter[{!!change-category}match<category>]" variable="change">
<li>
<a
href={{{ [<change>get[link]] }}}
class="doc-link-badge"
target="_blank"
rel="noopener noreferrer"
style.backgroundColor={{{ [<change>get[change-type]addprefix[$:/tw5.com/releases/info/change-types/]addsuffix[/colour]get[text]] }}}
>
<$text text={{{ [<change>get[change-type]addprefix[$:/tw5.com/releases/info/change-types/]addsuffix[/caption]get[text]] }}}/>
</a>
<$text text=" "/>
<$transclude $tiddler=<<change>> $field="description" $mode="inline"/>
<div class="doc-changenote-body">
<$transclude $tiddler=<<change>> $mode="block"/>
</div>
</li>
</$list>
</ul>
<%endif%>
</$list>
\end change-list
\procedure acknowledgements()
<ol class="doc-github-contributors">
<$list filter="[enlist<release-github-contributors>sort[]]" variable="username">
<li>
<a href={{{ [[https://github.com/]addsuffix<username>] }}} class="tc-tiddlylink-external" target="_blank" rel="noopener noreferrer">
<img src={{{ [[https://github.com/]addsuffix<username>addsuffix[.png?size=64]] }}} width="64" height="64"/>
<span class="doc-github-contributor-username">
@<$text text=<<username>>/>
</span>
</a>
</li>
</$list>
</ol>
\end acknowledgements
\procedure releasenote(release)
<$let
releaseTiddler={{{ [all[tiddlers]tag[ReleaseNotes]] :filter[{!!caption}match<release>] }}}
releaseTiddlerCreated={{{ [<releaseTiddler>get[created]] }}}
release-github-contributors={{{ [tag[$:/tags/ChangeNote]] :filter[{!!release}match<release>] :map:flat[enlist{!!github-contributors}] +[sort[]format:titlelist[]join[ ]]}}}
>
<<github-changes-link>>
<<banner-credits>>
! Introduction
<$transclude $variable="release-introduction" $mode="block"/>
! Changes
This release includes the following changes.
<<change-list>>
<!-- Acknowledgement list -->
! Acknowledgements
A warm thank you to the developers who have contributed to this release:
<<acknowledgements>>
</$let>
\end releasenote

View File

@@ -0,0 +1,3 @@
title: $:/tw5.com/releases/styles
tags: $:/tags/Stylesheet
type: text/vnd.tiddlywiki

View File

@@ -5,13 +5,7 @@ tags: Releases
title: TiddlyWiki Releases
type: text/vnd.tiddlywiki
Here are the details of recent releases of TiddlyWiki5. See [[TiddlyWiki5 Versioning]] for details of how releases are named.
If you are using node.js, you can also install prior versions like this:
> npm install -g tiddlywiki@5.1.13
(BetaReleases and AlphaReleases are listed separately).
Here are the details of recent releases of TiddlyWiki5. See [[TiddlyWiki5 Versioning]] for details of how releases are named, and [[Release Notes and Changes]] for details of how release notes are constructed.
<$list filter="[tag[ReleaseNotes]!sort[created]limit[1]]">
<$macrocall $name="tabs" tabsList="[tag[ReleaseNotes]!sort[created]]" default={{!!title}} class="tc-vertical" template="ReleaseTemplate" />

Some files were not shown because too many files have changed in this diff Show More