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
* 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>
I'm not sure how these tests ever worked. I guess some version of
Node.js and npm come pre-installed on the ubuntu-latest images?
I would have prefered to use Node.js v10 because that is our current
minimum supported version, but we have a surprising number of tests
that don't work on Node.js v10 (mostly due to `assert.match()`, which
was added in Node.js v12).
Travis placed an unnecessary breaking restriction on our tests and failed to respond within 72 hours to our complaint. This has forced us to introduce Github Actions to manage our testing. This is hopefully a temporary measure while Travis either gets itself together or we find a non-Github requirement.