wordpress-seo icon indicating copy to clipboard operation
wordpress-seo copied to clipboard

Td/class syntax

Open FAMarfuaty opened this issue 10 months ago • 0 comments

Context

  • We want to use class syntax for all our our classes, instead of the somewhat archaic use of prototype (reference). This PR deals with that.
  • This PR also prepares for supplying TypeScript annotations.

Summary

This PR can be summarized in the following changelog entry:

  • Rewrites JavaScript prototype-based classes into the newer class syntax.

Relevant technical choices:

Test instructions

Test instructions for the acceptance test before the PR gets merged

This PR can be acceptance tested by following these steps:

  • Confirm that all unit tests pass.
  • Do a quick smoke test of the content analysis. Nothing should break, but better safe than sorry!
  • Please perform this smoke test on posts / products, and be sure to toggle the "cornerstone content" button, and confirm that cornerstone values are used.

Relevant test scenarios

  • [x] Changes should be tested with the browser console open
  • [x] Changes should be tested on different posts/pages/taxonomies/custom post types/custom taxonomies
  • [ ] Changes should be tested on different editors (Default Block/Gutenberg/Classic/Elementor/other)
  • [ ] Changes should be tested on different browsers
  • [ ] Changes should be tested on multisite

Test instructions for QA when the code is in the RC

  • [x] QA should use the same steps as above.

QA can test this PR by following these steps:

Impact check

This PR affects the following parts of the plugin, which may require extra testing:

  • The most dramatic changes are in the assessors per content type.

UI changes

  • [ ] This PR changes the UI in the plugin. I have added the 'UI change' label to this PR.

Other environments

  • [x] This PR also affects Shopify. I have added a changelog entry starting with [shopify-seo], added test instructions for Shopify and attached the Shopify label to this PR.

Documentation

  • [x] I have written documentation for this change. For example, comments in the Relevant technical choices, comments in the code, documentation on Confluence / shared Google Drive / Yoast developer portal, or other.

Quality assurance

  • [x] I have tested this code to the best of my abilities.
  • [x] During testing, I had activated all plugins that Yoast SEO provides integrations for.
  • [x] I have added unit tests to verify the code works as intended.
  • [ ] If any part of the code is behind a feature flag, my test instructions also cover cases where the feature flag is switched off.
  • [x] I have written this PR in accordance with my team's definition of done.
  • [x] I have checked that the base branch is correctly set.

Innovation

  • [ ] No innovation project is applicable for this PR.
  • [x] This PR falls under an innovation project. I have attached the innovation label.
  • [x] I have added my hours to the WBSO document.

Fixes https://github.com/Yoast/lingo-other-tasks/issues/388

FAMarfuaty avatar Apr 22 '24 10:04 FAMarfuaty