file in the root directory that references ./src directory as the file
source for `ep_etherpad-lite`.
Remove --legacy-peer-deps and --no-save when invoking npm. There is no
need for them anymore, as we are bumping npm now to v8.
./src/package.json contains all dependencies of Etherpad core
(package name ep_etherpad-lite) as before. The root directory's
package.json file references ep_etherpad-lite and also contains
references to any installed plugins.
Remove npm from package.json as we depend on a recent version now; PATH is still updated as before, so in the future we may install a custom npm version again
lint package-lock: update exception for sqlite3
remove node_modules and package.json during installDeps.sh
update Dockerfile
adapt minify
windows build
Fixed installOnWindows.bat
remove node_modules from git
bump minimal node/npm version in src/bin/functions.sh
add changelog notes
update installdeps
fix dockerfile
docker: test npm prefix set to the etherpad directory
workflow: upgrade-from-latest-release needs to be adapted until next release is out
Revert "docker: test npm prefix set to the etherpad directory"
This reverts commit b856a2488c9dbfb2acf35309cd1ee83016b631ad.
use npm link --bin-links=false to prevent it from copying bin files
temp fix for scripts as they are not installed to bin directory anymore
adjust bin paths in Dockerfile
Dockerfile
add hint for npm link, dockerfile
update dockerfile
Revert "Fixed installOnWindows.bat"
This reverts commit 70d0716bbedc4c0c1043155fcc5d157f01775c61.
try installOnWindows; still TODO: no difference between production and development; no warning like in installDeps.sh before update - it just removes package* and node_modules so admins must be aware of the plugins they want to reinstall later
update installOnWindows.bat
update package-lock.json
Dockerfile
Dockerfile
add file: scheme for lint check - needed as long as we have the plugin compatibility symlinks in ./src/node_modules
fix installOnWindows
upgrade-from-latest-release workflow: adapt cypress installation
src/package.json: test-container fix path to _mocha; maybe revert this in case we enable bin-links again
src/package.json: add test-on-windows script
another try with test-on-windows, without using bin-links
use bin-links on windows
Revert "use bin-links on windows"
This reverts commit f50ec2a9fabe3098d48e8f412b73c01edbe2140e.
invoke mocha binary on windows
run npm i once on windows, to make bin files available - why?
remove supertest on windows production builds
add symlink for mocha
debug
Revert "debug"
This reverts commit 8916a0515ca2897c57ca65fef49fd0b3610d2989.
Revert "add symlink for mocha"
This reverts commit 3c60bef77d2a120d24fce14421fe638598cd849d.
windows workflow: adapt cypress path
frontend admin tests
This makes core and plugin tests consistent with each other, makes it
possible to `require()` relative paths in spec files, simplifies the
code somewhat, and should make it easier to move away from
require-kernel.
Also:
* Wrap plugin tests inside a `describe()` that contains the plugin
name to make it easier to grep for a plugin's tests and for
consistency with core tests.
* Add "<core>" to the core test descriptions to make it easier to
distinguish them from plugin tests.
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.
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.
Normally I would let `eslint --fix` do this for me, but there's a bug
that causes:
const x = function ()
{
// ...
};
to become:
const x = ()
=> {
// ...
};
which ESLint thinks is a syntax error. (It probably is; I don't know
enough about the automatic semicolon insertion rules to be confident.)
Rather than reinvent the wheel, use a well-tested library to parse and
write cookies. This should also help prevent XSS vulnerabilities
because the library handles special characters such as semicolon.
* `src/node/server.js` can now be run as a script (for normal
operation) or imported as a module (for tests).
* Move shutdown actions to `src/node/server.js` to be close to the
startup actions.
* Put startup and shutdown in functions so that tests can call them.
* Use `await` instead of callbacks.
* Block until the HTTP server is listening to avoid races during
test startup.
* Add a new `shutdown` hook.
* Use the `shutdown` hook to:
* close the HTTP server
* call `end()` on the stats collection to cancel its timers
* call `terminate()` on the Threads.Pool to stop the workers
* Exit with exit code 0 (instead of 1) on SIGTERM.
* Export the HTTP server so that tests can get the HTTP server's
port via `server.address().port` when `settings.port` is 0.