Commit graph

273 commits

Author SHA1 Message Date
Tom Hughes
ab4f96261f Drop explicit lengths from bigint columns 2025-02-28 17:22:56 +00:00
Tom Hughes
a87cd780d6 Only count reports from distinct users in spam checks 2025-02-16 14:08:22 +00:00
Tom Hughes
f1954a591c Include spam reports on unresolved issues in the spam score 2025-02-15 13:54:04 +00:00
Tom Hughes
5eb4c7c0d1 Rename friends rate limit as follows 2025-01-17 23:01:55 +00:00
Tom Hughes
bc630bca87 Rename friends_with to follows 2025-01-17 22:58:35 +00:00
nertc
be11f2075e Refactor friendships controller and model 2025-01-14 11:33:56 +04:00
gobinathal
2d8feb6d79 Remove hardcoded rate limit value
Name is chosen to match the equivalent setting in the configuration
of the rate limits for edits.

Fixes #4427.
2024-11-07 18:33:53 +00:00
Anton Khorev
001fed4fd7 Create note subscription table and model 2024-10-28 02:35:25 +03:00
Tom Hughes
81bb20c3e6 Drop ignore of removed creation_ip column 2024-09-20 19:21:58 +01:00
Tom Hughes
5bac49c51f Ignore the creation_ip column which is no longer used 2024-09-15 21:39:25 +01:00
Tom Hughes
336ad6db03 Add creation_address column to users
This is a properly typed and indexed column that is intended
to replace creation_ip to allow fast queries.
2024-09-10 19:16:03 +01:00
Tom Hughes
17bc0853a0 Drop support for OAuth 1 2024-09-01 03:43:02 +03:00
Nenad Vujicic
a4d3d324ec Add note and diary comments counts to the user profile
Fixes #1643
2024-06-07 21:20:42 +02:00
Tom Hughes
ca893c1153 Fix new rubocop warnings 2024-05-21 18:21:56 +01:00
Milan Cvetkovic
f8a606869e Remove email confirmation field in signup form 2024-04-27 12:44:09 +01:00
Tom Hughes
d56322a0dd Consistently exclude hidden diaries from spam scoring 2024-03-12 00:13:57 +00:00
Tom Hughes
29cc21c599 Drop user tokens table 2024-02-28 21:02:54 +00:00
Tom Hughes
3360f91733 Require display names to have a minimum unicode width of 3 columns
Fixes #4538
2024-02-25 13:21:03 +00:00
Tom Hughes
4dff06a629 Use rails tokens for signup confirmations 2024-02-24 13:53:05 +00:00
Tom Hughes
ad2739347b Use rails tokens for email changes 2024-02-24 13:52:35 +00:00
Tom Hughes
b8fad531e4 Use rails tokens for password resets 2024-02-24 13:23:19 +00:00
Andy Allan
c9a86866bb
Merge pull request #4485 from tomhughes/drop-lower-index
Drop lowercase index on display names
2024-01-18 10:49:52 +00:00
Andy Allan
7406ae5dcc
Merge pull request #4218 from AntonKhorev/no-user-id-renames
Disallow username changes to user_n if n isn't their id
2024-01-18 10:47:17 +00:00
Andy Allan
0a21080192 Move change detection to validation declaration
This aligns with other validations. Also add test to ensure unchanged
display_names are treated as valid.
2024-01-18 10:33:56 +00:00
Anton Khorev
2c342adc0d Disallow username changes to user_n if n isn't their id 2024-01-18 10:33:56 +00:00
Tom Hughes
9db635a992 Drop lowercase index on display names 2024-01-17 19:05:25 +00:00
Andy Allan
d5efa4c357
Merge pull request #4405 from tomhughes/normalize-display-name
Require user names to be unique after unicode normalisation
2024-01-17 16:24:09 +00:00
Tom Hughes
242a4a1aee Include both copies of the password in the saved user
This allows is to go back to hashing passwords when the user is saved.

Fixes #4474
2024-01-12 17:55:16 +00:00
Gregory Igelmund
efc61f1315 Add basic structures for UserMute and Message muting logic
Including models, migration, controllers, views & locales.
2023-12-19 12:57:47 -05:00
Tom Hughes
c12f8959dd Require user names to be unique after unicode normalisation
As with the previous checks on case sensitivity this only affects
new users, and changes to names of existing users.
2023-12-13 22:27:36 +00:00
Anton Khorev
a8aaf62e62 Add earliest allowed deletion time to user model 2023-11-22 17:02:48 +03:00
Tom Hughes
aaed886890 Hash passwords as soon as a new user is created 2023-11-16 01:02:11 +00:00
Tom Hughes
c6bb4a5f4e Add importer role that can be associated with higher rate limits 2023-11-02 08:58:12 +00:00
Tom Hughes
b5995c5175 Only count new reports as active for rate limits 2023-11-02 08:44:43 +00:00
Gregory Igelmund
a4edd3fd04
Annotate models 2023-10-14 11:19:13 +08:00
Tom Hughes
e210b4efbf Improve naming of changeset comment rate limit settings 2023-08-30 18:25:06 +01:00
Tom Hughes
a274726f46 Add rate limiting for changeset comments
Fixes #4196
2023-08-25 19:53:04 +01:00
Tom Hughes
6982903ae7 Fix predicate method names in the user model 2023-08-15 18:53:14 +01:00
Anton Khorev
033c032ed6 Add home location condition to user model 2023-08-11 21:44:15 +03:00
Tom Hughes
445e8162e9 Revoke authentication tokens when a user is deleted 2022-12-23 16:24:10 +00:00
Andy Allan
561ee71129 Rubocop autofix: ambiguous operator precedence
This simply adds braces to clarify which mathematical operator comes
first.
2022-04-06 14:55:29 +01:00
Tom Hughes
cbcc7dc49f Fix some rubocop Naming/PredicateName warnings 2022-03-03 22:47:55 +00:00
Tom Hughes
03fdc6d67f Add inverse_of to relationships that can't detect it automatically 2022-02-23 19:23:51 +00:00
Tom Hughes
53aa7259bb Merge remote-tracking branch 'upstream/pull/3345' 2022-02-13 18:39:21 +00:00
Andy Allan
2d47d6b4f8 Ensure that deactivate isn't available in production
It's only used as a workaround for factories not being able to create
pending users while keeping active as the default
2022-02-02 17:48:17 +00:00
Andy Allan
2731e7244a Add extra user transitions needed by the administrators 2022-02-02 16:37:50 +00:00
Andy Allan
1a11c4dc19 Use a state machine for user status
The user status is a bit complex, since there are various states and
not all transitions between them make sense.

Using AASM means that we can name and restrict the transitions, which
hopefully makes them easier to reason about.
2022-01-12 18:16:14 +00:00
Tom Hughes
0ca2e10b1d Merge remote-tracking branch 'upstream/pull/3404' 2021-12-22 15:36:25 +00:00
Tom Hughes
5a70476d38 Merge remote-tracking branch 'upstream/pull/3403' 2021-12-22 15:26:23 +00:00
Andy Allan
99a64ba8c1 Remove unused require statement
The corresponding code was removed in a65cb84288
2021-12-22 15:08:06 +00:00