Merge branch 'develop'

master 1.9.3
SamTV12345 2023-09-23 14:58:46 +02:00
commit 293bd64522
28 changed files with 817 additions and 2565 deletions

View File

@ -22,7 +22,7 @@ jobs:
steps:
-
name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
-
uses: actions/setup-node@v3
with:
@ -59,7 +59,7 @@ jobs:
steps:
-
name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
-
uses: actions/setup-node@v3
with:
@ -120,7 +120,7 @@ jobs:
steps:
-
name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
-
uses: actions/setup-node@v3
with:
@ -153,7 +153,7 @@ jobs:
steps:
-
name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
-
uses: actions/setup-node@v3
with:

View File

@ -23,7 +23,7 @@ jobs:
steps:
-
name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
# We must fetch at least the immediate parents so that if this is
# a pull request then we can checkout the head.

View File

@ -15,6 +15,6 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: 'Checkout Repository'
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: 'Dependency Review'
uses: actions/dependency-review-action@v3

View File

@ -17,17 +17,17 @@ jobs:
steps:
-
name: Check out
uses: actions/checkout@v3
uses: actions/checkout@v4
-
name: Set up QEMU
if: github.event_name == 'push'
uses: docker/setup-qemu-action@v2
uses: docker/setup-qemu-action@v3
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
uses: docker/setup-buildx-action@v3
-
name: Build and export to Docker
uses: docker/build-push-action@v4
uses: docker/build-push-action@v5
with:
context: .
load: true
@ -64,7 +64,7 @@ jobs:
name: Docker meta
if: github.event_name == 'push'
id: meta
uses: docker/metadata-action@v4
uses: docker/metadata-action@v5
with:
images: etherpad/etherpad
tags: |
@ -75,14 +75,14 @@ jobs:
-
name: Log in to Docker Hub
if: github.event_name == 'push'
uses: docker/login-action@v2
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
-
name: Build and push
if: github.event_name == 'push'
uses: docker/build-push-action@v4
uses: docker/build-push-action@v5
with:
context: .
platforms: linux/amd64,linux/arm64

View File

