38 Commits

Author SHA1 Message Date
Dominik Schilling
c68f1ec772 Bootstrap: Enhance core's memory limit handling.
* Don't lower memory limit if the current limit is greater than `WP_MAX_MEMORY_LIMIT`.
* Set `WP_MEMORY_LIMIT` and `WP_MAX_MEMORY_LIMIT` to current limit if the `memory_limit` setting can't be changed at runtime.
* Use `wp_convert_hr_to_bytes()` when parsing the value of the `memory_limit` setting because it can be a shorthand or an integer value.
* Introduce `wp_raise_memory_limit( $context )` to raise the PHP memory limit for memory intensive processes. This DRYs up some logic and includes the existing `admin_memory_limit` and `image_memory_limit` filters. The function can also be used for custom contexts, the `{$context}_memory_limit` filter allows to customize the limit.
* Introduce `wp_is_ini_value_changeable( $setting )` to determine whether a PHP ini value is changeable at runtime.
* Remove a `function_exists( 'memory_get_usage' )` check. Since PHP 5.2.1 support for memory limit is always enabled.

Related commits: [38011-38013]

Props jrf, A5hleyRich, swissspidy, ocean90.
Fixes #32075.

git-svn-id: https://develop.svn.wordpress.org/trunk@38015 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-08 14:36:37 +00:00
Drew Jaynes
8e79f0fb3d Docs: Ensure hook and duplicate hook docs directly precede all instances of the image_memory_limit filter.
Hook docs must directly precede hooks in order for the Code Reference parser to correctly identify them as such.

Fixes #36968. 


git-svn-id: https://develop.svn.wordpress.org/trunk@37592 602fd350-edb4-49c9-b593-d223f7449a82
2016-05-30 02:13:57 +00:00
Drew Jaynes
a66277f245 Docs: Correct a duplicate filter comment for the image_memory_limit hook to point to the correct file.
Props bobbingwide.
See #36968.


