diff --git a/CHANGELOG.md b/CHANGELOG.md index 321746419f..d07b3f8968 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,114 @@ +#### v2.1.0 (2022-06-02) + +##### Chores + +* update changelog for v2.1.0 (7121949d) +* incrementing version number - v2.1.0 (987045c3) +* bump persona (91f32487) +* update changelog for v2.0.1 (abd8e216) +* incrementing version number - v2.0.1 (768427d4) +* remove optional `middleware` parameter from setupPageRoute and setupAdminPageRoute calls (54ff768f) +* add note re: sort module (5aca106b) +* up emoji (265a0139) +* update changelog for v2.0.0 (60fc3f5d) +* incrementing version number - v2.0.0 (f23c3ff5) +* **deps:** + * bump nodebb-plugin-2factor from 4.0.1 to 5.0.0 in /install (6e95e5c5) + * update dependency lint-staged to v12.5.0 (01f607a5) + * update dependency lint-staged to v12.4.3 (8885d228) + * update dependency eslint to v8.16.0 (#10654) (f6728404) + * bump sharp from 0.30.4 to 0.30.5 in /install (#10651) (d9f2096d) + * bump postcss from 8.4.13 to 8.4.14 in /install (#10652) (0772ec07) + * bump socket.io-client from 4.5.0 to 4.5.1 in /install (#10653) (a13a523b) + * update dependency lint-staged to v12.4.2 (#10647) (18e76c21) + * bump nodebb-plugin-mentions in /install (#10648) (e894147c) + * bump helmet from 5.0.2 to 5.1.0 in /install (#10641) (5faaf6a1) + * bump socket.io from 4.5.0 to 4.5.1 in /install (#10639) (9d9b3f4e) + * bump ioredis from 5.0.4 to 5.0.5 in /install (#10637) (f9c9ac9c) + * bump ace-builds from 1.4.14 to 1.5.1 in /install (#10636) (acf188b0) + * bump yargs from 17.4.1 to 17.5.1 in /install (#10624) (c7aefe9c) + * update dependency @commitlint/cli to v16.3.0 (1dc96717) + * bump mongodb from 4.5.0 to 4.6.0 in /install (#10603) (aee74bd6) + * bump express-session from 1.17.2 to 1.17.3 in /install (#10604) (b1967681) + * bump webpack from 5.72.0 to 5.72.1 in /install (#10600) (06edb6e6) +* **deps-dev:** + * bump @commitlint/cli from 17.0.1 to 17.0.2 in /install (#10672) (5f6e9f67) + * bump @commitlint/cli from 16.3.0 to 17.0.1 in /install (#10644) (fe873182) + * bump @commitlint/config-angular in /install (#10614) (9c4ef133) + * bump husky from 8.0.0 to 8.0.1 in /install (#10595) (54876583) + * bump grunt from 1.5.2 to 1.5.3 in /install (fcb6c191) + * bump husky from 7.0.4 to 8.0.0 in /install (#10591) (03453a62) + * bump eslint from 8.14.0 to 8.15.0 in /install (#10592) (0d75c6cb) +* **i18n:** + * fallback strings for new resources: nodebb.user (2bace634) + * fallback strings for new resources: nodebb.admin-manage-admins-mods (192aa2d3) + +##### New Features + +* add clipboard to runtime modules (39d61061) +* add mute history, closes #10596 (c926358d) +* allow unban/unmute on flag details page. closes #10593 (9acdc680) +* paginaton for admins-mods, closes #10610 (b860c260) +* fix typo, show route in deprecation notice for third-param removal in `setupPageRoute` (14110596) +* add button to see category children, closes #10606 (a5831412) +* closes #10601, ability to prevent alerts on topic list (dc320c89) +* add post to hook params (f07b4484) +* add sorted-list.parse (e904f438) +* add new hook that fires when sorted-set list modal is shown (8faa6f23) +* #10585, ability to mute from flag details (7867ccd7) +* send back missing parameters as array of missing properties, in API response (0c19b1e5) +* add hook for user invite (323dbc97) + +##### Bug Fixes + +* **deps:** + * update dependency ace-builds to v1.5.3 (#10667) (e7fd1861) + * update dependency ioredis to v5.0.6 (#10668) (5bafab79) + * update dependency nodebb-theme-persona to v12.0.8 (#10669) (e47a63f0) + * update dependency nodebb-plugin-2factor to v4.0.1 (#10665) (356f9a18) + * update dependency ace-builds to v1.5.2 (#10664) (7b5f53fc) + * update dependency nodebb-theme-persona to v12.0.7 (#10666) (a9a26836) + * update dependency sharp to v0.30.6 (#10662) (23232508) + * update dependency nodebb-theme-persona to v12.0.5 (#10649) (1fd68281) + * update dependency cron to v2 (#10568) (ad370202) + * update dependency clipboard to v2.0.11 (#10574) (db67a50a) + * update dependency nodebb-theme-slick to v2.0.1 (#10578) (d98f4ea9) + * update dependency nodebb-theme-persona to v12.0.2 (#10577) (930aefcf) + * update dependency nodemailer to v6.7.5 (#10573) (6eef08f9) +* buildBreadcrumbs naively prepending relative path even if absolute paths are passed in (a3564260) +* more generic copy for notif/chat button labels (f6a7582c) +* #10642, fix order of dom ready events (2bfccac7) +* get rid of math.random in utils.generateUUID (e802fab8) +* #10528, gray out disabled nav items (7e4d2852) +* encode privilege name for API call (92abb352) +* #10631, fix user digest setting display acp (0084b563) +* translate api error messages to user lang, closes #10623, (b17a81bf) +* alert template error. closes #10620 (24a640d9) +* closes #10621, convert \r\n to \n so it isn't counted as 2 characters (3a009f96) +* remove ev, hooks don't pass event, closes #10611 (082a9e1d) +* 'unread' postIndex regression closes #10607 (0e60a704) +* clear dragging on mouseup as well (70ad4a52) +* #10588 exit code 1 on failed plugin activation (e2ff1e39) +* #10584, dont show backlinks if you dont have read privilege (5e7d366f) +* #10586, fix webinstaller folders (1928a186) +* closes #10583, replace removed socket method with api method (5e82cf23) +* add missing fs-extra, #10580 (e7077393) + +##### Other Changes + +* unnecessary escape (60eeae95) +* fix semicolon (3a77e714) + +##### Refactors + +* return module if it doesn't have default export (12b58fcf) +* deprecate middleware param (#10513) (84f27263) + +##### Tests + +* fix tests again (191fb9f4) +* fix UUID test (6677efd7) + #### v2.0.1 (2022-05-28) ##### Bug Fixes diff --git a/install/package.json b/install/package.json index 176934624c..a25db4345b 100644 --- a/install/package.json +++ b/install/package.json @@ -31,7 +31,7 @@ "@adactive/bootstrap-tagsinput": "0.8.2", "ace-builds": "1.5.3", "archiver": "5.3.1", - "async": "3.2.3", + "async": "3.2.4", "autoprefixer": "10.4.7", "bcryptjs": "2.4.3", "benchpressjs": "2.4.3", @@ -81,7 +81,7 @@ "material-design-lite": "1.3.0", "mime": "3.0.0", "mkdirp": "1.0.4", - "mongodb": "4.6.0", + "mongodb": "4.7.0", "morgan": "1.10.0", "mousetrap": "1.6.5", "multiparty": "4.2.3", @@ -97,8 +97,8 @@ "nodebb-plugin-spam-be-gone": "1.0.0", "nodebb-rewards-essentials": "0.2.1", "nodebb-theme-lavender": "6.0.0", - "nodebb-theme-persona": "12.0.8", - "nodebb-theme-slick": "2.0.1", + "nodebb-theme-persona": "12.0.9", + "nodebb-theme-slick": "2.0.2", "nodebb-theme-vanilla": "12.1.17", "nodebb-widget-essentials": "6.0.0", "nodemailer": "6.7.5", @@ -137,20 +137,20 @@ "uglify-es": "3.3.9", "validator": "13.7.0", "visibilityjs": "2.0.2", - "webpack": "5.72.1", + "webpack": "5.73.0", "webpack-merge": "5.8.0", "winston": "3.7.2", "xml": "1.0.1", - "xregexp": "5.1.0", + "xregexp": "5.1.1", "yargs": "17.5.1", "zxcvbn": "4.4.2" }, "devDependencies": { "@apidevtools/swagger-parser": "10.0.3", "@commitlint/cli": "17.0.2", - "@commitlint/config-angular": "16.3.0", + "@commitlint/config-angular": "17.0.0", "coveralls": "3.1.1", - "eslint": "8.16.0", + "eslint": "8.17.0", "eslint-config-nodebb": "0.1.1", "eslint-plugin-import": "2.26.0", "grunt": "1.5.3", diff --git a/public/language/vi/modules.json b/public/language/vi/modules.json index fffc0c6470..f71323813d 100644 --- a/public/language/vi/modules.json +++ b/public/language/vi/modules.json @@ -6,8 +6,8 @@ "chat.no_active": "Bạn không có cuộc trò chuyện đang hoạt động nào.", "chat.user_typing": "%1 đang nhập...", "chat.user_has_messaged_you": "%1 đã nhắn tin cho bạn.", - "chat.see_all": "All chats", - "chat.mark_all_read": "Mark all read", + "chat.see_all": "Tất cả trò chuyện", + "chat.mark_all_read": "Đánh dấu tất cả đã đọc", "chat.no-messages": "Vui lòng chọn người nhận để xem lịch sử tin nhắn trò chuyện", "chat.no-users-in-room": "Không có người nào trong phòng này.", "chat.recent-chats": "Trò Chuyện Gần Đây", diff --git a/public/language/vi/notifications.json b/public/language/vi/notifications.json index 8d17a53c1a..89c5b89675 100644 --- a/public/language/vi/notifications.json +++ b/public/language/vi/notifications.json @@ -1,8 +1,8 @@ { "title": "Thông báo", "no_notifs": "Bạn không có thông báo mới", - "see_all": "All notifications", - "mark_all_read": "Mark all read", + "see_all": "Tất cả thông báo", + "mark_all_read": "Đánh dấu tất cả đã đọc", "back_to_home": "Quay lại %1", "outgoing_link": "Liên kết ngoài", "outgoing_link_message": "Bạn đang rời khỏi %1", diff --git a/public/language/vi/user.json b/public/language/vi/user.json index b724f2130d..7212843fcb 100644 --- a/public/language/vi/user.json +++ b/public/language/vi/user.json @@ -158,7 +158,7 @@ "info.banned-reason-label": "Lý do", "info.banned-no-reason": "Không có lí do.", "info.mute-history": "Recent Mute History", - "info.no-mute-history": "This user has never been muted", + "info.no-mute-history": "Người dùng này chưa bao giờ bị tắt tiếng", "info.muted-until": "Muted until %1", "info.muted-expiry": "Expiry", "info.muted-no-reason": "Không có lý do nào được đưa ra.", diff --git a/public/src/ajaxify.js b/public/src/ajaxify.js index cb030b2558..f35e85e17f 100644 --- a/public/src/ajaxify.js +++ b/public/src/ajaxify.js @@ -545,7 +545,7 @@ $(document).ready(function () { } // Default behaviour for uploads and direct links to API urls - if (internalLink && ['/uploads', '/assets/uploads/', '/api/'].some(function (prefix) { + if (internalLink && ['/uploads', '/assets/', '/api/'].some(function (prefix) { return String(_self.pathname).startsWith(config.relative_path + prefix); })) { return; diff --git a/public/src/client/account/settings.js b/public/src/client/account/settings.js index 4e85fe4aec..57b82151ee 100644 --- a/public/src/client/account/settings.js +++ b/public/src/client/account/settings.js @@ -8,7 +8,7 @@ define('forum/account/settings', [ // If page skin is changed but not saved, switch the skin back $(window).on('action:ajaxify.start', function () { - if (ajaxify.data.template.name === 'account/settings' && $('#bootswatchSkin').val() !== config.bootswatchSkin) { + if (ajaxify.data.template.name === 'account/settings' && $('#bootswatchSkin').length && $('#bootswatchSkin').val() !== config.bootswatchSkin) { reskin(config.bootswatchSkin); } });