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
* Bumped ueberdb2 to 4.1.1
* Install only production ready dependencies.
* Added optimized Dockerfile.
* Fixed variable detection.
* Move to own variable for detecting production build.
* Use shell syntax for parameter expansion.
* Use shell as default.
The Node.js 14 slim image has quite a few vulnerabilities, and I have
tested the latest slim image. It works just fine.
When installing plugins, `--legacy-peer-deps` is passed to npm because
npm v7 (which comes with Node.js v16, the current LTS) changed how
peer deps are handled. The new behavior is incompatible with how
plugins have historically been installed.
Now one can create an `etherpad` user and group on the host system and
set the container's UID and GID to match:
adduser --system --group etherpad &&
uid=$(id -u etherpad) &&
gid=$(id -g etherpad) &&
docker build --build-arg EP_UID="${uid}" --build-arg EP_GID="${gid}" .
This ensures that files created by user `etherpad` inside the
container are owned by user `etherpad` outside the container.
This MR introduces a docker build variable `INSTALL_ABIWORD`. When set
to any value other than `0`, ABIWORD is installed in the resulting
docker container, enabling the possibility to configure ABIWORD in
settings.json.docker or via ENV VAR `ABIWORD` for exporting to
DOC/PDF/ODT.
Documentation is included inline and in the docker markdown file.
* Run node 10 with '--experimental_worker' flags
* Use dedicated function to retrieve node/npm program version
The goal of this commit is to ensure that any linux based node 10 deployments run with the experimental_worker flag. This flag is required for workers to "work" in node 10. This will not affect other versions of node. This resolves#4335 where Docker would fail due to being based on node 10.
Before this change, the docker user had home in a directory it had no
permissions on. The inability of creating a cache directory in `$HOME`
prevented npm to work properly.
Additionally, the `node_modules` in the base working directory had its
owner set to root, preventing further changes.
With this change, the `etherpad` user has a home directory.
Additionally, `npm i` is now run by `etherpad` rather than the root
user; this way, it is possible to dynamically change the `node_modules`
content in day 2 operations.
Note that while switching to the `useradd` builtin, a conflict was
discovered with the GID 65534 that was previously used. This change is
changing the `etherpad` user's UID to 5001 to avoid said conflict. As a
consequence, a `chmod -R 5001:5001` must be run prior to attaching
volumes created from previous Etherpad versions.
With this change, the Dockerfile builds the Docker image from the code
checked out in the local filesystem, instead of downloading a revision
from git.
Implements #3657