Sergey Biryukov
f6191c07df
Upgrade/Install: Allow WordPress sites to opt-in to development releases.
...
The `WP_AUTO_UPDATE_CORE` constant now supports `development` and `branch-development` values.
This makes it possible for sites to opt-in to updating to nightly builds without having to install a plugin.
Follow-up to [49245], [49292].
Props xkon, knutsp, afragen, audrasjb, dd32.
Fixes #51978 .
Built from https://develop.svn.wordpress.org/trunk@50082
git-svn-id: http://core.svn.wordpress.org/trunk@49782 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-01-30 10:34:02 +00:00
Sergey Biryukov
6e71523ead
Upgrade/Install: Allow WordPress sites to opt-in to beta & RC releases.
...
The `WP_AUTO_UPDATE_CORE` constant now supports `beta` and `rc` values.
This makes it possible for sites to opt-in to updating to RC (or beta) releases without having to install a plugin, or run on a development version.
Props dd32, knutsp.
Fixes #51319 .
Built from https://develop.svn.wordpress.org/trunk@49245
git-svn-id: http://core.svn.wordpress.org/trunk@49007 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-20 17:56:06 +00:00
Sergey Biryukov
897f004a9c
General: Replace older-style PHP type conversion functions with type casts.
...
This improves performance, readability, and consistency throughout core.
* `intval()` → `(int)`
* `strval()` → `(string)`
* `floatval()` → `(float)`
Props ayeshrajans.
Fixes #42918 .
Built from https://develop.svn.wordpress.org/trunk@49108
git-svn-id: http://core.svn.wordpress.org/trunk@48870 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-08 21:15:13 +00:00
Sergey Biryukov
1f85e7484f
Docs: Consistently use third-person singular verbs for various filter descriptions, per the documentation standards.
...
See #50768 .
Built from https://develop.svn.wordpress.org/trunk@48782
git-svn-id: http://core.svn.wordpress.org/trunk@48544 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-08-11 00:34:08 +00:00
whyisjake
e6bfdde581
Upgrade/Install: Only show auto-update for themes that support the feature.
...
Similar to the changes for plugins in [48669], let's only show the UI for themes when updates are supported for that theme.
See #50280 .
Props dd32.
Built from https://develop.svn.wordpress.org/trunk@48688
git-svn-id: http://core.svn.wordpress.org/trunk@48450 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-07-29 20:01:08 +00:00
desrosj
77af0e5982
Docs: Correct instances of “auto update” with “auto-update” for consistency.
...
See #49572 .
Built from https://develop.svn.wordpress.org/trunk@48344
git-svn-id: http://core.svn.wordpress.org/trunk@48113 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-07-06 19:15:03 +00:00
John Blackbourn
dfdee40ed6
Docs: Clarify the description of functions that check for and perform updates.
...
See #49572 , #50052 .
Built from https://develop.svn.wordpress.org/trunk@48183
git-svn-id: http://core.svn.wordpress.org/trunk@47952 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-06-26 18:34:03 +00:00
Sergey Biryukov
de59ad23a4
Docs: Consistently include an empty line between `@since` tag and `@see`, `@link`, or `@global`, per the documentation standards.
...
See #49572 .
Built from https://develop.svn.wordpress.org/trunk@48067
git-svn-id: http://core.svn.wordpress.org/trunk@47834 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-06-16 21:07:14 +00:00
Sergey Biryukov
0c3117a80f
Coding Standards: Fix WPCS issues in `wp-includes/update.php`.
...
Props mukesh27.
Fixes #50130 .
Built from https://develop.svn.wordpress.org/trunk@47778
git-svn-id: http://core.svn.wordpress.org/trunk@47554 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-05-09 12:52:10 +00:00
Sergey Biryukov
38676936ba
Coding Standards: Use strict type check for `in_array()` and `array_search()` where strings are involved.
...
This reduces the number of `WordPress.PHP.StrictInArray.MissingTrueStrict` issues from 486 to 50.
Includes minor code layout fixes for better readability.
See #49542 .
Built from https://develop.svn.wordpress.org/trunk@47550
git-svn-id: http://core.svn.wordpress.org/trunk@47325 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-04-05 03:02:11 +00:00
Sergey Biryukov
32edd58e4c
Docs: Add descriptions for some globals:
...
* `$wp_version`
* `$wp_local_package`
* `$required_php_version`
* `$required_mysql_version`
See #48303 .
Built from https://develop.svn.wordpress.org/trunk@47230
git-svn-id: http://core.svn.wordpress.org/trunk@47030 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-02-10 03:30:06 +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
e199663322
I18N: Capitalize translator comments consistently, add trailing punctuation.
...
Includes minor code layout fixes.
See #44360 .
Built from https://develop.svn.wordpress.org/trunk@45932
git-svn-id: http://core.svn.wordpress.org/trunk@45743 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-09-03 00:41:05 +00:00
Sergey Biryukov
29b072e706
Docs: Add missing description for `$wpdb`, `$wp_db_version`, and `$wp_current_db_version` globals.
...
Props mukesh27, utsav72640, immeet94, SergeyBiryukov.
See #45604 .
Built from https://develop.svn.wordpress.org/trunk@45734
git-svn-id: http://core.svn.wordpress.org/trunk@45545 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-08-04 01:12:56 +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
Sergey Biryukov
35a2322d32
General: Update support forum links.
...
There are a lot of places in Core that link to https://wordpress.org/support/ for the support forums, but that's now the URL for HelpHub. The new forums link is https://wordpress.org/support/forums/ .
This is a follow-up to [45140], which changed the links in help tabs.
Props dilipbheda.
Fixes #47239 . See #46790 .
Built from https://develop.svn.wordpress.org/trunk@45412
git-svn-id: http://core.svn.wordpress.org/trunk@45223 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-05-25 14:24:50 +00:00
Sergey Biryukov
b6471e9be4
Bootstrap/Load: Remove duplicate leading slashes on inclusion of various files under `ABSPATH`.
...
Props dmsnell, birgire, szepe.viktor.
Fixes #46327 .
Built from https://develop.svn.wordpress.org/trunk@45190
git-svn-id: http://core.svn.wordpress.org/trunk@44999 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-04-13 04:46:52 +00:00
Gary Pendergast
6f723ddf50
Docs: Add documentation for the `wp_maybe_auto_update` action.
...
Props MikeGillihan.
Fixes #43301 .
Built from https://develop.svn.wordpress.org/trunk@44609
git-svn-id: http://core.svn.wordpress.org/trunk@44440 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-01-16 03:38:49 +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
John Blackbourn
1b5d6c6971
Docs: Document many more parameters and properties using typed array notation.
...
See #41756
Built from https://develop.svn.wordpress.org/trunk@42871
git-svn-id: http://core.svn.wordpress.org/trunk@42701 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-03-22 20:27:32 +00:00
Sergey Biryukov
4848a09b35
I18N: Use the actual placeholder instead of a number in translator comments if the corresponding string does not use numbered placeholders.
...
Add missing translator comments in `WP_Theme_Install_List_Table` and `wp_notify_postauthor()`.
Add missing commas in some translator comments.
Fixes #43523 .
Built from https://develop.svn.wordpress.org/trunk@42827
git-svn-id: http://core.svn.wordpress.org/trunk@42657 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-03-11 16:44:34 +00:00
Dion Hulse
3517dc0b8b
Updates: Partially revert [42584], as this branch of code should always be run after a core update check.
...
This code branch is responsible for running all autoupdates, including plugins and themes - which should run regardless of if there's a core autoupdate available.
This revert does not revert the `$timeout` changes, as these should still use cached data if it's available.
Ideally this should be decoupled from the core update check to allow background updates to operate even when the core update check is disabled or running more often than twice daily.
See #43103 .
Built from https://develop.svn.wordpress.org/trunk@42653
git-svn-id: http://core.svn.wordpress.org/trunk@42482 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-02-06 11:04:34 +00:00
Dion Hulse
14068105f7
Updates: Only trigger Background Update processes from within the core update check when a core autoupdate is on offer.
...
This change reduces the number of API calls which WordPress makes to api.wordpress.org during release windows.
Previously the background updates would run upon every core update transient refresh, however now they'll only run if there's an update available.
The change also increases the cache period for plugin & theme checks when running via the cron, from never-cache to 2 hours, which should hopefully reduce the number of needless API calls.
Fixes #43103 for trunk.
Built from https://develop.svn.wordpress.org/trunk@42584
git-svn-id: http://core.svn.wordpress.org/trunk@42413 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-01-24 04:17: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
John Blackbourn
74cf14cdf3
Docs: Correct docs introduced in [41965].
...
See #16778
Built from https://develop.svn.wordpress.org/trunk@41967
git-svn-id: http://core.svn.wordpress.org/trunk@41801 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-10-21 22:42:51 +00:00
Gary Pendergast
8608b710b7
Docs: Expand the docs for the `core_version_check_query_args` filter.
...
Add documentation for the parameters in the `$query` parameter.
Props MattyRob.
Fixes #16778 .
Built from https://develop.svn.wordpress.org/trunk@41965
git-svn-id: http://core.svn.wordpress.org/trunk@41799 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-10-21 13:46:50 +00:00
Gary Pendergast
f7fcb2cd5b
Updates: Add the `core_version_check_query_args` filter.
...
This filter allows the data being sent for core update checks to be controlled for privacy concerns.
Props toscho, MattyRob, swissspidy, pento.
Fixes #16778 .
Built from https://develop.svn.wordpress.org/trunk@41962
git-svn-id: http://core.svn.wordpress.org/trunk@41796 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-10-21 11:55:47 +00:00
John Blackbourn
50948669eb
Users: Revert [41613], [41614], and [41623] as this feature needs some more work.
...
See #38741
Built from https://develop.svn.wordpress.org/trunk@41753
git-svn-id: http://core.svn.wordpress.org/trunk@41587 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-10-04 22:17:46 +00:00
John Blackbourn
807bc5a6c9
Users: Introduce the concept of a large site in order to speed up the Users screen when there are many users.
...
Calling the `count_users()` function is expensive, regardless of the counting strategy that's used, and it gets
slower the more users there are on a site. In order to speed up the Users screen in the admin area, calling
`count_users()` can be avoided entirely while still displaying the total count for users.
This introduces some new functions:
* `wp_is_large_user_count()`
* `wp_get_active_user_count()`
* `wp_update_active_user_count()`
A corresponding `wp_is_large_user_count` filter is also introduced.
Props tharsheblows, johnbillion
Fixes #38741
Built from https://develop.svn.wordpress.org/trunk@41613
git-svn-id: http://core.svn.wordpress.org/trunk@41448 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-09-27 13:04:47 +00:00
Dion Hulse
db86c635ba
Standardise on performing api.WordPress.org requests over SSL when possible, falling back to non-SSL when appropriate.
...
This also standardises the `User-Agent` used when communicating with WordPress.org, allowing for more consistent version detection.
Fixes #42004 .
Built from https://develop.svn.wordpress.org/trunk@41605
git-svn-id: http://core.svn.wordpress.org/trunk@41440 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-09-27 08:00:49 +00:00
Pascal Birchler
064e62cbea
Cron API: Add a new `wp_doing_cron()` helper function.
...
This replaces `DOING_CRON` checks via the constant.
Props tfrommen.
Fixes #39591 .
Built from https://develop.svn.wordpress.org/trunk@40575
git-svn-id: http://core.svn.wordpress.org/trunk@40445 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-05-06 14:30:40 +00:00
John Blackbourn
c2d709e9d6
I18n: Introduce more translator comments for strings that contain placeholders but don't have an accompanying translator comment.
...
See #38882
Built from https://develop.svn.wordpress.org/trunk@39326
git-svn-id: http://core.svn.wordpress.org/trunk@39266 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-21 02:46:30 +00:00
Sergey Biryukov
1b2ed70f39
I18N: Move the support forums URL in update-related HTTP API error messages to a separate translatable string that is already used elsewhere.
...
Props ramiy, SergeyBiryukov.
Fixes #38880 .
Built from https://develop.svn.wordpress.org/trunk@39325
git-svn-id: http://core.svn.wordpress.org/trunk@39265 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-21 01:52:32 +00:00
Scott Taylor
a3ffebce30
Bootstrap: do not go gentle into that good night r38411, r38412, and parts of r38389.
...
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38470
git-svn-id: http://core.svn.wordpress.org/trunk@38411 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-31 16:31:29 +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
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
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
b7812bd416
AJAX: add a new function, `wp_doing_ajax()`, which can replace... (wait for it...) `DOING_AJAX` checks via the constant.
...
Props Mte90, sebastian.pisula, swissspidy.
Fixes #25669 .
Built from https://develop.svn.wordpress.org/trunk@38334
git-svn-id: http://core.svn.wordpress.org/trunk@38275 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-23 14:33:30 +00:00
Dominik Schilling
da72b04ab2
Upgrade: Allow update checks on `upgrader_process_complete` to be run during Ajax requests.
...
Fixes missing translation updates during shiny updates.
Fixes #36914 .
Built from https://develop.svn.wordpress.org/trunk@37570
git-svn-id: http://core.svn.wordpress.org/trunk@37538 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-25 19:36:28 +00:00
Drew Jaynes
9cb5247392
Docs: Standardize filter docs in remaining wp-includes/* files to use third-person singular verbs per the inline documentation standards for PHP.
...
See #36913 .
Built from https://develop.svn.wordpress.org/trunk@37518
git-svn-id: http://core.svn.wordpress.org/trunk@37486 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:50:28 +00:00
Drew Jaynes
0fdbfa3f03
Docs: Add a couple of spaces before hook docs for filters introduced in 4.5.
...
See #35986 .
Built from https://develop.svn.wordpress.org/trunk@37006
git-svn-id: http://core.svn.wordpress.org/trunk@36973 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-16 16:15:28 +00:00
Drew Jaynes
4ecad983b3
Docs: Improve two 4.5.0 changelog entries added for the `plugins_update_check_locales` and `themes_update_check_locales` filters, introduced in [36630].
...
See #34937 . See #35986 .
Built from https://develop.svn.wordpress.org/trunk@36966
git-svn-id: http://core.svn.wordpress.org/trunk@36934 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-10 23:01:26 +00:00
Dominik Schilling
f6b632983f
Updates: Pass locales of all available languages to the themes/plugins update API.
...
This ensures that language packs for all languages in a Multisite install are updated.
Fixes #34937 .
Built from https://develop.svn.wordpress.org/trunk@36630
git-svn-id: http://core.svn.wordpress.org/trunk@36597 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-23 16:17:26 +00:00
Dion Hulse
4a0e40a814
Updates: Don't perform an API call to WordPress.org for every plugin update displayed. The API has been updated to return this information with the update response.
...
See #35301
Built from https://develop.svn.wordpress.org/trunk@36182
git-svn-id: http://core.svn.wordpress.org/trunk@36149 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-01-06 07:53:26 +00:00
Dion Hulse
06a3f799e7
Background Updates: Remove the 7am/7pm background update check. This check was made redundant by [28129] as background updates are now run after a version check takes place.
...
See #27772 , #35323 .
Built from https://develop.svn.wordpress.org/trunk@36180
git-svn-id: http://core.svn.wordpress.org/trunk@36147 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-01-06 06:12:26 +00:00
John Blackbourn
0003a004db
Docs: Miscellaneous docblock code quality tweaks.
...
See #32246
Built from https://develop.svn.wordpress.org/trunk@36074
git-svn-id: http://core.svn.wordpress.org/trunk@36039 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-23 07:53:26 +00:00
Drew Jaynes
b6281e857f
Docs: Add a missing summary and `@since` version to the DocBlock for `_maybe_update_core()`.
...
Introduced in [10583].
See #32246 .
Built from https://develop.svn.wordpress.org/trunk@35985
git-svn-id: http://core.svn.wordpress.org/trunk@35950 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-17 16:38:26 +00:00
Andrew Nacin
45032198e3
Updates: Avoid stomping global `$wp_version` in `wp_version_check()` and related.
...
fixes #34868 .
Built from https://develop.svn.wordpress.org/trunk@35779
git-svn-id: http://core.svn.wordpress.org/trunk@35743 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-06 17:39:27 +00:00
Andrew Nacin
0cf9d8b922
Add initial_db_version to wp_version_check().
...
fixes #34854 .
Built from https://develop.svn.wordpress.org/trunk@35774
git-svn-id: http://core.svn.wordpress.org/trunk@35738 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-06 15:44:27 +00:00