Sergey Biryukov
7932193708
Coding Standards: Use strict comparison where static strings are involved.
...
This reduces the number of `WordPress.PHP.StrictComparisons.LooseComparison` issues in half, from 1897 to 890.
Includes minor code layout fixes for better readability.
See #49542 .
Built from https://develop.svn.wordpress.org/trunk@47808
git-svn-id: http://core.svn.wordpress.org/trunk@47584 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-05-16 18:42:12 +00:00
Sergey Biryukov
641c632b0c
Coding Standards: Use Yoda conditions where appropriate.
...
See #49222 .
Built from https://develop.svn.wordpress.org/trunk@47219
git-svn-id: http://core.svn.wordpress.org/trunk@47019 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-02-09 16:55:09 +00:00
Sergey Biryukov
47ed56f38f
Code Modernization: Replace `dirname( __FILE__ )` calls with `__DIR__` magic constant.
...
This avoids the performance overhead of the function call every time `dirname( __FILE__ )` was used instead of `__DIR__`.
This commit also includes:
* Removing unnecessary parentheses from `include`/`require` statements. These are language constructs, not function calls.
* Replacing `include` statements for several files with `require_once`, for consistency:
* `wp-admin/admin-header.php`
* `wp-admin/admin-footer.php`
* `wp-includes/version.php`
Props ayeshrajans, desrosj, valentinbora, jrf, joostdevalk, netweb.
Fixes #48082 .
Built from https://develop.svn.wordpress.org/trunk@47198
git-svn-id: http://core.svn.wordpress.org/trunk@46998 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-02-06 06:33:11 +00:00
Sergey Biryukov
001ffe81fb
Docs: Improve inline comments per the documentation standards.
...
Includes minor code layout fixes for better readability.
See #48303 .
Built from https://develop.svn.wordpress.org/trunk@47122
git-svn-id: http://core.svn.wordpress.org/trunk@46922 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-01-29 00:45:18 +00:00
Sergey Biryukov
dd4d98a368
Docs: In various `@return` tags, list the expected type first, instead of `false`.
...
Follow-up to [46696].
See #48303 .
Built from https://develop.svn.wordpress.org/trunk@47060
git-svn-id: http://core.svn.wordpress.org/trunk@46860 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-01-11 18:32:05 +00:00
Sergey Biryukov
418db0297e
Docs: Correct spelling of "subclass" and "overridden" in various docblocks and error messages.
...
Props garrett-eclipse.
Fixes #48676 .
Built from https://develop.svn.wordpress.org/trunk@46739
git-svn-id: http://core.svn.wordpress.org/trunk@46539 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-11-17 07:43:01 +00:00
Sergey Biryukov
d4cec569fe
Docs: Fix typo in `@return` value for `PO::trim_quotes()`.
...
Props diddledan.
Fixes #48572 .
Built from https://develop.svn.wordpress.org/trunk@46730
git-svn-id: http://core.svn.wordpress.org/trunk@46530 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-11-13 13:45:02 +00:00
Sergey Biryukov
24650cbd68
Code Modernization: Call PHP 5 constructors in methods extending `POMO_Reader`.
...
Follow-up to [46629].
See #48252 .
Built from https://develop.svn.wordpress.org/trunk@46632
git-svn-id: http://core.svn.wordpress.org/trunk@46432 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-11-02 20:49:01 +00:00
Sergey Biryukov
6cd00d098e
Docs: Correct version number in `@deprecated` tags for PHP 4 constructors in `pomo/entry.php` and `pomo/streams.php`.
...
Follow-up to [46629].
Props jrf.
See #48252 .
Built from https://develop.svn.wordpress.org/trunk@46631
git-svn-id: http://core.svn.wordpress.org/trunk@46431 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-11-02 20:30:01 +00:00
Sergey Biryukov
a0e7056387
Docs: Add missing `@deprecated` tags to PHP 4 constructors in `pomo/entry.php` and `pomo/streams.php`.
...
Props jrf.
Fixes #48252 .
Built from https://develop.svn.wordpress.org/trunk@46629
git-svn-id: http://core.svn.wordpress.org/trunk@46429 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-11-02 20:11:04 +00:00
Gary Pendergast
4803fc405e
Coding Standards: Fix the `Squiz.PHP.DisallowMultipleAssignments` violations in `wp-includes`.
...
See #47632 .
Built from https://develop.svn.wordpress.org/trunk@45590
git-svn-id: http://core.svn.wordpress.org/trunk@45401 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-07-02 23:42:58 +00:00
Gary Pendergast
55af0f0d0a
Coding Standards: Fix/ignore the `WordPress.NamingConventions.ValidFunctionName` violations.
...
See #47632
Built from https://develop.svn.wordpress.org/trunk@45580
git-svn-id: http://core.svn.wordpress.org/trunk@45391 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-07-01 08:01:57 +00:00
Gary Pendergast
5ed802faf4
Docs: Correct the docs for `POMO_Reader::setEndian()`.
...
The parameter type and name where the wrong way around.
Props ishitaka.
Fixes #45410 .
Built from https://develop.svn.wordpress.org/trunk@44614
git-svn-id: http://core.svn.wordpress.org/trunk@44445 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-01-16 05:36:48 +00:00
Drew Jaynes
9992044ce6
Docs: Add missing `@return` notations to three `MO` method DocBlocks.
...
Props subrataemfluence.
Fixes #44421 .
Built from https://develop.svn.wordpress.org/trunk@44336
git-svn-id: http://core.svn.wordpress.org/trunk@44166 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-12-19 17:04:48 +00:00
Drew Jaynes
d738d15862
Docs: Fix the syntax for a parameter notation and separately add a missing return notation for two `POMO_Reader` methods.
...
Props subrataemfluence.
Fixes #44422 .
Built from https://develop.svn.wordpress.org/trunk@44326
git-svn-id: http://core.svn.wordpress.org/trunk@44156 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-12-19 07:06:49 +00:00
Aaron Jorbin
76ef0432c0
General: PHP7.3 throws an `E_WARNING` when using continue to target a switch
...
Applying continue to a switch is equivalent to using break and quite possibly, a continue targeting a higher level control structure is actually intended.
To target the higher level control structure, a numeric argument has to be passed to continue. This fixes two cases in WordPress Core where this is currently happening.
See: https://github.com/php/php-src/pull/3364
See: https://wiki.php.net/rfc/continue_on_switch_deprecation
Props jrf.
Fixes #44543 .
Built from https://develop.svn.wordpress.org/trunk@43653
git-svn-id: http://core.svn.wordpress.org/trunk@43482 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-09-23 22:50:24 +00:00
Dominik Schilling
a7bb083120
I18N: In the POMO library, replace `chr()` calls for static values with their string representation.
...
Props ccismaru, ocean90.
Fixes #17128 .
Built from https://develop.svn.wordpress.org/trunk@43635
git-svn-id: http://core.svn.wordpress.org/trunk@43464 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-09-12 06:11:26 +00:00
Gary Pendergast
56c162fbc9
Coding Standards: Upgrade WPCS to 1.0.0
...
WPCS 1.0.0 includes a bunch of new auto-fixers, which drops the number of coding standards issues across WordPress significantly. Prior to running the auto-fixers, there were 15,312 issues detected. With this commit, we now drop to 4,769 issues.
This change includes three notable additions:
- Multiline function calls must now put each parameter on a new line.
- Auto-formatting files is now part of the `grunt precommit` script.
- Auto-fixable coding standards issues will now cause Travis failures.
Fixes #44600 .
Built from https://develop.svn.wordpress.org/trunk@43571
git-svn-id: http://core.svn.wordpress.org/trunk@43400 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-08-17 01:51:36 +00:00
Sergey Biryukov
08227812a0
Docs: Remove `@static` notations from method DocBlocks in `wp-includes/*` classes.
...
This tag has been used in the past, but should no longer be used. Just using the `static` keyword in code is enough for PhpDocumentor on PHP5+ to recognize static variables and methods, and PhpDocumentor will mark them as static.
Props birgire.
See #42803 .
Built from https://develop.svn.wordpress.org/trunk@42746
git-svn-id: http://core.svn.wordpress.org/trunk@42576 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-02-25 20:22:30 +00:00
Gary Pendergast
aaf99e6913
Code is Poetry.
...
WordPress' code just... wasn't.
This is now dealt with.
Props jrf, pento, netweb, GaryJ, jdgrimes, westonruter, Greg Sherwood from PHPCS, and everyone who's ever contributed to WPCS and PHPCS.
Fixes #41057 .
Built from https://develop.svn.wordpress.org/trunk@42343
git-svn-id: http://core.svn.wordpress.org/trunk@42172 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-11-30 23:11:00 +00:00
Gary Pendergast
4f48c60803
I18N: Fix a PHP error introduced in [41722].
...
PHP 5.2 and 5.3 don't support short array syntax, Ryan.
Fixes #41562 .
Built from https://develop.svn.wordpress.org/trunk@41723
git-svn-id: http://core.svn.wordpress.org/trunk@41557 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-10-04 02:12:46 +00:00
Gary Pendergast
0a3b7d8e31
I18N: Introduce the `Plural_Forms` class.
...
Historically, we've evaluated the plural forms for each language using `create_function()`. This is being deprecated in PHP 7.2, so needs to be replaced.
The `Plural_Forms` class parses the `Plural-Forms` header from the PO file, and internally caches the result of all subsequent plural form tests, allowing it to match the performance of the existing code.
Props rmccue.
Fixes #41562 .
Built from https://develop.svn.wordpress.org/trunk@41722
git-svn-id: http://core.svn.wordpress.org/trunk@41556 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-10-04 01:30:46 +00:00
John Blackbourn
9fdbe6538e
Docs: Remove `&` prefixes from parameter documentation to avoid doc parsing errors.
...
Props sudar for the original patch.
See #35974
Built from https://develop.svn.wordpress.org/trunk@41686
git-svn-id: http://core.svn.wordpress.org/trunk@41520 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-10-02 22:03:33 +00:00
Ryan McCue
20aa5d7150
General: Correctly detect trailing newline when prepending.
...
We need to check that the final line is actually an artifact of explode(), not just an empty input string.
See #37082 .
Built from https://develop.svn.wordpress.org/trunk@39592
git-svn-id: http://core.svn.wordpress.org/trunk@39532 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-13 02:48:41 +00:00
Ryan McCue
fbc00b31ef
General: Remove most uses of create_function()
...
create_function() is equivalent to eval(), and most of our uses can be refactored. This is simpler, more secure, and slightly more performant.
Props sgolemon.
Fixes #37082 .
Built from https://develop.svn.wordpress.org/trunk@39591
git-svn-id: http://core.svn.wordpress.org/trunk@39531 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-13 01:49:39 +00:00
Drew Jaynes
5f4497f0af
Docs: Fix multiple trivial typos throughout a variety of core files.
...
Props ottok.
Fixes #38489 .
Built from https://develop.svn.wordpress.org/trunk@39051
git-svn-id: http://core.svn.wordpress.org/trunk@38993 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-10-31 06:28:32 +00:00
Dominik Schilling
7819e2b4ba
I18N: Introduce a locale-switching function.
...
With the introduction of user-specific languages in [38705] it's necessary to be able to switch translations on the fly. For example emails should be sent in the language of the recipient and not the one of the current user.
This introduces a new `WP_Locale_Switcher` class which is used for switching locales and translations. It holds the stack of locales whenever `switch_to_locale( $locale )` is called. With `restore_previous_locale()` you can restore the previous locale. `restore_current_locale()` empties the stack and sets the locale back to the initial value.
`switch_to_locale()` is added to most of core's email functions, either with the value of `get_locale()` (site language) or `get_user_locale()` (user language with fallback to site language).
Props yoavf, tfrommen, swissspidy, pbearne, ocean90.
See #29783 .
Fixes #26511 .
Built from https://develop.svn.wordpress.org/trunk@38961
git-svn-id: http://core.svn.wordpress.org/trunk@38904 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-10-26 15:36:31 +00:00
Dion Hulse
048f327bfc
Merge the changes to GlotPress's POMO from upstream to WordPress's copy.
...
Fixes #34748
Built from https://develop.svn.wordpress.org/trunk@35714
git-svn-id: http://core.svn.wordpress.org/trunk@35678 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-20 04:34:25 +00:00
Sergey Biryukov
5d61c1b8d1
I18N: After [35620], move the code for standardizing on `\n` line endings to `Translation_Entry::key()`.
...
Props dd32.
Fixes #22172 .
Built from https://develop.svn.wordpress.org/trunk@35686
git-svn-id: http://core.svn.wordpress.org/trunk@35650 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-18 20:37:25 +00:00
Sergey Biryukov
c8e0cd5c65
I18N: In `Translations::translate_entry()`, account for multi-line strings in files with Windows line endings.
...
Fixes #22172 .
Built from https://develop.svn.wordpress.org/trunk@35620
git-svn-id: http://core.svn.wordpress.org/trunk@35584 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-11 22:49:25 +00:00
Scott Taylor
84da11d918
Pass `false` as the 2nd argument to `class_exists()` to disable autoloading and to not cause problems for those who define `__autoload()`.
...
Fixes #20523 .
Built from https://develop.svn.wordpress.org/trunk@34348
git-svn-id: http://core.svn.wordpress.org/trunk@34312 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-20 03:52:25 +00:00
Aaron Jorbin
1525010f74
Deprecate php4 style constructors
...
PHP7 is deprecating PHP4 style constructors, so we need to modify our code to have _construct methods that fire before the named PHP4 style constructors. The PHP4 style constructors will call the PHP5 style constructor in case it is being called directly (usually via parent::METHOD).
This modifies external libraries to add PHP5 style constructors, but doesn't add a notice for when they are used. In WordPress core code, PHP4 style constructors are being given a call to _deprecated_constructor. To the PHP4 style constructor I say "I know that I can't take no more | It ain't no lie | I wanna see you out that door | Baby, bye, bye, bye..."
Upstream: https://wiki.php.net/rfc/remove_php4_constructors
Props jdgrimes, netweb, jorbin
See #31982
Built from https://develop.svn.wordpress.org/trunk@32990
git-svn-id: http://core.svn.wordpress.org/trunk@32961 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-06-28 15:27:24 +00:00
Scott Taylor
42d51a4f89
Add doc blocks to functions that are missing them.
...
If the function has no need for `@param` or `@return`, do an archeaological dig to find `@since`.
See #32444 .
Built from https://develop.svn.wordpress.org/trunk@32672
git-svn-id: http://core.svn.wordpress.org/trunk@32642 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-31 03:18:25 +00:00
Scott Taylor
19a3aacc94
Add `@static*` annotations where they are missing.
...
Initialize all static vars that are not, most to `null`.
See #32444 .
Built from https://develop.svn.wordpress.org/trunk@32650
git-svn-id: http://core.svn.wordpress.org/trunk@32620 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-29 15:43:29 +00:00
Scott Taylor
bce851dcf2
Replace `array_shift()` with `reset()` where appropriate for performance.
...
Props SergeyBiryukov.
Fixes #31259 .
Built from https://develop.svn.wordpress.org/trunk@31829
git-svn-id: http://core.svn.wordpress.org/trunk@31811 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-19 03:56:27 +00:00
Scott Taylor
b35cbbfac7
Add missing `@param`s to `src/wp-includes/pomo` files.
...
See #30224 .
Built from https://develop.svn.wordpress.org/trunk@30663
git-svn-id: http://core.svn.wordpress.org/trunk@30653 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-30 21:41:22 +00:00
Drew Jaynes
d33c807723
Fix some documentation typos in various core files.
...
Props vlajos.
Fixes #29199 .
Built from https://develop.svn.wordpress.org/trunk@29479
git-svn-id: http://core.svn.wordpress.org/trunk@29257 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-13 03:56:17 +00:00
Sergey Biryukov
9ceb642b2a
Introduce a binary-safe wrapper for strlen() and use it in seems_utf8(), utf8_uri_encode(), and wp_read_image_metadata().
...
Use binary-safe POMO_Reader::strlen() in MO::export_to_file_handle().
fixes #28162 .
Built from https://develop.svn.wordpress.org/trunk@28806
git-svn-id: http://core.svn.wordpress.org/trunk@28615 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-23 14:48:14 +00:00
Scott Taylor
87730b879f
Eliminate the use of `extract()` in `MO::import_from_reader()`.
...
See #22400 .
Built from https://develop.svn.wordpress.org/trunk@28472
git-svn-id: http://core.svn.wordpress.org/trunk@28299 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-17 17:21:14 +00:00
Sergey Biryukov
928d7679b3
Fix strict notices in Tests_POMO_PO.
...
props markoheijnen for initial patch.
fixes #25631 .
Built from https://develop.svn.wordpress.org/trunk@26500
git-svn-id: http://core.svn.wordpress.org/trunk@26394 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-12-01 12:48:10 +00:00
Sergey Biryukov
66c363de8f
Avoid 'Only variables should be passed by reference' warning. fixes #23232 .
...
git-svn-id: http://core.svn.wordpress.org/trunk@23357 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-01-31 01:01:19 +00:00
Nikolay Bachiyski
0672d11502
Fix typos in comments. Props SergeyBiryukov, see #22337
...
git-svn-id: http://core.svn.wordpress.org/trunk@22355 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-31 23:56:23 +00:00
Nikolay Bachiyski
8a2548a137
Replace gp_endswith() with working implementation
...
In [22349] we introduced a call to gp_endswith(),
whcih doesn't exist in WordPress, only in GlotPress.
See #22337
git-svn-id: http://core.svn.wordpress.org/trunk@22350 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-31 22:26:20 +00:00
Nikolay Bachiyski
dcc0729a6c
Sync POMO with GlotPress
...
See http://glotpress.trac.wordpress.org/browser/trunk/pomo/
git-svn-id: http://core.svn.wordpress.org/trunk@22349 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-31 22:13:51 +00:00
Ryan Boren
51a5715967
Restore return by ref for make_entry(). Props SergeyBiryukov. fixes #21839
...
git-svn-id: http://core.svn.wordpress.org/trunk@21793 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-10 17:34:34 +00:00
Ryan Boren
f483a85676
Remove unnecessary return by refs. Props wonderboymusic. fixes #21839
...
git-svn-id: http://core.svn.wordpress.org/trunk@21792 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-10 17:00:11 +00:00
ryan
e261ac43e7
Avoid 'Only variables should be passed by reference' warnings. Props SergeyBiryukov. see #18975
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@19072 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-10-27 20:00:09 +00:00
ryan
32e25b6aec
phpdoc typo and readability fixes. Props SergeyBiryukov. fixes #18560
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@18827 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-09-29 22:57:43 +00:00
nbachiyski
688eebdc26
Sync pomo library with the current GlotPress version
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@18528 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-08-11 04:29:35 +00:00
nacin
5a20c05d27
Phpdoc argument/@param cleanups. props duck_, see #14783 .
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@15590 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-09-07 11:21:11 +00:00