From 42a7b07db4e946a826d09b81d079ccc98fb96c77 Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Wed, 23 Aug 2023 07:04:45 +0000 Subject: [PATCH 01/26] Translate en.json in ca 100% translated source file: 'en.json' on 'ca'. --- bigbluebutton-html5/public/locales/ca.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bigbluebutton-html5/public/locales/ca.json b/bigbluebutton-html5/public/locales/ca.json index 9756bb972f88..03f57cf76727 100644 --- a/bigbluebutton-html5/public/locales/ca.json +++ b/bigbluebutton-html5/public/locales/ca.json @@ -1184,7 +1184,7 @@ "app.layout.modal.cancel": "Cancel·lar", "app.layout.modal.layoutLabel": "Selecciona el teu disseny", "app.layout.modal.keepPushingLayoutLabel": "Disseny push per a tots", - "app.layout.modal.pushLayoutLabel": "Push to everyone", + "app.layout.modal.pushLayoutLabel": "Empènyer a tots", "app.layout.modal.layoutToastLabel": "Canvis en la configuració del disseny", "app.layout.modal.layoutSingular": "Disseny", "app.layout.modal.layoutBtnDesc": "Estableix el disseny com a opció seleccionada", From ee89a64914346a46537178ea72524fa16f347258 Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Thu, 24 Aug 2023 11:14:40 -0400 Subject: [PATCH 02/26] docs: added link to 2.6.12 --- docs/docs/new-features.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/docs/new-features.md b/docs/docs/new-features.md index 28638e956de5..61290f3bfad2 100644 --- a/docs/docs/new-features.md +++ b/docs/docs/new-features.md @@ -179,7 +179,7 @@ Allows for quicker, more efficient search and retrieval of recording data. ### Upgraded components Under the hood, BigBlueButton 2.6 installs on Ubuntu 20.04 64-bit, and the following key components have been upgraded -- Meteor 2.12 +- Meteor 2.13 - Grails 5.2.4 - Spring 2.7.12 @@ -187,6 +187,7 @@ For full details on what is new in BigBlueButton 2.6, see the release notes. ### Recent releases: +- [2.6.12](https://github.com/bigbluebutton/bigbluebutton/releases/tag/v2.6.12) - [2.6.11](https://github.com/bigbluebutton/bigbluebutton/releases/tag/v2.6.11) - [2.6.10](https://github.com/bigbluebutton/bigbluebutton/releases/tag/v2.6.10) - [2.6.9](https://github.com/bigbluebutton/bigbluebutton/releases/tag/v2.6.9) From 7cb976426792309a975ffb9baf31b20d8421ebaf Mon Sep 17 00:00:00 2001 From: KDSBrowne Date: Sun, 27 Aug 2023 18:45:37 +0000 Subject: [PATCH 03/26] fix wheel zoom breaking slide position --- .../ui/components/whiteboard/component.jsx | 22 +++++++++++++------ 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/bigbluebutton-html5/imports/ui/components/whiteboard/component.jsx b/bigbluebutton-html5/imports/ui/components/whiteboard/component.jsx index 2196371a0221..7458501f21b5 100644 --- a/bigbluebutton-html5/imports/ui/components/whiteboard/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/whiteboard/component.jsx @@ -2,7 +2,7 @@ import * as React from 'react'; import PropTypes from 'prop-types'; import _ from 'lodash'; import { TldrawApp, Tldraw } from '@tldraw/tldraw'; -import SlideCalcUtil, { HUNDRED_PERCENT } from '/imports/utils/slideCalcUtils'; +import SlideCalcUtil, { HUNDRED_PERCENT, MAX_PERCENT } from '/imports/utils/slideCalcUtils'; // eslint-disable-next-line import/no-extraneous-dependencies import { Utils } from '@tldraw/core'; import Cursors from './cursors/container'; @@ -92,6 +92,7 @@ export default function Whiteboard(props) { const [history, setHistory] = React.useState(null); const [zoom, setZoom] = React.useState(HUNDRED_PERCENT); const [tldrawZoom, setTldrawZoom] = React.useState(1); + const zoomValueRef = React.useRef(zoomValue); const [isMounting, setIsMounting] = React.useState(true); const prevShapes = usePrevious(shapes); const prevSlidePosition = usePrevious(slidePosition); @@ -114,6 +115,10 @@ export default function Whiteboard(props) { }; }, []); + React.useEffect(() => { + zoomValueRef.current = zoomValue; + }, [zoomValue]); + const setSafeTLDrawAPI = (api) => { if (isMountedRef.current) { setTldrawAPI(api); @@ -208,8 +213,16 @@ export default function Whiteboard(props) { tldrawAPI?.completeSession?.(); } }; - + const handleWheelEvent = (event) => { + if ((zoomValueRef.current >= MAX_PERCENT && event.deltaY < 0) + || (zoomValueRef.current <= HUNDRED_PERCENT && event.deltaY > 0)) + { + event.stopPropagation(); + event.preventDefault(); + return window.dispatchEvent(new Event('resize')); + } + if (!event.ctrlKey) { // Prevent the event from reaching the tldraw library event.stopPropagation(); @@ -745,11 +758,6 @@ export default function Whiteboard(props) { camera.point[1] = 0; } - if (camera.point[0] === 0 && camera.point[1] === 0) { - const newZoom = calculateZoom(slidePosition.viewBoxWidth, slidePosition.viewBoxHeight); - e?.setCamera([camera.point[0], camera.point[1]], newZoom); - } - const zoomFitSlide = calculateZoom(slidePosition.width, slidePosition.height); if (camera.zoom < zoomFitSlide) { camera.zoom = zoomFitSlide; From a381391968d2feb3d46801553195885a7479d70c Mon Sep 17 00:00:00 2001 From: KDSBrowne Date: Sun, 27 Aug 2023 19:19:04 +0000 Subject: [PATCH 04/26] update toolbar zoom value on slide change --- .../imports/ui/components/whiteboard/component.jsx | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/bigbluebutton-html5/imports/ui/components/whiteboard/component.jsx b/bigbluebutton-html5/imports/ui/components/whiteboard/component.jsx index 7458501f21b5..8ba46763336e 100644 --- a/bigbluebutton-html5/imports/ui/components/whiteboard/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/whiteboard/component.jsx @@ -463,6 +463,20 @@ export default function Whiteboard(props) { const newZoom = calculateZoom(slidePosition.viewBoxWidth, slidePosition.viewBoxHeight); tldrawAPI?.setCamera([slidePosition.x, slidePosition.y], newZoom, 'zoomed'); } + + const camera = tldrawAPI?.getPageState()?.camera; + if (isPresenter && slidePosition && camera) { + const zoomFitSlide = calculateZoom(slidePosition.width, slidePosition.height); + const zoomCamera = (zoomFitSlide * zoomValue) / HUNDRED_PERCENT; + let zoomToolbar = Math.round( + ((HUNDRED_PERCENT * camera.zoom) / zoomFitSlide) * 100, + ) / 100; + + if (zoom !== zoomToolbar) { + setZoom(zoomToolbar); + zoomChanger(zoomToolbar); + } + } }, [curPageId, slidePosition]); // update zoom according to toolbar From 4e8965b218fa2e735d54ee6a9cc14a71906cbd30 Mon Sep 17 00:00:00 2001 From: KDSBrowne Date: Sun, 27 Aug 2023 19:58:06 +0000 Subject: [PATCH 05/26] improve tldraw style menu a11y --- .../imports/ui/components/whiteboard/component.jsx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/bigbluebutton-html5/imports/ui/components/whiteboard/component.jsx b/bigbluebutton-html5/imports/ui/components/whiteboard/component.jsx index 2196371a0221..106a6f75b84e 100644 --- a/bigbluebutton-html5/imports/ui/components/whiteboard/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/whiteboard/component.jsx @@ -597,6 +597,11 @@ export default function Whiteboard(props) { tldrawAPI?.selectAll(); } break; + case KEY_CODES.ARROW_DOWN: + case KEY_CODES.ARROW_UP: + event.preventDefault(); + event.stopPropagation(); + break; default: } }; From 87a2f698a7d682a3dd3565ad941f7b1971576574 Mon Sep 17 00:00:00 2001 From: KDSBrowne Date: Tue, 29 Aug 2023 14:29:11 +0000 Subject: [PATCH 06/26] handle zoom percent value being lost on minimize + restore --- .../imports/ui/components/whiteboard/component.jsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bigbluebutton-html5/imports/ui/components/whiteboard/component.jsx b/bigbluebutton-html5/imports/ui/components/whiteboard/component.jsx index 8ba46763336e..625876c292ac 100644 --- a/bigbluebutton-html5/imports/ui/components/whiteboard/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/whiteboard/component.jsx @@ -98,6 +98,7 @@ export default function Whiteboard(props) { const prevSlidePosition = usePrevious(slidePosition); const prevFitToWidth = usePrevious(fitToWidth); const prevSvgUri = usePrevious(svgUri); + const prevPageId = usePrevious(curPageId); const language = mapLanguage(Settings?.application?.locale?.toLowerCase() || 'en'); const [currentTool, setCurrentTool] = React.useState(null); const [currentStyle, setCurrentStyle] = React.useState({}); @@ -471,8 +472,7 @@ export default function Whiteboard(props) { let zoomToolbar = Math.round( ((HUNDRED_PERCENT * camera.zoom) / zoomFitSlide) * 100, ) / 100; - - if (zoom !== zoomToolbar) { + if ((zoom !== zoomToolbar) && (curPageId && curPageId !== prevPageId)) { setZoom(zoomToolbar); zoomChanger(zoomToolbar); } From 4ea77f1068795311a5ccb340a62e42d590e6af5d Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Wed, 30 Aug 2023 17:18:46 -0400 Subject: [PATCH 07/26] chore: upgrade NodeJS to 18 --- .gitlab-ci.yml | 2 +- bigbluebutton-html5/imports/startup/server/index.js | 5 ----- docs/docs/new-features.md | 1 + 3 files changed, 2 insertions(+), 6 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 6e2f9a0101eb..37459b0fa255 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -12,7 +12,7 @@ stages: # define which docker image to use for builds default: - image: gitlab.senfcall.de:5050/senfcall-public/docker-bbb-build:v2022-12-29-grails-524 + image: bigbluebutton/bbb-build:bbb27-2023-06-09-node18 #TODO # This stage uses git to find out since when each package has been unmodified. # it then checks an API endpoint on the package server to find out for which of diff --git a/bigbluebutton-html5/imports/startup/server/index.js b/bigbluebutton-html5/imports/startup/server/index.js index 8c8991efb0cd..67f572374d08 100755 --- a/bigbluebutton-html5/imports/startup/server/index.js +++ b/bigbluebutton-html5/imports/startup/server/index.js @@ -29,11 +29,6 @@ process.on('uncaughtException', (err) => { process.exit(1); }); -process.on('uncaughtException', (err) => { - Logger.error(`uncaughtException: ${err}`); - process.exit(1); -}); - const formatMemoryUsage = (data) => `${Math.round(data / 1024 / 1024 * 100) / 100} MB` const serverHealth = () => { diff --git a/docs/docs/new-features.md b/docs/docs/new-features.md index 61290f3bfad2..c414e967b332 100644 --- a/docs/docs/new-features.md +++ b/docs/docs/new-features.md @@ -182,6 +182,7 @@ Under the hood, BigBlueButton 2.6 installs on Ubuntu 20.04 64-bit, and the follo - Meteor 2.13 - Grails 5.2.4 - Spring 2.7.12 +- NodeJS 18 (up from 16) for `bbb-pads`, `bbb-export-annotations`, `bbb-webrtc-sfu`, `bbb-etherpad`, `bbb-webhooks` For full details on what is new in BigBlueButton 2.6, see the release notes. From 1159e7af3ce5f0592af9dfc3372aa561ca646096 Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Wed, 21 Jun 2023 08:58:23 -0400 Subject: [PATCH 08/26] build: resetting mcs-address from localhost to 127.0.01 --- build/packages-template/bbb-webrtc-sfu/after-install.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/build/packages-template/bbb-webrtc-sfu/after-install.sh b/build/packages-template/bbb-webrtc-sfu/after-install.sh index a8ba57a0c125..9f25d4c64eff 100755 --- a/build/packages-template/bbb-webrtc-sfu/after-install.sh +++ b/build/packages-template/bbb-webrtc-sfu/after-install.sh @@ -43,6 +43,11 @@ case "$1" in touch /var/log/bbb-webrtc-sfu/bbb-webrtc-sfu.log yq w -i $TARGET recordWebcams true + + + echo "Resetting mcs-address from localhost to 127.0.0.1' + yq w -i $TARGET mcs-address 127.0.0.1 + if id bigbluebutton > /dev/null 2>&1 ; then chown -R bigbluebutton:bigbluebutton /usr/local/bigbluebutton/bbb-webrtc-sfu /var/log/bbb-webrtc-sfu/ else From 7bab189a2300f6baf1845b322130f475ac10603e Mon Sep 17 00:00:00 2001 From: Paul Trudel Date: Mon, 12 Jun 2023 21:15:33 +0000 Subject: [PATCH 09/26] Change target to release for java 17 --- akka-bbb-apps/build.sbt | 2 +- bbb-common-message/build.sbt | 2 +- bbb-common-web/build.sbt | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/akka-bbb-apps/build.sbt b/akka-bbb-apps/build.sbt index a22969a95190..213ce4935e98 100755 --- a/akka-bbb-apps/build.sbt +++ b/akka-bbb-apps/build.sbt @@ -18,7 +18,7 @@ val compileSettings = Seq( "-Xlint", "-Ywarn-dead-code", "-language:_", - "-target:11", + "-release:17", "-encoding", "UTF-8" ), javacOptions ++= List( diff --git a/bbb-common-message/build.sbt b/bbb-common-message/build.sbt index d99c62fb885c..c411fa9a54cc 100755 --- a/bbb-common-message/build.sbt +++ b/bbb-common-message/build.sbt @@ -12,7 +12,7 @@ val compileSettings = Seq( "-Xlint", "-Ywarn-dead-code", "-language:_", - "-target:11", + "-release:17", "-encoding", "UTF-8" ), javacOptions ++= List( diff --git a/bbb-common-web/build.sbt b/bbb-common-web/build.sbt index 8d65800f7716..139510466795 100755 --- a/bbb-common-web/build.sbt +++ b/bbb-common-web/build.sbt @@ -11,7 +11,7 @@ val compileSettings = Seq( "-Xlint", "-Ywarn-dead-code", "-language:_", - "-target:11", + "-release:17", "-encoding", "UTF-8" ), javacOptions ++= List( From f83ff609012e3c31c91a72305625e320e1fb2fbe Mon Sep 17 00:00:00 2001 From: Paul Trudel Date: Mon, 12 Jun 2023 21:27:13 +0000 Subject: [PATCH 10/26] Change target to release for java 17 on fsesl --- akka-bbb-fsesl/build.sbt | 2 +- bbb-fsesl-client/build.sbt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/akka-bbb-fsesl/build.sbt b/akka-bbb-fsesl/build.sbt index 88ee24c71476..cf125a18778f 100755 --- a/akka-bbb-fsesl/build.sbt +++ b/akka-bbb-fsesl/build.sbt @@ -18,7 +18,7 @@ val compileSettings = Seq( "-Xlint", "-Ywarn-dead-code", "-language:_", - "-target:11", + "-release:17", "-encoding", "UTF-8" ), javacOptions ++= List( diff --git a/bbb-fsesl-client/build.sbt b/bbb-fsesl-client/build.sbt index a45d6b1f72f3..c7cf9043f1c3 100755 --- a/bbb-fsesl-client/build.sbt +++ b/bbb-fsesl-client/build.sbt @@ -13,7 +13,7 @@ val compileSettings = Seq( "-Xlint", "-Ywarn-dead-code", "-language:_", - "-target:11", + "-release:17", "-encoding", "UTF-8" ), javacOptions ++= List( From dd59955c7df6be006be2e9150a7e689caaef211d Mon Sep 17 00:00:00 2001 From: Paul Trudel Date: Tue, 13 Jun 2023 15:02:56 +0000 Subject: [PATCH 11/26] Upgrade gorm and groovy versions --- bigbluebutton-web/gradle.properties | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bigbluebutton-web/gradle.properties b/bigbluebutton-web/gradle.properties index 14b3eefebdfa..839b435c7a50 100644 --- a/bigbluebutton-web/gradle.properties +++ b/bigbluebutton-web/gradle.properties @@ -1,7 +1,7 @@ grailsVersion=5.3.2 -gormVersion=7.1.0 +gormVersion=7.3.1 gradleWrapperVersion=7.3.1 grailsGradlePluginVersion=5.0.0 -groovyVersion=3.0.9 +groovyVersion=3.0.11 tomcatEmbedVersion=9.0.78 springVersion=2.7.12 From 38286c6b7e5473f91b36393214c752e8bc007c1f Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Tue, 13 Jun 2023 14:26:12 -0400 Subject: [PATCH 12/26] build: use Java17 to build akka projects --- akka-bbb-apps/build.sbt | 2 +- akka-bbb-fsesl/build.sbt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/akka-bbb-apps/build.sbt b/akka-bbb-apps/build.sbt index 213ce4935e98..61a4bf15d289 100755 --- a/akka-bbb-apps/build.sbt +++ b/akka-bbb-apps/build.sbt @@ -76,4 +76,4 @@ daemonGroup in Linux := group javaOptions in Universal ++= Seq("-J-Xms130m", "-J-Xmx256m", "-Dconfig.file=/etc/bigbluebutton/bbb-apps-akka.conf", "-Dlogback.configurationFile=conf/logback.xml") -debianPackageDependencies in Debian ++= Seq("java11-runtime-headless", "bash") +debianPackageDependencies in Debian ++= Seq("java17-runtime-headless", "bash") diff --git a/akka-bbb-fsesl/build.sbt b/akka-bbb-fsesl/build.sbt index cf125a18778f..5f1b94aa82ec 100755 --- a/akka-bbb-fsesl/build.sbt +++ b/akka-bbb-fsesl/build.sbt @@ -77,4 +77,4 @@ daemonGroup in Linux := group javaOptions in Universal ++= Seq("-J-Xms130m", "-J-Xmx256m", "-Dconfig.file=/etc/bigbluebutton/bbb-fsesl-akka.conf", "-Dlogback.configurationFile=conf/logback.xml") -debianPackageDependencies in Debian ++= Seq("java11-runtime-headless", "bash", "bbb-freeswitch-core") +debianPackageDependencies in Debian ++= Seq("java17-runtime-headless", "bash", "bbb-freeswitch-core") From d0417db65e65124b6640a4527fcf5e2df0369c75 Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Tue, 13 Jun 2023 14:27:58 -0400 Subject: [PATCH 13/26] docs: added info on Java 17 upgrade --- docs/docs/development/dev-guide.md | 6 +++--- docs/docs/new-features.md | 4 ++++ 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/docs/docs/development/dev-guide.md b/docs/docs/development/dev-guide.md index c0a98af6750d..5df9517f7a4a 100644 --- a/docs/docs/development/dev-guide.md +++ b/docs/docs/development/dev-guide.md @@ -133,7 +133,7 @@ vi ~/.profile Add the following line at the end of the file ```bash -export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 +export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64 ``` Reload your profile (this will happen automatically when you next login, but we'll do it explicitly here to load the new environment variable). @@ -146,7 +146,7 @@ Do a quick test to ensure JAVA_HOME is set. ```bash $ echo $JAVA_HOME -/usr/lib/jvm/java-11-openjdk-amd64 +/usr/lib/jvm/java-17-openjdk-amd64 ``` In the next step, you need to install a number of tools using sdkman. @@ -156,7 +156,7 @@ curl -s "https://get.sdkman.io" | bash source "$HOME/.sdkman/bin/sdkman-init.sh" sdk install gradle 7.3.1 -sdk install grails 5.0.1 +sdk install grails 5.3.2 sdk install sbt 1.6.2 sdk install maven 3.5.0 ``` diff --git a/docs/docs/new-features.md b/docs/docs/new-features.md index c414e967b332..2184e39e0bcc 100644 --- a/docs/docs/new-features.md +++ b/docs/docs/new-features.md @@ -183,6 +183,10 @@ Under the hood, BigBlueButton 2.6 installs on Ubuntu 20.04 64-bit, and the follo - Grails 5.2.4 - Spring 2.7.12 - NodeJS 18 (up from 16) for `bbb-pads`, `bbb-export-annotations`, `bbb-webrtc-sfu`, `bbb-etherpad`, `bbb-webhooks` +- Java 17 (up from 11) for `bbb-common-message`, `bbb-common-web`, `bigbluebutton-web`, `akka-bbb-apps`, `bbb-fsesl-client`, and `akka-bbb-fsesl` +- Grails 5.3.2 +- GORM 7.3.1 +- Groovy 3.0.11 For full details on what is new in BigBlueButton 2.6, see the release notes. From c4e849edc81f03acdcd5eb5025c245f737e32c93 Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Wed, 14 Jun 2023 10:55:00 -0400 Subject: [PATCH 14/26] build: specify java 17 on bbb-web install --- build/packages-template/bbb-web/after-install.sh | 2 +- build/packages-template/bbb-web/build.sh | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/build/packages-template/bbb-web/after-install.sh b/build/packages-template/bbb-web/after-install.sh index b14300b6373c..88d6e7b28e05 100755 --- a/build/packages-template/bbb-web/after-install.sh +++ b/build/packages-template/bbb-web/after-install.sh @@ -66,7 +66,7 @@ bbb_config() { touch /var/log/bigbluebutton/bbb-web.log chown bigbluebutton:bigbluebutton /var/log/bigbluebutton/bbb-web.log - update-java-alternatives -s java-1.11.0-openjdk-amd64 + update-java-alternatives -s java-1.17.0-openjdk-amd64 # Restart bbb-web to deploy new startService bbb-web.service || echo "bbb-web.service could not be registered or started" diff --git a/build/packages-template/bbb-web/build.sh b/build/packages-template/bbb-web/build.sh index 57b776fb9b13..df0bca05134e 100755 --- a/build/packages-template/bbb-web/build.sh +++ b/build/packages-template/bbb-web/build.sh @@ -26,8 +26,6 @@ echo 'resolvers += "Artima Maven Repository" at "https://repo.artima.com/release ## -# [ $DISTRO == "centos6" ] && JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-1.11.0.91-1.b14.el6.x86_64 - EPHEMERAL_VERSION=0.0.$(date +%s)-SNAPSHOT sed -i "s|\(version := \)\".*|\1\"$EPHEMERAL_VERSION\"|g" bbb-common-message/build.sbt find -name build.gradle -exec sed -i "s|\(.*org.bigbluebutton.*bbb-common-message[^:]*\):.*|\1:$EPHEMERAL_VERSION\"|g" {} \; From 7f117eea45844b9e4080cf776653a41572812bd0 Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Thu, 31 Aug 2023 07:09:10 -0400 Subject: [PATCH 15/26] add java17 as bbb-web dependency --- build/packages-template/bbb-web/opts-focal.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/packages-template/bbb-web/opts-focal.sh b/build/packages-template/bbb-web/opts-focal.sh index d39f83fe2d66..1a946fd0f0d0 100644 --- a/build/packages-template/bbb-web/opts-focal.sh +++ b/build/packages-template/bbb-web/opts-focal.sh @@ -1,3 +1,3 @@ . ./opts-global.sh -OPTS="$OPTS -t deb -d zip,unzip,imagemagick,redis-server,xpdf-utils,bbb-libreoffice-docker,psmisc,fonts-crosextra-carlito,fonts-crosextra-caladea,fonts-noto,openjdk-11-jdk,file" +OPTS="$OPTS -t deb -d zip,unzip,imagemagick,redis-server,xpdf-utils,bbb-libreoffice-docker,psmisc,fonts-crosextra-carlito,fonts-crosextra-caladea,fonts-noto,openjdk-17-jdk,file" From de3f5f07499aeecc744445acde8119a97095e4a9 Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Thu, 31 Aug 2023 07:09:35 -0400 Subject: [PATCH 16/26] use package building image with java17 node18 --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 37459b0fa255..9a4fea321fe9 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -12,7 +12,7 @@ stages: # define which docker image to use for builds default: - image: bigbluebutton/bbb-build:bbb27-2023-06-09-node18 #TODO + image: bigbluebutton/bbb-build:v2.6.x-release--2023-08-30-211201 # This stage uses git to find out since when each package has been unmodified. # it then checks an API endpoint on the package server to find out for which of From 420fbdcdbcfed130b5f296510058f7cb9a1b34d2 Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Thu, 31 Aug 2023 07:10:25 -0400 Subject: [PATCH 17/26] grails 5.3.2 in docs --- docs/docs/new-features.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/docs/new-features.md b/docs/docs/new-features.md index 2184e39e0bcc..70235ec428cc 100644 --- a/docs/docs/new-features.md +++ b/docs/docs/new-features.md @@ -180,7 +180,7 @@ Allows for quicker, more efficient search and retrieval of recording data. Under the hood, BigBlueButton 2.6 installs on Ubuntu 20.04 64-bit, and the following key components have been upgraded - Meteor 2.13 -- Grails 5.2.4 +- Grails 5.3.2 - Spring 2.7.12 - NodeJS 18 (up from 16) for `bbb-pads`, `bbb-export-annotations`, `bbb-webrtc-sfu`, `bbb-etherpad`, `bbb-webhooks` - Java 17 (up from 11) for `bbb-common-message`, `bbb-common-web`, `bigbluebutton-web`, `akka-bbb-apps`, `bbb-fsesl-client`, and `akka-bbb-fsesl` From 826b157e88c59c9492dac1995e046017ab51173b Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Thu, 31 Aug 2023 07:13:59 -0400 Subject: [PATCH 18/26] use bbb-install from github --- .github/workflows/automated-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/automated-tests.yml b/.github/workflows/automated-tests.yml index 973062fbfbbe..15df026f4cf8 100644 --- a/.github/workflows/automated-tests.yml +++ b/.github/workflows/automated-tests.yml @@ -120,7 +120,7 @@ jobs: - name: Install BBB run: | sudo sh -c ' - cd /root/ && wget -q https://ubuntu.bigbluebutton.org/bbb-install-2.6.sh -O bbb-install.sh + cd /root/ && wget -nv https://raw.githubusercontent.com/bigbluebutton/bbb-install/master/bbb-install-2.6.sh -O bbb-install.sh cat bbb-install.sh | sed "s|> /etc/apt/sources.list.d/bigbluebutton.list||g" | bash -s -- -v focal-26-dev -s bbb-ci.test -j -d /certs/ bbb-conf --salt bbbci echo "NODE_EXTRA_CA_CERTS=/usr/local/share/ca-certificates/bbb-dev/bbb-dev-ca.crt" >> /usr/share/meteor/bundle/bbb-html5-with-roles.conf From 5a4105b78b9ad378a7b548d095ed6845c6b30ded Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Tue, 13 Jun 2023 14:33:50 -0400 Subject: [PATCH 19/26] chore: allow newer nodejs to be used on bbb-export-annotations --- bbb-export-annotations/package-lock.json | 4 ++-- bbb-export-annotations/package.json | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/bbb-export-annotations/package-lock.json b/bbb-export-annotations/package-lock.json index 3c9c54e2bb64..ab6424497dde 100644 --- a/bbb-export-annotations/package-lock.json +++ b/bbb-export-annotations/package-lock.json @@ -21,8 +21,8 @@ "eslint-config-google": "^0.14.0" }, "engines": { - "node": "^16.16.0", - "npm": "^8.5.0" + "node": ">=16", + "npm": ">=8.5" } }, "node_modules/@eslint/eslintrc": { diff --git a/bbb-export-annotations/package.json b/bbb-export-annotations/package.json index 1caf3b67a106..b4201334429c 100644 --- a/bbb-export-annotations/package.json +++ b/bbb-export-annotations/package.json @@ -20,7 +20,7 @@ "eslint-config-google": "^0.14.0" }, "engines": { - "node": "^16.16.0", - "npm": "^8.5.0" + "node": ">=16", + "npm": ">=8.5" } } From aa7c649b2c946bfe169fc7827a58897a36f3b5c9 Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Wed, 21 Jun 2023 09:14:32 -0400 Subject: [PATCH 20/26] build: fix mismatched quote --- build/packages-template/bbb-webrtc-sfu/after-install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/packages-template/bbb-webrtc-sfu/after-install.sh b/build/packages-template/bbb-webrtc-sfu/after-install.sh index 9f25d4c64eff..7ff86b823538 100755 --- a/build/packages-template/bbb-webrtc-sfu/after-install.sh +++ b/build/packages-template/bbb-webrtc-sfu/after-install.sh @@ -45,7 +45,7 @@ case "$1" in yq w -i $TARGET recordWebcams true - echo "Resetting mcs-address from localhost to 127.0.0.1' + echo "Resetting mcs-address from localhost to 127.0.0.1" yq w -i $TARGET mcs-address 127.0.0.1 if id bigbluebutton > /dev/null 2>&1 ; then From 89d17ff63963bbf401c1777db1f1fedefc8c10c2 Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Fri, 1 Sep 2023 08:19:50 -0400 Subject: [PATCH 21/26] build: require node 18 to install bbb packages --- build/packages-template/bbb-etherpad/build.sh | 3 ++- build/packages-template/bbb-export-annotations/build.sh | 3 ++- build/packages-template/bbb-pads/build.sh | 3 ++- build/packages-template/bbb-webhooks/build.sh | 3 ++- build/packages-template/bbb-webrtc-sfu/build.sh | 3 ++- 5 files changed, 10 insertions(+), 5 deletions(-) diff --git a/build/packages-template/bbb-etherpad/build.sh b/build/packages-template/bbb-etherpad/build.sh index 3c5e491565f3..2efafb738bef 100755 --- a/build/packages-template/bbb-etherpad/build.sh +++ b/build/packages-template/bbb-etherpad/build.sh @@ -80,5 +80,6 @@ fpm -s dir -C ./staging -n $PACKAGE \ --after-remove after-remove.sh \ --description "The EtherPad Lite components for BigBlueButton" \ $DIRECTORIES \ - $OPTS + $OPTS \ + -d 'nodejs (>= 18)' -d 'yq (<< 20)' diff --git a/build/packages-template/bbb-export-annotations/build.sh b/build/packages-template/bbb-export-annotations/build.sh index 45d9c9be5aef..0618c9b4d1ca 100755 --- a/build/packages-template/bbb-export-annotations/build.sh +++ b/build/packages-template/bbb-export-annotations/build.sh @@ -43,5 +43,6 @@ fpm -s dir -C ./staging -n $PACKAGE \ --before-remove before-remove.sh \ --description "BigBlueButton Export Annotations" \ $DIRECTORIES \ - $OPTS + $OPTS \ + -d 'nodejs (>= 18)' -d 'yq (<< 20)' diff --git a/build/packages-template/bbb-pads/build.sh b/build/packages-template/bbb-pads/build.sh index d1ce63304990..54782cdbf682 100755 --- a/build/packages-template/bbb-pads/build.sh +++ b/build/packages-template/bbb-pads/build.sh @@ -38,5 +38,6 @@ fpm -s dir -C ./staging -n $PACKAGE \ --before-remove before-remove.sh \ --description "BigBlueButton Pads" \ $DIRECTORIES \ - $OPTS + $OPTS \ + -d 'nodejs (>= 18)' -d 'yq (<< 20)' diff --git a/build/packages-template/bbb-webhooks/build.sh b/build/packages-template/bbb-webhooks/build.sh index d06592c4daaf..8caa029396ef 100755 --- a/build/packages-template/bbb-webhooks/build.sh +++ b/build/packages-template/bbb-webhooks/build.sh @@ -46,4 +46,5 @@ fpm -s dir -C ./staging -n $PACKAGE \ --description "BigBlueButton Webhooks" \ $DIRECTORIES \ $OPTS \ - -d 'yq (>= 3)' -d 'yq (<< 4)' + -d 'yq (>= 3)' -d 'yq (<< 4)' \ + -d 'nodejs (>= 18)' -d 'yq (<< 20)' diff --git a/build/packages-template/bbb-webrtc-sfu/build.sh b/build/packages-template/bbb-webrtc-sfu/build.sh index fc6b3f6f0a50..0be99b7fec7b 100755 --- a/build/packages-template/bbb-webrtc-sfu/build.sh +++ b/build/packages-template/bbb-webrtc-sfu/build.sh @@ -64,4 +64,5 @@ fpm -s dir -C ./staging -n $PACKAGE \ --description "BigBlueButton WebRTC SFU" \ $DIRECTORIES \ $OPTS \ - -d 'yq (>= 3)' -d 'yq (<< 4)' + -d 'yq (>= 3)' -d 'yq (<< 4)' \ + -d 'nodejs (>= 18)' -d 'yq (<< 20)' From e17f0315fd889f1c45608eaddd185aef1af24403 Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Fri, 1 Sep 2023 12:27:14 -0400 Subject: [PATCH 22/26] chore: Bump BBB version to 2.6.14 --- bigbluebutton-config/bigbluebutton-release | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bigbluebutton-config/bigbluebutton-release b/bigbluebutton-config/bigbluebutton-release index b4f12cae65d7..14ca5b38b12a 100644 --- a/bigbluebutton-config/bigbluebutton-release +++ b/bigbluebutton-config/bigbluebutton-release @@ -1 +1 @@ -BIGBLUEBUTTON_RELEASE=2.6.12 +BIGBLUEBUTTON_RELEASE=2.6.14 From 2313ba043da3fa991d2f447887a219b43c0d6591 Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Fri, 1 Sep 2023 14:18:12 -0400 Subject: [PATCH 23/26] docs: add info on NodeJS v18 and Java 17 upgrade paths --- docs/docs/new-features.md | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/docs/docs/new-features.md b/docs/docs/new-features.md index 70235ec428cc..5ddd24ec498d 100644 --- a/docs/docs/new-features.md +++ b/docs/docs/new-features.md @@ -257,6 +257,34 @@ In case you are overriding the file/filename, please pass `beans.presentationSer We introduced this configuration as a safeguard against people deliberately trying to deteriorate others' experience. In some cases the default limit could be reached in normal use of the whiteboard (small letter handwriting while zoomed in, etc). We have exposed this value in the configurations file for bbb-html5. You can find more info in the [customization presentation section](https://docs.bigbluebutton.org/administration/customize#change-the-limit-of-300-annotations-per-page) . +#### NodeJS upgrade introduced in BigBlueButton 2.6.14 (backport from BBB 2.7) + +Up to BigBlueButton 2.6.12 we were using NodeJS v16 from the system (and were installing version v16 in bbb-install-26.sh). Given that NodeJS v16 will no longer be maintained starting September 11, 2023, we have backported support for NodeJS v18 and are modifying bbb-install-2.6.sh to install this newer version too. However, for existing BigBlueButton servers this was not sufficient to guarantee the use of version v18, so we also included this requirement in the packages of `bbb-export-annotations`, `bbb-webrtc-sfu`, `bbb-pads`, `bbb-etherpad`, `bbb-webhooks`. +Note that `bbb-html5` package uses a custom version of NodeJS included in BBB's packaging (version 14.21.x with extended support for ~8 more months provided by Meteor.js) + +At time of installing BigBlueButton 2.6.14 (over 2.6.12 or earlier), unless you have already handled the transition to NodeJS v18 you will see the following: + +``` +Some packages could not be installed. This may mean that you have +requested an impossible situation or if you are using the unstable +distribution that some required packages have not yet been created +or been moved out of Incoming. +The following information may help to resolve the situation: + +The following packages have unmet dependencies: + bbb-export-annotations : Depends: nodejs (>= 18) +E: Unable to correct problems, you have held broken packages. +``` + +In that case, please remove NodeJS v16 from the server and install NodeJS to v18. You can see what we do in bbb-install-2.6.sh: https://github.com/bigbluebutton/bbb-install/blob/c31e9ee34ed05fb2804d932d3aa291e3af7dc65c/bbb-install-2.6.sh#L294-L304 + +Also check the official docs for managing NodeJS installations https://github.com/nodesource/distributions#installation-instructions + +#### Java upgrade introduced in BigBlueButton 2.6.14 (backport from BBB 2.7) + +Up to BigBlueButton 2.6.12 we were using Java 11 (and were installing version 16 in bbb-install-26.sh) for several of the core components. Given that the LTS premium support ends in September 2023, we have backported support for Java 17 LTS and are modifying bbb-install-2.6.sh to install this newer version too. +Whether you upgrade to BigBlueButton 2.6.14+ via bbb-install-2.6.sh or just through packages, the upgrade should go smoothly. No extra steps are required. + ### Development For information on developing in BigBlueButton, see [setting up a development environment for 2.6](/development/guide). From eae34304be38d2414fa1de5abc13ab33ddcc14ee Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Sat, 2 Sep 2023 06:49:29 -0400 Subject: [PATCH 24/26] build: fix nodejs version paste error in #18686 --- build/packages-template/bbb-etherpad/build.sh | 2 +- build/packages-template/bbb-export-annotations/build.sh | 2 +- build/packages-template/bbb-pads/build.sh | 2 +- build/packages-template/bbb-webhooks/build.sh | 2 +- build/packages-template/bbb-webrtc-sfu/build.sh | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/build/packages-template/bbb-etherpad/build.sh b/build/packages-template/bbb-etherpad/build.sh index 2efafb738bef..588ed175f04c 100755 --- a/build/packages-template/bbb-etherpad/build.sh +++ b/build/packages-template/bbb-etherpad/build.sh @@ -81,5 +81,5 @@ fpm -s dir -C ./staging -n $PACKAGE \ --description "The EtherPad Lite components for BigBlueButton" \ $DIRECTORIES \ $OPTS \ - -d 'nodejs (>= 18)' -d 'yq (<< 20)' + -d 'nodejs (>= 18)' -d 'nodejs (<< 20)' diff --git a/build/packages-template/bbb-export-annotations/build.sh b/build/packages-template/bbb-export-annotations/build.sh index 0618c9b4d1ca..b7e31431ceb0 100755 --- a/build/packages-template/bbb-export-annotations/build.sh +++ b/build/packages-template/bbb-export-annotations/build.sh @@ -44,5 +44,5 @@ fpm -s dir -C ./staging -n $PACKAGE \ --description "BigBlueButton Export Annotations" \ $DIRECTORIES \ $OPTS \ - -d 'nodejs (>= 18)' -d 'yq (<< 20)' + -d 'nodejs (>= 18)' -d 'nodejs (<< 20)' diff --git a/build/packages-template/bbb-pads/build.sh b/build/packages-template/bbb-pads/build.sh index 54782cdbf682..478e2a91f9d2 100755 --- a/build/packages-template/bbb-pads/build.sh +++ b/build/packages-template/bbb-pads/build.sh @@ -39,5 +39,5 @@ fpm -s dir -C ./staging -n $PACKAGE \ --description "BigBlueButton Pads" \ $DIRECTORIES \ $OPTS \ - -d 'nodejs (>= 18)' -d 'yq (<< 20)' + -d 'nodejs (>= 18)' -d 'nodejs (<< 20)' diff --git a/build/packages-template/bbb-webhooks/build.sh b/build/packages-template/bbb-webhooks/build.sh index 8caa029396ef..18971b4757a0 100755 --- a/build/packages-template/bbb-webhooks/build.sh +++ b/build/packages-template/bbb-webhooks/build.sh @@ -47,4 +47,4 @@ fpm -s dir -C ./staging -n $PACKAGE \ $DIRECTORIES \ $OPTS \ -d 'yq (>= 3)' -d 'yq (<< 4)' \ - -d 'nodejs (>= 18)' -d 'yq (<< 20)' + -d 'nodejs (>= 18)' -d 'nodejs (<< 20)' diff --git a/build/packages-template/bbb-webrtc-sfu/build.sh b/build/packages-template/bbb-webrtc-sfu/build.sh index 0be99b7fec7b..a8b6e76071d1 100755 --- a/build/packages-template/bbb-webrtc-sfu/build.sh +++ b/build/packages-template/bbb-webrtc-sfu/build.sh @@ -65,4 +65,4 @@ fpm -s dir -C ./staging -n $PACKAGE \ $DIRECTORIES \ $OPTS \ -d 'yq (>= 3)' -d 'yq (<< 4)' \ - -d 'nodejs (>= 18)' -d 'yq (<< 20)' + -d 'nodejs (>= 18)' -d 'nodejs (<< 20)' From ec54c7111fcabeb22e7021bc90a79c2ee119572e Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Tue, 5 Sep 2023 21:03:07 -0400 Subject: [PATCH 25/26] docs: Improve docs for 2.6.14 upgrade of nodejs --- docs/docs/new-features.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/docs/new-features.md b/docs/docs/new-features.md index 5ddd24ec498d..14e452622ed0 100644 --- a/docs/docs/new-features.md +++ b/docs/docs/new-features.md @@ -276,7 +276,7 @@ The following packages have unmet dependencies: E: Unable to correct problems, you have held broken packages. ``` -In that case, please remove NodeJS v16 from the server and install NodeJS to v18. You can see what we do in bbb-install-2.6.sh: https://github.com/bigbluebutton/bbb-install/blob/c31e9ee34ed05fb2804d932d3aa291e3af7dc65c/bbb-install-2.6.sh#L294-L304 +In that case, please upgrade to v18. You can see what we do in bbb-install-2.6.sh: https://github.com/bigbluebutton/bbb-install/blob/ec26f92f10442387c15a3b7fd8de5b76c0b3bf72/bbb-install-2.6.sh#L294-L304 Also check the official docs for managing NodeJS installations https://github.com/nodesource/distributions#installation-instructions From 4921a69b29019aac184e591e799e05755f3208ea Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Wed, 6 Sep 2023 13:33:56 -0400 Subject: [PATCH 26/26] docs: add 2.6.14 link --- docs/docs/new-features.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/docs/new-features.md b/docs/docs/new-features.md index 14e452622ed0..392a10beca15 100644 --- a/docs/docs/new-features.md +++ b/docs/docs/new-features.md @@ -184,7 +184,6 @@ Under the hood, BigBlueButton 2.6 installs on Ubuntu 20.04 64-bit, and the follo - Spring 2.7.12 - NodeJS 18 (up from 16) for `bbb-pads`, `bbb-export-annotations`, `bbb-webrtc-sfu`, `bbb-etherpad`, `bbb-webhooks` - Java 17 (up from 11) for `bbb-common-message`, `bbb-common-web`, `bigbluebutton-web`, `akka-bbb-apps`, `bbb-fsesl-client`, and `akka-bbb-fsesl` -- Grails 5.3.2 - GORM 7.3.1 - Groovy 3.0.11 @@ -192,6 +191,7 @@ For full details on what is new in BigBlueButton 2.6, see the release notes. ### Recent releases: +- [2.6.14](https://github.com/bigbluebutton/bigbluebutton/releases/tag/v2.6.14) - [2.6.12](https://github.com/bigbluebutton/bigbluebutton/releases/tag/v2.6.12) - [2.6.11](https://github.com/bigbluebutton/bigbluebutton/releases/tag/v2.6.11) - [2.6.10](https://github.com/bigbluebutton/bigbluebutton/releases/tag/v2.6.10)