Automattic / Automattic/VIP-Coding-Standards

Audit Public Sniff Properties

Abierto
#234 7 comentarios 0 reacciones 0 asignados Ver en GitHub
Type: Maintenance
Lenguaje dominante
PHP
Estrellas
261
Forks
44
Merge medio
19 min
PR fusionados (30 d)
1

Descripción

## What problem would the enhancement address for VIP?

There are 47 instances of public properties within sniff classes. Public properties allow changing sniff behaviour by customising a ruleset by passing different types of values via the ruleset. VIP [uses](https://github.com/Automattic/VIP-Coding-Standards/blob/918b0ca0fe986ae58babd77c7ab5e0ff7a6f7eb5/.phpcs.xml.dist#L29) itself to adjust how a WPCS sniff runs.

However, I suspect that some of the instances are NOT meant to be changed - whitelisted Batcache params, restricted constant names and declarations, etc.

## Describe the solution you'd like

Audit the uses and convert to `private` where suitable. Document the rest on a [wiki page](https://github.com/Automattic/VIP-Coding-Standards/wiki/Custom-properties-for-VIPCS-Sniffs).

I'll create a linked list of the 47 instances, possibly along with who added them, to check if they are meant to be public or not.

For those that are meant to be changeable, then a better approach for some cases is to have a private default list of values, and then a public custom list, and the two lists merged together - that way, the custom rulesets don't need to also add in the default values as well.

## Additional context
Note that this would technically be a breaking change, since it is possible that someone was already making use of these unintentional public properties in their own rulesets. As such, this would require a bump from `0.y.z` to `0.y+1.0`, or a normal major release if `1.0.0` has been released in the meantime.

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Revisa las 47 propiedades públicas de las clases de sniff, comenzando por el override de VIP en .phpcs.xml.dist y la lista enlazada de instancias cuando esté disponible. Para cada propiedad, determina si está destinada a ser configurable o privada, y registra las directrices sobre propiedades configurables en la página wiki Custom properties for VIPCS Sniffs. Se considera terminado cuando las propiedades adecuadas son privadas, las propiedades restantes están documentadas y se ha abordado el impacto del lanzamiento con breaking change.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
php
Área
documentation, tooling
Tipo de issue
Refactorización
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
25/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.