This reverts commit 2f14cedcff96d7991c97604b94717f1c927c5d4e.
Actually, this was meant to fix https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=762825,
which was (probably) caused due to the following:
- commit 320238350fb5c0026f9538e8bb48de3b155dfab4 introduced a codepath, which
should not be needed for python >= 2.7.1 (see also
https://hg.python.org/cpython/rev/64287)
- this codepath uses the "reset_retry_count" method, which is not present in
Debian Jessie's libpython2.7-stdlib: libpython2.7-stdlib_2.7.8-11 backports
a patch from python's 2.7.9 branch, which removes the "reset_retry_count"
method (https://hg.python.org/cpython/rev/c1edc4e43eb1).
This fixes bnc#911080 and github issue #131.
This reverts commit 320238350fb5c0026f9538e8bb48de3b155dfab4.
With python >= 2.7.1 this codepath should not be needed (see also
https://hg.python.org/cpython/rev/64287).
Conflicts:
osc/conf.py
Some distributions have no initrd images compatible with KVM builds and
sometimes we need to use not system kernel version.
New options in configuration file:
- build-kernel -- kernel used for VM builds
- build-initrd -- initrd image used for VM builds
The string.encode('bz2') does not work in python3. Implement
passx_encode/passx_decode functions compatible with python 2.6, 2.7 and
3.3.
Add a simple unit test.
this is left-over from 87d354e1a013806ef37f11e22f015e5cc43e533d
Addressing:
Traceback (most recent call last):
File "/usr/bin/osc", line 26, in <module>
r = babysitter.run(osccli)
File "/usr/lib/python2.7/site-packages/osc/babysitter.py", line 60, in run
return prg.main()
File "/usr/lib/python2.7/site-packages/osc/cmdln.py", line 335, in main
self.postoptparse()
File "/usr/lib/python2.7/site-packages/osc/commandline.py", line 136, in postoptparse
override_verbose = self.options.verbose)
File "/usr/lib/python2.7/site-packages/osc/conf.py", line 873, in get_config
add_section(conffile, url, user, passwordx)
File "/usr/lib/python2.7/site-packages/osc/conf.py", line 712, in add_section
except OscConfigParser.ConfigParser.DuplicateSectionError:
AttributeError: class OscConfigParser has no attribute 'ConfigParser'
If http_debug is set we redirect sys.stdout to an StringIO
instance in order to do some header filtering (see conf module)
so we have to use the "original" stdout for printing the certificate
information.
The most visible change in python3 - removal of print statement and all
the crufty
print >> sys.stderr, foo,
The from __future__ import print_function makes it available in python
2.6
Some modules (httplib, StringIO, ...) were renamed in python3. This
patch try to import the proper symbols from python3 and then fallback to
python2 in a case ImportError will appear.
There is one exception, python 2.7 got the io module with StringIO, but
it allow unicode arguments only. Therefor the old module is poked before
new one.
This is more useful and meaningful error message than M2Crypto's
"ValueError: cafile and capath can not both be None." when neither
of cafile and capath is defined for load_verify_locations call.
This way it's possible to hide requests which have a given project
as a source project when running "osc rq list project".
Original patch by darix (just a bit beautified)