From mboxrd@z Thu Jan 1 00:00:00 1970 MIME-Version: 1.0 In-Reply-To: References: <7d3530220908110937u5531ebb2x694612602c8d4a3b@mail.gmail.com> Date: Fri, 21 May 2010 08:33:08 -0400 Message-ID: From: John Floren To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [9fans] Plan 9 hg with private repositories Topicbox-Message-UUID: 28e86a82-ead6-11e9-9d60-3106f5b1d025 On Fri, May 21, 2010 at 1:08 AM, ron minnich wrote: > On Tue, Aug 11, 2009 at 4:37 PM, John Floren wrote= : >> Hi >> >> So I'm trying to clone a private repository I just created on >> bitbucket. This is what I see: >> >> jerq% hg clone https://@bitbucket.org/// >> destination directory: >> http authorization required >> realm: Bitbucket.org HTTP >> user: >> abort: could not import module msvcrt! > > I just hit this problem again with a clean install of the mercurial > and python from sources (and my package tool .. but I don't think it's > the problem). > > ratrace helped. > > 115 hg Open 0x228045 0fffc1d7/"/sys/lib/python/getpass.py" 00000000 =3D > 7 "" 0x11afa42962dc41a0 0x11afa42962dfdf68 > 115 hg Fstat 0x229874 00000007 00742ed4 00000071 =3D 66 "" > 0x11afa429635fb9e0 0x11afa429636b75c8 > 115 hg Open 0x228045 0fffbd73/"/sys/lib/python/getpass.pyc" 00000000 =3D > 8 "" 0x11afa42963e38040 0x11afa42963f16ea8 > 115 hg Pread 0x22b14c 8 > 00fcbb48/".......Kc............@...s....d..Z..d..d..k..Z..d..d..g..Z..d..= d" > 4096 -0x1 =3D 3320 "" 0x11afa429648f9ad8 0x11afa429649bf6e8 > 115 hg Fstat 0x229874 00000008 00742ed4 00000071 =3D 67 "" > 0x11afa429651731c8 0x11afa429651977d0 > 115 hg Pread 0x22b14c 8 00fcbb48/"" 4096 -0x1 =3D 0 "" > 0x11afa429659a2538 0x11afa429659c6370 > 115 hg Close 0x22aa13 8 =3D 0 "" 0x11afa429666099e8 0x11afa42966623be0 > 115 hg Brk 0x22acd6 011e7600 00394918 0022826c =3D 0 "" > 0x11afa42967031790 0x11afa42967037550 > 115 hg Open 0x2288bc 00262904/"#c/pid" 00000000 =3D 8 "" > 0x11afa42967899928 0x11afa429678a8770 > 115 hg Pread 0x22b14c 8 0fffb4b9/"........115." 15 -0x1 =3D 12 "" > 0x11afa42968056c60 0x11afa4296805e960 > 115 hg Close 0x2288f3 8 =3D 0 "" 0x11afa42968827818 0x11afa4296882be68 > 115 hg Stat 0x229730 0fffac7b 00742ed4/"=EF=BF=BD=EF=BF=BD;" 00000073 =3D= -1 > "'/bin/termios' file does not exist" 0x11afa42968dfe610 > 0x11afa42968ef6ab8 > 115 hg Errstr 0x22bd6f 0x36b19c/"" 128 =3D 0 "" 0x11afa42969625c80 > 0x11afa4296962d980 > 115 hg Errstr 0x22bdc4 0x36b19c/"" 128 =3D 0 "" 0x11afa42969debc58 > 0x11afa42969df3d40 > 115 hg Open 0x228045 0fffac7b/"/bin/termios.py" 00000000 =3D -1 > "'/bin/termios.py' file does not exist" 0x11afa4296a5ba100 > 0x11afa4296a6c2390 > 115 hg Errstr 0x22bd6f 0x36b19c/"" 128 =3D 0 "" 0x11afa4296ae0d2a8 > 0x11afa4296ae15390 > 115 hg Errstr 0x22bdc4 0x36b19c/"" 128 =3D 0 "" 0x11afa4296b5d3a50 > 0x11afa4296b5dbb38 > 115 hg Open 0x228045 0fffac7b/"/bin/termios.pyc" 00000000 =3D -1 > "'/bin/termios.pyc' file does not exist" 0x11afa4296bda55a8 > 0x11afa4296bea0160 > 115 hg Errstr 0x22bd6f 0x36b19c/"" 128 =3D 0 "" 0x11afa4296c3352e8 > 0x11afa4296c340a80 > 115 hg Errstr 0x22bdc4 0x36b19c/"" 128 =3D 0 "" 0x11afa4296cb1a6c0 > 0x11afa4296cb25688 > 115 hg Stat 0x229730 0fffac7b 00742ed4/"=EF=BF=BD=EF=BF=BD;" 00000073 =3D= -1 > "'/sys/lib/python/termios' does not exist" 0x11afa4296d3a4368 > 0x11afa4296d3d5490 > 115 hg Errstr 0x22bd6f 0x36b19c/"" 128 =3D 0 "" 0x11afa4296de091a0 > 0x11afa4296de11288 > 115 hg Errstr 0x22bdc4 0x36b19c/"" 128 =3D 0 "" 0x11afa4296e5c2e28 > 0x11afa4296e5caf10 > 115 hg Open 0x228045 0fffac7b/"/sys/lib/python/termios.py" 00000000 =3D > -1 "'/sys/lib/python/termios.py' does not exist" 0x11afa4296ed872a8 > 0x11afa4296ee4f9b0 > 115 hg Errstr 0x22bd6f 0x36b19c/"" 128 =3D 0 "" 0x11afa4296f708458 > 0x11afa4296f710928 > 115 hg Errstr 0x22bdc4 0x36b19c/"" 128 =3D 0 "" 0x11afa4296ff17428 > 0x11afa4296ff1f510 > 115 hg Open 0x228045 0fffac7b/"/sys/lib/python/termios.pyc" 00000000 =3D > -1 "'/sys/lib/python/termios.pyc' does not exist" 0x11afa429706e1e38 > 0x11afa4297070a2c0 > 115 hg Errstr 0x22bd6f 0x36b19c/"" 128 =3D 0 "" 0x11afa42970f163b0 > 0x11afa42970f22ed0 > 115 hg Errstr 0x22bdc4 0x36b19c/"" 128 =3D 0 "" 0x11afa429716e57f8 > 0x11afa429716f07c0 > 115 hg Stat 0x229730 0fffac7b 00742ed4/"=EF=BF=BD=EF=BF=BD;" 00000073 =3D= -1 > "'/sys/lib/python/lib/python2.5/site-packages/termios' does not exist" > 0x11afa42971ed6750 0x11afa429721c04e8 > 115 hg Errstr 0x22bd6f 0x36b19c/"" 128 =3D 0 "" 0x11afa429729d4aa8 > 0x11afa429729dcb90 > 115 hg Errstr 0x22bdc4 0x36b19c/"" 128 =3D 0 "" 0x11afa429732579f0 > 0x11afa4297325f6f0 > 115 hg Open 0x228045 > 0fffac7b/"/sys/lib/python/lib/python2.5/site-packages/termios.py" > 00000000 =3D -1 "'/sys/lib/python/lib/python2.5/site-packages/termios.py' > does not exist" 0x11afa42973a3a2d0 0x11afa42973d53638 > 115 hg Errstr 0x22bd6f 0x36b19c/"" 128 =3D 0 "" 0x11afa429742a3fc0 > 0x11afa429742afb40 > 115 hg Errstr 0x22bdc4 0x36b19c/"" 128 =3D 0 "" 0x11afa42974a75b18 > 0x11afa42974a80ec8 > 115 hg Open 0x228045 > 0fffac7b/"/sys/lib/python/lib/python2.5/site-packages/termios.pyc" > 00000000 =3D -1 "'/sys/lib/python/lib/python2.5/site-packages/termios.pyc= ' > does not exist" 0x11afa4297523f588 0x11afa42975328800 > 115 hg Errstr 0x22bd6f 0x36b19c/"" 128 =3D 0 "" 0x11afa42975cd2608 > 0x11afa42975cda6f0 > 115 hg Errstr 0x22bdc4 0x36b19c/"" 128 =3D 0 "" 0x11afa4297648b6d8 > 0x11afa429764933d8 > 115 hg Open 0x2288bc 00262904/"#c/pid" 00000000 =3D 8 "" > 0x11afa42976a50b90 0x11afa42976a63858 > 115 hg Pread 0x22b14c 8 0fffb4c1/"........115." 15 -0x1 =3D 12 "" > 0x11afa42977216780 0x11afa429772207a8 > 115 hg Close 0x2288f3 8 =3D 0 "" 0x11afa429779d4670 0x11afa429779dafe8 > 115 hg Close 0x22aa13 7 =3D 0 "" 0x11afa42978cdcf60 0x11afa42978d8fac0 > 115 hg Open 0x2288bc 00262904/"#c/pid" 00000000 =3D 7 "" > 0x11afa4297929f920 0x11afa429792abc70 > 115 hg Pread 0x22b14c 7 0fffca1d/"........115." 15 -0x1 =3D 12 "" > 0x11afa42979a1dc88 0x11afa42979a25988 > 115 hg Close 0x2288f3 7 =3D 0 "" 0x11afa4297a1e9638 0x11afa4297a1ee840 > 115 hg Open 0x2288bc 00262904/"#c/pid" 00000000 =3D 7 "" > 0x11afa4297aa01690 0x11afa4297aa12be8 > 115 hg Pread 0x22b14c 7 0fffc855/"........115." 15 -0x1 =3D 12 "" > 0x11afa4297b823160 0x11afa4297b82aa78 > 115 hg Close 0x2288f3 7 =3D 0 "" 0x11afa4297bfb64b8 0x11afa4297bfbab08 > 115 hg Open 0x2288bc 00262904/"#c/pid" 00000000 =3D 7 "" > 0x11afa4297c55c188 0x11afa4297c56ea68 > 115 hg Pread 0x22b14c 7 0fffc85d/"........115." 15 -0x1 =3D 12 "" > 0x11afa4297cd292a8 0x11afa4297cd33e88 > 115 hg Close 0x2288f3 7 =3D 0 "" 0x11afa4297d4c3b30 0x11afa4297d4c75c8 > 115 hg Open 0x2288bc 00262904/"#c/pid" 00000000 =3D 7 "" > 0x11afa4297dbbecf0 0x11afa4297dbcb040 > 115 hg Pread 0x22b14c 7 0fffccbd/"........115." 15 -0x1 =3D 12 "" > 0x11afa4297e3700c0 0x11afa4297e377dc0 > 115 hg Close 0x2288f3 7 =3D 0 "" 0x11afa4297eb698d0 0x11afa4297eb6d750 > 115 hg Stat 0x229730 0fffc47f 00742ed4/"=EF=BF=BD=EF=BF=BD;" 00000073 =3D= -1 > "'/bin/msvcrt' file does not exist" 0x11afa4297f181da8 > 0x11afa4297f4f1010 > > > Ow, that hurt, did it not? > > Basically, it found getpass, did not find termios, then went looking > for some MS VC runtime. Yuck. > > The code (getpass.py): > # Bind the name getpass to the appropriate function > try: > =C2=A0 =C2=A0import termios > =C2=A0 =C2=A0# it's possible there is an incompatible termios from the > =C2=A0 =C2=A0# McMillan Installer, make sure we have a UNIX-compatible te= rmios > =C2=A0 =C2=A0termios.tcgetattr, termios.tcsetattr > except (ImportError, AttributeError): > =C2=A0 =C2=A0try: > =C2=A0 =C2=A0 =C2=A0 =C2=A0import msvcrt > =C2=A0 =C2=A0except ImportError: > =C2=A0 =C2=A0 =C2=A0 =C2=A0try: > =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0from EasyDialogs import AskPassw= ord > =C2=A0 =C2=A0 =C2=A0 =C2=A0except ImportError: > =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0getpass =3D default_getpass > =C2=A0 =C2=A0 =C2=A0 =C2=A0else: > =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0getpass =3D AskPassword > =C2=A0 =C2=A0else: > =C2=A0 =C2=A0 =C2=A0 =C2=A0getpass =3D win_getpass > else: > =C2=A0 =C2=A0getpass =3D unix_getpass > > Wow, that hurt too. > > So, it's trying to get a password, as it is an https import, so it > pulls in getpass, which pulls in termios, and it's failing, and the > only reasonable thing to do when you can't find a unix package is to > try to use an MS VC runtime package and, when that fails, bail out > with one of the worst error messages one can imagine. > > Wow, GRRoss. > > Anyway, that is why you get that utterly useless error message: > because you're not unix. It just tells you that the error is that you > are not windows. Clear? > > ron > > I think you should be able to replace getpass.py with http://plan9.bell-labs.com/sources/contrib/john/getpass.py; I added plan9_getpass last summer and it seemed to work. John --=20 "With MPI, familiarity breeds contempt. Contempt and nausea. Contempt, nausea, and fear. Contempt, nausea, fear, and .." -- Ron Minnich