@ -12,10 +12,11 @@ jobs:
name: with plugins
runs-on: ubuntu-latest
# node: [16, 19, 20] >> Disabled node 16 and 18 because they do not work
strategy:
fail-fast: false
matrix:
node: [16, 18, 20]
node: [19, 20]
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 }}'
-
name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
-
uses: actions/setup-node@v3
with:
@ -69,6 +70,10 @@ jobs:
-
name: increase maxHttpBufferSize
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
run: mv src/tests/frontend/specs/* /tmp && mv /tmp/admin*.js src/tests/frontend/specs

View File

@ -21,7 +21,7 @@ jobs:
printf %s\\n '::set-output name=tunnel_id::${{ github.run_id }}-${{ github.run_number }}-${{ github.job }}'
-
name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
-
uses: actions/setup-node@v3
with:
@ -43,7 +43,7 @@ jobs:
-
name: Disable import/export rate limiting
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
with:
@ -76,7 +76,7 @@ jobs:
printf %s\\n '::set-output name=tunnel_id::${{ github.run_id }}-${{ github.run_number }}-${{ github.job }}'
-
name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
-
uses: actions/setup-node@v3
with:
@ -127,7 +127,7 @@ jobs:
-
name: Disable import/export rate limiting
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
-
name: Remove standard frontend test files, so only plugin tests are run

View File

@ -18,7 +18,7 @@ jobs:
steps:
-
name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
-
uses: actions/setup-node@v3
with:

View File

@ -18,7 +18,7 @@ jobs:
steps:
-
name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
-
uses: actions/setup-node@v3
with:
@ -48,7 +48,7 @@ jobs:
steps:
-
name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
-
uses: actions/setup-node@v3
with:
@ -105,7 +105,7 @@ jobs:
steps:
-
name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
-
uses: actions/setup-node@v3
with:

View File

@ -18,7 +18,7 @@ jobs:
steps:
-
name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
-
uses: actions/setup-node@v3
with:

View File

@ -22,7 +22,7 @@ jobs:
steps:
-
name: Check out latest release
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
ref: master
-
@ -67,7 +67,7 @@ jobs:
-
name: Run the backend tests
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}
# commit. Fetch ${GITHUB_REF} to get the ${GITHUB_SHA} commit. Note that a
# plain "git fetch" only fetches "normal" references (refs/heads/* and

View File

@ -15,22 +15,16 @@ jobs:
|| (github.event.pull_request.head.repo.id != github.event.pull_request.base.repo.id)
name: Build .zip
runs-on: windows-latest
defaults:
run:
shell: msys2 {0}
steps:
-
uses: msys2/setup-msys2@v2
with:
release: false
update: false
path-type: inherit
install: >-
zip
rsync
-
name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
-
uses: actions/setup-node@v3
with:
@ -41,17 +35,16 @@ jobs:
src/bin/doc/package-lock.json
-
name: Install all dependencies and symlink for ep_etherpad-lite
run: |
set MSYSTEM=winsymlinks:lnk
src/bin/installDeps.sh
shell: msys2 {0}
run: src/bin/installDeps.sh
-
name: Run the backend tests
shell: msys2 {0}
run: cd src && npm test
-
name: Build the .zip
run: |
set MSYSTEM=winsymlinks:lnk
src/bin/buildForWindows.sh
shell: msys2 {0}
run: src/bin/buildForWindows.sh
-
name: Archive production artifacts
uses: actions/upload-artifact@v3
@ -69,7 +62,7 @@ jobs:
steps:
-
name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
-
name: Download .zip
uses: actions/download-artifact@v3
@ -96,7 +89,7 @@ jobs:
# run on pushes to any branch
# run on PRs from external forks
permissions:
contents: none
contents: write
if: |
(github.event_name != 'pull_request')
|| (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 &
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
# 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

View File

@ -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
### Notable enhancements and fixes

View File

@ -17,6 +17,9 @@ RUN \
}
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
# installed.
# If given a value, it has to be a space-separated, quoted list of plugin names.
@ -78,7 +81,7 @@ RUN \
apk add \
ca-certificates \
git \
${INSTALL_ABIWORD:+abiword} \
${INSTALL_ABIWORD:+abiword abiword-plugin-command} \
${INSTALL_SOFFICE:+libreoffice openjdk8-jre libreoffice-common}
USER etherpad
@ -101,7 +104,7 @@ RUN { [ -z "${ETHERPAD_PLUGINS}" ] || \
rm -rf ~/.npm
# 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
RUN chmod -R g=u .

View File

@ -116,7 +116,7 @@ following:
### 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

View File

View File

@ -5,9 +5,9 @@
"requires": true,
"dependencies": {
"marked": {
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/marked/-/marked-7.0.3.tgz",
"integrity": "sha512-ev2uM40p0zQ/GbvqotfKcSWEa59fJwluGZj5dcaUOwDRrB1F3dncdXy8NWUApk4fi8atU3kTBOwjyjZ0ud0dxw=="
"version": "9.0.3",
"resolved": "https://registry.npmjs.org/marked/-/marked-9.0.3.tgz",
"integrity": "sha512-pI/k4nzBG1PEq1J3XFEHxVvjicfjl8rgaMaqclouGSMPhk7Q3Ejb2ZRxx/ZQOcQ1909HzVoWCFYq6oLgtL4BpQ=="
}
}
}

View File

@ -7,7 +7,7 @@
"node": ">=12.17.0"
},
"dependencies": {
"marked": "^7.0.3"
"marked": "^9.0.3"
},
"devDependencies": {},
"optionalDependencies": {},

View File

@ -182,8 +182,8 @@ try {
console.log('Updating ether.github.com master branch...');
run('git pull --ff-only', {cwd: '../ether.github.com/'});
console.log('Committing documentation...');
run(`cp -R out/doc/ ../ether.github.com/doc/v'${newVersion}'`);
run(`rm -f latest && ln -s 'v${newVersion}' latest`, {cwd: '../ether.github.com/doc/'});
run(`cp -R out/doc/ ../ether.github.com/public/doc/v'${newVersion}'`);
run(`npm version ${newVersion}`, {cwd:'../ether.github.com'})
run('git add .', {cwd: '../ether.github.com/'});
run(`git commit -m '${newVersion} docs'`, {cwd: '../ether.github.com/'});
} catch (err) {
@ -203,12 +203,9 @@ console.log(' (cd ../ether.github.com && git show)');
console.log('If everything looks good then push:');
console.log(` git push origin master develop '${newVersion}'`);
console.log(' (cd ../ether.github.com && git push)');
console.log('Create a Windows build:');
console.log(' bin/buildForWindows.sh');
console.log('Creating a Windows build is not necessary anymore and will be created by GitHub action');
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 ` +
'zip as an asset');
console.log('Once the new docs are uploaded then modify the download links (replace ' +
`${currentVersion} with ${newVersion} on etherpad.org and then pull master onto ` +
'develop)');
`with 'master' as the target and the version is ${newVersion}. `);
console.log('The docs are updated automatically with the new version. While the windows build' +
' is generated people can still download the older versions.');
console.log('Finally go public with an announcement via our comms channels :)');

View File

@ -2,13 +2,29 @@
"@metadata": {
"authors": [
"Baloch Afghanistan",
"Moshtank",
"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.createOpenPad": "یا ایجاد/بازکردن یک دفترچه یادداشت با نام:",
"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.strikethrough.title": "خط خورده",
"pad.toolbar.ol.title": "فهرست مرتب شده",
@ -21,12 +37,12 @@
"pad.toolbar.import_export.title": "درون‌ریزی/برون‌ریزی از/به قالب‌های مختلف",
"pad.toolbar.timeslider.title": "لغزندهٔ زمان",
"pad.toolbar.savedRevision.title": "ذخیره‌سازی نسخه",
"pad.toolbar.settings.title": "تنظیمات",
"pad.toolbar.settings.title": "ردانکان",
"pad.toolbar.embed.title": "اشتراک و جاسازی این دفترچه یادداشت",
"pad.toolbar.showusers.title": "نمایش کاربران در این دفترچه یادداشت",
"pad.colorpicker.save": "زاپاس کورتین",
"pad.colorpicker.cancel": "کنسیل",
"pad.loading": "...بار بیت",
"pad.colorpicker.save": "سَپت",
"pad.colorpicker.cancel": "بجَگ",
"pad.loading": "بییگئن...",
"pad.permissionDenied": "شرمنده، شما را اجازت په دسترسی ای صفحه نیست.",
"pad.settings.padSettings": "تنظیمات دفترچه یادداشت",
"pad.settings.myView": "منی سۏج",
@ -39,7 +55,7 @@
"pad.settings.language": "زبان:",
"pad.importExport.import_export": "درون‌ریزی/برون‌ریزی",
"pad.importExport.import": "بارگذاری پرونده‌ی متنی یا سند",
"pad.importExport.importSuccessful": "موفقیت آمیز بود!",
"pad.importExport.importSuccessful": "سۏبݔن بیت!",
"pad.importExport.export": "برون‌ریزی این دفترچه یادداشت با قالب:",
"pad.importExport.exporthtml": "HTML",
"pad.importExport.exportplain": "سادگین متن",
@ -66,21 +82,21 @@
"pad.modals.badChangeset.cause": "این می‌تواند به دلیل پیکربندی اشتباه یا سایر رفتارهای غیرمنتظره باشد. اگر فکر می‌کنید این یک خطا است لطفاً با مدیر خدمت تماس بگیرید. برای ادامهٔ ویرایش سعی کنید که دوباره متصل شوید.",
"pad.modals.corruptPad.explanation": "پدی که شما سعی دارید دسترسی پیدا کنید خراب است.",
"pad.modals.corruptPad.cause": "این احتمالاً به دلیل تنظیمات اشتباه کارساز یا سایر رفتارهای غیرمنتظره است. لطفاً با مدیر خدمت تماس حاصل کنید.",
"pad.modals.deleted": "پاک کورتین",
"pad.modals.deleted.explanation": "این دفترچه یادداشت پاک شده‌است.",
"pad.modals.deleted": "گار بیت۔",
"pad.modals.deleted.explanation": "اے یادداشت پاک کنگ بیتگ۔",
"pad.modals.disconnected": "شمئی سکّی کھت اِنت۔",
"pad.modals.disconnected.explanation": "اتصال به سرور قطع شده‌است.",
"pad.modals.disconnected.cause": "ممکن است سرور در دسترس نباشد. اگر این مشکل باز هم رخ داد مدیر حدمت را آگاه کنید.",
"pad.share": "به اشتراک‌گذاری این دفترچه یادداشت",
"pad.share.readonly": "فقط خواندنی",
"pad.share.link": "پیوند",
"pad.share.link": "لینک",
"pad.share.emebdcode": "جاسازی نشانی",
"pad.chat": "گفتگو",
"pad.chat.title": "بازکردن گفتگو برای این دفترچه یادداشت",
"pad.chat.loadmessages": "گݔشترݔں پیگامء چارگ",
"timeslider.pageTitle": "لغزندهٔ زمان {{appTitle}}",
"timeslider.toolbar.returnbutton": "بازگشت به دفترچه یادداشت",
"timeslider.toolbar.authors": "نویسوک:",
"timeslider.toolbar.returnbutton": "چَھر کنگ پہ یاددپترا",
"timeslider.toolbar.authors": "لککۏک:",
"timeslider.toolbar.authorsList": "بدون نویسنده",
"timeslider.toolbar.exportlink.title": "درگیزگ",
"timeslider.exportCurrent": "برون‌ریزی نگارش کنونی به عنوان:",

View File

@ -2,6 +2,7 @@
"@metadata": {
"authors": [
"Armando-Martin",
"Atzerritik",
"DDPAT",
"Dgstranz",
"Fitoschido",
@ -74,7 +75,7 @@
"pad.colorpicker.save": "Guardar",
"pad.colorpicker.cancel": "Cancelar",
"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.settings.padSettings": "Configuración del pad",
"pad.settings.myView": "Preferencias personales",
@ -98,7 +99,7 @@
"pad.importExport.exportword": "Microsoft Word",
"pad.importExport.exportpdf": "PDF",
"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.reconnecting": "Reconectando a tu pad...",
"pad.modals.forcereconnect": "Forzar reconexión",

View File

@ -10,7 +10,7 @@
"Xabier Armendaritz"
]
},
"admin.page-title": "Admin Aginte-panela - Etherpad",
"admin.page-title": "Kudeaketa panela - Etherpad",
"admin_plugins": "Plugin-en kudeaketa",
"admin_plugins.available": "Eskuragarri dauden plugin-ak",
"admin_plugins.available_not-found": "Ez da plugin-ik aurkitu",

View File

@ -68,7 +68,7 @@
"pad.settings.chatandusers": "Ammustra sa tzarrada e is utentes",
"pad.settings.colorcheck": "Colores de autoria",
"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.normal": "Normale",
"pad.settings.language": "Lìngua:",

View File

@ -9,7 +9,8 @@
"Shangkuanlc",
"Shirayuki",
"Simon Shek",
"Wehwei"
"Wehwei",
"Winston Sung"
]
},
"admin.page-title": "管理員面板 - Etherpad",
@ -134,7 +135,7 @@
"pad.chat.writeMessage.placeholder": "在此編寫您的訊息",
"timeslider.followContents": "關注記事本內容更新",
"timeslider.pageTitle": "{{appTitle}}時間軸",
"timeslider.toolbar.returnbutton": "返回記事本",
"timeslider.toolbar.returnbutton": "返回記事本",
"timeslider.toolbar.authors": "協作者:",
"timeslider.toolbar.authorsList": "無協作者",
"timeslider.toolbar.exportlink.title": "匯出",

3155
src/package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -31,7 +31,7 @@
],
"dependencies": {
"async": "^3.2.4",
"axios": "^1.4.0",
"axios": "^1.5.0",
"clean-css": "^5.3.2",
"cookie-parser": "^1.4.6",
"cross-spawn": "^7.0.3",
@ -39,11 +39,11 @@
"etherpad-require-kernel": "^1.0.15",
"etherpad-yajsml": "0.0.12",
"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",
"fast-deep-equal": "^3.1.3",
"find-root": "1.1.0",
"formidable": "^3.5.0",
"formidable": "^3.5.1",
"http-errors": "^2.0.0",
"js-cookie": "^3.0.5",
"jsdom": "^20.0.0",
@ -56,18 +56,18 @@
"npm": "^6.14.18",
"openapi-backend": "^5.9.2",
"proxy-addr": "^2.0.7",
"rate-limiter-flexible": "^2.4.2",
"rehype": "^12.0.1",
"rehype-minify-whitespace": "^5.0.1",
"resolve": "1.22.4",
"rate-limiter-flexible": "^3.0.0",
"rehype": "^13.0.1",
"rehype-minify-whitespace": "^6.0.0",
"resolve": "1.22.6",
"security": "1.0.0",
"semver": "^7.5.4",
"socket.io": "^2.5.0",
"superagent": "^8.1.1",
"terser": "^5.19.2",
"superagent": "^8.1.2",
"terser": "^5.20.0",
"threads": "^1.7.0",
"tinycon": "0.6.8",
"ueberdb2": "^4.1.20",
"ueberdb2": "^4.2.11",
"underscore": "1.13.6",
"unorm": "1.6.0",
"wtfnode": "^0.9.1"
@ -78,16 +78,16 @@
"etherpad-lite": "node/server.js"
},
"devDependencies": {
"eslint": "^8.47.0",
"eslint-config-etherpad": "^3.0.21",
"eslint": "^8.49.0",
"eslint-config-etherpad": "^3.0.22",
"etherpad-cli-client": "^2.0.2",
"mocha": "^10.0.0",
"mocha-froth": "^0.2.10",
"nodeify": "^1.0.1",
"openapi-schema-validation": "^0.4.2",
"selenium-webdriver": "^4.11.1",
"selenium-webdriver": "^4.12.0",
"set-cookie-parser": "^2.6.0",
"sinon": "^15.2.0",
"sinon": "^16.0.0",
"split-grid": "^1.0.11",
"supertest": "^6.3.3",
"typescript": "^4.9.5"
@ -106,6 +106,6 @@
"test-container": "mocha --timeout 5000 tests/container/specs/api",
"dev": "bash ./bin/run.sh"
},
"version": "1.9.2",
"version": "1.9.3",
"license": "Apache-2.0"
}

View File

@ -318,7 +318,7 @@ exports.padeditbar = new class {
}
} else {
// Focus on the editbar :)
const firstEditbarElement = parent.parent.$('#editbar button').first();
const firstEditbarElement = $('#editbar button').first();
$(evt.currentTarget).trigger('blur');
firstEditbarElement.trigger('focus');

View File

@ -51,7 +51,7 @@ exports.init = async function () {
// Start the Etherpad server on a random unused port.
settings.port = 0;
settings.ip = 'localhost';
settings.importExportRateLimiting = {max: 0};
settings.importExportRateLimiting = {max: 999999};
settings.commitRateLimiting = {duration: 0.001, points: 1e6};
exports.httpServer = await server.start();
exports.baseUrl = `http://localhost:${exports.httpServer.address().port}`;

View File

@ -15,6 +15,8 @@ try() { "$@" || fatal "'$@' failed"; }
MY_DIR=$(try cd "${0%/*}" && try pwd -P) || exit 1
try cd "${MY_DIR}/../../../.."
sed -e '/^ *"importExportRateLimiting":/,/^ *\}/ s/"max":.*/"max": 100000000/' -i settings.json.template
try sed -e '
s!"loadTest":[^,]*!"loadTest": true!
# Reduce rate limit aggressiveness