diff --git a/CHANGELOG.md b/CHANGELOG.md index 163d3d882c..96dd2a28f1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,342 @@ +#### v4.5.0 (2025-09-03) + +##### Chores + +* **deps:** + * pin dependency @stylistic/eslint-plugin to 5.3.1 (#13634) (4ade6007) + * update dependency sass-embedded to v1.91.0 (#13614) (e504ee34) + * update dependency @eslint/js to v9.34.0 (#13612) (dfc558cd) + * update redis docker tag to v8.2.1 (#13603) (02228c04) + * update dependency lint-staged to v16.1.5 (#13585) (f4f7953a) + * update postgres docker tag to v17.6 (#13599) (62d15a0e) + * update dependency @eslint/js to v9.33.0 (#13589) (bfdf47b6) + * update actions/checkout action to v5 (#13590) (311bbefa) + * update dependency sass-embedded to v1.90.0 (#13581) (c8694333) + * update dependency lint-staged to v16.1.4 (#13575) (34ecdf20) + * update redis docker tag to v8.2.0 (#13577) (25bc9ba0) + * update dependency @eslint/js to v9.31.0 (#13545) (97a5d543) + * update redis docker tag to v8.0.3 (#13539) (1b80910e) + * update dependency @eslint/js to v9.30.1 (#13524) (6d7df13f) + * update dependency @eslint/js to v9.30.0 (#13519) (15ea1233) + * update dependency smtp-server to v3.14.0 (#13515) (a41d2c0b) + * update dependency mocha to v11.7.1 (#13509) (bbacd8f6) + * update dependency mocha to v11.7.0 (#13502) (0a0dd1c1) + * update dependency @eslint/js to v9.29.0 (#13491) (2046ca72) + * update dependency lint-staged to v16.1.2 (#13492) (d6ba7930) + * update dependency sass-embedded to v1.89.2 (#13482) (f5651787) + * update dependency mocha to v11.6.0 (#13479) (9b4082dc) + * update dependency smtp-server to v3.13.8 (#13464) (d239125f) + * update redis docker tag to v8.0.2 (#13465) (166aaa7a) + * update dependency @eslint/js to v9.28.0 (#13469) (b3170c9c) + * update dependency sass-embedded to v1.89.1 (#13463) (32f13162) + * update dependency lint-staged to v16.1.0 (#13449) (6efe3fdd) + * update dependency mocha to v11.5.0 (#13442) (c1846475) + * update dependency smtp-server to v3.13.7 (#13437) (136e8814) + * update dependency sass-embedded to v1.89.0 (#13425) (aa977282) + * update dependency mocha to v11.4.0 (#13435) (5d017710) + * update dependency mocha to v11.3.0 (#13426) (650eeac9) + * update dependency @eslint/js to v9.27.0 (#13429) (475b0704) +* **i18n:** + * fallback strings for new resources: nodebb.admin-settings-activitypub (cb00fb3b) + * fallback strings for new resources: nodebb.admin-manage-categories, nodebb.admin-settings-activitypub (40bda8fc) + * fallback strings for new resources: nodebb.social (eeabc990) + * fallback strings for new resources: nodebb.admin-dashboard (5d16fdc9) + * fallback strings for new resources: nodebb.admin-development-info (59c1ce85) + * fallback strings for new resources: nodebb.admin-development-info (5b54e926) + * fallback strings for new resources: nodebb.modules (f5aca114) + * fallback strings for new resources: nodebb.error (efb14ead) + * fallback strings for new resources: nodebb.error (e1eb76fe) +* enable dbsearch on new installs (567f453b) +* up peace (fdd0152e) +* up harmony (6d60f945) +* use fontsource-utils/scss to get rid of deprecation warning (44c0413c) +* up eslibt (e68deaac) +* up widget essentials (e7b47995) +* incrementing version number - v4.4.6 (074043ad) +* update changelog for v4.4.6 (3895a059) +* incrementing version number - v4.4.5 (6f106923) +* up eslint (637373e3) +* up dbsearch (dae81b76) +* up eslint-plugin (18d6e5e1) +* up eslint (c056bf56) +* remove logs (0315e369) +* incrementing version number - v4.4.4 (d323af44) +* incrementing version number - v4.4.3 (d354c2eb) +* up eslint (536ae9d6) +* incrementing version number - v4.4.2 (55c510ae) +* eslint config (0d595008) +* 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 + +* use native arm runners for building docker images (#13627) (931b7345) + +##### Documentation Changes + +* add missing routes to openapi schema (0f44034e) +* openapi typo (560cc2eb) +* update openapi schema for relays and rules (a9a12a9f) +* openapi schema fixes for auto-categorization commits (c0248ca5) + +##### New Features + +* use sbd to more intelligently put together a sub-500 character summary based on existing sentences in post content (35641f37) +* add sbd dependency to improve title generation (and for summary generation, later) (82686322) +* send local posts out to established relays (aa26dfb3) +* relay handshake logic, handle Follow/Accept, send back Accept. (f4d1df7c) +* adding and removing relays from AP settings page in ACP (1e0fb20d) +* apply auto-categorization logic (165af50d) +* ability to add/remove auto-categorization rules for incoming federated content (bdcf28a3) +* re-jigger 'add category' button to allow addition of remote category to main index (75639c86) +* add Urdu localisation, thank you! (8c6992f5) +* add wordpress (82037dee) +* add wordpress (c10656ec) +* only mark notifications read that match current filter (9d39ed51) +* closes #13578, increase uniquevisitors (e1423636) +* add new brite skin from bootswatch (e851a523) +* add filter:post.getDiffs (97d4994a) +* add filter:post.getDiffs (90a65129) +* add expose-gc flag to loader (bba18e31) +* add ap pageviews analytics (559a2d23) +* add heap snapshot (f88329db) +* add option to toggle chat join/leave message (92a3859f) +* add protection mechanism to request lib so that network requests to reserved IP ranges throw an error (9d3b8c3a) + +##### Bug Fixes + +* **deps:** + * update dependency satori to v0.18.2 (#13628) (2dc39f1e) + * update dependency ace-builds to v1.43.3 (#13633) (7adabd60) + * update dependency nodemailer to v7.0.6 (#13630) (07b9cd16) + * update dependency mongodb to v6.19.0 (#13619) (6d856545) + * update dependency sass to v1.91.0 (#13615) (08ea56bd) + * update dependency bootstrap to v5.3.8 (#13618) (29a7402f) + * update dependency nodebb-theme-harmony to v2.1.17 (#13607) (2f4cf26c) + * update dependency nodebb-theme-peace to v2.2.47 (#13608) (8af76f3c) + * update dependency redis to v5.8.2 (#13606) (138c6753) + * update dependency webpack to v5.101.3 (#13602) (996740bd) + * update dependency webpack to v5.101.2 (#13598) (90bddccb) + * update dependency nodebb-widget-essentials to v7.0.40 (#13597) (f5b0444b) + * update dependency tough-cookie to v6 (#13600) (ceb65d13) + * update dependency esbuild to v0.25.9 (#13593) (9ef4cfa2) + * update dependency redis to v5.8.1 (#13594) (0f72b8cd) + * update dependency webpack to v5.101.1 (#13588) (c67aa43f) + * update dependency sass to v1.90.0 (#13582) (abf7dd74) + * update dependency fs-extra to v11.3.1 (#13579) (5ce556d4) + * update dependency redis to v5.8.0 (#13580) (3c3e4486) + * update dependency redis to v5.7.0 (#13570) (27d60a19) + * update dependency cron to v4.3.3 (#13573) (0b4efa14) + * update dependency satori to v0.16.2 (#13569) (70d3a29c) + * update dependency webpack to v5.101.0 (#13567) (6fc8dfa9) + * update dependency satori to v0.16.1 (#13560) (2d1a5fea) + * update dependency redis to v5.6.1 (#13564) (1262aee8) + * update dependency mongodb to v6.18.0 (#13563) (8e9d3843) + * update dependency esbuild to v0.25.8 (#13559) (6a732e36) + * update dependency esbuild to v0.25.7 (#13557) (1697e36f) + * update dependency express-session to v1.18.2 (#13554) (0eb0a67a) + * update dependency morgan to v1.10.1 (#13555) (0e457f15) + * update dependency multer to v2.0.2 (#13556) (35ca0e3b) + * update dependency compression to v1.8.1 (#13553) (12b9f4c7) + * update dependency ace-builds to v1.43.2 (#13548) (57564190) + * update dependency webpack to v5.100.2 (#13549) (0b398bba) + * update dependency webpack to v5.100.1 (#13544) (d8c26bec) + * update dependency cron to v4.3.2 (#13546) (e838bb26) + * update dependency nodebb-theme-peace to v2.2.46 (#13542) (e4f56e83) + * update dependency webpack to v5.100.0 (#13541) (4a5a4fe6) + * update dependency redis to v5.6.0 (#13540) (a6cb933b) + * update dependency esbuild to v0.25.6 (#13538) (8960fdb3) + * update dependency nodemailer to v7.0.5 (#13537) (c6f4148b) + * update dependency nodebb-theme-peace to v2.2.45 (#13529) (991f518e) + * update dependency nodebb-plugin-web-push to v0.7.5 (#13523) (ceae2aa1) + * update dependency ace-builds to v1.43.1 (#13525) (aba2ddad) + * update dependency nodemailer to v7.0.4 (#13522) (f1fbea7b) + * update dependency pg to v8.16.3 (#13517) (fd82919e) + * update dependency workerpool to v9.3.3 (#13518) (655a3bd3) + * update dependency pg-cursor to v2.15.3 (#13516) (6e5083c2) + * update dependency pg to v8.16.2 (#13505) (d2f0944e) + * update dependency nodebb-theme-peace to v2.2.44 (#13514) (59090931) + * update dependency nodebb-theme-harmony to v2.1.16 (#13513) (4be2e82b) + * update dependency bootswatch to v5.3.7 (#13510) (1eefaf5c) + * update dependency pg-cursor to v2.15.2 (#13506) (10f7b49b) + * update dependency ace-builds to v1.43.0 (#13507) (e360f649) + * update dependency pg-cursor to v2.15.1 (#13504) (3b364ba1) + * update dependency pg to v8.16.1 (#13503) (819e2805) + * update dependency bootstrap to v5.3.7 (#13499) (e84fc739) + * update dependency connect-redis to v9 (#13497) (d3faff36) + * update dependency chart.js to v4.5.0 (#13495) (f36a5ac8) + * update dependency postcss to v8.5.6 (#13494) (703fcbbf) + * update dependency postcss to v8.5.5 (#13490) (c101d0d5) + * update dependency sass to v1.89.2 (#13487) (442c6e71) + * update dependency nodebb-plugin-emoji to v6.0.3 (#13486) (efcbbf29) + * update dependency serve-favicon to v2.5.1 (#13488) (d2a7eecb) + * update dependency @fontsource/inter to v5.2.6 (#13477) (c04bd7cc) + * update dependency satori to v0.15.2 (#13481) (78ebe298) + * update dependency satori to v0.14.0 (#13476) (29afcd36) + * update dependency workerpool to v9.3.2 (#13452) (6b33b1f4) + * update dependency satori to v0.13.2 (#13468) (44d1a17b) + * update dependency postcss to v8.5.4 (#13453) (1c432925) + * update dependency multer to v2.0.1 (#13466) (d0060e5d) + * update dependency sass to v1.89.1 (#13467) (602417d0) + * update dependency ace-builds to v1.42.0 (#13470) (c363b84e) + * update dependency mongodb to v6.17.0 (#13471) (a3cc99a2) + * update dependency cron to v4.3.1 (#13457) (3694f655) + * update dependency validator to v13.15.15 (#13451) (36f0cf25) + * update dependency esbuild to v0.25.5 (#13447) (6a5bbe92) + * update dependency nodebb-plugin-dbsearch to v6.2.18 (#13445) (3ca6a9bc) + * update dependency bootbox to v6.0.4 (#13443) (e3a7fb5c) + * update dependency diff to v8.0.2 (#13440) (76a624b9) + * update dependency commander to v14 (#13434) (1d624aad) + * update dependency webpack to v5.99.9 (#13438) (314a4ff0) + * update dependency connect-redis to v8.1.0 (#13433) (ee8e223f) + * update dependency nodebb-plugin-dbsearch to v6.2.17 (#13432) (42f16da5) + * update dependency sass to v1.89.0 (#13427) (2417a79b) +* display proper id if lock fails (19aa8a71) +* closes #13624, update post fields before schedule code (9d4a9b83) +* #13622, WordPress blog URLs not asserting properly (4ef605b1) +* closes #13625, fix utils.params so it works with relative_paths (a0e78ff8) +* remove webfinger error log (a0be4a28) +* urlencoded param in openapi spec example (5f7085f3) +* re-ordering dependencies because raisins (cbdc90a4) +* missed a tab character (788301a5) +* random hotkeys adding dependencies to my project smh (771b8dcb) +* parseAndTranslate bug (40973ca7) +* internationalize relay states (6576468e) +* minor fixes for yukimochi/Activity-Relay compatibility (28b63891) +* inbox.announce to not reject activities from relays (b1dbb19c) +* handle webfinger responses with subject missing scheme (4967492f) +* closes #13501 (bf279d71) +* closes #13620 (027d6f30) +* rare crash if queued item is no longer in db but id is in post:queue (e79dfeb7) +* jquery selector on post edit (f5ad7862) +* relative paths in openapi schema (a771b17f) +* add missing routes to write.yaml (e8401472) +* only process unique slugs (312df523) +* remove special-case logic that added a requested object to a topic if its defined context didn't actually contain it (70d7e329) +* return null if field is falsy (09898b94) +* mark-all read notifications button (c16f9d64) +* catch exceptions in assertPayload, closes #13611 (9bdf24f0) +* add missing files (057e3b79) +* add missing file to ur language folder (ecab347b) +* regression caused by cc6fd49c4d2ddc6970ea23011dece5ba91517ec0 (06c38247) +* protocol-relative URLs being accidentally munged, #13592 (cc6fd49c) +* cache lookup error when doing loopback calls (67389639) +* image handling when image url received is not a path with an extension (b4ff7906) +* readd retry items (c6889f08) +* set noindex tag on remote profiles as well (fe160160) +* duplicate canonical link header (c8ad0867) +* add rel canonical to remote user profiles (8ce5498f) +* ap queue id to use payload.type payload.id (a8bf4ea0) +* clearTimeout if item is evicted from cache (0997fbfa) +* sometimes summary is null/undefined (65364bfa) +* don't translate text on admin logs page (f6ed7ec2) +* change the client side reloginTimer to match setting (c43c3533) +* redis connect host/port (eac3d0a0) +* closes #13558, override/extend json opts from config.json (25c24298) +* add missing cache name (3f520c33) +* add missing ap pageview middleware (01f2effc) +* set to empty string if undefined (0ef98ec4) +* make clickable element anchor (dbed2db9) +* for attribute, remove upload trigger when click inputs (329f98d5) +* check topic and thumbs (72fec565) +* closes #13526, dont send multiple emails when user is invited (5a5ca8a5) +* pubsub on node-redis (f7f70468) +* typo (2280ea88) +* ensure check returns false if no addresses are looked up, fix bug where cached value got changed accidentally (6478532b) +* wrap cached returns for dns lookups in nextTick (010113a9) +* #13459, unread indicators for remote categories (6411c197) +* further guard against DNS rebinding attack (a8e613e1) +* undefined check, allow plugins to append to allow list (70c04f0c) +* simplify dns to use .lookup instead of .resolve4 and .resolve6, automatically allow requests to own hostname (df360216) +* return 200 for non-implemented activities instead of 501 (fcb3bfbc) +* remove null categories (28c021a0) +* patch ap .probe() so that it does not execute on requests for its own resources (a80edfa1) +* bring back auto-categorization if group and object are same-origin, handle Peertube putting channel names in `attributedTo` (8f933459) + +##### Other Changes + +* fix comma dangle (d4bf5f0c) +* fix lint issue (5dfd2413) +* remove unused url (076cc9e8) + +##### Refactors + +* revert, don't need to pass relative_path (f67265da) +* leaner utils.params for relative path (648c4543) +* remove invalid queued items (b73ee309) +* braces (f83d2536) +* add missing awaits (5ee1fd02) +* category listing logic to allow remote categories to be added, disabled, and re-arranged in main forum index (cb0b6092) +* show code/stack when dep check fails (f8733e06) +* dont del if cache disabled (bc40d79c) +* remove old arg (8305a742) +* if user.delete fails in actor prune (d5f6d158) +* use promise.all (472df3aa) +* use promise.all (6eab44a0) +* move ap retry queue from lru cache to db (#13568) (b3a4a128) +* log uid that failed (de71cc63) +* change default teaser to last-post (8ba230a2) +* copy session/headers when building req (e4a0160e) +* show both days and hours (1d7c32a5) +* add missing cache name (272008bb) +* another missing cache name (0fdde132) +* add names to caches, add max to request cache (a08551a5) +* closes #13547, process user uploads via batch (1ad97ac1) +* move post uploads to post hash (#13533) (24e7cf4a) +* parallel socket.io adapter (0b9bfc1c) +* use strings for cids (57a5de26) + +##### Reverts + +* remove heapdump (e74996fb) + +##### Tests + +* delete commented-out test (70bbed93) +* add timeout to ap.helpers.query (8f7411c3) +* more logs (8e160fe0) +* add more logs (f703a94b) +* add more logs (681ce8bf) +* debug timeout (029da6c5) +* more logs for failing test (79c6e72c) +* catch error in failing test (69a6c150) +* sharp invalid png (1ea10eff) +* latest sharp (3cdf28bd) +* add logs for test that's timing out (15155809) +* use protocol of test runner (04815497) +* fix notification tests (f8a0a7e1) +* one more fix (95f6688c) +* fix spec (7393bdd4) +* fix openapi (1071ac0c) +* fix meta test (1776bd1d) +* test fixes for default teaser change (8eedb38a) +* add openapi spec (020e0ad1) +* try timeout again (27aab921) +* disable timeout (930ff21f) +* psql fix (85e2d7d3) +* one more test fix (22d1972f) +* fix test, add joinLeaveMessages to newRoom (7acd63c2) +* increase timeout (fa31ba05) +* on more (1a85fafb) +* testing timeout on failing test (82c8034c) +* remove ci env (39d243b0) +* add a null field test (1fc91d5e) + #### v4.4.6 (2025-08-06) ##### Chores