I wanted to upgrade mercurial version on OpenSUSE box.
This is what I had
test99:~/TEST_AREA/hgplayarea # hg –version
Mercurial Distributed SCM (version 1.5) Copyright (C) 2005-2010 Matt Mackall <mpm@selenic.com> and others This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
test99:~/TEST_AREA/hgplayarea #
–
test99:~ # cat /etc/SuSE-release
openSUSE 11.3 (i586) VERSION = 11.3
test99:~ #
–
I tried to upgrade mercurial on this machine using “easy_install”
test99:~/TEST_AREA/hgplayarea # easy_install -U mercurial
Got the following output for the above command:
Searching for mercurial Reading http://pypi.python.org/simple/mercurial/ Reading http://mercurial.selenic.com/ Reading http://www.selenic.com/mercurial Reading http://mercurial.selenic.com/release/ Best match: mercurial 2.3.1 Downloading http://mercurial.selenic.com/release/mercurial-2.3.1.tar.gz Processing mercurial-2.3.1.tar.gz Running mercurial-2.3.1/setup.py -q bdist_egg --dist-dir /tmp/easy_install-jNQkmu/mercurial-2.3.1/egg-dist-tmp-riveHL zip_safe flag not set; analyzing archive contents... mercurial.lsprof: module references __file__ mercurial.commands: module references __file__ mercurial.extensions: module references __file__ mercurial.help: module references __file__ mercurial.util: module references __file__ mercurial.templater: module references __file__ mercurial.i18n: module references __file__ hgext.mq: module references __file__ Adding mercurial 2.3.1 to easy-install.pth file Installing hg script to /usr/local/bin Installed /usr/local/lib/python2.6/site-packages/mercurial-2.3.1-py2.6-linux-i686.egg Processing dependencies for mercurial Finished processing dependencies for mercurial
Now after this upgrade, I’m running:
hg –version –or any other hg command. I’m getting an error:hg –version
Traceback (most recent call last): File "/usr/bin/hg", line 25, in <module> mercurial.util.set_binary(fp) File "/usr/local/lib/python2.6/site-packages/mercurial-2.3.1-py2.6-linux-i686.egg/mercurial/demandimport.py", line 87, in __getattribute__ return getattr(self._module, attr) AttributeError: 'module' object has no attribute 'set_binary'
hg clone http://test99.tsh.company.com/hg/TestHgRepo1/ StarRepo
Traceback (most recent call last): File "/usr/bin/hg", line 25, in <module> mercurial.util.set_binary(fp) File "/usr/local/lib/python2.6/site-packages/mercurial-2.3.1-py2.6-linux-i686.egg/mercurial/demandimport.py", line 87, in __getattribute__ return getattr(self._module, attr) AttributeError: 'module' object has no attribute 'set_binary' (reverse-i-search)`su': hg ^Cmmary
Any help on what can I do to uninstall it — OR install the correct version.
I did this to see if I can get Mercurial_Keyring and acl extensions to work…
I used “easy_install” as i wanted to install the latest version of mercurial. On OpenSUSE when, I’m using “yast -i mercurial”, it’s trying to down Mercurial 1.2.x.x version and not the latest one like what easy_install did. I initially installed mercurial using “yast” way.
Tried the following, change – it didn’t work:
https://developers.kilnhg.com/Code/Kiln/TortoiseHg/TortoiseHg/History/9add2d4511ce
hg –version
File "/usr/bin/hg", line 25 _setbinary(fp) ^
Answer
Did this to resolve it.
- yast –remove mercurial
- yast –remove python
- yast -i python-nautilus python-gtk python-gtk-devel python-pysvn dbus-1-python
dbus-1-python-devel subversion meld - yast -i mercurial
Now, I’m doing :
hg –version
Mercurial Distributed SCM (version 2.3.1)
(see http://mercurial.selenic.com for more information)
Copyright (C) 2005-2012 Matt Mackall and others
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
python –version
Python 2.6.5
Strange ??:
1. yast -i mercurial (during the installation said it’s doing mercurial 1.2.xx or 1.3.xx)
but hg –version shows a diff version. “easy_install mercurial” did install 2.3.x but
then I removed it using yast. Yast installed 1.x.x and finally the working version
showing above using “hg –version” is 2.3.1
-
Even after I ran yast –remove <…> (mercurial/python)…. i was still able to BROWSE
http :// test99 : 443 / hglink and it was showing all my repositories and still showing it.. the one I created before I performed yast –remove.
Attribution
Source : Link , Question Author : AKS , Answer Author : AKS