John Blackbourn
b85e322e35
Security: Trigger a `_doing_it_wrong()` when `check_ajax_referer()` is called without its first parameter. This brings it inline with `check_admin_referer()`.
...
Fixes #36361
Built from https://develop.svn.wordpress.org/trunk@38420
git-svn-id: http://core.svn.wordpress.org/trunk@38361 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-28 17:15:28 +00:00
John Blackbourn
6b3a3713fd
Themes: Introduce tests for the theme template hierarchy.
...
See #14310
Built from https://develop.svn.wordpress.org/trunk@38419
git-svn-id: http://core.svn.wordpress.org/trunk@38360 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-28 16:19:28 +00:00
John Blackbourn
d346835bfb
Themes: Update filter names in the inline documentation for the `get_*_template()` functions.
...
See #14310 , #37770
Built from https://develop.svn.wordpress.org/trunk@38418
git-svn-id: http://core.svn.wordpress.org/trunk@38359 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-28 16:15:30 +00:00
John Blackbourn
5985804f1f
Permalinks: Correct an invalid peramstructure tag in a test.
...
Fixes #37858
Built from https://develop.svn.wordpress.org/trunk@38417
git-svn-id: http://core.svn.wordpress.org/trunk@38358 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-28 12:53:29 +00:00
Pascal Birchler
a09d7f3615
Bootstrap: Fix failing external HTTP tests after [38411].
...
When testing the transports, the transport name needs to be capitalized for the class name to be correct (`WP_Http_Curl` vs. `WP_Http_curl` ).
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38416
git-svn-id: http://core.svn.wordpress.org/trunk@38357 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-28 10:34:30 +00:00
Pascal Birchler
ac83e26875
Upgrade/Install: After [37687], fix the number of params passed to the upgrade hooks.
...
`wp_version_check()`, `wp_update_plugins()` and `wp_update_themes()` are all originally hooked to the `upgrader_process_complete` action with zero arguments passed to them. Zero arguments should be passed when re-adding them after translation updates, otherwise the sky will fall.
Props ionutst, gitlost.
Fixes #37731 .
Built from https://develop.svn.wordpress.org/trunk@38415
git-svn-id: http://core.svn.wordpress.org/trunk@38356 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-28 10:04:30 +00:00
Scott Taylor
f96fff3c9d
Admin: allow `WP_Screen` to be checked via autoload in `convert_to_screen()`.
...
Props kraftbj.
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38414
git-svn-id: http://core.svn.wordpress.org/trunk@38355 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-28 02:25:27 +00:00
John Blackbourn
17db8134c4
Query: Add and improve tests for query conditionals on the front page and home page.
...
See #37851
Built from https://develop.svn.wordpress.org/trunk@38413
git-svn-id: http://core.svn.wordpress.org/trunk@38354 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-28 02:02:32 +00:00
Scott Taylor
2a9b372471
Script Loader: autoload in `load-{scripts|styles}.php`.
...
Props JohnPBloch.
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38412
git-svn-id: http://core.svn.wordpress.org/trunk@38353 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-28 00:07:33 +00:00
Scott Taylor
390ceba6c7
Bootstrap: after r38409 and r38410, revert r38402 which reverted r38399.
...
This fixes the paths in `wp-vendor/` that were including `src`. I want to drop this in so we can find out what else will break.
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38411
git-svn-id: http://core.svn.wordpress.org/trunk@38352 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 22:32:37 +00:00
Scott Taylor
1798d34f73
Bootstrap: run `composer install` after r38409.
...
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38410
git-svn-id: http://core.svn.wordpress.org/trunk@38351 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 19:09:30 +00:00
Scott Taylor
4bf37e5555
Bootstrap: move `composer.{json|lock}` into `src`.
...
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38409
git-svn-id: http://core.svn.wordpress.org/trunk@38350 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 19:06:31 +00:00
John Blackbourn
e0a0be9579
Media: Add a `$wp_error` parameter to `wp_insert_attachment()` to give it parity with `wp_insert_post()`.
...
Fixes #37813
Props grapplerulrich, mrahmadawais
Built from https://develop.svn.wordpress.org/trunk@38408
git-svn-id: http://core.svn.wordpress.org/trunk@38349 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 17:25:29 +00:00
John Blackbourn
d194f60a5c
Build/Test tools: Ensure the `Tests_Query_Conditionals` tests set up the environment correctly before re-registering initial taxonomies.
...
Fixes #37851
Built from https://develop.svn.wordpress.org/trunk@38407
git-svn-id: http://core.svn.wordpress.org/trunk@38348 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 17:03:33 +00:00
John Blackbourn
9070bb3ace
Users: Correct the documentation for the `wp_dropdown_users_args` filter description and its parameters.
...
See #37770
Built from https://develop.svn.wordpress.org/trunk@38406
git-svn-id: http://core.svn.wordpress.org/trunk@38347 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 16:54:31 +00:00
John Blackbourn
4739cc0075
Build/Test Tools: Add support for `is_front_page()` to `assertQueryTrue()` and assert that all the tested conditions are supported by the method.
...
Fixes #37849
Built from https://develop.svn.wordpress.org/trunk@38405
git-svn-id: http://core.svn.wordpress.org/trunk@38346 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 15:28:28 +00:00
Dion Hulse
ec83ce1a0c
i18n: Retire another remaining `wp-includes/locale.php` require, and instead load the required `WP_Locale` class directly.
...
See #37827 .
Built from https://develop.svn.wordpress.org/trunk@38404
git-svn-id: http://core.svn.wordpress.org/trunk@38345 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 15:13:33 +00:00
John Blackbourn
71e8e8368a
Themes: Remove failing tests introduced in [38390].
...
See #14310
Built from https://develop.svn.wordpress.org/trunk@38403
git-svn-id: http://core.svn.wordpress.org/trunk@38344 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 14:53:38 +00:00
Dion Hulse
0e31a46161
Bootstrap: Revert [38399] as it's broken `/build/` and subsequently core.svn.wordpress.org.
...
The generated classmaps reference `/src/` files and operates in the assumption that the base directory is one level above `wp-settings.php`, which it isn't after our build processes are run.
See #36335
Built from https://develop.svn.wordpress.org/trunk@38402
git-svn-id: http://core.svn.wordpress.org/trunk@38343 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 14:37:32 +00:00
Pascal Birchler
8b5fc84e63
After [38399], update the `.gitignore` file accordingly.
...
The following files have been added to `svn:ignore` already as they are not compatible with PHP 5.2:
* src/wp-vendor/autoload.php
* src/wp-vendor/composer/autoload_real.php
* src/wp-vendor/composer/autoload_static.php
* src/wp-vendor/composer/ClassLoader.php
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38401
git-svn-id: http://core.svn.wordpress.org/trunk@38342 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 11:29:28 +00:00
Peter Wilson
62717837b5
Unit tests: Enforce $args object in `wp_nav_menu()` & `Walker_Nav_Menu`.
...
WordPress always* passes $args to filters as an array of arugments. A exception is made in `wp_nav_menu()` and the associated walker where these are passed to filters as an object, this has been the case for seven years (since [13368]).
These new tests enforce the use of an object in these filters to ensure backward compatibility is maintained.
See #24587 .
Built from https://develop.svn.wordpress.org/trunk@38400
git-svn-id: http://core.svn.wordpress.org/trunk@38341 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 11:28:30 +00:00
Scott Taylor
6a529648cf
Bootstrap: Autoload classes using a Composer-generated PHP 5.2-compatible Autoloader.
...
* `wp-admin` and `wp-includes` are scanned for classes to autoload
* Several 3rd-party and Ryan McCue-shaped libraries are excluded when the classmap is generated, see `composer.json`: `autoload.exclude-from-classmap`
* `wp-vendor/autoload_52.php` is included at the top of `wp-settings.php` - no changes need to be made to unit tests to include the autoloader
* An avalanche of `require()` and `require_once()` calls that loaded class files have been removed from the codebase.
The following files have been added to `svn:ignore` - they are not 5.2-compatible and fail during pre-commit:
* src/wp-vendor/autoload.php
* src/wp-vendor/composer/autoload_real.php
* src/wp-vendor/composer/autoload_static.php
* src/wp-vendor/composer/ClassLoader.php
We favor these files instead:
* src/wp-vendor/autoload_52.php
* src/wp-vendor/composer/autoload_real_52.php
* src/wp-vendor/composer/ClassLoader52.php
When new PHP classes are added to the codebase, simply run `composer install` or `composer update` from the project root to update the autoloader.
The future is now.
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38399
git-svn-id: http://core.svn.wordpress.org/trunk@38340 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 09:15:29 +00:00
Scott Taylor
cb74a4401b
Unit Tests:
...
* Automatically delete objects that we were created during `wpSetUpBeforeClass` - posts, comments, terms (except 1), and user (except 1)
* The amount of leftover data between tests was breathtaking - use the new function: `_delete_all_data()`
* Commit database transactions for all `TestCase`s, not just those that implement `wpSetUpBeforeClass` and `wpTearDownAfterClass`
* The tests run 10-20 seconds faster now
See #37699 .
Built from https://develop.svn.wordpress.org/trunk@38398
git-svn-id: http://core.svn.wordpress.org/trunk@38339 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 08:36:31 +00:00
Scott Taylor
85d63f2af5
Press This: the file for the `WP_Press_This` class should not produce side effects. Similar to what we did in r38355 for `WP_Site_Icon`, drop the instances of `global` instantiation for `$wp_press_this` via loading the file. The variable can be set inline when necessary. In most of those places, if the global is already set, the file does not load and stomp it currently.
...
See #37699 .
Built from https://develop.svn.wordpress.org/trunk@38397
git-svn-id: http://core.svn.wordpress.org/trunk@38338 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 06:07:29 +00:00
Weston Ruter
e6ed174135
Customize: Circumvent the customizer attempting to preview links to static assets (such as uploaded images).
...
The customizer's preview POST requests to static assets result in 405 Method Not Allowed responses.
Fixes #37828 .
Built from https://develop.svn.wordpress.org/trunk@38396
git-svn-id: http://core.svn.wordpress.org/trunk@38337 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 06:05:29 +00:00
Scott Taylor
e05a033bcb
Bootstrap: exclude more files from the `autoloader.classmap` in `composer.json`.
...
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38395
git-svn-id: http://core.svn.wordpress.org/trunk@38336 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 05:40:29 +00:00
Scott Taylor
599d45019f
Bootstrap: add `composer.lock` and `src/wp-vendor` files. Nothing is using this code yet, just going through the motions. Ignore the files in `src/wp-vendor/composer` that will explode in PHP 5.2.
...
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38394
git-svn-id: http://core.svn.wordpress.org/trunk@38335 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 03:49:28 +00:00
Scott Taylor
bb16c53108
Bootstrap: run `composer require xrstf/composer-php52` to get the updated suggested version. Change the `vendor-dir` to `wp-vendor`.
...
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38393
git-svn-id: http://core.svn.wordpress.org/trunk@38334 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 03:36:29 +00:00
Scott Taylor
06aa510d56
List Tables: move `_WP_List_Table_Compat` into its own file.
...
See #37827 .
Built from https://develop.svn.wordpress.org/trunk@38392
git-svn-id: http://core.svn.wordpress.org/trunk@38333 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 22:23:29 +00:00
Scott Taylor
99aef2df30
Bootstrap: exclude some files from the Composer autoload setup via `exclude-from-classmap`.
...
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38391
git-svn-id: http://core.svn.wordpress.org/trunk@38332 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 22:21:31 +00:00
John Blackbourn
3c6dd1d00d
Themes: Begin introducing unit tests for the expected theme template hierarchy. More to come.
...
See #14310
Built from https://develop.svn.wordpress.org/trunk@38390
git-svn-id: http://core.svn.wordpress.org/trunk@38331 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 22:20:28 +00:00
Scott Taylor
c99df3a708
XML-RPC: break up `class-IXR.php` into individual class files.
...
See #37827 .
Built from https://develop.svn.wordpress.org/trunk@38389
git-svn-id: http://core.svn.wordpress.org/trunk@38330 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 22:08:33 +00:00
Scott Taylor
08233c6aff
Multisite: move `get_current_site()` to `load.php` so that it can be used in more places, instead of importing `global $current_site`.
...
See #37699 .
Built from https://develop.svn.wordpress.org/trunk@38388
git-svn-id: http://core.svn.wordpress.org/trunk@38329 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 21:35:30 +00:00
Scott Taylor
35bdc07eac
Roles: set a property, `$db`, on `WP_Roles` to reduce global imports.
...
See #37699 .
Built from https://develop.svn.wordpress.org/trunk@38387
git-svn-id: http://core.svn.wordpress.org/trunk@38328 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 21:16:59 +00:00
Scott Taylor
b9f516e55e
Bootstrap: load `option.php` in `wp-settings.php`, not in `functions.php`.
...
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38386
git-svn-id: http://core.svn.wordpress.org/trunk@38327 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 21:11:29 +00:00
John Blackbourn
9e1542b9ec
Themes: Make the template hierarchy for a given template type filterable.
...
This introduces a `{$type}_template_hierarchy` filter that allows the hierarchy of candidate template filenames for a given template type to be filtered.
This allows the hierarchy to be added to or altered completely without resorting to re-building the hierarchy from scratch within the `template_include` filter, which is common and prone to conflicts between plugins and prone to getting out of sync with core's hierarchy.
Fixes #14310
Built from https://develop.svn.wordpress.org/trunk@38385
git-svn-id: http://core.svn.wordpress.org/trunk@38326 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 21:03:27 +00:00
Scott Taylor
29959d0448
Bootstrap: add a `composer.json` file to the project. No code relies on it (yet), and no `vendor` dir is checked in (yet). No autoloader is being used (yet). Taking this first step will hopefully encourage the perfectionists of our world to scrutinize each line.
...
To fiddle around with what it does, run `composer install` from the project root. If you do not have Composer installed:
https://getcomposer.org/doc/00-intro.md#locally
tl;dr for Mac/Homebrew users: `brew install composer`
Classes from `wp-includes` and `wp-admin` are eligible for autoloading via `autoload.classmap`. Through a tornado of recent commits, many unsuitable files have been transitioned into a more acceptable state for autoloading: 1 file per class, no side effects.
The file bootstrap in `wp-settings.php` can transition into `autoload.files`. This will be done with care and attention.
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38384
git-svn-id: http://core.svn.wordpress.org/trunk@38325 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 21:00:29 +00:00
Scott Taylor
525bb21513
Unit Tests: after r38303, replace usage of `global $_wp_additional_image_sizes` with `wp_get_additional_image_sizes()`.
...
See #37699 .
Built from https://develop.svn.wordpress.org/trunk@38383
git-svn-id: http://core.svn.wordpress.org/trunk@38324 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 20:51:43 +00:00
John Blackbourn
3644bc160f
Build/Test Tools: Remove many unnecessary calls to `rand_str()` which can, in theory, fail at random. Static strings are much more appropriate.
...
See #37371
Built from https://develop.svn.wordpress.org/trunk@38382
git-svn-id: http://core.svn.wordpress.org/trunk@38323 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 20:22:43 +00:00
Boone Gorges
0b81d79c86
Don't improperly cast IDs when fetching post, user, or term objects.
...
Blindly casting passed IDs to integers can generate false positives
when the ID is cast to `1`.
Props deeptiboddapati.
Fixes #37738 .
Built from https://develop.svn.wordpress.org/trunk@38381
git-svn-id: http://core.svn.wordpress.org/trunk@38322 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 19:09:27 +00:00
Scott Taylor
11216c7069
FTP: ensure that there is only one class named `ftp`, which is what is expected in the loading of this arcane library. This ensures that an autoload generator, something along the lines of Composer, won't hiccup when it gets to these files.
...
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38380
git-svn-id: http://core.svn.wordpress.org/trunk@38321 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 18:47:29 +00:00
Scott Taylor
b1c6049be4
Upgrade/Install: `wp-admin/includes/class-wp-upgrader-skins.php` is unused, remove it. All of the same includes are loaded in `class-wp-upgrader.php`.
...
See #37827 .
Built from https://develop.svn.wordpress.org/trunk@38379
git-svn-id: http://core.svn.wordpress.org/trunk@38320 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 18:25:30 +00:00
John Blackbourn
32d5e7f31d
Role/Capability: Only users who can manage options should be able to trash/delete the page for posts or the front page, as they are the only users who can restore it or subsequently alter the "Front page displays" setting.
...
Fixes #37580
Props JakePT
Built from https://develop.svn.wordpress.org/trunk@38378
git-svn-id: http://core.svn.wordpress.org/trunk@38319 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 18:23:31 +00:00
Boone Gorges
3d593c5fc1
Eliminate unnecessary variable in `WP_Term_Query`.
...
Props ocean90.
Fixes #37544 .
Built from https://develop.svn.wordpress.org/trunk@38377
git-svn-id: http://core.svn.wordpress.org/trunk@38318 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 18:12:26 +00:00
Scott Taylor
b3d474a6dc
Load: move `WP_MatchesMapRegex` into its own file.
...
See #37827 .
Built from https://develop.svn.wordpress.org/trunk@38376
git-svn-id: http://core.svn.wordpress.org/trunk@38317 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 18:11:39 +00:00
Scott Taylor
b2c394a330
Script Loader: move `_WP_Dependency` into its own file.
...
See #37827 .
Built from https://develop.svn.wordpress.org/trunk@38375
git-svn-id: http://core.svn.wordpress.org/trunk@38316 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 18:06:39 +00:00
Scott Taylor
76c7864367
Load: remove `class-feed.php` (There is no class named `Feed` or `WP_Feed`, it just loads other classes) and, instead, move the `require` calls to the only place they are ever included: inside `fetch_feed()`. This simplifies the include path.
...
Tested with this feed in a widget: `http://rss.nytimes.com/services/xml/rss/nyt/HomePage.xml `.
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38374
git-svn-id: http://core.svn.wordpress.org/trunk@38315 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 17:53:30 +00:00
Scott Taylor
524effb58f
Load: remove `session.php` and, instead, move the 2 `require` calls to `wp-settings.php`. This simplifies the include path.
...
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38373
git-svn-id: http://core.svn.wordpress.org/trunk@38314 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 17:45:17 +00:00
Boone Gorges
51a2235c19
Use shared fixture in `comment_exists()` tests.
...
Props Frank Klein.
Fixes #37842 .
Built from https://develop.svn.wordpress.org/trunk@38372
git-svn-id: http://core.svn.wordpress.org/trunk@38313 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 17:42:50 +00:00
Scott Taylor
481123661c
Load: load `class-phpass.php` (`PasswordHash` class) early in `wp-settings.php`, instead of `require_once()`'ing it in several places.
...
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38371
git-svn-id: http://core.svn.wordpress.org/trunk@38312 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-26 17:40:35 +00:00