diff --git a/CHANGELOG.md b/CHANGELOG.md index 150a072e5b..91b6e9874b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,234 @@ +#### v4.3.0 (2025-05-01) + +##### Chores + +* **i18n:** + * fallback strings for new resources: nodebb.category, nodebb.world (2827498d) + * fallback strings for new resources: nodebb.error (c889d60c) + * fallback strings for new resources: nodebb.admin-settings-user, nodebb.user (d3409b40) + * fallback strings for new resources: nodebb.global (6c163f7c) + * fallback strings for new resources: nodebb.notifications (dcf34e3d) + * fallback strings for new resources: nodebb.error (b1e95bc6) +* v4.3.0-beta.2 (e3e78445) +* v4.3.0-beta.1 (0689da81) +* cut 4.3.0-alpha.3 (2e3e675b) +* cut v4.3.0-alpha.2 (c4690392) +* cut v4.3.0-alpha (4379df68) +* up pg, pg-cursor (#13351) (b57ce29d) +* incrementing version number - v4.2.2 (17fecc24) +* update changelog for v4.2.2 (ce196589) +* up eslint-nodebb (853244a1) +* up themes (4301bf97) +* incrementing version number - v4.2.1 (852a270c) +* up dbsearch (bc8126c7) +* up dbsearch (4b9331d9) +* 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) +* **deps:** + * update redis docker tag to v7.4.3 (#13358) (7800016f) + * update dependency sass-embedded to v1.87.0 (#13347) (bee79784) + * update dependency @eslint/js to v9.25.1 (#13344) (25e4e844) + * update dependency eslint-config-nodebb to v1.1.3 (#13343) (d687fe60) + * update dependency @eslint/js to v9.25.0 (#13342) (0cc492c6) + * update dependency lint-staged to v15.5.1 (#13319) (9046acea) + * update dependency jsdom to v26.1.0 (#13330) (3f000ed6) + * update dependency @eslint/js to v9.24.0 (#13310) (41be539f) + * update dependency sass-embedded to v1.86.3 (#13301) (0bd43940) + * update dependency sass-embedded to v1.86.2 (#13291) (fdcd2a84) + * update dependency @apidevtools/swagger-parser to v10.1.1 (#13037) (3305c7b0) + +##### Documentation Changes + +* update openapi spec with new (missing) properties (b32b7fcc) + +##### New Features + +* upgrade script to remote duplicate remote users and categories as per #13352 (5aee2f26) +* add new mixin clamp-fade, and handler for expanding it in category description (decc9cf1) +* handle Announce(Update(Note)) as well, #13320 (04473669) +* #13255, proper handling of upvotes shared by group actors (74e32a17) +* send the whole post content in `summary` as well (5c5fd3d4) +* show/hide categories on world page, #13255 (804208b7) +* notice on remote categories that have no local followers, #13255 (93a5b35f) +* add new option to categorySearch module, `defaultCategories`, use to populate the category list when you don't want to poll backend for the main category list (a487d5f6) +* category quick search on world page, theme version updates, #13255 (17909516) +* show tracked/watched remote categories in world page, #13255 (34ab6771) +* remote user to category migration should also migrate local user follows into category watches (ac7b7f81) +* allowing manual group assertion via category search input (23b3148c) +* remote group actors migrated to categories if they were previous asserted as remote users (d19f692b) +* #13255 new topics in remote category addresses remote category, tests, fixes to tests (b8c531d5) +* #13255, deliver asserted topics to remote category followers (9c1d5cd3) +* #13255, add category name and handle to category search zset (876d1b04) +* integrate remote category pruning into actor pruning logic (9b5855f7) +* migration of group-as-user to group-as-category, remote category purging, more tests (4be0f73a) +* asserted topics and posts to remote categories will notify and add to unread based on remote category watch state (f483e883) +* also include category in `to` field when mocking post for federation (f73f727d) +* chat allow/deny list, closes #13359 (a5afad27) +* show topic follower counts (#13326) (bf2d4c46) +* federate out as:Article with `preview` for root-level posts in a topic, instead of `as:Note` (3c4be773) +* body-parser-2.x test (#13278) (389bc062) +* upgrade commander, get rid of custom color & wrapping code (485562d5) +* testing eslint9 (#13266) (68136641) + +##### Bug Fixes + +* bump harmony (2bf2e556) +* #13352, also do the webfinger backreference check when calling assertGroup (2572cbf5) +* regression that caused non-public content with source.content to fail parsing (e9b3306e) +* closes #13360, catch error in buildAccountData middleware (537a7428) +* bug where disparate ids all claiming to be the same handle were causing duplicate remote users due to collisions, #13352 (c2a3ef81) +* posts incorrectly excluded from results if result pid is in a remote category (a0a8c462) +* ap helpers.makeSet to handle undefined property values (d020e334) +* add back localCategories to categorySearch when defaultCategories is supplied (d58d5861) +* remote bare hash for remote users on prune as well (f02d9661) +* missing teasers for remote categories on /world (695312f1) +* remove superfluous privilege filter in markAllRead (0fab4255) +* reversed image and icon for remote categories, omit fa icon if remote category has icon property set, #13255 (dabcefaf) +* closes #13289, id can be null (f1d1d082) +* marking remote category topics as read (4a7111d0) +* markAllRead to get tids based on same logic as unread page, instead of marking all recent posts read (b0236735) +* key ownership cross-check to also work with remote categories, #13255 (6dee3e56) +* #13255, assert all recipients of the main post when asserting a note, so that remote categories can be discovered (1f046782) +* remote categories should not show up in a user's follow lists (4d1d7c3d) +* #13255, remote user-to-category migration should not move shares that are already in an existing cid (3213da1c) +* proper handling of actors.qualify response (f2e0ba21) +* missing dep (2cb6d10d) +* topics in remote categories showing up in /recent (c4274a3d) +* regression that caused resolveInboxes to always return empty, added tests for resolveInboxes (0246c146) +* spread fail, @julianlam (c1b71964) +* filter out non-asserted targets when sending ap messages, diff. getter method when passed-in ID is a remote category (309deb0d) +* tag whitelist check socket call for remote categories (c5901e0d) +* migrate topics as system user instead of uid 0 (ee34396c) +* do not send out ap (undo:)follow if local user or category is (not)already following (c6f2c874) +* allow category controller to respond also by remote category id (0b333fb7) +* #13255, update category search logic to allow for remote categories (6e23de46) +* delete shares zset on account deletion (7ccd6b73) +* persona tooltip so it doesn't appear when dropdowns are open (ea9f7903) +* lang keys (4277765b) +* closes #13353, don't use index for finding plugin data (ed92ffaf) +* regression on search query that is a url, via 3526c937ccec843d4637efa894f49efc9bac5493 (41252197) +* closes #13313, add error:post-deleted (b49a4586) +* upgrade script (52ca086b) +* tag urls getting double escaped (#13306) (3526c937) +* notifications.markAllRead (bf243e07) +* posts.uploads.usage since paths changed (c41c7e8a) +* req.body can be undefined (cd70e6c6) +* closes #13298, catch exceptions in webfinger and nodeinfo (bbfd6445) +* closes #13205, make parent post font-size small until expanded (ef98f8f9) +* closes #13275, set 'announces' after adding to zset to prevent race condition (2c59007b) +* use slug instead of groupname in acp for groups (d9f33204) +* do not await the batch call to sendMessage (aa4f23bf) +* commenting out outward federation of Add activity, pending forumwg discussion (4b22f297) +* on user deletion during assertion (due to 410), if delete fails, just run ap post-deletion to clean up (4bbe27d4) +* race condition in test (807a8c66) +* **deps:** + * update dependency pg to v8.15.6 (#13362) (7f533167) + * update dependency pg-cursor to v2.14.6 (#13363) (03e06784) + * update dependency webpack to v5.99.7 (#13361) (0a3e4d61) + * update dependency pg to v8.15.5 (#13356) (74558b0f) + * update dependency ace-builds to v1.40.1 (#13354) (4eec053a) + * update dependency esbuild to v0.25.3 (#13355) (43d7d47f) + * update dependency pg-cursor to v2.14.5 (#13350) (00be573d) + * update dependency pg to v8.15.2 (#13349) (b49436de) + * update dependency sass to v1.87.0 (#13348) (50a58bbc) + * update dependency connect-redis to v8.0.3 (#13345) (8d84206f) + * update dependency mongodb to v6.16.0 (#13346) (3c24810d) + * update dependency chart.js to v4.4.9 (#13328) (0c5ef0e8) + * update dependency nconf to v0.13.0 (#13333) (6f8c7aba) + * update dependency ace-builds to v1.40.0 (#13331) (5d461f04) + * update dependency nodemailer to v6.10.1 (#13329) (6fbb2b4b) + * update dependency ioredis to v5.6.1 (#13318) (74d9806d) + * update dependency cron to v4.3.0 (#13332) (f96ce25a) + * update dependency sanitize-html to v2.16.0 (#13339) (24a5f407) + * update dependency webpack to v5.99.6 (#13341) (cac1c37b) + * update dependency bootbox to v6.0.3 (#13327) (8f784bb3) + * update dependency nodebb-theme-harmony to v2.1.6 (#13314) (1bd12622) + * update dependency nodebb-theme-persona to v14.1.5 (#13316) (6de89952) + * update dependency webpack to v5.99.5 (#13312) (140440cc) + * update dependency cron to v4.1.4 (#13307) (5fa09a67) + * update dependency nodebb-theme-persona to v14.1.2 (#13311) (6f3e9853) + * update dependency nodebb-theme-harmony to v2.1.3 (#13309) (9905e6aa) + * update dependency bootswatch to v5.3.5 (#13308) (4b511546) + * update dependency bootstrap to v5.3.5 (#13304) (22b3dc65) + * update dependency sass to v1.86.3 (#13302) (70e788ba) + * update dependency spdx-license-list to v6.10.0 (#13303) (cd2ed209) + * update dependency bootstrap to v5.3.4 (#13299) (d9074dbc) + * update dependency nodebb-plugin-mentions to v4.7.3 (#13294) (dd3d1917) + * update dependency bootbox to v6.0.2 (#13293) (dfd2621e) + * update dependency sass to v1.86.2 (#13295) (1a763cbb) + * update dependency benchpressjs to v2.5.5 (#13292) (311cbec2) + * update dependency nodebb-theme-harmony to v2.1.0 (#13296) (5caadd2d) + * update dependency esbuild to v0.25.2 (#13284) (e6a02176) + * update dependency cron to v4.1.3 (#13282) (c46c2623) + * update dependency cron to v4.1.2 (#13281) (11f7b42c) + * update dependency satori to v0.12.2 (#13280) (28ec8a79) + * update dependency cron to v4.1.1 (#13276) (57819810) + * update dependency nodebb-plugin-composer-default to v10.2.49 (#13272) (40ecffa0) + * update dependency nodebb-theme-harmony to v2.0.42 (#13274) (5b40c149) + * bump mentions (7d32cdac) + * update dependency validator to v13.15.0 (#13273) (d275af60) + * update dependency csrf-sync to v4.1.0 (#13268) (92caab97) + * update dependency nodebb-theme-persona to v14.0.17 (#13263) (ca479efc) + * update dependency nodebb-theme-harmony to v2.0.41 (#13262) (33c25ce6) + * update dependency nodebb-plugin-composer-default to v10.2.48 (#13261) (5b98af9f) + * update dependency sanitize-html to v2.15.0 (#13264) (e17163ad) + * update dependency ace-builds to v1.39.1 (#13260) (532fea99) + +##### Other Changes + +* yup. (28b7a203) +* fix tabs (4cdfcf95) +* fix typo (352c42d8) + +##### Refactors + +* use promise.all (74661381) +* categories.sortTidsBySet to not take cid, retrieve from tids themselves (bfc7daf2) +* allow topics to be asserted directly into a remote category, or -1 otherwise (0fa98237) +* ability to browse to remote categories, group actor assertion logic, etc. -- no logic to assign topics to remote categories yet (1f40995f) +* remove datepicker (be7959e5) +* add sping/ping into openapi (8ffbc359) +* moved these rules to nodebb-config (e184c910) +* switch eslint configs to esm (92d6e022) +* move topic/post menu lists to core (9f93cc9b) +* show topic tools if plugins add them (87aacc89) +* remove reply icons (b73fb67b) +* remove debug log (021b3af0) +* break long line (c93dc589) +* only write to db on runJobs processes (a6839b61) +* use bulk increment (667367a6) +* remove spammy error log (9637abca) + +##### Reverts + +* use of vanity domains, needs rethinking. Originally added in 709a02d97ae7acbab08c7fa1fecfd01e0dcadcc7 (55c89969) + +##### Tests + +* article for new topic, note for replies (3e508d6c) +* missing clear ap send cache (512f889e) +* additional test for ensuring handle:uid is continually set even after re-assertion (39fc9bae) +* additional test for remote category topic assertion when ignoring category (c2f77cee) +* #13255, reply to topic in remote category addresses remote category (85e7c1a2) +* remote user pruning tests (53dc79a1) +* introduce overrides into person and group mocks (4f748158) +* have ap helper mocks for person and group auto-save to ap cache (80069a19) +* add failing tests for actor/group assertion via wrong method, remote user to category migration (afc47643) +* add tests for topics slotting into remote categories if addressed (804052f2) +* group actor assertion tests (ca9a5b6d) +* shorter test (e0235a1e) +* eslint for tests (f864a5a4) +* fix tests (321defb9) +* fix test expecting Note when it is now Article (5d94f2ca) + #### v4.2.2 (2025-04-22) ##### Chores