Page MenuHomePhabricator

Follow-up for Automating GDPR Requests
Closed, ResolvedPublic

Description

Update our script (and its test cases) from T410856 by adding support for the following:

  • Emails can be separated by either tabs or multiple spaces (with test cases)
  • Searching for emails should be case-insensitive (with test cases)

Event Timeline

Andrew-WMDE changed the task status from Open to Stalled.Tue, Jan 20, 9:29 AM

@Anton.Kokh @Ollie.Shotton_WMDE please verify I didn't miss anything here.

Emails can be separated by either tabs or multiple spaces

FYI, I did test the current script locally, and it does work with both tabs and multiple spaces.


Searching for emails should be case-insensitive

In addition to this, I think the script should output what is found in the database and not what is searched for.


I think @Tarrow also raised the topic of if we should also match email sub-addresses. E.g. find email+subaddress@example.com if email@example.com is searched for. @Anton.Kokh is this a feature you require?

@Ollie.Shotton_WMDE No, only the emails that users explicitly requested to find

Emails can be separated by either tabs or multiple spaces

FYI, I did test the current script locally, and it does work with both tabs and multiple spaces.

That's great, but we should add test cases for this.

Searching for emails should be case-insensitive

In addition to this, I think the script should output what is found in the database and not what is searched for.

I don't know how trivial it will be to return what was found. How important is it that we have this?

That's great, but we should add test cases for this.

Yes! 100% agree, thanks.

I don't know how trivial it will be to return what was found. How important is it that we have this?

Blah! Not very important, if it's not a quick fix I wouldn't worry about it (roll d20, intelligence check failed, nerd snipping unsuccessful! 😅).

Tarrow changed the task status from Stalled to Open.Wed, Jan 21, 9:13 AM

It was waiting for the PM + some engineers to double check the description but we have now done that in the daily

Argument splitting happens at the shell level see. Laravel only receives the final argv array and has no knowledge of how the arguments were separated (spaces, tabs, etc.), so am not sure how best to unit test this. I also don’t think we should change the input handling, since mail:send {user*} is the standard Laravel pattern for this.

rosalieper opened https://github.com/wbstack/api/pull/1042

Add case insensitiviti to email search + test cases

Argument splitting happens at the shell level see. Laravel only receives the final argv array and has no knowledge of how the arguments were separated (spaces, tabs, etc.), so am not sure how best to unit test this. I also don’t think we should change the input handling, since mail:send {user*} is the standard Laravel pattern for this.

I am happy to hear thoughts on this @Andrew-WMDE @Ollie.Shotton_WMDE

Argument splitting happens at the shell level see. Laravel only receives the final argv array and has no knowledge of how the arguments were separated (spaces, tabs, etc.), so am not sure how best to unit test this. I also don’t think we should change the input handling, since mail:send {user*} is the standard Laravel pattern for this.

I am happy to hear thoughts on this @Andrew-WMDE @Ollie.Shotton_WMDE

@Rosalie_WMDE thanks for checking up on that. I'll go ahead and drop that test requirement.

rosalieper closed https://github.com/wbstack/api/pull/1042

Add case insensitivity to email search + test cases

rosalieper closed https://github.com/wbstack/api/pull/1043

Reduce number of queries executed in the WikiUserEmailChecker service