0

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 <[email protected]> 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)
             ^

1 Answer 1

0

Did this to resolve it.

  1. yast --remove mercurial
  2. yast --remove python
  3. yast -i python-nautilus python-gtk python-gtk-devel python-pysvn dbus-1-python dbus-1-python-devel subversion meld
  4. 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

  1. Even after I ran yast --remove <...> (mercurial/python).... i was still able to BROWSE http :// test99 : 443 / hg

    link and it was showing all my repositories and still showing it.. the one I created before I performed yast --remove.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .