snoplus / snoing

New snocave installation method for SNO+. Sno packages fall from the web (sky), i.e. snoing.
Other
5 stars 27 forks source link

RAT 6.5.0 #146

Closed estherturner closed 6 years ago

estherturner commented 6 years ago

When running snoing to download water RAT, it fails doing ./snoing.py -q with the following error:

Traceback (most recent call last): File "./snoing.py", line 128, in package_manager.register_packages(os.path.join(os.path.dirname(file), "versions")) File "/data/snoplus/software/snoing/core/packagemanager.py", line 46, in register_packages self.register_package(obj) File "/data/snoplus/software/snoing/core/packagemanager.py", line 30, in register_package instance = package(self._system) File "/data/snoplus/software/snoing/versions/ratversions.py", line 43, in init super(RAT643, self).init("rat-6.5.0", system, "root-5.34.36", "6.5.0") TypeError: super(type, obj): obj must be an instance or subtype of type

The problem is here, I believe, where RAT643 is called instead:

class RAT650OSX(ratreleases.RatRelease6): """ Rat release-6.5.0-OSX, install package.""" def init(self, system): """ Initiliase the rat 6.5.0-OSX package.""" super(RAT643, self).init("rat-6.5.0-OSX", system, "root-5.34.36", "6.5.0-OSX")

class RAT650(ratreleases.RatRelease6): """ Rat release-6.5.0, install package.""" def init(self, system): """ Initiliase the rat 6.5.0 package.""" super(RAT643, self).init("rat-6.5.0", system, "root-5.34.36", "6.5.0")

parnmatt commented 6 years ago

Ah! My bad; thanks for pointing it out. That's exactly the issue you're seeing. I hate the old Python 2 syntax for super, it's very much prone to mistakes like those. Fixed in d507ec35e11822e37cd3ce8704480a501dc73a15, just resource env.sh and you should be fine to go.