nodeBB v1.15.0 Release Notes

Release Date: 2020-11-04 // over 3 years ago
  • v1.15.0 (2020-11-04)

    ๐Ÿ’ฅ Breaking Changes
    • โœ‚ remove toolsVisible in post tools' menu [breaking] (7e7366b)
    Chores
    • โšก๏ธ update changelog for v1.15.0-rc.5 (69f4d5a)
    • incrementing version number - v1.15.0-rc.5 (4bd2788)
    • โž• add info log into tests (b6d8687)
    • โšก๏ธ update renovate config to automatically merge non-major version bumps #yolo (1c8b8ce)
    • โšก๏ธ update changelog for v1.15.0-rc.4 (1688294)
    • incrementing version number - v1.15.0-rc.4 (57b4932)
    • โšก๏ธ update changelog for v1.15.0-rc.3 (2738041)
    • incrementing version number - v1.15.0-rc.3 (6de7760)
    • โฌ†๏ธ bump persona (e0b6781)
    • โšก๏ธ update changelog for v1.15.0-rc.2 (c3a7ab5)
    • incrementing version number - v1.15.0-rc.2 (7c08413)
    • โšก๏ธ update changelog for v1.15.0-rc.1 (4f49b3d)
    • incrementing version number - v1.15.0-rc.1 (943424b)
    • โšก๏ธ update changelog for v1.15.0-rc.0 (aab5f01)
    • incrementing version number - v1.15.0-rc.0 (8d48455)
    • โšก๏ธ update changelog for v1.15.0-beta.30 (3964872)
    • incrementing version number - v1.15.0-beta.30 (2dd3c96)
    • some optimizations for codeclimate (4a63c20)
    • โšก๏ธ update changelog for v1.15.0-beta.29 (63696c4)
    • incrementing version number - v1.15.0-beta.29 (fca176d)
    • ๐Ÿ”จ refactor src/emailer.js (7545951)
    • โšก๏ธ update changelog for v1.15.0-beta.28 (fd975a6)
    • incrementing version number - v1.15.0-beta.28 (57f8316)
    • โšก๏ธ update changelog for v1.15.0-beta.27 (7067382)
    • incrementing version number - v1.15.0-beta.27 (78fad24)
    • ๐Ÿ‘• lint notifications.js (4fc84e9)
    • โšก๏ธ update changelog for v1.15.0-beta.26 (5e01d28)
    • incrementing version number - v1.15.0-beta.26 (62c4409)
    • up persona (ff8a833)
    • up persona (4a0f54a)
    • โšก๏ธ update changelog for v1.15.0-beta.25 (240a04b)
    • incrementing version number - v1.15.0-beta.25 (1124d4e)
    • up persona (032e600)
    • โšก๏ธ update changelog for v1.15.0-beta.24 (72ab5ba)
    • incrementing version number - v1.15.0-beta.24 (23ba071)
    • up persona (5407bf4)
    • up persona (4c2eab4)
    • up persona (91133b0)
    • up persona (bcac080)
    • up persona (9dc4db1)
    • up persona (ba70a1b)
    • โšก๏ธ update changelog for v1.15.0-beta.23 (e6ea208)
    • incrementing version number - v1.15.0-beta.23 (61a04eb)
    • โšก๏ธ update changelog for v1.15.0-beta.22 (59ee74c)
    • incrementing version number - v1.15.0-beta.22 (9c9329e)
    • โšก๏ธ update changelog for v1.15.0-beta.21 (8089542)
    • incrementing version number - v1.15.0-beta.21 (966cdc1)
    • โšก๏ธ update changelog for v1.15.0-beta.20 (1650f30)
    • incrementing version number - v1.15.0-beta.20 (c8e57ec)
    • โšก๏ธ update changelog for v1.15.0-beta.19 (9cde510)
    • incrementing version number - v1.15.0-beta.19 (2eb7c28)
    • โšก๏ธ update changelog for v1.15.0-beta.18 (b2ca968)
    • incrementing version number - v1.15.0-beta.18 (e096791)
    • โšก๏ธ update changelog for v1.15.0-beta.17 (d617815)
    • incrementing version number - v1.15.0-beta.17 (f1c2809)
    • โšก๏ธ update changelog for v1.15.0-beta.16 (e08297f)
    • incrementing version number - v1.15.0-beta.16 (6043c9c)
    • โšก๏ธ update changelog for v1.15.0-beta.15 (f878b92)
    • incrementing version number - v1.15.0-beta.15 (10b94f9)
    • โšก๏ธ update changelog for v1.15.0-beta.14 (5e60d09)
    • incrementing version number - v1.15.0-beta.14 (6ca4b86)
    • โšก๏ธ update commitlint config (61a8c6f)
    • โšก๏ธ update changelog for v1.15.0-beta.13 (ca8d492)
    • incrementing version number - v1.15.0-beta.13 (bdd71c5)
    • โšก๏ธ update changelog for v1.15.0-beta.12 (0a24260)
    • incrementing version number - v1.15.0-beta.12 (b852c9b)
    • โšก๏ธ update changelog for v1.15.0-beta.11 (f07ba86)
    • incrementing version number - v1.15.0-beta.11 (c1ce739)
    • โšก๏ธ update changelog for v1.15.0-beta.10 (9c34ece)
    • incrementing version number - v1.15.0-beta.10 (f252d4d)
    • โšก๏ธ update changelog for v1.15.0-beta.9 (affc792)
    • incrementing version number - v1.15.0-beta.9 (8dc513d)
    • โšก๏ธ update changelog for v1.15.0-beta.8 (3b960c3)
    • incrementing version number - v1.15.0-beta.8 (34bb869)
    • โšก๏ธ update changelog for v1.15.0-beta.7 (e449ff9)
    • incrementing version number - v1.15.0-beta.7 (fd917b8)
    • โšก๏ธ update changelog for v1.15.0-beta.6 (a7f03b6)
    • incrementing version number - v1.15.0-beta.6 (a9019cb)
    • โšก๏ธ update changelog for v1.15.0-beta.5 (0e90064)
    • incrementing version number - v1.15.0-beta.5 (81e4c4d)
    • โšก๏ธ update changelog for v1.15.0-beta.4 (6c4aed8)
    • incrementing version number - v1.15.0-beta.4 (f2726a6)
    • โšก๏ธ update changelog for v1.15.0-beta.3 (11e2cca)
    • incrementing version number - v1.15.0-beta.3 (39178c2)
    • โšก๏ธ update changelog for v1.15.0-beta.2 (d8a9f1c)
    • incrementing version number - v1.15.0-beta.2 (59b50d0)
    • โšก๏ธ update changelog for v1.15.0-beta.1 (aeca19d)
    • incrementing version number - v1.15.0-beta.1 (4fa57fb)
    • incrementing version number - v1.15.0-beta.0 (bff8098)
    • incrementing version number - v1.14.3-beta.16 (d9a0503)
    • incrementing version number - v1.14.3-beta.15 (e2a253f)
    • incrementing version number - v1.14.3-beta.14 (9500871)
    • incrementing version number - v1.14.3-beta.13 (b5a2e4b)
    • incrementing version number - v1.14.3-beta.12 (f4c986a)
    • incrementing version number - v1.14.3-beta.11 (8618c32)
    • incrementing version number - v1.14.3-beta.10 (fa34171)
    • incrementing version number - v1.14.3-beta.9 (9945c40)
    • incrementing version number - v1.14.3-beta.8 (b5dcce9)
    • incrementing version number - v1.14.3-beta.7 (2531c44)
    • incrementing version number - v1.14.3-beta.6 (97088f6)
    • incrementing version number - v1.14.3-beta.5 (a33a8a5)
    • incrementing version number - v1.14.3-beta.4 (55b3e37)
    • incrementing version number - v1.14.3-beta.3 (5a5abf3)
    • incrementing version number - v1.14.3-beta.2 (bbab183)
    • incrementing version number - v1.14.3-beta.1 (2c06f6a)
    • incrementing version number - v1.14.3-beta.0 (3f87d5f)
    • โšก๏ธ update changelog for v1.14.2 (cd94c24)
    • incrementing version number - v1.14.2 (1e4d683)
    • โšก๏ธ update changelog for v1.14.2 (488e69f)
    • deps:
      • update dependency mocha to v8.2.1 (35e725d)
      • update dependency lint-staged to v10.5.1 (2fa78e4)
      • update dependency eslint to v7.12.1 (#8799) (224502d)
      • update dependency lint-staged to v10.5.0 (#8797) (1f2eca6)
      • update dependency eslint to v7.12.0 (#8791) (3108f62)
      • update dependency lint-staged to v10.4.2 (#8773) (4bfd008)
      • update dependency eslint to v7.11.0 (#8747) (bb85c05)
      • update dependency lint-staged to v10.4.1 (#8771) (08a240f)
      • update dependency mocha to v8.2.0 (#8772) (a471b1a)
      • update dependency eslint-plugin-import to v2.22.1 (aacf8f2)
      • update dependency eslint to v7.10.0 (#8687) (119ab71)
      • update dependency lint-staged to v10.4.0 (2833624)
      • update dependency eslint to v7.9.0 (b1d781e)
      • update dependency eslint to v7.8.1 (#8597) (3911027)
      • update dependency lint-staged to v10.3.0 (#8608) (dc1f1db)
      • update dependency mocha to v8.1.3 (#8588) (05efeff)
      • update dependency eslint to v7.8.0 (#8594) (e1b9814)
      • update dependency lint-staged to v10.2.13 (efc30e9)
      • update dependency mocha to v8.1.2 (#8579) (c722b0e)
      • update dependency grunt to v1.3.0 (df61d08)
      • update commitlint monorepo to v9.1.2 (877cdfb)
      • update dependency eslint to v7.7.0 (#8564) (f1398da)
      • update dependency jsdom to v16.4.0 (#8554) (bb8f7c7)
      • update dependency eslint-config-airbnb-base to v14.2.0 (#8396) (fde4f11)
      • update dependency eslint-plugin-import to v2.22.0 (#8390) (788a8bf)
      • update dependency mocha to v8.1.1 (fe352eb)
      • update dependency eslint to v7.6.0 (#8540) (3741837)
      • update dependency mocha to v8.1.0 (#8536) (72a7883)
      • update dependency @apidevtools/swagger-parser to v10.0.1 (#8517) (8c498fa)
      • update dependency nyc to v15.1.0 (#8353) (c872bd8)
      • update dependency eslint to v7.5.0 (#8463) (b2be329)
      • update dependency jsdom to v16.3.0 (#8483) (82ada1b)
      • update dependency grunt to v1.2.1 (#8462) (b2dc6d6)
      • update dependency @apidevtools/swagger-parser to v10 (9e2c3ce)
    • writeapi: cleanup (f678247)
    ๐Ÿ†• New Features
    • โž• add back error handling for a number of api calls (1afd215)
    • ๐Ÿšš #8823, remove hardcoded write concern (a338f52)
    • #8817, add login clientside hooks (715775a)
    • ๐Ÿ‘‰ use github actions for ci (#8811) (eddf4a4)
    • ๐Ÿ‘ allow mods/admins to see deleted posts on user profile (6e85920)
    • rearrange buttons on manage/users (27016d2)
    • 0๏ธโƒฃ #8801, disable express compression by default (6ac73cc)
    • ๐Ÿ‘ allow passing subset of user settings on update route (ec03af7)
    • โœ… wip, write api tests framework (b156b8b)
    • โž• add filter:category.getFields (88a07e6)
    • ๐Ÿšš move postercount to topic hash (0db0231)
    • โž• add free and total mem usage to info (a7b6d0d)
    • ๐Ÿ†• new filter filter:teasers.configureStripTags (177a961)
    • send 'Vary' header when ACAO header set (d68ffea)
    • โž• add filter.topics.getPostReplies (7a01949)
    • topic reply to use api lib (also + missing file) (21974a7)
    • send 401 for invalid-uid (ede9435)
    • async/await admin/search (c913900)
    • โœ… ignore test folder (2927509)
    • send back 403 on no-privileges error (14f9d8b)
    • ๐Ÿ”จ refactor groups.delete (8ae1f81)
    • ๐Ÿšš move groups.join to api (d69e503)
    • ๐Ÿ‘ allow plugins to define api routes (9dd3cc0)
    • ๐Ÿ”ง require https if nodebb is configured with https url (a4ba238)
    • โž• add nyc config (3326d80)
    • ๐Ÿ”„ change user search to use filters array (a2edb86)
    • โž• add filter (959314c)
    • require csrf token if not using bearer token (1e07886)
    • #8662, verified/unverified user groups (682e926)
    • ๐Ÿ›  more fixes (700e1e4)
    • more work (40a05b7)
    • wip admin/users (b038ac0)
    • set unread false for guests (7beaf49)
    • โž• add stack to deprecate message (01265d0)
    • โž• add checkbox tests (d76229c)
    • โž• add test for serialize/deserialize form (e92d471)
    • โœ… disable write api tests until fixed (ae5fb10)
    • ๐Ÿ—„ #8734, add slugify module, deprecate utils.slugify (bddfcb5)
    • ๐Ÿ“ฆ #8734, move bootstrap-tagsinput to package.json (f16c826)
    • ๐Ÿ“ฆ #8734, move deserialize/serialize to package.json (eab7489)
    • ๐Ÿšš #5964, #8734 remove colorpicker (948f261)
    • ๐Ÿšš #8734 remove unused files (c721625)
    • ๐Ÿ“ฆ #8734, move sortable to package.json (cc705e5)
    • ๐Ÿ“ฆ #8734, move bootbox to package.json (300a875)
    • load jquery-form before using (3b23136)
    • ๐Ÿ’ป #8734, jquery-ui, jquery-form, timeago (#8748) (fda2aed)
    • โœ‚ remove unused textcomplete file (59311a6)
    • ๐Ÿšš #8734, remove semver.browser (ae3a231)
    • ๐Ÿ“ฆ #8734, move slideout to package.json (2c1897b)
    • ๐Ÿ“ฆ #8734, move tinycon to package.json (9c157de)
    • ๐Ÿ“ฆ #8734, move visibilityjs to package.json (43589a7)
    • ๐Ÿ“ฆ #8734, move nprogress to package.json (a46cbb6)
    • ๐Ÿ“ฆ #8734 move r.js to package.json (aa08f88)
    • revoke user sessions above threshold (#8731) (b3ed26a)
    • ๐Ÿ”Œ filter:settings.get plugin hook (c7d15df)
    • ๐Ÿ”’ topic delete/restore/purge/(un)pin/(un)lock (da25ce4)
    • โž• add new api page to ACP menu (5fc7e7b)
    • management of API tokens via ACP (49652e6)
    • โž• added DELETE /api/v1/categories/:cid route (3072de4)
    • โž• added PUT /api/v1/categories/:cid route (e942ad8)
    • โž• added POST /api/v1/categories route (dc666fd)
    • โž• added PUT/DELETE /api/v1/users/:uid/ban routes (a5af2dc)
    • โž• added POST and DELETE /api/v1/users/:uid/follow routes (b5bbcba)
    • โž• added PUT /api/v1/users/:uid/password route (7aed174)
    • โž• added DELETE /api/v1/users/:uid and DELETE /api/v1/users (a1ddc21)
    • โž• added openapi.yaml file for BEST documentation (91b79f1)
    • โž• added checkRequired middleware for API calls (7b6d43b)
    • migrating write-api skeleton into core (ec5c48b)
    • โœ‚ remove post/header selector (1542a5d)
    • category filter on post queue (#8710) (5d9a868)
    • #6594, add top/popular sections to digest email (#8709) (e60357d)
    • ๐Ÿ”Œ dedicated sorting buttons for plugin ordering in ACP (1761e13)
    • #8233, search sub categories (54737d3)
    • ๐Ÿšš move service-worker.js into its own file (f4d76f1)
    • ๐Ÿ“ˆ analytics:maxCache setting in ACP (14ba1a6)
    • #8695, allow sort for guests (ea0f326)
    • up recommended size to 512x512 + ACP labels for PWA (9c5b690)
    • upload maskable icon for PWA (6478b32)
    • ๐Ÿ”Œ show top 5 trending plugins in new tab in Extend > Plugins (b12e8d6)
    • ๐Ÿ‘ท register service worker, #8126 (aa268d5)
    • โž• add theme-color meta tag for browser address bar (5172d73)
    • ๐Ÿ‘€ basic service worker, minimum requirement for for a2hs; see #8126 (f69697b)
    • ๐Ÿ”ง option in ACP to configure notification/email delay for chats (5b427a0)
    • ๐Ÿ‘ allow autocomplete to pass optional params to user.search (611f3c6)
    • ๐Ÿ”Œ upon plugin installation via ACP, check against nbbpm first (5ddf702)
    • up benchpress (8e88ccd)
    • โž• add row highlighting for popular and unread (2cd5f95)
    • return to previous page and/or category after marking topic unread (48a8ec4)
    • โž• add missing lang key (bd9b6c9)
    • โž• add number of posters to topic (83d4e7e)
    • hightlight matches in quick search (f2f3ba4)
    • โž• add loading indicator (d38c872)
    • ๐Ÿ‘ allow plugins to override tags and tag counts (8159509)
    • โœ… edit test (ccddbb1)
    • โž• add x-posts/x-votes keys (23de561)
    • ๐Ÿ‘ allow adding nested replies to a target component (ddc0ac3)
    • hotkey "/" to open ACP search (43571ba)
    • ctr-s for save on privileges page too (763cec3)
    • ctrl-s now saves on settingsv1/v2 forms (8093142)
    • single href (6669b23)
    • ๐Ÿ‘ allow passing in container to threadTools (7148be2)
    • ๐Ÿ”ฆ expose calculateTopicPostCount and getChildrenTree (4374243)
    • ๐Ÿ‘ allow custom req.query.filter on /unread /recent (de82400)
    • fullname search (#8641) (4be693f)
    • โœ… sorted set lex test (9389749)
    • โž• add topicIndex to category page (c1c617b)
    • up lavender/slick (34eb1bd)
    • ๐Ÿ”€ switch to using topic/select component for merge (f6d5646)
    • ๐Ÿšš undo for posts move (762e9fe)
    • ๐Ÿšš #8626, new move posts modal (5a40d26)
    • ๐Ÿ”จ refactor app.js (5002e0f)
    • โœ‚ remove global RELATIVE_PATH (19c4486)
    • โœ‚ remove app.template (3cd3b7a)
    • โœ‚ remove global window.templates (630bac2)
    • โœ‚ remove app.isConnected, use socket.connected (fddeb5c)
    • ๐Ÿ‘‰ use const/let (6fc31df)
    • ๐Ÿ‘ allow nbb to work with cloudflare rocket loader ๐Ÿš€ (4d66595)
    • ๐Ÿšš move code (53a5f15)
    • #8602, dont send emails to unconfirmed addresses (b6917b9)
    • โž• add partials/footer/js.tpl (94da9fe)
    • โž• add missing name to profile image upload (54b4972)
    • โž• add action:user.removeCoverPicture (b0a7592)
    • โž• add user data to action:user.removeUploadedPicture (962446a)
    • โž• add userData to action:user.delete (9542ef1)
    • โฌ†๏ธ force upgrade scripts for test (1b7ba2c)
    • replace relative urls to absolute before sending email notifs (1e5981c)
    • โž• add client side action:flag.create (09de364)
    • โž• additional sorting options for flags (0c20351)
    • ๐Ÿ†• new filter hook prior to post queue addition (8cc36de)
    • โž• add replies to getPostSummaryByPids (a9dfc9a)
    • โž• add reply count to getPostSummaryByPids (de0f4aa)
    • theme work for #8580, closes #8580 (6e805c1)
    • ๐Ÿ‘ allow undo of topic move (abb5e81)
    • โž• added alert.timeoutfn (cd8e796)
    • sort dependencies alphabetically (a4dbbc3)
    • up persona (af9f328)
    • banning a user will resolve their post flags (354e6cc)
    • theme changes for #8571 (5415c01)
    • logic for bulk actions in flags list, #8571 (a3a2279)
    • ๐Ÿ”ฆ expose global/admin privileges to all routes (4737f93)
    • โž• additional tests for #8569 (e047b72)
    • flags list sorting, closes #8569 (346db0d)
    • up theme (bd557af)
    • ๐Ÿ‘ allow adding multiple users to group (35a538e)
    • โž• add filter:group.getOwnersAndMembers (f1e82b6)
    • pass uid into filter:flags.list (9c70b66)
    • โž• added security policy for github (45c8de1)
    • up deps (b97b51a)
    • โœ… one more test (a333cb6)
    • โœ… tests for password change (ecda4ad)
    • limit privileges column to superadmins only (0903eb4)
    • ๐Ÿ‘‰ use nodebb-scoped bootswatch (12edd18)
    • ๐Ÿ‘‰ use assetBaseUrl instead of hardcoding (6e91885)
    • load timeago strings client-side (558a2d7)
    • +assetBaseUrl, -l10BaseUrl, -requireBaseUrl (9adaccd)
    • โฌ†๏ธ #8550, add upgrade script test (b61a4da)
    • ๐Ÿ”Œ #8493, plugin helper for standardised link/button injection (0bbb813)
    • ๐Ÿ‘‰ show event/params on error (d6baf5c)
    • introduce overridable l10nBaseUrl config value (def16f9)
    • ๐Ÿ‘ allow multiple empty lines (58933c4)
    • โœ‚ remove administrator property from public routes (dfabd0a)
    • focus username when modal is shown (4216c27)
    • โž• add helmet middlewares (774e5d0)
    • more discrete commit-on-save instead of commit-on-change w/ confirm modals (#8541) (a716a55)
    • โž• add ability to search groups in group details page (e7a502e)
    • ๐Ÿ‘‰ use category selector in category page (fb7bb8d)
    • ๐Ÿ›  css fixes (560f3eb)
    • โž• add privileges shortcut to groups list (91411cc)
    • ๐Ÿ‘ allow passing groupName to user.search (f89ec20)
    • #8531, closes #8531 (292d490)
    • ๐Ÿ‘ allow direct link to flag from post tools, #8531 (c705e08)
    • ๐Ÿ‘ allow changing requirejs base url (c4829fd)
    • ability to clear cache from acp (bbc7737)
    • โฌ‡๏ธ reduce amount of data loaded on acp admin page (8d8117f)
    • โœ‚ remove require fallback for plugins (303bffd)
    • โœ‚ remove /assets/stylesheet.css (762b0be)
    • โž• add node 14 (6250a2e)
    • ๐Ÿ‘‰ make category tools in acp a dropdown (24535a6)
    • series upload (37e56d9)
    • resolve flag on delete/purge/ban/delete account (8bd63f6)
    • 8502, don't change topics sitemaps on every reply (e045436)
    • ๐Ÿ‘ allow building custom languages during dev (0a9ea91)
    • โž• add link-plugins.sh (cc86f07)
    • โœ‚ remove deprecated utils.walk (609e37a)
    • consolidation of flags to reduce flagspam, #8510 (55b0e90)
    • ๐Ÿ”„ change invalid language codes to default lang (3761f05)
    • โž• add npx, fixes ghfw (a294e1c)
    • โœ‚ remove topics.async.getTopicData usage (ce6b20c)
    • โœ‚ remove deprecated checkGlobalPrivacySettings (0cea713)
    • โœ‚ remove deprecated isAdmin method (a0da2ba)
    • โœ‚ remove file.isFileTypeAllowed (2cdb935)
    • โœ‚ remove deprecated hooks (4eae927)
    • โšก๏ธ update readme (9869064)
    • up node version to 10 (b39e014)
    • highlight privs row if group is added / navigating from group page (10e4ae6)
    • prevent navigation away from groups page if changes are unsaved (53f6139)
    • quick access dropdown on groups page to access privileges page (2c83278)
    • #8524, allow editing category of queued topic (844f2b4)
    • โœ‚ remove js-enabled (ff3c343)
    • โœ‚ remove js-enabled.css (ec05783)
    • dont load all subscribers at once (2a5f8ab)
    • short more info (23a9a33)
    • #8521, allow editing title before posting from queue (2485a55)
    • ๐Ÿ‘‰ show language when key isn't found (764969a)
    • ๐Ÿ‘ allow searching categories in ACP (1e7397b)
    • #8509, don't scroll chat to bottom if user scrolled up (320008c)
    • โž• added quick link to edit privileges on the category edit page (06143ca)
    • hide some filters behind 'more filters' button (9fb9185)
    • collapsible daily flags graph (d52d7bd)
    • acp: autocomplete user search for welcome notifications (d40779a)
    • writeapi:
      • user settings API (c26f2b6)
      • commented-out stub code for file upload (cfee431)
      • file deletion route (f870721)
      • admin settings update route (a55b381)
      • token generation/delete routes, ACP updates (2ec838f)
      • post bookmarking (0973fee)
      • post voting (9942c24)
      • post delete/restore/purge (414169f)
      • post editing (f66c2fb)
      • topic tags (1605e5e)
      • topic follow/ignore (9be5629)
      • adding missing files (6096f74)
      • topic posting and replying (4c833d0)
      • added DELETE /groups/:slug/membership/:uid route (40dc1c3)
      • added group joining and deletion (952dc21)
      • abstracted ajax calls out to new api module (d044c32)
      • added POST /api/v1/groups (ba345e5)
    • openapi:
      • schema validation for write api definitions file (87e3f26)
      • refactor into indiv. files to match API & tpl routing (ffbf2d6)
      • refactor into indiv. files to match API & tpl routing (84f5e4c)
    ๐Ÿ› Bug Fixes
    • deps:
      • update dependency nodebb-plugin-composer-default to v6.4.6 (b44c7e9)
      • update dependency nodebb-plugin-spam-be-gone to v0.7.3 (f06d487)
      • update dependency nodebb-theme-vanilla to v11.3.0 (0d80190)
      • update dependency textcomplete to 0.18.0 (df5d66e)
      • update dependency nodebb-theme-persona to v10.2.65 (0c7d586)
      • update dependency jsesc to v3.0.2 (#8802) (c443129)
      • update dependency nodebb-plugin-composer-default to v6.4.5 (7d0d000)
      • update dependency nodebb-theme-persona to v10.2.63 (b3ca7de)
      • update dependency nodebb-theme-persona to v10.2.62 (#8798) (12c590a)
      • update dependency nodebb-plugin-mentions to v2.13.1 (#8790) (8353857)
      • update dependency nodebb-theme-persona to v10.2.61 (#8794) (9de8497)
      • update dependency benchpressjs to v2.0.8 (#8767) (3b88545)
      • update dependency sharp to v0.26.2 (#8765) (42aed15)
      • update dependency nodebb-rewards-essentials to v0.1.4 (#8764) (25c447d)
      • update dependency nodebb-theme-persona to v10.2.60 (dcf7235)
      • update dependency nodebb-plugin-mentions to v2.13.0 (#8758) (411fa8b)
      • update dependency nodebb-theme-persona to v10.2.59 (#8755) (cd34bfb)
      • update dependency nodebb-theme-persona to v10.2.58 (#8754) (a77ba71)
      • update dependency nodebb-plugin-composer-default to v6.4.4 (#8752) (0399ffa)
      • update dependency benchpressjs to v2.0.7 (#8733) (f8e2324)
      • update dependency nodebb-plugin-composer-default to v6.4.3 (#8750) (666064b)
      • update dependency nodebb-theme-persona to v10.2.57 (#8749) (1c94220)
      • update dependency nodebb-theme-persona to v10.2.56 (414fe19)
      • update dependency nodebb-theme-slick to v1.2.39 (1bc9941)
      • bump vanilla/persona (944a7e0)
      • update dependency nodebb-theme-lavender to v5.0.14 (#8739) (43df4b8)
      • update dependency socket.io-client to v2.3.1 (#8700) (ba62ebb)
      • update dependency nodebb-theme-slick to v1.2.37 (#8741) (45aceb2)
      • update dependency nodebb-theme-vanilla to v11.2.21 (#8740) (0c7af50)
      • update dependency nodebb-theme-persona to v10.2.54 (#8736) (4207dde)
      • update dependency nodebb-theme-persona to v10.2.52 (#8735) (70c085b)
      • update dependency nodebb-theme-persona to v10.2.51 (#8729) (bae2ead)
      • update dependency nodebb-theme-persona to v10.2.50 (#8727) (804729f)
      • update dependency nodebb-theme-persona to v10.2.49 (#8722) (b01bc2a)
      • update dependency nodebb-theme-persona to v10.2.48 (#8721) (0170261)
      • update dependency nodebb-theme-persona to v10.2.47 (#8720) (04b1daa)
      • update dependency nodebb-theme-persona to v10.2.46 (#8719) (ba906d7)
      • update dependency nodebb-plugin-composer-default to v6.4.2 (#8718) (229421e)
      • update dependency nodebb-plugin-composer-default to v6.4.0 (#8716) (b3a24f7)
      • update dependency nodebb-plugin-mentions to v2.11.0 (#8714) (c95a389)
      • update dependency nodebb-theme-slick to v1.2.36 (#8713) (fc2795d)
      • update dependency nodebb-theme-vanilla to v11.2.20 (#8715) (2b0deeb)
      • update dependency nodebb-theme-persona to v10.2.45 (#8711) (f14b494)
      • update dependency nodebb-theme-persona to v10.2.43 (#8701) (1d0eaaf)
      • update dependency nodebb-theme-persona to v10.2.42 (2a1da61)
      • update dependency nodebb-theme-vanilla to v11.2.18 (#8697) (9bdef70)
      • update dependency nodebb-theme-slick to v1.2.34 (#8696) (3e2816a)
      • bump persona (f17d42e)
      • update dependency sanitize-html to v2 (1e5621c)
      • update dependency nodebb-theme-persona to v10.2.39 (#8684) (d0010c4)
      • update dependency nodebb-theme-persona to v10.2.38 (#8683) (bb04f14)
      • update dependency json2csv to v5.0.3 (30aa7e8)
      • update dependency nodebb-theme-persona to v10.2.36 (#8680) (07172b6)
      • update dependency nodebb-theme-persona to v10.2.35 (#8679) (68a5e7e)
      • update dependency json2csv to v5.0.2 (5a2adb4)
      • update dependency nodebb-theme-persona to v10.2.33 (#8675) (abe8377)
      • update dependency nodebb-theme-persona to v10.2.31 (#8673) (80dbf97)
      • update dependency nodebb-plugin-composer-default to v6.3.57 (#8672) (7ecac97)
      • update dependency nodebb-theme-persona to v10.2.30 (#8671) (c8a7563)
      • update dependency nodebb-theme-persona to v10.2.24 (#8663) (72cd5f1)
      • update dependency postcss to v8.0.6 (#8657) (55921cc)
      • update dependency validator to v13.1.17 (#8659) (0123209)
      • update dependency sharp to v0.26.1 (#8660) (b175d67)
      • update dependency nodebb-widget-essentials to v4.1.2 (#8658) (dc0a4a4)
      • postcss and autoprefixer version incompatibility (70d3ad0)
      • update dependency nodebb-plugin-mentions to v2.10.0 (5ea172f)
      • update dependency autoprefixer to v10 (6067948)
      • bump theme versions (685633d)
      • update dependency nodebb-plugin-composer-default to v6.3.56 (#8648) (8089387)
      • update dependency nodebb-theme-persona to v10.2.22 (c5ca260)
      • update dependency nodebb-theme-vanilla to v11.2.16 (8acdf3f)
      • update dependency nodebb-theme-persona to v10.2.21 (ed0469b)
      • update dependency nodebb-theme-vanilla to v11.2.15 (134ebba)
      • update dependency nodebb-theme-vanilla to v11.2.14 (31635e3)
      • update dependency nodebb-theme-persona to v10.2.20 (2a13e58)
      • update dependency mongodb to v3.6.2 (#8634) (4969c86)
      • update dependency nodebb-theme-vanilla to v11.2.13 (#8633) (8137cdc)
      • update dependency nodebb-theme-persona to v10.2.19 (#8632) (37e37c8)
      • update dependency nodebb-theme-vanilla to v11.2.12 (#8628) (7ab8707)
      • update dependency nodebb-theme-persona to v10.2.18 (#8627) (2740655)
      • update dependency nodebb-theme-vanilla to v11.2.11 (#8624) (fd6259c)
      • update dependency nodebb-theme-persona to v10.2.17 (#8623) (a1d310b)
      • update dependency nodebb-theme-slick to v1.2.30 (#8620) (251ea79)
      • update dependency nodebb-theme-persona to v10.2.16 (#8618) (0d85dc4)
      • update dependency nodebb-theme-vanilla to v11.2.10 (#8619) (b52301b)
      • update dependency nodebb-theme-vanilla to v11.2.9 (#8616) (69373fd)
      • update dependency nodebb-theme-persona to v10.2.15 (#8614) (3c0540c)
      • update dependency socket.io-redis to v5.4.0 (#8600) (5ba23f2)
      • update dependency nodebb-theme-vanilla to v11.2.8 (#8599) (97e3543)
      • update dependency nodebb-theme-persona to v10.2.12 (#8598) (1bb0896)
      • update dependency nodebb-plugin-composer-default to v6.3.55 (#8606) (dfeb65b)
      • update dependency nodebb-plugin-markdown to v8.12.1 (27426c0)
      • update dependency nodebb-theme-vanilla to v11.2.5 (64f4179)
      • update dependency nodebb-theme-persona to v10.2.10 (777419b)
      • update dependency sharp to v0.26.0 (#8578) (7ca967e)
      • update dependency ipaddr.js to v2 (49aeda0)
      • update dependency nodebb-theme-lavender to v5.1.0 (87674d6)
      • update dependency nodebb-theme-persona to v10.2.5 (8032c8b)
      • update dependency helmet to v4 (#8543) (ad68a33)
      • update dependency mongodb to v3.6.0 (#8535) (4160e82)
      • update dependency nodebb-theme-persona to v10.2.4 (#8544) (b30ecff)
      • update dependency nodebb-theme-persona to v10.2.1 (#8529) (7a59c2f)
      • update dependency nodebb-plugin-composer-default to v6.3.53 (d24a4bd)
      • bump themes (b714ed2)
      • update dependency commander to v6 (#8518) (75fb2a4)
      • update dependency archiver to v5 (#8523) (f1cc4e2)
      • update dependency lru-cache to v6 (#8490) (2941b9f)
      • update dependency connect-redis to v5 (#8480) (9c17a67)
      • update dependency nodebb-plugin-composer-default to v6.3.52 (#8522) (ac257a6)
      • update dependency nodebb-theme-persona to v10.1.68 (#8520) (f06b1ce)
      • update dependency nodebb-plugin-mentions to v2.9.3 (#8516) (b5df576)
      • update dependency nodebb-plugin-dbsearch to v4.1.2 (649c64e)
      • update dependency nodebb-plugin-mentions to v2.9.2 (91bdc12)
      • update dependency nodebb-plugin-composer-default to v6.3.51 (0e13fd0)
    • ๐Ÿ— check is banned in buildHeader (4b63f99)
    • undefined call (518d4fa)
    • missing await (08ff404)
    • client side crash when creating groups (5a2b14b)
    • disallow registration attempts with password length > 4096 (c0f699e)
    • missing await (4818ec3)
    • โœ… broken test (87bff6c)
    • โšก๏ธ updated commitlint config to allow longer subjects, because nobody anywhere uses an email client that limits subject lines to 72 characters (a53d49a)
    • โช restore old behaviour of empty json w/ 401 code in admin middleware (dda5d42)
    • ๐Ÿ—„ deprecate middleware.isAdmin (15e0731)
    • ๐Ÿ”Œ post editing not taking plugin hook results into account (4439864)
    • #8805 define our own name for write API v3 (57ed6be)
    • โœ‚ removed superfluous assignment (a08fb8e)
    • ๐Ÿ— createNewPosts to build tpl with ajaxify.data (0b6ef61)
    • ๐Ÿ– handle ACP category enable/disable states after call success (bff53de)
    • โœ‚ remove setCategorySort and setTopicSort (a6a5243)
    • sort setting not using correct field name (9082062)
    • โšก๏ธ update readme to include psql (2d29e60)
    • ๐Ÿ’ฅ breaking test from 0db0231 (cc1c722)
    • indentation (04185d9)
    • โž• add back derpy 20 second sleep (8e7914f)
    • โœ… missing method in test error output (3ebb3a3)
    • topic object in post editing data return (3c98cd3)
    • ๐Ÿ› bug where token generation route would fail on null case (618e098)
    • typo (2e9f27d)
    • return early for guests/spiders (203db47)
    • #8789,cache meta.settings (156e139)
    • spec (7a31835)
    • โœ… tests (63e07c9)
    • #8781 (db63f5e)
    • reset button loading html (1a4c0de)
    • ๐Ÿšš #8779, fix move all (e6440c0)
    • ๐Ÿ‘ allow admins adding users to global moderators (1f43e98)
    • incorrect logic for post history editable bool (a691be5)
    • ๐Ÿ”ง [breaking] send configured config URL as origin if not custom (205a103)
    • โช #8776 some users unable to restore old versions via history (7a8f704)
    • #8595, dont save escaped data when renaming groups (b26e9b5)
    • keep sortBy while searching (3ee4936)
    • autocomplete.user on search page (85cfe49)
    • spec (cf474ab)
    • sortby (7bddec9)
    • #8774 (b3619d3)
    • #8732 (c107649)
    • #8630, sort extra deps (e362c34)
    • missing doTopicAction, fix wrong api params (e78c498)
    • โœ… test (8fd3c04)
    • appropriate 404 handling for write API calls (b6cce75)
    • redis hget (b2ff159)
    • reimplementing isPrivilegedOrSelfAndPasswordMatch (e98285d)
    • socket user bans (3f347ba)
    • โœ… broken tests from api change (222b4c9)
    • โœ… tests (7d86be2)
    • ๐Ÿ– handler for group.join (51a60d3)
    • โž• add missing file (d07f008)
    • #8768 (4418ff0)
    • api bug where user profile editing continued even if not allowed (cc6e995)
    • ๐Ÿ— module build (bae0f34)
    • โœ… tests (b295d15)
    • csrf token only on non-GET routes (20bb9c7)
    • avatar selector (4b9444f)
    • โœ… test (e6ea71c)
    • timestamp (8c6a559)
    • #8763 (331d236)
    • lastonline again (a481024)
    • caret (71d82ec)
    • lastonline values (97628e2)
    • โฌ†๏ธ upgrade script (1289c10)
    • cant join system groups (59bbede)
    • โœ… tests (a411df1)
    • โšก๏ธ update server param to /api/v3 (0e0f150)
    • typo (c68653d)
    • โœ… testing openapi write tests (7aa4d10)
    • โœ… enable tests (7b2301f)
    • โœ… test fix for write API (54e6003)
    • password reset to invalidate all existing reset tokens for that uid (30b3fed)
    • ๐Ÿ‘‰ show more lines (ba2e1c4)
    • ๐Ÿคก #8756, pass missing req to mock (30d6a2b)
    • #8757, allow all slashes in category route (1ee9384)
    • โœ… timeago test for dev/prod (7db224f)
    • โœ… timeago test (cecdd29)
    • undefined api require, @julianlam (931d44b)
    • watch tooltip (e2d407b)
    • module name (aedd28e)
    • ๐Ÿ“Œ pin sortablejs (8f436eb)
    • admin jquerui requires (75c9668)
    • timeago locale switch (8c019a6)
    • category RSS feed was displaying deleted topics (9a5b8a7)
    • #8734 make nprogress module (45e8a4d)
    • regression caused by 7545951 (8af30a5)
    • dont allow adding duplicates to privileges page (12c8b1c)
    • #8728, dont add admins to table (f259063)
    • โœ‚ remove debug log (675a62d)
    • โœ… tests (adcadbb)
    • ๐Ÿ”€ bad merge w/ category ACP page (cb9369f)
    • bad logic in group assertion middleware (8e89f34)
    • errors thrown if no password sent in to profile edit route (7757f96)
    • ๐Ÿ› bug where middlewares seemingly ran in parallel (549ca11)
    • follow route to match spec (db5c5b2)
    • missing one property in openapi doc (af2e424)
    • error handling with POST /api/v1/users (d8879d2)
    • ๐Ÿ‘‰ use POST call for user creation in ACP (58043e0)
    • โšก๏ธ user creation POST route returns user data, updated openapi spec (bba2a46)
    • selector, so it doesnt effect suggested topics (7138d43)
    • ๐Ÿ‘‰ use proper api url (264818e)
    • ๐Ÿš€ tests, get latest release tag recursively (8eb62e2)
    • ๐Ÿ“œ use app.parseAndTranslate instead of benchpress.parse (fc603a5)
    • sorted list delete button (20e0cc5)
    • unable to register async method as response hook listener (dde5b6b)
    • ๐Ÿ“Œ dont allow sorting pinned topics on recent (b955fd3)
    • ๐ŸŒฒ use console.info instead of console.log for sw registration (3c7f79c)
    • spec (7cd83b9)
    • spec (6924eb6)
    • โœ… test (cb2f6f7)
    • dont let mods load postqueue for a cid they are not a mod of (7bf6d3b)
    • ๐Ÿ‘‰ show disabled categories in admin&mods (2ea9768)
    • prevent mutiple highlighted rows on category/topic pages (60afb11)
    • spec (fbd8568)
    • do not show TOC if fewer than 2 headings (f1de084)
    • params cached in autocomplete module (caa8c00)
    • ๐Ÿ—„ #8686, deprecate plugin.json/library (#8705) (017af63)
    • โšก๏ธ updating minimum node version in readme (d3951eb)
    • โšก๏ธ update "install plugins" link to go to the download tab (5441651)
    • ๐Ÿ”Œ overflow on submitPluginUsage field (c56236f)
    • #8699 tags route is case sensitive, though tags are not (38f88fc)
    • early button/anchor clicks do nothing (8437130)
    • early button/anchor clicks do nothing (966d3f7)
    • ๐Ÿ”Œ error on reset -p if plugin is not active (7f58e3a)
    • ๐Ÿšš manifest test + remove duplicate test (bf3c1c0)
    • ๐Ÿ”Œ typo in getCompatiblePlugins (07af621)
    • typo (54705cc)
    • manifest - use absolute URL for start_url (31528a5)
    • prefer webmanifest extension over json (46800b6)
    • โšก๏ธ update notification delay ACP help text (4c1e717)
    • #8681 change owner modal's search should check if user is banned (b6f2f0e)
    • โž• add img-responsive to post queue post items (f8032cd)
    • language key in reset password (2ad3305)
    • ๐Ÿšš issue where the last flag filter could not be removed (0fffe28)
    • multiword match highlight (f8ef380)
    • tooltip placement on navbar search (82ab6cd)
    • rogue tooltip on navbar profile icon (683c01b)
    • #8580, @julianlam (445a840)
    • topic count on category page if filter is author (bbf6889)
    • match api when modifying ajaxify.data.deleted (int, not bool) (703ac1b)
    • ๐Ÿ”’ lock/unlock toggle issue (9a7c3c6)
    • #8665, trim email before checking validity (ac43cd8)
    • editing posts saving uncessary data (e72fe25)
    • api spec (654d583)
    • #8640, add bookmarks to intFields (4f14dc7)
    • ๐Ÿ”„ change user tooltip container to content (02a48e1)
    • โœ… auth tests (fe2dc31)
    • #8656, rename /api/me to /api/self (af43f0e)
    • โž• add user tooltips to body (047c414)
    • โœ… tests (22cd265)
    • ๐Ÿ‘‰ use correct topic count for category (220297d)
    • clear old value on focus (42298fe)
    • skip elements if they dont have proper index (c9c9dd2)
    • call to reskin (99f24c5)
    • ๐Ÿšš move necro-post to be in-line with posts (44309ee)
    • โœ… tests, because redis is TOO FAST (4fca793)
    • โœ‚ remove old test (5e8c376)
    • client side crash if there are no topics (a8e18fd)
    • #8418 (38d3982)
    • typo (0891236)
    • โœ… tests (65d049c)
    • check if unread_tids are followed (2d5bd15)
    • openapi (e909409)
    • ๐Ÿ”’ dont use hardcoded fontawesome icons for lock pin (632793b)
    • โฑ #8629 and change undo timeout to 10 seconds (65d94a3)
    • alert_id selector (2bebdf0)
    • ๐Ÿ‘‰ use text-right (a78e1df)
    • โœ‚ remove lang keys, remove sounds menu (a34b685)
    • lavender version (8a75236)
    • โœ… tests (e3a0b4b)
    • wider widget area (4bace77)
    • bypass nbbpm for now (33c1bd5)
    • #8432, add CSP frame-ancestors (46ab271)
    • ๐Ÿ‘ allow setting maximumAboutMeLength to 0 (4588e52)
    • โž• additional commit for CF rocket loader (a38784f)
    • stack trace (4031a8c)
    • #8604 (a263897)
    • don't toggle elements if there is no inputEl (57f67e2)
    • don't crash on outdated redis instances (896fe9d)
    • โšก๏ธ update post-queue hook names (0e58d2b)
    • accept/reject in post-queue instead of accept/delete (694f4b2)
    • ๐Ÿ†• new openapi def for replies addition (b587127)
    • #8582 (9f9164a)
    • ๐Ÿฑ debug logging ๐Ÿถ (fb3b4a0)
    • ip-blacklist not working after #8580 (56101ae)
    • ip-blacklist not working after #8580 (c681b4b)
    • post-queue not working after #8580 (dc5bd76)
    • #8411 missing language sources for ip-blacklist/post-queue (a93e195)
    • โœ‚ removed invalid options for the sendmail transport (#8576) (2b78562)
    • ๐Ÿšš missing localisation for topic move error (bacee6b)
    • select all checkbox does not re-enable bulk actions button (5d60dce)
    • dupes in unread followed topics (55533b1)
    • wrong data passed to getCategories (39f4bba)
    • openapi spec (4f7cfd5)
    • api spec (c4ad14c)
    • ๐Ÿ‘‰ username, email history disappering if content was deleted (91d9333)
    • up composer (9fd3775)
    • ๐Ÿ“ฆ package-install clobbering scoped nodebb plugins (840cb51)
    • empty "manage" menu showing in ACP (4b0cb26)
    • hide nodebb version in ACP for non-superadmins (cc26860)
    • ๐Ÿ”„ change how admin middlewares are exported (f00595b)
    • one less return, to appease codeclimate (ae68a25)
    • inability to access /admin if not superadmin (03bd76d)
    • โฌ†๏ธ #8560, fix old upgrade script (29e3ab2)
    • ๐Ÿ‘‰ use promises in privilege save (9cbe938)
    • overzealous click handler on flag list row (7a5daff)
    • ๐ŸŒฒ +comment, -debug log (9608b44)
    • multiple alerts in the same millisecond overwrite each other (589216e)
    • โœ… reintroduce 20s delay for api tests (5639379)
    • client-side error in flags/detail (b2271eb)
    • #8570 (7daba7d)
    • sorting the flags list by newest is not considered a filter (3efe236)
    • โœ… flag list tests due to breaking change in API (360aa00)
    • no-widgets messaging in ACP + copy (334be11)
    • #8568 perPage not acting like a filter (cabe62a)
    • #8562 (31c2b7d)
    • โฌ†๏ธ progress bar clobbering upgrade script name (2adae87)
    • โšก๏ธ tweak upgrade script progress bar to only update 100 times in total (ac75c9a)
    • โฌ†๏ธ navigation title unescape upgrade script tweak (80a2a70)
    • ๐Ÿ†• new language key for error handling (7456a0e)
    • โฌ†๏ธ upgrade scripts not run properly if schemaDate is present (de8eebb)
    • #8556, catch errors from admin check (bfaf648)
    • โฌ†๏ธ upgrade script for 1.15.0 (3268273)
    • improper targetUid check during password change (16cee1b)
    • โฌ†๏ธ #8547, remove old deps during upgrade (#8557) (1d170e0)
    • #8558, only navigate if user is in same topic (79e847d)
    • โฌ†๏ธ upgrade script (231d34d)
    • โฌ†๏ธ don't allow duplicate upgrade script names (8887f0e)
    • โœ… tests (d6297b2)
    • send hard 404 instead of soft 404 for missing modules (9f3b781)
    • #8549 send 308 Permanent Redirect on topic/category shortlinks (68f8d6e)
    • โœ‚ remove default helmet (c39c511)
    • map instead of forEach in privileges save (a7071bb)
    • โœ‚ remove duplicate configuration for helmet-hsts (0f10e08)
    • don't process invalid topics, fallback to 0 score (335169f)
    • โœ… tests (6924a22)
    • #8539, enforce content checks for post queue (bb22418)
    • ๐Ÿ› bug; additional reports could be added by the same user repeatedly (0f2b6f1)
    • #8538, go to first unread instead of last read (519e665)
    • #8533, validate and retry password during setup (0d698a0)
    • #8534, dont show modal on search (9e80a9e)
    • language string (9f346c5)
    • โœ… api test (8415d2f)
    • โœ… tests (9df871b)
    • โœ… tests (69fb152)
    • reverse uid checks (7331fae)
    • acp view category button if category is a link (2dfe9d4)
    • โœ‚ remove old test (52718ce)
    • #8515, fix login redirect on subfolder (5e5815f)
    • โœ… tests (f48d155)
    • ๐Ÿšš #4695, remove new notif alert (fd4c3cd)
    • too small sortable handle for ACP>Manage>Categories (8473e16)
    • ๐Ÿ›  less fixes for category dropdown (db07dd8)
    • ๐Ÿ”’ move check inside lock (5713576)
    • #7351, display less errors with location and error message (d1cb405)
    • ๐Ÿ‘‰ use shorter git url, #8527 (345fd72)
    • cursor for category select (4c90fac)
    • ๐Ÿ“„ api docs for admin/manage/groups/x (8769e28)
    • โœ… edge case in test (b9cff57)
    • โœ… api tests (42af4b5)
    • #8500, allow regular users select topics on unread (7260646)
    • don't crash if content is undefined (4658121)
    • crash if csrfToken does not exist (a3c8d45)
    • try again (6f889c9)
    • โœ… more tests (a46adb3)
    • โœ… tests (65395ae)
    • โœ… tests (72c60d1)
    • โœ… tests (67ca5e3)
    • #8508, dont allow moving topics if not moderator of target category (3653151)
    • composer textarea placeholder l10n /cc @pitaj (1e14af4)
    • openapi:
    • writeapi:
      • more tweaks to schema files (b2e9e3e)
      • fix components, + tag object schema (9f9e3c1)
      • missing files for tests (a4f3270)
      • normalizing data (1392d06)
      • tests (b092f65)
      • added examples to all parameter objects in schema (93f65f8)
      • tests (ebcb664)
      • tests (229eb2c)
      • tests (b8703ba)
      • tests (41f55b7)
      • calls to profile editing routes 200 even if user DNE (8e7baac)
      • client-side group join API call (68ecf41)
      • authenticate middleware logic to work better with await (fd67355)
    • ๐Ÿ”จ refactor:
      • patching helpers.tryRoute for API routes, some re-org (d15d9e4)
      • merging write-api auth middlewares with core middlewares (f6433ef)
    • ๐Ÿ› bug: #8611, custom route logic corrected (#8612) (64a457a)
    • ๐Ÿ“„ docs: updating changelog (6e34b9e)
    ๐ŸŽ Performance Improvements
    ๐Ÿ”จ Refactors
    • simpler check in user.blocks.filter (a02ae6f)
    • โœ‚ remove usage of middlewares (266d758)
    • โœ‚ remove /users/{uid}/settings/{setting} route (aa8faf5)
    • โœ… api test suite to accept methods other than GET (843aff5)
    • โœ‚ remove unnecessary wrapper (a512d99)
    • โœ‚ remove console.log, extra require (75024c3)
    • ๐Ÿ‘‰ show more lines of stack trace (ea31f50)
    • posts api (d9a1685)
    • โช post restore/delete/purge (272e73d)
    • ๐Ÿ”€ merge post.edit (9738e20)
    • ๐Ÿ—„ deprecate socket.emit('users.search') use api route (2279e37)
    • api categories (083c74e)
    • โœ‚ remove sockets.reqFromSocket (bc880ee)
    • topic follow/ignore to use api lib (9ee3cb9)
    • topic tools' actions to use api lib (68d6818)
    • topic creation to use api lib (40598b3)
    • setupApiRoute signature (bf480ee)
    • โœ‚ remove unused middleware (688d7a2)
    • ๐Ÿ‘‰ user bans to use api lib (2d252f2)
    • ๐Ÿšš move groups.leave, fix some tests (e367c54)
    • ๐Ÿ”„ change password/user follow to use api lib (960e925)
    • ๐Ÿ‘‰ user deletion to use api lib (430e7f5)
    • โšก๏ธ socket profile update to use api lib (7748194)
    • โšก๏ธ socket profile update to use api lib (31ae8a8)
    • โšก๏ธ user create and profile update to use api lib (23086da)
    • ๐Ÿ‘‰ use single function for api code (5e2caf1)
    • async/await src/user/approval (43afe7f)
    • ๐ŸŒ async/await install/web.js (3881ac3)
    • async/await (1fd2eba)
    • ๐Ÿ‘‰ use app.render (d89477c)
    • api module (3673acc)
    • api module returns promise, error-first cb if cb passed in (a784d10)
    • โœ‚ remove unused search call (dd7424e)
    • switch to using slugify module (dc29f4d)
    • ๐Ÿ’… require style (c954db8)
    • middleware.assert.* (8ecef7b)
    • ๐Ÿ’… rewrite modules/api.js in AMD style (a905d7f)
    • โœ‚ remove posts.tools.purge (ed092bf)
    • shared constants (#8707) (1aa336d)
    • post edit (16039b1)
    • ๐Ÿ”ฆ expose new method for appending moderation note (29b357b)
    • โช socket posts delete/restore/purge so tid is not necessary (#8607) (f743f92)
    • ip-blacklist and post-queue language files (4dc6e64)
    • ๐Ÿ’… moved ip-blacklist and post-queue styles/tpls to themes (b6b94a5)
    • ๐Ÿ”„ changed way middleware was exported (cf2f1e9)
    • โœ‚ remove util.promisify calls (0189945)
    • ๐Ÿ”„ change pwd change logic (846b7d2)
    • โฌ†๏ธ rewrite src/upgrade.js with async/await (33c5988)
    • ๐Ÿ”„ change incrementViewCount and markAsRead to async/await (2c35d0b)
    • for codeclimate (2ee6248)
    • rewrite src/install with async/await (776e34a)
    • โœ‚ removed rather redundant flag reporters zset (6c00ec8)
    • flags object in post tools (fcdbdf6)
    • pass only needed data (f1974fb)
    • startup (c54b6b9)
    • get rid of bind calls (af91c26)
    • setting codeclimate to A (bc26883)
    • ๐Ÿ‘‰ make msg pretty (8ddc8dd)
    • flag sanity checks, +feat: flag limits (e3e55f2)
    • writeapi:
      • update route prefix to api/v3, default error option (3ea1aa4)
      • post.tools.purge no longer a method (5e2a3ea)
    ๐Ÿ’… Code Style Changes
    • openapi:
      • break write API routes into individual files (dbb4cfe)
      • move schemas and responses out of write.yaml (ffac3c7)
    • โšก๏ธ updates to openapi files (2928b9b)
    • ๐Ÿ‘ allowing some es6 features client-side (e1c40b2)
    • ๐Ÿ‘• linting (cdb7948)
    โœ… Tests
    • openapi: missing commonprops addition (0dc55bb)