etherpad-lite/src/node/utils
Richard Hansen 346111250e utils: Fix promise creation accounting bug in promises.timesLimit
Before this change, `promises.timesLimit()` created `concurrency - 1`
too many promises. The only users of this function use a concurrency
of 500, so this meant that 499 extra promises were created each time
it was used. The bug didn't affect correctness, but it did result in a
large number of unnecessary database operations whenever a pad was
deleted. This change fixes that bug.

Also:
  * Convert the function to async and have it resolve after all of the
    created promises are resolved.
  * Reject concurrency of 0 (unless total is 0).
  * Document the function.
  * Add tests.
2020-09-21 23:16:32 +01:00
..
Abiword.js Remove trailing whitespaces 2019-04-16 00:34:29 +02:00
AbsolutePaths.js utils/AbsolutePaths.js: do not break when running as a Windows manual install 2019-02-11 03:28:02 +01:00
caching_middleware.js forcing back to last known stable before parent merge 2020-06-07 18:44:01 +00:00
Cli.js remove -k argument as it is currently for both sessionkey and apikey 2018-08-09 19:42:14 +02:00
customError.js customError: rewrite the module using class syntax 2020-04-07 02:03:17 +02:00
ExportEtherpad.js import/export: conversion to Promises/async 2019-01-31 08:55:36 +00:00
ExportHelper.js tests/editor/ul/li/ol/import/export: Introduce contentcollector.js tests & various OL/UL/LI related bugfixes 2020-06-05 20:54:16 +01:00
ExportHtml.js tests and bugfix: test coverage and fix for 4165 - bad HTML export of list items (#4180) 2020-07-19 16:31:13 +01:00
ExportTxt.js export: txt import include correct OL prefix (#4086) 2020-06-06 14:30:13 +01:00
ImportEtherpad.js import/export: conversion to Promises/async 2019-01-31 08:55:36 +00:00
ImportHtml.js tests/editor/ul/li/ol/import/export: Introduce contentcollector.js tests & various OL/UL/LI related bugfixes 2020-06-05 20:54:16 +01:00
LibreOffice.js bugfix/import: doc import bugfix (#4235) 2020-08-30 14:11:12 +01:00
Minify.js plugins: Move plugin definitions to avoid monkey patching 2020-09-08 00:50:24 +01:00
MinifyWorker.js stale code: use terser instead of uglify 2020-06-07 20:09:10 +00:00
NodeVersion.js NodeVersion.js: do not use callbacks, simplify calling style in server.js 2019-02-19 00:46:37 +01:00
padDiff.js padDiff.js: convert to Promises/async 2019-01-31 14:38:56 +00:00
path_exists.js Fixed path check 2016-06-20 00:22:29 +02:00
promises.js utils: Fix promise creation accounting bug in promises.timesLimit 2020-09-21 23:16:32 +01:00
randomstring.js fix randomstring 2014-01-24 01:19:14 +01:00
RemoteAddress.js working handling of setting client ip and anonymizing etc 2014-11-04 23:25:18 +00:00
Settings.js Rate limit Socket IO communication - WIP (#4036) 2020-07-19 22:44:24 +01:00
tar.json packaging: remove pad_docbar.js (#4286) 2020-09-13 19:01:28 +01:00
TidyHtml.js TidyHtml.js: convert to promises 2019-01-31 13:42:41 +00:00
toolbar.js toolbar: don't show the "saved revision" button in timeslider 2020-03-30 01:59:49 +02:00
UpdateCheck.js admin: Add etherpad update check 2020-06-01 17:57:53 +01:00