mirror of
https://github.com/ether/etherpad-lite.git
synced 2025-02-01 03:12:42 +01:00
Merge branch 'develop'
This commit is contained in:
commit
293bd64522
28 changed files with 817 additions and 2565 deletions
8
.github/workflows/backend-tests.yml
vendored
8
.github/workflows/backend-tests.yml
vendored
|
@ -22,7 +22,7 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
-
|
-
|
||||||
name: Checkout repository
|
name: Checkout repository
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
-
|
-
|
||||||
uses: actions/setup-node@v3
|
uses: actions/setup-node@v3
|
||||||
with:
|
with:
|
||||||
|
@ -59,7 +59,7 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
-
|
-
|
||||||
name: Checkout repository
|
name: Checkout repository
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
-
|
-
|
||||||
uses: actions/setup-node@v3
|
uses: actions/setup-node@v3
|
||||||
with:
|
with:
|
||||||
|
@ -120,7 +120,7 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
-
|
-
|
||||||
name: Checkout repository
|
name: Checkout repository
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
-
|
-
|
||||||
uses: actions/setup-node@v3
|
uses: actions/setup-node@v3
|
||||||
with:
|
with:
|
||||||
|
@ -153,7 +153,7 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
-
|
-
|
||||||
name: Checkout repository
|
name: Checkout repository
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
-
|
-
|
||||||
uses: actions/setup-node@v3
|
uses: actions/setup-node@v3
|
||||||
with:
|
with:
|
||||||
|
|
2
.github/workflows/codeql-analysis.yml
vendored
2
.github/workflows/codeql-analysis.yml
vendored
|
@ -23,7 +23,7 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
-
|
-
|
||||||
name: Checkout repository
|
name: Checkout repository
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
# We must fetch at least the immediate parents so that if this is
|
# We must fetch at least the immediate parents so that if this is
|
||||||
# a pull request then we can checkout the head.
|
# a pull request then we can checkout the head.
|
||||||
|
|
2
.github/workflows/dependency-review.yml
vendored
2
.github/workflows/dependency-review.yml
vendored
|
@ -15,6 +15,6 @@ jobs:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: 'Checkout Repository'
|
- name: 'Checkout Repository'
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
- name: 'Dependency Review'
|
- name: 'Dependency Review'
|
||||||
uses: actions/dependency-review-action@v3
|
uses: actions/dependency-review-action@v3
|
||||||
|
|
14
.github/workflows/docker.yml
vendored
14
.github/workflows/docker.yml
vendored
|
@ -17,17 +17,17 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
-
|
-
|
||||||
name: Check out
|
name: Check out
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
-
|
-
|
||||||
name: Set up QEMU
|
name: Set up QEMU
|
||||||
if: github.event_name == 'push'
|
if: github.event_name == 'push'
|
||||||
uses: docker/setup-qemu-action@v2
|
uses: docker/setup-qemu-action@v3
|
||||||
-
|
-
|
||||||
name: Set up Docker Buildx
|
name: Set up Docker Buildx
|
||||||
uses: docker/setup-buildx-action@v2
|
uses: docker/setup-buildx-action@v3
|
||||||
-
|
-
|
||||||
name: Build and export to Docker
|
name: Build and export to Docker
|
||||||
uses: docker/build-push-action@v4
|
uses: docker/build-push-action@v5
|
||||||
with:
|
with:
|
||||||
context: .
|
context: .
|
||||||
load: true
|
load: true
|
||||||
|
@ -64,7 +64,7 @@ jobs:
|
||||||
name: Docker meta
|
name: Docker meta
|
||||||
if: github.event_name == 'push'
|
if: github.event_name == 'push'
|
||||||
id: meta
|
id: meta
|
||||||
uses: docker/metadata-action@v4
|
uses: docker/metadata-action@v5
|
||||||
with:
|
with:
|
||||||
images: etherpad/etherpad
|
images: etherpad/etherpad
|
||||||
tags: |
|
tags: |
|
||||||
|
@ -75,14 +75,14 @@ jobs:
|
||||||
-
|
-
|
||||||
name: Log in to Docker Hub
|
name: Log in to Docker Hub
|
||||||
if: github.event_name == 'push'
|
if: github.event_name == 'push'
|
||||||
uses: docker/login-action@v2
|
uses: docker/login-action@v3
|
||||||
with:
|
with:
|
||||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||||
-
|
-
|
||||||
name: Build and push
|
name: Build and push
|
||||||
if: github.event_name == 'push'
|
if: github.event_name == 'push'
|
||||||
uses: docker/build-push-action@v4
|
uses: docker/build-push-action@v5
|
||||||
with:
|
with:
|
||||||
context: .
|
context: .
|
||||||
platforms: linux/amd64,linux/arm64
|
platforms: linux/amd64,linux/arm64
|
||||||
|
|
9
.github/workflows/frontend-admin-tests.yml
vendored
9
.github/workflows/frontend-admin-tests.yml
vendored
|
@ -12,10 +12,11 @@ jobs:
|
||||||
name: with plugins
|
name: with plugins
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
# node: [16, 19, 20] >> Disabled node 16 and 18 because they do not work
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
node: [16, 18, 20]
|
node: [19, 20]
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
-
|
-
|
||||||
|
@ -26,7 +27,7 @@ jobs:
|
||||||
printf %s\\n '::set-output name=tunnel_id::${{ github.run_id }}-${{ github.run_number }}-${{ github.job }}-node${{ matrix.node }}'
|
printf %s\\n '::set-output name=tunnel_id::${{ github.run_id }}-${{ github.run_number }}-${{ github.job }}-node${{ matrix.node }}'
|
||||||
-
|
-
|
||||||
name: Checkout repository
|
name: Checkout repository
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
-
|
-
|
||||||
uses: actions/setup-node@v3
|
uses: actions/setup-node@v3
|
||||||
with:
|
with:
|
||||||
|
@ -69,6 +70,10 @@ jobs:
|
||||||
-
|
-
|
||||||
name: increase maxHttpBufferSize
|
name: increase maxHttpBufferSize
|
||||||
run: "sed -i 's/\"maxHttpBufferSize\": 10000/\"maxHttpBufferSize\": 100000/' settings.json"
|
run: "sed -i 's/\"maxHttpBufferSize\": 10000/\"maxHttpBufferSize\": 100000/' settings.json"
|
||||||
|
-
|
||||||
|
name: Disable import/export rate limiting
|
||||||
|
run: |
|
||||||
|
sed -e '/^ *"importExportRateLimiting":/,/^ *\}/ s/"max":.*/"max": 1000000/' -i settings.json
|
||||||
-
|
-
|
||||||
name: Remove standard frontend test files, so only admin tests are run
|
name: Remove standard frontend test files, so only admin tests are run
|
||||||
run: mv src/tests/frontend/specs/* /tmp && mv /tmp/admin*.js src/tests/frontend/specs
|
run: mv src/tests/frontend/specs/* /tmp && mv /tmp/admin*.js src/tests/frontend/specs
|
||||||
|
|
8
.github/workflows/frontend-tests.yml
vendored
8
.github/workflows/frontend-tests.yml
vendored
|
@ -21,7 +21,7 @@ jobs:
|
||||||
printf %s\\n '::set-output name=tunnel_id::${{ github.run_id }}-${{ github.run_number }}-${{ github.job }}'
|
printf %s\\n '::set-output name=tunnel_id::${{ github.run_id }}-${{ github.run_number }}-${{ github.job }}'
|
||||||
-
|
-
|
||||||
name: Checkout repository
|
name: Checkout repository
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
-
|
-
|
||||||
uses: actions/setup-node@v3
|
uses: actions/setup-node@v3
|
||||||
with:
|
with:
|
||||||
|
@ -43,7 +43,7 @@ jobs:
|
||||||
-
|
-
|
||||||
name: Disable import/export rate limiting
|
name: Disable import/export rate limiting
|
||||||
run: |
|
run: |
|
||||||
sed -e '/^ *"importExportRateLimiting":/,/^ *\}/ s/"max":.*/"max": 0/' -i settings.json
|
sed -e '/^ *"importExportRateLimiting":/,/^ *\}/ s/"max":.*/"max": 100000000/' -i settings.json
|
||||||
-
|
-
|
||||||
uses: saucelabs/sauce-connect-action@v2.3.4
|
uses: saucelabs/sauce-connect-action@v2.3.4
|
||||||
with:
|
with:
|
||||||
|
@ -76,7 +76,7 @@ jobs:
|
||||||
printf %s\\n '::set-output name=tunnel_id::${{ github.run_id }}-${{ github.run_number }}-${{ github.job }}'
|
printf %s\\n '::set-output name=tunnel_id::${{ github.run_id }}-${{ github.run_number }}-${{ github.job }}'
|
||||||
-
|
-
|
||||||
name: Checkout repository
|
name: Checkout repository
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
-
|
-
|
||||||
uses: actions/setup-node@v3
|
uses: actions/setup-node@v3
|
||||||
with:
|
with:
|
||||||
|
@ -127,7 +127,7 @@ jobs:
|
||||||
-
|
-
|
||||||
name: Disable import/export rate limiting
|
name: Disable import/export rate limiting
|
||||||
run: |
|
run: |
|
||||||
sed -e '/^ *"importExportRateLimiting":/,/^ *\}/ s/"max":.*/"max": 0/' -i settings.json
|
sed -e '/^ *"importExportRateLimiting":/,/^ *\}/ s/"max":.*/"max": 1000000/' -i settings.json
|
||||||
# XXX we should probably run all tests, because plugins could effect their results
|
# XXX we should probably run all tests, because plugins could effect their results
|
||||||
-
|
-
|
||||||
name: Remove standard frontend test files, so only plugin tests are run
|
name: Remove standard frontend test files, so only plugin tests are run
|
||||||
|
|
2
.github/workflows/lint-package-lock.yml
vendored
2
.github/workflows/lint-package-lock.yml
vendored
|
@ -18,7 +18,7 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
-
|
-
|
||||||
name: Checkout repository
|
name: Checkout repository
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
-
|
-
|
||||||
uses: actions/setup-node@v3
|
uses: actions/setup-node@v3
|
||||||
with:
|
with:
|
||||||
|
|
6
.github/workflows/load-test.yml
vendored
6
.github/workflows/load-test.yml
vendored
|
@ -18,7 +18,7 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
-
|
-
|
||||||
name: Checkout repository
|
name: Checkout repository
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
-
|
-
|
||||||
uses: actions/setup-node@v3
|
uses: actions/setup-node@v3
|
||||||
with:
|
with:
|
||||||
|
@ -48,7 +48,7 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
-
|
-
|
||||||
name: Checkout repository
|
name: Checkout repository
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
-
|
-
|
||||||
uses: actions/setup-node@v3
|
uses: actions/setup-node@v3
|
||||||
with:
|
with:
|
||||||
|
@ -105,7 +105,7 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
-
|
-
|
||||||
name: Checkout repository
|
name: Checkout repository
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
-
|
-
|
||||||
uses: actions/setup-node@v3
|
uses: actions/setup-node@v3
|
||||||
with:
|
with:
|
||||||
|
|
2
.github/workflows/rate-limit.yml
vendored
2
.github/workflows/rate-limit.yml
vendored
|
@ -18,7 +18,7 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
-
|
-
|
||||||
name: Checkout repository
|
name: Checkout repository
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
-
|
-
|
||||||
uses: actions/setup-node@v3
|
uses: actions/setup-node@v3
|
||||||
with:
|
with:
|
||||||
|
|
|
@ -22,7 +22,7 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
-
|
-
|
||||||
name: Check out latest release
|
name: Check out latest release
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
ref: master
|
ref: master
|
||||||
-
|
-
|
||||||
|
@ -67,7 +67,7 @@ jobs:
|
||||||
-
|
-
|
||||||
name: Run the backend tests
|
name: Run the backend tests
|
||||||
run: cd src && npm test
|
run: cd src && npm test
|
||||||
# Because actions/checkout@v3 is called with "ref: master" and without
|
# Because actions/checkout@v4 is called with "ref: master" and without
|
||||||
# "fetch-depth: 0", the local clone does not have the ${GITHUB_SHA}
|
# "fetch-depth: 0", the local clone does not have the ${GITHUB_SHA}
|
||||||
# commit. Fetch ${GITHUB_REF} to get the ${GITHUB_SHA} commit. Note that a
|
# commit. Fetch ${GITHUB_REF} to get the ${GITHUB_SHA} commit. Note that a
|
||||||
# plain "git fetch" only fetches "normal" references (refs/heads/* and
|
# plain "git fetch" only fetches "normal" references (refs/heads/* and
|
||||||
|
|
33
.github/workflows/windows.yml
vendored
33
.github/workflows/windows.yml
vendored
|
@ -15,22 +15,16 @@ jobs:
|
||||||
|| (github.event.pull_request.head.repo.id != github.event.pull_request.base.repo.id)
|
|| (github.event.pull_request.head.repo.id != github.event.pull_request.base.repo.id)
|
||||||
name: Build .zip
|
name: Build .zip
|
||||||
runs-on: windows-latest
|
runs-on: windows-latest
|
||||||
defaults:
|
|
||||||
run:
|
|
||||||
shell: msys2 {0}
|
|
||||||
steps:
|
steps:
|
||||||
-
|
-
|
||||||
uses: msys2/setup-msys2@v2
|
uses: msys2/setup-msys2@v2
|
||||||
with:
|
with:
|
||||||
release: false
|
|
||||||
update: false
|
|
||||||
path-type: inherit
|
path-type: inherit
|
||||||
install: >-
|
install: >-
|
||||||
zip
|
zip
|
||||||
rsync
|
|
||||||
-
|
-
|
||||||
name: Checkout repository
|
name: Checkout repository
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
-
|
-
|
||||||
uses: actions/setup-node@v3
|
uses: actions/setup-node@v3
|
||||||
with:
|
with:
|
||||||
|
@ -41,17 +35,16 @@ jobs:
|
||||||
src/bin/doc/package-lock.json
|
src/bin/doc/package-lock.json
|
||||||
-
|
-
|
||||||
name: Install all dependencies and symlink for ep_etherpad-lite
|
name: Install all dependencies and symlink for ep_etherpad-lite
|
||||||
run: |
|
shell: msys2 {0}
|
||||||
set MSYSTEM=winsymlinks:lnk
|
run: src/bin/installDeps.sh
|
||||||
src/bin/installDeps.sh
|
|
||||||
-
|
-
|
||||||
name: Run the backend tests
|
name: Run the backend tests
|
||||||
|
shell: msys2 {0}
|
||||||
run: cd src && npm test
|
run: cd src && npm test
|
||||||
-
|
-
|
||||||
name: Build the .zip
|
name: Build the .zip
|
||||||
run: |
|
shell: msys2 {0}
|
||||||
set MSYSTEM=winsymlinks:lnk
|
run: src/bin/buildForWindows.sh
|
||||||
src/bin/buildForWindows.sh
|
|
||||||
-
|
-
|
||||||
name: Archive production artifacts
|
name: Archive production artifacts
|
||||||
uses: actions/upload-artifact@v3
|
uses: actions/upload-artifact@v3
|
||||||
|
@ -69,7 +62,7 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
-
|
-
|
||||||
name: Checkout repository
|
name: Checkout repository
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
-
|
-
|
||||||
name: Download .zip
|
name: Download .zip
|
||||||
uses: actions/download-artifact@v3
|
uses: actions/download-artifact@v3
|
||||||
|
@ -96,7 +89,7 @@ jobs:
|
||||||
# run on pushes to any branch
|
# run on pushes to any branch
|
||||||
# run on PRs from external forks
|
# run on PRs from external forks
|
||||||
permissions:
|
permissions:
|
||||||
contents: none
|
contents: write
|
||||||
if: |
|
if: |
|
||||||
(github.event_name != 'pull_request')
|
(github.event_name != 'pull_request')
|
||||||
|| (github.event.pull_request.head.repo.id != github.event.pull_request.base.repo.id)
|
|| (github.event.pull_request.head.repo.id != github.event.pull_request.base.repo.id)
|
||||||
|
@ -130,3 +123,13 @@ jobs:
|
||||||
node node_modules\ep_etherpad-lite\node\server.js &
|
node node_modules\ep_etherpad-lite\node\server.js &
|
||||||
curl --connect-timeout 10 --max-time 20 --retry 5 --retry-delay 10 --retry-max-time 60 --retry-connrefused http://127.0.0.1:9001/p/test
|
curl --connect-timeout 10 --max-time 20 --retry 5 --retry-delay 10 --retry-max-time 60 --retry-connrefused http://127.0.0.1:9001/p/test
|
||||||
src\node_modules\cypress\bin\cypress run --config-file src\tests\frontendcypress\cypress.config.js
|
src\node_modules\cypress\bin\cypress run --config-file src\tests\frontendcypress\cypress.config.js
|
||||||
|
# On release, upload windows zip to GitHub release tab
|
||||||
|
-
|
||||||
|
name: Rename to etherpad-lite-win.zip
|
||||||
|
shell: powershell
|
||||||
|
run: mv etherpad-win.zip etherpad-lite-win.zip
|
||||||
|
- name: upload binaries to release
|
||||||
|
uses: softprops/action-gh-release@v1
|
||||||
|
if: ${{startsWith(github.ref, 'refs/tags/') }}
|
||||||
|
with:
|
||||||
|
files: etherpad-lite-win.zip
|
||||||
|
|
17
CHANGELOG.md
17
CHANGELOG.md
|
@ -1,3 +1,20 @@
|
||||||
|
# 1.9.3
|
||||||
|
|
||||||
|
### Compability changes
|
||||||
|
|
||||||
|
* express-rate-limit has been bumped to 7.0.0: This involves the breaking change that "max: 0"
|
||||||
|
in the importExportRateLimiting is set to always trigger. So set it to your desired value.
|
||||||
|
If you haven't changed that value in the settings.json you are all set.
|
||||||
|
|
||||||
|
### Notable enhancements and fixes
|
||||||
|
|
||||||
|
* Bugfixes
|
||||||
|
* Fix etherpad crashing with mongodb database
|
||||||
|
|
||||||
|
* Enhancements
|
||||||
|
* Add surrealdb database support. You can find out more about this database [here](https://surrealdb.com).
|
||||||
|
* Make sqlite faster: The sqlite library has been switched to better-sqlite3. This should lead to better performance.
|
||||||
|
|
||||||
# 1.9.2
|
# 1.9.2
|
||||||
|
|
||||||
### Notable enhancements and fixes
|
### Notable enhancements and fixes
|
||||||
|
|
|
@ -17,6 +17,9 @@ RUN \
|
||||||
}
|
}
|
||||||
ENV TIMEZONE=${TIMEZONE}
|
ENV TIMEZONE=${TIMEZONE}
|
||||||
|
|
||||||
|
# Control the configuration file to be copied into the container.
|
||||||
|
ARG SETTINGS=./settings.json.docker
|
||||||
|
|
||||||
# plugins to install while building the container. By default no plugins are
|
# plugins to install while building the container. By default no plugins are
|
||||||
# installed.
|
# installed.
|
||||||
# If given a value, it has to be a space-separated, quoted list of plugin names.
|
# If given a value, it has to be a space-separated, quoted list of plugin names.
|
||||||
|
@ -78,7 +81,7 @@ RUN \
|
||||||
apk add \
|
apk add \
|
||||||
ca-certificates \
|
ca-certificates \
|
||||||
git \
|
git \
|
||||||
${INSTALL_ABIWORD:+abiword} \
|
${INSTALL_ABIWORD:+abiword abiword-plugin-command} \
|
||||||
${INSTALL_SOFFICE:+libreoffice openjdk8-jre libreoffice-common}
|
${INSTALL_SOFFICE:+libreoffice openjdk8-jre libreoffice-common}
|
||||||
|
|
||||||
USER etherpad
|
USER etherpad
|
||||||
|
@ -101,7 +104,7 @@ RUN { [ -z "${ETHERPAD_PLUGINS}" ] || \
|
||||||
rm -rf ~/.npm
|
rm -rf ~/.npm
|
||||||
|
|
||||||
# Copy the configuration file.
|
# Copy the configuration file.
|
||||||
COPY --chown=etherpad:etherpad ./settings.json.docker "${EP_DIR}"/settings.json
|
COPY --chown=etherpad:etherpad ${SETTINGS} "${EP_DIR}"/settings.json
|
||||||
|
|
||||||
# Fix group permissions
|
# Fix group permissions
|
||||||
RUN chmod -R g=u .
|
RUN chmod -R g=u .
|
||||||
|
|
|
@ -116,7 +116,7 @@ following:
|
||||||
|
|
||||||
### Docker container
|
### Docker container
|
||||||
|
|
||||||
Find [here](doc/docker.md) information on running Etherpad in a container.
|
Find [here](doc/docker.adoc) information on running Etherpad in a container.
|
||||||
|
|
||||||
## Plugins
|
## Plugins
|
||||||
|
|
||||||
|
|
6
src/bin/doc/package-lock.json
generated
6
src/bin/doc/package-lock.json
generated
|
@ -5,9 +5,9 @@
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"marked": {
|
"marked": {
|
||||||
"version": "7.0.3",
|
"version": "9.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/marked/-/marked-7.0.3.tgz",
|
"resolved": "https://registry.npmjs.org/marked/-/marked-9.0.3.tgz",
|
||||||
"integrity": "sha512-ev2uM40p0zQ/GbvqotfKcSWEa59fJwluGZj5dcaUOwDRrB1F3dncdXy8NWUApk4fi8atU3kTBOwjyjZ0ud0dxw=="
|
"integrity": "sha512-pI/k4nzBG1PEq1J3XFEHxVvjicfjl8rgaMaqclouGSMPhk7Q3Ejb2ZRxx/ZQOcQ1909HzVoWCFYq6oLgtL4BpQ=="
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
"node": ">=12.17.0"
|
"node": ">=12.17.0"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"marked": "^7.0.3"
|
"marked": "^9.0.3"
|
||||||
},
|
},
|
||||||
"devDependencies": {},
|
"devDependencies": {},
|
||||||
"optionalDependencies": {},
|
"optionalDependencies": {},
|
||||||
|
|
|
@ -182,8 +182,8 @@ try {
|
||||||
console.log('Updating ether.github.com master branch...');
|
console.log('Updating ether.github.com master branch...');
|
||||||
run('git pull --ff-only', {cwd: '../ether.github.com/'});
|
run('git pull --ff-only', {cwd: '../ether.github.com/'});
|
||||||
console.log('Committing documentation...');
|
console.log('Committing documentation...');
|
||||||
run(`cp -R out/doc/ ../ether.github.com/doc/v'${newVersion}'`);
|
run(`cp -R out/doc/ ../ether.github.com/public/doc/v'${newVersion}'`);
|
||||||
run(`rm -f latest && ln -s 'v${newVersion}' latest`, {cwd: '../ether.github.com/doc/'});
|
run(`npm version ${newVersion}`, {cwd:'../ether.github.com'})
|
||||||
run('git add .', {cwd: '../ether.github.com/'});
|
run('git add .', {cwd: '../ether.github.com/'});
|
||||||
run(`git commit -m '${newVersion} docs'`, {cwd: '../ether.github.com/'});
|
run(`git commit -m '${newVersion} docs'`, {cwd: '../ether.github.com/'});
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
|
@ -203,12 +203,9 @@ console.log(' (cd ../ether.github.com && git show)');
|
||||||
console.log('If everything looks good then push:');
|
console.log('If everything looks good then push:');
|
||||||
console.log(` git push origin master develop '${newVersion}'`);
|
console.log(` git push origin master develop '${newVersion}'`);
|
||||||
console.log(' (cd ../ether.github.com && git push)');
|
console.log(' (cd ../ether.github.com && git push)');
|
||||||
console.log('Create a Windows build:');
|
console.log('Creating a Windows build is not necessary anymore and will be created by GitHub action');
|
||||||
console.log(' bin/buildForWindows.sh');
|
|
||||||
console.log('Visit https://github.com/ether/etherpad-lite/releases/new and create a new release ' +
|
console.log('Visit https://github.com/ether/etherpad-lite/releases/new and create a new release ' +
|
||||||
`with 'master' as the target and the version is ${newVersion}. Include the windows ` +
|
`with 'master' as the target and the version is ${newVersion}. `);
|
||||||
'zip as an asset');
|
console.log('The docs are updated automatically with the new version. While the windows build' +
|
||||||
console.log('Once the new docs are uploaded then modify the download links (replace ' +
|
' is generated people can still download the older versions.');
|
||||||
`${currentVersion} with ${newVersion} on etherpad.org and then pull master onto ` +
|
|
||||||
'develop)');
|
|
||||||
console.log('Finally go public with an announcement via our comms channels :)');
|
console.log('Finally go public with an announcement via our comms channels :)');
|
||||||
|
|
|
@ -2,13 +2,29 @@
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Baloch Afghanistan",
|
"Baloch Afghanistan",
|
||||||
|
"Moshtank",
|
||||||
"Sultanselim baloch"
|
"Sultanselim baloch"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
"admin.page-title": "کارمسترءِ کُرسی - اترپَد",
|
||||||
|
"admin_plugins": "گݔشانکانءِ کار ءُ بار",
|
||||||
|
"admin_plugins.available": "دسترسݔن گݔشانک",
|
||||||
|
"admin_plugins.available_not-found": "گݔشانکے نݔست اَت۔",
|
||||||
|
"admin_plugins.available_install.value": "پِررݔنَگ",
|
||||||
|
"admin_plugins.available_search.placeholder": "گݔشانکان شۏھاز پہ پِررݔنَگا",
|
||||||
|
"admin_plugins.description": "سرۏشتادی",
|
||||||
|
"admin_plugins.installed": "گݔشانک پِررݔنگ بیت",
|
||||||
|
"admin_plugins.installed_fetching": "پِررݔنتَگݔن گݔشانکانءِ پچ کنگ",
|
||||||
|
"admin_plugins.installed_nothing": "شما ھنگت ھچ گݔشانکے نہ پِررݔنتَگ۔",
|
||||||
|
"admin_plugins.installed_uninstall.value": "پِررݔنتَگݔنءِ بند کنگ",
|
||||||
|
"admin_plugins.last-update": "گُڈی پہ رۏچان",
|
||||||
|
"admin_plugins.name": "نام",
|
||||||
|
"admin_plugins.page-title": "گݔشانکءِ کارمستری - اترپد",
|
||||||
|
"admin_plugins.version": "ورژن",
|
||||||
"index.newPad": "دفترچه یادداشت تازه",
|
"index.newPad": "دفترچه یادداشت تازه",
|
||||||
"index.createOpenPad": "یا ایجاد/بازکردن یک دفترچه یادداشت با نام:",
|
"index.createOpenPad": "یا ایجاد/بازکردن یک دفترچه یادداشت با نام:",
|
||||||
"pad.toolbar.bold.title": "پررنگ (Ctrl-B)",
|
"pad.toolbar.bold.title": "پررنگ (Ctrl-B)",
|
||||||
"pad.toolbar.italic.title": "کج (Ctrl-I)",
|
"pad.toolbar.italic.title": "کَش (Ctrl-I)",
|
||||||
"pad.toolbar.underline.title": "زیرخط (Ctrl-U)",
|
"pad.toolbar.underline.title": "زیرخط (Ctrl-U)",
|
||||||
"pad.toolbar.strikethrough.title": "خط خورده",
|
"pad.toolbar.strikethrough.title": "خط خورده",
|
||||||
"pad.toolbar.ol.title": "فهرست مرتب شده",
|
"pad.toolbar.ol.title": "فهرست مرتب شده",
|
||||||
|
@ -21,12 +37,12 @@
|
||||||
"pad.toolbar.import_export.title": "درونریزی/برونریزی از/به قالبهای مختلف",
|
"pad.toolbar.import_export.title": "درونریزی/برونریزی از/به قالبهای مختلف",
|
||||||
"pad.toolbar.timeslider.title": "لغزندهٔ زمان",
|
"pad.toolbar.timeslider.title": "لغزندهٔ زمان",
|
||||||
"pad.toolbar.savedRevision.title": "ذخیرهسازی نسخه",
|
"pad.toolbar.savedRevision.title": "ذخیرهسازی نسخه",
|
||||||
"pad.toolbar.settings.title": "تنظیمات",
|
"pad.toolbar.settings.title": "ردانکان",
|
||||||
"pad.toolbar.embed.title": "اشتراک و جاسازی این دفترچه یادداشت",
|
"pad.toolbar.embed.title": "اشتراک و جاسازی این دفترچه یادداشت",
|
||||||
"pad.toolbar.showusers.title": "نمایش کاربران در این دفترچه یادداشت",
|
"pad.toolbar.showusers.title": "نمایش کاربران در این دفترچه یادداشت",
|
||||||
"pad.colorpicker.save": "زاپاس کورتین",
|
"pad.colorpicker.save": "سَپت",
|
||||||
"pad.colorpicker.cancel": "کنسیل",
|
"pad.colorpicker.cancel": "بجَگ",
|
||||||
"pad.loading": "...بار بیت",
|
"pad.loading": "بییگئن...",
|
||||||
"pad.permissionDenied": "شرمنده، شما را اجازت په دسترسی ای صفحه نیست.",
|
"pad.permissionDenied": "شرمنده، شما را اجازت په دسترسی ای صفحه نیست.",
|
||||||
"pad.settings.padSettings": "تنظیمات دفترچه یادداشت",
|
"pad.settings.padSettings": "تنظیمات دفترچه یادداشت",
|
||||||
"pad.settings.myView": "منی سۏج",
|
"pad.settings.myView": "منی سۏج",
|
||||||
|
@ -39,7 +55,7 @@
|
||||||
"pad.settings.language": "زبان:",
|
"pad.settings.language": "زبان:",
|
||||||
"pad.importExport.import_export": "درونریزی/برونریزی",
|
"pad.importExport.import_export": "درونریزی/برونریزی",
|
||||||
"pad.importExport.import": "بارگذاری پروندهی متنی یا سند",
|
"pad.importExport.import": "بارگذاری پروندهی متنی یا سند",
|
||||||
"pad.importExport.importSuccessful": "موفقیت آمیز بود!",
|
"pad.importExport.importSuccessful": "سۏبݔن بیت!",
|
||||||
"pad.importExport.export": "برونریزی این دفترچه یادداشت با قالب:",
|
"pad.importExport.export": "برونریزی این دفترچه یادداشت با قالب:",
|
||||||
"pad.importExport.exporthtml": "HTML",
|
"pad.importExport.exporthtml": "HTML",
|
||||||
"pad.importExport.exportplain": "سادگین متن",
|
"pad.importExport.exportplain": "سادگین متن",
|
||||||
|
@ -66,21 +82,21 @@
|
||||||
"pad.modals.badChangeset.cause": "این میتواند به دلیل پیکربندی اشتباه یا سایر رفتارهای غیرمنتظره باشد. اگر فکر میکنید این یک خطا است لطفاً با مدیر خدمت تماس بگیرید. برای ادامهٔ ویرایش سعی کنید که دوباره متصل شوید.",
|
"pad.modals.badChangeset.cause": "این میتواند به دلیل پیکربندی اشتباه یا سایر رفتارهای غیرمنتظره باشد. اگر فکر میکنید این یک خطا است لطفاً با مدیر خدمت تماس بگیرید. برای ادامهٔ ویرایش سعی کنید که دوباره متصل شوید.",
|
||||||
"pad.modals.corruptPad.explanation": "پدی که شما سعی دارید دسترسی پیدا کنید خراب است.",
|
"pad.modals.corruptPad.explanation": "پدی که شما سعی دارید دسترسی پیدا کنید خراب است.",
|
||||||
"pad.modals.corruptPad.cause": "این احتمالاً به دلیل تنظیمات اشتباه کارساز یا سایر رفتارهای غیرمنتظره است. لطفاً با مدیر خدمت تماس حاصل کنید.",
|
"pad.modals.corruptPad.cause": "این احتمالاً به دلیل تنظیمات اشتباه کارساز یا سایر رفتارهای غیرمنتظره است. لطفاً با مدیر خدمت تماس حاصل کنید.",
|
||||||
"pad.modals.deleted": "پاک کورتین",
|
"pad.modals.deleted": "گار بیت۔",
|
||||||
"pad.modals.deleted.explanation": "این دفترچه یادداشت پاک شدهاست.",
|
"pad.modals.deleted.explanation": "اے یادداشت پاک کنگ بیتگ۔",
|
||||||
"pad.modals.disconnected": "شمئی سکّی کھت اِنت۔",
|
"pad.modals.disconnected": "شمئی سکّی کھت اِنت۔",
|
||||||
"pad.modals.disconnected.explanation": "اتصال به سرور قطع شدهاست.",
|
"pad.modals.disconnected.explanation": "اتصال به سرور قطع شدهاست.",
|
||||||
"pad.modals.disconnected.cause": "ممکن است سرور در دسترس نباشد. اگر این مشکل باز هم رخ داد مدیر حدمت را آگاه کنید.",
|
"pad.modals.disconnected.cause": "ممکن است سرور در دسترس نباشد. اگر این مشکل باز هم رخ داد مدیر حدمت را آگاه کنید.",
|
||||||
"pad.share": "به اشتراکگذاری این دفترچه یادداشت",
|
"pad.share": "به اشتراکگذاری این دفترچه یادداشت",
|
||||||
"pad.share.readonly": "فقط خواندنی",
|
"pad.share.readonly": "فقط خواندنی",
|
||||||
"pad.share.link": "پیوند",
|
"pad.share.link": "لینک",
|
||||||
"pad.share.emebdcode": "جاسازی نشانی",
|
"pad.share.emebdcode": "جاسازی نشانی",
|
||||||
"pad.chat": "گفتگو",
|
"pad.chat": "گفتگو",
|
||||||
"pad.chat.title": "بازکردن گفتگو برای این دفترچه یادداشت",
|
"pad.chat.title": "بازکردن گفتگو برای این دفترچه یادداشت",
|
||||||
"pad.chat.loadmessages": "گݔشترݔں پیگامء چارگ",
|
"pad.chat.loadmessages": "گݔشترݔں پیگامء چارگ",
|
||||||
"timeslider.pageTitle": "لغزندهٔ زمان {{appTitle}}",
|
"timeslider.pageTitle": "لغزندهٔ زمان {{appTitle}}",
|
||||||
"timeslider.toolbar.returnbutton": "بازگشت به دفترچه یادداشت",
|
"timeslider.toolbar.returnbutton": "چَھر کنگ پہ یاددپترا",
|
||||||
"timeslider.toolbar.authors": "نویسوک:",
|
"timeslider.toolbar.authors": "لککۏک:",
|
||||||
"timeslider.toolbar.authorsList": "بدون نویسنده",
|
"timeslider.toolbar.authorsList": "بدون نویسنده",
|
||||||
"timeslider.toolbar.exportlink.title": "درگیزگ",
|
"timeslider.toolbar.exportlink.title": "درگیزگ",
|
||||||
"timeslider.exportCurrent": "برونریزی نگارش کنونی به عنوان:",
|
"timeslider.exportCurrent": "برونریزی نگارش کنونی به عنوان:",
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Armando-Martin",
|
"Armando-Martin",
|
||||||
|
"Atzerritik",
|
||||||
"DDPAT",
|
"DDPAT",
|
||||||
"Dgstranz",
|
"Dgstranz",
|
||||||
"Fitoschido",
|
"Fitoschido",
|
||||||
|
@ -74,7 +75,7 @@
|
||||||
"pad.colorpicker.save": "Guardar",
|
"pad.colorpicker.save": "Guardar",
|
||||||
"pad.colorpicker.cancel": "Cancelar",
|
"pad.colorpicker.cancel": "Cancelar",
|
||||||
"pad.loading": "Cargando...",
|
"pad.loading": "Cargando...",
|
||||||
"pad.noCookie": "No se pudo encontrar la «cookie». Permite la utilización de «cookies» en el navegador.",
|
"pad.noCookie": "No se pudo encontrar la galleta. ¡Por favor, permita las cookies en su navegador! Su sesión y configuración no se guardarán entre las visitas. Esto puede deberse a que Etherpad está incluido en un iFrame en algunos navegadores. Por favor asegúrese de que Etherpad está en el mismo subdominio/dominio que el iFrame padre",
|
||||||
"pad.permissionDenied": "No tienes permiso para acceder a este pad",
|
"pad.permissionDenied": "No tienes permiso para acceder a este pad",
|
||||||
"pad.settings.padSettings": "Configuración del pad",
|
"pad.settings.padSettings": "Configuración del pad",
|
||||||
"pad.settings.myView": "Preferencias personales",
|
"pad.settings.myView": "Preferencias personales",
|
||||||
|
@ -98,7 +99,7 @@
|
||||||
"pad.importExport.exportword": "Microsoft Word",
|
"pad.importExport.exportword": "Microsoft Word",
|
||||||
"pad.importExport.exportpdf": "PDF",
|
"pad.importExport.exportpdf": "PDF",
|
||||||
"pad.importExport.exportopen": "ODF (Open Document Format)",
|
"pad.importExport.exportopen": "ODF (Open Document Format)",
|
||||||
"pad.importExport.abiword.innerHTML": "Solo es posible importar texto sin formato o en HTML. Para obtener funciones de importación más avanzadas es necesario <a href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-with-AbiWord\">instalar AbiWord</a>.",
|
"pad.importExport.abiword.innerHTML": "Solo se puede importar desde texto plano o formatos HTML. Para obtener funciones de importación más avanzadas, <a href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-with-AbiWord\">instale AbiWord o LibreOffice</a>.",
|
||||||
"pad.modals.connected": "Conectado.",
|
"pad.modals.connected": "Conectado.",
|
||||||
"pad.modals.reconnecting": "Reconectando a tu pad...",
|
"pad.modals.reconnecting": "Reconectando a tu pad...",
|
||||||
"pad.modals.forcereconnect": "Forzar reconexión",
|
"pad.modals.forcereconnect": "Forzar reconexión",
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
"Xabier Armendaritz"
|
"Xabier Armendaritz"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"admin.page-title": "Admin Aginte-panela - Etherpad",
|
"admin.page-title": "Kudeaketa panela - Etherpad",
|
||||||
"admin_plugins": "Plugin-en kudeaketa",
|
"admin_plugins": "Plugin-en kudeaketa",
|
||||||
"admin_plugins.available": "Eskuragarri dauden plugin-ak",
|
"admin_plugins.available": "Eskuragarri dauden plugin-ak",
|
||||||
"admin_plugins.available_not-found": "Ez da plugin-ik aurkitu",
|
"admin_plugins.available_not-found": "Ez da plugin-ik aurkitu",
|
||||||
|
|
|
@ -68,7 +68,7 @@
|
||||||
"pad.settings.chatandusers": "Ammustra sa tzarrada e is utentes",
|
"pad.settings.chatandusers": "Ammustra sa tzarrada e is utentes",
|
||||||
"pad.settings.colorcheck": "Colores de autoria",
|
"pad.settings.colorcheck": "Colores de autoria",
|
||||||
"pad.settings.linenocheck": "Nùmeros de lìnia",
|
"pad.settings.linenocheck": "Nùmeros de lìnia",
|
||||||
"pad.settings.rtlcheck": "Cuntenutu dae manca a dereta",
|
"pad.settings.rtlcheck": "Boles lèghere su cuntenutu dae dereta a manca?",
|
||||||
"pad.settings.fontType": "Tipu de caràtere:",
|
"pad.settings.fontType": "Tipu de caràtere:",
|
||||||
"pad.settings.fontType.normal": "Normale",
|
"pad.settings.fontType.normal": "Normale",
|
||||||
"pad.settings.language": "Lìngua:",
|
"pad.settings.language": "Lìngua:",
|
||||||
|
|
|
@ -9,7 +9,8 @@
|
||||||
"Shangkuanlc",
|
"Shangkuanlc",
|
||||||
"Shirayuki",
|
"Shirayuki",
|
||||||
"Simon Shek",
|
"Simon Shek",
|
||||||
"Wehwei"
|
"Wehwei",
|
||||||
|
"Winston Sung"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"admin.page-title": "管理員面板 - Etherpad",
|
"admin.page-title": "管理員面板 - Etherpad",
|
||||||
|
@ -134,7 +135,7 @@
|
||||||
"pad.chat.writeMessage.placeholder": "在此編寫您的訊息",
|
"pad.chat.writeMessage.placeholder": "在此編寫您的訊息",
|
||||||
"timeslider.followContents": "關注記事本內容更新",
|
"timeslider.followContents": "關注記事本內容更新",
|
||||||
"timeslider.pageTitle": "{{appTitle}}時間軸",
|
"timeslider.pageTitle": "{{appTitle}}時間軸",
|
||||||
"timeslider.toolbar.returnbutton": "返回到記事本",
|
"timeslider.toolbar.returnbutton": "返回記事本",
|
||||||
"timeslider.toolbar.authors": "協作者:",
|
"timeslider.toolbar.authors": "協作者:",
|
||||||
"timeslider.toolbar.authorsList": "無協作者",
|
"timeslider.toolbar.authorsList": "無協作者",
|
||||||
"timeslider.toolbar.exportlink.title": "匯出",
|
"timeslider.toolbar.exportlink.title": "匯出",
|
||||||
|
|
3151
src/package-lock.json
generated
3151
src/package-lock.json
generated
File diff suppressed because it is too large
Load diff
|
@ -31,7 +31,7 @@
|
||||||
],
|
],
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"async": "^3.2.4",
|
"async": "^3.2.4",
|
||||||
"axios": "^1.4.0",
|
"axios": "^1.5.0",
|
||||||
"clean-css": "^5.3.2",
|
"clean-css": "^5.3.2",
|
||||||
"cookie-parser": "^1.4.6",
|
"cookie-parser": "^1.4.6",
|
||||||
"cross-spawn": "^7.0.3",
|
"cross-spawn": "^7.0.3",
|
||||||
|
@ -39,11 +39,11 @@
|
||||||
"etherpad-require-kernel": "^1.0.15",
|
"etherpad-require-kernel": "^1.0.15",
|
||||||
"etherpad-yajsml": "0.0.12",
|
"etherpad-yajsml": "0.0.12",
|
||||||
"express": "4.18.2",
|
"express": "4.18.2",
|
||||||
"express-rate-limit": "^6.9.0",
|
"express-rate-limit": "^7.0.1",
|
||||||
"express-session": "npm:@etherpad/express-session@^1.18.2",
|
"express-session": "npm:@etherpad/express-session@^1.18.2",
|
||||||
"fast-deep-equal": "^3.1.3",
|
"fast-deep-equal": "^3.1.3",
|
||||||
"find-root": "1.1.0",
|
"find-root": "1.1.0",
|
||||||
"formidable": "^3.5.0",
|
"formidable": "^3.5.1",
|
||||||
"http-errors": "^2.0.0",
|
"http-errors": "^2.0.0",
|
||||||
"js-cookie": "^3.0.5",
|
"js-cookie": "^3.0.5",
|
||||||
"jsdom": "^20.0.0",
|
"jsdom": "^20.0.0",
|
||||||
|
@ -56,18 +56,18 @@
|
||||||
"npm": "^6.14.18",
|
"npm": "^6.14.18",
|
||||||
"openapi-backend": "^5.9.2",
|
"openapi-backend": "^5.9.2",
|
||||||
"proxy-addr": "^2.0.7",
|
"proxy-addr": "^2.0.7",
|
||||||
"rate-limiter-flexible": "^2.4.2",
|
"rate-limiter-flexible": "^3.0.0",
|
||||||
"rehype": "^12.0.1",
|
"rehype": "^13.0.1",
|
||||||
"rehype-minify-whitespace": "^5.0.1",
|
"rehype-minify-whitespace": "^6.0.0",
|
||||||
"resolve": "1.22.4",
|
"resolve": "1.22.6",
|
||||||
"security": "1.0.0",
|
"security": "1.0.0",
|
||||||
"semver": "^7.5.4",
|
"semver": "^7.5.4",
|
||||||
"socket.io": "^2.5.0",
|
"socket.io": "^2.5.0",
|
||||||
"superagent": "^8.1.1",
|
"superagent": "^8.1.2",
|
||||||
"terser": "^5.19.2",
|
"terser": "^5.20.0",
|
||||||
"threads": "^1.7.0",
|
"threads": "^1.7.0",
|
||||||
"tinycon": "0.6.8",
|
"tinycon": "0.6.8",
|
||||||
"ueberdb2": "^4.1.20",
|
"ueberdb2": "^4.2.11",
|
||||||
"underscore": "1.13.6",
|
"underscore": "1.13.6",
|
||||||
"unorm": "1.6.0",
|
"unorm": "1.6.0",
|
||||||
"wtfnode": "^0.9.1"
|
"wtfnode": "^0.9.1"
|
||||||
|
@ -78,16 +78,16 @@
|
||||||
"etherpad-lite": "node/server.js"
|
"etherpad-lite": "node/server.js"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"eslint": "^8.47.0",
|
"eslint": "^8.49.0",
|
||||||
"eslint-config-etherpad": "^3.0.21",
|
"eslint-config-etherpad": "^3.0.22",
|
||||||
"etherpad-cli-client": "^2.0.2",
|
"etherpad-cli-client": "^2.0.2",
|
||||||
"mocha": "^10.0.0",
|
"mocha": "^10.0.0",
|
||||||
"mocha-froth": "^0.2.10",
|
"mocha-froth": "^0.2.10",
|
||||||
"nodeify": "^1.0.1",
|
"nodeify": "^1.0.1",
|
||||||
"openapi-schema-validation": "^0.4.2",
|
"openapi-schema-validation": "^0.4.2",
|
||||||
"selenium-webdriver": "^4.11.1",
|
"selenium-webdriver": "^4.12.0",
|
||||||
"set-cookie-parser": "^2.6.0",
|
"set-cookie-parser": "^2.6.0",
|
||||||
"sinon": "^15.2.0",
|
"sinon": "^16.0.0",
|
||||||
"split-grid": "^1.0.11",
|
"split-grid": "^1.0.11",
|
||||||
"supertest": "^6.3.3",
|
"supertest": "^6.3.3",
|
||||||
"typescript": "^4.9.5"
|
"typescript": "^4.9.5"
|
||||||
|
@ -106,6 +106,6 @@
|
||||||
"test-container": "mocha --timeout 5000 tests/container/specs/api",
|
"test-container": "mocha --timeout 5000 tests/container/specs/api",
|
||||||
"dev": "bash ./bin/run.sh"
|
"dev": "bash ./bin/run.sh"
|
||||||
},
|
},
|
||||||
"version": "1.9.2",
|
"version": "1.9.3",
|
||||||
"license": "Apache-2.0"
|
"license": "Apache-2.0"
|
||||||
}
|
}
|
||||||
|
|
|
@ -318,7 +318,7 @@ exports.padeditbar = new class {
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// Focus on the editbar :)
|
// Focus on the editbar :)
|
||||||
const firstEditbarElement = parent.parent.$('#editbar button').first();
|
const firstEditbarElement = $('#editbar button').first();
|
||||||
|
|
||||||
$(evt.currentTarget).trigger('blur');
|
$(evt.currentTarget).trigger('blur');
|
||||||
firstEditbarElement.trigger('focus');
|
firstEditbarElement.trigger('focus');
|
||||||
|
|
|
@ -51,7 +51,7 @@ exports.init = async function () {
|
||||||
// Start the Etherpad server on a random unused port.
|
// Start the Etherpad server on a random unused port.
|
||||||
settings.port = 0;
|
settings.port = 0;
|
||||||
settings.ip = 'localhost';
|
settings.ip = 'localhost';
|
||||||
settings.importExportRateLimiting = {max: 0};
|
settings.importExportRateLimiting = {max: 999999};
|
||||||
settings.commitRateLimiting = {duration: 0.001, points: 1e6};
|
settings.commitRateLimiting = {duration: 0.001, points: 1e6};
|
||||||
exports.httpServer = await server.start();
|
exports.httpServer = await server.start();
|
||||||
exports.baseUrl = `http://localhost:${exports.httpServer.address().port}`;
|
exports.baseUrl = `http://localhost:${exports.httpServer.address().port}`;
|
||||||
|
|
|
@ -15,6 +15,8 @@ try() { "$@" || fatal "'$@' failed"; }
|
||||||
MY_DIR=$(try cd "${0%/*}" && try pwd -P) || exit 1
|
MY_DIR=$(try cd "${0%/*}" && try pwd -P) || exit 1
|
||||||
try cd "${MY_DIR}/../../../.."
|
try cd "${MY_DIR}/../../../.."
|
||||||
|
|
||||||
|
sed -e '/^ *"importExportRateLimiting":/,/^ *\}/ s/"max":.*/"max": 100000000/' -i settings.json.template
|
||||||
|
|
||||||
try sed -e '
|
try sed -e '
|
||||||
s!"loadTest":[^,]*!"loadTest": true!
|
s!"loadTest":[^,]*!"loadTest": true!
|
||||||
# Reduce rate limit aggressiveness
|
# Reduce rate limit aggressiveness
|
||||||
|
|
Loading…
Reference in a new issue