Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added typing / comments to the ScrubberInterface and Scrubber class #591

Merged
merged 1 commit into from
Jan 4, 2023

Conversation

danielmorell
Copy link
Collaborator

Description of the change

This PR adds better typing and comments to the ScrubberInterface to make implementation less error prone. In the process it seemed best to add these same updates to the Scrubber class as well.

The update of the Scrubber class required some additional updates around the serialization of the Payload class. Since the Scubber::scrub() method is only ever given the output of Payload::serialize(), I updated the scrub() method to only accept an array as the $data argument. This is stricter than it was previously, however, the only usage that deviates from array is in the tests. Additionally, if scrubbing of other types is needed, the Scrubber::internalScrub() method is unlike its name would lead you to believe public.

Other changes

  1. The MalformedPayloadDataTransformer serialized payload was changed from false to an empty array.
  2. The previous change caused the response HTTP status code to change from 400 to 422.
  3. I cleaned up the logic and local variable usage of the anonymous function used for array_walk() in Scrubber::scrubArray().

Type of change

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Maintenance
  • New release

Related issues

None

Checklists

Development

  • Lint rules pass locally
  • The code changed/added as part of this pull request has been covered with tests
  • All tests related to the changed code pass in development

Code review

  • This pull request has a descriptive title and information useful to a reviewer. There may be a screenshot or screencast attached
  • "Ready for review" label attached to the PR and reviewers assigned
  • Issue from task tracker has a link to this pull request
  • Changes have been reviewed by at least one other engineer

@danielmorell danielmorell added the Type: Maintenance General up-keep, or changes that tidy an existing component or process. label Jan 3, 2023
@danielmorell danielmorell added this to the v4.0.0 milestone Jan 3, 2023
Copy link
Contributor

@waltjones waltjones left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@danielmorell danielmorell merged commit 44bf101 into next/4.0/main Jan 4, 2023
@danielmorell danielmorell deleted the 4.0/update-scrubber-interface branch January 4, 2023 12:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Maintenance General up-keep, or changes that tidy an existing component or process.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants