You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
nodebb/CHANGELOG.md

259 KiB

v1.18.6 (2021-11-10)

Chores
  • make it a link (a0f0dd02)
  • update badges, remove david doesnt work (dad31c8e)
  • up themes (b1d6c9ba)
  • up mentions (98b98a11)
  • up mentions (3e4d477e)
  • fix type.yaml example and summary (591424ce)
  • incrementing version number - v1.18.5 (1e418f5b)
  • update changelog for v1.18.5 (82eda23a)
  • remove .opacity() mixin as it is supported cross-browser (28efcb59)
  • deps:
    • update dependency eslint-plugin-import to v2.25.3 (45a0895c)
    • update commitlint monorepo to v14 (dc78125a)
    • update dependency jsdom to v18.0.1 (7d468e72)
  • i18n:
    • fallback strings for new resources: nodebb.admin-development-info (91676c6c)
    • fallback strings for new resources: nodebb.admin-settings-navigation (3727e39f)
    • fallback strings for new resources: nodebb.admin-settings-post (46789910)
New Features
Bug Fixes
  • deps:
    • update dependency nodebb-theme-slick to v1.4.16 (#9990) (cf30876f)
    • update dependency nodebb-plugin-composer-default to v7.0.14 (#9989) (ef02bdc4)
    • update dependency nodebb-plugin-composer-default to v7.0.13 (#9988) (654c8e61)
    • update dependency nodebb-plugin-mentions to v3.0.2 (1a22b0ec)
    • update dependency socket.io to v4.3.2 (98ebc4d9)
    • update dependency html-to-text to v8.1.0 (c1f5889f)
    • update dependency nodebb-plugin-dbsearch to v5.1.0 (#9983) (4f1ee1fc)
    • update dependency nodebb-plugin-composer-default to v7.0.12 (7fee0e32)
    • update dependency nodebb-plugin-mentions to v3.0.1 (#9979) (8224a2a9)
    • update dependency nodebb-plugin-spam-be-gone to v0.7.11 (91293ecc)
    • update dependency nodebb-theme-lavender to v5.3.1 (f7295aaa)
    • update dependency nodebb-plugin-mentions to v3 (#9966) (0888aae6)
    • update dependency mongodb to v4.1.4 (#9968) (f5993731)
    • update dependency nodebb-theme-persona to v11.2.21 (#9969) (8fac8d61)
    • update dependency nodebb-plugin-mentions to v2.15.1 (0f8a68c0)
    • update dependency validator to v13.7.0 (81c8d70c)
    • update dependency autoprefixer to v10.4.0 (755860f1)
  • ability to enumerate email via updateProfile method (c1ac2912)
  • accidentally not clearing email when said email is confirmed for a different uid (b912a564)
  • #9976 (28dd31a8)
  • #9976, handle array or object (9bfb6c72)
  • dont show previews on mobile (41e02400)
  • category load more btn visibility (05468526)
  • #9973, ignore if assigning to same parent (66e7cdac)
  • #9972 (67cb2491)
  • remove tooltip on ajaxify (f728abda)
  • don't highlight external nav items (8a88295d)
  • don't use # for previews (5a0efd2d)
  • events for just topic with main post (3d611ab7)
  • #9954, get next post timestamp (89399c0e)
  • topic events not rendered in infinitescroll (a7f235db)
  • broken post uploads due to 6a976a9db0 (485b6ced)
  • #9950, rename account export routes to remove uid/ prefix (0ee85d5a)
  • double invocation of authenticateRequest (60352eca)
  • #9945, call authenticateRequest middleware for mount points in /api (6a976a9d)
  • hooks is sometimes undefined (74aa12c9)
  • typo in flags (bc4b19b4)
  • remove unused code (50b2ebf8)
  • handle undefined data.query (8f08d9ca)
Performance Improvements
Refactors
  • shorter require (41c3eb82)
  • deprecate app.alert functions user alerts module directly (0428912c)
  • deprecate app.logout (8b4510cc)
  • simpler rejoin (61903448)
  • deprecate app.openChat/newChat (f352be63)
  • move search functions from app.js to search module (1a9b1598)
  • move session messages (666fe209)
  • move warnings/messages out of app.js (51855254)
  • remove jshint (0a7ff208)
  • cleanup info, better cpu usage % (4b738c8c)
  • acp only uses 3 modes and a single theme (890bf03f)
  • display errors from category drag/drop (c1cc35a9)
  • use utils.debounce (e8c17fee)
Tests

v1.18.5 (2021-10-27)

Breaking Changes
  • disable javascript in custom less tab (719cfc0d)
Chores
  • remove .opacity() mixin as it is supported cross-browser (28efcb59)
  • up themes (463b2076)
  • up persona (1438f409)
  • incrementing version number - v1.18.4 (945c2b0b)
  • update changelog for v1.18.4 (7cbcb521)
  • deps:
    • update dependency lint-staged to v11.2.6 (8d4bb8bb)
    • update dependency lint-staged to v11.2.5 (0728a994)
    • update dependency lint-staged to v11.2.4 (f76a7882)
    • update dependency husky to v7.0.4 (2a3e13f3)
    • update dependency mocha to v9.1.3 (4784f016)
    • update dependency eslint-plugin-import to v2.25.2 (3c3f45d9)
    • update dependency jsdom to v18 (4b8dcd4c)
    • update dependency eslint-plugin-import to v2.25.1 (7c4aebbd)
    • update dependency lint-staged to v11.2.3 (288b5456)
    • update dependency lint-staged to v11.2.2 (f96c8c4d)
    • update dependency @commitlint/cli to v13.2.1 (52c38a1d)
    • update dependency lint-staged to v11.2.1 (022e8df0)
    • update dependency eslint-config-nodebb to v0.0.3 (4b92df82)
  • i18n:
    • fallback strings for new resources: nodebb.admin-settings-email, nodebb.error (9b68dc37)
    • fallback strings for new resources: nodebb.admin-dashboard (ff962b5d)
    • fallback strings for new resources: nodebb.admin-dashboard, nodebb.admin-menu (abe59131)
    • fallback strings for new resources: nodebb.admin-manage-digest, nodebb.admin-settings-user, nodebb.user (2bed40be)
Documentation Changes
  • update verbiage re: login API route (94c4f87b)
New Features
  • new ACP option emailPrompt ... which allows administrators to disable the client-side prompt to encourage users to enter or confirm their email addresses (80ea12c1)
  • show popular searches (f4cf482a)
  • new plugin hook to allow plugins to reject email address on new registration or email change (6b4f35c2)
  • utilities login API route now starts an actual login session, if requested (806a1e50)
  • add method name to deprecation message (b91ae088)
  • quote tooltip (66fca4e0)
  • additional quality options for jpeg uploads, added quality and compression settings for png uploads (d22b076b)
  • #8053, biweekly digest option (f7967bdf)
  • core submit button dropdown (605a5381)
  • added failing i18n tests (35af7634)
  • confirm before deleting all events (#9875) (56d05b4e)
Bug Fixes
  • deps:
    • update dependency nodebb-theme-vanilla to v12.1.7 (#9944) (bf20965f)
    • update dependency nodebb-theme-persona to v11.2.19 (#9943) (bcf85fcf)
    • update dependency nodebb-rewards-essentials to v0.2.0 (7c2ecb12)
    • update dependency nodebb-theme-vanilla to v12.1.6 (49b8b983)
    • update dependency nodebb-theme-persona to v11.2.18 (ed0adf2c)
    • update dependency nodebb-theme-persona to v11.2.17 (78661079)
    • update dependency postcss to v8.3.11 (a5f4e206)
    • update dependency nodebb-theme-vanilla to v12.1.5 (d74a6bd3)
    • update dependency sharp to v0.29.2 (8b8fe393)
    • update dependency postcss to v8.3.10 (b18a24e9)
    • update dependency nodebb-theme-persona to v11.2.15 (f3c8d7da)
    • update dependency nodebb-theme-persona to v11.2.14 (#9919) (5e08e67b)
    • update dependency socket.io-client to v4.3.2 (deba3e27)
    • update dependency socket.io to v4.3.1 (e1554f61)
    • update socket.io packages (ce5a0a21)
    • update dependency nodebb-plugin-spam-be-gone to v0.7.10 (600a8720)
    • update dependency nodebb-plugin-composer-default to v7.0.10 (b0128f85)
    • update dependency nodebb-plugin-markdown to v8.14.4 (f8f35d7e)
    • update dependency nodebb-plugin-composer-default to v7.0.9 (ed874662)
    • update dependency nodebb-theme-persona to v11.2.13 (1dba75e9)
    • update dependency ioredis to v4.28.0 (4ff5452d)
    • update dependency nodebb-theme-persona to v11.2.12 (fe9f82f6)
    • update dependency ioredis to v4.27.11 (6d2e0aa9)
    • update dependency nodebb-plugin-mentions to v2.14.1 (820f8cdf)
    • update dependency jquery-ui to v1.13.0 (b0eb2aed)
  • remove loading="lazy", fixes inf. scroll loaded images (01572785)
  • windows tests (25ebbd65)
  • undefined query showing in searches (6cfaea06)
  • don't repeat search if on same page (89f5e06b)
  • api session revoke test (0926ae6e)
  • crash (da64810a)
  • add missing translation (eb075c73)
  • move record to controller (ee8e0480)
  • profile edit fields showing translated values (63572c23)
  • #9934, fix translator test (8d316d18)
  • token verify (04dab1d5)
  • guard against prototype pollution (1783f918)
  • translator path traversal (c8b2fc46)
  • there is no alltime digest, fixes translation in test email (e62948f7)
  • clicking outside postContainer should close tooltip (47df62e7)
  • minification regression (998b9e79)
  • tooltip (fec7ebed)
  • biweekly digest #8053 (9cb4de50)
  • restore plugin upgrade checking logic (44687394)
  • fallbacks for new langauge key (ed4ebd22)
  • #9917, show topics as unread for guests (4333d217)
  • clarify site settings urls vs config.json url (#9912) (6436aa65)
  • clarify SMTP enable toggle (#9911) (09f198fc)
  • don't overwrite reloadRequired with false (9e0ce027)
  • delete translations in admin/general folder (since general was removed and relocated elsewhere) (b460e590)
  • pushed missing key to tx and pulled fallbacks (21b61082)
  • adding missing language namespace "top" (0f9b0b78)
  • extra debug log (bd893cda)
  • have renovate add dependencies label to its PRs (eddb9868)
  • no global bootbox (#9879) (227456fb)
  • #9872 update app badge with notification count if applicable (3e69bcdf)
  • better nomenclature (c1149d04)
  • html attributes (#9877) (3acaac4c)
  • escape thumbs, allow robots meta tag (4f9717fb)
  • missing translations (#9876) (7935bd9e)
Performance Improvements
  • dont fs.open if plugin doesnt have language namespace (#9893) (1feb111a)
Refactors
Reverts
Tests
  • fix broken openapi3 schema (7ef5214e)
  • restore commented-out i18n test (fa1afbcf)
  • moved topic event and topic thumb tests to subfolder for better organisation (154ffea0)
  • remove escape (6c25b9db)
  • possible fix to timeout (63109c07)
  • increase timeout (8654a996)

v1.18.4 (2021-10-06)

Chores
  • up persona (f4e62fb1)
  • incrementing version number - v1.18.3 (57358743)
  • update changelog for v1.18.3 (f066ddb8)
  • deps:
    • update dependency lint-staged to v11.2.0 (840b49b9)
    • update commitlint monorepo to v13.2.0 (aa370310)
    • update dependency mocha to v9.1.2 (6385b88e)
Documentation Changes
  • added link to unofficial IRC channel (c5a48b44)
New Features
Bug Fixes
Performance Improvements
Refactors
  • use utils.debounce (a7668a7f)
  • remove async.waterfall from remaining upgrade scripts (6b34065f)
Tests
  • dashboard (4f8647a5)
  • add tests for admin privileges (9fe9ab08)
  • add missing tests (34798325)
  • remove debug log (8cb47548)
  • no need to create fake interstitial as NodeBB comes with some by default (cb69934a)

v1.18.3 (2021-09-22)

Chores
  • deps: update docker/build-push-action action to v2.7.0 (ee027719)
  • incrementing version number - v1.18.2 (0a56158b)
  • update changelog for v1.18.2 (27e9282a)
New Features
  • move filter:topic.post hook to top of method (f194809f)
  • add client-side static hook to fire immediately before any topic action (hint: delete action to stop default behaviour) (66eaae44)
  • allow removing multiple items from list (397835a0)
  • add uid to filter:user.saveSettings (7f48edc0)
  • headers for global privs #9717 (#9762) (84ff1152)
  • add ACP option to require email address on new registration (006fc700)
Bug Fixes
  • deps:
    • update dependency nodebb-plugin-composer-default to v7.0.7 (98554294)
    • update dependency postcss to v8.3.7 (6ebe707c)
    • update dependency autoprefixer to v10.3.5 (25687441)
    • update dependency nodebb-plugin-composer-default to v7.0.6 (#9815) (c18678ce)
    • update dependency nodebb-theme-persona to v11.2.8 (#9816) (39d73d0c)
    • update dependency connect-mongo to v4.6.0 (8e886c85)
    • update dependency nodebb-plugin-composer-default to v7.0.4 (8af54255)
    • update dependency mongodb to v3.7.1 (9049dcd7)
    • update dependency nodebb-theme-persona to v11.2.6 (506035b5)
    • update dependency nodebb-theme-slick to v1.4.13 (787306a6)
    • update dependency nodebb-plugin-composer-default to v7.0.3 (732b59c2)
  • fixed element shifting in ACP menu that's been bothering me for 5-ish years (31975a62)
  • #9822, use correct username/pwd (30f38771)
  • remove unused translator (2add84a5)
  • ban info test (07859f7e)
  • #9819, show same time info for ban (9f0e55ad)
  • show local time for ban (7a2f0ae1)
  • crash (c437b336)
  • remove caller from payload after hooks is done (15f9aaa6)
  • bad uid reference (ce8ea6ea)
  • update Topics.post and Topics.reply so that plugins can modify uid (or redirect a reply to a different topic) (7777812e)
  • #9818, fix totalTime calculation (c4fc7bf9)
  • missing microdata in category data (1ed62aa8)
  • #9812, add topics:schedule (c0a52924)
  • for subfolders (31a6d4b3)
  • req.path doesn't have full url (0236ea86)
  • escape moderation note before adding to dom (75ebe786)
  • #9811, send bodyClass on 403 (40c9fca9)
  • also launch docker workflow on release branches (944a7985)
  • xss on flags page via ban reason (ba3582b8)
  • up timeout for psql tests (896ff215)
  • redis batch (0c4b875e)
  • redis processing batch+1 items every iteration (3261edcc)
  • #9560, don't save post diffs if content didn't change (8b576a37)
  • #9790, get baseIndex on update for infinitescroll (6a55c027)
  • #9790, fix sorting of more than one page of pinned topics (2657804c)
  • privileges added by plugins (#9802) (3ecbb624)
  • #9800, don't send all welcome test emails to test@example.org @julianlam (71ed50b9)
  • docker - remove sha tag (b06e8dba)
  • Return QEMU back, remove platforms definition (52eace4b)
  • Docker workflow tweaks (#9792) (e7f4cde4)
  • browsers autocompleting smtp fields when they should not (34afb747)
Refactors
  • no regex (18252fb9)
  • remove async.waterfall (58ac55c1)
  • remove async.waterfall (222dccaf)
  • remove async.waterfall (f35a0f43)
  • allow plugins to replace og:image, or specify additional og:image (819917da)
Code Style Changes

v1.18.2 (2021-09-08)

Chores
  • deps: update commitlint monorepo to v13 (87ba768f)
  • incrementing version number - v1.18.1 (f8f80e4f)
  • update changelog for v1.18.1 (0713475d)
New Features
  • a slightly less ugly rewards panel (bf0c02a7)
Bug Fixes
  • dashboard graph controls (a7855c4c)
  • #9767 ACP change group icon fix (580a016b)
  • #9781 (#9782) (0ce4b87d)
  • replace logic in isPrivilegedOrSelfAndPasswordMatch to use privileges.users.canEdit (856ba78a)
  • handle missing uid in deprecated socket call (cdaea611)
  • use privileges.users.canEdit for image upload priv check (e33e046f)
  • errors from registerComplete (a48bbdbf)
  • simplify logic for fullname and email blanking in user retrieval (getUserDataByUserSlug) (60de0844)
  • lint (1e2bda13)
  • manifest error (488f0978)
  • #9772, regression from 70a04bc105 (72710b80)
  • push back some deprecations, remove deprecated stuff scheduled for v1.18.0 (dd4e66e2)
  • deprecate userData.showHidden as it is functionally equivalent to userData.canEdit (4ac701d7)
  • focus on save button on plugin activation (46e5e17d)
  • #9773, fire hooks properly for priv changes (#9774) (6869920e)
  • deps:
    • update dependency sharp to v0.29.1 (ac6cd02f)
    • update dependency nodebb-plugin-dbsearch to v5.0.3 (338f90fc)
    • update dependency nodebb-theme-vanilla to v12.1.3 (0b3ea5ad)
    • update dependency nodebb-theme-persona to v11.2.5 (57e54d55)
Refactors
  • deprecate picture update socket call, new API routes for picture update (0a41741b)
Tests
  • added test for external image via new change picture API (8cbad61e)

v1.18.1 (2021-09-03)

Chores
  • found some hooks that don't play well docgen (ae793b4a)
  • incrementing version number - v1.18.0 (1e436ae7)
  • update changelog for v1.18.0 (2fd9c095)
  • deps: update dependency mocha to v9.1.1 (64bac178)
New Features
Bug Fixes
  • deps:
    • update dependency autoprefixer to v10.3.4 (67b932f4)
    • update dependency nodebb-theme-persona to v11.2.4 (fe18e100)
    • update dependency mongodb to v3.7.0 (31a35d7f)
    • update socket.io packages to v4.2.0 (f2028d70)
    • update dependency ioredis to v4.27.9 (6052eb16)
    • update dependency mongodb to v3.6.12 (#9761) (5fa982c1)
    • update dependency nodebb-plugin-composer-default to v7.0.2 (33d51201)
    • update dependency nodebb-theme-slick to v1.4.12 (1b416d7e)
    • update dependency nodebb-theme-slick to v1.4.11 (65b32fa1)
    • update dependency nodebb-theme-persona to v11.2.3 (6ce321e4)
    • update dependency autoprefixer to v10.3.3 (91ba7cdf)
    • update dependency nodebb-theme-slick to v1.4.9 (d80b378f)
    • update dependency jquery-deserialize to v2.0.0 (#9744) (7f9451ce)
  • determine indeterminate checkboxes (760ea9df)
  • move app.alert back into the conditionals (ca9bae3a)
  • only show email confirmation warning toast on pages that it applies (1bd1cc74)
  • updated email confirm warning to be more positive (2d1380dd)
  • automated tests are a good thing to have (6afeac37)
Refactors

v1.18.0 (2021-08-25)

Breaking Changes
  • emails: restore ability for admins to edit a user's email address [breaking] (c4e3362b)
  • #9670 return 4xx errors instead of 5xx on flag routes, when unauthenticated or not privileged [breaking] (d1959a25)
  • made TopicList.onTopicsLoaded private [breaking] (07f25d8c)
  • return proper API-style response if exception caught by error handler on v3 routes [breaking] (a54a3ee1)
Chores
  • deps:
    • update dependency husky to v7.0.2 (324c7d48)
    • update dependency eslint-plugin-import to v2.24.2 (9a34fe18)
    • update dependency eslint-config-nodebb to v0.0.2 (cd85a55d)
    • update dependency mocha to v9.1.0 (c5a42273)
    • update dependency eslint-plugin-import to v2.24.1 (daca09d4)
    • update dependency @apidevtools/swagger-parser to v10.0.3 (ffdf61b8)
    • update dependency jsdom to v17 (#9700) (41855375)
    • update dependency eslint-plugin-import to v2.24.0 (23dafa20)
    • update dependency lint-staged to v11.1.2 (d47bdde2)
    • update dependency jsdom to v16.7.0 (9db28b4b)
    • update dependency eslint to v7.32.0 (03a98f4d)
    • update dependency mocha to v9.0.3 (40384fcb)
    • update dependency lint-staged to v11.1.1 (7588aae1)
    • update dependency lint-staged to v11.1.0 (cb5fe271)
    • update dependency mocha to v9 (f43291f5)
    • update dependency husky to v7 (702290c4)
    • update dependency eslint to v7.31.0 (f5a53b7f)
    • update dependency lint-staged to v11.0.1 (02101315)
  • up markdown/composer-default, fixes: #9708 (b74eefac)
  • incrementing version number - v1.17.2 (46be2046)
  • update changelog for v1.17.2 (5c9c0605)
Documentation Changes
  • some hook deprecation notices (6bc090f8)
New Features
  • add confirmation modal to topic event deletion (e803737a)
  • allow changing default search in (794bf01b)
  • #9705, use radio buttons for flag reasons (382a4c27)
  • Client-side hooks - replace window.trigger (#9679) (342503e0)
  • closes #9684, allow event deletion (358ad740)
  • replace eslint configs on server and client side to inherit rules from eslint-config-nodebb (f653a6ff)
  • re-add FontAwesome font for compatibility (a370c26f)
  • update to FontAwesome 5.15, resolve #6976 (41762e66)
  • removed registerAndLoginUserCallback local helper, added handling if a bad interstitial doesn't go away nor throw errors (70a04bc1)
  • updated email confirmation alert to more closely reflect email usage, remembering dismissal (bbbacd86)
  • allow requirejs modules to be awaited (58adb762)
  • show instructional modal after email change request (0e05cbe1)
  • return back to profile after editing email (324a12b6)
  • allow registration interstitial abort to also follow returnTo (b3c91641)
  • plumb current session id into email removal/confirmation flow, so all other sessions are revoked except for the current session (96398faa)
  • allow revokeAllSessions method to revoke all sessions except that which is passed in (new arg) (b0a4a1d3)
  • return generic 404 on invalid confirm code (f53fc1ad)
  • invites no longer require email (a917210c)
  • show different registration intersitial lead text on new account vs. existing (74aaa0a9)
  • removal of emailExists socket listener (12b2a979)
  • add loggedin/guest class to body (04b1f702)
  • convert _fireStaticHook to async function (auto-refactor by vscode) (21359eab)
  • store topic tags in topic hash (#9656) (4a56388e)
  • new hook action:topics.loading (in the same format as action:posts.loading) (e0db904b)
  • schedule deprecation for action:category.loaded and action:category.loading. Use action:topics.loaded/ing instead (8ae4c300)
  • internationalize API error messages (7036c375)
  • #9651, change category desc to multiline (5fd190f7)
  • emails:
    • pass req in to filter:registration.interstitial (afd2d8da)
    • display current email in interstitial form (f5291999)
    • upgrade script for includeUnverifiedEmails (50517020)
    • +includeUnverifiedEmails ACP setting (be97aa6f)
Bug Fixes
  • lint (55693ec1)
  • topic event deletion (1ee92c28)
  • pluginPaths (0743554d)
  • #9730, show warning if plugin is active but not installed (13878e9f)
  • #9729, insert new posts after topic events (60bf5643)
  • #9719, only apply to non https (c354cde3)
  • #9727, addHandlers after hooks (77c3085a)
  • allow smaller than 5mins for admin relogin duration (a288f51f)
  • taskbar icon not pushed via composer/persona (3a81c8fd)
  • #9698, pass along query params in redirect (9de64bf5)
  • lint (8bf2896d)
  • remove unnecessary quote (093ac1c0)
  • parseInt tids (162ebacf)
  • #9681, update posts in queue if target tid is merged (0c816429)
  • email update interstitial to not error on empty email field (on new registration) (4a521ea2)
  • updated ACP > Manage > Users to handle users with no email address (824a72b2)
  • allowed reset and reset_notify emails to go out to unconfirmed email addresses (d5b5b7d5)
  • bug where confirmation email was sent to the old email address, not the new one (414d733d)
  • email validation flow, so that it actually works, fixed event logging bug, new email verification template (3bcd1f14)
  • accidental early return in confirmByCode, tests, race condition (caf89687)
  • test :shipit: (2c06ac9a)
  • failing test from d1959a2 (f71f2951)
  • #9668, add raw info to psql database page (6c47a060)
  • use hooks module instead of window trigger (acb11cc7)
  • tests (0960a814)
  • translate language keys if passed in to formatApiResponse (415416d2)
  • lint (ff78969c)
  • tests (55d7e558)
  • keep query string on redirects (47c8c692)
  • deps:
    • bump persona (12e7f8d5)
    • update dependency nodebb-theme-persona to v11.2.1 (#9734) (2e1562b8)
    • update dependency nodebb-theme-vanilla to v12.1.2 (#9735) (4bd66a7c)
    • update dependency nodebb-theme-slick to v1.4.8 (#9732) (096c5a58)
    • update dependency autoprefixer to v10.3.2 (d44e3a8e)
    • update dependency nodebb-theme-persona to v11.2.0 (116f9cb5)
    • update dependency ioredis to v4.27.8 (8461791a)
    • update dependency nodebb-theme-persona to v11.1.3 (ec103ce8)
    • update dependency sharp to v0.29.0 (626d5565)
    • update dependency connect-mongo to v4.5.0 (ce6039f2)
    • update dependency nodebb-theme-vanilla to v12.1.1 (de83f82e)
    • update dependency nodebb-theme-persona to v11.1.2 (ee10ae04)
    • update dependency yargs to v17.1.1 (38e38580)
    • update dependency nodebb-theme-persona to v11.1.1 (47941418)
    • update dependency mongodb to v3.6.11 (a0fd0268)
    • update dependency yargs to v17.1.0 (181c20ba)
    • update dependency ioredis to v4.27.7 (4c9d6b62)
    • update theme versions for #9607 (3b34571d)
    • update dependency postcss to v8.3.6 (ebdba8f1)
    • update dependency html-to-text to v8 (3f24746c)
    • update dependency yargs to v17 (1b6b1fe5)
    • bump composer-default to v7 (51458c75)
    • update dependency autoprefixer to v10.3.1 (0d3f74b7)
    • update dependency nodebb-plugin-markdown to v8.14.2 (b6a84712)
    • update dependency autoprefixer to v10.3.0 (72c9650f)
    • update socket.io packages to v4.1.3 (f14df0d4)
    • update dependency nodebb-plugin-composer-default to v6.5.34 (31dae04f)
    • update dependency nodebb-theme-persona to v11.0.26 (ae14016e)
    • update dependency nodebb-plugin-markdown to v8.14.1 (8b41684e)
  • emails:
    • broken test for api/user/email/:email (81611ae1)
    • dont allow retrieving user data if showemail is false @julianlam (7d115c8e)
    • registration tests, email no longer passed-in, API tests (confirm email for test accounts) (6694bdd5)
    • don't automatically associate email during user creation if passed in at registration (e726048e)
    • remove debug log (b4b65ecd)
    • broken test due to sticky registration interstitial (ab9b6716)
Refactors
  • remove promisify from redis, ioredis supports promises nati… (#9728) (6659e95a)
  • get rid of async.waterfall/each (8fb53252)
  • remove unused async (42dbd402)
  • remove waterfall (6b6a7d4b)
  • move interstitials into its own file in src/user/ (e95df2f0)
  • added user.email.remove method, updated email interstitial to handle email removal (ccf004f1)
  • client-side to use flag notes API (ef4e74bf)
  • fix wording (6ed7e937)
  • email: validation checking methods, +tests fix (087e6020)
  • emails:
    • more work in update email interstitial, interstitial skipping, email change on confirmation, deprecation of requireEmailConfirmation (69c96dd2)
    • interstitial for adding/updating email (f365bc46)
    • remove email validation on client and server side (7c1d1c77)
Code Style Changes
Tests
  • emails: fixing broken tests introduced by e5ff68acd (a3a3b10f)

v1.17.2 (2021-07-07)

Chores
  • deps:
    • update coverallsapp/github-action action to v1.1.3 (99c23037)
    • update dependency eslint to v7.30.0 (725e70e9)
    • update dependency coveralls to v3.1.1 (edefac96)
    • update dependency eslint to v7.29.0 (2700f717)
    • update dependency eslint to v7.28.0 (fac0bcbd)
    • update dependency smtp-server to v3.9.0 (86723292)
    • update dependency eslint-plugin-import to v2.23.4 (886d65f6)
    • update dependency eslint-plugin-import to v2.23.3 (c3b0e2fa)
  • lint (2b42e7ed)
  • fix indentation (d07229aa)
  • up rewards (ca9ca876)
  • incrementing version number - v1.17.1 (0aad1312)
  • update changelog for v1.17.1 (1e6ed0ad)
Documentation Changes
New Features
  • add merge/fork hooks (c9348efb)
  • #9628, allow setting custom icon names (2fe30b6f)
  • #9617 update fa link (52596902)
  • add bodyClass to 500 page (46a454f1)
  • clear reset tokens on successful login (f9728aff)
  • add filter:categories.categorySearch (be19f27f)
  • allow nested properties on category page (#9601) (cc0cf99f)
  • show ip on acp manage users (8ea58432)
  • add undoTimeout to moving posts as well #9599 (e588948f)
  • make undoTimeout configurable, closes #9599 (05cc7ccb)
  • introduce boolean res.locals flag to bypass session reroll (used by session-sharing) (816856b0)
  • allow modifying default category privileges (57e46e41)
  • add filter:notifications.create (ac7b093f)
  • pass req.query to getUnreadData (3d5fef6e)
  • added GET user route for api v3 (d2960aeb)
Bug Fixes
  • docs: #9648 (e03782f2)
  • deps:
    • update dependency mongodb to v3.6.10 (f17625fb)
    • update dependency nodebb-theme-persona to v11.0.25 (c11927c5)
    • update dependency sortablejs to v1.14.0 (5ff9319f)
    • update dependency nodebb-theme-persona to v11.0.24 (c7feea56)
    • update dependency nodebb-plugin-composer-default to v6.5.33 (3611b04e)
    • update dependency nodebb-plugin-markdown to v8.14.0 (e40f648f)
    • update dependency nodebb-plugin-markdown to v8.13.1 (cf6fcc21)
    • update dependency nodebb-plugin-composer-default to v6.5.32 (#9626) (90e3f5ac)
    • update dependency nodebb-plugin-composer-default to v6.5.30 (#9624) (2060dc61)
    • update dependency postcss to v8.3.5 (09aebbda)
    • update dependency postcss to v8.3.4 (520050da)
    • update dependency postcss to v8.3.3 (c7006ec6)
    • update dependency ioredis to v4.27.6 (82b33dc4)
    • bump persona (f4eb336a)
    • update dependency postcss to v8.3.2 (88f21e91)
    • update dependency postcss to v8.3.1 (71b4d634)
    • update dependency ioredis to v4.27.5 (9f74caf6)
    • update dependency connect-redis to v6 (#9590) (6632b2b6)
    • update dependency ioredis to v4.27.4 (4ffd234f)
    • update dependency nodebb-theme-persona to v11.0.21 (062928d2)
    • update dependency mongodb to v3.6.9 (d8c64479)
    • update dependency autoprefixer to v10.2.6 (3aeac357)
  • #9634, re-jig top bar of Admin > Manage > Users (b8964843)
  • hide private user data in api/v3/users/[uid] (97c8569a)
  • numThumb upgrade script (d9e2190a)
  • acp dashboard sometimes not loading on cold load (fee782c4)
  • #9636, sanitize all attributes in meta and link tags (84904976)
  • convert some hooks to use hooks module (09bac6bd)
  • #9627 (acdbd049)
  • #9629, translate content property of meta tags (561ce7d3)
  • prevent crash in expandObjBy #9618 (ab6f062f)
  • dont show system tags in whitelist dropdown to regular users (0d975bc4)
  • #9622 (#9623) (84e06575)
  • #9620, fix notif delay (73f40e96)
  • #9619, add group chat filter to /notifications (c92fc19b)
  • scope (3cd9434b)
  • #9615, catch exceptions in renderOverride (1eda538d)
  • purge uploaded images accordingly #9606 (#9611) (8168c6c4)
  • keep query params when switching chat (7b4c0a16)
  • accidental unnecessarily strict conditional that effectively rendered SSO state checking opt-in instead of opt-out (a2400f6b)
  • introduce artificial delay + delay fudging on invalid email during reset token generation (f6c14d6b)
  • #9605, expire all active reset tokens for a uid if that uid generates a new one (229f96f8)
  • lint (8c952aa3)
  • schema (39e13591)
  • pagination on acp users search (6695927e)
  • #9596, incorrect placeholder string in some translations (93d94564)
  • extra ')' (6f732611)
  • disallow editing of other users' notes (edcba61a)
  • #9592, check session (286644d0)
  • don't crash if session doesn't exist (3717df61)
  • lint (66cae54e)
  • improper use of filename extensions (16e0bca5)
  • return null (d8d6c989)
  • updates navigation menu user icon (f9b248b8)
  • returnOriginal deprecation (3fb74445)
  • error when trying to trim an object (48b8e3bb)
  • post-queue: moderatedCids is an array of numbers (#9631) (db65360c)
Performance Improvements
  • cache Topics.getTopicsTags (8e0561f2)
  • bypass getMultipleUserSettings (10ddfff3)
Tests
  • fixed broken tests from #9605, removed token clean on token usage as it is superceded by token clean on generation (+ associated test) (5c42b3ea)

v1.17.1 (2021-05-26)

Chores
  • deps:
    • update dependency grunt to v1.4.1 (0e37bbfd)
    • update dependency jsdom to v16.6.0 (60170ad6)
    • update dependency eslint to v7.27.0 (298af98d)
    • update dependency eslint-plugin-import to v2.23.0 (1623ba4f)
    • update commitlint monorepo to v12.1.4 (4a01313d)
    • update commitlint monorepo to v12.1.3 (b82774c5)
    • update dependency eslint to v7.26.0 (d1418210)
    • update dependency lint-staged to v11 (1bf57d40)
    • update dependency mocha to v8.4.0 (461e187b)
    • update dependency eslint to v7.25.0 (32c20806)
    • update dependency grunt to v1.4.0 (a30deef3)
  • incrementing version number - v1.17.0 (75f7972b)
  • update changelog for v1.17.0 (4c441a1b)
Documentation Changes
  • update API docs to better outline authentication options (6ef0c8e9)
  • update API authentication verbiage (d08d0c42)
New Features
Bug Fixes
  • #9580, proper 404 when ajaxifying (9ebfdeb7)
  • lint (09f51792)
  • #9567 fix tests (951e71a0)
  • #9567, use regular 404 (5215c30a)
  • ioredis upgrade fix, maybe (1ce59508)
  • bug where interstitial errors were not properly passed to the front-end via req.flash (1d9cfe1e)
  • #9553, use same fields for user search results in acp (0551642a)
  • lint (e8c5c18a)
  • lint (ffa80163)
  • tests (fad5988e)
  • tests (074ee859)
  • wrong error message checked (a9bb1088)
  • #9507 session reroll causes socket.io to become confused (#9534) (ec6d1e23)
  • isObjectField(s) empty field (2c22b06f)
  • do not register SW for Safari until upstream fixes #9193 (ce5fea2a)
  • infinite scroll with small number of items #9524 (#9525) (cb1dd0a3)
  • #9519 unable to properly ajaxify to home on subfolder installs if anchor did not have a trailing slash (db48b952)
  • #9512, fix chat icon if no privileges (6ed8890c)
  • #9503, dont error in markUnread if room doesnt exist (308252f5)
  • use socket.request.headers (9e07efc1)
  • buildReqObject headers for socket.io calls (ed534f34)
  • deps:
    • update dependency sharp to v0.28.3 (963a9fe6)
    • update dependency ioredis to v4.27.3 (075dab27)
    • update dependency nodebb-theme-vanilla to v12.0.8 (#9574) (10290f54)
    • update dependency mongodb to v3.6.8 (#9573) (64935787)
    • update dependency postcss to v8.3.0 (ad4afd59)
    • update dependency nodebb-theme-persona to v11.0.20 (403bcfac)
    • update dependency nodebb-plugin-composer-default to v6.5.29 (8d7e4420)
    • update dependency mongodb to v3.6.7 (f29e4e87)
    • update dependency textcomplete to ^0.18.0 (9b7653cc)
    • update socket.io packages to v4.1.2 (#9563) (ca7c77bc)
    • update dependency nodebb-plugin-dbsearch to v5.0.2 (#9562) (2d0564cb)
    • update dependency nodebb-theme-slick to v1.4.7 (bf4aa50c)
    • update dependency nodebb-plugin-composer-default to v6.5.28 (4164b322)
    • update socket.io packages to v4.1.1 (155a7fb6)
    • update socket.io packages to v4.1.0 (53335677)
    • update dependency sharp to v0.28.2 (4bc07a08)
    • update dependency postcss to v8.2.15 (7770c2a1)
    • update dependency nodebb-theme-persona to v11.0.19 (3145c7d5)
    • update dependency nodebb-plugin-mentions to v2.13.11 (7e2ea4df)
    • update dependency nodebb-plugin-markdown to v8.12.10 (2ac5a085)
    • update dependency nodebb-plugin-markdown to v8.12.9 (ee3634cc)
    • update socket.io packages to v4.0.2 (ff98f854)
    • update dependency postcss to v8.2.14 (22ec1ea5)
    • update dependency sitemap to v7 (0389dd96)
    • update dependency nodebb-widget-essentials to v5.0.4 (19f1cbfc)
    • update dependency nodebb-theme-persona to v11.0.18 (33d91fde)
    • update dependency connect-redis to v5.2.0 (c0d54a06)
    • update dependency postcss to v8.2.13 (831e5c26)
    • update dependency postcss to v8.2.12 (38454df9)
  • #9508: switch to ioredis (#9545) (dd81dd03)
Refactors
Reverts
Tests

v1.17.0 (2021-04-22)

Breaking Changes
  • add additional flag hooks [breaking] (00a68a95)
  • remove deprecated User.emailConfirm [breaking] (fb84c785)
  • remove deprecated plugin hook filter:privileges:isUserAllowedTo [breaking] (5a775e09)
  • remove deprecated plugin hook methods [breaking] (d41de481)
  • more removals of thumb specific backwards-compatibility [breaking] (cc0d562e)
  • remove deprecated filter:admin/header.build hook [breaking] (5f9f241e)
  • remove deprecated v2 style responses for thumbs upload route [breaking] (84dfdfe6)
  • remove deprecated getObject routes [breaking] (2ad0d0d0)
  • remove 'filters' and 'categories' from flag details API return [breaking] (8b72479f)
  • filtering logic of flags [breaking] (1603566b)
  • feature flag for auto-resolving a user's flags on ban [breaking] (6b1c97db)
  • allow interstitial callbacks to be async functions [breaking] (280285cd)
Chores
  • deps:
    • update dependency jsdom to v16.5.3 (0f249aa7)
    • update dependency eslint to v7.24.0 (60c0c16f)
    • update dependency husky to v6 (f155f326)
    • update commitlint monorepo to v12.1.1 (b4d01388)
    • update dependency jsdom to v16.5.2 (5e2e7a58)
    • update dependency eslint to v7.23.0 (d600cd94)
    • update dependency husky to v5.2.0 (77f551a4)
    • update dependency jsdom to v16.5.1 (28ed579b)
    • update dependency eslint to v7.22.0 (775c3b91)
    • update dependency mocha to v8.3.2 (3ce731d8)
    • update dependency jsdom to v16.5.0 (fd926d61)
    • update dependency mocha to v8.3.1 (651c629f)
    • update dependency husky to v5.1.3 (8791b44e)
    • update dependency husky to v5.1.2 (5f061b94)
    • update commitlint monorepo to v12 (42f7cd52)
    • update dependency eslint to v7.21.0 (59518437)
    • update dependency husky to v5.1.1 (2551295c)
    • update dependency husky to v5.1.0 (dc06fe22)
    • update dependency eslint to v7.20.0 (9ec0b2ed)
    • update dependency mocha to v8.3.0 (73f07958)
    • update dependency husky to v5 (d89ccf26)
    • update dependency lint-staged to v10.5.4 (030ecffa)
    • update dependency eslint to v7.19.0 (3696a199)
  • incrementing version number - v1.17.0-beta.5 (42c4f963)
  • fix indent (6406e527)
  • benchpress 2.4.1 (3403635c)
  • remove log (a1ee1a2a)
  • incrementing version number - v1.17.0-beta.4 (91992240)
  • bump composer-default (289bfc0b)
  • up themes (d14ba1f4)
  • remove node 10 (8d3ec234)
  • bump composer-default to 6.5.20 (33fbfdfe)
  • incrementing version number - v1.17.0-beta.3 (6e8b1bb9)
  • add multiparty dep (ef3ec96a)
  • incrementing version number - v1.17.0-beta.2 (0c1945dc)
  • incrementing version number - v1.17.0-beta.1 (31872aac)
  • bump composer (30954789)
  • bump deps (#9335) (b9fd2c87)
  • incrementing version number - v1.17.0-beta.0 (b61257ef)
  • incrementing version number - v1.16.3-beta.0 (477157cc)
  • extra console.log (1ae8dda8)
  • up composer (1c9acef6)
  • eslint max-len (cc9d6fd0)
  • eslint no-restricted-syntax (5c2f0f05)
  • eslint prefer-rest-params, prefer-spread (115d19e2)
  • eslint prefer-destructuring (23f212a4)
  • eslint object-curly-newline (8d1462ff)
  • eslint function-paren-newline (62869bae)
  • eslint no-var, vars-on-top (dab3b235)
  • eslint prefer-arrow-callback (b56d9e12)
  • eslint prefer-template (707b55b6)
  • eslint import/newline-after-import (4ee0f145)
  • eslint no-script-url (9f6a682c)
  • eslint no-bitwise (dad01e30)
  • eslint rules matching existing styles (58528d1a)
  • fallbacks (74be1a59)
  • deprecation notices for plugins using plugin old hook methods (3052256d)
  • add deprecation notice in comments for ajaxify.loadExtraScripts (8b09292e)
  • incrementing version number - v1.16.2 (ea7f8381)
  • update changelog for v1.16.2 (d3883d4b)
Documentation Changes
  • fixed typo (e7550673)
  • added comment re: #9305 (65c57c73)
  • update deprecation-removal version for plugin hook helper methods in 1.18.0 (15ba0abb)
New Features
  • lang strings (9b71b087)
  • rate limit file uploads (a9978fcf)
  • filter flags by username #8489 (#9451) (8faa6e45)
  • roll session identifier on login, as security best practice (697ed3bf)
  • allow different slugs (4494728c)
  • remove sort again (fd3bc605)
  • update hook (f65d2162)
  • add reverse of recent to getSortedTopics (05f22361)
  • allow exists methods to work with arrays and single id (285aa365)
  • pass all data to filter:category.get (d16b45fd)
  • add action:posts.loaded (dbb59228)
  • rescheduling (editing ST) (#9445) (aa0137b1)
  • upgrade sharp (#9442) (f7f46e7c)
  • optional urlMethod param for loginStrategies (9e1f72a4)
  • add hooks to language loading (#9426) (344575dd)
  • doggy.gif (b06f0ea2)
  • allow adding sorted-list items from forms outside of modal (a3e95e79)
  • scheduled topics (#9399) (077330b7)
  • show link if category is a link (a94d9651)
  • make info page full width (dd12c83f)
  • allow optional fields argument on db.getObject(s) (#9385) (4327a09d)
  • closes #9380, add category filtering and topic tools to tag page (668508cc)
  • allow sync function (#9379) (34b9aaed)
  • allow filter functions that return promises or the data directly (e6c52cf2)
  • add resolve flag to post tools (52082e12)
  • hide revert button in ACP > Privileges until privileges change (4cbd13fd)
  • bring back static hook timeout (46270f9f)
  • upgrade connect-mongo, closes https://github.com/NodeBB/NodeBB/pull/9367 (3c60ccfd)
  • pass interstital errors to individual partials as well as to registerComplete (f71cb0e4)
  • add filter:plugins.firehook (5eb3132d)
  • copy default favicon if it doesn't exist (754283d3)
  • add missing translation keys (17184bfa)
  • allow missing (or non-array) middlewares argument in route helper methods (4b545085)
  • pass modified params, only affects filter hooks (e74df539)
  • add back topic id input (696c4895)
  • expose username validation logic to user lib, new hook filter:username.check (bfd512b9)
  • add $.deserialize to client side (e5133a78)
  • allow for settings.save/settings.load on client side (66196d2c)
  • remove promise-pollyfil (902a88c2)
  • category privilege API routes (c1b3079d)
  • change uploadCroppedPicture to use updateProfile as well (0af9d26f)
  • use updateProfile for picture change (a598abcd)
  • allow payload to be passed to emailer test method (1155b0c4)
  • add uid of user who created flag to action:flags.create (069ac60f)
  • new client-side hook filter:api.options to allow plugins to modify api requests (7d391d47)
  • keep notifs for one month, load 50 notifications instead of 30 (02f08111)
  • also pass in uid to filter:email.prepare (86b0c57d)
  • new hook filter:email.prepare (27ea3dcb)
  • new hook static:email.send (bf90d158)
  • show time info for upgrade scripts (14a6c349)
  • add dashboard sub-pages to ACP menu (73dc64d9)
  • recent logins sessions table in dashbaord subpage (2f89b0d7)
  • topics dashboard details subpage (e1ed514b)
  • update user list in dashboard/users on graph update (c57c7703)
  • show list of recent users in dashboard/users (cc938224)
  • req.query parsing and dynamically loading data instead (6fdcae73)
  • new hooks for notifications get/getCount (079a13d4)
  • allow hook unregistration, and temporary page-based hooks (d0136074)
  • report login statistics from analytics data, instead of its own zset (16d3c457)
  • track login sessions for admin dashboard reporting (9a9f366d)
  • track successful logins in analytics (504fd107)
  • pass user picture object into change_picture_modal (c96fd3b1)
  • add logout to invalid session (beb14273)
  • category search test (a592ebd1)
  • pass post object to filter:post.tools (ed3d9dcb)
  • allow defining a list of system tags (0e07f3c9)
  • add category search test, #9307 (bbaaead0)
  • add tag filter to getSortedTopics (9ce6f8ad)
  • ability to re-order topic thumbnails (7223074f)
  • add close button to topic thumbnail modal (db027170)
  • #9304, add category/topic/username to post queue notification emails (0738dae8)
  • add failing test for list append/prepend with list (#9303) (8f0386d9)
  • link to post-queue from topic event (a4b4a556)
  • post-queue topic event (8fd78ce5)
  • add post-queue cache (3f35fd33)
  • newsletter opt-in/out in UCP, closes #21 (3c7cd9a6)
  • load user posts/topics via xhr on infinitescroll (35954734)
  • #9294, put new categories at top (4b2bf12f)
  • add invalid event name to error message (670cde78)
  • new notifications load/loaded hooks on client side (7edc8f45)
  • pass req.session into buildReqObject (a6fa351b)
  • new hook action:login.continue (4f976390)
  • banned-users group (53e0d4d2)
  • #9109, ability to delete a post's diffs (eb642f40)
  • add .delete() method to api module (501441b7)
  • doc add description (cc560ca3)
  • add doc for query param (ed11e171)
  • #9234, add pagination to /api/recent/posts/:term? (fffdc4e0)
  • allow sorted-lists on multiple pages (d5d24594)
  • #9232, add profile picture into exported zip (f6cd2862)
  • new hook filter:login.override, deprecate action:auth.overrideLogin (b820d234)
  • guard password fields in login/register against accidental caps lock (4bb3b032)
  • ability to search categories, #8813 (34c42c6f)
  • restore action:script.load, allow modifying loaded module via static:script.init (05be1c66)
  • async/await redis connection (fdfbc902)
  • async/await psql connection (33bf1b0e)
  • add group name to csv event (672959c1)
  • user: icon background selector in change picture modal (95502124)
  • remountable-routes:
    • allow category and account routes to be remounted (9021f071)
    • allow /admin and /post to be remountable (f01af62b)
  • topic-events:
    • topic events GET route in write API (dc84559d)
    • server-side tests for topic events (449c379d)
    • clear out topic events when a topic is purged (0d4a3775)
    • client-side handling on topic event log (8e93bf73)
    • handle newest_to_oldest sort in topic events, WIP (882e6a15)
    • generic css for timeline-event (2293a07a)
    • support for uids in topic event payloads (611d1f87)
    • work in progress topic events logic and client-side implementation (ab2e1ecb)
  • hooks:
    • update action:ajaxify.end to use new hooks module (1d775721)
    • client-side hooks module (01c9b184)
Bug Fixes
  • regress. rescheduling shouldn't add to sets that pinning removed… (#9477) (8b79c7f1)
  • logic is hard (4dd38446)
  • run in series (bc0ca61c)
  • wrong variable for cache (2e9efc0e)
  • accidentally committed this (13fa983e)
  • tests (eb240c90)
  • eslint (fa0c92a7)
  • use req.ip instead, since guests can upload as well (ea22cd30)
  • #9492, keep query params on redirect (36f119a9)
  • stripTags for editing sorted list items as well (93598982)
  • #9487, session data gathered during a session is lost upon login (1fee6a70)
  • failure on session reroll 🍣 test (f4c5050a)
  • registration interstitials not handling promise rejections properly (e845c34b)
  • stripHTMLTags for sorted list entries (75073c0e)
  • restore original behavior for up/downvoting when logged out (e50408b4)
  • let recent replies respect oldest/newest sort settings (60eed8d8)
  • #9483, fix events count display (6907837f)
  • escape flag reason (161081e9)
  • copy change on plugin activate to instruct admins to rebuild as well as restart (95d5359c)
  • updateCategoryTagsCount (2dc3283f)
  • #9473 (#9476) (036f935f)
  • #9474, load hooks on page load (1af34b43)
  • spec (d09cdc04)
  • #9466, don't call leaveRoom in maintenance mode (f32ea173)
  • exempt ST from being del/res via last main posts (#9468) (a0dd9080)
  • #9462, on install copy default favicon (784600d9)
  • #9463 (c5ae8a70)
  • #9465 (4041e786)
  • #9450 express session saved even if saveUninitialized explicitly passed in (9c52fd2e)
  • acp crash (cb53a64c)
  • #9447, include query params in previousUrl (536591f8)
  • thumb count not updated when uploading multiple thumbs at a time (1ad1787e)
  • change email button stays disabled if user submitted an invalid email (01f63e5d)
  • use app.logout() to clear session after deleting user (cfdef77b)
  • ./nodebb help with commander@7 (#9434) (2a03012e)
  • hide titleRaw for deleted topics as well (edf80cfb)
  • #9410, fix post queue (c5dda64f)
  • privilege tables (9052db93)
  • #9420, paginate after loading notifications (67b09cba)
  • hooks for alert animate, no more fadein/fadeout for reconnect alert (d9e20290)
  • #9414, use posts:view_deleted (e42b152f)
  • preserve order when changing parent (2ceda70a)
  • #9411 (3c4e93a3)
  • #9412 (cef58d1d)
  • #9406, update flag post tools (93c595d9)
  • typo in switch..case (d8ff9851)
  • #9404, show signatures if the target user has signature privilege (801570e4)
  • selector (ee69c1f8)
  • sorting when filtering by uid (75553b24)
  • allow local (and overridden) login strategies to pass Error objects back (98b72ca5)
  • category search not using uid (6aa60b63)
  • inf scroll with subfolder install (262e059f)
  • flicker on dashboard (2041b808)
  • #9398, crash on post flag (90d64fe1)
  • #9395, pass all data from client to Topics.reply (#9396) (a8f7b244)
  • lint (4ac38ab2)
  • #9394, fix guest handles (eb360351)
  • #9387, don't try to load undefined images (03e30634)
  • #9389, allow admins to add themselves to private groups (5c59354c)
  • #9386, add missing translation string (482641e3)
  • #9383, don't show deleted topic titles in inf scroll (e789fe8d)
  • #9378, crash on verifyToken if API Token settings not saved (null case error) (cc489708)
  • closes #9382, fix digest topic links (35700d16)
  • spec (1e1127bd)
  • regression from filter hook change (53f67ff3)
  • crash if unreadTopics is undefined (617f4730)
  • dont crash if login el doesnt exist (f45c0aab)
  • regression via c1b3079d93 (2a939aad)
  • change notification updateCount to use client-side hooks (84725130)
  • tests (39b0e0fb)
  • #9370, show correct teaser index if sorting is newest to oldest (9382fc6d)
  • don't copy if src doesn't exist (ebccc794)
  • #9362 best not to check file exists on every page load; copying favicon to uploads/system folder instead (771a8955)
  • #9362 (ad565495)
  • regression where login redirect for admin routes didn't go to local=1 (678e8f0f)
  • lint (f4f61b92)
  • if no in passed use "titles" to match header search (e787e6ea)
  • add back middleware.authenticateOrGuest (166d65a1)
  • request authentication called twice in account routes (e3b2c00d)
  • #9354, don't close quicksearch results if mouse is down on them (8a4c361e)
  • #9339, only log email errors once per digest, notification push (3aa26c4d)
  • winston.info (3f42d40c)
  • #9351 bad logic when inserting rows to privilege tables, also a missing tfoot 🦶 (c5e25788)
  • app.parseAndTranslate to always return promise (c2650169)
  • bug where fallback window trigger was not firing if there were no hook listeners attached (1e579428)
  • bad assignment (c8b78654)
  • #9348 incorrect redirect via connect-ensure-login (fbe9215b)
  • bug where loginSeconds setting was ignored for local login (f806befd)
  • remove old dep (b58bacaf)
  • notif pruning (2737f653)
  • notification prune test (ca817631)
  • user icon text overflow in some cases (2b7d0b5a)
  • use components for toggleNavbar instead (114e3a1e)
  • allow interstitial callbacks to be functional (no cb required) (9bf94ad5)
  • don't publish before pubClient is connected (cdf5d18f)
  • remove unused async (48f1e265)
  • in setupPageRoute helper, buildHeader after plugin hooks have fired (984c9dd9)
  • timeago missing on table update (655e2c67)
  • wrong qs param, allow string to be passed to util.getDaysArray (f8e1a74c)
  • wrong call to sortedSetAdd (dbe5f702)
  • session not persisting to database in some scenarios (020f0b83)
  • allow hidden inputs in user settings page (beaac0a1)
  • use root context if buildAvatar context is undefined (b4c0b32b)
  • use bootbox module (fa91525a)
  • #9307, use _.flatten (25c8f026)
  • awaiting res.render in send404 controller > > A plugin wanted to use response:rotuer.page to 404 a specific page on some condition. res.render returns early in send404 and so must be awaited otherwise multiple responses will be sent (2fef4627)
  • do not overwrite config.port from URL, if it's already set (34096b73)
  • switch back to getSortedSetRange (8686fbfa)
  • settings v3 (91734a64)
  • another topic thumb test fix (782bef5e)
  • thumbs.associate logic fix + tests (7ebb6d30)
  • missing awaits, possible test fix (7665adf7)
  • #9301, dont call sitemapstream if there are no entries in categories/pages/topics.xml (9a6cf3d9)
  • properly incase its the same path (807b0d43)
  • numThumbs count on associate (76bcc0c9)
  • missing cache deletion calls for post-queue cache (1490b32d)
  • use of removed URL to get post data (36e8d251)
  • init topic events from webserver.js (b81508c4)
  • check null topics (b753c69c)
  • guard against null topics (58cd797e)
  • tests, new categories go to top now (fc90f32e)
  • #9292, messageobj.content already parsed (c953b1b3)
  • clear category cache on copy parent (765db86d)
  • delete category cache key on category create (ed3e9ce2)
  • typo (c61cc37b)
  • wait for event.log to finish before killing process (a5fa212f)
  • tests, only generate csrf_token on 404 gets (b6493f89)
  • #9287, generate csrf_token on 404 (94f72d60)
  • do not blindly escape a notification's bodyLong (783786cf)
  • pass jquery object in to action:notifications.loaded hook (16610b2d)
  • #9275, (0cca6893)
  • don't use global bootbox obj (cfa0d423)
  • remove console.log (550cd995)
  • move service worker back to relative_path/service-worker.js (fca17cb7)
  • spec (ab0ef442)
  • markread selector (a4878a5b)
  • position when scrolling up (3090a2ae)
  • cache key collision (e40af441)
  • tests breakage due to 67e3fb6498 (5c21c33e)
  • register returnTo logic to match login route (67e3fb64)
  • tests (492cbc62)
  • posts.uploads.sync dissociates uploaded thumbs of the main pid (f79aeef8)
  • update grammar on unban text (68da1c55)
  • privileges page - tweak icon position and width, group name wrapping (c729adeb)
  • autofocus on search field in ACP > Manage > Plugins (4af9c2fc)
  • openapi test specs (cabec378)
  • include admins (7c9674de)
  • include admins, limit to category mods, correct privilege name (eaf9d2e4)
  • http 200 test for api routes (bd583963)
  • invalid API call when unfollowing a user (58655e9a)
  • example (833c73e8)
  • #9127, scope service worker to relative_path for the forum (#9239) (2bc74cff)
  • update docs (4c12e0aa)
  • broken test after sorted-lists logic change (d6f60f45)
  • clear all locks on restart (9834f72f)
  • action:admin.settingsLoaded to use new hooks lib (5131eb6b)
  • crash on firing action hook that had no listeners registered (b0f5d5a5)
  • bug where action:settings.sorted-list.loaded fired early (1a04ec64)
  • regression where filter:settings.set no longer received sorted-lists (a8be6fb8)
  • #9231, fix redis pubsub connection (5bc1f5b4)
  • don't translate message on every ajaxify (a29dd21d)
  • tests (05c53394)
  • improper override of req.body.username in login logic (74199220)
  • full settings hash not passed through to action:settings.set (473d5f4a)
  • #9223, don't overwrite stmp settings (a5bf9779)
  • multiple sorted-lists do not save to the correct set (4029ec37)
  • pass module name to static:script.init, +comments (f8bf9e99)
  • handle delete and update for categories:name zset (e8429f50)
  • tests remove old routes (faeb6373)
  • removed object routes (d41ce873)
  • removed methods (647d3ba8)
  • incorrect return for Thumbs.get() if thumbs were disabled (7b090c58)
  • script failure if client-side page script does not exist (7da1b43f)
  • bug where action:ajaxify.end was never called if there were no init scripts (faf59603)
  • update js concatenation logic to bundle scripts.rjs into minfile regardless of build environment (8ff07bc1)
  • #7125, allow list for page route, configurable via plugin hook (f975063b)
  • error on flag list if no flag filters were saved in session (942d9247)
  • mod cid filter accidentally saved in session (35c92d0c)
  • more tests for #9217 (ce7c74b2)
  • tests for #9217 (f2a5cd0b)
  • missing return for #9217 (27cae0d5)
  • #9217, render 400 error page on bad access to /register (b2b1450e)
  • redis check compat tests (78896fc6)
  • registration completion overriding returnTo if it was already set (a186ea0f)
  • add missing user delete event types (5c1b7429)
  • missing option for user-deleteAccount on ACP Events page (1c420602)
  • deps:
    • update dependency html-to-text to v7.1.1 (427e4f47)
    • update dependency redis to v3.1.2 (35a4d0be)
    • update dependency validator to v13.6.0 (e3d5d8d7)
    • update dependency nodebb-plugin-composer-default to v6.5.27 (1b846271)
    • update dependency redis to v3.1.1 (286a63e3)
    • update dependency nodebb-theme-persona to v11.0.17 (51d58ce6)
    • update dependency nodebb-theme-vanilla to v12.0.7 (16a1ba57)
    • update dependency postcss to v8.2.10 (31cec2de)
    • update dependency nodebb-plugin-mentions to v2.13.9 (fe087806)
    • update dependency mongodb to v3.6.6 (#9467) (4264b236)
    • update dependency sharp to v0.28.1 (34cbc9e2)
    • update dependency nodebb-theme-persona to v11.0.16 (a8330b6d)
    • update dependency nodebb-theme-vanilla to v12.0.6 (c02310b8)
    • update dependency nodebb-theme-persona to v11.0.15 (316c71d7)
    • update socket.io packages to v4.0.1 (e7776f8d)
    • update dependency redis to v3.1.0 (fd9ff334)
    • update dependency nodebb-plugin-composer-default to v6.5.26 (#9446) (8d9afbc6)
    • update dependency postcss to v8.2.9 (6f51c460)
    • update dependency nodebb-theme-persona to v11.0.14 (#9443) (fecfcd81)
    • update dependency nodebb-theme-persona to v11.0.13 (#9437) (e5cc6e40)
    • update dependency nodebb-theme-slick to v1.4.6 (dfdb0050)
    • update dependency nodebb-theme-persona to v11.0.11 (27de58f2)
    • update dependency benchpressjs to v2.4.3 (382f75bc)
    • update dependency nodebb-plugin-composer-default to v6.5.25 (24236718)
    • update dependency nodebb-theme-vanilla to v12.0.5 (89973d80)
    • update dependency nodebb-plugin-composer-default to v6.5.24 (dec34446)
    • update dependency nodebb-theme-persona to v11.0.10 (f78b4ba6)
    • update dependency nodebb-plugin-composer-default to v6.5.23 (#9422) (e35d0741)
    • update dependency nodebb-theme-persona to v11.0.8 (124cb9d9)
    • update dependency benchpressjs to v2.4.2 (1dddcb49)
    • update dependency nodebb-plugin-mentions to v2.13.8 (d511216c)
    • update dependency connect-mongo to v4.4.1 (29ff5bb9)
    • update dependency nodebb-theme-persona to v11.0.7 (c5734063)
    • update dependency nodebb-theme-vanilla to v12.0.4 (#9409) (870e6c2c)
    • update dependency nodebb-theme-slick to v1.4.5 (#9408) (24be8642)
    • update dependency nodebb-theme-persona to v11.0.6 (#9407) (b50739c1)
    • update dependency nodebb-plugin-spam-be-gone to v0.7.9 (#9405) (9359cae9)
    • update dependency nodebb-theme-persona to v11.0.5 (47b2b97f)
    • update dependency nodebb-plugin-composer-default to v6.5.21 (#9401) (2f70ac5a)
    • update dependency mongodb to v3.6.5 (fcd887fd)
    • update dependency nodebb-plugin-composer-default to v6.5.19 (#9391) (1631f159)
    • update dependency nodebb-plugin-composer-default to v6.5.17 (#9384) (8d401760)
    • update dependency nodebb-theme-persona to v11.0.3 (27facadb)
    • update dependency socket.io-redis to v6.1.0 (adaddde6)
    • update dependency nodebb-plugin-composer-default to v6.5.16 (a98e92b4)
    • update dependency nodebb-plugin-markdown to v8.12.7 (#9371) (56b0bfd5)
    • update dependency nodebb-theme-vanilla to v12.0.2 (#9369) (8923d34c)
    • update dependency nodebb-theme-persona to v11.0.2 (#9368) (fa71c483)
    • update socket.io packages to v4 (#9363) (13f3c504)
    • update dependency postcss to v8.2.8 (680cf5ef)
    • update dependency nodebb-theme-persona to v10.5.17 (2645bf55)
    • update dependency connect-mongo to v4.3.1 (59459074)
    • update dependency connect-mongo to v4.3.0 (f388086a)
    • update dependency autoprefixer to v10.2.5 (4f4cdacc)
    • update dependency postcss to v8.2.7 (72db3754)
    • update dependency nodebb-plugin-composer-default to v6.5.13 (017af7cb)
    • update dependency jquery to v3.6.0 (dd6082a0)
    • update dependency connect-mongo to v4.2.2 (ec0912cc)
    • update dependency nodebb-plugin-spam-be-gone to v0.7.8 (#9337) (536bae70)
    • update dependency nodebb-plugin-composer-default to v6.5.12 (2674de01)
    • update socket.io packages to v3.1.2 (510eb1f9)
    • update dependency nodebb-theme-persona to v10.5.16 (217d3afd)
    • update dependency nodebb-plugin-emoji-android to v2.0.5 (e8209341)
    • update dependency sharp to v0.27.2 (c5231f10)
    • update dependency nodebb-theme-vanilla to v11.4.5 (8596dcc4)
    • update dependency nodebb-theme-persona to v10.5.15 (753ab0a0)
    • update dependency nodebb-theme-persona to v10.5.14 (ed503b80)
    • update dependency nodebb-theme-persona to v10.5.12 (ddd8fa31)
    • update dependency benchpressjs to v2.4.1 (4ee3a8e8)
    • update dependency nodebb-theme-persona to v10.5.10 (7f8fd4b0)
    • update dependency nodebb-theme-persona to v10.5.9 (5dd748c6)
    • require xregexp 5.0.1 (86e911ba)
    • update dependency xregexp to v5 (513cd1c3)
    • update dependency nodebb-theme-persona to v10.5.8 (54b4dc1d)
    • update dependency postcss to v8.2.6 (4d92af5a)
    • update dependency nodebb-theme-persona to v10.5.7 (#9288) (c2459fd5)
    • update dependency nodebb-plugin-composer-default to v6.5.10 (b312725f)
    • update dependency nodebb-theme-persona to v10.5.6 (4599144f)
    • update dependency nodebb-widget-essentials to v5.0.3 (#9284) (eb9f058f)
    • update dependency nodebb-plugin-composer-default to v6.5.9 (6e14014b)
    • update dependency nodebb-plugin-composer-default to v6.5.8 (674a31d1)
    • update dependency nodebb-theme-slick to v1.4.3 (#9278) (d3923585)
    • update dependency nodebb-theme-vanilla to v11.4.4 (#9279) (1f28e8c3)
    • update dependency nodebb-theme-persona to v10.5.5 (#9277) (a7b46adc)
    • update dependency connect-redis to v5.1.0 (#9276) (83a0b6b8)
    • update dependency nodebb-theme-persona to v10.5.4 (#9270) (dc145284)
    • update dependency nodebb-theme-vanilla to v11.4.3 (#9272) (2fda6774)
    • update dependency nodebb-theme-slick to v1.4.2 (2b12905d)
    • update dependency nodebb-theme-lavender to v5.2.1 (fb2f1143)
    • update dependency nodebb-theme-slick to v1.4.1 (#9262) (2cfab367)
    • update socket.io packages to v3.1.1 (#9253) (2147d386)
    • update dependency postcss to v8.2.5 (1fa0d4f4)
    • update dependency nodebb-plugin-emoji-android to v2.0.1 (42e365d9)
    • update dependency nodebb-plugin-markdown to v8.12.6 (4fd6027b)
    • update dependency nodebb-plugin-mentions to v2.13.7 (8a2fe3d9)
    • update dependency nodebb-theme-vanilla to v11.4.2 (2326e9a6)
    • update dependency nodebb-theme-persona to v10.5.3 (9245ffaf)
    • update dependency nodebb-plugin-dbsearch to v4.2.0 (389690c3)
    • update dependency nodebb-plugin-composer-default to v6.5.7 (13e12c95)
    • update dependency json2csv to v5.0.6 (0aa8e03f)
    • bump theme deps for #9244 (44019e28)
    • update dependency mongodb to v3.6.4 (56e4e56b)
    • update dependency nodebb-theme-persona to v10.5.1 (04411449)
    • update dependency nodebb-theme-vanilla to v11.4.0 (#9238) (897d29ec)
    • update dependency nodebb-theme-slick to v1.4.0 (#9237) (8e2deab4)
    • update dependency nodebb-theme-persona to v10.5.0 (#9236) (4f842a79)
    • update dependency nodebb-theme-lavender to v5.2.0 (47fd1634)
    • update dependency nodebb-plugin-dbsearch to v4.1.3 (1e10ebfb)
    • update dependency nodebb-plugin-composer-default to v6.5.6 (0e2b329b)
    • update dependency autoprefixer to v10.2.4 (6c3b1fde)
    • update dependency nodebb-plugin-markdown to v8.12.5 (05901fcd)
    • update dependency nodebb-theme-persona to v10.4.1 (a9b3fb37)
    • update dependency sharp to v0.27.1 (a90773a6)
    • bump persona to get timeline style (ca14c0e2)
    • update dependency postcss to v8.2.4 (5b2f0be0)
    • update dependency autoprefixer to v10.2.3 (d99cb1cf)
    • update dependency postcss-clean to v1.2.0 (4232d97b)
  • #9315: api v3 post, put, del JSON (0d59fe3d)
  • remountable-routes:
    • more fixes to remountable routes (9d17f397)
    • bug with user routes remounting to itself (bc68e990)
  • #9252: pass site domain to nodemailer (#9254) (5e5d37c3)
  • topic-events:
    • topicEvents.init() test (aa8b84bb)
    • repeated invocations of Posts.addTopicEvents caused dupes to be added to DOM (df2fdd56)
  • hooks:
    • bug where hook firing would fail if there were no listeners (efff8e2a)
    • fallback handling for core invocations of hooks.fire (412d2858)
Other Changes
  • schema docs for new ACP dashboard subpage routes (0804d547)
Performance Improvements
  • increase batch size for notifs, run parallel (728ac5ff)
  • faster category tags upgrade script (0dad568c)
  • use setObjectBulk (95033ef7)
  • make upgrade script faster (a07509f7)
  • make upgrade script faster (0959b124)
  • cache base_url (cf4002bc)
  • single call to get digest topics, dont send duplicate topics (5ce28207)
  • single db call to add all uids (90d5c9da)
  • make digests a little bit faster (0185ea1b)
  • only load thumbs for topics that actually have thumbs (7eebcbdb)
Refactors
  • make debug handler async (1db8920b)
  • widgets (#9471) (397baf02)
  • style, no need to convert length to string (d00268c9)
  • deprecate action:script.load, use filter:script.load instead (d1685600)
  • remove uncessary check (f316c4d4)
  • remove async.each/reduce from hooks for better stack traces (d05d7091)
  • use hooks.fire (0d3979ef)
  • fix variable name (1982edfd)
  • account edit logic and template, closes #9364 (98bf4064)
  • automatically authenticate all requests setup through route helpers (#9357) (7da061f0)
  • async listen testSocket (0021c601)
  • remove startsWith/endsWith (48bc23c0)
  • app.parseAndTranslate to return promise if no callback passed (b5a6a314)
  • privileges, export modules directly (#9325) (293b7c26)
  • have Graph.init and Graph.update return promises (3fa2e3ce)
  • abstract out some client side dashboard code into modules, analytics subpages for users, topics, and logins (f561799f)
  • move picture change client-side logic to its own rjs module (28f6931e)
  • remove dupe code (5286f208)
  • thumbs.associate accepts both relative path and url in path arg (3e6640ef)
  • move post queue retrival code to posts.getQueuedPosts (36f20211)
  • call topic events init from within file itself (6074a0fb)
  • improvements (970bd06f)
  • update dom after diff deletion better (a2a7557c)
  • removed 3 lines (4447a64e)
  • use Map to track sorted lists in Settings.set() (65de2e76)
  • user: all plugins to change list of icon background colours (fbccf6e2)
  • remountable-routes:
    • rename src/routes/accounts.js to src/routes/user.js to better match the route prefix (1f28713f)
    • allow certain route prefixes to be mounted elsewhere (92758ec5)
  • topic-events:
    • expose addTopicEvents method in topic posts lib (9559fad8)
    • break out some logic in events.get into local modifyEvent method (cec3fc93)
    • fire topic event logging in topics/tools instead, pass uid into payload (425eca14)
  • hooks:
    • deprecate action:script.load client-side hook (8e5687a4)
    • better error handling (e7bd038d)
Reverts
Code Style Changes
  • eslint (b5ce8d25)
  • remountable-routes: abstract removable routes code to a separate local fn (16c1d6e9)
Tests

v1.16.2 (2021-01-21)

Breaking Changes
  • unescape header navigation originalRoute [breaking] (6cb5888c)
  • allow override of local fns in login controller, 400 instead of 500 for wrong login type [breaking] (1cf0032d)
Chores
  • deps:
    • update dependency husky to v4.3.8 (a6f5de86)
    • update dependency eslint to v7.18.0 (afbef95f)
    • update dependency husky to v4.3.7 (d3e041e2)
  • incrementing version number - v1.16.2-beta.0 (43ff8e41)
  • incrementing version number - v1.16.1 (e3cd7a23)
  • update changelog for v1.16.1 (b6d71710)
New Features
  • add filter:email.cancel to allow plugins to cancel sending emails (c2e23706)
  • grant plugins the ability to specify options to the SSO handler (ab11435e)
  • add unread-count badge if navigator contains /flags route (c07e1e16)
  • handle HTTP 429 as a response code (8bbb3208)
  • add write API route for checking login credentials (56f929ed)
  • #8813, faster category search dropdown (072a0e32)
  • api: schema definition for new credential checking route (0da28432)
Bug Fixes
Performance Improvements
Refactors
  • api:
  • change var to const (1374e0ee)
  • single remove call (25ab99b9)
  • flags lib to have a separate getFlagIdsWithFilters method (6a1311b4)
  • split out logic dedicated to calculating unread counts, to a separate local method (03a0e72f)
Code Style Changes
  • update codeclimate config to be less sensitive to duplicate code blocks (fdf03472)

v1.16.1 (2021-01-06)

Chores
  • increase test timeout (0d7dfeeb)
  • incrementing version number - v1.16.1-beta.0 (5fcf3ea6)
  • add deprecation notice to topic thumb tpl value (05d8b3c3)
  • minor reordering of lines (8e5a413e)
  • incrementing version number - v1.16.0 (6d01fd50)
  • update changelog for v1.16.0 (1437c62f)
  • deps:
    • update dependency eslint to v7.17.0 (18ae7cf7)
    • update dependency eslint to v7.16.0 (2610dfcf)
    • update actions/setup-node action to v2 (#9115) (55a55ea2)
  • api: add deprecation notices re: #9123 (cdff8d28)
New Features
  • #9173, show installed plugin versions in ./nodebb plugins (8c31afae)
  • added note that you can now upload videos (4d6ddf6d)
  • automatically attempt socket.io reconnection on ajaxify (e5edbc6f)
  • #9135, don't try to reconnect forever (c1ecfd1e)
  • add confirmation modal when assigning admin:admins-mods privilege (d90aa958)
  • allow dashes in privilege group names (5b8558e9)
  • allow multiple privileges to be defined for a given admin socket call (3aa5beb8)
  • rename admin middleware header hook (fcc1e24a)
  • explicitly add filter:admin/header.build hook (75b1bbd0)
  • fix more tests, add more routes, update api test suite (cb32e32a)
  • add registration/complete route, fix some other tests (14c51e3c)
  • add missing schemas for various ACP settings routes (9de35ec5)
  • add missing schema for category update and deletion (d6de9253)
  • add schema for api ping routes (d85181e0)
  • normalize paths before comparison (df8d62ba)
  • additional test to ensure any new routes added to express have a corresponding schema doc (dbe85630)
  • update html-to-text closes https://github.com/NodeBB/NodeBB/pull/8810 (a2152dd1)
  • api:
    • closes #9123 category and topic routes migrated to Write API (edb8da1e)
    • #9123, migrate rest of the getObject controllers to Write API (9ecfac9b)
    • #9123, migrate /api/post/pid/:pid to Write API (e267f295)
    • group ownership API route, switch client-side to use API route (32e36f7b)
    • add schema for groups update route (98550d61)
    • added schema for email unsubscribe token (4fc13377)
  • acp:
    • admin tags privilege (223f0a55)
    • admins-mods privilege (fb46a8d9)
    • added new admin privilege for groups management (da191341)
Bug Fixes
  • #9130, remove timestamp prefix from thumbnail names in API response (171017c3)
  • #9166 missing relative path in topic thumbs modal and topic list (b9ba44ed)
  • #9163, fix total connection count on ACP (1968bf50)
  • genericise .necro-post, bump persona to latest (041d45c3)
  • #9126, skip base64 and long values (33290850)
  • #9127, use assets path (3121215e)
  • inability for admins with setting privilege to save plugin settings (a555f024)
  • #9149, server-side handling of disableChatMessageEditing (895e3d93)
  • #9149, incorrect client-side disableChatMessageEditing value for admins/gmods (d27815a8)
  • #9151, dont use service worker for posts requests (20c1b684)
  • #9150, fix selector so it doesn't add img-responsive to profile pics (183cabe9)
  • tests (28740360)
  • dont show deleted posts in navigator (931105e6)
  • bug in api path existence test (501a7b77)
  • #9136, fix move topic/post timeout errors (2ef72a94)
  • bad assignment logic in middleware.renderHeader (34ccabe3)
  • #9113, wrong path separator used in thumbs.get (da4f9118)
  • email testing and settings change from ACP (2be396ff)
  • removing ability to specify deprecated topic 'thumb' on topic creation (713f029d)
  • #9129, event is fired on socket.io (b369dc88)
  • subfolder handling in tests (bbd97ccb)
  • .flat() not defined in v10, added debug router to exclusion list (6062039d)
  • all tests, wrap up work (f416dc17)
  • two more routes (9c2de86a)
  • api tests (b9a61d2d)
  • don't return deleted: 0 for ephemeral groups (600807fb)
  • send fewer items to client-side for ACP settings/email page (438fa5c8)
  • errors in write-api schema (c079051b)
  • broken tests from last round of fixes (990f1077)
  • bad error message for request body api test (a9629357)
  • modify backreference test to not check router.all() calls (7fc329de)
  • add missing token generation route to write api spec (eef052c1)
  • trigger action:posts.edited (b7b588f5)
  • deps:
    • update dependency autoprefixer to v10.2.0 (e445ae5a)
    • update socket.io packages to v3.0.5 (fd045c67)
    • update dependency nodebb-theme-persona to v10.3.16 (87e333b4)
    • update dependency benchpressjs to v2.4.0 (4524f825)
    • update dependency nodebb-theme-persona to v10.3.15 (189be9e0)
    • update dependency nodebb-widget-essentials to v5.0.2 (1dd1d3b0)
    • update dependency nodebb-widget-essentials to v5.0.1 (#9144) (f55dddb2)
    • update dependency nodebb-plugin-composer-default to v6.5.5 (6d980d26)
    • update dependency sharp to v0.27.0 (4919e596)
    • update dependency nodebb-theme-persona to v10.3.12 (37b35f7d)
    • update dependency nodebb-theme-persona to v10.3.11 (db4c6863)
  • tests: handle nested allOf blocks (77a5adb6)
  • api:
  • pwa: #9127 service-worker.js missing on subfolder installs (b8d4709e)
Refactors
  • openapi: update TopicObject component to reference TopicObjectSlim in its schema (fb3f3f72)
  • api:
    • deprecated groups update socket in favour of API lib (1cd2689c)
    • update group deletion calls to use write API (e640a41a)
  • schema backreference test to use map instead of reduce, properly check write-api routes (878ee067)
Tests
  • changed test a bit to see what is going on (5f038dff)

v1.16.0 (2020-12-17)

Breaking Changes
Chores
  • deps:
    • update dependency husky to v4.3.6 (2371b432)
    • bump persona to 10.3.9 (91899329)
    • bump composer to 6.5.1, re: #9067 (228cfa67)
    • update dependency husky to v4.3.5 (48a31763)
    • update dependency husky to v4.3.4 (cf5c482d)
    • update dependency eslint to v7.15.0 (f4c4d671)
    • update dependency lint-staged to v10.5.3 (3e6f7359)
  • appease codeclimate (9f62df15)
  • add comment for clarification (6037f5ee)
  • incrementing version number - v1.15.5 (57cd1343)
  • update changelog for v1.15.5 (b0299326)
  • i18n: fallbacks for new topic thumb keys (15f1a089)
New Features
  • add new client side hooks (a15ef53c)
  • remove max age since cache is cleared when thumbs change (ab96f526)
  • show alt text instead of images in teasers (#9107) (d28581eb)
  • migration of old topic thumbs to new format (74d73313)
  • allow plugins to override ACP relogin challenge (4c87f301)
  • add user.email.confirmByUid for sso plugins (80de572a)
  • add thumbs to category data return (24e754d1)
  • broken test for bad topic thumbs logic (ce8057f3)
  • clent-side modal for managing topic thumbs (a30c8ab5)
  • raise maximum thumb size to 512 (37c367d6)
  • associate topic thumbs with post uploads (for the mainPid) (1c5cdb51)
  • helper method to get thumbs by pid (cb7e4cda)
  • closes #9048, tests for topic thumbs routes, write API schema (59506833)
  • tests for topic thumbs (4152aa55)
  • server-side work for #9047 (ef7d6db9)
  • core work for #9042, thumb deletion now accepts uuids (b5d910f5)
  • more work on topic thumbs refactor (90497e3e)
  • expose uploaded thumbnails to client-side via API (1257aa98)
  • server-side routes for handling multiple topic thumbnails (7e9e08f7)
  • allow uploadThumb controller to be called in code (98cd9e35)
  • move upgrade script and make it shorter (60e7de0d)
  • allow clicks on navigator, clean dupe code (74274b60)
  • socket.io 3 changes (#8845) (1c45fa1b)
  • deps: update lavender to allow category sections (6d186be0)
Bug Fixes
  • deps:
    • update dependency nodebb-plugin-composer-default to v6.5.4 (#9120) (fff0cea6)
    • update dependency nodebb-theme-slick to v1.3.7 (#9112) (30688b1b)
    • update dependency nodebb-theme-lavender to v5.0.17 (#9111) (877f4673)
    • update dependency nodebb-theme-vanilla to v11.3.10 (ff18cdfa)
    • update dependency validator to v13.5.2 (#9094) (5d718348)
    • update dependency nodebb-theme-vanilla to v11.3.9 (#9091) (f37dbeed)
    • update dependency nodebb-plugin-composer-default to v6.5.3 (d036408d)
    • update dependency nodebb-plugin-composer-default to v6.5.2 (b07fb9ab)
    • bump composer-default to 6.5.0 (0db49121)
    • update dependency autoprefixer to v10.1.0 (024d1fef)
    • update dependency nodebb-theme-persona to v10.3.8 (#9084) (25f697b1)
    • update socket.io packages to v3.0.4 (62463430)
    • update dependency nodebb-theme-persona to v10.3.7 (c22cdb51)
    • update dependency nodebb-theme-persona to v10.3.6 (#9077) (5937fbaf)
    • update dependency nodebb-plugin-mentions to v2.13.6 (#9071) (a535350f)
    • update dependency nodebb-theme-slick to v1.3.6 (#9072) (19c438c6)
    • update dependency nodebb-widget-essentials to v5 (#9070) (d7f5efd9)
    • update dependency nodebb-plugin-markdown to v8.12.4 (8fb814ba)
    • update dependency nodebb-theme-persona to v10.3.5 (#9060) (0d082280)
    • update dependency nodebb-theme-persona to v10.3.4 (#9059) (84e4e480)
    • update dependency nodebb-theme-persona to v10.3.3 (3d7e2e1e)
    • update dependency nodebb-theme-persona to v10.3.2 (#9056) (f49ce4ad)
    • update dependency nodebb-theme-persona to v10.3.1 (#9054) (344caf5c)
    • update dependency nodebb-theme-lavender to v5.0.15 (#9053) (e7d72d8a)
    • update dependency nodebb-theme-persona to v10.3.0 (#9052) (dcd6fbaf)
  • api usage (feecd665)
  • #9117, lower query before search (4404e32e)
  • #9114, fix client side groups update for memberPostCids (3ed55799)
  • test (2dee3cbe)
  • don't check "select all" if there are no enabled checkboxes (3ba05755)
  • #9074, fix svg uploads (8f938eba)
  • #9100 topic thumbs in OG image tags (ab987408)
  • update version removal comments to 1.17 for some features (378a3a69)
  • postgres is slow™️ (05dd8597)
  • derp? (f8dff94a)
  • attempted fix for psql test in topic thumbs (9a4ea04a)
  • use getSortedSetRange instead of getSortedSetsMembers (edf67f34)
  • tests (bd5c4a5c)
  • bad topic thumbs logic on local thumb upload (e83baa97)
  • #9092, Topic thumbnails do not work with third-party uploaders (3e54b70c)
  • move topic thumb tests to root level, so they actually get run by mocha (dd448e2b)
  • tests for topic thumbs (9681557f)
  • iteration logic bug (2170c400)
  • spec (ae943974)
  • changes to thumb resizing logic (67cf5e83)
  • use file lib instead of direct fs module access (08736b18)
  • added back missing topic thumb tests that were removed in last commit (c043cfeb)
  • tests (5ec3b3d0)
  • hack uploader to handle a response from v3 write api (41379e27)
  • #9055, non-standard API response from addThumbs route (340387c1)
  • do not allow thumb deletion route to arbitrarily delete other files in uploads folder (c09c238e)
  • missing file added (ef10b6b7)
  • references to since-removed Topics.thumbs.resizeAndUpload (1f0c1cd2)
  • #9041, remove Topics.thumbs.resizeAndUpload() (43dc3e3e)
  • #9040 (708b1c33)
  • spec (1949d20a)
  • #9085, dont prevent admins from deleting other users (0f480be6)
  • show errors when user delete fails (ff2aa17b)
  • dont start logout timer if adminReloginDuration is disabled (dd9ed236)
  • #9045, no post usage info if '/files/' path received (efa4eca0)
  • reconnectin no longer fires on socket.io 3 (13d5a144)
  • default values, clamp postsPerPage/topicsPerPage to max (1f32d387)
  • #9081, load raw settings before merging (9da0ed40)
  • #9068 (86f0f82b)
  • remove old utils.slugify tests (10cfdd4c)
  • dont strip tags (792e9e70)
  • #9065, settings v2/v3 conflict (91c20cec)
  • #9063, missing handler for passwordless accounts in admin.checkPrivileges middleware (970ccb5a)
  • timeago in navigation (a389a31b)
  • navigation fixes (163d1a39)
  • cache some jquery objects (73d2f51d)
  • add ev.cancelable (63d08395)
  • #9046, pretranslate string (790f4e45)
  • redirect external with absolute urls (648f6215)
  • external path for subfolder installs (458bfc0f)
  • spec: broken link to status component (d31aae16)
Performance Improvements
  • don't load thumbs if disabled globally, cache thumb results (2d5a224b)
  • dont build identical langs (bb6cc49c)
Refactors
  • topic thumbs lib to topics.thumbs (4fc9da81)

v1.15.5 (2020-12-03)

Chores
New Features
  • add socket connect/disconnect action hooks (fcb10ebd)
  • allow modifiying browser title on ajaxify (698718f8)
Bug Fixes

v1.15.4 (2020-12-02)

Chores
New Features
  • #9005, use timestamp in profile/cover images (5f0f476b)
  • #8983, update pin tooltip in topic (954dc5b7)
  • option to allow auto-joining of groups (optionally skip the "request membership" step) (685f3c6a)
  • user notification settings for group.leave event (c1a7968d)
  • add defaults for composer help (0cba2691)
  • #8900, postQueue setting for category (1eb5fabd)
  • #8960, update view count after merge (14bb0a44)
  • use correct code (557f0f56)
  • #8989, convert widget nav to dropdown (4c650aee)
  • add handler for 501 api response (007a3258)
  • add translation key for pin icon label with expiry (12b3aa0d)
  • add pinExpiry and pinExpiryISO to topic data (ad8e7700)
  • add cancel button to pin expiration modal (e1432caf)
Bug Fixes
Refactors
  • remove old hack (73746bb4)
  • add TopicObjectSlim common schema (22715d54)
  • pin/lock threadTools to use topicCommand, rewrote topicCommand to match categoryCommand signature (15c6f32c)

v1.15.3 (2020-11-26)

Chores
  • bump persona (720170a9)
  • remove console.log (6a819944)
  • move topic route schema up two levels as slug and index are optional (ae402e21)
  • move category route schema up two levels as slug and index are optional (b3b501d7)
  • up persona (0ffc091b)
  • up persona (2f2f0ab7)
  • up persona (5c9ff18e)
  • add missing plugin hook deprecation warning (98a05e4d)
  • pin autoprefixer to latest (46eb7701)
  • incrementing version number - v1.15.3-beta.0 (28fa03bd)
  • up persona (81984285)
  • up slick (5f2fe883)
  • incrementing version number - v1.15.2 (5867a5b9)
  • update changelog for v1.15.2 (37965d45)
  • spec: replace ugly hack with another hack for optional properties (45a4f136)
  • deps:
    • update dependency lint-staged to v10.5.2 (db205e2e)
    • update dependency eslint to v7.14.0 (80404216)
New Features
Bug Fixes
Refactors
  • remove unused require (db1c140f)
  • move API banned response handler to separate internal method (906d7d73)
  • move plugin hook methods to plugin.hooks.* (6e2da996)
  • remove breaking change in pin expiry (ef3df47a)
  • use categoryCommand local method for pin/lock in category tools (#8917) (00aee84b)

v1.15.2 (2020-11-18)

Chores
  • incrementing version number - v1.15.2-beta.1 (20c05e80)
  • remove debug log (0a0b4661)
  • incrementing version number - v1.15.2-beta.0 (996174a1)
  • deps: update dependency smtp-server to v3.8.0 (5f5f0edb)
Documentation Changes
  • openapi schema for user/group exist check, session deletion (bcccb331)
New Features
Bug Fixes
  • #6407, fix feeds (fa4177c3)
  • navigation highlight (62b62821)
  • benchpress warnings (a87ccccc)
  • benchpress warnings (dfdc0c42)
  • internal helper method hasGlobalPrivilege, DRY (e1d7c4d8)
  • spec (2f4653a3)
  • #8884, remove header/footer cache (e4d2764d)
  • check tid in event handlers client side (9dac9630)
  • #8883 (f14e42d8)
  • #8872 missing admin/menu language key+fallback (fdab76f8)
  • run every hour, dont show message if average_time is 0 (51b7eca1)
  • add back test timeout for exports (b3e00489)
  • pass length to messaging checkContent hook (dc9668e4)
  • deps:
    • update dependency nodebb-theme-persona to v10.2.74 (#8905) (5f6137f0)
    • update dependency nodebb-theme-persona to v10.2.73 (#8904) (c2019b7b)
    • update dependency nodebb-plugin-composer-default to v6.4.7 (#8902) (b7b1f203)
    • update dependency nodebb-theme-persona to v10.2.72 (#8903) (bee8cfe4)
    • update dependency nodebb-theme-vanilla to v11.3.3 (422aa7f0)
    • update dependency nodebb-theme-persona to v10.2.71 (3b6e71d5)
    • update dependency nodebb-theme-persona to v10.2.70 (d6dd1cb6)
    • update dependency nodebb-theme-slick to v1.3.2 (2ce1fcd3)
    • update dependency nodebb-theme-vanilla to v11.3.2 (9f2d0d42)
    • update dependency nodebb-theme-persona to v10.2.69 (15810643)
    • update dependency sharp to v0.26.3 (84d54577)
    • update dependency nodebb-plugin-mentions to v2.13.5 (dde9f189)
    • update dependency json2csv to v5.0.5 (b63b7ae5)
    • update dependency benchpressjs to v2.2.2 (d1e804aa)
    • update dependency nodebb-theme-vanilla to v11.3.1 (#8878) (85aaeded)
    • update dependency nodebb-theme-slick to v1.3.1 (bbfb276a)
    • update dependency nodebb-theme-persona to v10.2.68 (ec70329a)
    • update dependency nodebb-plugin-spam-be-gone to v0.7.6 (#8877) (45922fae)
    • update dependency nodebb-plugin-spam-be-gone to v0.7.5 (#8876) (48e82520)
    • update dependency nodebb-plugin-spam-be-gone to v0.7.4 (#8874) (eab27f23)
Refactors
  • client-side handlers for user invitations (d83eb7f8)
  • async/await controllers/index.js (5598130a)
  • less dupe code (8fbe8324)
Tests
  • new api test to ensure each path's parameters are defined in context (97842c43)
  • updated test name to be more specific (319cfeaa)

v1.15.1 (2020-11-11)

Chores
  • incrementing version number - v1.15.1-beta.0 (e033da8a)
  • fallback l10n for admin-settings-api (8368c25b)
  • deps:
    • update dependency eslint to v7.13.0 (bcbc0854)
    • update dependency eslint-config-airbnb-base to v14.2.1 (d227fe9f)
    • update commitlint monorepo to v11 (90bcfa6d)
New Features
Bug Fixes
Refactors
  • move session revocation route to write api (f300c933)
  • change Benchpress.parse to .render (#8856) (e128264b)

v1.15.0 (2020-11-04)

Breaking Changes
  • remove toolsVisible in post tools' menu [breaking] (7e7366be)
Chores
  • update changelog for v1.15.0-rc.5 (69f4d5ac)
  • incrementing version number - v1.15.0-rc.5 (4bd2788b)
  • add info log into tests (b6d86878)
  • update renovate config to automatically merge non-major version bumps #yolo (1c8b8ce1)
  • update changelog for v1.15.0-rc.4 (16882941)
  • incrementing version number - v1.15.0-rc.4 (57b49320)
  • update changelog for v1.15.0-rc.3 (2738041b)
  • incrementing version number - v1.15.0-rc.3 (6de7760a)
  • bump persona (e0b67817)
  • update changelog for v1.15.0-rc.2 (c3a7ab54)
  • incrementing version number - v1.15.0-rc.2 (7c084134)
  • update changelog for v1.15.0-rc.1 (4f49b3da)
  • incrementing version number - v1.15.0-rc.1 (943424b5)
  • update changelog for v1.15.0-rc.0 (aab5f018)
  • incrementing version number - v1.15.0-rc.0 (8d48455b)
  • update changelog for v1.15.0-beta.30 (39648722)
  • incrementing version number - v1.15.0-beta.30 (2dd3c962)
  • some optimizations for codeclimate (4a63c20a)
  • update changelog for v1.15.0-beta.29 (63696c40)
  • incrementing version number - v1.15.0-beta.29 (fca176d2)
  • refactor src/emailer.js (75459517)
  • update changelog for v1.15.0-beta.28 (fd975a66)
  • incrementing version number - v1.15.0-beta.28 (57f83162)
  • update changelog for v1.15.0-beta.27 (70673824)
  • incrementing version number - v1.15.0-beta.27 (78fad240)
  • lint notifications.js (4fc84e9f)
  • update changelog for v1.15.0-beta.26 (5e01d288)
  • incrementing version number - v1.15.0-beta.26 (62c44095)
  • up persona (ff8a833a)
  • up persona (4a0f54ae)
  • update changelog for v1.15.0-beta.25 (240a04b4)
  • incrementing version number - v1.15.0-beta.25 (1124d4ee)
  • up persona (032e6001)
  • update changelog for v1.15.0-beta.24 (72ab5ba1)
  • incrementing version number - v1.15.0-beta.24 (23ba071d)
  • up persona (5407bf48)
  • up persona (4c2eab4b)
  • up persona (91133b0f)
  • up persona (bcac0805)
  • up persona (9dc4db1f)
  • up persona (ba70a1bf)
  • update changelog for v1.15.0-beta.23 (e6ea208c)
  • incrementing version number - v1.15.0-beta.23 (61a04eb9)
  • update changelog for v1.15.0-beta.22 (59ee74c2)
  • incrementing version number - v1.15.0-beta.22 (9c9329ee)
  • update changelog for v1.15.0-beta.21 (8089542e)
  • incrementing version number - v1.15.0-beta.21 (966cdc13)
  • update changelog for v1.15.0-beta.20 (1650f303)
  • incrementing version number - v1.15.0-beta.20 (c8e57ec1)
  • update changelog for v1.15.0-beta.19 (9cde5105)
  • incrementing version number - v1.15.0-beta.19 (2eb7c284)
  • update changelog for v1.15.0-beta.18 (b2ca9686)
  • incrementing version number - v1.15.0-beta.18 (e096791e)
  • update changelog for v1.15.0-beta.17 (d6178158)
  • incrementing version number - v1.15.0-beta.17 (f1c28092)
  • update changelog for v1.15.0-beta.16 (e08297ff)
  • incrementing version number - v1.15.0-beta.16 (6043c9cb)
  • update changelog for v1.15.0-beta.15 (f878b92c)
  • incrementing version number - v1.15.0-beta.15 (10b94f9b)
  • update changelog for v1.15.0-beta.14 (5e60d092)
  • incrementing version number - v1.15.0-beta.14 (6ca4b86f)
  • update commitlint config (61a8c6f0)
  • update changelog for v1.15.0-beta.13 (ca8d492b)
  • incrementing version number - v1.15.0-beta.13 (bdd71c51)
  • update changelog for v1.15.0-beta.12 (0a242605)
  • incrementing version number - v1.15.0-beta.12 (b852c9b7)
  • update changelog for v1.15.0-beta.11 (f07ba866)
  • incrementing version number - v1.15.0-beta.11 (c1ce7391)
  • update changelog for v1.15.0-beta.10 (9c34eced)
  • incrementing version number - v1.15.0-beta.10 (f252d4d7)
  • update changelog for v1.15.0-beta.9 (affc7927)
  • incrementing version number - v1.15.0-beta.9 (8dc513da)
  • update changelog for v1.15.0-beta.8 (3b960c3b)
  • incrementing version number - v1.15.0-beta.8 (34bb869c)
  • update changelog for v1.15.0-beta.7 (e449ff9a)
  • incrementing version number - v1.15.0-beta.7 (fd917b8e)
  • update changelog for v1.15.0-beta.6 (a7f03b64)
  • incrementing version number - v1.15.0-beta.6 (a9019cbe)
  • update changelog for v1.15.0-beta.5 (0e90064e)
  • incrementing version number - v1.15.0-beta.5 (81e4c4df)
  • update changelog for v1.15.0-beta.4 (6c4aed8c)
  • incrementing version number - v1.15.0-beta.4 (f2726a6d)
  • update changelog for v1.15.0-beta.3 (11e2ccab)
  • incrementing version number - v1.15.0-beta.3 (39178c2d)
  • update changelog for v1.15.0-beta.2 (d8a9f1c3)
  • incrementing version number - v1.15.0-beta.2 (59b50d0a)
  • update changelog for v1.15.0-beta.1 (aeca19d5)
  • incrementing version number - v1.15.0-beta.1 (4fa57fbb)
  • incrementing version number - v1.15.0-beta.0 (bff80983)
  • incrementing version number - v1.14.3-beta.16 (d9a05035)
  • incrementing version number - v1.14.3-beta.15 (e2a253f2)
  • incrementing version number - v1.14.3-beta.14 (9500871e)
  • incrementing version number - v1.14.3-beta.13 (b5a2e4b6)
  • incrementing version number - v1.14.3-beta.12 (f4c986a7)
  • incrementing version number - v1.14.3-beta.11 (8618c32a)
  • incrementing version number - v1.14.3-beta.10 (fa341714)
  • incrementing version number - v1.14.3-beta.9 (9945c409)
  • incrementing version number - v1.14.3-beta.8 (b5dcce9c)
  • incrementing version number - v1.14.3-beta.7 (2531c44c)
  • incrementing version number - v1.14.3-beta.6 (97088f68)
  • incrementing version number - v1.14.3-beta.5 (a33a8a5a)
  • incrementing version number - v1.14.3-beta.4 (55b3e376)
  • incrementing version number - v1.14.3-beta.3 (5a5abf3c)
  • incrementing version number - v1.14.3-beta.2 (bbab183f)
  • incrementing version number - v1.14.3-beta.1 (2c06f6ac)
  • incrementing version number - v1.14.3-beta.0 (3f87d5f9)
  • update changelog for v1.14.2 (cd94c24a)
  • incrementing version number - v1.14.2 (1e4d683f)
  • update changelog for v1.14.2 (488e69fd)
  • deps:
  • writeapi: cleanup (f6782471)
New Features
  • add back error handling for a number of api calls (1afd2150)
  • #8823, remove hardcoded write concern (a338f527)
  • #8817, add login clientside hooks (715775a7)
  • use github actions for ci (#8811) (eddf4a4f)
  • allow mods/admins to see deleted posts on user profile (6e85920c)
  • rearrange buttons on manage/users (27016d22)
  • #8801, disable express compression by default (6ac73ccb)
  • allow passing subset of user settings on update route (ec03af7a)
  • wip, write api tests framework (b156b8b5)
  • add filter:category.getFields (88a07e69)
  • move postercount to topic hash (0db0231c)
  • add free and total mem usage to info (a7b6d0df)
  • new filter filter:teasers.configureStripTags (177a9610)
  • send 'Vary' header when ACAO header set (d68ffea8)
  • add filter.topics.getPostReplies (7a019494)
  • topic reply to use api lib (also + missing file) (21974a77)
  • send 401 for invalid-uid (ede9435f)
  • async/await admin/search (c913900e)
  • ignore test folder (2927509a)
  • send back 403 on no-privileges error (14f9d8b0)
  • refactor groups.delete (8ae1f81c)
  • move groups.join to api (d69e503d)
  • allow plugins to define api routes (9dd3cc04)
  • require https if nodebb is configured with https url (a4ba2389)
  • add nyc config (3326d80c)
  • change user search to use filters array (a2edb86d)
  • add filter (959314c9)
  • require csrf token if not using bearer token (1e07886f)
  • #8662, verified/unverified user groups (682e926c)
  • more fixes (700e1e43)
  • more work (40a05b70)
  • wip admin/users (b038ac07)
  • set unread false for guests (7beaf490)
  • add stack to deprecate message (01265d08)
  • add checkbox tests (d76229c0)
  • add test for serialize/deserialize form (e92d4719)
  • disable write api tests until fixed (ae5fb103)
  • #8734, add slugify module, deprecate utils.slugify (bddfcb58)
  • #8734, move bootstrap-tagsinput to package.json (f16c8268)
  • #8734, move deserialize/serialize to package.json (eab7489e)
  • #5964, #8734 remove colorpicker (948f2614)
  • #8734 remove unused files (c721625a)
  • #8734, move sortable to package.json (cc705e5e)
  • #8734, move bootbox to package.json (300a8755)
  • load jquery-form before using (3b231360)
  • #8734, jquery-ui, jquery-form, timeago (#8748) (fda2aedf)
  • remove unused textcomplete file (59311a63)
  • #8734, remove semver.browser (ae3a231f)
  • #8734, move slideout to package.json (2c1897b3)
  • #8734, move tinycon to package.json (9c157de0)
  • #8734, move visibilityjs to package.json (43589a74)
  • #8734, move nprogress to package.json (a46cbb62)
  • #8734 move r.js to package.json (aa08f882)
  • revoke user sessions above threshold (#8731) (b3ed26ac)
  • filter:settings.get plugin hook (c7d15dfa)
  • topic delete/restore/purge/(un)pin/(un)lock (da25ce4d)
  • add new api page to ACP menu (5fc7e7bf)
  • management of API tokens via ACP (49652e6f)
  • added DELETE /api/v1/categories/:cid route (3072de48)
  • added PUT /api/v1/categories/:cid route (e942ad81)
  • added POST /api/v1/categories route (dc666fd8)
  • added PUT/DELETE /api/v1/users/:uid/ban routes (a5af2dc8)
  • added POST and DELETE /api/v1/users/:uid/follow routes (b5bbcbae)
  • added PUT /api/v1/users/:uid/password route (7aed174e)
  • added DELETE /api/v1/users/:uid and DELETE /api/v1/users (a1ddc210)
  • added openapi.yaml file for BEST documentation (91b79f17)
  • added checkRequired middleware for API calls (7b6d43bc)
  • migrating write-api skeleton into core (ec5c48b1)
  • remove post/header selector (1542a5d7)
  • category filter on post queue (#8710) (5d9a8681)
  • #6594, add top/popular sections to digest email (#8709) (e60357d2)
  • dedicated sorting buttons for plugin ordering in ACP (1761e13d)
  • #8233, search sub categories (54737d30)
  • move service-worker.js into its own file (f4d76f1e)
  • analytics:maxCache setting in ACP (14ba1a6d)
  • #8695, allow sort for guests (ea0f3262)
  • up recommended size to 512x512 + ACP labels for PWA (9c5b6907)
  • upload maskable icon for PWA (6478b32d)
  • show top 5 trending plugins in new tab in Extend > Plugins (b12e8d63)
  • register service worker, #8126 (aa268d5e)
  • add theme-color meta tag for browser address bar (5172d731)
  • basic service worker, minimum requirement for for a2hs; see #8126 (f69697b3)
  • option in ACP to configure notification/email delay for chats (5b427a0c)
  • allow autocomplete to pass optional params to user.search (611f3c61)
  • upon plugin installation via ACP, check against nbbpm first (5ddf7022)
  • up benchpress (8e88ccd6)
  • add row highlighting for popular and unread (2cd5f959)
  • return to previous page and/or category after marking topic unread (48a8ec4a)
  • add missing lang key (bd9b6c99)
  • add number of posters to topic (83d4e7ef)
  • hightlight matches in quick search (f2f3ba49)
  • add loading indicator (d38c8722)
  • allow plugins to override tags and tag counts (81595095)
  • edit test (ccddbb15)
  • add x-posts/x-votes keys (23de5613)
  • allow adding nested replies to a target component (ddc0ac37)
  • hotkey "/" to open ACP search (43571bac)
  • ctr-s for save on privileges page too (763cec31)
  • ctrl-s now saves on settingsv1/v2 forms (80931423)
  • single href (6669b23d)
  • allow passing in container to threadTools (7148be2f)
  • expose calculateTopicPostCount and getChildrenTree (43742437)
  • allow custom req.query.filter on /unread /recent (de824007)
  • fullname search (#8641) (4be693f2)
  • sorted set lex test (9389749b)
  • add topicIndex to category page (c1c617b3)
  • up lavender/slick (34eb1bd2)
  • switch to using topic/select component for merge (f6d56466)
  • undo for posts move (762e9fe8)
  • #8626, new move posts modal (5a40d26b)
  • refactor app.js (5002e0f6)
  • remove global RELATIVE_PATH (19c44861)
  • remove app.template (3cd3b7a1)
  • remove global window.templates (630bac2a)
  • remove app.isConnected, use socket.connected (fddeb5c0)
  • use const/let (6fc31df0)
  • allow nbb to work with cloudflare rocket loader 🚀 (4d665955)
  • move code (53a5f151)
  • #8602, dont send emails to unconfirmed addresses (b6917b9d)
  • add partials/footer/js.tpl (94da9fe5)
  • add missing name to profile image upload (54b49725)
  • add action:user.removeCoverPicture (b0a75922)
  • add user data to action:user.removeUploadedPicture (962446a5)
  • add userData to action:user.delete (9542ef12)
  • force upgrade scripts for test (1b7ba2c8)
  • replace relative urls to absolute before sending email notifs (1e5981c0)
  • add client side action:flag.create (09de364e)
  • additional sorting options for flags (0c203517)
  • new filter hook prior to post queue addition (8cc36de2)
  • add replies to getPostSummaryByPids (a9dfc9a7)
  • add reply count to getPostSummaryByPids (de0f4aad)
  • theme work for #8580, closes #8580 (6e805c1b)
  • allow undo of topic move (abb5e81d)
  • added alert.timeoutfn (cd8e7963)
  • sort dependencies alphabetically (a4dbbc37)
  • up persona (af9f328c)
  • banning a user will resolve their post flags (354e6ccc)
  • theme changes for #8571 (5415c01c)
  • logic for bulk actions in flags list, #8571 (a3a22793)
  • expose global/admin privileges to all routes (4737f937)
  • additional tests for #8569 (e047b72c)
  • flags list sorting, closes #8569 (346db0d8)
  • up theme (bd557af2)
  • allow adding multiple users to group (35a538ec)
  • add filter:group.getOwnersAndMembers (f1e82b64)
  • pass uid into filter:flags.list (9c70b662)
  • added security policy for github (45c8de12)
  • up deps (b97b51a8)
  • one more test (a333cb6c)
  • tests for password change (ecda4ad8)
  • limit privileges column to superadmins only (0903eb4b)
  • use nodebb-scoped bootswatch (12edd18b)
  • use assetBaseUrl instead of hardcoding (6e918858)
  • load timeago strings client-side (558a2d73)
  • +assetBaseUrl, -l10BaseUrl, -requireBaseUrl (9adaccd0)
  • #8550, add upgrade script test (b61a4da5)
  • #8493, plugin helper for standardised link/button injection (0bbb813e)
  • show event/params on error (d6baf5c2)
  • introduce overridable l10nBaseUrl config value (def16f9e)
  • allow multiple empty lines (58933c4c)
  • remove administrator property from public routes (dfabd0a3)
  • focus username when modal is shown (4216c277)
  • add helmet middlewares (774e5d04)
  • more discrete commit-on-save instead of commit-on-change w/ confirm modals (#8541) (a716a552)
  • add ability to search groups in group details page (e7a502e0)
  • use category selector in category page (fb7bb8d4)
  • css fixes (560f3eb1)
  • add privileges shortcut to groups list (91411cc4)
  • allow passing groupName to user.search (f89ec205)
  • #8531, closes #8531 (292d4904)
  • allow direct link to flag from post tools, #8531 (c705e08a)
  • allow changing requirejs base url (c4829fd8)
  • ability to clear cache from acp (bbc7737e)
  • reduce amount of data loaded on acp admin page (8d8117ff)
  • remove require fallback for plugins (303bffdb)
  • remove /assets/stylesheet.css (762b0be4)
  • add node 14 (6250a2e2)
  • make category tools in acp a dropdown (24535a62)
  • series upload (37e56d94)
  • resolve flag on delete/purge/ban/delete account (8bd63f61)
  • 8502, don't change topics sitemaps on every reply (e045436c)
  • allow building custom languages during dev (0a9ea91f)
  • add link-plugins.sh (cc86f079)
  • remove deprecated utils.walk (609e37a6)
  • consolidation of flags to reduce flagspam, #8510 (55b0e902)
  • change invalid language codes to default lang (3761f05c)
  • add npx, fixes ghfw (a294e1cd)
  • remove topics.async.getTopicData usage (ce6b20c4)
  • remove deprecated checkGlobalPrivacySettings (0cea7136)
  • remove deprecated isAdmin method (a0da2ba7)
  • remove file.isFileTypeAllowed (2cdb935f)
  • remove deprecated hooks (4eae927d)
  • update readme (9869064e)
  • up node version to 10 (b39e0140)
  • highlight privs row if group is added / navigating from group page (10e4ae62)
  • prevent navigation away from groups page if changes are unsaved (53f6139b)
  • quick access dropdown on groups page to access privileges page (2c83278f)
  • #8524, allow editing category of queued topic (844f2b4e)
  • remove js-enabled (ff3c3435)
  • remove js-enabled.css (ec057835)
  • dont load all subscribers at once (2a5f8ab2)
  • short more info (23a9a334)
  • #8521, allow editing title before posting from queue (2485a550)
  • show language when key isn't found (764969ab)
  • allow searching categories in ACP (1e7397b1)
  • #8509, don't scroll chat to bottom if user scrolled up (320008cd)
  • added quick link to edit privileges on the category edit page (06143ca7)
  • hide some filters behind 'more filters' button (9fb9185f)
  • collapsible daily flags graph (d52d7bdb)
  • acp: autocomplete user search for welcome notifications (d40779a4)
  • writeapi:
  • openapi:
    • schema validation for write api definitions file (87e3f26f)
    • refactor into indiv. files to match API & tpl routing (ffbf2d6d)
    • refactor into indiv. files to match API & tpl routing (84f5e4cf)
Bug Fixes
  • deps:
    • update dependency nodebb-plugin-composer-default to v6.4.6 (b44c7e96)
    • update dependency nodebb-plugin-spam-be-gone to v0.7.3 (f06d4878)
    • update dependency nodebb-theme-vanilla to v11.3.0 (0d80190f)
    • update dependency textcomplete to ^0.18.0 (df5d66e5)
    • update dependency nodebb-theme-persona to v10.2.65 (0c7d5860)
    • update dependency jsesc to v3.0.2 (#8802) (c4431294)
    • update dependency nodebb-plugin-composer-default to v6.4.5 (7d0d0005)
    • update dependency nodebb-theme-persona to v10.2.63 (b3ca7de0)
    • update dependency nodebb-theme-persona to v10.2.62 (#8798) (12c590ad)
    • update dependency nodebb-plugin-mentions to v2.13.1 (#8790) (8353857b)
    • update dependency nodebb-theme-persona to v10.2.61 (#8794) (9de8497d)
    • update dependency benchpressjs to v2.0.8 (#8767) (3b88545b)
    • update dependency sharp to v0.26.2 (#8765) (42aed15b)
    • update dependency nodebb-rewards-essentials to v0.1.4 (#8764) (25c447df)
    • update dependency nodebb-theme-persona to v10.2.60 (dcf72354)
    • update dependency nodebb-plugin-mentions to v2.13.0 (#8758) (411fa8bc)
    • update dependency nodebb-theme-persona to v10.2.59 (#8755) (cd34bfb1)
    • update dependency nodebb-theme-persona to v10.2.58 (#8754) (a77ba71e)
    • update dependency nodebb-plugin-composer-default to v6.4.4 (#8752) (0399ffaf)
    • update dependency benchpressjs to v2.0.7 (#8733) (f8e2324c)
    • update dependency nodebb-plugin-composer-default to v6.4.3 (#8750) (666064bf)
    • update dependency nodebb-theme-persona to v10.2.57 (#8749) (1c94220b)
    • update dependency nodebb-theme-persona to v10.2.56 (414fe19c)
    • update dependency nodebb-theme-slick to v1.2.39 (1bc99411)
    • bump vanilla/persona (944a7e0e)
    • update dependency nodebb-theme-lavender to v5.0.14 (#8739) (43df4b8e)
    • update dependency socket.io-client to v2.3.1 (#8700) (ba62ebb6)
    • update dependency nodebb-theme-slick to v1.2.37 (#8741) (45aceb26)
    • update dependency nodebb-theme-vanilla to v11.2.21 (#8740) (0c7af502)
    • update dependency nodebb-theme-persona to v10.2.54 (#8736) (4207dde4)
    • update dependency nodebb-theme-persona to v10.2.52 (#8735) (70c085ba)
    • update dependency nodebb-theme-persona to v10.2.51 (#8729) (bae2eada)
    • update dependency nodebb-theme-persona to v10.2.50 (#8727) (804729fc)
    • update dependency nodebb-theme-persona to v10.2.49 (#8722) (b01bc2ae)
    • update dependency nodebb-theme-persona to v10.2.48 (#8721) (01702613)
    • update dependency nodebb-theme-persona to v10.2.47 (#8720) (04b1daac)
    • update dependency nodebb-theme-persona to v10.2.46 (#8719) (ba906d7d)
    • update dependency nodebb-plugin-composer-default to v6.4.2 (#8718) (229421ed)
    • update dependency nodebb-plugin-composer-default to v6.4.0 (#8716) (b3a24f74)
    • update dependency nodebb-plugin-mentions to v2.11.0 (#8714) (c95a3898)
    • update dependency nodebb-theme-slick to v1.2.36 (#8713) (fc2795d3)
    • update dependency nodebb-theme-vanilla to v11.2.20 (#8715) (2b0deeb7)
    • update dependency nodebb-theme-persona to v10.2.45 (#8711) (f14b4945)
    • update dependency nodebb-theme-persona to v10.2.43 (#8701) (1d0eaafb)
    • update dependency nodebb-theme-persona to v10.2.42 (2a1da61c)
    • update dependency nodebb-theme-vanilla to v11.2.18 (#8697) (9bdef707)
    • update dependency nodebb-theme-slick to v1.2.34 (#8696) (3e2816ae)
    • bump persona (f17d42ed)
    • update dependency sanitize-html to v2 (1e5621c0)
    • update dependency nodebb-theme-persona to v10.2.39 (#8684) (d0010c40)
    • update dependency nodebb-theme-persona to v10.2.38 (#8683) (bb04f149)
    • update dependency json2csv to v5.0.3 (30aa7e83)
    • update dependency nodebb-theme-persona to v10.2.36 (#8680) (07172b6f)
    • update dependency nodebb-theme-persona to v10.2.35 (#8679) (68a5e7e3)
    • update dependency json2csv to v5.0.2 (5a2adb42)
    • update dependency nodebb-theme-persona to v10.2.33 (#8675) (abe83773)
    • update dependency nodebb-theme-persona to v10.2.31 (#8673) (80dbf97a)
    • update dependency nodebb-plugin-composer-default to v6.3.57 (#8672) (7ecac97a)
    • update dependency nodebb-theme-persona to v10.2.30 (#8671) (c8a75631)
    • update dependency nodebb-theme-persona to v10.2.24 (#8663) (72cd5f13)
    • update dependency postcss to v8.0.6 (#8657) (55921ccf)
    • update dependency validator to v13.1.17 (#8659) (01232090)
    • update dependency sharp to v0.26.1 (#8660) (b175d671)
    • update dependency nodebb-widget-essentials to v4.1.2 (#8658) (dc0a4a49)
    • postcss and autoprefixer version incompatibility (70d3ad02)
    • update dependency nodebb-plugin-mentions to v2.10.0 (5ea172f9)
    • update dependency autoprefixer to v10 (60679481)
    • bump theme versions (685633d0)
    • update dependency nodebb-plugin-composer-default to v6.3.56 (#8648) (8089387b)
    • update dependency nodebb-theme-persona to v10.2.22 (c5ca2609)
    • update dependency nodebb-theme-vanilla to v11.2.16 (8acdf3f6)
    • update dependency nodebb-theme-persona to v10.2.21 (ed0469b5)
    • update dependency nodebb-theme-vanilla to v11.2.15 (134ebba6)
    • update dependency nodebb-theme-vanilla to v11.2.14 (31635e3e)
    • update dependency nodebb-theme-persona to v10.2.20 (2a13e583)
    • update dependency mongodb to v3.6.2 (#8634) (4969c869)
    • update dependency nodebb-theme-vanilla to v11.2.13 (#8633) (8137cdc2)
    • update dependency nodebb-theme-persona to v10.2.19 (#8632) (37e37c86)
    • update dependency nodebb-theme-vanilla to v11.2.12 (#8628) (7ab87072)
    • update dependency nodebb-theme-persona to v10.2.18 (#8627) (2740655d)
    • update dependency nodebb-theme-vanilla to v11.2.11 (#8624) (fd6259c8)
    • update dependency nodebb-theme-persona to v10.2.17 (#8623) (a1d310bd)
    • update dependency nodebb-theme-slick to v1.2.30 (#8620) (251ea79b)
    • update dependency nodebb-theme-persona to v10.2.16 (#8618) (0d85dc48)
    • update dependency nodebb-theme-vanilla to v11.2.10 (#8619) (b52301b1)
    • update dependency nodebb-theme-vanilla to v11.2.9 (#8616) (69373fde)
    • update dependency nodebb-theme-persona to v10.2.15 (#8614) (3c0540c1)
    • update dependency socket.io-redis to v5.4.0 (#8600) (5ba23f24)
    • update dependency nodebb-theme-vanilla to v11.2.8 (#8599) (97e3543e)
    • update dependency nodebb-theme-persona to v10.2.12 (#8598) (1bb0896e)
    • update dependency nodebb-plugin-composer-default to v6.3.55 (#8606) (dfeb65bb)
    • update dependency nodebb-plugin-markdown to v8.12.1 (27426c06)
    • update dependency nodebb-theme-vanilla to v11.2.5 (64f4179a)
    • update dependency nodebb-theme-persona to v10.2.10 (777419b2)
    • update dependency sharp to v0.26.0 (#8578) (7ca967ee)
    • update dependency ipaddr.js to v2 (49aeda01)
    • update dependency nodebb-theme-lavender to v5.1.0 (87674d68)
    • update dependency nodebb-theme-persona to v10.2.5 (8032c8bd)
    • update dependency helmet to v4 (#8543) (ad68a338)
    • update dependency mongodb to v3.6.0 (#8535) (4160e828)
    • update dependency nodebb-theme-persona to v10.2.4 (#8544) (b30ecffb)
    • update dependency nodebb-theme-persona to v10.2.1 (#8529) (7a59c2fc)
    • update dependency nodebb-plugin-composer-default to v6.3.53 (d24a4bd3)
    • bump themes (b714ed22)
    • update dependency commander to v6 (#8518) (75fb2a47)
    • update dependency archiver to v5 (#8523) (f1cc4e29)
    • update dependency lru-cache to v6 (#8490) (2941b9f9)
    • update dependency connect-redis to v5 (#8480) (9c17a677)
    • update dependency nodebb-plugin-composer-default to v6.3.52 (#8522) (ac257a65)
    • update dependency nodebb-theme-persona to v10.1.68 (#8520) (f06b1cec)
    • update dependency nodebb-plugin-mentions to v2.9.3 (#8516) (b5df5766)
    • update dependency nodebb-plugin-dbsearch to v4.1.2 (649c64e4)
    • update dependency nodebb-plugin-mentions to v2.9.2 (91bdc12a)
    • update dependency nodebb-plugin-composer-default to v6.3.51 (0e13fd0f)
  • check is banned in buildHeader (4b63f993)
  • undefined call (518d4fa1)
  • missing await (08ff4041)
  • client side crash when creating groups (5a2b14b7)
  • disallow registration attempts with password length > 4096 (c0f699e6)
  • missing await (4818ec37)
  • broken test (87bff6cd)
  • updated commitlint config to allow longer subjects, because nobody anywhere uses an email client that limits subject lines to 72 characters (a53d49a2)
  • restore old behaviour of empty json w/ 401 code in admin middleware (dda5d426)
  • deprecate middleware.isAdmin (15e0731d)
  • post editing not taking plugin hook results into account (4439864c)
  • #8805 define our own name for write API v3 (57ed6be7)
  • removed superfluous assignment (a08fb8e5)
  • createNewPosts to build tpl with ajaxify.data (0b6ef61e)
  • handle ACP category enable/disable states after call success (bff53de0)
  • remove setCategorySort and setTopicSort (a6a52430)
  • sort setting not using correct field name (9082062e)
  • update readme to include psql (2d29e603)
  • breaking test from 0db0231cff (cc1c7220)
  • indentation (04185d94)
  • add back derpy 20 second sleep (8e7914ff)
  • missing method in test error output (3ebb3a34)
  • topic object in post editing data return (3c98cd3d)
  • bug where token generation route would fail on null case (618e0983)
  • typo (2e9f27d8)
  • return early for guests/spiders (203db47b)
  • #8789,cache meta.settings (156e1396)
  • spec (7a318352)
  • tests (63e07c94)
  • #8781 (db63f5e3)
  • reset button loading html (1a4c0dec)
  • #8779, fix move all (e6440c0d)
  • allow admins adding users to global moderators (1f43e98f)
  • incorrect logic for post history editable bool (a691be59)
  • [breaking] send configured config URL as origin if not custom (205a1030)
  • #8776 some users unable to restore old versions via history (7a8f7049)
  • #8595, dont save escaped data when renaming groups (b26e9b59)
  • keep sortBy while searching (3ee4936d)
  • autocomplete.user on search page (85cfe49d)
  • spec (cf474ab2)
  • sortby (7bddec93)
  • #8774 (b3619d3d)
  • #8732 (c107649b)
  • #8630, sort extra deps (e362c342)
  • missing doTopicAction, fix wrong api params (e78c498e)
  • test (8fd3c044)
  • appropriate 404 handling for write API calls (b6cce75d)
  • redis hget (b2ff1594)
  • reimplementing isPrivilegedOrSelfAndPasswordMatch (e98285db)
  • socket user bans (3f347baa)
  • broken tests from api change (222b4c95)
  • tests (7d86be2b)
  • handler for group.join (51a60d3d)
  • add missing file (d07f0081)
  • #8768 (4418ff07)
  • api bug where user profile editing continued even if not allowed (cc6e995e)
  • module build (bae0f343)
  • tests (b295d15e)
  • csrf token only on non-GET routes (20bb9c7e)
  • avatar selector (4b9444f1)
  • test (e6ea71c9)
  • timestamp (8c6a5591)
  • #8763 (331d236f)
  • lastonline again (a481024d)
  • caret (71d82ec8)
  • lastonline values (97628e2f)
  • upgrade script (1289c105)
  • cant join system groups (59bbede8)
  • tests (a411df13)
  • update server param to /api/v3 (0e0f1506)
  • typo (c68653d0)
  • testing openapi write tests (7aa4d104)
  • enable tests (7b2301ff)
  • test fix for write API (54e6003a)
  • password reset to invalidate all existing reset tokens for that uid (30b3fedc)
  • show more lines (ba2e1c4c)
  • #8756, pass missing req to mock (30d6a2b8)
  • #8757, allow all slashes in category route (1ee93848)
  • timeago test for dev/prod (7db224f6)
  • timeago test (cecdd291)
  • undefined api require, @julianlam (931d44b5)
  • watch tooltip (e2d407b7)
  • module name (aedd28e0)
  • pin sortablejs (8f436eb8)
  • admin jquerui requires (75c96686)
  • timeago locale switch (8c019a6a)
  • category RSS feed was displaying deleted topics (9a5b8a79)
  • #8734 make nprogress module (45e8a4d5)
  • regression caused by 7545951725 (8af30a51)
  • dont allow adding duplicates to privileges page (12c8b1c2)
  • #8728, dont add admins to table (f259063f)
  • remove debug log (675a62da)
  • tests (adcadbb2)
  • bad merge w/ category ACP page (cb9369f1)
  • bad logic in group assertion middleware (8e89f34d)
  • errors thrown if no password sent in to profile edit route (7757f965)
  • bug where middlewares seemingly ran in parallel (549ca110)
  • follow route to match spec (db5c5b2c)
  • missing one property in openapi doc (af2e424f)
  • error handling with POST /api/v1/users (d8879d21)
  • use POST call for user creation in ACP (58043e07)
  • user creation POST route returns user data, updated openapi spec (bba2a463)
  • selector, so it doesnt effect suggested topics (7138d433)
  • use proper api url (264818e5)
  • tests, get latest release tag recursively (8eb62e22)
  • use app.parseAndTranslate instead of benchpress.parse (fc603a53)
  • sorted list delete button (20e0cc5c)
  • unable to register async method as response hook listener (dde5b6b8)
  • dont allow sorting pinned topics on recent (b955fd36)
  • use console.info instead of console.log for sw registration (3c7f79cb)
  • spec (7cd83b9a)
  • spec (6924eb6c)
  • test (cb2f6f7c)
  • dont let mods load postqueue for a cid they are not a mod of (7bf6d3b8)
  • show disabled categories in admin&mods (2ea9768e)
  • prevent mutiple highlighted rows on category/topic pages (60afb110)
  • spec (fbd85680)
  • do not show TOC if fewer than 2 headings (f1de084d)
  • params cached in autocomplete module (caa8c00f)
  • #8686, deprecate plugin.json/library (#8705) (017af63f)
  • updating minimum node version in readme (d3951ebe)
  • update "install plugins" link to go to the download tab (5441651e)
  • overflow on submitPluginUsage field (c56236f0)
  • #8699 tags route is case sensitive, though tags are not (38f88fc5)
  • early button/anchor clicks do nothing (8437130e)
  • early button/anchor clicks do nothing (966d3f76)
  • error on reset -p if plugin is not active (7f58e3ab)
  • manifest test + remove duplicate test (bf3c1c08)
  • typo in getCompatiblePlugins (07af6213)
  • typo (54705cc4)
  • manifest - use absolute URL for start_url (31528a52)
  • prefer webmanifest extension over json (46800b66)
  • update notification delay ACP help text (4c1e717b)
  • #8681 change owner modal's search should check if user is banned (b6f2f0e5)
  • add img-responsive to post queue post items (f8032cd0)
  • language key in reset password (2ad33058)
  • issue where the last flag filter could not be removed (0fffe289)
  • multiword match highlight (f8ef380b)
  • tooltip placement on navbar search (82ab6cd3)
  • rogue tooltip on navbar profile icon (683c01b0)
  • #8580, @julianlam (445a840b)
  • topic count on category page if filter is author (bbf6889e)
  • match api when modifying ajaxify.data.deleted (int, not bool) (703ac1b6)
  • lock/unlock toggle issue (9a7c3c68)
  • #8665, trim email before checking validity (ac43cd8b)
  • editing posts saving uncessary data (e72fe259)
  • api spec (654d5830)
  • #8640, add bookmarks to intFields (4f14dc7a)
  • change user tooltip container to content (02a48e1c)
  • auth tests (fe2dc310)
  • #8656, rename /api/me to /api/self (af43f0e4)
  • add user tooltips to body (047c4148)
  • tests (22cd2654)
  • use correct topic count for category (220297d5)
  • clear old value on focus (42298fe6)
  • skip elements if they dont have proper index (c9c9dd2f)
  • call to reskin (99f24c59)
  • move necro-post to be in-line with posts (44309ee6)
  • tests, because redis is TOO FAST (4fca7938)
  • remove old test (5e8c3761)
  • client side crash if there are no topics (a8e18fdb)
  • #8418 (38d3982b)
  • typo (08912361)
  • tests (65d049c6)
  • check if unread_tids are followed (2d5bd153)
  • openapi (e9094094)
  • dont use hardcoded fontawesome icons for lock pin (632793b0)
  • #8629 and change undo timeout to 10 seconds (65d94a3b)
  • alert_id selector (2bebdf01)
  • use text-right (a78e1df9)
  • remove lang keys, remove sounds menu (a34b685c)
  • lavender version (8a752364)
  • tests (e3a0b4b1)
  • wider widget area (4bace773)
  • bypass nbbpm for now (33c1bd5f)
  • #8432, add CSP frame-ancestors (46ab2711)
  • allow setting maximumAboutMeLength to 0 (4588e521)
  • additional commit for CF rocket loader (a38784f5)
  • stack trace (4031a8ca)
  • #8604 (a2638976)
  • don't toggle elements if there is no inputEl (57f67e2b)
  • don't crash on outdated redis instances (896fe9d6)
  • update post-queue hook names (0e58d2b8)
  • accept/reject in post-queue instead of accept/delete (694f4b2b)
  • new openapi def for replies addition (b5871275)
  • #8582 (9f9164a9)
  • debug logging 🐶 (fb3b4a02)
  • ip-blacklist not working after #8580 (56101ae5)
  • ip-blacklist not working after #8580 (c681b4b2)
  • post-queue not working after #8580 (dc5bd760)
  • #8411 missing language sources for ip-blacklist/post-queue (a93e1955)
  • removed invalid options for the sendmail transport (#8576) (2b785628)
  • missing localisation for topic move error (bacee6b4)
  • select all checkbox does not re-enable bulk actions button (5d60dce3)
  • dupes in unread followed topics (55533b11)
  • wrong data passed to getCategories (39f4bbaa)
  • openapi spec (4f7cfd53)
  • api spec (c4ad14cb)
  • username, email history disappering if content was deleted (91d9333a)
  • up composer (9fd37753)
  • package-install clobbering scoped nodebb plugins (840cb510)
  • empty "manage" menu showing in ACP (4b0cb26b)
  • hide nodebb version in ACP for non-superadmins (cc268605)
  • change how admin middlewares are exported (f00595b3)
  • one less return, to appease codeclimate (ae68a254)
  • inability to access /admin if not superadmin (03bd76de)
  • #8560, fix old upgrade script (29e3ab24)
  • use promises in privilege save (9cbe9389)
  • overzealous click handler on flag list row (7a5daff4)
  • +comment, -debug log (9608b44f)
  • multiple alerts in the same millisecond overwrite each other (589216e7)
  • reintroduce 20s delay for api tests (56393795)
  • client-side error in flags/detail (b2271eb6)
  • #8570 (7daba7dd)
  • sorting the flags list by newest is not considered a filter (3efe2362)
  • flag list tests due to breaking change in API (360aa00d)
  • no-widgets messaging in ACP + copy (334be113)
  • #8568 perPage not acting like a filter (cabe62a0)
  • #8562 (31c2b7d9)
  • progress bar clobbering upgrade script name (2adae879)
  • tweak upgrade script progress bar to only update 100 times in total (ac75c9a0)
  • navigation title unescape upgrade script tweak (80a2a700)
  • new language key for error handling (7456a0e3)
  • upgrade scripts not run properly if schemaDate is present (de8eebbd)
  • #8556, catch errors from admin check (bfaf648e)
  • upgrade script for 1.15.0 (32682738)
  • improper targetUid check during password change (16cee1b0)
  • #8547, remove old deps during upgrade (#8557) (1d170e0c)
  • #8558, only navigate if user is in same topic (79e847d4)
  • upgrade script (231d34d0)
  • don't allow duplicate upgrade script names (8887f0ed)
  • tests (d6297b28)
  • send hard 404 instead of soft 404 for missing modules (9f3b7811)
  • #8549 send 308 Permanent Redirect on topic/category shortlinks (68f8d6e3)
  • remove default helmet (c39c5113)
  • map instead of forEach in privileges save (a7071bb8)
  • remove duplicate configuration for helmet-hsts (0f10e083)
  • don't process invalid topics, fallback to 0 score (335169f2)
  • tests (6924a222)
  • #8539, enforce content checks for post queue (bb224184)
  • bug; additional reports could be added by the same user repeatedly (0f2b6f1f)
  • #8538, go to first unread instead of last read (519e6659)
  • #8533, validate and retry password during setup (0d698a07)
  • #8534, dont show modal on search (9e80a9ef)
  • language string (9f346c53)
  • api test (8415d2f0)
  • tests (9df871be)
  • tests (69fb1527)
  • reverse uid checks (7331faed)
  • acp view category button if category is a link (2dfe9d49)
  • remove old test (52718ce0)
  • #8515, fix login redirect on subfolder (5e5815f0)
  • tests (f48d1556)
  • #4695, remove new notif alert (fd4c3cda)
  • too small sortable handle for ACP>Manage>Categories (8473e165)
  • less fixes for category dropdown (db07dd85)
  • move check inside lock (57135761)
  • #7351, display less errors with location and error message (d1cb405d)
  • use shorter git url, #8527 (345fd72b)
  • cursor for category select (4c90fac4)
  • api docs for admin/manage/groups/x (8769e28b)
  • edge case in test (b9cff577)
  • api tests (42af4b57)
  • #8500, allow regular users select topics on unread (7260646d)
  • don't crash if content is undefined (4658121a)
  • crash if csrfToken does not exist (a3c8d456)
  • try again (6f889c9c)
  • more tests (a46adb3f)
  • tests (65395ae5)
  • tests (72c60d19)
  • tests (67ca5e32)
  • #8508, dont allow moving topics if not moderator of target category (36531511)
  • composer textarea placeholder l10n /cc @pitaj (1e14af45)
  • openapi:
  • writeapi:
  • refactor:
    • patching helpers.tryRoute for API routes, some re-org (d15d9e44)
    • merging write-api auth middlewares with core middlewares (f6433ef2)
  • bug: #8611, custom route logic corrected (#8612) (64a457a4)
  • docs: updating changelog (6e34b9ef)
Performance Improvements
Refactors
  • simpler check in user.blocks.filter (a02ae6f5)
  • remove usage of middlewares (266d7587)
  • remove /users/{uid}/settings/{setting} route (aa8faf58)
  • api test suite to accept methods other than GET (843aff58)
  • remove unnecessary wrapper (a512d994)
  • remove console.log, extra require (75024c35)
  • show more lines of stack trace (ea31f505)
  • posts api (d9a16855)
  • post restore/delete/purge (272e73da)
  • merge post.edit (9738e202)
  • deprecate socket.emit('users.search') use api route (2279e372)
  • api categories (083c74e0)
  • remove sockets.reqFromSocket (bc880ee0)
  • topic follow/ignore to use api lib (9ee3cb9b)
  • topic tools' actions to use api lib (68d6818b)
  • topic creation to use api lib (40598b36)
  • setupApiRoute signature (bf480ee5)
  • remove unused middleware (688d7a2c)
  • user bans to use api lib (2d252f2f)
  • move groups.leave, fix some tests (e367c540)
  • change password/user follow to use api lib (960e925e)
  • user deletion to use api lib (430e7f58)
  • socket profile update to use api lib (77481947)
  • socket profile update to use api lib (31ae8a83)
  • user create and profile update to use api lib (23086dae)
  • use single function for api code (5e2caf19)
  • async/await src/user/approval (43afe7ff)
  • async/await install/web.js (3881ac30)
  • async/await (1fd2eba6)
  • use app.render (d89477ca)
  • api module (3673accd)
  • api module returns promise, error-first cb if cb passed in (a784d10f)
  • remove unused search call (dd7424e5)
  • switch to using slugify module (dc29f4dc)
  • require style (c954db84)
  • middleware.assert.* (8ecef7b8)
  • rewrite modules/api.js in AMD style (a905d7f0)
  • remove posts.tools.purge (ed092bf6)
  • shared constants (#8707) (1aa336d8)
  • post edit (16039b11)
  • expose new method for appending moderation note (29b357bc)
  • socket posts delete/restore/purge so tid is not necessary (#8607) (f743f920)
  • ip-blacklist and post-queue language files (4dc6e64a)
  • moved ip-blacklist and post-queue styles/tpls to themes (b6b94a56)
  • changed way middleware was exported (cf2f1e95)
  • remove util.promisify calls (01899459)
  • change pwd change logic (846b7d24)
  • rewrite src/upgrade.js with async/await (33c5988c)
  • change incrementViewCount and markAsRead to async/await (2c35d0ba)
  • for codeclimate (2ee62483)
  • rewrite src/install with async/await (776e34a8)
  • removed rather redundant flag reporters zset (6c00ec84)
  • flags object in post tools (fcdbdf63)
  • pass only needed data (f1974fb9)
  • startup (c54b6b9c)
  • get rid of bind calls (af91c26a)
  • setting codeclimate to A (bc26883a)
  • make msg pretty (8ddc8dd1)
  • flag sanity checks, +feat: flag limits (e3e55f25)
  • writeapi:
    • update route prefix to api/v3, default error option (3ea1aa47)
    • post.tools.purge no longer a method (5e2a3ea6)
Code Style Changes
  • openapi:
    • break write API routes into individual files (dbb4cfe9)
    • move schemas and responses out of write.yaml (ffac3c79)
  • updates to openapi files (2928b9b8)
  • allowing some es6 features client-side (e1c40b27)
  • linting (cdb79488)
Tests
  • openapi: missing commonprops addition (0dc55bbc)

1.14.3 (2020-07-08)

Bug Fixes
  • improper targetUid check during password change (c2477d9d)

1.14.2 (2020-07-15)

Chores
  • incrementing version number - v1.14.2 (1e4d683f)
  • update changelog for v1.14.2 (488e69fd)
  • up theme (63fb2ad7)
  • incrementing version number - v1.14.2-beta.1 (9d1465d0)
  • up theme (15aabfd3)
  • up theme (599c5015)
  • incrementing version number - v1.14.2-beta.0 (fca4ee31)
  • incrementing version number - v1.14.1 (31203b16)
  • update changelog for v1.14.1 (d4c16086)
  • deps: update commitlint monorepo to v9.1.1 (0ca7e28a)
New Features
Bug Fixes
Other Changes

1.14.1 (2020-07-08)

Chores
  • incrementing version number - v1.14.1 (31203b16)
  • update changelog for v1.14.1 (d4c16086)
  • incrementing version number - v1.14.1-beta.3 (e8ecef6b)
  • incrementing version number - v1.14.1-beta.2 (b8d9b6b1)
  • incrementing version number - v1.14.1-beta.1 (be85123a)
  • incrementing version number - v1.14.1-beta.0 (c279875a)
  • incrementing version number - v1.14.0 (bb73d6a4)
  • update changelog for v1.14.0 (cffae0f1)
New Features
Bug Fixes
  • deps:
    • update dependency nodebb-theme-persona to v10.1.60 (#8478) (14eafcb6)
    • bump nodebb-plugin-composer-default to 6.3.48 (943a344a)
    • update dependency nodebb-plugin-dbsearch to v4.1.1 (#8476) (9f06f12c)
    • update dependency nodebb-plugin-composer-default to v6.3.47 (#8473) (857900f1)
    • update dependency nodebb-plugin-dbsearch to v4.1.0 (#8471) (eb51cfd4)
    • update dependency nodebb-theme-persona to v10.1.59 (#8468) (ee38e05d)
    • update dependency nodebb-widget-essentials to v4.1.1 (#8466) (519e035d)
    • update dependency @nodebb/socket.io-adapter-mongo to v3.0.1 (#8464) (412ca4ae)
  • #8474 (c2ca02df)
  • show stack properly (7b04d897)
  • editing chat messages does not go through content sanity checks (9a6b87d2)
  • don't show blocked users under nested replies (d6c619cf)
  • tests (87dd6c83)
  • handle scan/zscan returning duplicate elements on redis (746222d6)
  • #8467, fix url to merged topic in subfolder installs (9eb748b9)
  • openapi (5f1865c0)
  • openapi (65c0adc7)
  • dont allow searching by email/ip if not privileged (ac6b571e)
  • missing backgroundImage #8386 (fef04fcf)
  • dont allow searching by ip/banned/flagged for regular users (02ac44cc)
  • admin privileges client-side regression (f3441fce)
  • only add blocksCount for self and admins (59a2ace6)
  • tests (fd20e5c6)
  • better changelog (f992af05)
  • tests:
  • openapi: tests (c468942f)
Other Changes
Reverts

1.14.0 (2020-07-02)

Chores
  • incrementing version number - v1.14.0 (bb73d6a4)
  • update changelog for v1.14.0 (cffae0f1)
  • bump persona (19f9af94)
  • latest translations and fallbacks (22879633)
  • incrementing version number - v1.13.3 (ee583e80)
  • bump persona (d2bd746c)
  • incrementing version number - v1.13.2 (beafd613)
  • deps:
    • update dependency smtp-server to v3.7.0 (e80100b5)
    • update dependency eslint to v7.3.1 (#8417) (33492744)
    • update commitlint monorepo to v9 (569b7664)
    • update dependency lint-staged to v10.2.11 (157e7444)
    • update dependency lint-staged to v10.2.10 (102a6004)
    • update dependency mocha to v8 (#8393) (f4bace03)
    • update dependency eslint to v7.2.0 (cd1375cb)
    • update dependency eslint-plugin-import to v2.21.1 (4b577a52)
    • update dependency lint-staged to v10.2.9 (#8369) (124125f7)
    • update dependency lint-staged to v10.2.8 (331b1a85)
    • update dependency lint-staged to v10.2.7 (d1df0826)
    • update dependency mocha to v7.2.0 (ecaa9b76)
    • update dependency eslint to v7.1.0 (e62d892a)
    • update dependency lint-staged to v10.2.6 (78d562b3)
    • update dependency lint-staged to v10.2.4 (a26011e7)
    • update dependency eslint to v7 (28df9aba)
    • update dependency coveralls to v3.1.0 (5ed4a108)
    • pin dependency @apidevtools/swagger-parser to 9.0.1 (51eccef5)
    • update dependency husky to v4.2.5 (30a25983)
    • update dependency husky to v4.2.4 (0a650118)
    • update dependency lint-staged to v10.1.3 (a9e68639)
    • update dependency nyc to v15.0.1 (#8231) (a3789e28)
    • update dependency lint-staged to v10.1.2 (#8235) (e1919c90)
    • update dependency lint-staged to v10.1.1 (944a6f58)
    • update dependency lint-staged to v10.1.0 (30bd233b)
    • update dependency eslint-config-airbnb-base to v14.1.0 (811c3aee)
    • update dependency jsdom to v16.2.2 (c5a7242d)
    • update dependency eslint-plugin-import to v2.20.2 (b92c1600)
    • update dependency lint-staged to v10.0.10 (0ad4b556)
    • update dependency coveralls to v3.0.11 (14458087)
    • update dependency smtp-server to v3.6.0 (22681945)
    • update dependency mocha to v7.1.1 (#8215) (c5356541)
    • update dependency grunt to v1.1.0 (#8214) (b0864e7c)
    • update dependency husky to v4.2.3 (#8162) (776fe9d2)
    • update dependency lint-staged to v10.0.8 (#8180) (13d8f6f1)
    • update dependency eslint-plugin-import to v2.20.1 (#8081) (4cdb3131)
    • update dependency jsdom to v16.2.1 (#8165) (fbd95a50)
    • update dependency husky to v4.2.2 (#8160) (f4ed35c9)
    • update dependency jsdom to v16 (#8114) (1037de02)
Documentation Changes
New Features
  • polish for user blocks UX (6cb31791)
  • #8450, next/prev link tags on /unread /recent (eb9704f8)
  • allow flagging of user acounts from post tools menu (6931f29d)
  • closes #8440, allow configuring max topic count (e09ab3dc)
  • add missing translation key (bffb830d)
  • #3783, min/max tags per category (c718b729)
  • use tags partial instead of post_bar (0482fb29)
  • hide elements if search element is a direct child of dropdown (4f6b6c56)
  • increase wait (6aecc177)
  • move export functions into child processes (8383992d)
  • display stack trace on winston.error (e80379dc)
  • show more relevant snippets (f70d1648)
  • #8412 breadcrumbs for ip-blacklist/post queue/flags (35a06a84)
  • show editor in post diffs if available (f909ed25)
  • #8408 flags' quick assignment (d5af9769)
  • bump themes, closes #8406 (cb5ba76b)
  • allow post diffs to be restored, #8406 (58b3d608)
  • add missing translation (3a80a165)
  • up composer (96cb94dc)
  • more search changes (6349fa03)
  • more merge/search fixes (4b38533b)
  • merge changes (bb3aa540)
  • more search & merge fixes (5fd05dc9)
  • merge improvements wip (c4bdeae0)
  • #8387 expose global and admin privs to flags detail page (4acb3fb2)
  • redirect /me to user profile (3be4d5f7)
  • #8384 options to delete account, content, or both (4d60eac6)
  • account content deletion, closes #8381 (67aca822)
  • add missing language files for #8347 (656b391f)
  • privileges for Admin Control Panel (#8355) (a82e9bd7)
  • add buildHeaderAsync (#8367) (842b8abb)
  • #8360 flag quick actions for delete/restore/purge (8ea16348)
  • #8349, remove user posts from queue if user is deleted (5a2b5154)
  • up plugins (5b009e07)
  • add results into results container (9ffcb6f7)
  • quick search changes (f12d448e)
  • move quick search into search module (bb1a56f0)
  • fix session mismatch errors by clearing cookie on logout (#8338) (5781a2dc)
  • add getSortedSetMembers (0009f54e)
  • add privilege give/rescind hooks (#8336) (ec5582b5)
  • filter followed tids by category (f3afba61)
  • use getSortedSetsMembers to load followed tids (1b9e8928)
  • add batch size to cursors (a015af4a)
  • up cache size (9600ede5)
  • tweak intersection code, add tests (4ee3543e)
  • change to contains to match scoped modules (6108064e)
  • improve grunt restart/rebuild speed (cb662e15)
  • don't overwrite req.query.lang if it exists (4263efa0)
  • convert queries so they used indices directly (12c6bc2e)
  • cookie SameSite property (ae2db423)
  • if only one value is passed used faster function (2587112f)
  • closes #8316, add more data to export profile (f0323b6c)
  • throw error if uid is missing for update (1d3fa3bc)
  • ignore mongodb playground file (a219285e)
  • parse quick search tpl even if no results (765b8156)
  • match hook property to topic property (0e58fa33)
  • add methods for adding/removing tags from topics (bfad4572)
  • write-api update, WIP (9fd5c439)
  • closes #8308, edit post notif for watched topic posts (a73c755b)
  • add null tests for sorted sets (edf9fe3b)
  • Add hooks for user blocks (#8296) (c4545381)
  • allow activating additional plugins for testing via config.json (a969c5ce)
  • move plugin tests to separate file (3a23ddab)
  • remove node14 for now (a72e4429)
  • reduce infinite scroll area (3fcbd691)
  • manifest.json improvements from #8126 (#8264) (6e5ebb61)
  • show error if json is invalid (15345627)
  • moved component specs into separate files (cd506557)
  • added UserObject, UserObjectFull, Breadcrumb, Pagination component (64d79fe5)
  • added some summary and descriptions (ae3e90d6)
  • add some descriptions (442c018e)
  • common schema (eade13f9)
  • openapi component (1af5507a)
  • add page query param to docs (9987813f)
  • tag route doc (bbddaadf)
  • local redoc view on development mode only (1136a369)
  • added auto-generated, slimmed-down openapi 3.0 file for read api (7b155dab)
  • add parent cids to body class (23571224)
  • add 2 hooks for modifying privileges (d080c7b0)
  • add user ip to admin/dev/info (5e91a67e)
  • change option name (cba5b23e)
  • add no-build to ./nodebb setup (476f6717)
  • add awaitable socket.emit (4083a6e3)
  • settings sorted list (#8170) (3c9689a5)
  • guard against accidental ommision (79737c53)
  • docs: updated changelog (87c1687d)
  • openapi:
    • merging openapi-test branch into master (8387178b)
    • move all commonprops out for commonprops component (65c78de6)
    • added template to commonprops (2425f453)
Bug Fixes
Other Changes
Refactors
Reverts

1.13.3 (2020-05-08)

Chores
  • incrementing version number - v1.13.3 (ee583e80)
  • bump persona (d2bd746c)
  • incrementing version number - v1.13.2 (beafd613)
  • deps:
    • update dependency coveralls to v3.1.0 (5ed4a108)
    • pin dependency @apidevtools/swagger-parser to 9.0.1 (51eccef5)
    • update dependency husky to v4.2.5 (30a25983)
    • update dependency husky to v4.2.4 (0a650118)
    • update dependency lint-staged to v10.1.3 (a9e68639)
    • update dependency nyc to v15.0.1 (#8231) (a3789e28)
    • update dependency lint-staged to v10.1.2 (#8235) (e1919c90)
    • update dependency lint-staged to v10.1.1 (944a6f58)
    • update dependency lint-staged to v10.1.0 (30bd233b)
    • update dependency eslint-config-airbnb-base to v14.1.0 (811c3aee)
    • update dependency jsdom to v16.2.2 (c5a7242d)
    • update dependency eslint-plugin-import to v2.20.2 (b92c1600)
    • update dependency lint-staged to v10.0.10 (0ad4b556)
    • update dependency coveralls to v3.0.11 (14458087)
    • update dependency smtp-server to v3.6.0 (22681945)
    • update dependency mocha to v7.1.1 (#8215) (c5356541)
    • update dependency grunt to v1.1.0 (#8214) (b0864e7c)
    • update dependency husky to v4.2.3 (#8162) (776fe9d2)
    • update dependency lint-staged to v10.0.8 (#8180) (13d8f6f1)
    • update dependency eslint-plugin-import to v2.20.1 (#8081) (4cdb3131)
    • update dependency jsdom to v16.2.1 (#8165) (fbd95a50)
    • update dependency husky to v4.2.2 (#8160) (f4ed35c9)
    • update dependency jsdom to v16 (#8114) (1037de02)
Documentation Changes
New Features
  • allow activating additional plugins for testing via config.json (a969c5ce)
  • move plugin tests to separate file (3a23ddab)
  • remove node14 for now (a72e4429)
  • reduce infinite scroll area (3fcbd691)
  • manifest.json improvements from #8126 (#8264) (6e5ebb61)
  • show error if json is invalid (15345627)
  • moved component specs into separate files (cd506557)
  • added UserObject, UserObjectFull, Breadcrumb, Pagination component (64d79fe5)
  • added some summary and descriptions (ae3e90d6)
  • add some descriptions (442c018e)
  • common schema (eade13f9)
  • openapi component (1af5507a)
  • add page query param to docs (9987813f)
  • tag route doc (bbddaadf)
  • local redoc view on development mode only (1136a369)
  • added auto-generated, slimmed-down openapi 3.0 file for read api (7b155dab)
  • add parent cids to body class (23571224)
  • add 2 hooks for modifying privileges (d080c7b0)
  • add user ip to admin/dev/info (5e91a67e)
  • change option name (cba5b23e)
  • add no-build to ./nodebb setup (476f6717)
  • add awaitable socket.emit (4083a6e3)
  • settings sorted list (#8170) (3c9689a5)
  • guard against accidental ommision (79737c53)
  • openapi:
    • merging openapi-test branch into master (8387178b)
    • move all commonprops out for commonprops component (65c78de6)
    • added template to commonprops (2425f453)
Bug Fixes
Other Changes
Refactors
  • match core field name pinned (478ed6c1)
  • getUsersCSV to use batch lib (1efb238a)
  • reorganized socket.io admin modules (e1c6c3b2)

1.13.2 (2020-02-05)

Chores
Documentation Changes
New Features
Bug Fixes
Other Changes
Refactors

1.13.1 (2019-12-19)

Chores
  • incrementing version number - v1.13.1 (d1e0672f)
  • incrementing version number - v1.13.0 (c38b2d23)
  • deps:
Documentation Changes
New Features
  • better output for cli plugins list, closes #8075 (4fc69443)
  • #5272, allow changing user groups from manage users page (05c9fe27)
  • merge social authentication into plugins menu in ACP (f9a8ebfc)
  • convert middleware.isAdmin to async/await (efd1e88b)
Bug Fixes
Refactors

1.13.0 (2019-11-13)

Chores
  • incrementing version number - v1.13.0 (c38b2d23)
  • incrementing version number - v1.12.2 (810e2c0b)
  • deps:
    • update dependency jsdom to v15.2.1 (9d946d1c)
    • update dependency eslint to v6.6.0 (d0e428e9)
    • update dependency lint-staged to v9.4.2 (#7954) (d108c7d0)
    • update dependency mocha to v6.2.2 (#7984) (e31a47cd)
    • update dependency coveralls to v3.0.7 (#7961) (9b308e4b)
    • update dependency jsdom to v15.2.0 (#7971) (9b4e9882)
    • update dependency husky to v3.0.9 (fd5095a3)
    • update dependency husky to v3.0.8 (88cae415)
    • update dependency lint-staged to v9.4.1 (a2a7bb3d)
    • update node.js to v8.16.1 (f9ad826b)
    • update node:8.16.0 docker digest to bb12612 (48cc317c)
    • update dependency eslint to v6.5.1 (da12e947)
    • update dependency husky to v3.0.7 (10a30e66)
    • update commitlint monorepo to v8.2.0 (ddd4e039)
    • update dependency mocha to v6.2.1 (b172d106)
    • update dependency lint-staged to v9.2.3 (ccccba81)
    • update dependency coveralls to v3.0.6 (#7820) (2b1f840e)
    • update dependency husky to v3.0.3 (cbede89a)
    • update dependency lint-staged to v9 (f2e4664d)
    • update dependency eslint-plugin-import to v2.18.2 (#7779) (57b2a553)
    • update dependency eslint to v6.1.0 (#7783) (7257e6b2)
    • update dependency husky to v3.0.2 (7ad72b32)
    • update node:8.16.0 docker digest to c671dc2 (e76214a2)
    • update dependency mocha to v6.2.0 (d43f5dcf)
    • update node:8.16.0 docker digest to 310db2a (c46a0772)
    • update dependency husky to v3.0.1 (28151f86)
    • update dependency eslint-plugin-import to v2.18.1 (9fda2c1f)
    • update commitlint monorepo to v8.1.0 (f73468d5)
    • update dependency coveralls to v3.0.5 (5b746d53)
    • update dependency husky to v2.7.0 (1d0fd028)
    • update dependency eslint to v6.0.1 (77347d0a)
    • update dependency husky to v2.6.0 (fc69e891)
    • update dependency eslint-plugin-import to v2.18.0 (744e4428)
    • update dependency husky to v2.5.0 (4960b925)
    • update dependency lint-staged to v8.2.1 (2fa68e3b)
    • update node:8.16.0 docker digest to 06adec3 (fc224cca)
    • update dependency husky to v2.4.1 (17ec8fde)
    • update node:8.16.0 docker digest to d5ad3f5 (f9e99fa3)
    • update node:8.16.0 docker digest to 75b524a (5995834b)
    • update node:8.16.0 docker digest to b9a98ae (fca6d794)
    • update dependency lint-staged to v8.2.0 (376390c4)
    • update dependency husky to v2.4.0 (3d2ec0bb)
    • update dependency coveralls to v3.0.4 (c360e0c2)
    • update dependency eslint-plugin-import to v2.17.3 (eac4e2f1)
    • update node:8.16.0 docker digest to 957cab2 (cc6fa97c)
    • update commitlint monorepo to v8 (80532831)
Documentation Changes
New Features
Bug Fixes
Refactors
Reverts
  • accidental removal of some needed translation source strings (868dedd1)

1.12.2 (2019-05-15)

Chores
  • incrementing version number - v1.12.2 (22db818e)
  • bump themes #7576 (d349754d)
  • bump themes (59bdc970)
  • bump themes (abcca134)
  • bump themes (551b18cd)
  • incrementing version number - v1.12.1 (dd973abe)
  • deps:
    • update dependency lint-staged to v8.1.7 (dc6b49ca)
    • update commitlint monorepo (9998e86b)
    • update dependency jsdom to v15.1.0 (fcd6dc88)
    • update dependency mocha to v6.1.4 (3ff8154b)
    • update node:8.16.0 docker digest to b5484d1 (6421f10f)
    • update dependency husky to v2.3.0 (c20e3313)
    • update dependency nyc to v14.1.1 (#7584) (9047210c)
    • update dependency eslint to v5.16.0 (692e2ead)
    • update dependency nyc to v14 (9210baf5)
    • update dependency husky to v2.2.0 (8a018a5f)
    • update dependency lint-staged to v8.1.6 (4e39caf8)
    • update dependency husky to v2.1.0 (65ff0bbd)
    • update dependency husky to v2 (e81a1dbb)
    • update dependency eslint-plugin-import to v2.17.2 (#7546) (c1fb17f9)
    • update dependency jsdom to v15 (#7556) (d4d8d98f)
    • update dependency jsdom to v14.1.0 (#7555) (ca694fd1)
    • update node.js to v8.16.0 (#7554) (f10708e7)
    • update dependency eslint-plugin-import to v2.17.1 (69dd8e4d)
    • update dependency mocha to v6.1.2 (b7169772)
Documentation Changes
New Features
Bug Fixes

1.12.1 (2019-04-10)

Chores
Documentation Changes
New Features
Bug Fixes

1.12.0 (2019-03-06)

Chores
  • incrementing version number - v1.12.0 (d87f8c52)
  • incrementing version number - v1.11.2 (757bff27)
  • deps:
    • update node:8.15.1 docker digest to 287b8a5 (0b8d1833)
    • update node.js to v8.15.1 (ae89db28)
    • update dependency mocha to v6 (#7387) (30bdb1a1)
    • update dependency coveralls to v3.0.3 (#7397) (cf74904c)
    • update dependency eslint to v5.14.1 (4df9c206)
    • update dependency jsdom to v13.2.0 (cb5e3d83)
    • update node:8.15.0 docker digest to a8a9d8e (edcb5314)
    • update dependency nyc to v13.3.0 (a78f5da5)
    • update dependency lint-staged to v8.1.4 (18c90913)
    • update dependency eslint to v5.14.0 (9d8d2d0d)
    • update commitlint monorepo (aed5b29d)
    • update dependency eslint-plugin-import to v2.16.0 (e0fa6965)
    • update dependency @commitlint/cli to v7.4.0 (362d9397)
    • update dependency lint-staged to v8.1.1 (96644350)
Documentation Changes
New Features
  • admin/groups style change (2b6f1a05)
  • add process cpu usage to admin (db477538)
  • pass options to digest (23da3009)
  • revamp email templates to be more style agnostic (#7375) (f32a9922)
  • lower search timeout (fc830c0f)
  • quick search (8a0e1280)
  • add vote status to getPostData API call (eafe76de)
  • make topic search a function (d2b83967)
  • quick search (c01d43e0)
  • check overide (ba90bf31)
  • check CI failure (f2d7f75e)
  • logging password resets and errors into event log (0c09b740)
  • add action:alert.new, action:alert.update hooks (daadcc48)
  • allow themes to define custom classes for categories via filter:admin.category.get (5031bfe8)
  • show more unread notifs (d75a0d77)
  • pass topic creation data to action:topic.save (cd2f72fb)
  • textcomplete over jquery-textcomplete, closes #7309 (02a8ed9b)
  • new hook filter:privileges.posts.edit (f659ef4d)
  • new hook type: response (a23854e3)
Bug Fixes

1.11.2 (2019-01-24)

Chores
  • incrementing version number - v1.11.2 (757bff27)
  • incrementing version number - v1.11.1 (2104877c)
  • deps:
    • update node:8.15.0 docker digest to cb66110 (1719cd77)
    • update dependency eslint-plugin-import to v2.15.0 (f7191eb9)
    • update dependency eslint to v5.12.1 (d928c54d)
    • update dependency @commitlint/cli to v7.3.2 (6ae2b972)
    • update node.js to v8.15.0 (ac39fe90)
    • update dependency eslint to v5.12.0 (f96ef7bb)
    • update commitlint monorepo to v7.3.1 (50594118)
    • update dependency smtp-server to v3.5.0 (00063708)
    • update dependency husky to v1.3.1 (719995a4)
    • update dependency eslint to v5.11.0 (#7151) (26f3bdbf)
    • update dependency husky to v1.3.0 (eb606281)
    • update dependency jsdom to v13.1.0 (60e9430b)
    • update dependency eslint to v5.10.0 (#7084) (dae861da)
    • update dependency husky to v1.2.1 (63f4b569)
    • update node:8.14.0 docker digest to dd2381f (7449ae3e)
    • update node.js to v8.14.0 (8a5a031d)
    • update dependency lint-staged to v8.1.0 (dd7f8a14)
    • update dependency husky to v1.2.0 (aee21628)
    • update node:8.12.0 docker digest to 5dae8ea (0ef451dd)
    • update dependency husky to v1.1.4 (95d6ab06)
    • update dependency eslint to v5.9.0 (92441794)
    • pin dependencies (b0483f21)
    • update dependency eslint-config-airbnb-base to v13 (#6599) (64b9dabf)
    • update node.js to v8.12.0 (fa3afbd2)
    • update dependency husky to v1.1.3 (6cee5b8e)
    • update dependency lint-staged to v8.0.4 (9d258668)
    • update dependency lint-staged to v8.0.3 (aaa6fe9e)
    • update dependency lint-staged to v8 (95d7a5fa)
    • update dependency jsdom to v13 (52f141c9)
  • husky: setting up husky as recommended in docs (e8a3d929)
Documentation Changes
  • updated changelog for v1.11.1 (c04e192d)
New Features
Bug Fixes
Other Changes
Refactors
Code Style Changes
  • lint fix (fbe6ccd7)
  • eslint:
    • match operator-linebreak preferences (ba619c7e)
    • newlines in public/src as well (f7bd398e)
    • enforcing newline on chained calls (95cc27f1)

1.11.1 (2018-12-14)

Chores
  • incrementing version number - v1.11.1 (2104877c)
  • deps:
    • update dependency husky to v1.2.1 (63f4b569)
    • update node:8.14.0 docker digest to dd2381f (7449ae3e)
    • update node.js to v8.14.0 (8a5a031d)
New Features
Bug Fixes
Code Style Changes
  • eslint: match operator-linebreak preferences (ba619c7e)

1.11.0 (2018-11-28)

Chores
  • deps:
    • update dependency lint-staged to v8.1.0 (dd7f8a14)
    • update dependency husky to v1.2.0 (aee21628)
    • update node:8.12.0 docker digest to 5dae8ea (0ef451dd)
    • update dependency husky to v1.1.4 (95d6ab06)
    • update dependency eslint to v5.9.0 (92441794)
    • pin dependencies (b0483f21)
    • update dependency eslint-config-airbnb-base to v13 (#6599) (64b9dabf)
    • update node.js to v8.12.0 (fa3afbd2)
    • update dependency husky to v1.1.3 (6cee5b8e)
    • update dependency lint-staged to v8.0.4 (9d258668)
    • update dependency lint-staged to v8.0.3 (aaa6fe9e)
    • update dependency lint-staged to v8 (95d7a5fa)
    • update dependency jsdom to v13 (52f141c9)
  • husky: setting up husky as recommended in docs (e8a3d929)
New Features
  • enabling commitlint (c58a41ed)
  • allow disabling of GDPR features via ACP toggle, closes #6847 (4919e9ef)
Bug Fixes
  • deps:
    • update dependency nodebb-theme-vanilla to v10.1.12 (cf928f44)
    • update dependency nodebb-theme-persona to v9.1.0 (179be9ed)
    • update dependency nodebb-theme-persona to v9.0.63 (#7019) (68ae3eb6)
    • update dependency nodebb-plugin-markdown to v8.8.5 (d3ab7d1b)
    • update dependency nodebb-theme-persona to v9.0.60 (#6984) (cbd50a80)
    • update dependency nodebb-theme-vanilla to v10.1.10 (#6982) (4c769487)
    • update dependency nodebb-theme-slick to v1.2.15 (#6981) (acaf1a05)
    • update dependency nodebb-theme-persona to v9.0.59 (#6980) (5863bb2c)
    • update dependency lru-cache to v4.1.4 (#6977) (375ab769)
    • update dependency connect-mongo to v2.0.2 (#6975) (e1597b83)
    • update dependency nodebb-plugin-markdown to v8.8.4 (84d1013d)
    • update dependency nodebb-plugin-composer-default to v6.1.8 (fee7e336)
    • update dependency nodebb-plugin-markdown to v8.8.3 (b182a195)
    • update dependency nodebb-plugin-composer-default to v6.1.7 (#6966) (1101f327)
    • update dependency nodebb-theme-persona to v9.0.58 (#6964) (6ade156b)
    • update dependency mongodb to v3.1.10 (#6962) (662215fa)
    • update dependency nodebb-theme-persona to v9.0.57 (#6956) (1bf1a439)
    • update dependency nodebb-theme-persona to v9.0.55 (#6955) (e06683f7)
    • update dependency nodebb-plugin-composer-default to v6.1.6 (c51ceaf0)
    • update dependency nodebb-theme-persona to v9.0.54 (bb940b01)
    • update dependency nodebb-plugin-mentions to v2.2.12 (#6936) (e12a803b)
    • update dependency nodebb-theme-vanilla to v10.1.9 (#6935) (b480c321)
    • update dependency nodebb-theme-slick to v1.2.14 (#6934) (9cdd5316)
    • update dependency nodebb-theme-persona to v9.0.53 (#6933) (9ee1c2f8)
    • update dependency nodebb-plugin-dbsearch to v2.0.23 (#6931) (dba1db9c)
    • update dependency jsesc to v2.5.2 (511b4edc)
    • update dependency validator to v10.9.0 (032caafa)
    • update dependency spdx-license-list to v5 (a639b6b8)
    • update dependency nodebb-theme-vanilla to v10.1.8 (eb0a322d)
    • update dependency nodebb-theme-persona to v9.0.52 (6566a0cb)
    • update dependency nodebb-plugin-dbsearch to v2.0.22 (#6916) (7808e58c)
    • update dependency mongodb to v3.1.9 (#6914) (9a9f2af9)
    • update dependency nodebb-theme-persona to v9.0.51 (e2274fe0)
    • update dependency nodebb-theme-slick to v1.2.13 (3005428d)
    • update dependency nodebb-theme-persona to v9.0.50 (#6902) (22140a20)
    • update dependency nodebb-plugin-markdown to v8.8.2 (0b4c9a80)
    • update dependency nodebb-theme-vanilla to v10.1.7 (3150a2fc)
    • update dependency nodebb-theme-slick to v1.2.12 (#6881) (9bcda7f7)
    • update dependency nodebb-theme-persona to v9.0.49 (#6880) (e0dc00da)
    • update dependency nodebb-theme-persona to v9.0.48 (2b6f5eec)
  • added admin/manage/uploads to tx config (7357926f)
  • #7013, add cache buster to js-enabled.css (f6b92c1d)
  • removal of scroll anchoring code in favour of browser handling (98c14e0e)
  • custom navigation item not showing groups (d9452bf3)
  • flags detail page crash if reporter blocks author (d027207f)
  • #6922, skin assets not including plugin LESS files (a5022ce4)
  • #6921, allow square brackets in usernames (da10ca08)
  • interstitial redirects failing if done via ajaxify (3c8939a8)
  • username trim on login, closes #6894 (157bea69)
  • uploads: ugly filenames on uploaded asset downloading (f96208a0)
  • acp:
    • small UI fixes for ACP privileges category selector (#6946) (57b39d5b)
    • hard-to-discover dropdown selector in ACP (b3f96d28)
  • l10n: some translations (34cbd1fc)
Code Style Changes
  • eslint:
    • newlines in public/src as well (f7bd398e)
    • enforcing newline on chained calls (95cc27f1)