Changes¶
0.2.8 (2014-03-30)¶
- Fixed #31: Using generic error factory _e(), the original parsed XML can be accessed in case of failure.
- Added InvalidAccount and InvalidSignature exceptions (thanks to Jannis Gebauer)
0.2.7 (2013-10-08)¶
Small bugfix release!
- Examples fixed. Processors can now be processor instances again.
0.2.6 (2013-09-14) “Humperdinck”¶
- Supports API version 2011-08-01
- Config files added
- Almost total rewrite of processors backend. Will work now with elementtree from stdlib, too.
- #26: Added endpoints for CN, ES and IT.
- Added RetryAPI to contrib package thanks to Jerry Ji.
- Documentation was overhauled.
- As of 2012-10-01 there are no more XSLT endpoints!
0.2.5 (2011-09-19) “Buttercup”¶
- Support for XSLT requests.
- Support for Associate tags thanks to Kilian Valkhof.
- New API versions 2010-12-01, 2010-11-01, 2010-10-01, 2010-09-01 and 2010-08-06 added.
- Fixed #16: Cannot install module under Python 2.4 without pycrypto being installed first.
- tox (and hudson) are now used for testing all supported Python versions (which includes Python 2.7 now, too).
- Test server is replaced with pytest-localserver.
- Fixed #18: Throttling no longer block CPU (Thanks to Benoit C).
- Added response-caching API (in
amazonproduct.contrib.caching) to ease development (Thanks to Dmitry Chaplinsky for the idea). - API explicitly warns about deprecated operations.
Important
The following operations are deprecated since 15 July 2010 and
are now answered with a ‘410 Gone’ (and a DeprecatedOperation exception):
- CustomerContentLookup
- CustomerContentSearch
- Help
- ListLookup
- ListSearch
- TagLookup
- TransactionLookup
- VehiclePartLookup
- VehiclePartSearch
- VehicleSearch
- Added new exceptions InvalidClientTokenId and MissingClientTokenId.
REQUESTS_PER_SECONDScan now be floats as well (e.g. 2500/3600.0).- Added test options options
--api-version,--localeand--refetch.
0.2.4.1 (2010-06-23)¶
Bugfix release! High time I get some continuous integration set up!
- Fixed #13: The module did not run under Python 2.4. Ooops!
0.2.4 (2010-06-13)¶
Locale parameter is now required at initialisation.
# before you could write api = API(AWS_KEY, SECRET_KEY) # now you have to specify your locale api = API(AWS_KEY, SECRET_KEY, 'de')
Custom test server (
tests.server.TestServer) added. It runs on localhost and mimicks the Amazon webservice by replaying local XML files.Testing now supports multiple locales. Please not that you have to run
python setup.py testto run the unittests.ResultPaginator now also works with XPath expressions for attributes (Bug reported Giacomo Lacava).
Custom lookup for XML elements (during parsing) ensures that
<ItemId/>and<ASIN>are now alwaysobjectify.StringElement(Bug reported by Brian Browning).Fixed #11: Module can now be installed library without lxml being installed first.
Regular expressions for parsing error messages can now deal with the Japanese version.
Warning
The support for the Japanese locale (
jp) is still very experimental! A few error messages have still to be translated and the functionality has to be confirmed. If you know Japanese, get in touch!
0.2.3 (2010-03-20)¶
Tests run now for all API versions. Test cases can now be told which versions to use (class attribute
api_versionsset to i.e.['2009-10-01']).A custom AWS response processor can now be defined. For instance, here is one using
xml.minidominstead oflxml:def minidom_response_parser(fp): root = parse(fp) # parse errors for error in root.getElementsByTagName('Error'): code = error.getElementsByTagName('Code')[0].firstChild.nodeValue msg = error.getElementsByTagName('Message')[0].firstChild.nodeValue raise AWSError(code, msg) return root api = API(AWS_KEY, SECRET_KEY, processor=minidom_response_parser) root = api.item_lookup('0718155157') print root.toprettyxml() # ...Fixed #3: Support for API Version 2009-11-01.
Fixed #4: When using a bad parameter combination, an
InvalidParameterCombinationexception is raised.Fixed #5:
InvalidSearchIndexis raised when unknownSearchIndexis specified.Fixed #7: Specifying API versions works now for more than just one test per test case.
The
setup.pycommand has been empowered a bit with the following additional options:test,build_sphinx,upload_sphinx.ResultPaginatorattributes_get_current_page_numer,_get_total_resultsand_get_total_page_numerare now private.
0.2.2 (2010-01-30)¶
browse_node_lookupoperation added.helpoperation added.list_lookupandlist_searchoperations added.- Default timeout for API calls is set to 5 sec.
- Test cases for correct parsing of XML responses added. Local XML files are
used for testing (if available) stored in separate directories
according to API version. These can be overwritten when config value
OVERWRITE_TESTSis set toTrue. InvalidItemIdexception is replaced by more generalInvalidParameterValueexception.
0.2.1 (2009-11-20)¶
- Support for Python 2.4 added.
- Fixed #2: ResultPaginator now returns
Noneif the XPath expression doesn’t find the node it’s looking for.
0.2.0 (2009-11-07) “Westley”¶
This is the first public release. We’re now available via the Cheeseshop! http://pypi.python.org/pypi/python-amazon-product-api
- The module is no longer a package. Please use
import amazonproduct(instead ofimport amazon.product) now. - SimilarityLookup is now supported.
- Updated to support version 2009-10-01.
- Documentation added (made with http://sphinx.pocoo.org).
- New artwork.
0.1 (2009-09-30) “Fezzik”¶
Initial release.