[Twisted-Python] Re: Twisted 1.0.4 - Heavy search for `plugins.tml'
pinard at iro.umontreal.ca
Sun Apr 27 18:46:34 EDT 2003
> The default sys.path isn't there, but your `mktap' is located in
> /usr/bin, isn't it? :-)
It is. Twisted was installed using `root', and with --prefix=/usr.
> > > And inventing a new environment variable is contrary to the stated goal,
> > > which is the lack of a registration process [...]
> > Stated where? The book does not clearly indicate (or I did not read that
> > part yet) where `.tml' files are exactly looked for.
> The "Writing Twisted Plugins" section, IIRC.
I have "3.3 - Writing a New Plug-In for Twisted", and I presume this is what
you are referring to. I read that section many times, and once more before
sending the above question, and once more now.
The documentation says that:
Twisted finds its plug-ins by using pre-existing Python concepts;
the load path, and packages. Every top-level Python package
[...] can potentailly contain some number of plug-ins. [...] The only
difference between a package and a drop-in is the existence of a file
named `plugins.tml' [...] that contains some special Python expression
to identify the location of sub-packages or modules which can be loaded.
This is the most precise description I could find. Maybe there is a
linguistic barrier (I'm not an English speaker), but to me, this is a
bit generic. It is not said that plug-ins _are_ `plugins.tml' files, nor
that those TML files are necessarily at the same place the plug-ins are,
(like next to `__init__.py', say), only their existence is asserted.
It is not so clearly stated either that this is a goal that TML files shall
never be themselves registered. Maybe you could use my naive reading
as a hint that the documentation could be more precise on these points,
as other readers might have the same interpretation difficulties than me.
> > [...] Being receptive to feedback is a good way to keep it coming,
> > you know.
> Trolls like this aren't necessary.
Hopefully, you'll come to know be better, and discover that I never troll.
I am a peaceful and joyful man, and try to speak in all honesty, always.
Oh, I may tease in a friendly way, but then, there are smileys not far.
> If you have a suggestion for improvement [...] then I'll gladly hear
> it out.
For now, being a Twisted newcomer that knows very little about it, my
contributions may be timid for a good while. I'm just sharing the mere
existence of problems I see with my naive eyes, despite I know that in
the area of free software, patches and precise suggestions are usually
quite welcome. I hope acquiring a bit of competence, and become a better
contributor with the time passing. Let me apologise for all the false
notes I may sing in the meantime.
> If you don't believe me, modify your local Twisted installation to add a
> `print sys.path' to twisted.scripts.mktap.
I'm quite willing to believe you, you know! :-)
> [...] /usr/bin is in your sys.path because that's probably where your
> `mktap' is located.
Is Twisted modifying `sys.path' to include the first part of argv?
Or is it standard Python behaviour? I never noticed this yet in my own
scripts, but it might just have escaped my attention, and I might not know.
François Pinard http://www.iro.umontreal.ca/~pinard
More information about the Twisted-Python