Re: yum: rpmUtils module does not contain transaction?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Felix Schwarz <felix.schwarz@xxxxxx> writes:

> Hi,
>
> I wanted to debug some other program which uses the rpmUtils
> package. The problem is that they do:
>> import rpmUtils
>> ts = rpmUtils.transaction.initReadOnlyTransaction()
>
> With Python 2.5.1 (Fedora 8) this fails:
>> AttributeError: 'module' object has no attribute 'transaction'
>
> And indeed, in rpmUtils/__init__.py there is no symbol named
> transaction. But there is a module called rpmUtils/transaction.py so
> this works for me:
>> from rpmUtils import transaction
>> ts = transaction.initReadOnlyTransaction()
>
> However, the first pattern is used even in yum 3.2.20 so probably some
> Python wizard can explain this to me?

 It's kind of a magic python thing, if python sees:

import rpmUtils.transaction

...in _any_ module, then it "knows" in all other modules that it
exists. So you if you "import yum", before you import rpmUtils then
you don't need to do the above.

 We should probably just fix the rpmUtils/__init__.py to import
everything, but noone has bothered.

-- 
James Antill -- james@xxxxxxx
C String APIs use too much memory? ustr: length, ref count, size and
read-only/fixed. Ave. 44% overhead over strdup(), for 0-20B strings
http://www.and.org/ustr/
_______________________________________________
Yum mailing list
Yum@xxxxxxxxxxxxxxxxx
http://lists.baseurl.org/mailman/listinfo/yum

[Index of Archives]     [Fedora Users]     [Fedora Legacy List]     [Fedora Maintainers]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]

  Powered by Linux