[python-bugzilla] [PATCH] bugzilla: use passed in cookies correctly
Cole Robinson
crobinso at redhat.com
Mon Apr 22 17:01:17 UTC 2013
On 04/22/2013 12:38 PM, Toshio Kuratomi wrote:
> On Mon, Apr 22, 2013 at 12:13:21PM -0400, Cole Robinson wrote:
>> On 04/22/2013 11:56 AM, Don Zickus wrote:
>>> When using the option --cookiefile for bugzilla, the cookiefile
>>> override happens to late. Use the passed in file during the
>>> beginning of init.
>>>
>>> This is addressed by defaulting the cookiefile to None to simplify
>>> the passed in argument code. Then the Bugzilla init routine assigns
>>> the default of ~/.bugzillacookies if cookiefile is None.
>>>
>>> This shouldn't affect any of the other scripts that do not use the
>>> cookiefile as an arg.
>>>
>>> diff --git a/bugzilla/base.py b/bugzilla/base.py
>>> index c2b9295..658fcc7 100644
>>> --- a/bugzilla/base.py
>>> +++ b/bugzilla/base.py
>>> @@ -187,13 +187,14 @@ class BugzillaBase(object):
>>> url = url + '/xmlrpc.cgi'
>>> return url
>>>
>>> - def __init__(self, url=None, user=None, password=None,
>>> - cookiefile=os.path.expanduser('~/.bugzillacookies')):
>>> + def __init__(self, url=None, user=None, password=None, cookiefile=None):
>>> # Settings the user might want to tweak
>>> self.user = user or ''
>>> self.password = password or ''
>>> self.url = ''
>>>
>>> + if not cookiefile:
>>> + cookiefile = os.path.expanduser('~/.bugzillacookies')
>>> self._cookiefobj = None
>>> self._cookiejar = None
>>> self._cookiefile = -1
>>>
>>
>> ACK, pushed now.
>>
> This breaks the documented behaviour of the API (and a feature I contributed
> ;-)
>
> """
> :kwarg cookiefile: Location to save the session cookies so you don't have
> to keep giving the library your username and password. This defaults
> to ~/.bugzillacookies. If set to None, the library won't save the
> cookies persistently.
> """
>
>
> If you want to preserve the API, use a different value other than None as the
> sentinel value for "Choose to use the default".
>
> If you're willing to change the API please preserve the feature by choosing a
> different sentinel value for that. However, in looking for the places in the
> code where the sentinel value should be updated, it looks like that might be
> broken atm.
>
Apologies, and good catch. I'll send a fix, please review.
- Cole
More information about the python-bugzilla
mailing list