Commit graph

5058 commits

Author SHA1 Message Date
Adrià Casajús
8c2ca506ff Added metrics for alias creation and contact creation 2025-06-16 14:54:10 +02:00
Adrià Casajús
71330c7703 Move unmark to abuser file 2025-06-16 13:16:29 +02:00
Adrià Casajús
0211e044bf
Update uv in Dockerfile (#2496)
* Update uv in Dockerfile

* Update workflow

* Update last entry of workflow

* Set the uv version as an env var

* Update variable use
2025-06-16 12:38:29 +02:00
Bohdan Shtepan
cda2a107f8
feat: Integrate SL alias note in event system. (#2495)
* feat: Integrate SL alias note in event system.

* fix: fixes protobuf Gencode/Runtime version mismatch.

* fix: remove redundant emit_alias_audit_log call.
2025-06-11 09:33:49 +00:00
Bohdan Shtepan
4975c89066
SL abuser system improvements (#2494)
* IDTEAM-4828: Allow to search abuser by user id not just by email.

* IDTEAM-4827: Add abuser admin logs to abuser page.

* IDTEAM-4826: Run the abuser bundle generation in a job with low prio.
2025-06-11 10:53:34 +02:00
Carlos Quintana
74baba5a99
chore: add logs on alias creation (#2487) 2025-06-10 15:25:04 +02:00
Carlos Quintana
fa88c935d3
fix: raise Exception instead of calling unimplemented method 2025-06-02 13:19:20 +02:00
Carlos Quintana
93d270baf4
chore: change log messages for email_handler 2025-06-02 13:18:58 +02:00
Adrià Casajús
a6f389470c
Rotate the session just after login (#2483)
* Rotate the session just after login

* Add pending deletion of user to admin panel

* reforemat
2025-05-28 13:24:04 +00:00
Adrià Casajús
ee04839572
Use partner domains always in the validation (#2482) 2025-05-27 12:18:14 +02:00
Bohdan Shtepan
720b4a0608
feat: adds abuser lookup admin view. (#2472)
* feat: adds abuser lookup admin view.

* fix: restore test.env

* feat: update the ui for the abuser lookup view.

* feat: update the one-shot job to do the thing in batches.
2025-05-20 14:13:28 +00:00
Adrià Casajús
5de4ec3ea6
Revamp the unlink from partner flow (#2475)
* Update unlink from proton flow

* Update pre-commit
2025-05-20 09:38:04 +00:00
Bohdan Shtepan
deafb529fa
feat: added abuser utils for main abuser (un)archiving flows. (#2468)
* feat: added abuser utils for main abuser (un)archiving flows.

* feat: update the abuser utils to use external secrets in conjuction with HMAC; add abuser audit log.

* fix: revert the DB_URI part.

* feat: address feedback.

* feat: address feedback.

* feat: address feedback.

* feat: address feedback.

* feat: address feedback.
2025-05-19 14:59:50 +02:00
Carlos Quintana
b13a07bd6b
fix: commit alias deletion on API + add filter on trashed aliases in api (#2470) 2025-05-15 08:34:21 +00:00
Adrià Casajús
f7882e971e fix: use the domain part of the domain to check if it is a proton addrss 2025-05-14 11:02:47 +02:00
Adrià Casajús
45db4a43ef
Take also into account smtp sending time when there is an error (#2466)
* Take also into account smtp sending time when there is an error

* Add event with the error type
2025-05-12 10:47:08 +00:00
Bohdan Shtepan
4aa126fe0f
IDTEAM-4740: use parallel_limiter to prevent auth_mfa abusing. (#2464)
* IDTEAM-4740: use parallel_limiter to prevent auth_mfa abusing.

* IDTEAM-4740: put back the regular rate limiter.
2025-05-12 10:23:19 +02:00
Carlos Quintana
300500c0c6
fix: flash message content in alias moved to trash (#2461) 2025-05-08 08:56:07 +00:00
Carlos Quintana
1bc0c98834
chore: add missing postgresql_concurrently to migration (#2460) 2025-05-08 08:07:09 +00:00
Carlos Quintana
5a778eb8d6
fix: flash message content in alias moved to trash (#2458) 2025-05-07 17:06:13 +02:00
Emmanuel Ferdman
abc981fa08
fix: migrate to logger.warning usage (#2456)
Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>
2025-05-07 14:44:02 +00:00
Carlos Quintana
a3d7732ed8
test: skip apple payment test (#2457) 2025-05-07 16:39:09 +02:00
Carlos Quintana
6e898b141a
Add debug message when retrying message (#2455)
Co-authored-by: Adrià Casajús <adria.casajus@proton.ch>
2025-05-06 17:10:54 +02:00
Carlos Quintana
e68d395554
fix(job-runner): add newrelic annotation to job runner (#2454) 2025-05-06 14:06:12 +00:00
Carlos Quintana
8770b5eaf9
fix: add missing on-delete-cascade constraint (#2453) 2025-05-06 12:01:51 +02:00
Carlos Quintana
6b0c920c03
fix: admin panel delete domain and time calculation (#2449)
* fix(admin): only show delete domain if domain is not pending to be deleted

* fix(oneshot): oneshot script removal and time calculation fix
2025-05-05 09:29:46 +00:00
Carlos Quintana
46b42042db
chore: add missing index for job (#2450) 2025-05-05 11:25:03 +02:00
Carlos Quintana
c1e72bb460
chore: add log message when job is done (#2448)
* fix: schedule subscription job fixes

* chore: add log when job has finished
2025-04-30 10:07:48 +00:00
Carlos Quintana
8369e9e216
fix: schedule subscription job fixes (#2447) 2025-04-30 11:55:13 +02:00
Carlos Quintana
b0562e3b8a
fix: time calculation division check (#2446) 2025-04-30 09:15:50 +00:00
Adrià Casajús
3e3931104b
schedule job script fixes (#2445)
Co-authored-by: Carlos Quintana <74399022+cquintana92@users.noreply.github.com>
2025-04-30 08:48:27 +00:00
Carlos Quintana
846938e610
feat(admin): allow to remove custom domain (#2442) 2025-04-30 08:41:32 +00:00
Carlos Quintana
b4945bde33
feat: add job to schedule subscription sync (#2443) 2025-04-30 10:08:11 +02:00
Son Nguyen Kim
e7eae199ec
improve copy (#2438)
Co-authored-by: Son NK <son@simplelogin.io>
2025-04-22 10:13:10 +02:00
Carlos Quintana
0e95f3d047
feat: allow to limit max email recipients (#2436)
* feat: allow to limit max email recipients

* Set cmake min version

---------

Co-authored-by: Adrià Casajús <adria.casajus@proton.ch>
2025-04-14 16:03:02 +02:00
Carlos Quintana
c7cbc7a4c8
chore: update error message alias custom domain (#2432) 2025-04-04 12:36:59 +02:00
Adrià Casajús
77bd9730ab
Update rate limit to take into account user ID with several fixes (#2431)
* Add more debug info

(cherry picked from commit 4bda49e7ad)

* Add rate limit

* Fix dockerfile to force CMAKE version policy

(cherry picked from commit 2e4a86f9c0)
2025-03-31 12:04:51 +02:00
Carlos Quintana
7a707bdb6d
fix: trash custom domain alias deletes it (#2429)
* fix: trash custom domain alias deletes it

* chore: remove redundant commits
2025-03-27 16:33:49 +01:00
Carlos Quintana
2c1abd05fa
fix: limit schemes for proton oauth (#2428) 2025-03-27 09:57:04 +01:00
Carlos Quintana
29a6350299
fix: alias trash copy (#2427) 2025-03-26 15:47:12 +00:00
Adrià Casajús
a0ba3b1a71
Add config to force http unsub for a certain set of users (#2425) 2025-03-26 09:56:59 +00:00
Carlos Quintana
9e8ee6467c
fix: only allow api_to_cookie if is for same user (#2423) 2025-03-20 15:45:24 +01:00
Adrià Casajús
8acc48d997
Remove nex in activation email and allow to disable change linking accounts in proton (#2421) 2025-03-20 10:38:07 +00:00
Adrià Casajús
bb4d51d6e0
Preserve List-ID (#2420) 2025-03-19 15:05:25 +01:00
Adrià Casajús
3962ab5fb0
Preserve Unsubscribe header and create one that always unsubs via alias (#2419)
* Preserve original unsubs

* Preserve original behaviour in an extra header
2025-03-19 10:59:18 +01:00
Carlos Quintana
84364a1684
feat: alias restore check quota (#2418)
* feat: alias restore check quota

* Update app/dashboard/views/alias_trash.py

Co-authored-by: Adrià Casajús <acasajus@users.noreply.github.com>

* Update app/dashboard/views/alias_trash.py

Co-authored-by: Adrià Casajús <acasajus@users.noreply.github.com>

---------

Co-authored-by: Adrià Casajús <acasajus@users.noreply.github.com>
2025-03-18 11:05:09 +00:00
Carlos Quintana
a70baad478
Implement Alias Trash (#2417)
* wip: start implementing alias trash

* Added alias trash dashboard page

* test: delete_alias changes

* Format html

* fix: mailbox deletion

* feat: add delete_alias_action setting in dashboard settings

* chore: disable alias when trashing it

* Add restore tests

* Move tras/restore to alias_actions

* rename alias_actions to alias_delete

* Remove alias_actions

* Send events and alias audit log on alias restore

* feat: adapt queries to trashed alias

* chore: add metrics on alias trash actions

* fix: missing empty arg

* Add rate limit for restore and restore all

* fix: mailbox alias count

* feat: properly handle alias deletion for custom domain deletion

* chore: add error logs

* chore: update alias trash copy + change Trash location

* feat: make can_create_new_alias not take trashed aliases into account

* chore: update mailbox deletion dialog copy

---------

Co-authored-by: Adrià Casajús <adria.casajus@proton.ch>
2025-03-18 10:10:56 +01:00
Carlos Quintana
352be83839
deps: update flask-limiter and redis deps (#2406) 2025-03-04 09:48:38 +01:00
Carlos Quintana
78aa169c10
feat: add monitoring to job runner (#2404)
* feat: add monitoring to job runner

* feat: add proper error handling in job runner

* chore: unify newrelic metric
2025-02-27 15:42:20 +00:00
Carlos Quintana
7ecae793d7
deps: pin dkimpy to 1.0.5 to avoid py3dns dependency (#2405) 2025-02-27 15:27:32 +00:00