1
0
mirror of https://github.com/guzzle/guzzle.git synced 2025-02-27 11:32:30 +01:00

10 Commits

Author SHA1 Message Date
Michael Dowling
e052a1d584 Replaced the old AbstractFactory classes with config loaders
Added the ability to add includes to arrays, JSON, and PHP files
2012-10-15 16:38:35 -07:00
Michael Dowling
a7ebc1a406 Adding the ability to disable request validation and customize how responses are processed
Moving validation from Parameter to AbstractCommand
Renaming JsonBodyVisitor to JsonVisitor
Renaming Processor to Validator
Adding min/maxLength, minimum/maximum, and min/maxItems to Parameter to support valida JSON schema
Optimizing schema validation
2012-10-15 16:38:33 -07:00
Michael Dowling
cf0924471c Completely rethinking service descriptions
Getting rid of the Validation component and "Inspector"
Removing custom types from service descriptions
Using a JSON schema based approach to validation and normalization
Adding a lazy building of Parameters for Operaton objects
Using camel case for postFile and postFile
Adding models support to service descriptions
Adding support for $ref overwrites of models registered with ServiceDescriptions
Adding more meta information to service descriptions
Adding data property to operations
Adding service description property to operations. Adding an XML location used to serialize XML requests.
Restructuring how service description based command requests are serialized and how responses are parsed
Adding JSON response parsers
Adding the ability to skip recursive translations on JSON responses
2012-10-15 16:38:33 -07:00
Michael Dowling
05e1fef820 Adding nested ApiParam support in structures. Removing XML builders.
- Adding nested parameter serialization support to json, query, and
  post_field locations.
- Removing XML builders and only using JSON/arrays.
- Removing dot notation for classes, filters, and types.
- Updating validation filters to allow callers to get the default option using a static method.
- Removing annotation support from commands and using a static method instead.
2012-10-15 16:38:32 -07:00
Michael Dowling
f5a9e9bf82 [Service] Allowing commands to be sent more than once through a client
Allowing cloned commands that have previously been sent to be sent again.
Redesigning the ResourceIterator class so that it accepts a command and iterates over the command until the sendRequest() method returns an empty array.
Adding the name of the parameter that received a type validation error to Inpector error messages
2012-05-08 14:28:45 -07:00
Michael Dowling
c0dc85de35 Breaking / Potentially breaking changes:
1. Adopting a marker interface for Guzzle exceptions.
        A. All exceptions emitted from Guzzle are now wrapped with a Guzzle namespaced exception.
        B. Guzzle\Common\GuzzleExceptionInterface was renamed to Guzzle\Common\GuzzleException
        C. Guzzle\Common\ExceptionCollection was renamed to Guzzle\Common\Exception\ExceptionCollection
    2. Using Header objects for Request and Response objects
        A. When you call $request->getHeader('X'), you will get back a Guzzle\Http\Message\Header object that contains all of the headers that case insensitively match.  This object can be cast to a string or iterated like an array.  You can pass true in the second argument to retrieve the header as a string.
        B. Removing the old Guzzle\Common\Collection based searching arguments from most of the request and response header methods.  All retrievals are case-insensitive and return Header objects.
    3. Changing the two headers added by the cache plugin to just one header with key and ttl.
    4. Changing Guzzle\Http\Message\Response::factory() to fromMessage().
    5. Removing the NullObject return value from ServiceDescriptions and instead simply returning null

New Features / enhancements:

    1. Adding Guzzle\Http\Message\AbstractMessage::addHeaders()
    2. Making it simpler to create service descriptions using a unified factory method that delegates to other factories.
    3. Better handling of ports and hosts in Guzzle\Http\Url

Note: This is a noisy diff because I'm removing trailing whitespace and adding a new line at the end of each source file.
2012-04-22 00:17:49 -07:00
Michael Dowling
4c46e77015 Guzzle 2.0
Adopting composer for dependency management
Updating LICENSE, travis build file, making better use of git ignores, and remove unused build target
Removing @author tags.  Use the commit history for a changelog.
Moving files from build folder to /
Adding min build target to product a Guzzle only phar with no autoloader
[Common] Accepting ZF1 or ZF2 cache in ZendCacheAdapter
[Common] Optimizing Stream wrapper and EntityBody abstractions.
[Common] [Http] Migrating from Guzzle event system to the Symfony2 event dispatcher
[Common] Moved Inflector and Inspector to Service namespace
[Http] Simplifying Guzzle\Guzzle curl detection
[Http] Removing Guzzle\Http\Pool and now using Guzzle\Http\Curl\CurlMulti
[Http] The helper methods from Guzzle\Http\Message\RequestFactory have been removed to prevent confusion and encourage developers to use Guzzle\Http\Client to create requests.
[Http] Clients can now send one or more requests in an array using the send() method, so the batch() method was removed.
[Http] Updating curl multi to allow blocking calls while sending other transfers
[Http] Making the Request::hasHeader method more intuitive.  Guzzle\Http\Message\AbstractMessage::hasHeader() now returns true if the header is found using exact matching.  If the header is found using a regex or case-insensitive match, then it will return the name of the found header.
[Http] Removing content-type guessing from EntityBody based on file extension and solely using finfo.
[Http] Adding basic auth plugin
[Http] Cleaning up CookieJar and CurlMulti
[Http] Removing custom rawurlencode from QueryString because PHP 5.3 now properly deals with tilde characters.
[Http] Minor optimization to parsing messages in RequestFactory
[Http] Adding Guzzle\Http\Client for developers that don't need commands or service descriptions
[Http] Making it easier to set a global User-Agent header for a Guzzle\Http\Client
[Http] Fixing the discrepancies between the ClientInterface and Guzzle\Http\Client
[Http] Adding the ability to set and retrieve tokenized headers from Requests and Responses
[Service] Ditching NIH filters and using the Symfony2 validator
[Service] Moving most service building logic to the ServiceBuilder::factory method so that it is easier to build custom config readers.
[Service] Allowing deep nested command inheritance.
[Service] Cleaning up Inflector caching.
[Service] Getting rid of concept of can_batch because everything is now sent in parallel.
[Service] Adding a JSON description builder.
[Service] Cleaning up ResourceIteratorApplyBatched.
[Service] Removing caching stuff from ServiceBuilder because the data being cached is extremely fast to generate.
[Service] Added a method to serialize the ServiceDescription in case a ServiceDescription needs to be cached in an application.
[Service] Making description builders use static methods.
[Service] Adding support to include other description files for XML and JSON description builders.
[Service] Adding support for filters to ApiCommands
[Service] Using {{}} instead of $. to reference other services as a dependency for another service
2012-01-14 13:57:05 -06:00
Michael Dowling
a7ae469671 Removing verbose docblock headers from every class 2011-07-07 17:17:28 -05:00
Michael Dowling
8c5bef47b1 [Http] [Service] Making the default request factory use static methods. Adding common HTTP method helper methods to the request factory. Renaming Client::getRequest() to Client::createRequest(). Renaming some methods of the RequestFactory. Changing the interface of Client::createRequest() to use a string or array and proxy calls to the default request factory. The createRequest method can be overridden in sub-classes if you need to use custom request objects. 2011-03-11 13:52:26 -06:00
Michael Dowling
6584ae411e Removing third party services from main repository. Refactoring tests to account for the absence of third party libaries-- using mock objects in their place. Fixing a bug in Inspector that would miss injection delimiters at the beginning of a string. Fixing a bug in ResourceIteratorApplyBatched that caused some resources to skipped when sending batch data to the callback. 2011-02-28 22:30:22 -06:00