git-svn-id: https://develop.svn.wordpress.org/trunk@37591 602fd350-edb4-49c9-b593-d223f7449a82
2016-05-30 02:09:46 +00:00
Drew Jaynes
c49afe285c Docs: Standardize filter docs in core classes in wp-includes/* to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.


git-svn-id: https://develop.svn.wordpress.org/trunk@37492 602fd350-edb4-49c9-b593-d223f7449a82
2016-05-22 18:14:19 +00:00
Drew Jaynes
195572596b Docs: Standardize on 'backward compatibility/compatible' nomenclature in core inline docs.
Also use 'back-compat' in some inline comments where backward compatibility is the subject and shorthand feels more natural.

Note: 'backwards compatibility/compatibile' can also be considered correct, though it's primary seen in regular use in British English.

Props ocean90.
Fixes #36835.


git-svn-id: https://develop.svn.wordpress.org/trunk@37431 602fd350-edb4-49c9-b593-d223f7449a82
2016-05-13 18:40:19 +00:00
Mike Schroder
09e9e53c30 Media: Resolve fatal error on resize with ImageMagick < 6.4.6
Improper checking for 'Imagick::ALPHACHANNEL_UNDEFINED' and
'Imagick::ALPHACHANNEL_OPAQUE' caused fatal errors for some users
with Imagick when compiled against ImageMagick < 6.4.6, when these
constants were introduced. Fixes these compatibility checks.

Props gblsm.
Fixes #36501.

git-svn-id: https://develop.svn.wordpress.org/trunk@37192 602fd350-edb4-49c9-b593-d223f7449a82
2016-04-13 06:17:25 +00:00
Mike Schroder
2909283a7f Media: Fall back to GD when loading URL in HHVM Imagick.
HHVM does not currently support loading URLs in its port of Imagick.
Fixes `test_wp_crop_image_url()` failure introduced in [36916].

See #35973.

git-svn-id: https://develop.svn.wordpress.org/trunk@36996 602fd350-edb4-49c9-b593-d223f7449a82
2016-03-15 00:14:42 +00:00
Dominik Schilling (ocean90)
e20f75533e Media: Merge two error messages and use sprintf() for the method names.
See #33642.

git-svn-id: https://develop.svn.wordpress.org/trunk@36968 602fd350-edb4-49c9-b593-d223f7449a82
2016-03-10 23:35:37 +00:00
Mike Schroder
fd8bd3520c Media: Support Imagick in HHVM.
Removes case-sensitivity from Imagick feature detection within `WP_Image_Editor_Imagick::test()`.
This allows correct detection of Imagick support within HHVM.

Props markoheijnen, DuckDagobert.
Fixes #35973.

git-svn-id: https://develop.svn.wordpress.org/trunk@36916 602fd350-edb4-49c9-b593-d223f7449a82
2016-03-10 01:18:39 +00:00
Mike Schroder
134c22caab Media: Progressive enhancement for Imagick; add profiles to whitelist.
- Progressive enhancement for optional compression improvements and stripping meta.
- Whitelist IPTC and XMP profiles to maintain Copyright and Rights Usage Terms.
- Whitelist EXIF profile to maintain orientation information. If handled on upload in the future, it can be stripped as well.

Fixes #33642. See #28634.
Props joemcgill, juliobox, ahockley, markoheijnen, adamsilverstein, wonderboymusic, mikeschroder.

git-svn-id: https://develop.svn.wordpress.org/trunk@36891 602fd350-edb4-49c9-b593-d223f7449a82
2016-03-09 04:43:40 +00:00
Drew Jaynes
04d3748efa Docs: Improve DocBlock syntax and add a missing @return notation for WP_Image_Editor_Imagick::strip_meta(), introduced in [36700].
See: #33642, #30402, #28634. See #35986.


git-svn-id: https://develop.svn.wordpress.org/trunk@36847 602fd350-edb4-49c9-b593-d223f7449a82
2016-03-04 17:36:10 +00:00
Drew Jaynes
1dfbf0fb1b Docs: Improve the hook doc summary for the image_strip_meta filter, introduced in [36700].
See: #33642, #30402, #28634. See #35986.


git-svn-id: https://develop.svn.wordpress.org/trunk@36846 602fd350-edb4-49c9-b593-d223f7449a82
2016-03-04 17:32:35 +00:00
Mike Schroder
be3ba15eec Media: Correct "Exception" typo in WP_Image_Editor_Imagick::strip_meta().
Exceptions are caught better if they're not excpeted.

Props joemcgill.
See #33642.

git-svn-id: https://develop.svn.wordpress.org/trunk@36742 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-26 21:57:26 +00:00
Mike Schroder
e2d2c45c6b Media: Optimize Imagick settings for quality and filesize
- Resamples and sharpens larger images before resize.
- Uses imagick::FILTER_TRIANGLE for a smoother resize.
- Introduces `WP_Image_Editor_Imagick::thumbnail_image()` protected method to efficiently resize images. Similar to the functionality of Imagick's `thumbnailImage()`.
- Introduces `WP_Image_Editor_Imagick::strip_meta()` protected method and `image_strip_meta` filter that, by default, strip image profiles to reduce file size, while leaving color profiles intact.

See: #33642, #30402, #28634.
Props: joemcgill, dnewton, mikeschroder.

git-svn-id: https://develop.svn.wordpress.org/trunk@36700 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-24 22:50:10 +00:00
Scott Taylor
bd7bf83886 Media: add a new image size, medium_large. Bumps db version to add new options.
Adds unit tests.

Props DH-Shredder, joemcgill, azaozz.
Fixes #34196.


git-svn-id: https://develop.svn.wordpress.org/trunk@35479 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-31 20:49:26 +00:00
Drew Jaynes
6cfda71af7 Docs: Re-clarify the $sizes[ $size ] section of the hash notations for WP_Image_Editor_GD::multi_resize() and WP_Image_Editor_Imagick::multi_resize() as not fully-optional.
The `$width` value is optional if `$height` is specified, and vice versa. The `$crop` value is always optional and defaults to false.

Props dh-shredder.
See #32246. See [35061] and [35062].


git-svn-id: https://develop.svn.wordpress.org/trunk@35063 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-12 16:33:30 +00:00
Drew Jaynes
f66e753d46 Docs: Fix hash notation syntax for the $sizes[ $size ] section in the DocBlock for WP_Image_Editor_Imagick::multi_resize().
See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@35062 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-12 16:26:22 +00:00
Dominik Schilling (ocean90)
95fc47be4f Image Editor: Merge two error strings.
Props pavelevap.
See #22623.

git-svn-id: https://develop.svn.wordpress.org/trunk@34841 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-05 22:39:37 +00:00
Scott Taylor
ed7d34cb13 Pass false as the 2nd argument to class_exists() to disable autoloading and to not cause problems for those who define __autoload().
Fixes #20523.


git-svn-id: https://develop.svn.wordpress.org/trunk@34348 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-20 03:51:55 +00:00
Sergey Biryukov
07ee7f1ef7 Replace @returns with @return in PHP docblocks.
props kraftbj.
fixes #32865.

git-svn-id: https://develop.svn.wordpress.org/trunk@33052 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-02 21:04:57 +00:00
Scott Taylor
f162be6046 For doc block types, favor bool over the few remaining booleans
See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32964 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-27 01:02:12 +00:00
Scott Taylor
296c559baf if is a statment, not a function.
See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32800 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-16 20:00:15 +00:00
Scott Taylor
c8a44d437a Add @static* annotations where they are missing.
Initialize all static vars that are not, most to `null`.

See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32650 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-29 15:42:40 +00:00
Drew Jaynes
b9b734b994 Add a proper description comment for the WP_Image_Editor_Imagick->$image property.
See [30180]. See #30224.


git-svn-id: https://develop.svn.wordpress.org/trunk@32555 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-23 19:19:49 +00:00
Scott Taylor
f67ecbdadc Add missing doc blocks to wp-image-editor*.php.
See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32546 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-22 06:17:16 +00:00
Scott Taylor
fed3b8fd1f In the ->multi_resize() method of the WP_Image_Editor subclasses, when looping through potential crops, we need to make sure the crop isn't the exact same dimensions as the original image before copying it as a new crop.
This ensures that we don't save multiple copies of the same image.

Supposedly broke in [30639], but this logic was always missing. When I tested reverting [30639], there were still 2 files being created.

Fixes #31296.


git-svn-id: https://develop.svn.wordpress.org/trunk@31576 602fd350-edb4-49c9-b593-d223f7449a82
2015-02-27 19:37:47 +00:00
Scott Taylor
979ba60a57 Fix some @param docs that have chars too close them.
Add `@property` annotations to `WP_User` and `WP_Post`.
Remove erroneous `@param`s from image editor class methods.
Officially add the property `$_column_headers` to `WP_List_Table`.	

See #30799.


git-svn-id: https://develop.svn.wordpress.org/trunk@31127 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-10 06:56:51 +00:00
Scott Taylor
f6f12912e2 Improve some docs for @param. Remove an unneeded $wpdb global import.
See #30799.


git-svn-id: https://develop.svn.wordpress.org/trunk@30979 602fd350-edb4-49c9-b593-d223f7449a82
2014-12-20 20:55:21 +00:00
Scott Taylor
345a63f498 WP_Image_Editor_GD and WP_Image_Editor_Imagick should specify type in a doc block for the $image property, instead of inferring bool and null.
See #30224.


git-svn-id: https://develop.svn.wordpress.org/trunk@30180 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-03 02:37:55 +00:00
Sergey Biryukov
1a7c4efa13 Fix setting default quality in WP_Image_Editor.
props markoheijnen.
fixes #29856 for trunk.

git-svn-id: https://develop.svn.wordpress.org/trunk@29834 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-04 13:11:38 +00:00
Scott Taylor
c2b7f8022c Add ->get_quality() method to WP_Image_Editor class.
Adds unit tests.

Props markoheijnen.
Fixes #28154.


git-svn-id: https://develop.svn.wordpress.org/trunk@28879 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-28 03:49:55 +00:00
Scott Taylor
f297dcba9a Add missing access modifiers to methods/members in WP_Image_Editor_* classes.
See #27881, #22234.


git-svn-id: https://develop.svn.wordpress.org/trunk@28513 602fd350-edb4-49c9-b593-d223f7449a82
2014-05-19 05:52:24 +00:00
Scott Taylor
7b7e5305c7 In multi_resize() image editor methods, assert that null can only be passed for one of the arguments, not both. Add a lot more unit test assertions to ensure this.
Props pbearne, DH-Shredder.
Fixes #26823.



git-svn-id: https://develop.svn.wordpress.org/trunk@27794 602fd350-edb4-49c9-b593-d223f7449a82
2014-03-27 20:39:08 +00:00
Ryan Boren
cfd5c395bb The Pinking Shears stir from their slumber, awakened by what may seem, to those
innocent in the ways of The Shears, a triviality, a nothing-of-consequence. But there are consequences indeed for recklessly trailing your whitespace. Naturally, they a dire!

One, two! One, two! And through and through
The Pinking Shears went snicker-snack!
They plucked your tail and with your space
They went sniksnuking back.

Let me tell you, that can be uncomfortable, so always pre-sniksnuk your trailing whites. May The Shears be with you.


git-svn-id: https://develop.svn.wordpress.org/trunk@26851 602fd350-edb4-49c9-b593-d223f7449a82
2013-12-11 19:48:29 +00:00
Andrew Nacin
8a3c33c861 Improvements to image quality handling in the image editor classes.
props markoheijnen, DH-Shredder.
fixes #25721.


git-svn-id: https://develop.svn.wordpress.org/trunk@26645 602fd350-edb4-49c9-b593-d223f7449a82
2013-12-04 22:48:45 +00:00
Drew Jaynes
e7ee404ec9 Improve inline documentation for the multi_resize() method in WP_Image_Editor, WP_Image_Editor_GD, and WP_Image_Editor_Imagick.
Props paolal for the initial patch.
Fixes #25530.


git-svn-id: https://develop.svn.wordpress.org/trunk@25728 602fd350-edb4-49c9-b593-d223f7449a82
2013-10-08 17:19:00 +00:00
Andrew Nacin
e212691d73 Fix non-square rotations when using the Imagick image editor.
props DH-Shredder.
fixes #22663.


git-svn-id: https://develop.svn.wordpress.org/trunk@25636 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-28 06:36:17 +00:00
Andrew Nacin
b43712e0f7 New develop.svn.wordpress.org repository based on the old core.svn repository.
* All WordPress files move to a src/ directory.
 * New task runner (Grunt), configured to copy a built WordPress to build/.
 * svn:ignore and .gitignore for Gruntfile.js, wp-config.php, and node.js.
 * Remove Akismet external from develop.svn. Still exists in core.svn.
 * Drop minified files from src/. The build process will now generate these.

props koop.
see #24976.

and see http://wp.me/p2AvED-1AI.



git-svn-id: https://develop.svn.wordpress.org/trunk@25001 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-07 05:25:25 +00:00