From a8da7e020781ddc116f8d580b5be972e4f30c52d Mon Sep 17 00:00:00 2001 From: yaisog Date: Wed, 12 Nov 2025 18:25:40 +0100 Subject: [PATCH] Add changenotes for PRs #9305 and #9337 --- .../tiddlers/releasenotes/5.4.0/#9305.tid | 13 +++++++++++++ .../tiddlers/releasenotes/5.4.0/#9337.tid | 18 ++++++++++++++++++ .../#9337/compatibility-break/math-filters | 17 +++++++++++++++++ 3 files changed, 48 insertions(+) create mode 100644 editions/tw5.com/tiddlers/releasenotes/5.4.0/#9305.tid create mode 100644 editions/tw5.com/tiddlers/releasenotes/5.4.0/#9337.tid create mode 100644 editions/tw5.com/tiddlers/releasenotes/5.4.0/#9337/compatibility-break/math-filters diff --git a/editions/tw5.com/tiddlers/releasenotes/5.4.0/#9305.tid b/editions/tw5.com/tiddlers/releasenotes/5.4.0/#9305.tid new file mode 100644 index 000000000..654b1e494 --- /dev/null +++ b/editions/tw5.com/tiddlers/releasenotes/5.4.0/#9305.tid @@ -0,0 +1,13 @@ +title: $:/changenotes/5.4.0/#9305 +description: Let tiddler modules overwrite shadow modules with the same exports but different names +release: 5.4.0 +tags: $:/tags/ChangeNote +change-type: bugfix +change-category: internal +github-links: https://github.com/TiddlyWiki/TiddlyWiki5/pull/9305 +github-contributors: yaisog + +Tiddlers were previously processed before shadows during module registration. The shadow modules registration algorithm only checked for a matching title to prevent overwriting, but a differently named tiddler with the same exports would be overwritten by a shadow. This change swaps the order of $tw.wiki.defineTiddlerModules() and $tw.wiki.defineShadowModules() in boot.js, so that tiddlers are processed after shadows and can therefore override them. + +Each group (tiddlers or shadows) is sorted alphabetically, so plugin shadows would previously correctly overwrite core shadows (assuming their name starts with $:/plugins/), which remains unchanged. This change only affects module tiddlers that have the same export as a shadow, but a different name. + diff --git a/editions/tw5.com/tiddlers/releasenotes/5.4.0/#9337.tid b/editions/tw5.com/tiddlers/releasenotes/5.4.0/#9337.tid new file mode 100644 index 000000000..a5a7c3de4 --- /dev/null +++ b/editions/tw5.com/tiddlers/releasenotes/5.4.0/#9337.tid @@ -0,0 +1,18 @@ +title: $:/changenotes/5.4.0/#9337 +description: Modify output of some math operators for empty inputs +release: 5.4.0 +tags: $:/tags/ChangeNote +change-type: bugfix +change-category: filters +github-links: https://github.com/TiddlyWiki/TiddlyWiki5/pull/9337 +github-contributors: yaisog + +The following math operators are changed to output an empty list when the input list is empty: + +* sum[] +* product[] +* maxall[] +* minall[] +* average[] +* variance[] +* standard-deviation[] diff --git a/editions/tw5.com/tiddlers/releasenotes/5.4.0/#9337/compatibility-break/math-filters b/editions/tw5.com/tiddlers/releasenotes/5.4.0/#9337/compatibility-break/math-filters new file mode 100644 index 000000000..1a1fea51d --- /dev/null +++ b/editions/tw5.com/tiddlers/releasenotes/5.4.0/#9337/compatibility-break/math-filters @@ -0,0 +1,17 @@ +title$:/changenotes/5.4.0/#9337/compatibility-break/math-filters +changenote: $:/changenotes/5.4.0/#9337 +created - 20251112152513384 +modified - 20251112152513384 +tags: $:/tags/ImpactNote +description: filter output with empty input changes for some math filter operators +impact-type: compatibility-break + +These math operators will now output an empty list when the input list is empty: + +* sum[] - previously returned 0 +* product[] - previously returned 1 +* maxall[] - previously returned -Infinity +* minall[] - previously returned Infinity +* average[] - previously returned NaN +* variance[] - previously returned NaN +* standard-deviation[] - previously returned NaN \ No newline at end of file