From 0ba89d75e6e26bf14f5b6cfb6526e601f7ad7e2d Mon Sep 17 00:00:00 2001 From: Eric Sunshine Date: Tue, 13 Jan 2015 04:57:09 -0500 Subject: git.py: introduce Blob abstraction Some blob representations (such as embedded images) require raw blob content, however, the 'blob' view is unconditionally handed cooked (utf8-encoded) content, thus representations which need raw content are forced to reload the blob in raw form, which is ugly and expensive (due to shelling out to git-cat-file a second time). The ultimate goal is to eliminate the wasteful blob reloading when raw content is needed. As a first step, introduce a Blob abstraction to be returned by Repo.blob() rather than the cooked content. A subsequent change will flesh out Blob, allowing it to return raw or cooked content on demand without the client having to specify one or the other when invoking Repo.blob(). Signed-off-by: Eric Sunshine Signed-off-by: Alberto Bertogli --- utils.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'utils.py') diff --git a/utils.py b/utils.py index 46407bd..be6ab78 100644 --- a/utils.py +++ b/utils.py @@ -107,5 +107,5 @@ def embed_image_blob(repo, dirname, fname): raw_blob = repo.blob(dirname + fname, raw = True) return ''.format( \ - mimetype, base64.b64encode(raw_blob)) + mimetype, base64.b64encode(raw_blob.raw_content)) -- cgit v1.2.3