Commit Graph

56988 Commits

Author SHA1 Message Date
6e54696003 FIX: corrently handle hidden tags when checking for edit conflicts
In 806e37aaec549069a599fd31edc16c5cdcd0774e, I improved the conflict handling when editing a post to account for title and tags.

This fixes an edge cases when a topic has a hidden tag the current editor can't see. When they submit their edit, we automatically add the hidden tags before checking with the tags stored in the database.

Reported in https://meta.discourse.org/t/341375
2024-12-09 19:17:16 +01:00
61f23b2d65 DEV: remove unnecessary line 2024-12-09 19:17:16 +01:00
35656a1d5f DEV: attempt to fix some system spec flakes (#30182)
Since 3e7f0867ea044ffd3e957946e1996736d4a19df8, I started seeing some specs fail due to the following error

```plain
Error occurred while rendering: top-level application > discourse-root > topic > discourse-topic > topic-navigation > plugin-outlet > plugin-connector > topic-presence-display

/assets/plugins/discourse-presence.js - Uncaught TypeError: Cannot destructure property 'whisperer' of 'this.currentUser' as it is null.
```

For some reasons I can't fanthom, the presence components seem to be rendered even though they're using outlets that are only rendered when a user is signed in... 🤷‍♂️

Lost too much time trying to reproduce so I ended up adding this `if (!this.currentUser) { return; }` condition to both "presence display" component to (hopefully) fix these flakes.
2024-12-09 18:01:22 +01:00
ca0ea3d201 FIX: Improve name validation in the signup form (#30150) 2024-12-09 12:06:59 -03:00
f0ea57e30e FIX: chat channel sort order consistency in sidebar (#30180)
This change creates a shallow copy of the public message channels so we don't change the original array while sorting.

Without this change the publicMessageChannels getter cache gets invalidated and cached again with the sorted channels array instead, which causes a bug where the sidebar channel list sorting order is updated by activity when user interacts with the chat drawer.
2024-12-09 15:36:41 +04:00
acc180611f FEATURE: Add an option to block IPs and emails to bulk user delete (#29993)
This commit adds an option for blocking the IP and email addresses when bulk-deleting users.

Internal topic: t/140321/11.
2024-12-09 14:25:31 +03:00
976aca68f6 FEATURE: Restrict profile visibility of low-trust users (#29981)
We've seen in some communities abuse of user profile where bios and other fields are used in malicious ways, such as malware distribution. A common pattern between all the abuse cases we've seen is that the malicious actors tend to have 0 posts and have a low trust level.

To eliminate this abuse vector, or at least make it much less effective, we're making the following changes to user profiles:

1. Anonymous, TL0 and TL1 users cannot see any user profiles for users with 0 posts except for staff users
2. Anonymous and TL0 users can only see profiles of TL1 users and above

Users can always see their own profile, and they can still hide their profiles via the "Hide my public profile" preference. Staff can always see any user's profile.

Internal topic: t/142853.
2024-12-09 13:07:59 +03:00
5e86bc2f43 FIX: Allow anyone who can manage groups to see Automatic tooltip (#30174)
Followup 35ecd0335c70e4f008ae86ec5804dc60dbf41101

Since we have the moderators_manage_categories_and_groups setting,
more than admins can manage groups, so we need to allow others to
see this Automatic tooltip as well.

Also fixes an inconsistency with canManageGroup between the User
model and Group controller, the latter is correct, allowing management
of automatic groups if can_admin_group permission is true
2024-12-09 13:21:24 +10:00
25ce1f3399 PERF: Don't execute a git command each time we log a log line (#30177)
We already have a `GIT_VERSION` constant in `DiscourseLogstashLogger` so
we can just use that.
2024-12-09 11:11:03 +08:00
4ddf7e61f9 UX: Move "What's new?" link in admin sidebar to root section (#30144)
This is so the link is more visible, instead of being
buried in the Account section.
2024-12-09 10:01:09 +10:00
97e593bfbf FIX: ensures sk can be scrolled on iOS in a modal (#30164)
The modal was disabling body scroll lock and select-kit collection was not whitelisted which was preventing users to be able to scroll a select-kit collection on iOS.
2024-12-09 09:53:22 +10:00
5759d80091 FIX: correct breadcrumb for admin users page (#30173)
Omission and instead of `permlinks`, `users` title should be used.
2024-12-09 10:52:50 +11:00
a10a5ccf75 Build(deps-dev): Bump qunit from 2.23.0 to 2.23.1 (#30168)
Bumps [qunit](https://github.com/qunitjs/qunit) from 2.23.0 to 2.23.1.
- [Release notes](https://github.com/qunitjs/qunit/releases)
- [Changelog](https://github.com/qunitjs/qunit/blob/main/History.md)
- [Commits](https://github.com/qunitjs/qunit/compare/2.23.0...2.23.1)

---
updated-dependencies:
- dependency-name: qunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-09 00:41:30 +01:00
23d32d20e3 Build(deps-dev): Bump sqlite3 from 2.4.0 to 2.4.1 (#30172)
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 2.4.0 to 2.4.1.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v2.4.0...v2.4.1)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-08 23:37:53 +01:00
7e749c7176 Build(deps-dev): Bump lefthook from 1.8.5 to 1.9.0 (#30169)
Bumps [lefthook](https://github.com/evilmartians/lefthook) from 1.8.5 to 1.9.0.
- [Release notes](https://github.com/evilmartians/lefthook/releases)
- [Changelog](https://github.com/evilmartians/lefthook/blob/master/CHANGELOG.md)
- [Commits](https://github.com/evilmartians/lefthook/compare/v1.8.5...v1.9.0)

---
updated-dependencies:
- dependency-name: lefthook
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-08 23:35:49 +01:00
4b2e472d0b Build(deps-dev): Bump express from 4.21.1 to 4.21.2 (#30167)
Bumps [express](https://github.com/expressjs/express) from 4.21.1 to 4.21.2.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/4.21.2/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.21.1...4.21.2)

---
updated-dependencies:
- dependency-name: express
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-08 23:35:23 +01:00
80e255e4e2 Build(deps-dev): Bump lint-to-the-future-ember-template (#30165)
Bumps [lint-to-the-future-ember-template](https://github.com/mansona/lint-to-the-future-ember-template) from 2.0.0 to 3.0.0.
- [Release notes](https://github.com/mansona/lint-to-the-future-ember-template/releases)
- [Changelog](https://github.com/mansona/lint-to-the-future-ember-template/blob/main/CHANGELOG.md)
- [Commits](https://github.com/mansona/lint-to-the-future-ember-template/commits)

---
updated-dependencies:
- dependency-name: lint-to-the-future-ember-template
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-08 22:49:32 +01:00
827f65b3d9 Build(deps-dev): Bump @ember/test-waiters from 3.1.0 to 4.0.0 (#30166)
Bumps [@ember/test-waiters](https://github.com/emberjs/ember-test-waiters) from 3.1.0 to 4.0.0.
- [Release notes](https://github.com/emberjs/ember-test-waiters/releases)
- [Changelog](https://github.com/emberjs/ember-test-waiters/blob/master/CHANGELOG.md)
- [Commits](https://github.com/emberjs/ember-test-waiters/commits)

---
updated-dependencies:
- dependency-name: "@ember/test-waiters"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-08 22:48:56 +01:00
e55d4f0c5c DEV: update deprecated icon names in themes-grid-card (#30162) 2024-12-08 22:18:55 +01:00
0f2033dd69 DEV: Update more deprecated Font Awesome icon names (#30163)
* DEV: Update more deprecated Font Awesome icon names

* revert update to icon-library test - test is covering deprecation case
2024-12-08 22:14:28 +01:00
b8325f2190 FIX: Recover user deleted post (#30145)
This commit fixes an issue where the recover button would not be displayed for a user delete post.
2024-12-06 15:47:57 -03:00
b0be89cb17 FIX: lower thread panel min-width (#30158)
It's been set to this value as a workaround for long thread titles, but we now have standalone thread titles in the thread body which makes this not needed. People had troubles understanding why they couldn't resize more the thread panel.
2024-12-06 19:18:45 +01:00
4f8293e78f Update translations (#30148) 2024-12-06 18:04:53 +01:00
5ce54fe7fa DEV: admin-login submit should be a button, not an input (#30156) 2024-12-06 11:48:15 -05:00
55980a2a84 DEV: Add workaround for chrome crash (#30157)
Some users are seeing consistent "Error 5" crashes in chrome when saving/deleting bookmarks on chat messages.

When crash logging is enabled, the message is:

`[33466:259:1206/122312.195048:ERROR:ax_object.cc(3400)] Check failed: !NeedsToUpdateCachedValues(). Stale values: "Group" axid#7543 <svg#discourse-emojis> needsToUpdateCachedValues/disallowed isIgnored inUserAgentShadowRoot:<use> isInert needsToUpdateChildren hasDirtyDescendants`

This seems to be influenced by a few factors, including the re-render of the bookmarks button, the adjacent 'reactions' button, and also the opening/closing of the modal.

Adding this `activeElement.blur` seems to avoid the issue in my manual testing. Hopefully, this can be dropped after future chrome releases.

Internal topic: t/143485
2024-12-06 16:05:09 +00:00
07f4e56658 FIX: freeze_original for moved_post notifications for OP moves, link to destination topic (#30147)
Currently when copy an OP to another topic, the link is to the topic that wasn't moved. The notification should instead be to the new topic the OP was moved to -- we have duplicate logic already for this but first post creation get special treatment, and this applies the same treatment.
2024-12-06 09:50:53 -06:00
2defab25b7 DEV: Remove references to categories_only_optimized (#30151)
This category style has been removed in f1700ca5.
2024-12-06 17:39:22 +02:00
35ecd0335c UX: only show automatic group tooltip to admins (#30155)
Follow up to #28630 which added the tooltip on automatic group.

It was missing a check to ensure the current user is an admin, since only admins can manage automatic groups.

Reported in https://meta.discourse.org/t/324215 by @moin-Jana
2024-12-06 15:43:03 +01:00
4f4498994c UX: fix channel name style for unread threads (#30152)
Follow up to #30127.

Normally when viewing a channel with tracked threads, we dismiss the blue dot next to the channel name even though the thread has not been read yet.

This change applies the same criteria to determine if we should bold the channel name.
2024-12-06 17:38:13 +04:00
d35d8193aa UX: fix PM topic map layout (#30135) 2024-12-06 08:34:54 -05:00
58556ed434 DEV: Drop experimental_topics_filter site setting take 2 (#30142)
This is a follow-up to e6fdfcdcd25d4bf7f009079cace41d0e9ffe4791 which
did not remove the site setting from `config/site_settings.yml` and drop
the site setting value from the database.
2024-12-06 08:10:38 -05:00
eaa45ae4d0 DEV: Update transformers in topic-list/item (#30105)
These will enable https://github.com/discourse/discourse-topic-thumbnails/pull/60
2024-12-06 10:08:10 +00:00
31abb0b59e UX: Minor fix to admin what's new link (#30143)
Followup 9c4c17ad3fc80f79e8046b522efa4c769c76130d
2024-12-06 14:23:09 +10:00
9c4c17ad3f UX: Change "What's new in Discourse?" link (#30140)
We want to point to our dedicated /admin/whats-new
page which is more focused and has better screenshots
and so on.
2024-12-06 10:11:18 +10:00
71bec686a2 DEV: Add user_id and post_user_id to MovedPost records (#30130)
Follow-up from this commit - 9b8af0ea9f

Adds helpful data into MovedPost records for later lookup. ALSO fixes notifications for freeze_original to point to the newly created post, not the moved post.
2024-12-05 17:10:32 -06:00
13793a3d8e DEV: Convert bookmark-icon to gjs/glimmer (#30136) 2024-12-05 23:58:43 +01:00
06bc5256df Build(deps-dev): Bump webpack from 5.97.0 to 5.97.1 (#30138)
Bumps [webpack](https://github.com/webpack/webpack) from 5.97.0 to 5.97.1.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.97.0...v5.97.1)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-05 23:52:02 +01:00
2ae69a7cfd Build(deps): Bump terser from 5.36.0 to 5.37.0 (#30139)
Bumps [terser](https://github.com/terser/terser) from 5.36.0 to 5.37.0.
- [Changelog](https://github.com/terser/terser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/terser/terser/compare/v5.36.0...v5.37.0)

---
updated-dependencies:
- dependency-name: terser
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-05 23:18:45 +01:00
5b06965047 Build(deps): Bump @babel/standalone in the babel group (#30137)
Bumps the babel group with 1 update: [@babel/standalone](https://github.com/babel/babel/tree/HEAD/packages/babel-standalone).


Updates `@babel/standalone` from 7.26.3 to 7.26.4
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.4/packages/babel-standalone)

---
updated-dependencies:
- dependency-name: "@babel/standalone"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: babel
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-05 23:14:58 +01:00
2d8a62aec1 DEV: Update create user w/ custom fields api docs (#30133)
Since the example specifies json use a json formatted example instead of
form-data.

https://meta.discourse.org/t/161413/5
2024-12-05 12:28:48 -07:00
4a5a499d94 DEV: refactor textarea from autocomplete (#29988)
Extracts the dependency we had on specifics of a textarea in our Autocomplete, this approach uses a TextareaTextManipulation, particularly the value getter, getCaretPosition, getCaretCoords, replaceText, and inCodeBlock.
2024-12-05 16:09:06 -03:00
e37952c9db DEV: refactor placeholder handling from UppyComposerUpload (#29976)
Extracts the textual upload placeholder handle logic from UppyComposerUpload to a new TextareaPlaceholderHandler class, implicitly instantiated by TextareaTextManipulation.
2024-12-05 15:07:55 -03:00
8ce6aa3e7d DEV: Ensure composer opens properly when the post topic is not yet loaded (#30114)
This PR fixes an error that would be thrown in some edge cases where the composer is opened for a post instance without an associated topic model already loaded.

An example of such edge cases would be, a plugin trying to edit a post outside the topic view.

This was causing an error that would prevent the composer from being opened.
2024-12-05 14:21:29 -03:00
68e57190df DEV: Allow freeze_original argument in topics controller & JS transformer (#30120)
PostMover has a new option called freeze_original implemented in this commit. It was previously unexposed in the controller. This PR permits the param in the controller, and passes it into PostMover.

Also, this applies a value transformer for move/merge payload options. In addition a plugin outlet in the move post modal. This allows plugins to add content to the modal, which can modify the payload (and use the freeze_original argument for example)
2024-12-05 08:31:05 -06:00
555ca4da55 DEV: Add plugin wrapper to avoid template override in plugins (#30004)
* DEV: Add plugin wrapper to avoid template override in plugins

* added plugin wrapper

* linter issues

* added suggested change

Co-authored-by: Jarek Radosz <jradosz@gmail.com>

* added suggested changes

---------

Co-authored-by: Jarek Radosz <jradosz@gmail.com>
2024-12-05 09:05:16 -05:00
5ad09f7564 DEV: adds default option to form-kit select (#30126)
This commit will now show a "Select..." option when no value selected and a "None" option when a value is selected, as the first row. It ensures that people don't think a value is selected when it's actually just the html select showing the first available option.
2024-12-05 13:52:22 +01:00
c817a94c89 UX: Move revoked API key status to dedicated column (#30125)
* DEV: add table heading for status

* UX: Move revoked status to its own column with a badge; remove revoked icon

* UX: Increase text contrast for revoked rows
2024-12-05 04:24:01 -07:00
59413e72d4 Build(deps-dev): Bump puppeteer-core from 23.10.0 to 23.10.1 (#30112)
Bumps [puppeteer-core](https://github.com/puppeteer/puppeteer) from 23.10.0 to 23.10.1.
- [Release notes](https://github.com/puppeteer/puppeteer/releases)
- [Changelog](https://github.com/puppeteer/puppeteer/blob/main/release-please-config.json)
- [Commits](https://github.com/puppeteer/puppeteer/compare/puppeteer-core-v23.10.0...puppeteer-core-v23.10.1)

---
updated-dependencies:
- dependency-name: puppeteer-core
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-05 12:17:30 +01:00
b4e95d7157 Build(deps): Bump @babel/standalone in the babel group (#30111)
Bumps the babel group with 1 update: [@babel/standalone](https://github.com/babel/babel/tree/HEAD/packages/babel-standalone).


Updates `@babel/standalone` from 7.26.2 to 7.26.3
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.3/packages/babel-standalone)

---
updated-dependencies:
- dependency-name: "@babel/standalone"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: babel
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-05 12:17:14 +01:00
4e8a1487ca UX: make channel name bold for unread threads (#30127)
Channels with unread threads should have a font weight of bold to match unread channels.
2024-12-05 14:17:31 +04:00