From a4674c7c70d2c3e575af8dc0be3cb3bb758512e0 Mon Sep 17 00:00:00 2001 From: Kyle Snavely Date: Tue, 4 Mar 2014 14:19:33 -0500 Subject: [PATCH 1/2] raise_for_status on document merge --- cloudant/document.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cloudant/document.py b/cloudant/document.py index 1bfb3bd..8749423 100644 --- a/cloudant/document.py +++ b/cloudant/document.py @@ -24,14 +24,17 @@ def merge(self, change, **kwargs): and then `PUT` the updated document back to the server. """ response = self.get() - # block until result if the object is using async + # block until result if the object is using async/is a future if hasattr(response, 'result'): response = response.result() + # handle upserts if response.status_code == 404: doc = {} else: + response.raise_for_status() doc = response.json() + # merge! doc.update(change) return self.put(params=doc, **kwargs) From 4ba2a0ce5f83124b4fa21b857117026f2e30c3ee Mon Sep 17 00:00:00 2001 From: Kyle Snavely Date: Tue, 4 Mar 2014 14:30:41 -0500 Subject: [PATCH 2/2] pyflakes --- cloudant/resource.py | 1 - 1 file changed, 1 deletion(-) diff --git a/cloudant/resource.py b/cloudant/resource.py index 3aedd42..3e251c5 100644 --- a/cloudant/resource.py +++ b/cloudant/resource.py @@ -1,5 +1,4 @@ from requests_futures.sessions import FuturesSession -import urllib import requests import urlparse import json