On Tue, 2017-07-11 at 16:30 +1000, Daniel Axtens wrote: > There is a test in expire_notifications() that tries to check if > the user's last login matches the date joined. (I think the login > date is not set until a post-activation login.) This does not work: > on patchwork.ozlabs.org there are 10k users that have never been > deleted. > > Drop the date test: it should be sufficient that a user is not > active and their confirmation is not pending. > > Reported-by: Stephen Rothwell <s...@canb.auug.org.au> > Signed-off-by: Daniel Axtens <d...@axtens.net>
This took me a bit to confirm, as I didn't want to go deleting accounts on a whim :) So it looks like 'User.is_active' gets set to False initially on creating an account [1], and is later set to True on account activation [2]. Additionally, the same cron job is responsible for expiring older confirmation notifications after a set internal. As such, checking if 'User.is_active' is False and that the User doesn't have any confirmation notifications for it is what we need, yes. Reviewed-by: Stephen Finucane <step...@that.guru> ...and applied. [1] https://github.com/getpatchwork/patchwork/blob/18a2b98a/patchwork/views/use r.py#L59 [2] https://github.com/getpatchwork/patchwork/blob/18a2b98a/patchwork/views/use r.py#L89 [2] https://github.com/getpatchwork/patchwork/blob/18a2b98a/patchwork/notificat ions.py#L105-L108 _______________________________________________ Patchwork mailing list Patchwork@lists.ozlabs.org https://lists.ozlabs.org/listinfo/patchwork