diff --git a/PythonConfluenceAPI/__init__.py b/PythonConfluenceAPI/__init__.py index 18a57f6..033f954 100644 --- a/PythonConfluenceAPI/__init__.py +++ b/PythonConfluenceAPI/__init__.py @@ -1,4 +1,12 @@ -__author__ = 'Robert Cope', 'Pushrod Technology' +from __future__ import absolute_import +from __future__ import division +from __future__ import print_function +from __future__ import unicode_literals -from api import ConfluenceAPI, all_of -from cfapi import ConfluenceFuturesAPI +from future import standard_library +standard_library.install_aliases() + +__author__ = 'Robert Cope, Pushrod Technology' + +from .api import ConfluenceAPI, all_of +from .cfapi import ConfluenceFuturesAPI diff --git a/PythonConfluenceAPI/api.py b/PythonConfluenceAPI/api.py index b967f07..9efdc20 100644 --- a/PythonConfluenceAPI/api.py +++ b/PythonConfluenceAPI/api.py @@ -1,9 +1,14 @@ +from __future__ import absolute_import +import future.standard_library +future.standard_library.install_aliases() + __author__ = "Robert Cope" import sys import requests from requests.auth import HTTPBasicAuth -from urlparse import urljoin +from urllib.parse import urljoin + import logging try: import anyjson as json @@ -31,7 +36,7 @@ def all_of(api_call, *args, **kwargs): :param kwargs: Keyword arguments of the call. """ kwargs = kwargs.copy() - pos, outer_limit = 0, kwargs.get('limit', 0) or sys.maxint + pos, outer_limit = 0, kwargs.get('limit', 0) or sys.maxsize while True: response = api_call(*args, **kwargs) for item in response.get('results', []): @@ -805,9 +810,9 @@ def create_new_attachment_by_content_id(self, content_id, attachments, callback= or the results of the callback. Will raise requests.HTTPError on bad input, potentially. """ if isinstance(attachments, list): - assert all(isinstance(at, dict) and "file" in at.keys() for at in attachments) + assert all(isinstance(at, dict) and "file" in list(at.keys()) for at in attachments) elif isinstance(attachments, dict): - assert "file" in attachments.keys() + assert "file" in list(attachments.keys()) else: assert False return self._service_post_request("rest/api/content/{id}/child/attachment".format(id=content_id), @@ -1034,7 +1039,7 @@ def update_attachment(self, content_id, attachment_id, attachment, callback=None or the results of the callback. Will raise requests.HTTPError on bad input, potentially. """ if isinstance(attachment, dict): - assert "file" in attachment.keys() + assert "file" in list(attachment.keys()) else: assert False return self._service_post_request("rest/api/content/{content_id}/child/attachment/{attachment_id}/data" diff --git a/PythonConfluenceAPI/cfapi.py b/PythonConfluenceAPI/cfapi.py index 1ba6214..c548658 100644 --- a/PythonConfluenceAPI/cfapi.py +++ b/PythonConfluenceAPI/cfapi.py @@ -1,9 +1,13 @@ +from __future__ import absolute_import +import future.standard_library +future.standard_library.install_aliases() + __author__ = 'Robert Cope' from requests.auth import HTTPBasicAuth -from api import ConfluenceAPI, api_logger, json +from .api import ConfluenceAPI, api_logger, json from requests_futures.sessions import FuturesSession -from urlparse import urljoin +from urllib.parse import urljoin # By default requests-futures request method returns the response object instead of the results of the callback; @@ -97,4 +101,4 @@ def base_callback(_, response): response.raise_for_status() return response.content if raw else json.loads(response.text) response_future = self.session.request(request_type, uri, background_callback=base_callback, **kwargs) - return response_future \ No newline at end of file + return response_future diff --git a/requirements.txt b/requirements.txt index ba4c189..0bf00b5 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,6 +2,7 @@ # on e.g. Ubuntu 14.04 LTS anyjson>=0.3.3,<1 +future>=0.15.2 futures>=3.0.3,<4 requests[security]>=2.3.0,<3 requests-futures>=0.9.5,<1 diff --git a/setup.py b/setup.py index 682ced2..e6b73e9 100644 --- a/setup.py +++ b/setup.py @@ -1,6 +1,6 @@ -__author__ = 'Robert Cope', 'Pushrod Technology' +__author__ = 'Robert Cope, Pushrod Technology' __author_email__ = 'robert.cope@pushrodtechnology.com' -__version__ = '0.0.1rc4' +__version__ = '0.0.1rc6' import ez_setup ez_setup.use_setuptools()