On 2011.09.22 03:12 AM, Chris Angelico wrote:
> In theory, this should mean that you load it fresh every time - I
> think. If not, manually deleting entries from sys.modules might help,
> either with or without the list of modules.
I've played around with sys.modules, and it seems there are issues
On 2011.09.22 03:25 AM, Steven D'Aprano wrote:
> Objects left lying around from before the reload will keep references
> open to the way things were before the reload. This often leads to
> confusion when modules are edited, then reloaded. (Been there, done that.)
I'll keep that in mind. My modul
On Wed, 21 Sep 2011 23:47:55 -0500, Andrew Berg wrote:
> On 2011.09.21 11:22 PM, Steven D'Aprano wrote:
>> You could
>> try something like this (untested):
> That works. Thanks!
> This makes me wonder what else stays around after a reload
Practically everything. A reload doesn't delete anything,
On Thu, Sep 22, 2011 at 5:59 PM, Andrew Berg wrote:
> That's quite unappealing for a few reasons. First, that would likely
> require writing an entirely new bot (I'm not even that familiar with the
> current one; I've only been writing a module for it).
Ah, then yeah, it's probably not a good ide
On 2011.09.22 01:46 AM, Chris Angelico wrote:
> I think Pike may be a good choice for you.
That's quite unappealing for a few reasons. First, that would likely
require writing an entirely new bot (I'm not even that familiar with the
current one; I've only been writing a module for it). Also, I don'
On Thu, Sep 22, 2011 at 3:54 PM, Andrew Berg wrote:
> The main program is an IRC bot, which could potentially be in use by
> many people in several channels on a network. As it is, the bot can only
> connect to one server, but it could probably be set up to connect to any
> number of networks. Mak
On 2011.09.22 12:09 AM, Chris Angelico wrote:
> On-the-fly reloading of modules isn't really one of Python's
> strengths. Everyone who asks about it seems to be doing rapid
> development/debugging and wanting to save on startup time (as opposed
> to, say, running a server and updating code in it wh
On Thu, Sep 22, 2011 at 2:47 PM, Andrew Berg wrote:
> This makes me wonder what else stays around after a reload and what side
> effects there are, though. I would really like to purge everything from
> the previous import. The main program has no dependence on the module
> whatsoever.
>
On-the-f
On 2011.09.21 11:22 PM, Steven D'Aprano wrote:
> You could
> try something like this (untested):
That works. Thanks!
This makes me wonder what else stays around after a reload and what side
effects there are, though. I would really like to purge everything from
the previous import. The main progra
On Wed, 21 Sep 2011 20:53:04 -0500, Andrew Berg wrote:
> When using a logger in a module and then using imp.reload to reload the
> module, logger messages are repeated in direct proportion to the number
> of times the modules was loaded. That is, on the first import, the
> message is written once,
On Thu, Sep 22, 2011 at 12:44 PM, Andrew Berg wrote:
> The reload isn't controlled by the module, but I have no problem
> clearing out any loggers at the beginning.
I'm thinking more along the lines of closing them in the old module
before firing imp.reload() - maybe have a function in the module
On 2011.09.21 08:57 PM, Chris Angelico wrote:
> Unfortunately, Python doesn't really like modules to be reloaded. Are
> you able to explicitly close the logger before reloading?
The reload isn't controlled by the module, but I have no problem
clearing out any loggers at the beginning. I'm looking t
On Thu, Sep 22, 2011 at 11:53 AM, Andrew Berg wrote:
> What causes this, and how can I fix it (or at least work around it)? Due
> to the nature of the program, it's much more convenient to reload a
> module than to restart the entire program (especially when testing).
>
Unfortunately, Python does
When using a logger in a module and then using imp.reload to reload the
module, logger messages are repeated in direct proportion to the number
of times the modules was loaded. That is, on the first import, the
message is written once, but on the second run, each message is written
twice, three tim
14 matches
Mail list logo