Adrià Casajús
0da1811311
Cleanup old data ( #2066 )
...
* Cleanup tasks
* Update
* Added tests
* Create cron job
* Delete old data cron
* Fix import
* import fix
* Added delete + script to disable pgp for proton mboxes
2024-03-18 16:00:21 +01:00
Adrià Casajús
aa2c676b5e
Only check HIBP alias of paid users ( #2065 )
2024-03-15 10:13:06 +01:00
Adrià Casajús
30ddd4c807
Update oneshot commands ( #2064 )
...
* Update oneshot commands
* fix
* Fix test_load command
* Rename to avoid test executing it
* Do HIBP breach check in batches instead of a single load
2024-03-14 16:03:43 +01:00
Adrià Casajús
e96de79665
Add missing indexes and mark aliases as created by partner ( #2058 )
...
* Add missing indexes and mark aliases as created by partner
* Configure if we should skip the partner aliases or not
2024-03-13 14:30:17 +01:00
Adrià Casajús
76423527dd
Update HIBP async script ( #2043 )
...
* Update HIBP async script
* Fix: continue instead of return
2024-03-04 13:12:38 +01:00
Adrià Casajús
173ae6a221
Allow to soft-delete users ( #2034 )
...
* Allow the possibility of soft-deleting users
* Unschedule for delete after link
* Add dry run to the cron
2024-02-22 17:38:34 +01:00
Adrià Casajús
31896ff262
Replace black and flake8 with ruff ( #1943 )
2023-11-21 16:42:18 +01:00
Adrià Casajús
e6bcf81726
Delete old email_log entries in batches to avoid table lock ( #1902 )
...
* Delete old email_log entries in batches to avoid table lock
* Avoid nested join
* Commiting after the batch delete
* Added statement count print
* Rename var
2023-10-02 10:50:02 +02:00
Adrià Casajús
373c30e53b
Schedule deletion of users ( #1872 )
...
* Accounts to be scheduled to be deleted cannot receive emails or login
* Create model and create migration for user
* Add test for the cron function
* Move logic to one place
* Use the class name to call the static delete method
2023-09-10 22:11:50 +02:00
Adrià Casajús
6e4f6fe540
Sanitize alias, contacts, mailboxes and users before creating them ( #1829 )
...
* Sanitize alias, contacts, mailboxes and users before creating them
* Updated comments and moved crons to run when load is low
* Run the stats at the same time as previously
---------
Co-authored-by: Adrià Casajús <adria.casajus@proton.ch>
2023-08-03 10:20:25 +02:00
Adrià Casajús
f2dad4c28c
Cron improvements ( #1826 )
...
* Yield on big queries and check the trial is active in the query directly
* Eagerly load the hibp aliases to check
* Updated trial condition
* Also yield referral
---------
Co-authored-by: Adrià Casajús <adria.casajus@proton.ch>
2023-07-31 15:14:13 +02:00
Adrià Casajús
e9e863807c
Add missing indexes ( #1824 )
...
* Rate limit the sudo route
* Add missing indexes
* Updated index
* Update index creation to run with concurrent
* With autocommit block
---------
Co-authored-by: Adrià Casajús <adria.casajus@proton.ch>
2023-07-29 10:03:31 +02:00
Adrià Casajús
90d60217a4
Feat: Re-deliver mails ( #1394 )
...
* Feat: Send undelivered emails
* Add cron job
* Added to the crontab
Co-authored-by: Adrià Casajús <adria.casajus@proton.ch>
2022-11-02 15:51:14 +01:00
Son Nguyen Kim
2f769b38ad
Apple in app fix ( #1369 )
...
* error log if issue with apple sub
* use the right secret when polling apple sub
2022-10-25 19:45:53 +02:00
Son Nguyen Kim
cea139b7d5
Improve handling when pgp key is invalid ( #1264 )
...
* remove unused email statuses
* add more logging
* use text_header if html_header not set
* improve email
* add a header about PGP failure when forward emails can't be encrypted
* remove unused email status
2022-09-02 11:47:04 +02:00
Son Nguyen Kim
ae2cbf98e2
Handle invalid pgp key ( #1260 )
...
* check invalid mailbox pgp key
* check if public key is valid before trying with pgpy
* fix query
* remove unused code
2022-09-01 15:10:11 +02:00
Son Nguyen Kim
72256d935c
do not notify lifetime user about coinbase sub ( #1254 )
2022-08-30 22:41:08 +02:00
Son Nguyen Kim
b299a305b5
Fix quarantine ( #1241 )
...
* add more logging
* fix quarantine email incorrect deleted_at
2022-08-18 14:47:05 +02:00
Adrià Casajús
3a75686898
Generate a web session from an api key ( #1224 )
...
* Create a token to exchange for a cookie
* Added Route to exchange token for cookie
* add missing migration
Co-authored-by: Adrià Casajús <adria.casajus@proton.ch>
2022-08-10 18:48:32 +02:00
Son Nguyen Kim
6aeb710ca0
add nb_proton_user, nb_proton_premium to daily metric email ( #1144 )
2022-07-05 18:00:28 +02:00
Son Nguyen Kim
66a2152ea3
Compute Proton metrics ( #1135 )
...
* compute nb_proton_premium
* compute nb_proton_user
2022-07-04 11:40:29 +02:00
Adrià Casajús
99ce10a1bc
Send email to users with a subscription and a partner plan upgrade ( #1101 )
...
* Send email to users with a subscription and a partner plan upgrade
* Update double-subscription-partner.html
* Update double-subscription-partner.txt.jinja2
Co-authored-by: Adrià Casajús <adria.casajus@proton.ch>
Co-authored-by: Son Nguyen Kim <nguyenkims@users.noreply.github.com>
2022-06-20 14:34:20 +02:00
Son
3d1a960702
fix duplicated stats
2022-02-28 10:43:30 +01:00
Son
c947e7cbd5
improve cron job
2022-02-15 09:36:37 +01:00
Son
cca23b753c
Extract daily monitoring report from stats()
2022-02-04 15:45:21 +01:00
Son
94bbade62e
refactor
2022-01-10 15:05:15 +01:00
Son
b306abb689
use yield_per_query() in cron whenever possible
2022-01-06 18:52:14 +01:00
Son
01cc9fe388
optimize migrate_domain_trash: bulk create and delete, keep track of progress
2022-01-06 18:30:56 +01:00
Son
17e9798bfd
do not use error level in migrate_domain_trash
2022-01-06 15:36:43 +01:00
Son
37bb7655d5
remove unused import
2022-01-06 15:30:33 +01:00
Son
55e3203512
refactor. Remove sleep when checking mailbox domain.
2022-01-06 15:13:59 +01:00
Son
3fb6dd4aeb
check if there's an email that starts with "\u200f" (right-to-left mark (RLM)) in cron
2022-01-06 11:07:50 +01:00
Son
414f6a2463
handle case a custom domain is deleted in the meantime
2022-01-03 10:07:41 +01:00
Son
f548e74e77
refactor
2022-01-03 10:06:56 +01:00
Son
b9e2a79933
enable email sending retry in cron job
2021-12-28 16:42:01 +01:00
Son
bd614278df
increase bounce info length
2021-12-28 10:51:43 +01:00
Son
922fa4925e
handle ObjectDeletedError
2021-12-28 10:21:26 +01:00
Son
32fffeaa6e
handle case bounce info too verbose in daily report
2021-12-26 22:25:00 +01:00
Son
4f9bb59b58
don't notify user who already have an non-canceled Paddle subscription
2021-12-01 17:18:19 +01:00
Son
d875b2e0e5
do not send renewal reminder for lifetime user
2021-11-28 12:35:03 +01:00
Son
cd553608a5
fix
2021-11-23 14:35:37 +01:00
Son
f049da8c9a
Compare mx domains with priority order and not priority value
2021-11-23 14:31:53 +01:00
Son
04d6ab519b
update the custom domain dns issue email template
2021-11-22 10:32:12 +01:00
Son
fdfa286d3e
allow contact email to be case sensitive
2021-11-18 16:44:04 +01:00
Son
bccfcee780
add subdomain and directory stats to Metric
2021-11-17 17:43:59 +01:00
Son
38e7a64f4f
improve daily report
2021-11-06 12:41:37 +01:00
Son
914696ef3b
re-enable bounce report in daily report
2021-11-04 14:28:19 +01:00
Son
d81e9fb75f
fix manual subscription reminder sent for lifetime user
2021-11-02 15:47:31 +01:00
Son
d27c19c33a
rename file
2021-11-02 11:42:20 +01:00
Son
67a8e0f9cc
rename file
2021-11-02 11:41:01 +01:00