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

0.7.0 #433

Merged
merged 26 commits into from
Aug 30, 2015
Merged

0.7.0 #433

merged 26 commits into from
Aug 30, 2015

Conversation

JDGrimes
Copy link
Contributor

PR for tracking changes to be released in 0.7.0.

westonruter and others added 22 commits July 25, 2015 14:13
…-fixing-for-array-key-spacing-restrictions

Make ArrayKeySpacingRestrictions errors fixable
The upstream version is now configurable to meet our needs, and also
contains improvements, like being fixable.

See #412, #385
This adds functions and closures to the control structure spacing
sniff. The sniff checks for proper spacing on each side of each of the
parentheses. It also checks that the opening brace is on the same line.

I’ve actually improved the sniff while I was at it, to check for excess
space in addition to insufficient space.

Because of these improvements, and due to the non-configurability of
the upstream version of this sniff, this sniff is really not a
duplicate, and so #385 can be closed.

Fixes #412, #385
Refer to the correct GitHub issue in the docs
Adds the `spaces_before_closure_open_paren` setting to the sniff. It
determines how many spaces come between the `function` keyword in a
closure and the opening parenthesis.
They implicitly unslash the data passed to them, so it doesn't need to be put through `wp_unslash()` as well.

Fixes #426
Add intval() and boolval() to unslashing functions
Add do_shortcode to list of autoescaped functions
`hash_equals()` returns a boolean value, and does not print anything directly, so it is safe to pass unsanitized data to it.
…equals

Add hash_equals() to list of sanitizing functions
The `T_USE` token is also used to import traits to classes, and to
import classes into namespaces.

Fixes #431
Only check T_USE tokens associated with closures
@JDGrimes JDGrimes added this to the 0.7.0 milestone Aug 30, 2015
JDGrimes and others added 4 commits August 30, 2015 11:56
Most ternary conditions handled by this sniff occur within a set of
parentheses, and these are handled when an open parenthesis is
encountered in the token loop. However, the echo “function” is often
used without parentheses. Because of this, special handling is required
for ternary conditions that are used in an echo statement without
parentheses.

Previously the code for detecting this scenario was unnecessarily
complex, and incorrectly identified some ternary conditions as not
occurring in parentheses when they actually did. The result of this was
twofold: first, it would sometimes flag an expression as needing to be
escaped when it did not; and second, it could also skip over an
expression that did need to be escaped without flagging it.

This is now fixed.

Fixes #421
Simplify and improve ternary handling in XSS sniff
JDGrimes added a commit that referenced this pull request Aug 30, 2015
@JDGrimes JDGrimes merged commit fb37d21 into master Aug 30, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants