"Hidden" standard with helper tools for WPCS maintainers
There are a number of lists in WPCS which should be updated on a regular basis - on every WP release - and gathering the information needed for this manually is a big maintenance burden.
Think:
- List of WP native global variables - also see #924
- List of deprecated hooks
- List of deprecated functions
- List of deprecated function arguments
- List of all class names in the correct case
- ... etc
It would be relatively easy to create a few sniffs which could be run over WP Core to gather this information. Those sniffs however would have no value for the end-users of WPCS, only for WPCS developers.
So, what I'm proposing is as follows:
- Add a new folder
AnalyseWPCorewith aruleset.xmland sniff directory. - Add this folder to
.gitattributesto beexport-ignored. This way it will not be available in released versions of WPCS, but will only be available in git clones. - Over time add some custom sniffs to that directory which can gather the information we need to easily update the above mentioned lists.
Potentially future enhancements:
- Add some custom reports which would pre-format the output of certain sniffs in a way that the output could just be copy/pasted into the right lists.
- Add a bash script to run the reports in one go and potentially even update the lists in WPCS automatically.
- Potentially run the reports via GH Actions on a cron schedule an automatically open an issue/PR/post to Slack when an update is needed.
Note: we need to be careful about running against WP
trunkthough as we don't want WPCS to start flagging things which haven't been released et.
Opinions ?
FYI: I've already got a variation of the PrefixAllGlobals sniff ready for instance to allows us to update the global variables list easily.
FYI: I've made a very very preliminary start with this as the sniffs have to be checked against WP Core for the WPCS 3.0.0 release again and manually checking everything is time consuming, error prone and tedious.