1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-07-07 04:24:22 +00:00
Commit Graph

3381 Commits

Author SHA1 Message Date
Jeremy Ruston
2027bd7582 Update release note 2020-04-01 12:49:35 +01:00
Jeremy Ruston
1154372a7b Update syncer to distinguish connection errors from other errors
We can automatically remove connection errors when things resume working
2020-03-31 10:47:17 +01:00
Jeremy Ruston
010483f705 Fix ActionPopupWidget example
Thanks @twmat

The example had been written while there was a bug that changed the state tiddler titles used by the sidebar
2020-03-30 20:43:17 +01:00
Jeremy Ruston
b95723a022
Fix syncer to handler errors properly (#4373)
* First commit

* Add throttling of saves

Now we refuse to save a tiddler more often than once per second.

* Wait for a timeout before trying again after an error

* Modest optimisations of isDirty() method

* Synchronise system tiddlers and deletions from the server

Fixes two long-standing issues:

* Changes to system tiddlers are not synchronised from the server to the browser
* Deletions of tiddlers on the server are not propagated to browser clients

* Make sure we update the dirty status even if there isn't a task to perform

* Replace save-wiki button with popup sync menu

* Remove the "Server" control panel tab

We don't need it with the enhanced sync dropdown

* Add indentation to the save-wiki button

* Fix spacing in dropdown menu items

* Switch between cloud icons according to dirty status

* Add a menu item to copy syncer logs to the clipboard

* Improve animated icon

* Remove indentation from save-wiki button

@pmario the annoying thing is that using `\trim whitespace` trims significant whitespace too, so it means we have to use <$text text=" "/> when we need a space that won't be trimmed. For the moment, I've removed the indentation but will keep thinking about it.

* Further icon, UI and copy text tweaks

Move the icons and styles from the core into the TiddlyWeb plugin

* Clean up PR diff

* Tweak animation durations

* Break the actions from the syncer dropdown into separate tiddlers

@pmario I think this makes things a bit easier to follow

* Refactor syncadaptor creation and logging

The goal is for the syncadaptor to be able to log to the same logger as the syncer, so that the "copy syncer logs to clipboard" data is more useful.

* Don't transition the dirty indicator container colour, just the SVG's colour

* Only trigger a sync for changes to tiddlers we're interested in

Otherwise it is triggered by the creation of the alert tiddlers used to display errors.

* Restore deleting local tiddlers removed from the server

(I had commented it out for some testing and accidentally commited it).

* Guard against missing adaptor info

* We still need to trigger a timeout when there was no task to process

* Avoid repeatedly polling for changes

Instead we only trigger a timeout call at if there is a pending task (ie a tiddler that has changed but isn't yet old enough to save).

* Lazy loading: include skinny versions of lazily loaded tiddlers in the index.html

* Introduce _is_skinny field for indicating that a tiddler is subject to lazy loading

* Remove savetrail plugin from prerelease

It doesn't yet work with the new syncer

* Make the savetrail plugin work again

* Clear outstanding alerts when synchronisation is restored

* Logger: only remove alerts from the same component

Missed off 9f5c0de07

* Make the saving throttle interval configurable (#4385)

After switching Bob to use the core syncer the throttle interval makes saving feel very sluggish compared to the message queue setup that I had before.
The editing lock that I use to prevent conflicts with multiple users doesn't go away until the save is completed, and with the 1 second delay it means that if you edit a tiddler and save it than you have to wait one second before you can edit it again.

* Tweaks to appearance of alerts

* Exclude temp tiddlers from offline snapshots

Otherwise alerts will persist

* Tweak appearance of status line in dropdown

* Update release note

* Web server: Don't include full path in error messages

Fixes #3724

* In change event handler check for deletions

* Disable the official plugin library when the tiddlyweb plugin is loaded

* Hide error details from browser for /files/ route

See https://github.com/Jermolene/TiddlyWiki5/issues/3724#issuecomment-565702492 -- thanks @pmario

* Revert all the changes to the relationship between the syncer and the syncadaptor

Previously we had some major rearrangements to make it possible for the syncadaptor to route it's logging to the logger used by the syncer. The motivation is so that the "copy logs to clipboard" button is more useful.

On reflection, changing the interface this drastically is undesirable from a backwards compatibility perspective, so I'm going to investigate other ways to achieve the logger sharing

* Make the tiddlyweb adaptor use the syncer's logger

So that both are availavble when copying the syncer logs to the clipboard

* Update release note

* Support setting port=0 to get an OS assigned port

Quite useful

* Update code comment

* UI: Use "Get latest changes from server" instead of "Refresh"

* Add getUpdatedTiddlers() method to syncadaptor API

See https://github.com/Jermolene/TiddlyWiki5/pull/4373#issuecomment-573579495

* Refactor revision handling within the syncer

Thanks @pmario

* Fix typo in tiddlywebadaptor

* Improve presentation of errors

See https://github.com/Jermolene/TiddlyWiki5/pull/4373#issuecomment-573695267

* Add docs for getTiddlerRevision()

* Remove unused error animation

* Update comment for GET /recipes/default/tiddlers/tiddlers.json

* Optimise SVG cloud image

* Add optional list of allowed filters for get all tiddlers route

An attempt to address @Arlen22's concern here:

https://github.com/Jermolene/TiddlyWiki5/pull/4373#pullrequestreview-342146190

* Fix network error alert text translatability

* Fix error code and logging for GET /recipes/default/tiddlers/tiddlers.json

Thanks @Arlen22

* Flip GET /recipes/default/tiddlers/tiddlers.json allowed filter handling to be secure by default

* Validate updates received from getUpdatedTiddlers()

* Add syncer method to force loading of a tiddler from the server

* Remove the release note update to remove the merge conflict

* Fix crash when there's no config section in the tiddlywiki.info file

* Use config tiddler title to check filter query (merge into fix-syncer) (#4478)

* Use config tiddler title to check filter query

* Create config-tiddlers-filter.tid

* Add config switch to enable all filters on GET /recipes/default/tiddlers/tiddlers.json

And update docs

* Fix bug when deleting a tiddler with a shadow

Reported by @kookma at https://github.com/Jermolene/TiddlyWiki5/pull/4373#issuecomment-604027528

Co-authored-by: jed <inmysocks@fastmail.com>
Co-authored-by: Arlen22 <arlenbee@gmail.com>
2020-03-30 15:24:05 +01:00
Jeremy Ruston
15b8545d72 Update release note 2020-03-30 14:30:09 +01:00
Jeremy Ruston
9ae2c15638 Merge branch 'tiddlywiki-com' 2020-03-30 14:29:55 +01:00
Jeremy Ruston
091bcfce7d Fix the datauri macro to work with _canonical_uri tiddlers 2020-03-30 10:55:37 +01:00
Rob Hoelz
ae04a425c0
Add backlinks indexer (#4421)
* Add tests for backlinks

* Add backlinks indexer

* Use backlinks indexer in getTiddlerBacklinks if available

* Extract link extraction into its own method

This way we can provide an arbitrary parse tree, rather than just a
title, which will allow us to compare lists of outgoing links between
versions of a single tiddler

* Use new extractLinks method in backlinks indexer

...rather than copy-pasting the implementation

* Remove ES6-isms

TiddlyWiki needs to work with browsers that only support ES5
2020-03-26 13:15:02 +00:00
Jeremy Ruston
6928842bbf Update docs for disabling drag and drop 2020-03-20 11:02:14 +00:00
Jeremy Ruston
cb52d709c2 Improve ability to disable drag and drop
Now we disable the draggable list macros too.
2020-03-20 10:46:17 +00:00
Cameron Fischer
561662782e
Fixes issue with #4504 and importvariable copying (#4518)
* Fixes issue with #4504 and importvariable copying

ImportVariables widget was using $tw.utils.extend to copy the
variables from temporary set widgets into itself. However,
$tw.utils.extend does NOT behave like Object.assign. It not only
copies all self-owned variables over, but also all variables
in that object's prototype chain. This led to some redundant copying,
and a problem where some variables might show up more than once
(like transclusion).

Fixed now. importvariables widget does its own copying, since it
can't rely on $tw.utils.extend to do the right job, and it can't
count on Object.assign to be there.

* Added test to prevent reversion of #4504

* Slight corrections to new importvariables test
2020-03-19 20:32:51 +00:00
Jeremy Ruston
c16c2fe5e6 Docs: Clarify Node.js docs 2020-03-18 11:57:58 +00:00
Jeremy Ruston
bc687e5783 Add a hidden setting for disabling the page dropzone 2020-03-15 14:46:33 +00:00
Simon Huber
22e6b20f50
Better readability for "Community" Tiddler with various ... (#4493)
... color palettes
2020-03-12 13:34:59 +00:00
twMat
2ad8d1790b
Update LinkWidget.tid (#4489) 2020-03-11 17:37:53 +00:00
Jeremy Ruston
cab9fd11dc Clarify docs on the path-prefix subcommand of the listen command 2020-03-11 17:19:21 +00:00
Jeremy Ruston
9b48a1c829 Introducing "Dynannotate" plugin for overlaying annotations 2020-03-11 16:55:19 +00:00
JesseWeinstein
d950591051
Mention importing process more explicitly (#3666)
* Mention importing process more explicitly

* Explicitly mention "images"

So this page shows up in a search for "images".

* Apply PR suggestions
2020-03-09 21:34:23 +00:00
Jeremy Ruston
a22438589e Remove unsafe externalimages build target from server edition
See #4484
2020-03-09 21:05:50 +00:00
Jeremy Ruston
6091b01386 Add hidden setting for default tiddler icon 2020-03-06 14:52:37 +00:00
Jeremy Ruston
24d2804799 Add action-popup widget
Fixes #4185
2020-03-03 12:03:32 +00:00
Jeremy Ruston
7ffe3fc91f Prerelease: Disable browser storage to make testing less confusing 2020-02-29 15:51:42 +00:00
Jeremy Ruston
e8aafdfb66 Update release note 2020-02-28 15:56:55 +00:00
Jeremy Ruston
0247d0d88b Disable sticky titles for the prerelease
Sadly, they don't play nicely with the new menu bar
2020-02-28 14:36:23 +00:00
Jeremy Ruston
ad2d4503e5 First commit of new Menu Bar plugin 2020-02-28 14:33:15 +00:00
Jeremy Ruston
4afde5a722 Enhance colour macro with a fallback to a configuration tiddler 2020-02-28 14:31:02 +00:00
saqimtiaz
5b3443947e
Update documentation for tabindex support for ButtonWidget (#4465)
Documentation for changes introduced in https://github.com/Jermolene/TiddlyWiki5/pull/4442
2020-02-23 11:27:49 +00:00
Jeremy Ruston
a339491cc0 Update release note
Better late than never
2020-02-19 14:28:27 +00:00
Jeremy Ruston
dbd2a340e0 Temporarily remove markdown plugin from prerelease
It's giving errors under Travis CI
2020-02-04 14:44:01 +00:00
Jeremy Ruston
005c584d85 First attempt at sharing plugin/edition 2020-02-04 14:06:59 +00:00
Jeremy Ruston
3df1f9c9d0 Extend jsontiddlers macro to generate unformatted output 2020-02-04 13:57:24 +00:00
twMat
9d2eff61ca
Docs: Update ViewWidget.tid (#4437) 2020-02-01 13:41:43 +00:00
Jeremy Ruston
b454e809f3 Docs: Fix typos in button widget docs 2020-01-31 17:15:09 +00:00
Mario Pietsch
db13e49724
More listops tests (#4409)
* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* make eslint happy

* add more listops tests

* new listops filter tests

* remove new-line

* make eslint happier.

* revert eslint settings
2020-01-31 14:09:06 +00:00
Cameron Fischer
aa817f66d2
Changed importVariable to store its own variables (#4108)
* Changed importVariable to store its ownvariables

Before, importVariables was creating a setWidget for every single variable it would find in its tiddlers, and it would create a long-ass call tree. Now, instead, it just accumulates the variables in itself.

* Can't use Object.assign

Learned the hardway while working on tw5-relink that Object.assign
doesn't exist in IE11. Using $tw.utils.extend instead.

* Retaining setWidget transclusion flexibility

* One more test to verify mixing sets and macros
2020-01-30 12:53:26 +00:00
Mario Pietsch
ba10b4fb00
Docs: bring tm-fold-xxx message docs on par with the code, that is executed. (#4353) 2020-01-30 12:50:19 +00:00
Mario Pietsch
151eed5c81
Docs: fix typos and font-size (#2795) 2020-01-30 12:49:37 +00:00
twMat
cead051c73
Docs: Update sign Operator.tid (#4426) 2020-01-29 17:18:33 +00:00
twMat
35178f41b0
Docs: Update length Operator.tid (#4428) 2020-01-29 17:14:02 +00:00
Jeremy Ruston
17fb43bd6f Introduction edition: fix some display issues
Two of the tiddlers incorporate content dynamically drawn from the core, and so the size of the tiddlers has increased as the core has grown.
2020-01-29 17:09:28 +00:00
Brooks Boyd
b258afea0d Replace Markdown parsing library with Remarkable (#3876)
* Replace Markdown parsing library with Remarkable

* Fix handling of block-level elements

* Update documentation

* Add config options for Parser actions

* Add Config options for Remarkable library

* Match code style

* Update documentation

* Handle ordered lists and horizontal rules

* Update to v2.0.0 of Remarkable library
2020-01-20 13:13:36 +00:00
TonyM
8145caa104 Add a new example that shows using all before to determine the nummeric position of a title in a list. (#4412)
See discussion https://groups.google.com/forum/?hl=en#!topic/tiddlywiki/wY6haW2cYMA
2020-01-14 16:55:53 +00:00
Jeremy Ruston
6732b3c0d9 Use match operator instead of prefix
Fixes #4407
2020-01-05 13:54:06 +00:00
Jeremy Ruston
429d38e75d Update TiddlyFox docs
Fixes #4399
2020-01-04 11:20:17 +00:00
Jeremy Ruston
5a5c967a39 Add support for $:/tags/Macro/View macros that are only visible within view templates 2020-01-03 10:40:11 +00:00
Mario Pietsch
3aa5198c3e Update tests (#4392)
add 3 new tiddlers, add 1 "enlist" test, fix all tests that failed, because 3 new tiddlers where added. stopped ESLint to complain about global vars, fix some mixed-tab-space indent typos.
2019-12-19 13:38:09 +00:00
Jeremy Ruston
0671bc5afd Tweak docs for each filter 2019-12-12 17:39:23 +00:00
Will Atwood Mitchell
d23545de1f Update links to Json Mangler plugin github pages (#4388)
The plugin's repo appears to have been renamed.
2019-12-12 16:48:38 +00:00
Jeremy Ruston
e33d519ce0 Update docs for "each" filter 2019-12-09 09:05:21 +00:00
Jeremy Ruston
afb7435a88 Remove "hack-to-give-us-something-to-compare-against"
It looked messy in the control panel listing.
2019-11-14 09:23:17 +00:00
Marica Odagaki
613f0b2559 Upgrade to Jasmine 3 (#4226)
* process.exit() only exist in a node.js environment

* updateInterval has been removed from upstream

From upstream commit:
b6eb9a4d5e

* Update Jasmine to 3.4.0

* Reuse the evalInContext helper

* Fix expected parse result to match the actual result

* 'describe' cannot be nested inside 'it' blocks

Jasmine started to explicitly raise an error in these cases since:
https://github.com/jasmine/jasmine/pull/1411

* Be consistent about how to refer to library files

* Update link to Jasmine's official website
2019-11-12 21:42:38 +00:00
Jeremy Ruston
bfbd886a8b Add "index" attribute to range widget 2019-11-04 18:56:22 +00:00
Jeremy Ruston
df85281420 Improve docs on installing plugins under Node.js 2019-11-02 13:19:00 +00:00
Jeremy Ruston
43d18e74d5 Syncer: add hidden setting for disabling lazy loading 2019-10-25 10:02:57 +01:00
Matt Lauber
14e799d36b Add discord to forums tiddler. (#4343) 2019-10-24 10:03:05 +01:00
Matt Lauber
9e9944b76d Correct the jsonstringify documentation (#4344)
The jsonstringify substitution table does not list all substitutions, and it listed `'` as being replaced when it's not.  This updates the table based on the code at https://github.com/Jermolene/TiddlyWiki5/blob/master/core/modules/utils/utils.js#L537
2019-10-24 10:02:20 +01:00
Nils-Hero Lindemann
6fa3e21116 Replace '<<...>>' with a macrocall widget (#4346)
... because there is another macrocall inside.

This was introduced by the commit 'Fix sizes of SVG icons in documentation' (SHA: 9395d75671) where this probably slipped through in a regular expression replacement session.

I searched through the codebase and the other replacements of this type are ok.
2019-10-24 09:15:52 +01:00
Jeremy Ruston
00974be82d Update release note 2019-10-14 13:19:40 +01:00
Jeremy Ruston
6089c4de29 Extend refresh throttling to tiddlers having a "throttle.refresh" field
See discussion here: https://groups.google.com/d/msgid/tiddlywiki/7738644f-b53f-4fb0-b0df-16243fe51795%40googlegroups.com
2019-10-14 10:42:14 +01:00
donmor
e5985566ce Update Saving on Android.tid (#4316) 2019-10-13 17:43:46 +01:00
Jeremy Ruston
9395d75671 Fix sizes of SVG icons in documentation
Fixes #4153
2019-10-13 15:35:36 +01:00
Jeremy Ruston
1010ca01cc Stylesheet cleanup 2019-10-06 14:59:08 +01:00
Jeremy Ruston
124efb31ea Update release note 2019-10-04 17:47:37 +01:00
Matt Lauber
6e57f16517 Documentation: typo in Range widget documentation (#4288)
The documentation for the range widget refers to radio buttons, instead of range sliders.
2019-10-04 15:50:32 +01:00
Matt Lauber
a9cc292dc9 Add an example to the $fieldmangler widget (#4287)
Add an example to the field mangler widget demonstrating the `tiddler` param.
2019-10-04 15:50:00 +01:00
Jeremy Ruston
81867a75cd Add docs for tm-unload-plugin-library message
Fixes #4281
2019-10-04 12:37:04 +01:00
Jeremy Ruston
66435b4992 Update release note 2019-09-28 11:50:53 +01:00
Jeremy Ruston
55e3b8d66d Plugin improvements
* Improve docs
* Improve styling of subplugins
2019-09-28 11:49:09 +01:00
Jeremy Ruston
ded9d4074c Plugin library chooser improvements
* Make "Also requires:" translatable
* Clearer styling for sub-plugins
* Documentation tweaks
2019-09-28 10:06:18 +01:00
Jeremy Ruston
0193bfd5e9 Plugin docs updates 2019-09-27 21:57:46 +01:00
Jeremy Ruston
7428f17551 Docs typo 2019-09-20 16:17:55 +01:00
Jeremy Ruston
1dbab6fd0e Update release note 2019-09-18 21:10:21 +01:00
Jeremy Ruston
1150c87edb Add [is[binary]] operator 2019-09-16 16:15:26 +01:00
Jeremy Ruston
0017d441d9 Update release note 2019-09-16 12:21:20 +01:00
Jeremy Ruston
90745f93a5 Update safe mode docs
Ping @anthonymuscio
2019-09-12 10:33:25 +01:00
Jeremy Ruston
1631f21a6b Preparation for v5.1.22-prerelease 2019-09-10 17:20:36 +01:00
Jeremy Ruston
42060acb43 Preparing for release of v5.1.21 2019-09-10 16:32:30 +01:00
Jeremy Ruston
978d52f3e8 Merge branch 'tiddlywiki-com' 2019-09-10 16:21:55 +01:00
Jeremy Ruston
b8129b6e36 Update release note 2019-09-10 16:21:37 +01:00
Jeremy Ruston
b5e4cc0cc8 Docs: Clarify reveal widget animation requirements 2019-09-10 16:07:36 +01:00
Jeremy Ruston
ff6070f033 Update release note 2019-09-09 16:48:12 +01:00
Cameron Fischer
fb12807a33 Reverting changes to stringifyList (#4249)
I (Flibbles) changed it so that lists generated by stringifyList
would always be compatible with a filter parser, but since lists
are not, and never will be, a subset of filters, there isn't a
point.

More importantly, wrapping negative numbers like "-7" in brackets
would mess up some math stuff.
2019-09-09 14:56:40 +01:00
Jeremy Ruston
f74e4c520d Add docs for tm-rename-tiddler
Fixes #4246
2019-09-09 14:38:29 +01:00
Jeremy Ruston
ef5c53bf9a Release note updates 2019-09-04 16:04:33 +01:00
Jeremy Ruston
6899be59e2 Fix date and time for for "Hidden Setting: Sync Polling Interval" 2019-09-03 19:26:23 +01:00
Jeremy Ruston
9e67be5b6c Fix date for "Hidden Setting: Sync Polling Interval" 2019-09-03 19:25:00 +01:00
Jeremy Ruston
7f5a5dbe09 Merge branch 'tiddlywiki-com' 2019-09-03 10:12:01 +01:00
Bimba Laszlo
9305881efb Syncadapter uses different conditions for loading and saving (#4211)
The description was ambiguous.
2019-09-03 09:49:17 +01:00
Jeremy Ruston
6496107a32 Docs: Clarify that webserver API get all tiddlers only returns non-system tiddlers
Fixes #4212
2019-09-03 09:47:55 +01:00
Jeremy Ruston
82d18ad1fa Update release note for v5.1.21 2019-08-30 15:34:26 +01:00
bimlas
b88812233c Hidden setting: Sync Polling Interval 2019-08-29 08:58:17 +02:00
StefanSTFG
990619b634 Fixed 3 typos in the example in line 88 (#4207)
1.     Removed closing square bracket after <currentTiddler>
2.    Changed capital 'P' in addprefix
3.    Added missing slash at the end
2019-08-27 17:10:00 +01:00
Jeremy Ruston
654eda02c6 Remove reference to stacked story view from prerelease introduction
It's confusing
2019-08-24 12:17:17 +01:00
Cameron Fischer
67066fe86e Improve handling for titles starting with +-~= (#4084) (#4087)
* $tw.utils.stringifyList will wrap tiddlers starting with `+-~=` in brackets.
2019-08-24 12:35:03 +02:00
Jeremy Ruston
a986e4f7d6 Prepare for v5.1.21-prerelease 2019-08-09 15:38:36 +01:00
Jeremy Ruston
ad175e222b Preparing for v5.1.20 release 2019-08-09 14:16:39 +01:00
Jeremy Ruston
2a3ea14437 Docs: More updates to build docs 2019-08-09 14:09:15 +01:00
Jeremy Ruston
762810361f Docs: Update the build docs 2019-08-09 14:08:13 +01:00
Jeremy Ruston
067e8a9f94 Merge branch 'tiddlywiki-com' 2019-08-09 10:29:46 +01:00
Jeremy Ruston
c3df892321 More release note tweaks 2019-08-06 18:46:28 +01:00