Compare commits

...

10 Commits

Author SHA1 Message Date
Misty Release Bot
bab4304e04 chore: incrementing version number - v4.7.2 2025-12-24 18:38:30 +00:00
Barış Soner Uşaklı
1f9f2dff2f fix: update data-isowner when changing is ownership
fixes multiple ownership toggles
2025-12-23 14:29:28 -05:00
Barış Soner Uşaklı
59dd1ca607 chore: up body-parser 2025-12-19 17:38:19 -05:00
Julian Lam
d03137128c fix: bump 2factor 2025-12-18 11:39:31 -05:00
b2cc
da79582148 * Docker: add function to entrypoint to auto-install plugins on reboot (fixes #13735) (#13749)
* * Docker: add function to entrypoint to auto-install plugins on reboot (fixes #13735)

Added a function to install additional NodeBB plugins if specified. This fixes #13735

* fix: case on

---------

Co-authored-by: Jakub Bliźniuk <opliko.reg@protonmail.com>
2025-12-17 17:00:43 -05:00
Barış Uşaklı
550411fb58 test: change redis connection (#13844) 2025-12-17 16:56:07 -05:00
Barış Soner Uşaklı
1305faa838 test: add await to check tests 2025-12-17 14:35:35 -05:00
Barış Soner Uşaklı
d505301fa0 chore: up mentions 2025-12-17 13:02:43 -05:00
Barış Soner Uşaklı
9f8d50706e test: add back logs for failing test 2025-12-17 12:46:33 -05:00
Misty Release Bot
8668cfb38c chore: update changelog for v4.7.1 2025-12-17 15:18:53 +00:00
7 changed files with 115 additions and 13 deletions

View File

@@ -1,3 +1,75 @@
#### v4.7.1 (2025-12-17)
##### Chores
* up widget-essentials (9d666550)
* remove log (2142b680)
* up harmony (59f649b8)
* incrementing version number - v4.7.0 (e82d40f8)
* update changelog for v4.7.0 (1c0a43dc)
* incrementing version number - v4.6.3 (9fc5b0f3)
* incrementing version number - v4.6.2 (f98747db)
* incrementing version number - v4.6.1 (f47aa678)
* incrementing version number - v4.6.0 (ee395bc5)
* incrementing version number - v4.5.2 (ad2da639)
* incrementing version number - v4.5.1 (69f4b61f)
* incrementing version number - v4.5.0 (f05c5d06)
* incrementing version number - v4.4.6 (074043ad)
* incrementing version number - v4.4.5 (6f106923)
* incrementing version number - v4.4.4 (d323af44)
* incrementing version number - v4.4.3 (d354c2eb)
* incrementing version number - v4.4.2 (55c510ae)
* incrementing version number - v4.4.1 (5ae79b4e)
* incrementing version number - v4.4.0 (0a75eee3)
* incrementing version number - v4.3.2 (b92b5d80)
* incrementing version number - v4.3.1 (308e6b9f)
* incrementing version number - v4.3.0 (bff291db)
* incrementing version number - v4.2.2 (17fecc24)
* incrementing version number - v4.2.1 (852a270c)
* incrementing version number - v4.2.0 (87581958)
* incrementing version number - v4.1.1 (b2afbb16)
* incrementing version number - v4.1.0 (36c80850)
* incrementing version number - v4.0.6 (4a52fb2e)
* incrementing version number - v4.0.5 (1792a62b)
* incrementing version number - v4.0.4 (b1125cce)
* incrementing version number - v4.0.3 (2b65c735)
* incrementing version number - v4.0.2 (73fe5fcf)
* incrementing version number - v4.0.1 (a461b758)
* incrementing version number - v4.0.0 (c1eaee45)
##### Continuous Integration
* drop ARM v7 from docker builds (#13808) (254370c5)
##### New Features
* stop extraneous vote and tids_read data from being saved for remote users (9f729964)
* add hreflang to buildLinkTag (ba85474d)
* #13790, allow ssl setup in psql (5bd1f7b7)
##### Bug Fixes
* wrong increment value (b1fc5bfd)
* increment progress on upgrade script (9f94a721)
* disallow inline viewing of unsafe files (#13833) (5ae8d553)
* moving topic to cid=-1 will remove it from list (90a15134)
* show errors when saving settings (f49f540b)
* closes #13666, update category label (193aaf55)
* respect user pagination settings in infinite scroll (#13765) (#13788) (ebf2a2c5)
* remove hardcoded name for sentinel, #13794 (53e22acf)
##### Other Changes
* fix missing comma (9fb41c69)
##### Reverts
* spec change (b19281b0)
##### Tests
* fix tests (11b01dfc)
#### v4.7.0 (2025-11-26)
##### Chores

View File

@@ -12,6 +12,7 @@ set_defaults() {
export SETUP="${SETUP:-}"
export PACKAGE_MANAGER="${PACKAGE_MANAGER:-npm}"
export OVERRIDE_UPDATE_LOCK="${OVERRIDE_UPDATE_LOCK:-false}"
export NODEBB_ADDITIONAL_PLUGINS="${NODEBB_ADDITIONAL_PLUGINS:-}"
}
# Function to check if a directory exists and is writable
@@ -172,6 +173,33 @@ debug_log() {
echo "DEBUG: $message"
}
install_additional_plugins() {
if [[ ! -z ${NODEBB_ADDITIONAL_PLUGINS} ]]; then
export START_BUILD="true"
for plugin in "${NODEBB_ADDITIONAL_PLUGINS[@]}"; do
echo "Installing additional plugin ${plugin}..."
case "$PACKAGE_MANAGER" in
yarn) yarn install || {
echo "Failed to install plugin ${plugin} with yarn"
exit 1
} ;;
npm) npm install || {
echo "Failed to install plugin ${plugin} with npm"
exit 1
} ;;
pnpm) pnpm install || {
echo "Failed to install plugin ${plugin} with pnpm"
exit 1
} ;;
*)
echo "Unknown package manager: $PACKAGE_MANAGER"
exit 1
;;
esac
done
fi
}
# Main function
main() {
set_defaults
@@ -182,12 +210,14 @@ main() {
debug_log "PACKAGE_MANAGER: $PACKAGE_MANAGER"
debug_log "CONFIG location: $CONFIG"
debug_log "START_BUILD: $START_BUILD"
debug_log "NODEBB_ADDITIONAL_PLUGINS: ${NODEBB_ADDITIONAL_PLUGINS}"
if [ -n "$SETUP" ]; then
start_setup_session "$CONFIG"
fi
if [ -f "$CONFIG" ]; then
install_additional_plugins
start_forum "$CONFIG" "$START_BUILD"
else
start_installation_session "$NODEBB_INIT_VERB" "$CONFIG"

View File

@@ -2,7 +2,7 @@
"name": "nodebb",
"license": "GPL-3.0",
"description": "NodeBB Forum",
"version": "4.7.1",
"version": "4.7.2",
"homepage": "https://www.nodebb.org",
"repository": {
"type": "git",
@@ -45,7 +45,7 @@
"autoprefixer": "10.4.22",
"bcryptjs": "3.0.3",
"benchpressjs": "2.5.5",
"body-parser": "2.2.0",
"body-parser": "2.2.1",
"bootbox": "6.0.4",
"bootstrap": "5.3.8",
"bootswatch": "5.3.8",
@@ -96,14 +96,14 @@
"mousetrap": "1.6.5",
"multer": "2.0.2",
"nconf": "0.13.0",
"nodebb-plugin-2factor": "7.6.0",
"nodebb-plugin-2factor": "7.6.1",
"nodebb-plugin-composer-default": "10.3.1",
"nodebb-plugin-dbsearch": "6.3.4",
"nodebb-plugin-emoji": "6.0.5",
"nodebb-plugin-emoji-android": "4.1.1",
"nodebb-plugin-link-preview": "2.1.5",
"nodebb-plugin-markdown": "13.2.2",
"nodebb-plugin-mentions": "4.8.3",
"nodebb-plugin-mentions": "4.8.4",
"nodebb-plugin-spam-be-gone": "2.3.2",
"nodebb-plugin-web-push": "0.7.6",
"nodebb-rewards-essentials": "1.0.2",

View File

@@ -81,6 +81,7 @@ define('forum/groups/details', [
case 'toggleOwnership':
api[isOwner ? 'del' : 'put'](`/groups/${ajaxify.data.group.slug}/ownership/${uid}`, {}).then(() => {
ownerFlagEl.toggleClass('invisible');
userRow.attr('data-isowner', isOwner ? '0' : '1');
}).catch(alerts.error);
break;

View File

@@ -267,7 +267,7 @@ Notes.assert = async (uid, input, options = { skipChecks: false }) => {
if (!hasTid && options.cid) {
// New topic, have category announce it
activitypub.out.announce.topic(tid);
await activitypub.out.announce.topic(tid);
}
return { tid, count };

View File

@@ -58,13 +58,12 @@ connection.connect = async function (options) {
winston.error(err.stack);
reject(err);
});
cxn.on('ready', () => {
cxn.connect().then(() => {
// back-compat with node_redis
cxn.batch = cxn.multi;
resolve(cxn);
});
cxn.connect().then(() => {
winston.info('Connected to Redis successfully');
resolve(cxn);
}).catch((err) => {
winston.error('Error connecting to Redis:', err);
});

View File

@@ -164,8 +164,9 @@ describe('FEPs', () => {
});
pid = id;
({ activity } = await helpers.mocks.create(note));
console.log('before inbox create', activitypub._sent);
await activitypub.inbox.create({ body: activity });
console.log('after inbox create', activitypub._sent);
const activities = Array.from(activitypub._sent);
const test1 = activities.some((activity) => {
@@ -174,14 +175,13 @@ describe('FEPs', () => {
activity.object && activity.object.type === 'Create' &&
activity.object.object && activity.object.object.type === 'Note';
});
assert(test1);
const test2 = activities.some((activity) => {
[, activity] = activity;
return activity.type === 'Announce' &&
activity.object && activity.object.type === 'Note';
});
assert(test1 && test2);
assert(test2);
});
it('should federate out an Announce(Create(Note)) on reply', async () => {