2
0
Fork 0
mirror of https://github.com/discourse/discourse.git synced 2025-10-03 17:21:20 +08:00
Commit graph

61281 commits

Author SHA1 Message Date
Alan Guo Xiang Tan
0ff387f81f
A/B test PR workflow 2025-10-03 08:53:08 +08:00
Osama Sayegh
2b7835d02a
FIX: Allow saving category when color attributes are 3-digits hex (#35119)
This commitreworks the validation and handling of color pickers in
the category edit page so they're simpler and more predictable. In
particular:

* It no longer attempts to "autocomplete" 3-digits hex values to the
equivalent 6-digits format -- we now accept both 3 and 6 digits formats
* It no longer disables the save button if the input color value is
invalid. The save button is always clickable, and if the admin attempts
to save with an invalid color value, the form will display errors
explaining which input is invalid and what's wrong with the color value

Internal topic: t/163062.
2025-10-02 14:33:30 +03:00
Martin Brennan
28a58a764b
Revert "FIX: notification reminder is deleted with bookmark (#35069)" (#35138)
This reverts commit 74c60fef17.

There are still some outstanding questions about bookmark notification
behaviour.
2025-10-02 17:56:51 +10:00
Loïc Guitaut
5146a8e399
Revert "DEV: Debug cookie overflows" (#35120)
Reverts discourse/discourse#34639

We understood the main culprit for cookie overflows was storing
`destination_url` in the session, so we don’t really need that debug
code anymore.
2025-10-02 09:55:47 +02:00
Ted Johansson
ebb1a49ea3
UX: Show remove password button without suspense (#34635)
We have this slightly awkward UX on the Preferences > Security page, where we offer to remove the password from an account if it has other means of signing in. You need to first click a cryptic Show button which may or may not lead you to the button you want. This button loads the associated accounts so we can evaluate whether to show the Remove password button or not.

This PR loads that data when entering the route, so that we can just show the button up-front. If removing password isn't possible, the button is disabled and shows an explainer underneath.
2025-10-02 15:04:13 +08:00
Ted Johansson
064aba3010
FIX: Don't update last_seen_at when impersonating a user (#34872)
Before this change, impersonating a user would result in that user's
`last_seen_at` being updated. This PR fixes that for the new
impersonation feature gated behind the `experimental_impersonation` site
setting.

The old impersonation feature that logs in as the impersonated user has
a completely separate code path. If we decide to backport this change it
will be in a separate PR.
2025-10-02 11:17:15 +08:00
Blake Erickson
05d7122570
FIX: Allow mediaconvert client without endpoint (#35135)
Some checks failed
Licenses / run (push) Waiting to run
Linting / run (push) Waiting to run
Publish Assets / publish-assets (push) Waiting to run
Tests / core backend (push) Waiting to run
Tests / plugins backend (push) Waiting to run
Tests / core frontend (Chrome) (push) Waiting to run
Tests / plugins frontend (push) Waiting to run
Tests / themes frontend (push) Waiting to run
Tests / core system (push) Waiting to run
Tests / plugins system (push) Waiting to run
Tests / themes system (push) Waiting to run
Tests / core frontend (Firefox ESR) (push) Waiting to run
Tests / core frontend (Firefox Evergreen) (push) Waiting to run
Tests / chat system (push) Waiting to run
Tests / merge (push) Blocked by required conditions
Migration Tests / Tests (push) Has been cancelled
We need to initially create a MediaConvert client without an endpoint.
Rather than passing in nil for the endpoint just don't pass the endpoint
parameter at all otherwise you will get an error from aws.
2025-10-01 19:05:06 -06:00
Martin Brennan
1c87629638
FIX: Show more button now loads additional root-level subcategories (#35101)
Followup 9a9a0e5c1b

The "Show more" button in the sidebar categories modal was not working
when a root-level category had more than 5 subcategories (e.g., a
grandparent category with 6+ parent categories as children).

Root-level categories have `parent_category_id: undefined`, but the
`findPartialCategories` function was checking `categoriesById.has(id)`
before creating "Show more" buttons. Since `undefined` is never in the
categoriesById map, no button was created for root-level pagination.

The fix adds special handling for `undefined` parent IDs throughout the
component, treating root-level categories as a valid case for
pagination.
2025-10-02 10:12:13 +10:00
Gerhard Schlager
5fee59b220
DEV: Query human users in "discourse" converter correctly (#35111) 2025-10-01 21:18:28 +02:00
Gerhard Schlager
236a89d5e3
DEV: Allow overriding globally excluded columns in IntermediateDB (#35114) 2025-10-01 21:18:09 +02:00
Gerhard Schlager
26f617a03f
DEV: Optimize IntermediateDB before running importer (#35112) 2025-10-01 21:17:59 +02:00
Blake Erickson
c927ba9357
FIX: Allow aws mediaconvert to use iam profile (#35091)
When authenticating to aws mediaconvert we need to also allow the use of
`iam_profile` and not just assume `s3_access_key_id` and
`s3_secret_access_key` are being used.
2025-10-01 12:46:35 -06:00
Kris
c972bfa239
FIX: show AI gists in mobile messages (#35124)
The outlet used previously doesn't render when there's no category (in
message topic lists) so here I'm moving it to an outlet that does. Also
added a spec to check for this case.



Before:
<img width="400" alt="image"
src="https://github.com/user-attachments/assets/831cd17f-db6b-49d8-a2eb-88a668854e2b"
/>
 
 
 
After:
<img width="400" alt="image"
src="https://github.com/user-attachments/assets/f1e5c672-ca0f-4b84-9241-c0211f12c5e7"
/>
2025-10-01 14:11:25 -04:00
Penar Musaraj
eb0326a4a8
Reapply "DEV: Move admin-api-keys outlet wrapper (#35085)" (#35118) (#35121)
This needed a spec update in an internal plugin.
2025-10-01 13:14:37 -04:00
Régis Hanol
3c928df615
FIX: discourse_id_challenge response when using subfolder (#35123)
Added subfolder support for #discourse-id automated registration in
874c875e02 but we were missing returning the "path" in the response
from the "discourse_id_challenge".

This ensures we also return the "path" field in the challenge so it can
properly be validatated by id.discourse.com.

Internal ref - t/161934/21
2025-10-01 18:47:33 +02:00
Derek Rushforth
3b85b60d33
UX: Update Discourse ID setting description (#35094) 2025-10-01 09:33:32 -07:00
chapoi
db6f47f297
UX: add missing post notice styling (#35093)
Some styling went missing from the previous commit #35049
2025-10-01 09:04:35 -06:00
dependabot[bot]
5e0d6ef99e
Build(deps-dev): Bump lefthook from 1.13.5 to 1.13.6 (#35097)
Bumps [lefthook](https://github.com/evilmartians/lefthook) from 1.13.5
to 1.13.6.
- [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.13.5...v1.13.6)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-01 16:46:20 +02:00
dependabot[bot]
e940eba5b6
Build(deps): Bump prosemirror-view from 1.41.1 to 1.41.2 in the prosemirror group (#35096)
Bumps the prosemirror group with 1 update:
[prosemirror-view](https://github.com/prosemirror/prosemirror-view).


Updates `prosemirror-view` from 1.41.1 to 1.41.2
-
[Changelog](https://github.com/ProseMirror/prosemirror-view/blob/master/CHANGELOG.md)
-
[Commits](https://github.com/prosemirror/prosemirror-view/compare/1.41.1...1.41.2)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-01 16:45:57 +02:00
David Taylor
c477b55c51
Revert "DEV: Move admin-api-keys outlet wrapper (#35085)" (#35118)
This reverts commit 554a131fe8.

We're investigating incompatibilities with plugins
2025-10-01 15:45:29 +01:00
Loïc Guitaut
2676c70572
Revert "DEV: Move more data into the server session" (#35115)
Reverts discourse/discourse#35009
2025-10-01 16:44:43 +02:00
Yuriy Kurant
eae2370424
FIX: hides redundant chat icon on mobile chat routes (#35015)
### Chat in Mobile view

In order to reduce visual noise in mobile view, there is no need to show
chat icon in header, once user has already chat open.

|Before|After|
|---|---|
|<img width="456" height="199" alt="Screenshot 2025-10-01 at 17 16 29"
src="https://github.com/user-attachments/assets/6d124a79-4a0a-4edd-913a-43a0cfa05623"
/>|<img width="442" height="198" alt="Screenshot 2025-10-01 at 17 16 06"
src="https://github.com/user-attachments/assets/052a2f78-574e-4d35-aff4-264f54f2fb15"
/>|
2025-10-01 22:34:15 +08:00
Isaac Janzen
d7cea61e36
DEV: Pass loadMore to after-topic-list outlet (#35092) 2025-10-01 08:33:37 -05:00
Selase Krakani
d6003f414f
DEV: Add archetype index (#35113) 2025-10-01 13:28:53 +00:00
Gerhard Schlager
ecb2c1144d DEV: Add YARD documentation for IntermediateDB models 2025-10-01 15:25:28 +02:00
Gerhard Schlager
5b3dbb2c6f DEV: Add ability to generate enums for IntermediateDB
This also adds the ability to generate YARD documentation for IntermediateDB models.
2025-10-01 15:25:28 +02:00
Ted Johansson
480e05e67a
FIX: Run scheduled problem checks even when no tracker exists yet (#35102)
### What is this change?

Scheduled problem checks without trackers weren't being run. This is
because we directly tried to look for trackers instead of going through
the checks.
2025-10-01 10:21:44 -03:00
Penar Musaraj
891106d5f4
UX: Add "works with" explanation for Discourse ID logins (#35088)
https://github.com/user-attachments/assets/e8a90b2a-100d-4b8e-87c3-a617a3b9be7c
2025-10-01 09:21:36 -04:00
Penar Musaraj
554a131fe8
DEV: Move admin-api-keys outlet wrapper (#35085)
When overriding, we should keep the breadcrumb and header. This change
ensures consistency with other outlets (webhooks, themes).

See also internal ticket t/161658
2025-10-01 09:13:37 -04:00
Kris
d0d4815d9e
UX: improve kbd shortcut appearance on macOS (#35099)
This switches to our monospace font variable for `<kbd>` tags. Our
default monospace font (JetBrains Mono) has much better glyph alignment
than macOS' default monospace font, Menlo

Before:
<img width="566" height="124" alt="image"
src="https://github.com/user-attachments/assets/aeb761d2-1402-4273-92fb-68dce8a5df49"
/>


After: 
<img width="582" height="122" alt="image"
src="https://github.com/user-attachments/assets/b13bcfc8-bb55-432e-a4c9-a1a2b961daf5"
/>

I've also added an Apple specific class so we can tighten up the spacing
between glyphs.
2025-10-01 09:09:23 -04:00
Loïc Guitaut
066d3a1abc
DEV: Move more data into the server session (#35009)
Now that `ServerSession` can store arbitrary data, we can move some more
data into it.

This PR moves some data related to authentication into it, as sometimes
that kind of data can be pretty big.
2025-10-01 15:00:48 +02:00
Selase Krakani
3ca1f8bf42
DEV: Add support for converting and importing topic_users (#35038)
This adds converter(Discourse-only, for now) and importer steps for
`topic_users`
2025-10-01 11:14:25 +00:00
Selase Krakani
fb820c63c3
DEV: Add support for converting and importing topic_tags (#35041)
This adds converter(Discourse-only, for now) and importer steps for
`topic_tags`.
2025-10-01 11:05:27 +00:00
Selase Krakani
2d7d6c2ee9
DEV: Add support for converting and importing topic_allowed_groups (#35039)
This adds converter(Discourse-only, for now) and importer steps for
`topic_allowed_groups`
2025-10-01 11:01:51 +00:00
Joffrey JAFFEUX
74c60fef17
FIX: notification reminder is deleted with bookmark (#35069)
Prior to this fix a user could delete a chat bookmark but the
notification reminder if it had already fired would still show in
notifications.
2025-10-01 11:58:31 +02:00
Régis Hanol
e171530e14
FIX: post voting comments editing UX (#35108)
was showing up inconditionnaly even if you didn't have the permissions
to edit other people's comments.

This was only a UX issue as the server is doing the correct check.

The issue was the `hasPermission` method which wasn't a getter so it
wasn't checked for all the instances of the post comments but rather
once.

Also added some acceptance tests to ensure we don't regress.

Internal ref - t/163347
2025-10-01 11:31:19 +02:00
Discourse Translator Bot
73664e3a69
Update translations (#35104) 2025-10-01 11:08:49 +02:00
Joffrey JAFFEUX
730a1ea9ec
UX: hide time in month view on mobile (#35107)
We have limited space and removing the time in this case allows to have
more space for the text of the event.
2025-10-01 11:00:43 +02:00
David Taylor
043094d5c5
DEV: Pin Webpack to 5.99.9 (again) (#35106)
Following the update to v5.100.0, changes to files under `app/static/*`
are no longer reflected live in development mode.

Previously pinned in 712af920ce, but it
was undone by dependabot. This time I've removed the `^` from the
version specifiers, so it shouldn't be auto-upgraded any more.

Long term we're planning to move away from webpack, so it's not worth
the investment to find the cause of the bug.
2025-10-01 09:25:13 +01:00
Alan Guo Xiang Tan
109212127a
FIX: Clicking on subject in admin email logs broken (#35030)
This was a regression introduced in
f0069a4fab where clicking on an email
log's subject link did not open a modal that displays the details of the
incoming email.

In this commit, the following changes were also made:

1. Make all `admin-email-logs/*` routes inherit from the same parent
route.
   Having two different parent routes doing the same thing was probably
   something that was missed in the refactor previously.
2025-10-01 10:04:27 +08:00
David Taylor
844a1607cb
DEV: Resolve deprecated route names in rss-polling (#35084)
Some checks failed
Licenses / run (push) Has been cancelled
Linting / run (push) Has been cancelled
Migration Tests / Tests (push) Has been cancelled
Publish Assets / publish-assets (push) Has been cancelled
Tests / core backend (push) Has been cancelled
Tests / plugins backend (push) Has been cancelled
Tests / core frontend (Chrome) (push) Has been cancelled
Tests / plugins frontend (push) Has been cancelled
Tests / themes frontend (push) Has been cancelled
Tests / core system (push) Has been cancelled
Tests / plugins system (push) Has been cancelled
Tests / themes system (push) Has been cancelled
Tests / core frontend (Firefox ESR) (push) Has been cancelled
Tests / core frontend (Firefox Evergreen) (push) Has been cancelled
Tests / chat system (push) Has been cancelled
Tests / merge (push) Has been cancelled
2025-09-30 22:07:07 +01:00
David Taylor
347a8c96b7
DEV: Clear caches properly in admin_color_palette_config_area_spec (#35087)
This resolves the flaky spec we're seeing on
`system/admin_color_palette_config_area_spec.rb:157`

`--bisect` minimal repro was:

```
bin/rspec './spec/system/admin_color_palette_config_area_spec.rb[1:9,1:12]' --tag ~type:multisite --order random:3906
```
2025-09-30 22:06:55 +01:00
Penar Musaraj
ca87a301af
FIX: Translate string in search 404 page (#35090) 2025-09-30 16:30:00 -04:00
Jordan Vidrine
132e15760f
UX: Remove love background on hover (#35089) 2025-09-30 15:26:07 -05:00
Jordan Vidrine
be4b3dbe9f
UX: Fix hover effect on heart icon in double-like button (#35086) 2025-09-30 14:34:38 -05:00
Sérgio Saquetim
480a24e754
DEV: Replace deprecated Ember's native array any with some (#35010)
Replaces deprecated usage of the Ember's native array extension `.any()`
function with `.some()` across several JavaScript files in the project.
This is a purely refactoring change intended to modernize the codebase
to follow current JavaScript standards.

**Main Changes:**

* Replaced .any() with .some() for array handling in 25 instances across
various files.
* Updated deprecation workflow to handle the any() and related
deprecations explicitly.
2025-09-30 15:49:13 -03:00
Sérgio Saquetim
74b2103d23
DEV: Replace deprecated Ember's array replace with native splice (#35019)
* Replace uses of Ember’s deprecated array extension .replace with
native .splice, using TrackedArray where reactivity is needed
(components and tests)
* Modernize TopicController computed properties to getters with
@dependentKeyCompat to preserve reactivity without Ember array
extensions
* Adjust history modal action signature to destructure the argument as
[bodyDiff]
* Add a deprecation-workflow entry for
discourse.native-array-extensions.replace to improve logging
* Add an Ember 6.6.0 patch to ensure isMutableArray excludes native
arrays, preventing false detection as MutableArray
2025-09-30 15:31:19 -03:00
David Taylor
60382d812a
DEV: Update invite spec for DST handling (#35079)
The invite system uses the inviter's timezone to determine the
expiration time (see
0dd1ee2e09)

Now that DST change is less than 90 days away for me, the spec started
failing locally. We should update the spec to use the inviter's
timezone, just like core's own logic
2025-09-30 19:18:09 +01:00
David Taylor
13820a307b
DEV: Resolve flaky system/composer/category_templates_spec.rb:431 (#35077)
We need to ensure that the upload is finished before we create the new
topic
2025-09-30 19:17:57 +01:00
Renato Atilio
9fba48486d
FIX: topic pagination overflow with deleted posts (#35081)
Uses the topic's pre-calculated `posts_count` instead of
`highest_post_number` to determine if the pagination overflows and
should return a 404.
2025-09-30 14:36:12 -03:00