[issue1204] readline configuration for shared libs w/o curses dependencies

2007-09-25 Thread Mike Beachy

New submission from Mike Beachy:

For RHEL 3 (and it also appears RHEL 4 and 5) the libreadline shared lib
has no specified lib requirement that satisfies the tgetent and related
symbols. (These symbols are provided by ncursesw, ncurses, curses,
termcap as noted in the python setup.py.) The configure script does not
add these required libs in for the readline tests, and so the autoconf
tests will fail and it will incorrectly determine that readline is not
present (and so not define HAVE_RL_COMPLETION_MATCHES etc.)

I guess this generally does not prevent the readline module from being
compiled since setup.py does its own search for readline and adds in the
needed curses library. It does prevent proper declaration of the
completion_matches function, however. On 32 bit systems this doesn't
matter but on 64 bit ones it does as the undeclared (but present in
libreadline) completion_matches returns a char **.

The fix checked in with r54874 after the 2.5.1 release (issue 1703270)
to Modules/readline.c fixes the problem for completion_matches
specifically, but the problem of incorrect determination of readline
presence still exists.

Attached is a patch to fix the problem: it adds the necessary additional
library to the temporary LIBS definition in the readline tests, using
the same order of curses libs specified in setup.py. (The patch includes
the  changes for the configure script in addition to configure.in.)

--
components: Installation
files: full.patch
messages: 56140
nosy: mbeachy
severity: normal
status: open
title: readline configuration for shared libs w/o curses dependencies
type: compile error
versions: Python 2.5

__
Tracker <[EMAIL PROTECTED]>
<http://bugs.python.org/issue1204>
__Index: configure
===
--- configure	(revision 58227)
+++ configure	(working copy)
@@ -1,5 +1,5 @@
 #! /bin/sh
-# From configure.in Revision: 57904 .
+# From configure.in Revision: 57960 .
 # Guess values for system-dependent variables and create Makefiles.
 # Generated by GNU Autoconf 2.61 for python 2.6.
 #
@@ -21500,6 +21500,93 @@
 
 fi
 
+# This will find the lib that defines tgetent and add it to LIBS; it is
+# necessary for readline tests on platforms for which readline shared libs
+# don't have a dependency on curses libs.
+{ echo "$as_me:$LINENO: checking for library containing tgetent" >&5
+echo $ECHO_N "checking for library containing tgetent... $ECHO_C" >&6; }
+if test "${ac_cv_search_tgetent+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_func_search_save_LIBS=$LIBS
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char tgetent ();
+int
+main ()
+{
+return tgetent ();
+  ;
+  return 0;
+}
+_ACEOF
+for ac_lib in '' ncursesw ncurses curses termcap; do
+  if test -z "$ac_lib"; then
+ac_res="none required"
+  else
+ac_res=-l$ac_lib
+LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
+  fi
+  rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_link") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+   } && test -s conftest$ac_exeext &&
+   $as_test_x conftest$ac_exeext; then
+  ac_cv_search_tgetent=$ac_res
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+  conftest$ac_exeext
+  if test "${ac_cv_search_tgetent+set}" = set; then
+  break
+fi
+done
+if test "${ac_cv_search_tgetent+set}" = set; then
+  :
+else
+  ac_cv_search_tgetent=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_search_tgetent" >&5
+echo "${ECHO_T}$ac_cv_search_tgetent" >&6; }
+ac_res=$ac_cv_search_tgetent
+if test "$ac_res" != no; then
+  test "$ac_res" = "none required" || LIBS=&quo

[issue7291] urllib2 cannot handle https with proxy requiring auth

2011-02-19 Thread Mike Beachy

Mike Beachy  added the comment:

I've been in contact w/ Barry Scott offline re: the monkey patch previously 
mentioned. I'm attaching a 2.7 maintenance branch patch that he has needed to 
extend, and plans to follow up on.

--
Added file: http://bugs.python.org/file20798/2_7_x.patch

___
Python tracker 
<http://bugs.python.org/issue7291>
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue7291] urllib2 cannot handle https with proxy requiring auth

2011-02-19 Thread Mike Beachy

Mike Beachy  added the comment:

Attached to this comment (can you attach multiple files at once?) is the 
somewhat moldy 2.6.4 monkey patch, mercilessly ripped from my own code and 
probably not good for much.

--
Added file: http://bugs.python.org/file20799/monkey_2_6_4.py

___
Python tracker 
<http://bugs.python.org/issue7291>
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue7291] urllib2 cannot handle https with proxy requiring auth

2010-04-13 Thread Mike Beachy

Mike Beachy  added the comment:

I have worked up a monkey patch for urllib2/httplib for the issue of setting 
the authentication using a Proxy(Basic|Digest)AuthHandler.

The basic approach was to create a new httplib exception (ProxyTunnelError) and 
raise that with the http response attached so that the HTTPSHandler can 
determine when 407 Proxy authentication required is present, and then reroute 
the urllib2.OpenerDirector to error handling mode.

Unfortunately, there is a backwards compatibility issue - cases where a 
socket.error was previously being raised now get an ProxyTunnelError. Not that 
you could do much useful with the socket.error in the first place, but I 
suppose you could look for '407' in the text. Ugh.

If you think this might prove useful, let me know and I can rework it into a 
real patch - just let me know what branch/version to base it off of. (My monkey 
patch is for python 2.6.4.)

--
nosy: +mbeachy

___
Python tracker 
<http://bugs.python.org/issue7291>
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1204] readline configuration for shared libs w/o curses dependencies

2008-01-19 Thread Mike Beachy

Mike Beachy added the comment:

Urgh. Re-reading this, I could barely understand what the hell I was saying.

The problem: 64 bit compiles will dump core when readline is used if
they don't properly identify the presence of readline and use the system
headers.

The solution: fix autoconf to properly recognize when readline is
present by providing configure's readline test program with all
necessary prerequisites.

caveat: The fix for issue 1703270 (already checked in post-2.5.1) works
around this by hard coding the completion_matches prototype in
Modules/readline.c, but the autoconf fix seems better long term.

__
Tracker <[EMAIL PROTECTED]>
<http://bugs.python.org/issue1204>
__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1156430] doctest should support -m

2008-02-23 Thread Mike Beachy

Mike Beachy added the comment:

This request was implemented in 1663234, so this case can be closed.

--
nosy: +mbeachy

_
Tracker <[EMAIL PROTECTED]>
<http://bugs.python.org/issue1156430>
_
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1729305] test_doctest fails when run in verbose mode

2008-02-24 Thread Mike Beachy

Mike Beachy added the comment:

The basic issue here is that running in verbose mode echoes back the
expected values from the file, so the results from non-ascii doctest
files must be encoded before printing.

It looks to me like the DocTestRunner class must grow an '_encoding'
attribute to keep track of how to encode any verbose output. I've
attached a patch that does this.

Happy post bug day!
Mike

--
keywords: +patch
nosy: +mbeachy
Added file: http://bugs.python.org/file9533/doctest.patch

_
Tracker <[EMAIL PROTECTED]>
<http://bugs.python.org/issue1729305>
_
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue1729305] test_doctest fails when run in verbose mode

2008-02-24 Thread Mike Beachy

Mike Beachy added the comment:

Here's a patch for test_doctest.py that checks the problem has been fixed.

Added file: http://bugs.python.org/file9534/test_doctest.patch

_
Tracker <[EMAIL PROTECTED]>
<http://bugs.python.org/issue1729305>
_
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com