Richard Hansen
99fae2ec6e
pad: Fix application of padOptions
values from settings.json
2021-12-04 23:06:17 -05:00
Richard Hansen
f8b4189bc4
pad: Always pass strings to pad option callbacks
2021-12-04 23:06:17 -05:00
Richard Hansen
8c857a85ac
pad: Use null
as default for userName
, userColor
options
...
These options are used as strings, so it doesn't make sense to default
them to a boolean value.
Note that this change has no effect due to a bug in how pad options
are processed; that bug will be fixed in a future commit.
2021-12-04 23:06:16 -05:00
Richard Hansen
61b608e264
pad: Use null
as default for lang
option
...
It doesn't make sense to override the browser's language with `en-gb`
by default.
Note that this change has no effect due to a bug in how pad options
are processed; that bug will be fixed in a future commit.
2021-12-04 23:06:16 -05:00
Richard Hansen
7ff71cd41e
pad: Ignore null
values in padOptions
from settings.json
2021-12-04 23:06:16 -05:00
Richard Hansen
f4257a28ba
pad: Delete duplicate decodeURIComponent()
calls
...
`URL.searchParams` already decodes the value.
Also delete some useless comments.
2021-12-04 23:06:09 -05:00
Richard Hansen
6beb5dcaf5
tests: Disable deprecation warnings when testing deprecated functions
2021-11-30 23:17:35 -05:00
Richard Hansen
c4f18a9b3a
padutils: Rename warnWithStack()
to warnDeprecated()
...
This makes it more legitimate for tests to disable the warnings when
testing deprecated functionality.
2021-11-30 23:11:23 -05:00
Richard Hansen
a02e45499d
Use the new AttributeMap and Changeset APIs
2021-11-28 23:47:27 -05:00
Richard Hansen
f00b1ae89b
Merge branch 'master' into develop
2021-11-28 23:10:45 -05:00
Richard Hansen
142a47cbbc
Release v1.8.16
2021-11-28 23:03:58 -05:00
Richard Hansen
77bcb507b3
ImportEtherpad: Limit in-flight DB queries
2021-11-28 22:28:55 -05:00
Richard Hansen
5b3575acf0
ImportEtherpad: Use AttributePool to check attributes
2021-11-28 22:28:55 -05:00
Richard Hansen
19909eae53
ImportEtherpad: Rigorously check imported data
2021-11-28 22:28:55 -05:00
Richard Hansen
885ff3bcde
Pad: Move padLoad
hook invocation to PadManager.js
...
This puts global state change logic with the rest of the global state
management logic. This also makes it possible to create temporary Pad
objects without triggering plugin actions.
2021-11-28 22:28:55 -05:00
Richard Hansen
f7d4abdabe
Pad: Inject the database dependency
2021-11-28 22:28:55 -05:00
Richard Hansen
7c870f8a58
Pad: Add strict validation checks
2021-11-28 22:28:55 -05:00
Richard Hansen
2608a81654
Changeset: Stricter validation checks
2021-11-28 22:28:55 -05:00
Richard Hansen
ad78b24113
ImportEtherpad: Warn about unsupported attrib at encounter
2021-11-28 22:28:55 -05:00
Richard Hansen
23f8a12922
ImportEtherpad: Don't make any changes if data is bad
2021-11-28 22:28:55 -05:00
Richard Hansen
a2e77a7128
ImportEtherpad: Enforce single-pad records
2021-11-28 22:28:54 -05:00
Richard Hansen
33778281b9
ImportEtherpad: Simplify attribute key iteration
2021-11-28 22:28:54 -05:00
Richard Hansen
00fc7c8e86
ImportEtherpad: Reject unknown DB records
2021-11-28 22:27:44 -05:00
Richard Hansen
8e9bc8d325
ImportEtherpad: Avoid false positives when checking apool
2021-11-28 19:00:44 -05:00
Richard Hansen
003e5cbd4b
ImportEtherpad: Fix DB key pad ID transformation
2021-11-28 19:00:44 -05:00
Richard Hansen
fea7948b05
ImportEtherpad: Fix author info processing
2021-11-28 19:00:44 -05:00
Richard Hansen
777d045246
GroupManager: Clean up any mappings when deleting a group
2021-11-28 14:06:47 +00:00
Richard Hansen
5b37a56197
GroupManager: Use .setSub()
and parallel queries to avoid races
...
This also simplfies the code.
2021-11-27 22:20:03 -05:00
Richard Hansen
9d63700da0
SessionManager: Use .setSub()
and parallel queries to avoid races
...
This also simplfies the code.
2021-11-27 22:20:03 -05:00
Timon Engelke
3070cee9ca
Delete group after removing it from the group list
2021-11-27 22:20:03 -05:00
Timon Engelke
09c9e32d72
Delete session after corresponding group2session and author2session
2021-11-27 22:20:03 -05:00
Richard Hansen
2f0561abc0
ImportEtherpad: Remove unnecessary variable
2021-11-25 18:39:07 -05:00
Richard Hansen
9bc90128cb
ImportEtherpad: Fix async logic
2021-11-25 18:39:07 -05:00
webzwo0i
0983985dd5
easysync tests: Split into multiple files
2021-11-23 21:07:08 -05:00
webzwo0i
617515bcbb
easysync tests: Group related tests
2021-11-23 21:07:08 -05:00
webzwo0i
310444f5d3
easysync tests: Rename tests
2021-11-23 21:07:08 -05:00
webzwo0i
ec3833ab66
easysync tests: Convert IIFE into a describe()
2021-11-23 21:07:08 -05:00
Richard Hansen
6a7b54313f
easysync tests: Move shared helper functions to the top
...
This will make it easier to split `easysync.js` into multiple files.
2021-11-23 21:07:08 -05:00
Richard Hansen
d3427240c6
tests: Serve all of src/tests/frontend/
, not just specs
2021-11-23 21:07:07 -05:00
Richard Hansen
89fe40e080
Changeset: Migrate from OpIter
to deserializeOps()
2021-11-23 01:21:49 -05:00
Richard Hansen
0eca0251f2
Changeset: Use a generator to implement OpIter
2021-11-23 01:21:49 -05:00
Richard Hansen
a4aec006dc
Changeset: Turn opIterator()
into a real class
2021-11-23 01:21:12 -05:00
Richard Hansen
86959f7ebc
Changeset: Throw on unexpected chars while iterating ops
2021-11-23 01:21:12 -05:00
Richard Hansen
657492e191
Changeset: Turn newOp()
into a real class
2021-11-23 01:21:12 -05:00
Richard Hansen
fba0bb6dff
Changeset: Turn textLinesMutator()
into a real class
2021-11-23 01:21:12 -05:00
Richard Hansen
dab881139d
Pad: Fix copyPadWithoutHistory
apool corruption bug
2021-11-22 18:40:22 -05:00
Richard Hansen
ed78b56079
tests: Refine copyPadWithoutHistory
tests
2021-11-22 18:40:22 -05:00
Richard Hansen
d74dd235a4
Changeset: Replace appendATextToAssembler()
with a generator
2021-11-22 18:10:37 -05:00
Richard Hansen
9e772df991
deps: Bump dependencies
2021-11-21 21:31:53 -05:00
Richard Hansen
2fc06a0884
Changeset: Add TODO comments for issues noticed
2021-11-21 04:11:41 -05:00
Richard Hansen
f1eb7a25a6
Changeset: Migrate to the new attribute API
2021-11-21 04:11:41 -05:00
Richard Hansen
f40d285109
tests: Refine contentcollector tests
2021-11-21 04:11:41 -05:00
Richard Hansen
1f227200da
Replace separate attrib key, value calls with single pair call
2021-11-21 04:11:41 -05:00
Richard Hansen
6cf2055199
Changeset: New API to simplify attribute processing
2021-11-21 04:11:41 -05:00
Richard Hansen
982d8ad0f2
Changeset: Refactor makeAttribsString
for readability
2021-11-21 04:11:41 -05:00
Richard Hansen
9e7b142bb7
Invert conditions to improve readability
2021-11-21 04:11:41 -05:00
Richard Hansen
93abc31936
changesettracker: Fix author attribute ID fetch
2021-11-21 04:11:41 -05:00
Richard Hansen
d0e74ada2f
changesettracker: Remove unnecessary .numToAttrib
check
2021-11-21 04:11:41 -05:00
Richard Hansen
3ec5e84737
lint: Update ESLint dependencies
2021-11-21 03:34:19 -05:00
snyk-bot
cddd78d892
fix: upgrade formidable from 1.2.2 to 1.2.6
...
Snyk has created this PR to upgrade formidable from 1.2.2 to 1.2.6.
See this package in npm:
https://www.npmjs.com/package/formidable
See this project in Snyk:
https://app.snyk.io/org/johnmclear/project/d9a12bfb-7ccd-443f-9e22-f30d339cc8c5?utm_source=github&utm_medium=referral&page=upgrade-pr
2021-11-21 03:11:38 -05:00
snyk-bot
ff0f81161f
fix: upgrade async from 3.2.1 to 3.2.2
...
Snyk has created this PR to upgrade async from 3.2.1 to 3.2.2.
See this package in npm:
https://www.npmjs.com/package/async
See this project in Snyk:
https://app.snyk.io/org/johnmclear/project/d9a12bfb-7ccd-443f-9e22-f30d339cc8c5?utm_source=github&utm_medium=referral&page=upgrade-pr
2021-11-21 03:06:12 -05:00
snyk-bot
dd9814a4b8
fix: upgrade clean-css from 5.2.1 to 5.2.2
...
Snyk has created this PR to upgrade clean-css from 5.2.1 to 5.2.2.
See this package in npm:
https://www.npmjs.com/package/clean-css
See this project in Snyk:
https://app.snyk.io/org/johnmclear/project/d9a12bfb-7ccd-443f-9e22-f30d339cc8c5?utm_source=github&utm_medium=referral&page=upgrade-pr
2021-11-21 03:04:52 -05:00
snyk-bot
7ed980aa59
fix: upgrade rate-limiter-flexible from 2.3.1 to 2.3.2
...
Snyk has created this PR to upgrade rate-limiter-flexible from 2.3.1 to 2.3.2.
See this package in npm:
https://www.npmjs.com/package/rate-limiter-flexible
See this project in Snyk:
https://app.snyk.io/org/johnmclear/project/d9a12bfb-7ccd-443f-9e22-f30d339cc8c5?utm_source=github&utm_medium=referral&page=upgrade-pr
2021-11-21 03:04:31 -05:00
John McLear
2e19087cb9
bump version
2021-11-20 15:20:35 +00:00
Richard Hansen
ae1741c25b
PadMessageHandler: Add missing parseNum()
for attribute lookup
2021-11-20 01:24:30 -05:00
Richard Hansen
a052580bd1
PadMessageHandler: Stop the USER_CHANGES timer on exception
2021-11-20 01:24:30 -05:00
Richard Hansen
97e382e5d2
PadMessageHandler: Move USER_CHANGES processing inside try
...
This improves the accuracy of the timing stats, and it simplifies
error handling.
2021-11-20 01:24:30 -05:00
Richard Hansen
b1c1501e1e
PadMessageHandler: Use object destructuring
2021-11-20 01:24:30 -05:00
Richard Hansen
e961718ff2
PadMessageHandler: Improve error logging
...
Use a log4js logger instead of `console`, and clean up some of the log
messages.
2021-11-20 01:24:30 -05:00
Richard Hansen
1447ab8899
PadMessageHandler: Factor out common USER_CHANGES error message formatting
2021-11-20 01:24:30 -05:00
Richard Hansen
35b2aeb3b1
PadMessageHandler: Factor out duplicate bad USER_CHANGES handling
...
This also fixes a double-count bug.
2021-11-20 01:24:30 -05:00
Richard Hansen
85919ff914
PadMessageHandler: Replace channels
package with async-friendly class
2021-11-20 01:24:30 -05:00
Richard Hansen
5c1177a3d9
PadMessageHandler: Switch from nodeify to util.callbackify
2021-11-20 01:24:30 -05:00
Richard Hansen
abf4eeeb17
ImportHtml: Wait for HTML processing to complete
2021-11-20 01:24:00 -05:00
Richard Hansen
50dce085c2
ImportHtml: In-line an unnecessary function
2021-11-20 01:24:00 -05:00
Richard Hansen
afdb01681a
ImportHtml: Reuse the HTML processor
2021-11-20 01:24:00 -05:00
Richard Hansen
db105e8650
ImportHtml: Get the logger once
2021-11-20 01:24:00 -05:00
Richard Hansen
6e19d888d3
docs: Check in src/bin/doc/package-lock.json
...
Looks like this was accidentally deleted in commit
4a65acf417
.
2021-11-20 01:09:50 -05:00
Richard Hansen
24b22e3a6d
MinifyWorker: Fix buggy error handling in compressCSS
2021-11-19 02:47:17 -05:00
Richard Hansen
98f0e931fe
MinifyWorker: Promisify compressCSS
2021-11-19 02:47:17 -05:00
Richard Hansen
c94906f1f8
MinifyWorker: Delete unhelpful comment
...
The comment should have been a commit message instead.
2021-11-19 02:47:17 -05:00
Richard Hansen
a65498e849
Changeset: Move SmartOpAssembler.appendOpWithText()
to a standalone function
2021-11-14 04:17:00 -05:00
Richard Hansen
eae814f5a0
pad_utils: New warnWithStack()
function
2021-11-14 04:15:10 -05:00
Richard Hansen
1bbe0d9215
Changeset: Use in
check to help TypeScript narrowing
2021-11-13 17:44:38 -05:00
Richard Hansen
4f4a775d9e
Changeset: Improve handling of missing attribute in old pool
2021-11-13 17:44:38 -05:00
Richard Hansen
b62534a6b2
Changeset: Use Maps to simplify attribute processing
2021-11-13 17:44:38 -05:00
Richard Hansen
9401ae876b
Changeset: Sort attributes by keys, not full string rep
2021-11-13 17:44:38 -05:00
Richard Hansen
1cad5d881a
Changeset: Use for...of
iteration to improve readability
2021-11-13 17:44:38 -05:00
Richard Hansen
6d5b737140
Changeset: Replace .apply()
with spread operator
2021-11-13 17:44:38 -05:00
Richard Hansen
9c17b03660
Changeset: Require Op opcode and attribs to be strings
2021-11-13 17:44:38 -05:00
Richard Hansen
0ae8fb1441
Changeset: Use string concatenation instead of array join
...
People report that string concatenation is faster. Also, I think it's
more readable.
2021-11-13 17:44:38 -05:00
Richard Hansen
097f2623c6
Changeset: Add sanity checks to slicerZipperFunc()
2021-11-13 17:44:38 -05:00
Richard Hansen
efeb69b4ea
Changeset: Simplify slicerZipperFunc()
2021-11-13 17:44:38 -05:00
Richard Hansen
42d4d8269c
Changeset: Refactor appendATextToAssembler()
for readability
2021-11-13 17:44:38 -05:00
Richard Hansen
ca5bdddc59
Changeset: Use break
instead of done
variable
2021-11-13 17:44:38 -05:00
Richard Hansen
44d99733c6
Changeset: Check .hasNext()
before calling .next()
2021-11-13 17:44:38 -05:00
Richard Hansen
1955e7b263
Changeset: Replace output params with return values
...
This improves readability and reduces the chances of introducing a
bug.
2021-11-13 17:44:38 -05:00
Richard Hansen
94f5507671
Changeset: Improve copyOp()
API
...
Use `Object.assign()` to implement `copyOp()`, which simplifies the
code and provides a return value. Also make the second op optional.
2021-11-13 17:44:38 -05:00
Richard Hansen
02ef78e174
Changeset: Make sure opOut
is cleared
...
`slicerZipperFunc()` previously assumed the provided `opOut` argument
was a null Op. Enforce this by clearing it at the beginning.
2021-11-13 17:44:38 -05:00
Richard Hansen
18a6b7279c
Changeset: Only pass strings to parseNum()
2021-11-13 17:44:38 -05:00
Richard Hansen
7ec0d5f385
Changeset: Remove unnecessary linesApplySplice()
2021-11-13 17:44:38 -05:00
Richard Hansen
37bb297e76
Changeset: Improve logged error message
...
I saw this on a production system today and wanted more information.
2021-11-13 17:44:38 -05:00
Richard Hansen
7fa9b07116
Changeset: Invert conditions to improve readability
2021-11-13 17:44:38 -05:00
Richard Hansen
b29e59419e
Changeset: Factor out duplicate code
2021-11-13 17:44:38 -05:00
Richard Hansen
4a65c2c8ff
Changeset: Unexport unnecessarily exported functions
...
These functions aren't used outside of this file.
2021-11-13 17:44:38 -05:00
Richard Hansen
085bc8cbb3
plugins: Don't create .ep_initialized
files
...
These files cause problems with Docker images and read-only
directories/mounts, and they have dubious value (any install-time
setup should instead be done at startup).
2021-11-13 17:43:33 -05:00
Richard Hansen
263105d185
tests: Remove overly aggressive timeouts
2021-11-13 03:05:38 -05:00
Richard Hansen
3c6aef11bd
lint: Add 'use strict';
2021-11-13 03:02:40 -05:00
Richard Hansen
0f7c5a8782
lint: Use window.
to avoid global declaration
2021-11-12 23:45:05 -05:00
Richard Hansen
19e9c2f114
adminsettings: Pay attention to --settings
2021-11-12 23:45:05 -05:00
Richard Hansen
46ad93024d
adminsettings: Promisify
2021-11-12 23:45:05 -05:00
Richard Hansen
4e2f816665
adminsettings: Use object destructuring
2021-11-12 23:45:05 -05:00
Timon Engelke
b0a7237443
Fix comparison between CustomError and string
2021-11-12 23:40:20 +01:00
webzwo0i
8b73b911c9
Changeset: Use string templates
...
Co-authored-by: Richard Hansen <rhansen@rhansen.org>
2021-11-09 01:05:53 +01:00
translatewiki.net
cb95e5907c
Localisation updates from https://translatewiki.net .
2021-11-08 13:04:14 +01:00
Richard Hansen
cc688f7367
ace: Delete dead code
2021-11-07 23:24:39 -05:00
Richard Hansen
5283bfc14a
linestylefilter: Delete unused arguments
2021-11-07 23:24:39 -05:00
Richard Hansen
dd8ec4e291
Changeset: Remove unused lastIndex()
method from op iterator
2021-11-07 23:24:39 -05:00
Richard Hansen
0fd2a46783
Changeset: Remove unused start index parameter for opIterator()
2021-11-07 23:24:39 -05:00
Richard Hansen
43dae4cb1d
Changeset: Delete unused index parameters in applyZip()
2021-11-07 23:24:24 -05:00
Richard Hansen
b3215992c9
changesettracker: Delete IE8 compatibility code
2021-11-07 22:42:31 -05:00
Richard Hansen
9f66ffbc3b
Pad: Delete no-op call to SmartOpAssembler.appendOpWithText()
2021-11-07 22:42:31 -05:00
Richard Hansen
ad6de52eb2
Changeset: More JSDoc comment improvements
2021-11-07 22:42:31 -05:00
Richard Hansen
caefd2184a
PadMessageHandler: Don't fire userLeave
if user hasn't joined yet
2021-11-07 01:30:39 -04:00
snyk-bot
088fb14784
fix: upgrade express-rate-limit from 5.4.1 to 5.5.0
...
Snyk has created this PR to upgrade express-rate-limit from 5.4.1 to 5.5.0.
See this package in npm:
https://www.npmjs.com/package/express-rate-limit
See this project in Snyk:
https://app.snyk.io/org/johnmclear/project/d9a12bfb-7ccd-443f-9e22-f30d339cc8c5?utm_source=github&utm_medium=referral&page=upgrade-pr
2021-11-05 18:17:27 -04:00
Richard Hansen
56cb08f4c5
pad: Pass color and display name in CLIENT_READY
2021-11-05 18:14:27 -04:00
Richard Hansen
7a0d8cb52e
pad: Use URLSearchParams to process search params
...
Also unexport `getUrlVars` because it isn't used outside the file.
2021-11-05 18:14:27 -04:00
Richard Hansen
fe87e2df87
ImportHandler: Pass the pad ID to the import
hook
...
This enables plugins to log the pad ID if desired.
2021-11-05 17:19:54 -04:00
Richard Hansen
caf4e9f28c
ImportHandler: Use truthiness to signal conversion handled
2021-11-05 17:19:54 -04:00
translatewiki.net
cc4772a99e
Localisation updates from https://translatewiki.net .
2021-11-04 13:03:08 +01:00
Richard Hansen
6bf8142221
chat: Translate newly created message entries
2021-11-01 04:56:46 -04:00
Richard Hansen
99b7bdd176
chat: Set timestamp CSS font-size: smaller;
2021-11-01 01:54:29 -04:00
Richard Hansen
51907015ed
chat: Fix gritter duration
2021-11-01 01:54:29 -04:00
Richard Hansen
23f963c9fe
chat: Improve name mention detection
2021-11-01 01:54:29 -04:00
Richard Hansen
26675c5019
chat: New chatNewMessage
server-side hook
2021-11-01 01:54:29 -04:00
Richard Hansen
23a98e5946
tests: Refactor waitForSocketEvent()
to improve readability
2021-11-01 01:54:29 -04:00
Richard Hansen
3132235f2c
tests: Rename getSocketEvent()
to waitForSocketEvent()
2021-11-01 01:54:29 -04:00
Richard Hansen
65bd597053
tests: Move socket.io connection helpers to common.js
2021-11-01 01:54:28 -04:00
Richard Hansen
bea57ff249
tests: Use logger
variable for consistency
2021-11-01 01:54:28 -04:00
Richard Hansen
9fbd2e5c3d
chat: New chatSendMessage
client-side hook
2021-11-01 01:54:28 -04:00
Richard Hansen
4c2f7f9a11
chat: Rename userId
to authorId
, userName
to displayName
2021-11-01 01:54:28 -04:00
Richard Hansen
0f47ca9046
chat: Plumb message object end to end
...
This will make it possible for future commits to add hooks that allow
plugins to augment chat messages with arbitrary metadata.
2021-11-01 01:54:28 -04:00
Richard Hansen
f1f4ed7c58
chat: Allow chatNewMessage
hook to control rendering
2021-11-01 01:54:28 -04:00
Richard Hansen
2597b940f4
chat: Give chatNewMessage
hook access to the raw message object
2021-11-01 01:54:28 -04:00
Richard Hansen
fc5a3f553d
chat: Test processing in chatNewMessage
hook
2021-11-01 01:54:28 -04:00
Richard Hansen
caac4bf711
chat: Promisify addMessage()
2021-11-01 01:54:28 -04:00
Richard Hansen
3f7f629eeb
chat: Scroll down after the chatNewMessage
hook finishes
2021-11-01 01:54:28 -04:00
Richard Hansen
195a6bd81b
chat: Move click handler setup to init()
2021-11-01 01:54:28 -04:00
Richard Hansen
23037280a8
Pad: Simplify getChatMessages()
2021-11-01 01:54:28 -04:00
Richard Hansen
e471cb12e6
tests: Also spy on initially loaded chat messages
2021-11-01 01:54:28 -04:00