Richard Hansen
a58fa4a2c5
tests: Add tests for SkipList.atOffset()
2021-05-03 01:42:03 -04:00
Richard Hansen
c00031a8d8
skiplist: Use Map.size
to get number of nodes
2021-05-03 01:42:03 -04:00
Richard Hansen
1cdfe9193b
skiplist: Convert _keyToNodeMap
to a Map
object
2021-05-03 01:42:03 -04:00
Richard Hansen
e2eb7327c2
skiplist: Sanity check inserted entries
2021-05-03 01:42:03 -04:00
Richard Hansen
9e2ef6ad5b
skiplist: Move propagateWidthChange()
to Node
class
2021-05-03 01:42:03 -04:00
Richard Hansen
fc103e7f2a
skiplist: Define a new Node
class
2021-05-03 01:42:03 -04:00
Richard Hansen
9fc88f3601
skiplist: Convert point operations into Point
methods
2021-05-03 01:42:03 -04:00
Richard Hansen
3c1be95e07
skiplist: Move point creation to a new Point
class
2021-05-03 01:42:03 -04:00
Richard Hansen
8ae40e80f9
skiplist: Save entry in _insertKeyAtPoint()
2021-05-03 01:42:03 -04:00
Richard Hansen
0e424fa8c3
skiplist: Remove unnecessary newKey
arg from _insertKeyAtPoint()
2021-05-03 01:42:03 -04:00
Richard Hansen
ab8c354f18
skiplist: Use ES6 class syntax
...
This makess it easier to examine state in dev console.
2021-05-03 01:42:03 -04:00
Richard Hansen
303fd297bd
editor: Improve documentation comments
2021-05-03 01:42:03 -04:00
Richard Hansen
cbbcef8e90
AttributeManager: Add sanity checks
2021-05-03 01:42:03 -04:00
Richard Hansen
d40d59d9eb
AttributeManager: Simplify logic
2021-05-03 01:42:03 -04:00
Richard Hansen
e3d32a26b6
skiplist: Delete unused methods
2021-05-03 01:42:03 -04:00
Richard Hansen
f650c3d73e
editor: Delete unused PROFILER
code
2021-05-03 01:42:03 -04:00
Richard Hansen
ab4e99f67a
editor: Delete commented-out code
2021-05-03 01:42:03 -04:00
Richard Hansen
eeead46437
PadMessageHandler: Use a Map
for sessioninfos
...
Maps are a bit more flexible, have clearer semantics, and have a
convenient `size` property.
2021-05-03 01:35:11 -04:00
Richard Hansen
14d4aadfe4
PadMessageHandler: Parallelize client updates
...
Multiple clients are updated in parallel, but multiple revisions sent
to a particular client are still sent sequentially.
2021-05-03 01:35:11 -04:00
Richard Hansen
770755debf
PadMessageHandler: Assume sessioninfo stays valid during client update
...
...but add a try/catch around the message transmission just in case.
2021-05-03 01:35:11 -04:00
Richard Hansen
c85391862b
PadMessageHandler: Avoid unnecessary property lookups
2021-05-03 01:35:11 -04:00
Richard Hansen
d5c6a44d9c
PadMessageHandler: Improve documentation of sessioninfos
2021-05-03 01:35:11 -04:00
Richard Hansen
4c4415e14a
PadMessageHandler: Register activePads
metric only once
2021-05-03 01:35:11 -04:00
snyk-bot
6011d31b22
fix: upgrade underscore from 1.12.1 to 1.13.0
...
Snyk has created this PR to upgrade underscore from 1.12.1 to 1.13.0.
See this package in npm:
https://www.npmjs.com/package/underscore
See this project in Snyk:
https://app.snyk.io/org/johnmclear/project/d9a12bfb-7ccd-443f-9e22-f30d339cc8c5?utm_source=github&utm_medium=upgrade-pr
2021-05-03 01:31:53 -04:00
Richard Hansen
8f236b8687
Minify: Avoid crash due to unhandled Promise rejection if stat fails
2021-05-03 01:26:49 -04:00
Richard Hansen
e8df643d75
Minify: Treat ENOTDIR
like ENOENT
when statting a file
...
This avoids an exception when require-kernel requests a path like
`existing-file.js/index.js`.
2021-05-03 01:26:48 -04:00
Richard Hansen
aaacbd3a7a
Minify: Refactor requestURI()
for readability
2021-05-03 01:26:48 -04:00
translatewiki.net
3a8d66ba6a
Localisation updates from https://translatewiki.net .
2021-04-30 08:49:17 +02:00
translatewiki.net
3afc77dae7
Localisation updates from https://translatewiki.net .
2021-04-26 15:20:55 +02:00
Richard Hansen
8384a7a67b
deps: Bump ueberdb2
2021-04-20 21:56:44 +02:00
Richard Hansen
ea8846154f
favicon: Redo favicon customization
2021-04-20 13:33:55 -04:00
Richard Hansen
92e0bff80c
favicon: Refactor handler and add tests
2021-04-20 13:33:55 -04:00
Richard Hansen
d0d4b95980
favicon: Only serve from /favicon.ico
2021-04-20 13:33:54 -04:00
webzwo0i
3a5af19492
AuthorManager: await for more db methods
2021-04-20 11:27:44 -04:00
webzwo0i
35797e57fc
AuthorManager: await db.set in createAuthor
2021-04-20 11:27:44 -04:00
webzwo0i
20c512c8a9
test for await db.set in createAuthor
2021-04-20 11:27:43 -04:00
Chocobozzz
a001a13411
fix(perf): Disable wtfnode dump by default
...
Consumes a lot of CPU so it's better to enable it on purpose
2021-04-13 16:01:41 +02:00
Richard Hansen
951d369e3f
padaccess: Delete useless try/catch
2021-04-12 22:51:06 -04:00
Richard Hansen
329d037431
Simplify read-only pad ID checks
2021-04-12 22:51:06 -04:00
Richard Hansen
f63610bb12
tests: Test access bypass via read-only pad ID
2021-04-12 22:51:06 -04:00
pcworld
3c71e8983b
Fix read only pad access with authentication
...
Before this commit, webaccess.checkAccess saved the authorization in
user.padAuthorizations[padId] with padId being the read-only pad ID,
however later stages, e.g. in PadMessageHandler, use the real pad ID for
access checks. This led to authorization being denied.
This commit fixes it by only storing and comparing the real pad IDs and
not read-only pad IDs.
This fixes test case "authn user readonly pad -> 200, ok" in
src/tests/backend/specs/socketio.js.
2021-04-12 22:51:06 -04:00
pcworld
0d33793908
tests: readonly pastes must be readable+exportable with authentication
...
readonly paste links should be readable even if authentication is turned
on, as long as the user provides valid login data.
This test currently fails.
Also test that readonly paste IDs can be exported under the same
condition, which currently succeeds.
2021-04-12 22:51:06 -04:00
translatewiki.net
7d5cad6932
Localisation updates from https://translatewiki.net .
2021-04-12 15:43:27 +02:00
Richard Hansen
d01b593d3c
chat: Ensure that ctx.text
is interpreted as HTML
2021-04-11 06:20:29 +02:00
Richard Hansen
a3a0ff7bc1
chat: Use jQuery to build the chat message DOM object
...
This reduces the likelihood of accidentally introducing an XSS
vulnerability.
2021-04-11 06:20:29 +02:00
Richard Hansen
74554d36a5
chat: Allow chatNewMessage
hook to modify more values
2021-04-11 06:20:29 +02:00
Richard Hansen
1ad134a538
PadMessageHandler: Improve logging of pre-CLIENT_READY drops
...
This should make it easier to see what is emitting the the messages so
it can be fixed.
2021-04-09 18:43:02 +02:00
Richard Hansen
91e99c84ca
import: Reduce log spam from unsupported elements
2021-04-09 18:43:02 +02:00
Richard Hansen
09c349e2a1
import: Use a Set for supported elements
2021-04-09 18:43:02 +02:00
translatewiki.net
e31da37d00
Localisation updates from https://translatewiki.net .
2021-04-08 14:54:44 +02:00
webzwo0i
a796811558
escape userId before setting it as HTML attribute
2021-04-07 23:29:27 -04:00
webzwo0i
9408d4395f
remove custom timeouts
2021-04-07 17:47:11 -04:00
Mikk Andresen
af19a010c5
DOCS: Fix broken links in TOC - use Marked to generate ID slugs instead of local implementation that was giving out different IDs in some cases - https://github.com/citizenos/citizenos-fe/issues/535
2021-04-06 21:42:01 +02:00
webzwo0i
e483b91916
Don't make browsers fail on sync-xhr until require-kernel is dropped
2021-04-05 04:34:29 -04:00
snyk-bot
e86547c4f5
fix: upgrade openapi-backend from 3.9.0 to 3.9.1
...
Snyk has created this PR to upgrade openapi-backend from 3.9.0 to 3.9.1.
See this package in npm:
https://www.npmjs.com/package/openapi-backend
See this project in Snyk:
https://app.snyk.io/org/johnmclear/project/d9a12bfb-7ccd-443f-9e22-f30d339cc8c5?utm_source=github&utm_medium=upgrade-pr
2021-04-03 16:54:52 -04:00
Richard Hansen
e4754eb9df
tests: Fix race in timeslider_revisions.js
2021-04-02 15:46:27 +02:00
Richard Hansen
27e5373050
tests: Fix race in change_user_name.js
2021-04-02 15:46:27 +02:00
Richard Hansen
58dac4c0fc
tests: Fix races in inner_height.js
2021-04-02 15:46:27 +02:00
Richard Hansen
4ad80d4072
tests: Delete overly aggressive frontend test timeouts
...
This should reduce test flakiness.
2021-04-02 15:46:27 +02:00
Richard Hansen
7cbb3f565d
tests: Speed up helper.edit()
and helper.clearPad()
2021-04-02 15:46:27 +02:00
Richard Hansen
7a154b1e1d
tests: Wait for commit instead of sleep in timeslider_revisions.js
2021-04-02 15:46:27 +02:00
Richard Hansen
d15ff9ce8d
tests: Add missing await
s to change_user_name.js
...
Also increase the timeouts.
2021-04-02 15:46:27 +02:00
Richard Hansen
bbf89dfcf9
tests: Refine frontend tests
...
* Switch from `helper.newPad()` to `helper.aNewPad()`.
* Promisify.
* Delete redundant logic.
* Lint fixes.
2021-04-02 15:46:27 +02:00
Richard Hansen
3790c0e41c
tests: Use async
/await
instead of returning Promises
...
This has a few benefits:
* It's more readable: It's easier for a user of the function to know
that they should use `await` when calling the function.
* Stack traces are more useful.
* Some code (e.g., the async npm package) uses introspection to
determine if a function is `async` vs. takes a callback.
2021-04-02 15:46:27 +02:00
Richard Hansen
b164a34e64
lint: Fix ESLint error in helper/methods.js
2021-04-02 15:46:27 +02:00
Richard Hansen
62403159df
tests: Invert conditions to improve readability
2021-04-02 15:46:27 +02:00
Richard Hansen
dd9c08d821
tests: Wait for commit rather than sleep
2021-04-01 14:31:56 +02:00
Richard Hansen
2776946627
tests: Use cookie libraries to manipulate cookies
2021-04-01 14:31:56 +02:00
Richard Hansen
202d65d2bb
pad_cookie: Re-read prefs cookie on every call to getPref()
...
This makes it easier to write tests that clear the prefs cookie.
2021-04-01 14:31:56 +02:00
Richard Hansen
0df41a9a78
pad_cookie: Move initial cookie read+save to init()
...
Benefits of this change:
* It avoids race conditions with tests that clear cookies.
* Any attempt to get or set a value before `init()` is called will
throw an error, ensuring the API is used properly.
* Improved readability: It's easier to understand what the
`pad.noCookie` check is doing.
2021-04-01 14:31:56 +02:00
Richard Hansen
aeee5c0b69
tests: Fix cookie name in helper.js
tests
2021-04-01 14:31:56 +02:00
Richard Hansen
137fa89d2a
tests: Always set cookie path to / (to match non-test behavior)
2021-04-01 14:31:56 +02:00
Richard Hansen
5666c34061
tests: Fix encoding of prefs cookie
2021-04-01 14:31:56 +02:00
Richard Hansen
63e6e163b7
tests: Promisify some of the helper.js
tests
2021-04-01 14:31:56 +02:00
Richard Hansen
701a40ac13
tests: Promisify multiple_authors_clear_authorship_colors.js
2021-04-01 14:31:56 +02:00
Richard Hansen
8b43f9eb5f
tests: Promisify authorship_of_editions.js
2021-04-01 14:31:56 +02:00
Richard Hansen
056939cd22
tests: Refine helper/multipleUsers.js
...
* Rename "current"/"other" to "user0"/"user1".
* Delete unnecessary `_createTokenFor*` functions.
* Rename helper functions to remove unnecessary leading underscore
and for brevity.
* Use jQuery's `.attr()` to build the second iframe.
* Use js-cookie to manipulate the token cookie.
* Don't attempt to set the token cookie if the pad isn't loaded.
* Use the token generated by the pad.
* Only clear the token cookie at path=/.
2021-04-01 14:31:56 +02:00
Guilherme Goncalves
f2034ad368
tests: Add regression tests for character composition race
...
See: https://github.com/ether/etherpad-lite/issues/4978
2021-03-30 16:42:53 -04:00
Richard Hansen
1fdaf95c3b
collab_client: Delete unused NO_COMMIT_PENDING
handling
2021-03-30 16:42:53 -04:00
Richard Hansen
63a1f078f4
collab_client: Redo server message queueing
...
Move server message queue processing out of `handleUserChanges()` for
the following reasons:
* Fix a race condition: Before this change the client would stop
processing incoming messages and stop sending changes to the
server if a `NEW_CHANGES` message arrived while the user was
composing a character and waiting for an `ACCEPT_COMMIT` message.
* Improve readability: The `handleUserChanges()` function is for
handling changes from the local user, not for handling changes
from other users.
* Simplify the code.
2021-03-30 16:42:53 -04:00
Richard Hansen
e99fe88537
collab_client: Use Date.now()
instead of casting a Date object
...
Also rename the `t` variable to `now` to improve readability.
2021-03-30 16:42:53 -04:00
Richard Hansen
5c445eac21
collab_client: Convert state
var to committing
bool
2021-03-30 16:42:53 -04:00
Richard Hansen
3ee6b5eb2b
collab_client: Delete unused caughtErrors
2021-03-30 16:42:53 -04:00
Richard Hansen
81b9a2544d
collab_client: Factor out duplicate ACCEPT_COMMIT
code
2021-03-30 16:42:53 -04:00
snyk-bot
dd09a3f12b
fix: src/package.json & src/package-lock.json to reduce vulnerabilities
...
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-UNDERSCORE-1080984
2021-03-30 18:26:32 +02:00
Richard Hansen
b9753dcc71
Changeset: Return a new op object by default when iterating
...
Reusing the same op object for each iteration can result in very weird
behaviors because previously yielded op objects will get a surprise
mutation.
It is unclear why the code was written to reuse the same object. There
was no comment, nor is there a commit message providing rationale (it
has behaved this way since the very first commit). Perhaps the objects
were reused to improve performance (fewer object allocations that need
to be garbage collected). I do expect this change to reduce
performance somewhat, but not enough to warrant reverting this commit.
2021-03-29 18:42:55 -04:00
Richard Hansen
718da6fc1b
tests: New helper.aNewPad()
(promisified newPad()
)
2021-03-29 18:40:05 -04:00
Richard Hansen
ec76a6548f
tests: Make the helper.newPad()
callback optional
2021-03-29 18:40:05 -04:00
Richard Hansen
27b35699ea
tests: Fix helper.newPad()
retries
...
* Pass retry count in options object so that each pad has its own
retry count.
* Delete useless `origPadName` variable.
2021-03-29 18:40:05 -04:00
translatewiki.net
eac5a52690
Localisation updates from https://translatewiki.net .
2021-03-29 17:55:09 +02:00
John McLear
b80f5bdae8
bugfix/tests/scaling: Socket query test fix ( #4974 )
...
fix socketio test where res.req is not available.
2021-03-24 21:03:48 +00:00
John McLear
2b98b930d7
scaling: include padId in socketio query string
2021-03-24 16:07:11 +00:00
webzwo0i
3ae6b01518
bump version
2021-03-22 16:17:18 +01:00
webzwo0i
65b644498f
bump require-kernel dependency
2021-03-21 18:30:39 +00:00
John McLear
a8f9c2b6a7
fix: upgrade express-rate-limit from 5.2.5 to 5.2.6 ( #4938 )
...
Snyk has created this PR to upgrade express-rate-limit from 5.2.5 to 5.2.6.
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=upgrade-pr
Co-authored-by: snyk-bot <snyk-bot@snyk.io>
2021-03-20 17:45:00 -04:00
Richard Hansen
eb3cff5b3a
LibreOffice: Remove unnecessary callbackification
...
`async.queue` will do the right thing if passed an `async` function.
2021-03-20 20:29:55 +00:00
Richard Hansen
0233399fdf
Abiword: Avoid calling stdoutCallback
multiple times
2021-03-20 20:29:55 +00:00
webzwo0i
c208d50c4a
add version string to iframe_editor.css
2021-03-20 16:42:08 +00:00
webzwo0i
b250ceaae7
add test for wrong clientHeight
2021-03-20 16:41:15 +00:00
Richard Hansen
3ad1d0a74f
cssmanager: Refactor CSS manager creation to avoid race condition
...
Safari takes a while to initialize `document.styleSheets`, which
results in a race condition when loading the pad. Avoid the race
condition by accessing the CSSStyleSheet objects directly from the
HTMLStyleElement DOM objects.
2021-03-20 01:07:16 +00:00
Richard Hansen
e2bfe2fd10
pad_editor: Promisify init()
2021-03-20 01:07:16 +00:00
Richard Hansen
81e36cf3c7
Ace2Inner: Promisify init()
2021-03-20 01:07:16 +00:00
Richard Hansen
742a7cd430
cssmanager: Throw if no matching style sheet is found
...
This avoids a later null dereference when the stack trace isn't as
useful.
2021-03-20 01:07:16 +00:00
Richard Hansen
5b05ee79ff
cssmanager: Simplify iteration over style sheets
2021-03-20 01:07:16 +00:00
Richard Hansen
cb9f6d6776
ace: Use iframe srcdoc
property to refine frame load logic
...
This seems to fix "null is not an object (evaluating
'browserSheet.insertRule')" errors on Safari.
2021-03-19 17:06:58 +01:00
Richard Hansen
b4e1e935e2
LibreOffice: Log conversion errors
2021-03-18 09:02:28 +00:00
Richard Hansen
b2c0837cf5
import/export: Promisify Abiword and LibreOffice conversion
2021-03-18 09:02:28 +00:00
Richard Hansen
b321267e66
LibreOffice: Use the async-provided callback to signal errors
...
This avoids having two callbacks, which improves readability.
2021-03-18 09:02:28 +00:00
Richard Hansen
b914a46a87
LibreOffice: Use async.series
to properly handle conversion errors
2021-03-18 09:02:28 +00:00
Richard Hansen
a6d5611c80
LibreOffice: Use consistent intermediate filename
2021-03-18 09:02:28 +00:00
Richard Hansen
ad0be9d1d2
LibreOffice: Add missing fileExtension
property on intermediate step
2021-03-18 09:02:28 +00:00
Richard Hansen
5eab3a123d
Abiword: Use the async-provided callback to signal errors
...
This avoids having two callbacks, which improves readability.
2021-03-18 09:02:28 +00:00
Richard Hansen
8d32463915
Abiword: Fix logging of conversion failure
2021-03-18 09:02:28 +00:00
Richard Hansen
f015f59cfc
Abiword: Reduce log spam
2021-03-18 09:02:28 +00:00
Richard Hansen
259ee4a987
Abiword: Don't call the callback if null
2021-03-18 09:02:28 +00:00
Richard Hansen
83f39289aa
import/export: On export error return 500 instead of crashing
2021-03-18 09:02:28 +00:00
Richard Hansen
3a11e97758
import/export: Spelling fix: "convertor" -> "converter"
2021-03-18 09:02:28 +00:00
Richard Hansen
50fdadab7d
ExportHandler: Pass the error unmodified
2021-03-18 09:02:28 +00:00
Richard Hansen
216aecd433
import/export: Use Error objects for errors, not strings
2021-03-18 09:02:28 +00:00
Richard Hansen
59c167e31b
ExportHandler: Replace unnecessary exception with return
2021-03-18 09:02:28 +00:00
Richard Hansen
785b7d2b44
Abiword: Reset stdout buffer when starting abiword
2021-03-18 09:02:28 +00:00
Richard Hansen
b6c2586920
import/export: Delete unnecessary comments
2021-03-18 09:02:28 +00:00
Richard Hansen
fe1eceb6b5
tests: Use assert
to simplify import/export tests
2021-03-18 09:02:28 +00:00
Richard Hansen
98c42d6076
tests: Promisify import/export tests
2021-03-18 09:02:28 +00:00
Richard Hansen
ff50682412
tests: Increase import/export test timeouts
2021-03-18 09:02:28 +00:00
translatewiki.net
5c9514f926
Localisation updates from https://translatewiki.net .
2021-03-15 19:03:09 +01:00
Richard Hansen
c5a37d7a92
deps: Bump ueberdb2 to get MySQL improvements
2021-03-13 19:51:43 +00:00
webzwo0i
6f591b5c77
add class pad to timeslider to fix height issue ( #4941 )
2021-03-12 21:16:22 -05:00
webzwo0i
8e2a21ec84
arrow functions dont have arguments ( #4943 )
2021-03-12 14:25:14 -05:00
Richard Hansen
0b9bf4a78e
deps: Update ueberdb2 to get updated metrics
2021-03-11 20:21:38 +00:00
Richard Hansen
9b82d1d37d
server: Log stats (metrics) on fatal error
...
This might help users troubleshoot rare crashes.
2021-03-11 07:38:44 +00:00
Richard Hansen
d2610284ad
bin/safeRun.sh: Fix try: not found
bug
...
This fixes a copy+paste bug introduced in commit
8b28e00784
(v1.8.8).
2021-03-10 02:54:20 -05:00
Richard Hansen
fcf43a7089
stats: Expose ueberDB metrics
2021-03-08 22:32:39 +00:00
Richard Hansen
71dfa7070d
deps: Update ueberdb2 to get metrics
2021-03-08 22:32:39 +00:00
Richard Hansen
926f0fcefb
CSS: Increase size of contenteditable area
2021-03-08 14:39:18 +00:00
Richard Hansen
404486069c
ace: Build the outer and inner iframes programmatically
...
This makes the code easier to read and it silences Chrome's
`document.write()` warning:
https://developers.google.com/web/updates/2016/08/removing-document-write
This is a redo of commit a17f9bf3cf
,
which was reverted in commit 912f0f195f
due to a CSS bug.
2021-03-05 19:31:59 +00:00
webzwo0i
4ca989a255
sessions: add more endpoints that do not need a session ( #4921 )
...
* add more endpoints that do not need a session
* Update src/node/hooks/express/webaccess.js
Co-authored-by: Richard Hansen <rhansen@rhansen.org>
* Update src/node/hooks/express/webaccess.js
Co-authored-by: Richard Hansen <rhansen@rhansen.org>
Co-authored-by: John McLear <john@mclear.co.uk>
Co-authored-by: Richard Hansen <rhansen@rhansen.org>
2021-03-05 07:48:33 +00:00
Richard Hansen
60da2373a6
CSS: Add comment to no-skin/pad.css
to silence warning
...
Firefox prints "Style sheet could not be loaded" if the file is empty.
2021-03-05 07:45:48 +00:00
Richard Hansen
5546cc5e7b
CSS: Delete bogus <link>
tag
...
Browsers report an error with this tag. Strangely, this tag has
existed since Etherpad's very first commit.
2021-03-05 07:45:48 +00:00
Richard Hansen
470f40d7db
CSS: Use auto
for iframe body height
...
This change makes no visual difference right now, but will matter (for
reasons I don't understand) once we change `ace.js` to build the
iframes by constructing elements in JavaScript (vs. writing HTML).
2021-03-05 07:45:48 +00:00
Richard Hansen
48e1d1c23f
CSS: Fix class name for outer iframe <html>
tag
...
* Add the class "pad" to the `<html>` tag in `pad.html` (the outer
iframe's parent).
* Change the CSS selector that refers to the `<html>` tag in
`pad.html` from `html:not(.inner-editor)` to `html.pad`.
* Change the class name of the outer iframe's `<html>` tag from
"inner-editor" to "outer-editor".
* Update CSS rules to use the new class name.
2021-03-05 07:45:48 +00:00
John McLear
de394f72a6
bump version
2021-03-05 07:28:44 +00:00
John McLear
5ac90ab30f
tests: Allow time for minification to complete
...
Minification happens after the initial visit and request to pages.
2021-03-05 07:11:42 +00:00
snyk-bot
d0e257d8df
fix: upgrade resolve from 1.19.0 to 1.20.0
...
Snyk has created this PR to upgrade resolve from 1.19.0 to 1.20.0.
See this package in npm:
https://www.npmjs.com/package/resolve
See this project in Snyk:
https://app.snyk.io/org/johnmclear/project/d9a12bfb-7ccd-443f-9e22-f30d339cc8c5?utm_source=github&utm_medium=upgrade-pr
2021-03-05 06:37:45 +00:00
translatewiki.net
21cdf0edaa
Localisation updates from https://translatewiki.net .
2021-03-04 13:58:49 +01:00
Richard Hansen
912f0f195f
Revert "ace: Build the outer and inner iframes programmatically"
...
This reverts commit a17f9bf3cf
, which
caused a mysterious bug with the line numbers. Revert to avoid
blocking a new release while I figure out the bug.
2021-03-04 02:05:54 +00:00
Richard Hansen
0aad3b74da
pluginfw: Improve rendering of hook list
...
There are two main benefits:
* HTML is no longer printed in the startup debug logs.
* `require()` is no longer called on client-side files. This
eliminates "Failed to load <file> for <plugin>: ReferenceError:
window is not defined" errors when users visit
`/admin/plugins/info`.
2021-03-03 11:19:37 +00:00
Richard Hansen
7e698baa80
pluginfw: Improve hook function load error message
2021-03-03 11:19:37 +00:00
John McLear
f95b09e0b6
Import: Import don't show warnings for supported elements
2021-03-02 17:14:47 +00:00
snyk-bot
2fd06535b7
fix: upgrade express-rate-limit from 5.2.3 to 5.2.5
...
Snyk has created this PR to upgrade express-rate-limit from 5.2.3 to 5.2.5.
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=upgrade-pr
2021-03-02 06:52:15 +00:00
Richard Hansen
797ffa5600
Minify: Avoid path.relative()
...
Constructing a relative pathname on Windows is problematic because the
two absolute pathnames might be on different drives (or UNC paths).
Use `path.resolve()` instead of `path.join()` where appropriate to
avoid the need to construct a relative path.
2021-03-02 06:20:10 +00:00
Richard Hansen
8971166c58
lint: Set up Cypress config and fix issues
2021-03-02 05:49:48 +00:00
Richard Hansen
b0862cd030
ace: Delete all $$INCLUDE_CSS
logic
...
The intention of the deleted code was to reduce the number of fetches,
but it only saved a single fetch due to implementation flaws. The
right way to reduce the number of fetches is to use a bundling
technology such as webpack, and this change makes it easier to do so.
2021-03-01 14:32:33 +00:00
Richard Hansen
66d3ac3783
ace: Debug logging
2021-03-01 14:32:33 +00:00
Richard Hansen
a17f9bf3cf
ace: Build the outer and inner iframes programmatically
...
This makes the code easier to read and it silences Chrome's
`document.write()` warning:
https://developers.google.com/web/updates/2016/08/removing-document-write
2021-03-01 14:32:33 +00:00
Richard Hansen
c696732838
ace: Asyncify Ace2Editor.init()
2021-03-01 14:32:33 +00:00
Richard Hansen
159fd5bdeb
ace: Simplify passing of editorInfo
2021-03-01 14:32:33 +00:00
Richard Hansen
e57829183d
ace: Pass objects to Ace2Inner via function args
2021-03-01 14:32:33 +00:00
Richard Hansen
6fe0154129
ace: Use absolute URLs when building iframes
...
This isn't strictly necessary right now, but will become
necessary (due to a Safari quirk) when we change to building the
iframes programmatically (vs. the current `document.write()`
approach).
2021-03-01 14:32:33 +00:00
Richard Hansen
9cfc2fb801
ace: Simplify the aceEditorCSS
hook map function
2021-03-01 14:32:33 +00:00
Richard Hansen
94c221586c
ace: Factor out duplicated $$INCLUDE_CSS
code
2021-03-01 14:32:33 +00:00
Richard Hansen
54df7f3728
ace: Delete unused clientVars.disableCustomScriptsAndStyles
2021-03-01 14:32:33 +00:00
Richard Hansen
d84447290e
ace: Delete unnecessary IIFE
2021-03-01 14:32:33 +00:00
Richard Hansen
3a311d2182
ace: Lint and simplify script strings
2021-03-01 14:32:33 +00:00
Richard Hansen
c9b1f17f25
ace: Format script strings for readability
2021-03-01 14:32:33 +00:00
Richard Hansen
b3416c4eeb
ace: Delete ignored class attribute
2021-03-01 14:32:33 +00:00
Richard Hansen
c9c8b27854
ace: Delete unused Ace2Editor.getFrame()
method
2021-03-01 14:32:33 +00:00
John McLear
64e9e7fcda
tests: Frontend test Windows ZIP ( #4894 )
...
* tests: Frontend test Windows ZIP
This PR introduces Frontend testing within Github actions!
We're depending a lot on saucelabs recently and that's fine but sometimes we just want to quickly do a frontend simple test on a weird environment (IE windows build) so this PR solves that problem.
Things to note.
It still builds the windows .zip if the cypress tests fail.
It does not add any heavy deps to Etherpad as cypress must be installed in CI.
Cypress is responsible for running the Etherpad instance.
It's up to us how much we use this or not, I know it introduces a bunch of technical debt but I tried to keep that a minimum by compartmentalizing things and documenting where required.
* Update .github/workflows/windows-zip.yml
Co-authored-by: Richard Hansen <rhansen@rhansen.org>
* remove timeouts
* Move folder structure up a level
* Update windows-zip.yml
* Update test.js
Co-authored-by: Richard Hansen <rhansen@rhansen.org>
2021-03-01 14:31:55 +00:00
John McLear
b3d7f5d63e
pluginTools: stalePlugins.js
...
Outputs a list of pluginnames and email address for maintainers to contact. Useful for me to bump folks to maintain there stuff and stop it getting stale :)
2021-02-28 16:05:53 +00:00
John McLear
35ae08ca77
tests: run a long(1+ hr) load test
2021-02-28 16:05:16 +00:00
John McLear
d7fd3934de
Merge branch 'develop' of github.com:ether/etherpad-lite into develop
2021-02-28 15:51:51 +00:00
John McLear
237bab7e3e
branding: change etherpad lite to etherpad in Pad settings modal
2021-02-28 15:51:39 +00:00
Richard Hansen
99b3918f2c
Minify: Compatibility for all vendors/*.js
files
2021-02-28 11:12:30 +00:00
Richard Hansen
3667f2ca0e
Ace2Inner: Fix missing spread operator on args
...
This fixes a bug that was introduced in commit
c38c34bef4
.
2021-02-28 08:39:47 +00:00
Richard Hansen
16e6496eb4
deps: Update ueberdb2 to fix dirty DB bug
2021-02-28 08:03:20 +00:00
webzwo0i
377883db98
fix pads with spaces ( #4884 )
2021-02-27 22:34:43 -05:00
John McLear
37769cc9ff
bump version
2021-02-27 16:46:22 +00:00
webzwo0i
348d08c79e
ensure version string is attached for inner frame resources
2021-02-27 16:28:12 +00:00
webzwo0i
01dd9f5440
speed up page load
2021-02-27 16:28:12 +00:00
John McLear
ba2004cb2d
nice-select restore to working
...
I accidently committed a breaking change in 1b8cd0747d/src/static/js/vendors/nice-select.js
2021-02-27 16:23:39 +00:00
Richard Hansen
3a34db84e6
tests: Refine CachingMiddleware tests
...
* Lint functions
* Fix assignment of `settings.minify`
* Use a for loop to avoid copied code for the `minify = true` and
`minify = false` cases
* Put each resource fetch into its own test case
* Check for 200 status code
* Use `.expect()` to check header value
* Use `.expect(fn)` instead of `.then(fn)`
2021-02-27 14:03:09 +01:00
Richard Hansen
f86df5322e
CachingMiddleware: Asyncify
2021-02-27 14:03:09 +01:00
Richard Hansen
0284d49522
CachingMiddleware: Switch to ES6 class syntax
2021-02-27 14:03:09 +01:00
Richard Hansen
80af66543a
lint: Move up respond()
in caching_middleware.js
2021-02-27 14:03:09 +01:00
Richard Hansen
7ab3ee2121
lint: src/node/utils/caching_middleware.js
2021-02-27 14:03:09 +01:00
Richard Hansen
392d9dcfde
PadMessageHandler: Fix fetching of socket.io Sockets for a pad
2021-02-27 08:46:49 +00:00
Richard Hansen
9cd67cd990
PadMessageHandler: Delete unnecessary use of Promise.then()
2021-02-27 08:46:49 +00:00
webzwo0i
15dba7d886
move underscore to its old place and remove unnecessary packages ( #4876 )
2021-02-27 00:10:53 -05:00
John McLear
c0ec28f781
reversecompat: underscore
...
Backward compatibility for plugins that were written when underscore lived at src/static/js/underscore.js.
2021-02-26 11:03:19 +00:00
John McLear
11f3b7232d
bump version
2021-02-25 18:26:17 +00:00
webzwo0i
efd211bbc5
remove useless semicolon
2021-02-25 16:59:06 +00:00
webzwo0i
fa29858a4e
avoid manually including require-kernel in ace.js
2021-02-25 16:59:06 +00:00
translatewiki.net
12c23d468c
Localisation updates from https://translatewiki.net .
2021-02-25 16:17:56 +01:00
webzwo0i
a77994ab6e
avoid pad_utils in pad.html
2021-02-25 12:46:04 +00:00
Richard Hansen
ba5d8369bf
Minify: Consistently use path.join()
to build pathnames
...
This defends against extraneous or missing slashes, and it might
improve the experience on Windows.
2021-02-25 10:14:48 +00:00
Richard Hansen
2d3469e3ee
Minify: Improve pathname sanitization
...
For context, see:
https://nvd.nist.gov/vuln/detail/CVE-2015-3297
9d4e5f6e35
https://github.com/ether/etherpad-lite/issues/2614
2021-02-25 10:14:48 +00:00
Richard Hansen
0cce4ae536
Minify: Also serve jquery.js
from old path for compatibility
2021-02-25 10:14:48 +00:00
Richard Hansen
f845f21ba5
/static/tests.html: Fix jquery.js
path
...
See commit 1b8cd0747d
.
2021-02-25 10:14:48 +00:00
John McLear
4a65acf417
docs: fix links from TOC to Headings and improve appearance of docs (a little) ( #4866 )
...
* docs: fix links from TOC to Headings
* docs: Styling
Just a little modernisation of the appearance of the documentation
* Update src/bin/doc/package.json
Co-authored-by: Richard Hansen <rhansen@rhansen.org>
Co-authored-by: Richard Hansen <rhansen@rhansen.org>
2021-02-25 09:01:45 +00:00
Richard Hansen
41ec7fe3fc
deps: Update ueberdb2 to work around dirty DB bug
2021-02-25 00:02:14 +00:00
Richard Hansen
b2ffd8c95c
lint: Update ESLint dependencies
2021-02-24 09:07:24 +00:00
Richard Hansen
dabff9be77
run_cmd: Fix PATH debug log message
2021-02-23 21:41:32 -05:00
John McLear
c7511b2f2e
tests: change timeout on bold and embed_value test to support Win10 FF84
2021-02-23 19:53:03 +00:00
John McLear
72d9c8fef9
tests: Use more modern relevant Firefox version in Sauce Labs
...
Firefox 52 has issues with rendering SVG animations which caused random tests to fail. Less than 2% of total Firefox users now use Firefox 52 so we're safe to drop testing for it.
2021-02-23 19:53:03 +00:00
John McLear
8364546e70
tests: fix importexport tests
...
The testing approach was redone to fix numerous issues:
* Even if the tests had been working, none of them would have caught
https://github.com/ether/etherpad-lite/issues/4808 because they
didn't exercise the client-side import logic. Now they do.
* Follow-up logic was not in the `helper.waitFor()` callback like it
should have been. Now the code uses `async` and `await` to ensure
proper execution order.
* All `$.ajax()` calls used `async: false`. Now they're properly
asynchronous.
* The `helper.waitFor()` condition callbacks threw instead of
returning false.
* The string comparisons didn't allow for different attribute
order (e.g., `<ol start="1" class="list-number1">` vs. `<ol
class="list-number1" start="1">`). Now `Node.isEqualNode()` is
used to reduce fragility. (`Node.isEqualNode()` is not perfect, so
the tests are still a bit fragile: If class names or style strings
are in a different order then `Node.isEqualNode()` will return
false even if the nodes are semantically equivalent.)
Co-authored-by: Richard Hansen <rhansen@rhansen.org>
2021-02-22 18:20:24 -05:00
Richard Hansen
3ca1589885
Revert "tests: fix importexport frontend tests ( #4827 )"
...
I'm going to split this into separate commits.
This reverts commit 9b03f8f6ab
.
2021-02-22 18:19:48 -05:00
translatewiki.net
f246d1b476
Localisation updates from https://translatewiki.net .
2021-02-22 16:37:36 +01:00
John McLear
0ac33d2085
tests: timeslider_follow increase test timeout for firefox.
2021-02-22 14:30:19 +00:00
Richard Hansen
1908bedabe
caretPosition: Clarify comment in getPosition()
2021-02-22 11:25:45 +00:00
Richard Hansen
91955609af
caretPosition: Delete pointless logic in getPosition()
...
The `line` variable is unconditionally overwritten later, and the
function calls do not have side effects, so it is safe to delete this
logic.
2021-02-22 11:25:45 +00:00
Richard Hansen
1dbdaf93d7
caretPosition: Delete no-op Range.detach()
call
2021-02-22 11:25:45 +00:00
Richard Hansen
5e731dfbfd
caretPosition: Delete unused var in getPosition()
2021-02-22 11:25:45 +00:00
Richard Hansen
02fd0048bf
caretPosition: Invert condition in getPosition()
for readability
2021-02-22 11:25:45 +00:00
Richard Hansen
773959ec57
CI: Delete old Sauce Connect logic
2021-02-22 11:25:21 +00:00
John McLear
9b03f8f6ab
tests: fix importexport frontend tests ( #4827 )
...
* CI: Leave log level at INFO for frontend tests
* CI: Disable frontend admin tests for non-admin workflow
* CI: Disable import/export rate limiting for frontend tests
* tests: fix importexport tests
The testing approach was redone to fix numerous issues:
* Even if the tests had been working, none of them would have caught
https://github.com/ether/etherpad-lite/issues/4808 because they
didn't exercise the client-side import logic. Now they do.
* Follow-up logic was not in the `helper.waitFor()` callback like it
should have been. Now the code uses `async` and `await` to ensure
proper execution order.
* All `$.ajax()` calls used `async: false`. Now they're properly
asynchronous.
* The `helper.waitFor()` condition callbacks threw instead of
returning false.
* The string comparisons didn't allow for different attribute
order (e.g., `<ol start="1" class="list-number1">` vs. `<ol
class="list-number1" start="1">`). Now `Node.isEqualNode()` is
used to reduce fragility. (`Node.isEqualNode()` is not perfect, so
the tests are still a bit fragile: If class names or style strings
are in a different order then `Node.isEqualNode()` will return
false even if the nodes are semantically equivalent.)
Co-authored-by: Richard Hansen <rhansen@rhansen.org>
Co-authored-by: Richard Hansen <rhansen@rhansen.org>
2021-02-22 10:40:38 +00:00
Richard Hansen
d9c2778d17
plugins: Better fix for LGTM security warning
2021-02-22 09:43:20 +00:00
John McLear
0f16e518ff
api: drop JSONP ( #4835 )
...
* api: drop JSONP
* docs: drop JSONP
* tests: drop JSONP
* api: remove isValidJSONPName require
2021-02-22 09:10:02 +00:00
Richard Hansen
85231cb774
tests: More descriptive Sauce Labs name
2021-02-22 03:36:12 -05:00
Richard Hansen
6198e92706
tests: Pass --legacy-peer-deps
flag to work around npm v7 bug
...
This flag is unknown to npm v6, but npm v6 silently ignores unknown
flags.
2021-02-22 03:36:12 -05:00
webzwo0i
14a9749b75
tests: add assert helper for supporting node 10.x
2021-02-22 03:36:12 -05:00
John McLear
ce83181ac3
Lgtm bugfixes ( #4838 )
...
* code tidy up: always evaluates
* tidy up: is always true
* tidy up: remove unused code
* always true/false variables
* unused variable
* tidy up: remove unused code in caretPosition.js
* for squash: Revert "tidy up: remove unused code in caretPosition.js"
The `if` condition was previously always true, so the body should be
preserved. If the body is preserved, other logic can be deleted. I
opened PR #4845 to clean it all up.
This reverts commit 75b03e5a7d
.
* for squash: simplify
* for squash: Explain that the getter is used for its side effects
It's very weird to call a getter without using its return value. Add a
comment explaining why this is done so that the reader doesn't get
confused.
* for squash: Revert "tidy up: remove unused code"
The exception test was the purpose of the code.
This reverts commit 85153b1676
.
* for squash: Log the tsort results
Co-authored-by: Richard Hansen <rhansen@rhansen.org>
2021-02-22 08:26:35 +00:00
John McLear
40d7480d5b
lint: padaccess.js
2021-02-21 21:09:02 -05:00
John McLear
029729a386
lint: Settings.js
2021-02-21 21:09:02 -05:00
John McLear
435562299f
lint: NodeVersion.js
2021-02-21 21:09:02 -05:00
John McLear
7352dc7571
lint: ImportEtherpad.js
2021-02-21 21:09:02 -05:00
John McLear
613c7d8545
lint: ExportTxt.js
2021-02-21 21:09:02 -05:00
John McLear
d2359be08b
lint: ExportHtml.js
2021-02-21 21:09:02 -05:00
John McLear
5718c8b360
lint: AbsolutePaths.js
2021-02-21 21:09:02 -05:00
John McLear
b1614f0592
lint: i18n.js
...
Partial, still 3 more to do that are slightly higher hanging that can get done.
2021-02-21 21:09:02 -05:00
John McLear
586af5e16e
lint: padurlsanitize.js
2021-02-21 21:06:38 -05:00
John McLear
86c938cae2
lint: openapi.js
2021-02-21 21:06:38 -05:00
John McLear
25d4faddd9
lint: SocketIORouter.js
2021-02-21 21:06:38 -05:00
John McLear
5201cb717f
lint: PadMessageHandler.js
2021-02-21 21:06:38 -05:00
John McLear
d67f170c46
lint: eejs/index.js
2021-02-21 21:06:38 -05:00
John McLear
3ed4ac649c
lint: PadManager.js
2021-02-21 21:02:59 -05:00
John McLear
6b6201b448
null link on plugins and noopener / noreferrer
...
Resolves a (non) security issue brought up by LGTM but I think the noopener and norefferer are good shouts
2021-02-21 19:30:39 +00:00
John McLear
2c763fb4d1
Delete dirty-db-cleaner.py
2021-02-21 18:07:20 +00:00
John McLear
543e94fd4a
timeslider: slight improvement on code quality ( #4836 )
...
This is an interim patch, ultimately the JS needs to be thrown out of the HTML...
2021-02-21 17:59:15 +00:00
John McLear
1b8cd0747d
Move vendor libraries to /vendors folder and exclude from LGTM
2021-02-21 15:07:39 +00:00
webzwo0i
0bb3e65020
fix for caching plugin-definitions
2021-02-21 14:31:15 +00:00
John McLear
086b59b30d
editor: UI polish - Etherpad brand as reconnect & loading animation
2021-02-21 13:24:51 +00:00
John McLear
bb14775820
drop apiRoot object from build
2021-02-21 11:08:07 +00:00
John McLear
227370547d
update openapi-backend
2021-02-21 11:08:07 +00:00
John McLear
ee2b32281c
pluginfw: Warn plugins on missing plugin ( #4826 )
...
* pluginfw: Warn plugins on missing plugin
Add functionality to console.warn when a plugin is missing. This will help admins know when people are trying to use plugins that are missing. Resolves https://github.com/ether/etherpad-lite/issues/4730
* pluginfw: importing .etherpad can notify admins of missing plugins
Extending .etherpad imports to notify admins if a missing plugin is present
* Update ImportEtherpad.js
2021-02-21 11:07:13 +00:00
John McLear
77b2f372ab
lint: pad_userlist.js arrow functions
...
This probably needs a good rewrite/refactor to remove self.
2021-02-21 11:05:25 +00:00
John McLear
2511eed472
lint: Changeset.js more literal conditionals
2021-02-21 11:05:25 +00:00
John McLear
8cbd5222dd
lint: pad_userlist.js - remove require browser
2021-02-21 11:05:25 +00:00
John McLear
73b3a2dc54
lint: AttributeManager.js use ES6 method for hasAttrib
2021-02-21 11:05:25 +00:00
John McLear
f86578ffc3
lint: changesettracker.js var > const/let and other easy fixes
2021-02-21 11:05:25 +00:00
John McLear
3635cb6ca6
lint: changesettracker.js long-lines
2021-02-21 11:05:25 +00:00
John McLear
f5f4e3a6d1
lint: changesettracker.js arrow funcs
2021-02-21 11:05:25 +00:00
John McLear
d4b6cbc897
line: broadcast.js
2021-02-21 11:05:25 +00:00
John McLear
3b5b996d84
lint: Changeset no var
2021-02-21 11:05:25 +00:00
John McLear
0b78ad2f90
lint: Changeset.js curly braces in correct position
2021-02-21 11:05:25 +00:00
John McLear
23d7544763
lint: Changeset.js max-len
2021-02-21 11:05:25 +00:00
John McLear
98a0e76a20
lint: Changeset.js opcode eqeqeq checks
2021-02-21 11:05:25 +00:00
John McLear
d91f2b5b07
lint: Changeset.js additional arrow functions
2021-02-21 11:05:25 +00:00
John McLear
acccf56724
lint: Changeset.js arrow-functions
2021-02-21 11:05:25 +00:00
John McLear
cf37f52093
lint: collab_client.js
2021-02-21 11:05:25 +00:00
John McLear
b029edb931
lint: index.js
2021-02-21 11:05:25 +00:00
John McLear
01dd004054
lint: ChangesetUtils
2021-02-21 11:05:25 +00:00
John McLear
7c51446040
lint: use strict
2021-02-21 11:05:25 +00:00
John McLear
c64b1b8ead
lint: skins
2021-02-21 11:05:25 +00:00
Sebastian Castro
4ca2d7ea3a
include lineHeight property in sidebar elements ( #4831 )
...
This also makes the full line number element clickable to ensure a positive UX for the ``?lineNumber`` URL endpoint. It also makes it more obvious that a click action can happen based on the hover.
Make line numbers stick to baseline of first line of wrapped content and editor lines with increased line hieght.
Make it compatible with ep_author_neat
2021-02-20 13:24:17 +00:00
snyk-bot
d5997ddf05
fix: upgrade log4js from 0.6.35 to 0.6.38
...
Snyk has created this PR to upgrade log4js from 0.6.35 to 0.6.38.
See this package in npm:
https://www.npmjs.com/package/log4js
See this project in Snyk:
https://app.snyk.io/org/johnmclear/project/d9a12bfb-7ccd-443f-9e22-f30d339cc8c5?utm_source=github&utm_medium=upgrade-pr
2021-02-18 21:13:08 +00:00
Richard Hansen
6163339c0d
plugins: Always install plugins with --no-save
...
The npm CLI can get confused if `package.json` or `package-lock.json`
exist.
2021-02-18 19:18:59 +00:00
Richard Hansen
b3b5af3c3c
plugins: Use npm
CLI to install/uninstall plugins
...
Using npm as a module has long been discouraged and will stop working
with npm v7.
2021-02-18 19:18:59 +00:00
Richard Hansen
9633b98f92
tests: Delete unnecessary use of npm
package
2021-02-18 19:18:59 +00:00
Richard Hansen
1cfbf88f7c
run_cmd: Enhance with ability to return stdout as string
2021-02-18 19:18:59 +00:00
Richard Hansen
d8bb5aa009
plugins: Eliminate unnecessary run_npm.js
...
I had anticipated more shared logic than we actually need (the
abstraction in `run_npm.js` is YAGNI).
2021-02-18 19:18:59 +00:00
Richard Hansen
426c025127
run_cmd: Log to Etherpad logs by default
2021-02-18 19:18:59 +00:00
Richard Hansen
689a75b381
plugins: Pass --no-production
instead of setting NODE_ENV=development
2021-02-18 19:18:59 +00:00
Richard Hansen
dcf7891316
plugins: Improve logging of plugin events
...
This will make it easier to troubleshoot plugin and npm issues.
2021-02-18 19:18:59 +00:00
Richard Hansen
4253a2ea8f
plugins: Move hook call and plugin update out of try block
...
Exceptions thrown by these function calls are serious and should crash
Etherpad.
2021-02-18 19:18:59 +00:00
Richard Hansen
a8479e4a0e
lint: Fix some ESLint errors in pluginfw
2021-02-18 19:18:59 +00:00
Richard Hansen
a45e85a730
Use settings.root
to anchor pathnames
2021-02-18 19:18:59 +00:00
Richard Hansen
f868788417
Remove unnecessary path.normalize()
calls
...
`path.join()` already normalizes.
2021-02-18 19:18:59 +00:00
Richard Hansen
84c1d74f8b
server: Fix Gate constructor
...
The ECMAScript spec for `.then()` requires Promise subclass
constructors to take an executor.
2021-02-18 19:18:34 +00:00
Richard Hansen
4c6cb53d18
server: Improve log messages when exiting
2021-02-18 19:18:34 +00:00
snyk-bot
449b03d7e8
fix: upgrade unorm from 1.4.1 to 1.6.0
...
Snyk has created this PR to upgrade unorm from 1.4.1 to 1.6.0.
See this package in npm:
https://www.npmjs.com/package/unorm
See this project in Snyk:
https://app.snyk.io/org/johnmclear/project/d9a12bfb-7ccd-443f-9e22-f30d339cc8c5?utm_source=github&utm_medium=upgrade-pr
2021-02-18 19:18:19 +00:00
John McLear
9fb2c640b9
tests: Microsoft Windows Server CI ( #4791 )
...
Due to a recent release that wasn't functioning properly this CI will help us catch the majority of Microsoft Node Quirks before they make it into a release.
2021-02-18 18:49:43 +00:00
John McLear
9f317f0798
bump version
2021-02-18 14:37:02 +00:00
snyk-bot
19bf97bd2d
fix: upgrade formidable from 1.2.1 to 1.2.2
...
Snyk has created this PR to upgrade formidable from 1.2.1 to 1.2.2.
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=upgrade-pr
2021-02-18 14:02:56 +00:00
snyk-bot
a380fc2abf
fix: upgrade tinycon from 0.0.1 to 0.6.8
...
Snyk has created this PR to upgrade tinycon from 0.0.1 to 0.6.8.
See this package in npm:
https://www.npmjs.com/package/tinycon
See this project in Snyk:
https://app.snyk.io/org/johnmclear/project/d9a12bfb-7ccd-443f-9e22-f30d339cc8c5?utm_source=github&utm_medium=upgrade-pr
2021-02-18 13:45:18 +00:00
snyk-bot
da65057bb1
fix: upgrade etherpad-yajsml from 0.0.2 to 0.0.4
...
Snyk has created this PR to upgrade etherpad-yajsml from 0.0.2 to 0.0.4.
See this package in npm:
https://www.npmjs.com/package/etherpad-yajsml
See this project in Snyk:
https://app.snyk.io/org/johnmclear/project/d9a12bfb-7ccd-443f-9e22-f30d339cc8c5?utm_source=github&utm_medium=upgrade-pr
2021-02-18 04:33:40 -05:00
Richard Hansen
30dbdf29f4
import: Convert arrow function to regular function
...
This fixes a bug introduced in commit
b711ff6acf
. Some time between when that
commit was originally written and when it was merged a round of
linting had converted the function from a regular function to an arrow
function because `this` was never in the body of the function. When I
rebased the commit, which introduced `this` to the body, I didn't
catch the error.
2021-02-18 03:42:56 -05:00
Richard Hansen
fb745374c3
import: Improve error logging
2021-02-18 03:42:41 -05:00
John McLear
29f2cd34f0
build: fix build path for windows
2021-02-17 20:38:10 +00:00
Richard Hansen
8ef0860e8b
tests: Restore runnerBackend.sh
( #4803 )
...
* tests: Restore `runnerBackend.sh`
`runnerBackend.sh` was deleted in commit
7dae5e3db8
but plugins still need it
until their GitHub workflow definitions have been updated.
Co-authored-by: John McLear <john@mclear.co.uk>
2021-02-17 04:35:57 -05:00
Richard Hansen
7dae5e3db8
tests: Use the supertest agent from common.js
for backend tests
2021-02-16 21:13:35 -05:00
Richard Hansen
5a91cf1b49
tests: Disable rate limiting for backend tests
2021-02-16 21:13:35 -05:00
Richard Hansen
4ae8fbc40d
tests: Increase importexportGetPost.js
timeouts
...
The tests were timing out on my machine.
2021-02-16 21:13:35 -05:00
Richard Hansen
3d2f77f75d
lint: Fix ESLint errors in backend tests
2021-02-16 21:13:35 -05:00
Richard Hansen
00d45e3229
Defer rate limiter creation to a hook call
...
This makes it possible to change the rate limiter settings via
`/admin/settings` or by modifying the appropriate settings object and
reinvoking the hook.
2021-02-16 21:13:35 -05:00
Richard Hansen
d7ed71eba0
plugins: Fix "Error: spawn npm ENOENT" error on Windows
...
On Windows, npm should be invoked as `npm.cmd`, not `npm`. Use a
drop-in replacement for `child_process.spawn()` that does the right
thing on Windows.
2021-02-16 22:00:20 +00:00
John McLear
2e92e8e9d0
tests: frontend test button increase timeouts
2021-02-16 16:38:59 +00:00
snyk-bot
b06e47c06e
fix: src/bin/doc/package.json & src/bin/doc/package-lock.json to reduce vulnerabilities
...
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-MARKED-584281
2021-02-16 11:10:46 +00:00
snyk-bot
095edb5043
fix: upgrade express-rate-limit from 5.1.1 to 5.2.3
...
Snyk has created this PR to upgrade express-rate-limit from 5.1.1 to 5.2.3.
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=upgrade-pr
2021-02-16 11:05:49 +00:00
Richard Hansen
c39d0606cf
ace2_inner: Delete special arrow key handling
...
I can't see any reason this would be necessary, and it appears to not
behave as intended (`scroll.scrollWhenPressArrowKeys()` is not invoked
after a continuously held arrow key is finally let up).
2021-02-16 11:03:31 +00:00
Richard Hansen
72704a9fbd
release: Update the doc/latest
symlink
2021-02-16 10:37:07 +00:00