Skip to content

Commit c9d9090

Browse files
committed
Ignore parameter count mismatches in apply_filters_ref_array() and do_action_ref_array().
1 parent fe8097a commit c9d9090

File tree

2 files changed

+3
-53
lines changed

2 files changed

+3
-53
lines changed

ISSUES.md

Lines changed: 0 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -28,56 +28,5 @@ _No hooks with empty variables._
2828

2929
Hooks where the number of `@param` tags does not match the `args` count.
3030

31-
- `check_passwords` — args: 1, params: 3 (wp-admin/includes/user.php)
32-
- `comment_feed_groupby` — args: 1, params: 2 (wp-includes/class-wp-query.php)
33-
- `comment_feed_join` — args: 1, params: 2 (wp-includes/class-wp-query.php)
34-
- `comment_feed_limits` — args: 1, params: 2 (wp-includes/class-wp-query.php)
35-
- `comment_feed_orderby` — args: 1, params: 2 (wp-includes/class-wp-query.php)
36-
- `comment_feed_where` — args: 1, params: 2 (wp-includes/class-wp-query.php)
37-
- `comments_clauses` — args: 1, params: 2 (wp-includes/class-wp-comment-query.php)
38-
- `comments_pre_query` — args: 1, params: 2 (wp-includes/class-wp-comment-query.php)
39-
- `found_posts_query` — args: 1, params: 2 (wp-includes/class-wp-query.php)
40-
- `found_posts` — args: 1, params: 2 (wp-includes/class-wp-query.php)
41-
- `get_meta_sql` — args: 1, params: 6 (wp-includes/class-wp-meta-query.php)
42-
- `http_api_curl` — args: 1, params: 3 (wp-includes/class-wp-http-curl.php)
43-
- `in_widget_form` — args: 1, params: 3 (wp-includes/class-wp-widget.php)
44-
- `networks_clauses` — args: 1, params: 2 (wp-includes/class-wp-network-query.php)
45-
- `networks_pre_query` — args: 1, params: 2 (wp-includes/class-wp-network-query.php)
46-
- `post_limits_request` — args: 1, params: 2 (wp-includes/class-wp-query.php)
47-
- `post_limits` — args: 1, params: 2 (wp-includes/class-wp-query.php)
48-
- `posts_clauses_request` — args: 1, params: 2 (wp-includes/class-wp-query.php)
49-
- `posts_clauses` — args: 1, params: 2 (wp-includes/class-wp-query.php)
50-
- `posts_distinct_request` — args: 1, params: 2 (wp-includes/class-wp-query.php)
51-
- `posts_distinct` — args: 1, params: 2 (wp-includes/class-wp-query.php)
52-
- `posts_fields_request` — args: 1, params: 2 (wp-includes/class-wp-query.php)
53-
- `posts_fields` — args: 1, params: 2 (wp-includes/class-wp-query.php)
54-
- `posts_groupby_request` — args: 1, params: 2 (wp-includes/class-wp-query.php)
55-
- `posts_groupby` — args: 1, params: 2 (wp-includes/class-wp-query.php)
56-
- `posts_join_paged` — args: 1, params: 2 (wp-includes/class-wp-query.php)
57-
- `posts_join_request` — args: 1, params: 2 (wp-includes/class-wp-query.php)
58-
- `posts_join` — args: 1, params: 2 (wp-includes/class-wp-query.php)
59-
- `posts_orderby_request` — args: 1, params: 2 (wp-includes/class-wp-query.php)
60-
- `posts_orderby` — args: 1, params: 2 (wp-includes/class-wp-query.php)
61-
- `posts_pre_query` — args: 1, params: 2 (wp-includes/class-wp-query.php)
62-
- `posts_request` — args: 1, params: 2 (wp-includes/class-wp-query.php)
63-
- `posts_results` — args: 1, params: 2 (wp-includes/class-wp-query.php)
64-
- `posts_search` — args: 1, params: 2 (wp-includes/class-wp-query.php)
65-
- `posts_where_paged` — args: 1, params: 2 (wp-includes/class-wp-query.php)
66-
- `posts_where_request` — args: 1, params: 2 (wp-includes/class-wp-query.php)
67-
- `posts_where` — args: 1, params: 2 (wp-includes/class-wp-query.php)
68-
- `pre_ping` — args: 1, params: 3 (wp-includes/comment.php)
69-
- `sites_clauses` — args: 1, params: 2 (wp-includes/class-wp-site-query.php)
70-
- `sites_pre_query` — args: 1, params: 2 (wp-includes/class-wp-site-query.php)
71-
- `terms_pre_query` — args: 1, params: 2 (wp-includes/class-wp-term-query.php)
72-
- `the_comments` — args: 1, params: 2 (wp-includes/class-wp-comment-query.php)
73-
- `the_networks` — args: 1, params: 2 (wp-includes/class-wp-network-query.php)
74-
- `the_post` — args: 1, params: 2 (wp-includes/class-wp-query.php)
75-
- `the_posts` — args: 1, params: 2 (wp-includes/class-wp-query.php)
76-
- `the_preview` — args: 1, params: 2 (wp-includes/class-wp-query.php)
77-
- `the_sites` — args: 1, params: 2 (wp-includes/class-wp-site-query.php)
78-
- `user_profile_update_errors` — args: 1, params: 3 (wp-admin/includes/user.php)
79-
- `users_pre_query` — args: 1, params: 2 (wp-includes/class-wp-user-query.php)
80-
- `wp_authenticate` — args: 1, params: 2 (wp-includes/user.php)
8131
- `wp_default_autoload_value` — args: 4, params: 3 (wp-includes/option.php)
82-
- `wp_feed_options` — args: 1, params: 2 (wp-includes/feed.php)
8332
- `wp_next_scheduled` — args: 4, params: 3 (wp-includes/cron.php)

