Commit Graph
52 Commits
Author SHA1 Message Date
Nick LangandGitHub 60d254860b Add support for using cloud_id when instantiating conections (#957)
* add cloud_id

* adding doc strings

* update changelog

* adding some tests to check for cloud_id

* update the read me
2019-05-21 21:21:34 -05:00
Nick LangandGitHub 1afceba69b update to ES 7 (#911)
* update to ES 7

* more updates to make tests run

* update the test matrix

* remove python 3.3

* update xpack apis

* relative imports
2019-03-29 09:25:23 -06:00
Alvaro Olmedo RodriguezandNick Lang 51ad5d3617 ssl_show_warn option added (#913)
* ssl_show_warn option added

* Typo fixed
2019-03-28 13:20:16 -06:00
Chris WynneandNick Lang 67deac55c4 Pass Retry object to urllib3 instead of False (#827)
By passing a `Retry` object to `urlopen` instead of just `False`, it
prevents `urllib3` from having to create a Retry object with `from_int`.

`from_int` emits an undesirable log message when called with
`retries=False`, and this can be avoided by the method described above.
2018-07-24 11:24:13 -07:00
Nick LangandGitHub 206e0d609c handle gzip for python27. Fixes #789 (#793) 2018-05-18 13:52:37 -06:00
Ilya RadinskyandNick Lang 4dc4ba18ad Fixes double creation of urllib3.HTTPSConnectionPool when ssl_context and use_ssl are used (#780) 2018-05-01 13:54:17 -06:00
robgilandNick Lang 64c125d34c Adding GZip support to urllib3 (#704)
* Adding GZip support to urllib3

* Adding compression documentation and example

* Convert to lowercase for consistency

* Moving header manipulation to __init__()

* Validating headers for compression

* Moving body compression out of the headers block

* Don't compress if there is no body

* Infer true
2018-03-13 10:34:25 -06:00
Nick LangandGitHub 058d38f0ae Use use ssl_context or don't but don't mix (#714)
* Use original SSL process and add SSLContext

Not going to deprecate and replace with SSLContext.
But instead give option for using SSLContext next to the original way of
handling SSL.
2018-03-04 15:09:40 -08:00
Honza Král eaa67a100d use_ssl flag is set by Connection
This wasn't an issue before as scheme=https was not documented but now
it is in the docs and it makes this entire block be skipped if url is
given without scheme and no ssl_context is passed completely breaking
ssl
2018-01-18 16:12:07 +01:00
Honza Král a023bddb4d Use provided request headers in urllib3
outside. However, `Urllib3HttpConnection` did not use these headers but
only its default ones.

With this commit, `Urllib3HttpConnection` will either use the default
ones or merge the default headers with the provided ones if there are
any.

Relates #618
2018-01-01 15:42:46 +01:00
Nick Lang bf1d64e88d Updates to SSL Context changes,
Bug with OSX made breaking changes to the way certifi was being imported
and used.

Unable to reproduce with Linux.

Found improper logic. Fixed now.
Also changing removing the flag for checking `verify_certs` as
it is `True` by default. Don't want to make users flag that as
`False` just to make things work.

A connection to an SSL instance should be:

    es = Elasticsearch("https://host:port", http_auth=(user,pass))

* If using Elastic Cloud or some other publicly recognized certificate
  that certifi can recognize.
2017-12-27 20:26:23 -07:00
Nick LangandHonza Král 37490e223f When _just_ using an SSL context we don't want breaking behavior (#673)
Also don't want to break backwards compat. So when chcking for depreicated values ignore
the check on verify_certs. Since it's True. the verify certs will be default true
in the ssl_context. And can be turned off in the SSL context when using it.
2017-11-28 22:01:20 +01:00
Honza Král f639f9b28e Apply cafile defaults before checking for emptiness
Fixes #669
2017-11-14 19:20:15 +01:00
Nick LangandGitHub 5c537deca4 Merge pull request #635 from fxdgear/nick/ssl_context
Nick/ssl context
2017-10-06 11:35:23 -06:00
Nick Lang 7339a272b5 Add SSL context for versions of Python that support SSL Context.
Instead of passing parameters manually, you can construct an SSL
context. This allows for greater flexibility in using self signed certs.
2017-10-06 11:27:15 -06:00
Joshua Carp 3045516738 Clean up custom headers. 2017-10-04 16:07:55 -04:00
Joshua Carp 073db90ae8 Set application/x-ndjson content type on bulk requests.
Resolves #609
2017-10-04 16:07:55 -04:00
Honza Král d862c8a799 Add content-type default headers with application/json 2017-02-08 20:50:50 +01:00
Honza Král 8107bbcf93 update headers in lowercase to allow overriding of auth headers 2017-01-03 15:07:28 +01:00
Honza Král b9ba12977f Refactored connection error handling 2016-12-15 16:46:05 +11:00
Honza Král 8b96556769 Change the trace logger to also include failed requests 2016-10-19 15:28:31 +02:00
Honza Král bf561fb856 Fix maxsize parameter description.
Fixes #414 Thanks theanti9!
2016-10-17 17:27:33 +02:00
Honza Král 8314f7b25c Set verify_certs default to True
If certifi is installed use it as default for ca_certs value
Closes #403
2016-10-17 14:16:56 +02:00
Honza Král 311ac7c814 Allow specifying custom http headers 2016-07-12 18:13:48 +02:00
Juri HudolejevandHonza Král 9f2608c469 Fix HTTPS URL support (#411)
* Fix scheme for HTTPS URLs

For URLs like https://example.org scheme is currently set to 'http'.

* Revert "Fix scheme for HTTPS URLs"

This reverts commit 5dcee5bd2a8ce4453b495e637b283e7558718262.

* Fix HTTPS URL support
2016-06-20 13:08:36 +02:00
Adam ChainzandHonza Král 40db4b6228 Convert readthedocs links for their .org -> .io migration for hosted projects (#413)
As per [their blog post of the 27th April](https://blog.readthedocs.com/securing-subdomains/) ‘Securing subdomains’:

> Starting today, Read the Docs will start hosting projects from subdomains on the domain readthedocs.io, instead of on readthedocs.org. This change addresses some security concerns around site cookies while hosting user generated data on the same domain as our dashboard.
2016-06-08 14:41:44 +02:00
Will McGinnis b0d3de0ada requested changes. 2016-03-03 19:50:17 -05:00
Will McGinnis 8a18e4c743 added close methods to everything below transport 2016-03-03 19:31:31 -05:00
Rich MegginsonandHonza Král fe6e9a7f5c Urllib3HttpConnection should have separate client_cert and client_key arguments #344
https://github.com/elastic/elasticsearch-py/issues/344
Add a client_key parameter to complement the client_cert parameter.  If
client_key is used, it is assumed that client_cert will contain only the
certificate, not the combined cert and key in a single file.

Closes #344
2016-02-29 22:35:40 +01:00
Darryl RingandHonza Král a9b8f86547 Log response body for failed requests
Addresses #346
2016-02-01 09:32:43 +01:00
Honza Král efc1156bd5 add description of the basic params for Urllib3HttpConnection 2015-11-19 11:10:07 -06:00
Chris EarleandHonza Král f3315dc98d Adding assert_hostname and assert_fingerprint parameters to Urllib3HttpConnection 2015-11-10 16:15:56 +09:00
Honza Král 845f8cd6f5 Adding ssl_version parameter to Urllib3HttpConnection
Fixes #246
2015-07-06 18:09:44 +02:00
Honza Král d328998b36 Add keep_alive headers by default to Urllib3HttpConnection 2015-06-22 20:39:58 +02:00
Honza Král b92d591026 Make method utf-8 for urllib3
fixes #201
2015-02-26 14:14:33 -08:00
Honza Král 271fc4d232 Warn when people using insecure options. 2015-01-29 23:46:01 +01:00
Honza Král 03a817690d Added support for client SSL certificates for https
Thanks almer-fuel for the inital patch!
2014-11-14 15:31:49 +01:00
Honza Král fedcfafe7e Proper SSL implementation, including optional certificate verification 2014-11-11 03:20:16 +01:00
Honza Král d9296e85b9 Timeout should not trigger a retry by default 2014-11-10 23:52:26 +01:00
Honza Král ecfeb93a6f Introducing a ConnectionTimeout as a subclass of ConnectionError
This is to enable #128 to work
2014-10-03 18:49:07 +02:00
Honza Král f93a79aedd Add explanation of url encoding 2014-10-03 17:32:11 +02:00
Honza Král 5fec49e261 Make sure url is a string, not unicode in python 2
Fixes #133, thanks sheIIdon!
2014-10-01 17:31:38 +02:00
Honza Král 20aa35d791 Urllib3 will fill in the content-length automatically 2014-10-01 16:42:04 +02:00
Honza Král 49b7a1aca9 Make sure to include Content-Length header in calls with body
Fixes #70
2014-03-31 16:41:08 -07:00
Honza Král b78bce79df Make sure urllib3 doesn't do retries. 2014-03-01 01:25:25 +01:00
Honza Král a54d7035bb Compatibility with python 3.2
Now all the python 2/3 compatibility code is in elasticsearch.compat
Fixes #52
2014-02-21 16:59:13 +01:00
Honza Král c2611e92eb Set timeout properly for Requests and Thrift connections 2014-01-23 08:48:42 +01:00
Honza Král e2ab7ea80d Adding a third return value from connection.perform_request - headers
This will be used to implement deserializing based on mimetype
2013-12-13 19:36:21 +01:00
Honza Král c5c98dcaac Add logging of body as INFO on connection error 2013-12-03 01:55:32 +01:00
Honza Král 1c279d5aad By default allow 10 connections to be held to the server 2013-11-19 22:31:25 +01:00