Commit Graph

53047 Commits

Author SHA1 Message Date
c9b9463ee3 DEV: Resolve decorator import deprecations (#25616) 2024-02-08 19:02:26 +00:00
95555b9a97 FIX: Do not async already loaded categories (#25607)
Use sync findByIds to return the category list if all of them have been
previously loaded.
2024-02-08 18:36:31 +02:00
6bd26e81c1 FIX: Respect date range in top traffic sources report (#25599)
See https://meta.discourse.org/t/reports-top-traffic-sources-topics-stat-issue/179850
2024-02-08 11:17:59 -05:00
a3ef9e92eb DEV: Update topic and post models to native class syntax (#25612)
This commit was created with a combination of the ember-native-class-codemod and manual cleanup
2024-02-08 15:09:50 +00:00
6c597b648b DEV: Convert most JS models to native class syntax (#25608)
This commit was created with a combination of the ember-native-class-codemod and manual cleanup
2024-02-08 13:17:36 +00:00
234795c70e FIX: Service worker push notifications when cache disabled (#25610) 2024-02-08 11:55:32 +00:00
ee08a8c52b Revert "FIX: Omit CSP nonce and hash values when unsafe-inline enabled (#25590)" (#25609)
This reverts commit 767b49232e0c4c853e5b92e0abde8381f3aa1e88.

If anything else (e.g. GTM integration) introduces a nonce/hash, then this change stops the splash screen JS to fail and makes sites unusable.
2024-02-08 11:44:09 +00:00
fb0e656cb7 DEV: Refactor subclasses in ThemeSettingsManager to individual files (#25605)
Why this change?

One Ruby class per file improves readability
2024-02-08 12:59:52 +08:00
7ce76143ac FIX: Always trust admin and moderators with post edits (#25602)
Removes duplication from LimitedEdit to see who can edit
posts, and also removes the old trust level setting check
since it's no longer necessary.

Also make it so staff can always edit since can_edit_post?
already has a staff escape hatch.
2024-02-08 13:10:26 +10:00
96ae5c395f DEV: Set database checkout timeout to 10 on CI (#25604)
Why this change?

We have been seeing checkout timeouts happening on CI when using the
default of 5 seconds. This can happen in system tests when the server
has to process many requests using the same database connection.
Therefore, we will double the timeout for now and monitor if stuff
continues to timeout.
2024-02-08 10:35:55 +08:00
9f884cdaab DEV: Introduce experimental type: objects theme setting (#25538)
Why this change?

This commit introduces an experimental `type: objects` theme setting
which will allow theme developers to store a collection of objects as
JSON in the database. Currently, the feature is still in development and
this commit is simply setting up the ground work for us to introduce the
feature in smaller pieces.

What does this change do?

1. Adds a `json_value` column as `jsonb` data type to the `theme_settings` table.
2. Adds a `experimental_objects_type_for_theme_settings` site setting to
   determine whether `ThemeSetting` records of with the `objects` data
   type can be created.
3. Updates `ThemeSettingsManager` to support read/write access from the
   `ThemeSettings#json_value` column.
2024-02-08 10:20:59 +08:00
8eb4bf07a6 FIX: Translation missing for Illegal flag on topic (#25603)
Followup to 95a2d285d397edf0c31ac7ac96dac7d3d0f200d3

Fixes a missing translation and also makes it so the
flag modal does not have a scrollbar when it opens.
2024-02-08 11:53:45 +10:00
4ce1c2c030 FIX: Always allow staff (admins & mods) to post links (#25601)
Followup fb087b7ff6d168bbfcaa5f83d53ac122d6a18a1c

post_links_allowed_groups is an odd check tied to
unrestricted_link_posting? in PostGuardian, in that
it doesn't have an escape hatch for staff like most
of the rest of these group based settings.

It doesn't make sense to exclude admins or mods from
posting links, so just always allow them to avoid confusion.
2024-02-08 11:19:28 +10:00
adb4eee153 DEV: Make more group-based settings client: false (#25585)
Affects the following settings:

* whispers_allowed_groups
* anonymous_posting_allowed_groups
* personal_message_enabled_groups
* shared_drafts_allowed_groups
* here_mention_allowed_groups
* uploaded_avatars_allowed_groups
* ignore_allowed_groups

This turns off `client: true` for these group-based settings,
because there is no guarantee that the current user gets all
their group memberships serialized to the client. Better to check
server-side first.
2024-02-08 09:43:34 +10:00
57c53b0ead DEV: Do lazy_load_categories check inside asyncFindByIds (#25600)
This way, we can use asyncFindByIds indiscriminately.
2024-02-07 17:33:59 -06:00
8058fd5b80 FIX: Add id to warn (#25597) 2024-02-07 17:20:08 -06:00
3da302716c DEV: Coalesce category ids to numbers (#25598)
Otherwise, if you pass in strings, strange things happen.
2024-02-07 17:19:58 -06:00
6341bfa0b6 Build(deps-dev): Bump minitest from 5.22.0 to 5.22.1 (#25595) 2024-02-07 23:21:38 +01:00
9a9277aaa2 Build(deps-dev): Bump parallel_tests from 4.4.0 to 4.5.0 (#25594) 2024-02-07 23:21:00 +01:00
30922855f2 PERF: Don't allow a single user to monopolize the defer queue (#25593) 2024-02-07 13:47:50 -06:00
67229a7739 DEV: switch to asyncFindByIds in category-list site-setting component (#25592)
We no longer want to rely on preloading every single category, which
means we need to do http requests for categories when we need them.
2024-02-07 12:07:32 -06:00
225db41bfc DEV: Remove service-worker fetch handler entirely when cache disabled (#25591)
Followup to c4559ae5751fce09b6d43f71887a310f7ba2670d
2024-02-07 14:57:40 +00:00
490041a435 UX: add padding to bottom of mobile chat channel settings page (#25587)
The leave channel button is cut off when accessing the channel settings page on mobile.

This change adds additional padding to the bottom of the channel settings page when accessing via iPad/PWA/Hub.
2024-02-07 22:14:26 +08:00
767b49232e FIX: Omit CSP nonce and hash values when unsafe-inline enabled (#25590)
Browsers will ignore unsafe-inline if nonces or hashes are included in the CSP. When unsafe-inline is enabled, nonces and hashes are not required, so we can skip them.

Our strong recommendation remains that unsafe-inline should not be used in production.
2024-02-07 12:35:35 +00:00
c4559ae575 DEV: Add disable_service_worker_cache global setting (#25589)
When enabled, the workbox caching logic in the service worker will be replaced with a very simple offline error page. We plan to use this as an experiment to see how it affects performance and stability of Discourse.
2024-02-07 10:44:12 +00:00
dea753a204 FIX: Restore support for .js.es6 files in PrettyText (#25588)
Regressed in 1757a688c4749968db8e27623b975fc57519b97a

https://meta.discourse.org/t/294155
2024-02-07 09:34:31 +00:00
32ee0e3c0a FIX: Similar topics relying on widget search menu (#25586) 2024-02-07 18:15:54 +11:00
f9789e974b DEV: Reduce pool size for test environment to 1 (#25584)
Why this change?

I have been investigating transaction related issues with our system
tests and I have a hard time figuring out what is causing the problem.
To help simplify our environment further, we will set the pool size in
the test environment to 1 so that it is impossible for us to be fetching
a different connection between the threads since they all share the
connection pool.

Also set `reaping_frequency` to `0` to ensure we don't reap any
connection ensuring the same connection is always used.
2024-02-07 11:10:17 +08:00
95a2d285d3 FEATURE: Add new 'illegal' flag reason (#25498)
To comply with Digital Services Act we need a way for users to flag a post as potentially illegal. This PR adds that functionality.
2024-02-07 10:12:22 +08:00
21a830b53d FIX: Clicking a notification was triggering an error (#25583) 2024-02-07 00:21:44 +01:00
c8c20585a7 Update translations (#25579) 2024-02-06 22:35:44 +01:00
32c7063d57 Build(deps-dev): Bump webmock from 3.19.1 to 3.20.0 (#25582)
Bumps [webmock](https://github.com/bblimke/webmock) from 3.19.1 to 3.20.0.
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.19.1...v3.20.0)

---
updated-dependencies:
- dependency-name: webmock
  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-02-06 22:29:32 +01:00
48ea0675bb Build(deps): Bump zeitwerk from 2.6.12 to 2.6.13 (#25581)
Bumps [zeitwerk](https://github.com/fxn/zeitwerk) from 2.6.12 to 2.6.13.
- [Changelog](https://github.com/fxn/zeitwerk/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fxn/zeitwerk/compare/v2.6.12...v2.6.13)

---
updated-dependencies:
- dependency-name: zeitwerk
  dependency-type: indirect
  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-02-06 22:29:09 +01:00
13186e6790 FIX: Correct className for notification avatars using system avatar (#25578) 2024-02-06 14:47:35 -06:00
Sam
090252bc39 FIX: Visits for TL3 actually means "Posts Read: unique days" (#25468)
This fixes a quirk in the TL3 report where we were calling the column "visits" but it actually meant "Posts Read: unique days"
2024-02-07 07:46:42 +11:00
59ccb69db0 FEATURE: show unread post indicator on mobile (#25421) 2024-02-06 11:50:49 -05:00
85ea4e44de DEV: Fix minor broken category link in ADMIN-QUICK-START-GUIDE.md (#25551)
Change the broken category link `#feedback` to `#site-feedback` instead, which is an existing default category.
2024-02-06 11:19:40 -05:00
8abc7baf7c FIX: Save previous chat state when navigating with the sidebar (#25537) 2024-02-06 13:11:12 -03:00
5c43fd5054 DEV: Remove widget search menu (#25545) 2024-02-06 08:52:24 -07:00
2caaadea4a UX: grant names some more space on /u (#25576) 2024-02-06 09:32:07 -05:00
7fcd7d53f9 DEV: Update RestModel and RestAdapter to native class syntax (#25544)
This commit also updates a handful of simple adapters which overrode the jsonMode or primaryKey options. These updates are necessary because class fields cannot be overwritten via `EmberObject`'s `.extend()` syntax. These options do not appear to be widely used by themes/plugins.
2024-02-06 12:22:08 +00:00
c37c00e9d8 DEV: Enable rspec full_cause_backtrace option (#25577)
This new rspec option shows the entire backtrace in the '--- Caused by: ---' section of RSpec failures.
2024-02-06 10:56:49 +00:00
caffcf3a9a COPY: Update client.en.yml to rename email settings menu item
Changed emails > "Settings" to emails > "Email Settings" to differentiate it better from the main site settings menu item.
2024-02-06 09:29:28 +10:00
e412b6cce2 FIX: Insert Hyperlink search badge spacing (#25563)
The spacing for category badges and tags was missing
spacing in the Insert Hyperlink modal search results,
making everything look cramped.
2024-02-06 09:19:42 +10:00
fba894d049 Build(deps): Bump ember-template-imports from 4.0.0 to 4.1.0 in /app/assets/javascripts (#25572)
* Build(deps): Bump ember-template-imports in /app/assets/javascripts

Bumps [ember-template-imports](https://github.com/ember-template-imports/ember-template-imports) from 4.0.0 to 4.1.0.
- [Release notes](https://github.com/ember-template-imports/ember-template-imports/releases)
- [Changelog](https://github.com/ember-template-imports/ember-template-imports/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ember-template-imports/ember-template-imports/compare/v4.0.0...v4.1.0)

---
updated-dependencies:
- dependency-name: ember-template-imports
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update lockfiles for ember version flag

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: discoursebuild <build@discourse.org>
2024-02-06 00:11:40 +01:00
96b742d328 Build(deps-dev): Bump minitest from 5.21.2 to 5.22.0 (#25573)
Bumps [minitest](https://github.com/minitest/minitest) from 5.21.2 to 5.22.0.
- [Changelog](https://github.com/minitest/minitest/blob/master/History.rdoc)
- [Commits](https://github.com/minitest/minitest/compare/v5.21.2...v5.22.0)

---
updated-dependencies:
- dependency-name: minitest
  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-02-05 23:57:16 +01:00
8561fd78d8 DEV: Convert site-settings/category-list to glimmer component (#25571) 2024-02-05 14:23:08 -06:00
a20bf843fc DEV: Switch site-settings category-list component to gjs (#25569) 2024-02-05 12:03:35 -06:00
3159522546 DEV: Correct some tl to group site setting changes (#25550)
- Created a new migration for here_mention
- Updated existing migration for here_mention
- Updated site settings for here_mention, create_tag, and
  send_email_messages
2024-02-05 09:50:46 -07:00
a764ab5b54 DEV: Update min trust level to tag topics migration to groups (#25527)
* DEV: Update min trust level to tag topics migration to groups

- Update the existing migration to include staff and admin
- Update default values
- Added migration to include staff and admin cases
2024-02-05 09:49:54 -07:00