scripts/generate-issues.sh

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -101,8 +101,9 @@ echo "" >> "$OUTPUT_FILE"
101101
echo "Hooks where the number of \`@param\` tags does not match the \`args\` count." >> "$OUTPUT_FILE"
102102
echo "" >> "$OUTPUT_FILE"
103103

104-
PARAM_MISMATCH_ACTIONS=$(jq -r '.hooks[] | select(.args != ([.doc.tags[] | select(.name == "param")] | length)) | "- `\(.name)` — args: \(.args), params: \([.doc.tags[] | select(.name == "param")] | length) (\(.file))"' hooks/actions.json)
105-
PARAM_MISMATCH_FILTERS=$(jq -r '.hooks[] | select(.args != ([.doc.tags[] | select(.name == "param")] | length)) | "- `\(.name)` — args: \(.args), params: \([.doc.tags[] | select(.name == "param")] | length) (\(.file))"' hooks/filters.json)
104+
# Exclude action_reference and filter_reference types as they use ref_array functions which always report args as 1
105+
PARAM_MISMATCH_ACTIONS=$(jq -r '.hooks[] | select(.type != "action_reference" and .type != "filter_reference") | select(.args != ([.doc.tags[] | select(.name == "param")] | length)) | "- `\(.name)` — args: \(.args), params: \([.doc.tags[] | select(.name == "param")] | length) (\(.file))"' hooks/actions.json)
106+
PARAM_MISMATCH_FILTERS=$(jq -r '.hooks[] | select(.type != "action_reference" and .type != "filter_reference") | select(.args != ([.doc.tags[] | select(.name == "param")] | length)) | "- `\(.name)` — args: \(.args), params: \([.doc.tags[] | select(.name == "param")] | length) (\(.file))"' hooks/filters.json)
106107

107108
PARAM_MISMATCH=$(echo -e "${PARAM_MISMATCH_ACTIONS}\n${PARAM_MISMATCH_FILTERS}" | grep -v '^$' | sort)
108109

0 commit comments

Comments
 (0)