Permalink
Browse files

1.5.4 release. http://aws.amazon.com/releasenotes/1700816143828387

  • Loading branch information...
1 parent 065c20e commit 2674cf052777a196125bf78fe779eec618ca34a9 @skyzyx skyzyx committed Apr 20, 2012
@@ -0,0 +1,75 @@
+<?php
+
+define('REQUIREMENTS_ALL_MET', 100);
+define('REQUIREMENTS_MIN_MET', 10);
+define('REQUIREMENTS_NOT_MET', 0);
+
+// Required
+$php_ok = (function_exists('version_compare') && version_compare(phpversion(), '5.2.0', '>='));
+$simplexml_ok = extension_loaded('simplexml');
+$dom_ok = extension_loaded('dom');
+$json_ok = (extension_loaded('json') && function_exists('json_encode') && function_exists('json_decode'));
+$spl_ok = extension_loaded('spl');
+$pcre_ok = extension_loaded('pcre');
+$curl_ok = false;
+if (function_exists('curl_version'))
+{
+ $curl_version = curl_version();
+ $curl_ok = (function_exists('curl_exec') && in_array('https', $curl_version['protocols'], true));
+}
+$file_ok = (function_exists('file_get_contents') && function_exists('file_put_contents'));
+
+// Optional, but recommended
+$openssl_ok = (extension_loaded('openssl') && function_exists('openssl_sign'));
+$zlib_ok = extension_loaded('zlib');
+
+// Optional
+$apc_ok = extension_loaded('apc');
+$xcache_ok = extension_loaded('xcache');
+$memcached_ok = extension_loaded('memcached');
+$memcache_ok = extension_loaded('memcache');
+$mc_ok = ($memcache_ok || $memcached_ok);
+$pdo_ok = extension_loaded('pdo');
+$pdo_sqlite_ok = extension_loaded('pdo_sqlite');
+$sqlite2_ok = extension_loaded('sqlite');
+$sqlite3_ok = extension_loaded('sqlite3');
+$sqlite_ok = ($pdo_ok && $pdo_sqlite_ok && ($sqlite2_ok || $sqlite3_ok));
+
+// Other
+$int64_ok = (PHP_INT_MAX === 9223372036854775807);
+$ini_memory_limit = get_ini('memory_limit');
+$ini_open_basedir = get_ini('open_basedir');
+$ini_safe_mode = get_ini('safe_mode');
+$ini_zend_enable_gc = get_ini('zend.enable_gc');
+
+if ($php_ok && $int64_ok && $curl_ok && $simplexml_ok && $dom_ok && $spl_ok && $json_ok && $pcre_ok && $file_ok && $openssl_ok && $zlib_ok && ($apc_ok || $xcache_ok || $mc_ok || $sqlite_ok))
+{
+ $compatiblity = REQUIREMENTS_ALL_MET;
+}
+elseif ($php_ok && $curl_ok && $simplexml_ok && $dom_ok && $spl_ok && $json_ok && $pcre_ok && $file_ok)
+{
+ $compatiblity = REQUIREMENTS_MIN_MET;
+}
+else
+{
+ $compatiblity = REQUIREMENTS_NOT_MET;
+}
+
+function get_ini($config)
+{
+ $cfg_value = ini_get($config);
+
+ if ($cfg_value === false || $cfg_value === '' || $cfg_value === 0)
+ {
+ return false;
+ }
+ elseif ($cfg_value === true || $cfg_value === '1' || $cfg_value === 1)
+ {
+ return true;
+ }
+}
+
+function is_windows()
+{
+ return strtolower(substr(PHP_OS, 0, 3)) === 'win';
+}
@@ -248,7 +248,7 @@
curl_setopt($ch, CURLOPT_NOSIGNAL, true);
curl_setopt($ch, CURLOPT_USERAGENT, 'aws-sdk-php/compat-www');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
- curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, true);
+ curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_exec($ch);
@@ -258,61 +258,8 @@
exit;
}
-// Required
-$php_ok = (function_exists('version_compare') && version_compare(phpversion(), '5.2.0', '>='));
-$simplexml_ok = extension_loaded('simplexml');
-$dom_ok = extension_loaded('dom');
-$json_ok = (extension_loaded('json') && function_exists('json_encode') && function_exists('json_decode'));
-$spl_ok = extension_loaded('spl');
-$pcre_ok = extension_loaded('pcre');
-if (function_exists('curl_version'))
-{
- $curl_version = curl_version();
- $curl_ok = (function_exists('curl_exec') && in_array('https', $curl_version['protocols'], true));
-}
-$file_ok = (function_exists('file_get_contents') && function_exists('file_put_contents'));
-
-// Optional, but recommended
-$openssl_ok = (extension_loaded('openssl') && function_exists('openssl_sign'));
-$zlib_ok = extension_loaded('zlib');
-
-// Optional
-$apc_ok = extension_loaded('apc');
-$xcache_ok = extension_loaded('xcache');
-$memcached_ok = extension_loaded('memcached');
-$memcache_ok = extension_loaded('memcache');
-$mc_ok = ($memcache_ok || $memcached_ok);
-$pdo_ok = extension_loaded('pdo');
-$pdo_sqlite_ok = extension_loaded('pdo_sqlite');
-$sqlite2_ok = extension_loaded('sqlite');
-$sqlite3_ok = extension_loaded('sqlite3');
-$sqlite_ok = ($pdo_ok && $pdo_sqlite_ok && ($sqlite2_ok || $sqlite3_ok));
-
-// Other
-$int64_ok = (PHP_INT_MAX === 9223372036854775807);
-$ini_memory_limit = get_ini('memory_limit');
-$ini_open_basedir = get_ini('open_basedir');
-$ini_safe_mode = get_ini('safe_mode');
-$ini_zend_enable_gc = get_ini('zend.enable_gc');
-
-function get_ini($config)
-{
- $cfg_value = ini_get($config);
-
- if ($cfg_value === false || $cfg_value === '' || $cfg_value === 0)
- {
- return false;
- }
- elseif ($cfg_value === true || $cfg_value === '1' || $cfg_value === 1)
- {
- return true;
- }
-}
-
-function is_windows()
-{
- return strtolower(substr(PHP_OS, 0, 3)) === 'win';
-}
+// Include the compatibility test logic
+require dirname(__FILE__) . DIRECTORY_SEPARATOR . 'sdk_compatibility.inc.php';
header('Content-type: text/html; charset=UTF-8');
@@ -321,6 +268,7 @@ function is_windows()
<html lang="en">
<head>
<title>AWS SDK for PHP: Environment Compatibility Test</title>
+<meta name="ROBOTS" content="NOINDEX, NOFOLLOW, NOARCHIVE" />
<script type="text/javascript" charset="utf-8">
/*!
@@ -660,7 +608,7 @@ function is_windows()
<br>
</div>
- <?php if ($php_ok && $int64_ok && $curl_ok && $simplexml_ok && $dom_ok && $spl_ok && $json_ok && $pcre_ok && $file_ok && $openssl_ok && $zlib_ok && ($apc_ok || $xcache_ok || $mc_ok || $sqlite_ok)): ?>
+ <?php if ($compatiblity == REQUIREMENTS_ALL_MET): ?>
<div class="chunk important ok">
<h3>Bottom Line: Yes, you can!</h3>
<p>Your PHP environment is ready to go, and can take advantage of all possible features!</p>
@@ -670,7 +618,7 @@ function is_windows()
<p>You can download the latest version of the <a href="http://aws.amazon.com/sdkforphp"><strong>AWS SDK for PHP</strong></a> and install it by <a href="http://aws.amazon.com/articles/4261">following the instructions</a>. Also, check out our library of <a href="http://aws.amazon.com/articles/4262">screencasts and tutorials</a>.</p>
<p>Take the time to read <a href="http://aws.amazon.com/articles/4261">"Getting Started"</a> to make sure you're prepared to use the AWS SDK for PHP. No seriously, read it.</p>
</div>
- <?php elseif ($php_ok && $curl_ok && $simplexml_ok && $dom_ok && $spl_ok && $json_ok && $pcre_ok && $file_ok): ?>
+ <?php elseif ($compatiblity == REQUIREMENTS_MIN_MET): ?>
<div class="chunk important ok">
<h3>Bottom Line: Yes, you can!</h3>
<p>Your PHP environment is ready to go! <i>There are a couple of minor features that you won't be able to take advantage of, but nothing that's a show-stopper.</i></p>
@@ -692,7 +640,7 @@ function is_windows()
</div>
<?php endif; ?>
- <?php if ($apc_ok || $xcache_ok || $file_ok): ?>
+ <?php if ($compatiblity >= REQUIREMENTS_MIN_MET): ?>
<div class="chunk">
<h3>Recommended settings for config.inc.php</h3>
<p>Based on your particular server configuration, the following settings are recommended.</p>
@@ -731,7 +679,7 @@ function is_windows()
<div class="chunk">
<h3>Give me the details!</h3>
- <?php if ($php_ok && $curl_ok && $simplexml_ok && $dom_ok && $spl_ok && $json_ok && $pcre_ok && $file_ok): ?>
+ <?php if ($compatiblity >= REQUIREMENTS_MIN_MET): ?>
<ol>
<li><em>Your environment meets the minimum requirements for using the <strong>AWS SDK for PHP</strong>!</em></li>
@@ -1,61 +1,14 @@
#! /usr/bin/env php
<?php
-// Required
-$php_ok = (function_exists('version_compare') && version_compare(phpversion(), '5.2.0', '>='));
-$simplexml_ok = extension_loaded('simplexml');
-$dom_ok = extension_loaded('dom');
-$json_ok = (extension_loaded('json') && function_exists('json_encode') && function_exists('json_decode'));
-$spl_ok = extension_loaded('spl');
-$pcre_ok = extension_loaded('pcre');
-if (function_exists('curl_version'))
+//Prevent script from being called via browser
+if (PHP_SAPI !== 'cli')
{
- $curl_version = curl_version();
- $curl_ok = (function_exists('curl_exec') && in_array('https', $curl_version['protocols'], true));
-}
-$file_ok = (function_exists('file_get_contents') && function_exists('file_put_contents'));
-
-// Optional, but recommended
-$openssl_ok = (extension_loaded('openssl') && function_exists('openssl_sign'));
-$zlib_ok = extension_loaded('zlib');
-
-// Optional
-$apc_ok = extension_loaded('apc');
-$xcache_ok = extension_loaded('xcache');
-$memcached_ok = extension_loaded('memcached');
-$memcache_ok = extension_loaded('memcache');
-$mc_ok = ($memcache_ok || $memcached_ok);
-$pdo_ok = extension_loaded('pdo');
-$pdo_sqlite_ok = extension_loaded('pdo_sqlite');
-$sqlite2_ok = extension_loaded('sqlite');
-$sqlite3_ok = extension_loaded('sqlite3');
-$sqlite_ok = ($pdo_ok && $pdo_sqlite_ok && ($sqlite2_ok || $sqlite3_ok));
-
-// Other
-$int64_ok = (PHP_INT_MAX === 9223372036854775807);
-$ini_memory_limit = get_ini('memory_limit');
-$ini_open_basedir = get_ini('open_basedir');
-$ini_safe_mode = get_ini('safe_mode');
-$ini_zend_enable_gc = get_ini('zend.enable_gc');
-
-function get_ini($config)
-{
- $cfg_value = ini_get($config);
-
- if ($cfg_value === false || $cfg_value === '' || $cfg_value === 0)
- {
- return false;
- }
- elseif ($cfg_value === true || $cfg_value === '1' || $cfg_value === 1)
- {
- return true;
- }
+ die('ERROR: You may only run the compatibility test from the command line.');
}
-function is_windows()
-{
- return strtolower(substr(PHP_OS, 0, 3)) === 'win';
-}
+// Include the compatibility test logic
+require dirname(__FILE__) . DIRECTORY_SEPARATOR . 'sdk_compatibility.inc.php';
// CLI display
function success($s = 'Yes')
@@ -119,7 +72,7 @@ function failure($s = 'No ')
curl_setopt($ch, CURLOPT_NOSIGNAL, true);
curl_setopt($ch, CURLOPT_USERAGENT, 'aws-sdk-php/compat-cli');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
- curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, true);
+ curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_VERBOSE, false);
curl_exec($ch);
$ssl_result = !(curl_getinfo($ch, CURLINFO_SSL_VERIFYRESULT) === 0);
@@ -138,7 +91,7 @@ function failure($s = 'No ')
echo '----------------------------------------' . PHP_EOL;
echo PHP_EOL;
-if ($php_ok && $curl_ok && $simplexml_ok && $dom_ok && $spl_ok && $json_ok && $pcre_ok && $file_ok)
+if ($compatiblity >= REQUIREMENTS_MIN_MET)
{
echo success('Your environment meets the minimum requirements for using the AWS SDK for PHP!') . PHP_EOL . PHP_EOL;
if (version_compare(PHP_VERSION, '5.3.0') < 0) { echo '* You\'re still running PHP ' . PHP_VERSION . '. The PHP 5.2 family is no longer supported' . PHP_EOL . ' by the PHP team, and future versions of the AWS SDK for PHP will *require*' . PHP_EOL . ' PHP 5.3 or newer.' . PHP_EOL . PHP_EOL; }
@@ -178,7 +131,7 @@ function failure($s = 'No ')
echo '----------------------------------------' . PHP_EOL;
echo PHP_EOL;
-if ($php_ok && $int64_ok && $curl_ok && $simplexml_ok && $dom_ok && $spl_ok && $json_ok && $pcre_ok && $file_ok && $openssl_ok && $zlib_ok && ($apc_ok || $xcache_ok || $mc_ok || $sqlite_ok))
+if ($compatiblity === REQUIREMENTS_ALL_MET)
{
echo success('Bottom Line: Yes, you can!') . PHP_EOL;
echo PHP_EOL;
@@ -201,7 +154,7 @@ function failure($s = 'No ')
echo " )" . PHP_EOL;
echo "));" . PHP_EOL;
}
-elseif ($php_ok && $curl_ok && $simplexml_ok && $dom_ok && $spl_ok && $json_ok && $pcre_ok && ($apc_ok || $xcache_ok || $sqlite_ok))
+elseif ($compatiblity === REQUIREMENTS_MIN_MET)
{
echo success('Bottom Line: Yes, you can!') . PHP_EOL;
echo PHP_EOL;
View
@@ -1,3 +1,74 @@
+ # Changelog: 1.5.4 "Enterprise"
+Code name for Mac OS X Server 1.0 (Rhapsody CR1). <http://en.wikipedia.org/wiki/Rhapsody_(operating_system)>
+
+Launched Thursday, April 19, 2012.
+
+
+## Bug fixes and enhancements
+* [PHP SDK Bug - Memory leak](https://forums.aws.amazon.com/thread.jspa?threadID=72310)
+* [Does update_object work in 1.5.3?](https://forums.aws.amazon.com/thread.jspa?threadID=89297)
+* [The value of CURLOPT_SSL_VERIFYHOST](https://forums.aws.amazon.com/thread.jspa?threadID=86186)
+* [PHP SDK BUG: s3.class.php Line 2396 on 1.5.2](https://forums.aws.amazon.com/thread.jspa?threadID=86779)
+* [first create_bucket(), then get_bucket_list()](https://forums.aws.amazon.com/thread.jspa?messageID=318885)
+* [Issue with AmazonS3::get_object_list() max-keys](https://forums.aws.amazon.com/thread.jspa?threadID=85878)
+* [Correct the "Bottom line" minimum requirements check](https://github.com/amazonwebservices/aws-sdk-for-php/pull/23)
+* [S3 PHP SDK: copy_object() fails to update the header](http://stackoverflow.com/questions/7677837/s3-php-sdk-copy-object-fails-to-update-the-header)
+* [Adds the following utility methods to simplexml.class.php](https://github.com/amazonwebservices/aws-sdk-for-php/pull/22)
+* [Adding the ability to name a 'rule' for Object Expiration (suggested tweak)](https://forums.aws.amazon.com/thread.jspa?messageID=328023)
+
+## Runtime
+* **New:** Support for Signature Version 4 has been added to the SDK. Signature Version 4 is now the default authentication method for AWS Identity and Access Management, AWS Security Token Service, AWS CloudFormation, and Amazon CloudSearch.
+
+## Services
+### AmazonCloudFront
+* **New:** Support for a Minimum TTL of zero has been added to the SDK.
+
+### AmazonCloudSearch
+* **New:** Support for Amazon CloudSearch has been added to the SDK. This includes only the Configuration API.
+
+### AmazonDynamoDB
+* **New:** Support for BatchWriteItem API has been added to the SDK.
+* **New:** Support for the Asia Pacific "Northeast" (Tokyo) endpoint has been added.
+* **New:** Amazon DynamoDB Session Handler has been added to the SDK.
+* **New:** A simplified interface for adding attributes has been added to the SDK.
+
+### AmazonEC2
+* **New:** The new "m1.medium" instance type is now supported.
+* **New:** Amazon EBS support for Volume Status and Volume Attributes have been added to the SDK.
+* **New:** Amazon EBS support for Conversion Tasks has been added to the SDK.
+* **New:** Amazon EC2 support for the Report Instance Status feature has been added to the SDK.
+* **New:** Amazon VPC support for Network Interfaces has been added to the SDK.
+* **Fixed:** Various parameter fixes have been applied.
+
+### AmazonIAM
+* **New:** Support for Password Policies and the ability to change passwords has been added to the SDK.
+
+### AmazonS3
+* **New:** Support for pre-signed URLs using temporary credentials has been added to the SDK.
+* **New:** Support for setting a custom name to Lifecycle (i.e., Object Expiration) rules has been added to the SDK.
+* **New:** Support for pre-signed URLs with https has been added to the SDK.
+* **Fixed:** Resolved an issue where setting a custom XML parsing class was not being respected.
+* **Fixed:** Resolved an issue where the `get_object_list()` method would return an incorrect number of entries.
+* **Fixed:** Resolved an issue where `update_object()` was attempting to COPY instead of REPLACE.
+* **Fixed:** Resolved an issue stemming from using path-style URLs, `create_bucket()` + `list_bucket()` and the EU-West region.
+* **Fixed:** Resolved an issue where XML responses were not being parsed consistently.
+* **Fixed:** Resolved an issue where Private Streaming URLs contained a double-encoded signature.
+* **Fixed:** The `Expect: 100-continue` HTTP header is now only sent during `create_object()` and `upload_part()` requests.
+
+## Utilities
+### CFRuntime
+* **Fixed:** Resolved an issue where `CURLOPT_SSL_VERIFYHOST` was not set strictly enough.
+* **Fixed:** The `Expect: 100-continue` HTTP header is no longer set on every request.
+
+### CFSimpleXML
+* **New:** Support for `matches()`, `starts_with()` and `ends_with()` methods have been added to the SDK. (Thanks [Wil Moore III](https://github.com/wilmoore)!)
+
+## Compatibility Test
+* **New:** SDK Compatibility Test pages are marked up as to not be indexed by search engines. (Thanks [Eric Caron](http://www.ericcaron.com)!)
+* **Fixed:** Duplicate code between the CLI and web versions of the SDK has been refactored. (Thanks [Jimmy Berry](https://github.com/boombatower)!)
+
+---
+
# Changelog: 1.5.3 "Darwin"
UNIX foundation upon which Mac OS X, Apple TV, and iOS are based. <http://en.wikipedia.org/wiki/Darwin_operating_system>
@@ -13,7 +84,6 @@ Launched Wednesday, Tuesday, February 21, 2012.
### AmazonSWF
* **New:** Support for the new Amazon Simple Workflow Service has been added to the SDK.
-
----
# Changelog: 1.5.2 "Copland"
@@ -42,9 +112,6 @@ Launched Wednesday, Febraury 1, 2012.
* **Fixed:** Resolved an issue where `delete_bucket()` would fail to delete a bucket with the "force" option enabled if the bucket contained more than 1000 items.
* **Fixed:** Resolved an issue where JSON documents stored in Amazon S3 would be parsed into a native PHP object when retrieved.
-### Auto Scaling
-* **New:** Support added for performing CRUD operations on tags for Auto Scaling groups.
-
## Utilities
### S3StreamWrapper
* **New:** Support for multiple stream wrappers (e.g., one per region) has been added to the SDK.
View
@@ -13,6 +13,7 @@ The following people have provided ideas, support and bug fixes:
* [Eric Caron](http://www.ericcaron.com) (bug fixes)
* [Jason Ardell](http://ardell.posterous.com/) (bug fixes)
* [Jeremy Archuleta](http://code.google.com/u/jeremy.archuleta/) (bug fixes)
+* [Jimmy Berry](http://blog.boombatower.com/) (bug fixes, patches)
* [Paul Voegler](mailto:voegler@gmx.de) (bug fixes, bug reports, patches)
* [Peter Bowen](http://github.com/pzb) (feedback, bug reports)
* [zoxa](https://github.com/zoxa) (bug fixes)
Oops, something went wrong.

0 comments on commit 2674cf0

Please sign in to comment.