Re: [Twisted-Python] [MIGRATION COMPLETE] Changes to Twisted's Trac (GitHub Authentication)

2016-05-02 Thread anatoly techtonik
On Wed, Apr 27, 2016 at 8:54 PM, Glyph  wrote:
>
> On Apr 27, 2016, at 4:45 AM, Amber Hawkie Brown 
> wrote:
>
> I would like to note that this migration has now finished, and you can now
> log in via GitHub. Legacy logins have been disabled, and previous admin
> accounts (except for a current handful) have been revoked in the name of
> minimising our security surface; if you once had access to our Trac and
> would like to still use it, please let me know what your GitHub user account
> is, and I can set those permissions back up.
>
>
> Amazing! :-D.

+1

> I feel a disturbance in the force, as if a million spammers cried out, and
> were suddenly silenced :-).

More interesting is a disturbance caused by login fatigue relief for millions
of twisted users. =)

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Twisted 16.1 Release Announcement

2016-04-12 Thread anatoly techtonik
Awesome. Thanks.

On Tue, Apr 12, 2016 at 4:21 PM, Amber "Hawkie" Brown
 wrote:
>
>> On 12 Apr 2016, at 21:17, anatoly techtonik  wrote:
>>
>> Hi,
>>
>> Are there any plans to get back 32-bit wheels for Twisted?
>>
>> ___
>> Twisted-Python mailing list
>> Twisted-Python@twistedmatrix.com
>> http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
>
> Hi,
>
> Yes, sometime, when either Glyph or I have the moment to do builder work and 
> get the needed stuff installed on the builder. They will be Windows 
> 7-compiled 32bit wheels.
>
> - Amber
>
> ___
> Twisted-Python mailing list
> Twisted-Python@twistedmatrix.com
> http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
>



-- 
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Twisted 16.1 Release Announcement

2016-04-12 Thread anatoly techtonik
Hi,

Are there any plans to get back 32-bit wheels for Twisted?

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] upcoming changes to twistedmatrix.com mail infrastructure

2016-04-01 Thread anatoly techtonik
I prefer web-based access more than a list, so a thing like
http://try.discourse.org/ is more appropriate for me in terms
of usability.  Especially those shiny "with" login buttons.

On Fri, Apr 1, 2016 at 5:04 AM, Glyph  wrote:
>
> On Mar 16, 2016, at 11:52 AM, Glyph  wrote:
>
> Over the last few months, twistedmatrix.com's mailman installation has been
> used increasingly frequently to execute denial-of-service attacks against
> people's mailboxes.  This is accomplished by sending huge numbers of
> subscription requests to our website, which in turn sends huge numbers of
> confirmation emails to their inbox.  Based on some information that some
> targeted users have sent me, I now believe that this is to cause those
> users' mail quotas to be exceeded so that password reset or login
> notification emails won't reach them.
>
>
> I've taken the first few steps to migrating us over to Mailgun, but just as
> a minor status update: web-based subscription is now disabled.  If any
> generous souls would like to help out and update whatever wiki pages link to
> the mailman listinfo pages to say 'please send subscription requests to
> twisted-python-owner@ or twisted-web-owner@ instead' that would be great
> :-).  Those email addresses (and hopefully all the others, too) will keep
> working post-migration.
>
> -glyph
>
> ___
> Twisted-Python mailing list
> Twisted-Python@twistedmatrix.com
> http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
>



-- 
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] 16.0.0 32-bit wheels for Windows

2016-03-31 Thread anatoly techtonik
On Wed, Mar 30, 2016 at 9:27 PM, Chris Norman
 wrote:
> Hi,
>
> On 30/03/2016 19:20, anatoly techtonik wrote:
>>
>> Hi,
>>
>> I am having the same problem as this guy:
>>
>> https://stackoverflow.com/questions/36279141/pip-doesnt-install-twisted-on-windows
>> Absence of 32-bit wheels breaks Python
>> projects that added Twisted>10 as a
>> dependency, for example.
>>
>> Is that intentional change?
>> https://pypi.python.org/pypi/Twisted/16.0.0
>
> No clue about any change, but which Python version are you using?
>
> I have happily `pip install`ed twisted on Windows 10 (64 bit) with 32 bit
> Python 3.5.1, and 2.7.11.

32-bit Python 2.7.11, but the problem is that I don't have MSVS installed.

> Only place where I had trouble was Debian 64 bit where a simple python
> setup.py installed did the trick.
>
> Sorry you're having trouble.

I installed the stuff manually. Just wanted to warn that there might be a
bigger problem with that. Glad that it could be fixed.

-- 
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


[Twisted-Python] 16.0.0 32-bit wheels for Windows

2016-03-30 Thread anatoly techtonik
Hi,

I am having the same problem as this guy:
https://stackoverflow.com/questions/36279141/pip-doesnt-install-twisted-on-windows
Absence of 32-bit wheels breaks Python
projects that added Twisted>10 as a
dependency, for example.

Is that intentional change?
https://pypi.python.org/pypi/Twisted/16.0.0

-- 
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Twisted 15.4 was the last release to support Python 2.6; or: a HawkOwl Can't Words Situation

2015-12-29 Thread anatoly techtonik
Is it possible to fix the documentation?
https://twistedmatrix.com/trac/browser/tags/releases/twisted-15.5.0/NEWS?format=raw

On Mon, Dec 7, 2015 at 4:06 PM, Amber "Hawkie" Brown
 wrote:
> Hi everyone!
>
> It's been brought to my attention that I misworded something in the release 
> notes and it slipped through the cracks. In the NEWS I said:
>
>> This is the last Twisted release where Python 2.6 is supported, on any 
>> platform.
>
> However, I meant that this is the first Twisted release to drop 2.6 support 
> wholesale, preventing import on this platform. Twisted 15.4 will still 
> operate, so if you have Python 2.6 deployment requirements, bracket the 
> maximum to 15.4 on that platform by using an if statement in your setup.py, 
> and `Twisted >=*minreq*,<=15.4; python_version < '2.7'` under requires_dist 
> in your setup.cfg, where minreq is the minimum required Twisted.
>
> Sorry for the inconvenience!
>
> - Amber "HawkOwl" Brown
> Twisted Release Manager
>
> ___
> Twisted-Python mailing list
> Twisted-Python@twistedmatrix.com
> http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
>



-- 
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Proposal -- Code of Conduct

2015-06-21 Thread anatoly techtonik
On Sun, Jun 21, 2015 at 2:30 PM, Amber "Hawkie" Brown
 wrote:
>
>> On 21 Jun 2015, at 19:00, Hynek Schlawack  wrote:
>>
 I am sure everyone understands that the Twisted community would love more 
 diversity. While it is hard to achieve, it should be easy to remove one of 
 the obvious blockers -- making underrepresented groups feel more welcome.
>>> Thanks for taking this on, Moshe.
>>
>> +1
>>
 My current draft, including instructions on how to build it, is in 
 https://github.com/moshez/twisted-coc . I have intentionally not made the 
 built documents available, in an attempt to avoid someone picking them up 
 before they're approved by us.
>>>
>>> Why isn't this repository either (A) just a simple text file saying "we 
>>> have adopted the Django CoC" or (B) a very small fork of something else?  
>>> One of the concerns is licensing; if the text comes via Django, Django 
>>> credits the "Speak Up!" project, which is CC-BY, apparently from this 
>>> repository: .  Another is... is 
>>> Twisted really distinct enough to need its own CoC?  Just s/Django/Twisted 
>>> might be good enough?  (Since this is not a fork, figuring out if anything 
>>> else has changed is rather tedious, even after having read both ;)).
>>
>> I wonder whether it might make sense to just say we adopt 
>> https://www.python.org/psf/codeofconduct/ ?
>>
>> What I would really love is if we could have our own diversity statement 
>> like Django has: https://www.djangoproject.com/diversity/
>
> The Django one is more explicit -- it's rather sad that it needs to be, but 
> it does lay out more directly the unacceptable behaviours.
>
> That being said, it's not an unchangeable document -- if it doesn't suit the 
> community's needs, we can modify it to suit.

So that CoCs are just a set of rules to ban users expressed in a vague
legal form, so that people can not complain, because they don't
understand. Is that right? =)

-- 
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Twisted 15.2 Release Announcement

2015-05-20 Thread anatoly techtonik
On Tue, May 19, 2015 at 9:14 AM, HawkOwl  wrote:
> - twisted.logger has landed! This is a brand-new, feature-rich logging 
> framework.

https://twisted.readthedocs.org/en/latest/core/howto/logger.html?highlight=logger

Good stuff.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] a brief note about buildbots

2014-09-09 Thread anatoly techtonik
On Wed, Sep 10, 2014 at 12:27 AM, Glyph Lefkowitz
 wrote:
> Hi Twistosophists,
>
> Some of you doing reviews (you ARE all doing code reviews, right!?!?) might
> have noticed that some of the boxes on the left side of of the supported
> builds page were dark grey, meaning that they were offline.
>
> I spent some time over the last couple of days doing some administrative
> housekeeping and rebooting computers, and all of our supported builders are
> now back online!  This makes me feel much better about the possibility of
> doing a release again someday :-).
>
> Speaking of colors of boxes on that page, though, we should probably try to
> turn some of them from red to green...
>
> -glyph
>
> P.S.: Thanks to Rackspace for providing both (A) the cloud resources we're
> running many these tests on, and (B) my time to do this sort of maintenance.

Long Live Glyph!
(Rackspace probably receives their credits in the market share)

I presume you're using Firefox for all browsing needs. Am I right? =) In Chrome
I've noticed an empty box with missing image at the highscore page leading to
https://sm7.sitemeter.com/meter.asp?site=sm7twistedmatrix

And when I open linked buildbot page at:
https://buildbot.twistedmatrix.com/boxes-supported?branch=trunk&num_builds=4
Chrome says that "Attackers might be trying to steal your information from
buildbot.twistedmatrix.com (for example, passwords, messages, or credit cards)."
Not your, of course, but mine, so I am double worried about that
invalid security
certificate issued to www.twistedmatrix.com and deployed on buildbot.t.c

BTW, how do you count tests? Is this config available somewhere?

-- 
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Python3: should paths be bytes or str?

2014-09-08 Thread anatoly techtonik
On Mon, Sep 8, 2014 at 5:14 AM,   wrote:
> On 01:26 am, wolfgang@rohdewald.de wrote:
>>
>> The porting guide says
>>
>> No byte paths in sys.path.
>
>
> What porting guide is that?
>>
>>
>> doc for FilePath says
>>On both Python 2 and Python 3, paths can only be bytes.
>>
>>
>> I stumbled upon this while trying to find out how much work it might be
>> to make bin/trial run with python3
>>
>> admin/run-python3-tests already passes for all twisted.spread related
>> tests but I still need to clean up a lot.
>>
>> after adding an assert to FilePath.__init__, python3 bin/trial ... gives
>>
>>  File "/home/wr/ssdsrc/Twisted/twisted/scripts/trial.py", line 601, in run
>>config.parseOptions()
>>  File "/home/wr/ssdsrc/Twisted/twisted/python/usage.py", line 277, in
>> parseOptions
>>self.postOptions()
>>  File "/home/wr/ssdsrc/Twisted/twisted/scripts/trial.py", line 472, in
>> postOptions
>>_BasicOptions.postOptions(self)
>>  File "/home/wr/ssdsrc/Twisted/twisted/scripts/trial.py", line 382, in
>> postOptions
>>self['reporter'] = self._loadReporterByName(self['reporter'])
>>  File "/home/wr/ssdsrc/Twisted/twisted/scripts/trial.py", line 369, in
>> _loadReporterByName
>>for p in plugin.getPlugins(itrial.IReporter):
>>  File "/home/wr/ssdsrc/Twisted/twisted/plugin.py", line 209, in getPlugins
>>allDropins = getCache(package)
>>  File "/home/wr/ssdsrc/Twisted/twisted/plugin.py", line 134, in getCache
>>mod = getModule(module.__name__)
>>  File "/home/wr/ssdsrc/Twisted/twisted/python/modules.py", line 781, in
>> getModule
>>return theSystemPath[moduleName]
>>  File "/home/wr/ssdsrc/Twisted/twisted/python/modules.py", line 702, in
>> __getitem__
>>self._findEntryPathString(moduleObject)),
>>  File "/home/wr/ssdsrc/Twisted/twisted/python/modules.py", line 627, in
>> _findEntryPathString
>>if _isPackagePath(FilePath(topPackageObj.__file__)):
>>  File "/home/wr/ssdsrc/Twisted/twisted/python/filepath.py", line 664, in
>> __init__
>>assert isinstance(path, bytes), 'path must be bytes: %r' % (path,)
>> AssertionError: path must be bytes:
>> '/home/wr/ssdsrc/Twisted/twisted/__init__.py'
>
>
> If paths are being represented using unicode somewhere and you want to use
> them with FilePath then you have to encode them (or you have to add unicode
> path support to FilePath and let FilePath encode them).
>
> Unfortunately it's not entirely obvious how to make FilePath support unicode
> paths since not all platforms Twisted supports represent filesystem paths
> using unicode.

It really depends on filesystem, not on a platform. Platform just makes sure
that you won't shoot it in the foot. So to behave good you need to translate
you path knowledge to platform knowledge when you have to make change.

In data transformation theory that may mean:
[ ] get data about path in native format
  [ ] detect the source encoding of filesystem
[ ] figure out if you can work with native format
  [ ] python 2 way - just work with bytes
  [ ] python 3 way - look if native filesystem format is convertible to unicode
[ ] if conversion is symmetrical - operate in unicode
[ ] if not convertible, alternatives (options, switches)
  [ ] fail and explain why to user in user actionable manner (don't use ?)
  [ ] use some symmetrical mapping to unicode and mark path objects as
  `mapped` so that there is a trace of hacks on filepaths
  [ ] provide API on objects without ability to use names directly
  [ ] transform the name to a "safe" valid value loosing the original name
  and explain the user why and what happened to the old name

> The choice python-dev made to bridge this gap was the creation of the
> "surrogateescape" error handler for the UTC-8 codec.  This lets you pretend
> that any time you need to convert between bytes and unicode the correct
> codec is UTF-8 (with this special error handler).
>
> It's not clear this was a good choice (since the result is unicode strings
> that may contain garbage which will confuse other software) but it's also
> not clear it's possible for Twisted to try to make any other choice (at some
> point Twisted has to interoperate with the path-related APIs in Python
> itself - `sys.path`, for example).
>
> Not sure if that helps you at all.  Maybe it outlines the problem a little
> more clearly, at least.

I think that it should be a choice of application maintainers. If they want to
create files with dots at the end, Windows allows this, but doesn't support
it through standard WinAPI calls, because of FAT. But you can use special
path transformation prefix \\?\ to do this on NTFS or on a remote machine.
In networking OS plays less role, but the new choice for every platform
filesystem is not clear for users. They don't realize where the problem
comes from. In the end it all depends on FS first, then on
OS API (which can be skipped thanks to direct disk access), then on
FS library, then on application. Application should be able t

[Twisted-Python] qt4reactor on PySide (Was: Serial interface for software program)

2014-05-07 Thread anatoly techtonik
On Mon, May 5, 2014 at 10:06 PM,   wrote:
> On 06:49 pm, sank.dan...@gmail.com wrote:
>>>
>>> There's a 3rd party event loop for Twisted that runs on top of Qt
>>> (qt4reactor), which would
>>> allow Twisted and Qt code to run in the same thread.
>>
>> Speaking of which, why isn't that thing officially part of twisted? Super
>> useful.
>
> The PyQt team insists that the PyQt license is incompatible with Twisted's
> license (this is an intentional simplification, you can read more about the
> issue on PyQt's website if you really care).
>
> Since PySide now exists this is potentially no longer an issue. However, the
> last thing I heard about using PySide to run the Qt reactor is that it
> segfaulted sometimes.
>
> So perhaps the reason is that someone needs to do some work to determine if
> PySide is actually safe to use with the Qt reactor now and, if it is,
> shuffle some code around.

I think Twisted users just need to start using it, have this doc at hand -
https://code.google.com/p/spyderlib/wiki/HowToDebugQtCrash -
and register on https://bugreports.qt-project.org/ if there is a trouble
(or just mail PySide list).

> However, I'm not even sure if the GUI reactors *should* be distributed as
> part of the main Twisted package.  They are already first-class reactors via
> the plugin system.  Independent releases let them track changes in the GUI
> library they're each concerned with more quickly than they could if they
> were part of Twisted itself.
>
> Perhaps there are other reasons, like simplicity of packaging or quality of
> continuous integration testing, that would override those issues and make it
> worth bringing Qt reactor back into Twisted.  Sorting that out is also a
> task that requires someone interested to step up an do some work, though. :)

The question was - why super useful Qt reactor loop is not a part of Twisted.
I think that if it is really useful, it should,
-- 
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


[Twisted-Python] ReactorBuilder doesn't support external reactors ticket reminder (Was: Serial interface for software program)

2014-05-07 Thread anatoly techtonik
On Tue, May 6, 2014 at 4:02 AM, Itamar Turner-Trauring
 wrote:
> On 05/05/2014 03:06 PM, exar...@twistedmatrix.com wrote:
>>
>> However, I'm not even sure if the GUI reactors *should* be distributed as
>> part of the main Twisted package.  They are already first-class reactors via
>> the plugin system.  Independent releases let them track changes in the GUI
>> library they're each concerned with more quickly than they could if they
>> were part of Twisted itself.
>
>
> Someone remind me to file a "ReactorBuilder doesn't support external
> reactors" ticket tomorrow...

File a "ReactorBuilder doesn't support external reactors" today. )
-- 
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Serial interface for software program

2014-05-07 Thread anatoly techtonik
On Mon, May 5, 2014 at 8:24 PM, Itamar Turner-Trauring
 wrote:
> If Spyder *just* uses Qt, it's a single-threaded event loop. There's a 3rd
> party event loop for Twisted that runs on top of Qt (qt4reactor), which
> would allow Twisted and Qt code to run in the same thread.

Spyder executes interpreters (seen by users as consoles) in separate threads:
https://bitbucket.org/spyder-ide/spyderlib/src/5c0af92927a342bb0eb561c1729198d3d96ab74e/spyderlib/interpreter.py?at=default#cl-47
and also monitors them to provide code completion, calltips and other features:
https://bitbucket.org/spyder-ide/spyderlib/src/5c0af92927a342bb0eb561c1729198d3d96ab74e/spyderlib/widgets/externalshell/monitor.py?at=default#cl-116

What I need is a mechanism to discover Spyder instances, attach to them
and see what (possibly prepared events) are occurring. It is important that
events are multiplexed into single stream for detecting race conditions. I
need as simple interface as possible and not Python specific even, that's
why I asked it on the network protocol level (which classic serial interface
operates on).

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Serial interface for software program

2014-05-07 Thread anatoly techtonik
Hi Laurens,

Well, Manhole looks way more advanced than my idea. I just need to
be able to tap into one way application event stream - there is no input
from the other side, so application doesn't need to prepare for that.

So, serial != terminal. There might be in future, but now I am more
interested in accessibility of tap interface rather than its features.

On Mon, May 5, 2014 at 6:42 PM, Laurens Van Houtven <_...@lvh.io> wrote:
> Hi Anatoly,
>
>
> Do you know about manhole? I made a video that also demos axiom, but it
> should show you what manhole does :)
>
> https://www.youtube.com/watch?v=3-UZiO-AnLc
>
> Essentially it's "repl in a running process".
>
>
> hth
> lvh
>
>
> On Mon, May 5, 2014 at 4:43 AM, anatoly techtonik 
> wrote:
>>
>> Hello, network hackers,
>>
>> Recently I've got a Raspberry Pi and a friend showed me its serial
>> interface and helped to setup it. I was stunned. What I saw - you open
>> serial terminal, and you jump in into the middle of boot section. Just
>> open a terminal and you see what's going on inside of R.Pi. Any time.
>> That's was an intro. =)
>>
>> For a long time I wanted the same interface for debugging software
>> programs. When I was hacking on Spyder I found that my human brain is
>> too limited to squeeze details of dynamic of interaction of objects at
>> run-time. Spyder is written in Python with Qt, and it is a parallel
>> application much like any Twisted app is. But I wanted to push the
>> progress, I have to deal with complexity, so I badly needed to be able
>> to draw a video of interaction at run-time. That was the problem I
>> tried to solve.
>>
>> And for the first step I needed a way to connect to Spyder at run-time
>> and see what's going on. I didn't know how to call that way before,
>> but now I have a rather accurate wording - "a serial interface for an
>> application". That is the background for the question I am trying to
>> ask.
>>
>> What is the best way to implement such interface considering the
>> following properties:
>> 1. it needs to be simple (so that you can quickly create python script
>> that reads the info)
>> 2. it needs to be universal (so that script for one app worked for other)
>> 3. it should be asynchronous (connected terminal should not degrade
>> performance)
>> 4. it needs to be reliable (at least detecting missing packets)
>> 5. and cross-platform (and pure python)
>>
>> Why Twisted? For the first I think that this problem is actual for
>> people who are dealing with complexity of dynamic and interconnected
>> systems built with the help of Twisted. For the second I believe it
>> can only be solved or analyzed by people skilled in interprocess and
>> internetwork communications.
>>
>> One button test:
>> 1. program behaves weird
>> 2. user hits the button
>> 3. terminal pops up
>> 4. shows a lot of data for a running program
>>
>> I am interested to know.
>> 1. how the button should discover the program
>> network port seems cool, but what about two parallel programs? what
>> about different programs that provide this interface?
>>
>> 2. how terminal receives the data
>> i see it as line based - one line - one event, everything is text
>>
>> 3. how to make it fast
>> TCP clearly won't here
>>
>> 4. how to send the data
>> what if two threads (or parallel code) produce serial data? who should
>> run the server that serves connected terminals, and how other thread
>> will send message to this server? you can not run two TCP servers on
>> the same port on the app side, so is there an alternative? how to
>> detect missing data in a stream? how to avoid dealing with incomplete
>> packets and low level network details?
>>
>> Thanks. I'd like to get back to hacking on Spyder one day, but this is
>> a stumbling block for me every time I think about it or any program of
>> compared complexity.
>> --
>> anatoly t.
>>
>> ___
>> Twisted-Python mailing list
>> Twisted-Python@twistedmatrix.com
>> http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
>
>
>
> ___
> Twisted-Python mailing list
> Twisted-Python@twistedmatrix.com
> http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
>



-- 
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


[Twisted-Python] Serial interface for software program

2014-05-05 Thread anatoly techtonik
Hello, network hackers,

Recently I've got a Raspberry Pi and a friend showed me its serial
interface and helped to setup it. I was stunned. What I saw - you open
serial terminal, and you jump in into the middle of boot section. Just
open a terminal and you see what's going on inside of R.Pi. Any time.
That's was an intro. =)

For a long time I wanted the same interface for debugging software
programs. When I was hacking on Spyder I found that my human brain is
too limited to squeeze details of dynamic of interaction of objects at
run-time. Spyder is written in Python with Qt, and it is a parallel
application much like any Twisted app is. But I wanted to push the
progress, I have to deal with complexity, so I badly needed to be able
to draw a video of interaction at run-time. That was the problem I
tried to solve.

And for the first step I needed a way to connect to Spyder at run-time
and see what's going on. I didn't know how to call that way before,
but now I have a rather accurate wording - "a serial interface for an
application". That is the background for the question I am trying to
ask.

What is the best way to implement such interface considering the
following properties:
1. it needs to be simple (so that you can quickly create python script
that reads the info)
2. it needs to be universal (so that script for one app worked for other)
3. it should be asynchronous (connected terminal should not degrade performance)
4. it needs to be reliable (at least detecting missing packets)
5. and cross-platform (and pure python)

Why Twisted? For the first I think that this problem is actual for
people who are dealing with complexity of dynamic and interconnected
systems built with the help of Twisted. For the second I believe it
can only be solved or analyzed by people skilled in interprocess and
internetwork communications.

One button test:
1. program behaves weird
2. user hits the button
3. terminal pops up
4. shows a lot of data for a running program

I am interested to know.
1. how the button should discover the program
network port seems cool, but what about two parallel programs? what
about different programs that provide this interface?

2. how terminal receives the data
i see it as line based - one line - one event, everything is text

3. how to make it fast
TCP clearly won't here

4. how to send the data
what if two threads (or parallel code) produce serial data? who should
run the server that serves connected terminals, and how other thread
will send message to this server? you can not run two TCP servers on
the same port on the app side, so is there an alternative? how to
detect missing data in a stream? how to avoid dealing with incomplete
packets and low level network details?

Thanks. I'd like to get back to hacking on Spyder one day, but this is
a stumbling block for me every time I think about it or any program of
compared complexity.
-- 
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Twisted Sprint Report (2013-09-23)

2013-09-24 Thread anatoly techtonik
On Tue, Sep 24, 2013 at 6:58 PM, Christopher Armstrong <
ra...@twistedmatrix.com> wrote:

> On Tue, Sep 24, 2013 at 7:07 AM, Richard Wall wrote:
>
>> Twisted Sprint Report (2013-09-23)
>>
>> * Venue
>>   PyconUK 2013, Coventry, England
>>
>>
>> * Attendees
>>   * Lasse Bromose
>>   * Stephen Evans
>>   * Holger Kraus
>>   * Lukasz Prasol
>>   * Christophe Reche
>>   * Richard Wall
>>
>>
> I am really excited about the fact that I don't know all of the people on
> this list -- we need more developers!  :-) Thanks for organizing this
> sprint, Richard!
>

Reports are hard to write, but fun to read. Keep it up. Very nice. =)
-- 
anatoly t.
___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Lost slides with deferred errbacks

2013-03-07 Thread anatoly techtonik
On Thu, Mar 7, 2013 at 1:53 PM, Adi Roiban  wrote:

> On 7 March 2013 12:32, anatoly techtonik  wrote:
> > Hi,
> >
> > Some months ago I saw slides about how deffered work in Twisted.
> > If I remember correctly these there two columns on yellow background,
> > with pictures on the right, which described how errback processing
> > propogates and how to handle deferreds.
> >
> > Does anybody remember them? I looks like color codes for the blocks
> > on the diagrams were filled bright green and solid bright red square
> > blocks. I can't find them, does anybody know where I could see them?
>
> Hi,
>
> I don't know about those slides, but I read about errback propagation
> from the official docs.
>
> Does this help?
> http://twistedmatrix.com/documents/12.3.0/core/howto/defer.html


Nevermind. I found it. Need to check if these too match.
http://djmitche.github.com/twisted-intro/

-- 
anatoly t.
___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Lost slides with deferred errbacks

2013-03-07 Thread anatoly techtonik
On Thu, Mar 7, 2013 at 1:53 PM, Adi Roiban  wrote:

> On 7 March 2013 12:32, anatoly techtonik  wrote:
> > Hi,
> >
> > Some months ago I saw slides about how deffered work in Twisted.
> > If I remember correctly these there two columns on yellow background,
> > with pictures on the right, which described how errback processing
> > propogates and how to handle deferreds.
> >
> > Does anybody remember them? I looks like color codes for the blocks
> > on the diagrams were filled bright green and solid bright red square
> > blocks. I can't find them, does anybody know where I could see them?
>
> Hi,
>
> I don't know about those slides, but I read about errback propagation
> from the official docs.
>
> Does this help?
> http://twistedmatrix.com/documents/12.3.0/core/howto/defer.html


I am looking for slides to see if they will be suitable as an exception
example for
Haskel folks. Seems like there are no exceptions in functional languages,
so a
mechanism like errbacks can be a replacement.

The text is good for someone who knows Twisted, but the presentation was
rather
simple for everyone, or at least I've got this impression,
-- 
anatoly t.
___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


[Twisted-Python] Lost slides with deferred errbacks

2013-03-07 Thread anatoly techtonik
Hi,

Some months ago I saw slides about how deffered work in Twisted.
If I remember correctly these there two columns on yellow background,
with pictures on the right, which described how errback processing
propogates and how to handle deferreds.

Does anybody remember them? I looks like color codes for the blocks
on the diagrams were filled bright green and solid bright red square
blocks. I can't find them, does anybody know where I could see them?

Thanks.
-- 
anatoly t.
___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


[Twisted-Python] 2011 Totals

2012-01-17 Thread anatoly techtonik
I want to see how did I score in 2011!
http://twistedmatrix.com/highscores/?time=2011-12-01

plz.plz.plz.  :b
-- 
anatoly t.
___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Website visual improvements

2011-11-07 Thread anatoly techtonik
On Sun, Nov 6, 2011 at 8:51 PM, Jonathan Jacobs
 wrote:
> Hello,
> I recently volunteered to make some visual improvements to the Twisted Trac
> website. I received a lot of good feedback and suggestions from the IRC
> channel, most of which I took to heart and fine-tuned the changes. I think
> everyone is generally happy with the changes, I'm happy with the changes and
> I'd like help with moving things forward to eventually deploy these changes.
> The branch is currently up for review on Launchpad[1], the merge proposal
> contains links to some[2] static[3] pages demonstrating the style changes.
> (It is worth noting that there are some quirks that are as a result of "File
> -> Save As" in Firefox, I wouldn't worry about these.)

Cool. I've uploaded screenshots to see how it looks on my FF7 below. I
like it. Well, with the exception of linefeeds in download links and
some stuff that is strictly subjective. For example, blue cloud looks
completely out of the way on the main page - I don't know if it is
thanks to the dark background or to its form. I also prefer right-side
panels over left-side. On issue page red and blue tones are also
looking strange to me. What is awesome are comment numbers. A pity
these are not clickable.

Anyway, good work! =)

old - http://i42.tinypic.com/29dify0.jpg
new - http://i44.tinypic.com/xpv78k.png


> [1]
> 
> [2] 
> [3] 
--
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] [ANN] Pyflakes 0.5.0

2011-10-01 Thread anatoly techtonik
New pyflakes is integrated into Spyder beta3 that is just released.
http://code.google.com/p/spyderlib/source/detail?r=104724af845aecfdfee0db4b355ba01840e9459b

Good job, everyone! =)
--
anatoly t.



On Sat, Sep 3, 2011 at 10:51 PM, Glyph  wrote:
> Thanks, Tristan!  Great to see that maintenance is continuing :).
>
> (Now, off to upgrade Pyflakes everywhere...)
>
> On 09/03/2011 01:26 PM, Tristan Seligmann wrote:
>> -BEGIN PGP SIGNED MESSAGE-
>> Hash: SHA512
>>
>> It is my unexpected pleasure to announce the release of Pyflakes
>> 0.5.0, the first release in several years, and available now from
>> PyPI[1].
>>
>> Highlights of this release include the use of the built-in AST instead
>> of the compiler module, and support for various new syntax constructs
>> in Python 2.7. Note that development of Pyflakes (as well as the other
>> divmod.org projects) has moved to Launchpad[2] since the last release.
>>
>> [1] 
>> http://pypi.python.org/packages/source/p/pyflakes/pyflakes-0.5.0.tar.gz#md5=568dab27c42e5822787aa8a603898672
>>
>> [2] https://launchpad.net/pyflakes
>> -BEGIN PGP SIGNATURE-
>> Version: GnuPG v2.0.18 (GNU/Linux)
>>
>> iQIcBAEBCgAGBQJOYmL+AAoJEFjA+xzeO3YAme4P/AxLuy0WJN2zG97my1oEwky9
>> VT79BwnxOqR4NB7I1dRKE3PG4Llgl6frAa0SouM12Dr0QZj9Ug3qHAmmf+TZFrF6
>> OIQcBUGkZW7EanBhCbjmfqo+0atJ8toAcj9uyF7Db/0A7gCDw160JIMnmTmxu8z6
>> 3r5xRLNSnxs4jj6OSViv9oHNs2r2lpU/RObkGXy6EHxMgezYqw84FbA61fxquK4p
>> +J1n++vzfiasqgcQFFU3R67T0P2gWUe0C6pv/D+CurSCOdgQJv4LeRtNeYgKhw/W
>> rN0/3cERXGyRMa4JYDbFyP2G8lrpOuWo2F+jFtEGAxgziK8EqCK58ZSeqMBsodJ9
>> slAZobSQkrUj6GfpNKdW5mjYRqymBmUhPFc+sUI2poGb3zvMnWmUa2tiSfwl9uxO
>> 9Di82XXAztKba8++cGJQCbuONiLRPgW5kArz5dRz3jFVdAZYL7xUvah4uznwfazc
>> CA8Q0tiXXoL7X1sT6heNu4VRtnJfEh5LojFdizA4nJEpNssZrPFkSZMv+eSR4Sow
>> 8u2n4f07od6EBzHMhEyqFN7goaniW05VL+EvMdC5px+brnyKOIoLSAGWptBL5EYL
>> aaAb2zRrebyr/u5vGa+sKEXcoW2TEsc9qO8p/nNSetcoIcNfDwnd3cdyJPU+lYbn
>> Wctc68Y+xNWChiuTYa3e
>> =kKgi
>> -END PGP SIGNATURE-
>>
>> ___
>> Twisted-Python mailing list
>> Twisted-Python@twistedmatrix.com
>> http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
>
>
> ___
> Twisted-Python mailing list
> Twisted-Python@twistedmatrix.com
> http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
>

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] [Divmod-users] [ANN] Pyflakes 0.5.0

2011-09-21 Thread anatoly techtonik
Hi,

I faced the same problem - couldn't find repository for 0.5
While people are trying to convert stuff - it worth to place a
clearly visible pointer to a right direction on pyflakes code
page.

https://code.launchpad.net/pyflakes
--
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Moving Twisted off Trac and SVN to somewhere nicer

2011-07-04 Thread anatoly techtonik
On Fri, Jul 1, 2011 at 1:29 PM, Laurens Van Houtven <_...@lvh.cc> wrote:
>
> As some of you may already know (either through a backchannel or because you
> talked to me at Europython), there has been some talk about moving Twisted
> way from Trac+SVN to somewhere that isn't Trac+SVN.

There are always talks about moving here of there, because people are
bored or it _seems_ to them that the other way of doing things is much
better, because everybody else praises it. It is hard to resist this
opinion. Some people even take it fundamentally - "I won't commit,
because its not in Git". The worst that it doesn't mean these people
will participate if the project is be in Git, but a small percentage
will.

Problem with Git/Bazaar/Mercurial and DVCS in general is much higher
contribution barrier. So, if you want to switch, you need to know
_exactly_ why, and more importantly - which features are you going to
miss. See below:

> A lot of the devs do like SVN. My guess is that that's mainly because they
> don't actually use SVN, they use Combinator, or something. On the other
> hand, I do think that Trac is pretty universally loathed, and it would be a
> good idea to get away from it.

I believe nobody uses Combinator, because it is dead
http://divmod.org/trac/wiki/DivmodCombinator
SVN has one major flaw - you can not stack patches on your system
naturally when you don't have write access to repository. I believe
that's the major complain behind "DVCS is better". Second problem -
there in no _convenient_ way to share these patches to be reviewed and
incorporated upstream.

I do not think Trac is universally hated. It is the application one
level above Python API as Twisted itself. Trac has its own
architecture, different from standard OOP hierarchy. This architecture
is not obvious and may be inconvenient to debug and extend. It may be
that everybody is tired of Trac design, or Trac doesn't provide review
and push/pull integration, but it has some other awesome features.

> There's a few existing hosting solutions:
>
> Launchpad (+ Bazaar as the default vcs)
> Bitbucket (+ Mercurial as the default vcs)
> Github (+ Git as the default vcs)

I am not sure if the following possible with these services:
L  G  B
[ ] [ ] [ ] Project timeline with changes to wiki, tickets, commits etc,
[ ] [ ] [ ] Editable issue description (Google Code suxx at this)
[ ] [ ] [ ] Commit history navigation from patch view (next/prev buttons)
[ ] [ ] [ ] Colored blame history browser
[ ] [ ] [ ] Hook scripts for bots and other stuff
[ ] [ ] [ ] Full project data export

> Unless someone is going to go all "NO GITHUB IS TERRIBLE AND YOU ARE A BAD
> PERSON FOR EVEN SUGGESTING IT" on me, maybe we can talk about planning the
> transition? :)

To know if Github is terrible or not, you need some data - examples,
use cases. The first step in planning is to look at the current
workflow and gather a list of ways current Trac+SVN is used and see
where Github has advantages and where it suxx. Usually, people realize
the latter when it's too late.

As we are all mostly too busy, if you want people to participate in
discussions, it will be better to outline the features you need from
development workflow and separate discussion with some summary about
them into separate thread. Right now I see that there is a thread
about reviews and as a Rietveld user, I may have a lot to say about
that. =)
-- 
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Ideas for a Twisted Training

2011-06-17 Thread anatoly techtonik
On Fri, Jun 17, 2011 at 1:52 AM, Orestis Markou  wrote:
> Hello,
>
> In a few days I'll be giving a 4h long training on Twisted in Europython 2011 
> in Firenze, Italy.
>
> I have a lot of material covering basic concepts, such as writing servers, 
> writing clients, deferreds etc. I'm now looking for other areas of 
> functionality I should show. I have a bit web, will do a bit of pb. Any other 
> pointers?

Well, it would be nice to get some near real time visualization of
Twisted reactor in Blender game engine. It may inspire a lot of people
to learn Twisted. Blender has a lot of potential for Python
visualizations. =) Unfortunately, my visa have just expired, so I
won't get to the conference this year to spread the idea.
--
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Twisted Plugins - Implementation Discussion

2011-04-22 Thread anatoly techtonik
On Fri, Apr 22, 2011 at 10:51 AM, David  wrote:
>
>> [OT]
>> I still can't see how it solves even the basic user story - 'i want to
>> uninstall twisted' or 'i want two versions of twisted installed'.
>
> Bento's point is: make packagers life easier (without making life of
> users more miserable), so that you are more likely than before to be
> able to use the native tools.

You do an awesome thing, but it will be a total waste of time if
Fellowship of the Packaging fails to make life of Python users better.
I am sure their ranks will appreciate your experience in this area. ;)
--
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Twisted Plugins - Implementation Discussion

2011-04-21 Thread anatoly techtonik
On Fri, Apr 22, 2011 at 4:01 AM, David  wrote:
> On 04/22/2011 06:21 AM, anatoly techtonik wrote:
>> On Thu, Apr 21, 2011 at 4:48 AM, Kevin Horn  wrote:
>>>
>>> cluster.  So he rewrote distutils with an eye on keeping things nice for
>>> everyone.  Project managers, distro packagers, users installing software,
>>> etc.  This is distutils2.  In Python 3.3 and up it will be called
>>> "packaging".  Once people start using it, it will make a lot of the current
>>> packaging headaches in the Python world go away.
>>
>> Are you sure about that? Where is the list of stories it will solve
>> when people start using it, so I can check that my cases are covered
>> by distutils2 insurance plan?
>
> [OT]
> You can take a look at bento, which is my own response to the distutils
> issues we have in the scipy community (but I would expect twisted and
> most big python libraries to have similar issues):
>
> http://cournape.github.com/Bento/
>
> It is designed from the ground up with the idea of reliable
> customization and complex build supports. It can already build numpy and
> scipy with a near 50 % reduction in LOC compared to our setup.py, and
> more reliably thanks to using a real build tool in the backend (waf, but
> you can add support for a different one if you want).

[OT]
I still can't see how it solves even the basic user story - 'i want to
uninstall twisted' or 'i want two versions of twisted installed'.
Absolute paths in examples won't work on Windows, hardcoded version
field in .info file is inconvenient. It looks like yet another pip,
distribute or easy_install. Don't get me wrong - it looks better - but
for yet another nih packaging solution there should be some convincing
facts or use cases (examples) of why this particular solution is
better. In fact, I'd like to see Wikipedia like comparison for
different 'packaging solutions' somewhere at
http://wiki.python.org/moin/Packaging because I don't use anything
except, well, easy_install, which can't even install protocol buffers.
I guess bento can?
--
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Twisted Plugins - Implementation Discussion

2011-04-21 Thread anatoly techtonik
On Thu, Apr 21, 2011 at 4:48 AM, Kevin Horn  wrote:
>
> cluster.  So he rewrote distutils with an eye on keeping things nice for
> everyone.  Project managers, distro packagers, users installing software,
> etc.  This is distutils2.  In Python 3.3 and up it will be called
> "packaging".  Once people start using it, it will make a lot of the current
> packaging headaches in the Python world go away.

Are you sure about that? Where is the list of stories it will solve
when people start using it, so I can check that my cases are covered
by distutils2 insurance plan?

> will hopefully go back to being a niche tool.  Also also the Python
> community could use a plugin standard that could replace setuptools'
> entry_points.

ABC classes? Trac components? What is plugin anyway? Discoverable
module on a syspath? Registered entity in package repository? Filename
in %HOMEDIR% that starts with tx.? (autoloaders from PHP5?)
--
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Running twistd with a compiled file

2011-04-21 Thread anatoly techtonik
On Thu, Apr 21, 2011 at 8:26 PM,   wrote:
> On 04:28 pm, albert.bra...@weiermayer.com wrote:
>>On Thu, Apr 21, 2011 at 08:17:04AM -0400, Itamar Turner-Trauring wrote:
>>>The .tac file (or application.py) should typically be two lines of
>>>code,
>>>just importing everything from elsewhere, so really just having it in
>>>Python seems the easiest solution.
>>
>>This is a good argument. I was afraid that having the application as
>>source code might help in reverse engineering it, but starting the
>>debugger in the application does not reveal much information for
>>modules
>>that are compiled.
>
> This is the obligatory post in which it is pointed out that .pyc files
> are basically equivalent to .py files as far as revealing your source
> goes.

As the code comments are stripped from .pyc files, most enterprise
grade applications are safe. If that stuff is not complicated enough -
then it can be rewritten from scratch anyway.
--
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Announcing pyOpenSSL 0.12

2011-04-11 Thread anatoly techtonik
Good news. It may worth to update http://wiki.python.org/moin/SSL with
details. Right now it says that pyOpenSSL can not validate server
identity.
--
anatoly t.



On Tue, Apr 12, 2011 at 3:19 AM,   wrote:
> Exciting news everyone,
>
> I have just released pyOpenSSL 0.12.  pyOpenSSL provides Python bindings
> to a number of OpenSSL APIs, including certificates, public and private
> keys, and of course running TLS (SSL) over sockets or arbitrary in-
> memory buffiers.
>
> This release fixes an incompatibility with Python 2.7 involving
> memoryviews.  It also exposes the "info callback" constants used to
> report progress of the TLS handshake and later steps of SSL connections.
> Perhaps most interestingly, it also adds support for inspecting
> arbitrary X509 extensions.
>
> http://python.org/pypi/pyOpenSSL - check it out.
>
> Jean-Paul
>
> ___
> Twisted-Python mailing list
> Twisted-Python@twistedmatrix.com
> http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
>

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] WaitForMultipleObjects socket limitation

2011-04-09 Thread anatoly techtonik
On Sat, Apr 9, 2011 at 4:43 AM, Pavel Pergamenshchik  wrote:
> On Fri, Apr 8, 2011 at 6:26 PM, Glyph Lefkowitz  
> wrote:
>>
>> On Apr 8, 2011, at 2:56 AM, Tristan Seligmann wrote:
>>
>>> On Fri, Apr 8, 2011 at 4:52 AM, Kevin Horn  wrote:
 Note that you can wait on more than 64 objects at a time, just not using a
 single WaitForMultipleObjects call.  The MSDN page Glyph pointed out has a
 little more info.
>>>
>>> The proposed solutions, however, seem rather unsatisfactory. If you're
>>> going to start spawning new threads to monitor everything, you might
>>> as well just do IOCP in another thread, or even in the main thread (at
>>> least as far as I know).
>>
>> I think we may be close to the point where we can drop win32eventreactor 
>> completely.  I think IOCP can deal with arbitrary Windows events too, so if 
>> we just expose that in a compatible way, and whatever else comes along with 
>> it, we can just delete win32er without losing any functionality.  (Or maybe 
>> we already do?  Not my area of expertise any more :)).
>
> It's technically possible, but it's not a thing that iocpreactor
> currently does. Someone (hurr hurr) needs to stop slacking and
> implement it, along with support for waiting on an arbitrary number of
> handles.

I've found a "tutorial" by Richard Tew.
http://posted-stuff.blogspot.com/2009/07/iocp-based-sockets-with-ctypes-in_31.html

There is a lot of stuff to read. I can figure out if:
1. IOCP doesn't give a 100% CPU load when idle
2. It is doesn't seem like it is possible to listen to console events
like WFMO, but I didn't try

> Also, how much do we care that win32er can be used without a compiler,
> but iocpreactor needs one to build the API wrapper?
--
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


[Twisted-Python] WaitForMultipleObjects socket limitation

2011-04-07 Thread anatoly techtonik
Hi,

I've made a proof of concept for asynchronous console input on Windows
[1] and now I am trying to understand the limits of
WaitForMultipleObjects API I've used.

Documentation on win32eventreactor mentions limit for 64 objects:
http://twistedmatrix.com/documents/11.0.0/api/twisted.internet.win32eventreactor.htm
However, it is completely opaque what these objects are? For console
handles and process handles it is quite obvious, but not for sockets.

Is 64 the limit for total amount sockets opened on different ports?
Is 64 the limit for connections made to a socket on specified port?

1. 
http://techtonik.rainforce.org/2011/03/asynchronous-input-from-windows-console.html
--
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Persisted protocol?

2011-04-06 Thread anatoly techtonik
On Wed, Apr 6, 2011 at 3:58 PM,   wrote:
>
> As others have pointed out, this is referring to an old feature which is
> being phased out.  It would be great if you could file a ticket for
> cleaning up the docs; they mostly shouldn't talk about application
> persistence (certainly not in the UDP section).

Tried to do as clear as possible.
http://twistedmatrix.com/trac/ticket/5031
--
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Instrumenting Reactors

2011-04-06 Thread anatoly techtonik
On Wed, Apr 6, 2011 at 1:35 PM, Laurens Van Houtven <_...@lvh.cc> wrote:
> Hi!
>
>
> No guarantee it's an optimal solution, but when I wanted to inspect a
> running process (which sounds like what you're doing), I had a pretty good
> time with manhole. (If you're not familiar with that: it's in Twisted Conch,
> and it's basically just a way to SSH in to a running box and get a REPL).
>
> In that REPL, you can of course do things like inspect the running reactor
> :-)

It would be nice to be able to attach signals emitters to some parts
of running reactor in real-time. If manhole can allow to attach to
these emitters - it will be possible to visualize them in funny way.
Does anybody know how a twisted reactor model should look like in
Blender? =)
--
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


[Twisted-Python] Persisted protocol?

2011-04-06 Thread anatoly techtonik
Hi again,


>From http://twistedmatrix.com/documents/current/core/howto/udp.html

"""As you can see, the protocol is registered with the reactor. This means it
may be persisted if it's added to an application..."""

What does 'persisted` here mean?

--
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Where is buildslave configuration?

2011-04-04 Thread anatoly techtonik
On Mon, Apr 4, 2011 at 10:55 PM,   wrote:
>>
>>So, now I am curious why this copyright.py patch is required?
>
> It's required because of restrictions on what version you are allowed to
> use when building an MSI.  These rules are codified in
> distutils.version.StrictVersion:
>
>    >>> from distutils.version import StrictVersion
>    >>> from twisted import __version__
>    >>> StrictVersion(__version__)
>    Traceback (most recent call last):
>      File "", line 1, in 
>      File "/usr/lib/python2.6/distutils/version.py", line 40, in
> __init__
>        self.parse(vstring)
>      File "/usr/lib/python2.6/distutils/version.py", line 107, in parse
>        raise ValueError, "invalid version number '%s'" % vstring
>    ValueError: invalid version number '11.0.0+r31541'
>    >>> StrictVersion('11.0.0pre1')
>    Traceback (most recent call last):
>      File "", line 1, in 
>      File "/usr/lib/python2.6/distutils/version.py", line 40, in
> __init__
>        self.parse(vstring)
>      File "/usr/lib/python2.6/distutils/version.py", line 107, in parse
>        raise ValueError, "invalid version number '%s'" % vstring
>    ValueError: invalid version number '11.0.0pre1'
>
> The build step is there to ensure the version is something bdist_msi
> will accept.  It's an unintentional side-effect that the change survives
> all the way through to the built page.

I've tried to do this directly in setup.py so that local .msi builds
could work too.
http://twistedmatrix.com/trac/ticket/5024

-- 
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Where is buildslave configuration?

2011-04-04 Thread anatoly techtonik
On Mon, Apr 4, 2011 at 4:15 PM, Andrew Bennetts  wrote:
>
> So your problem isn't the version string, but that running bin/trial in
> your Twisted checkout is finding the wrong version of Twisted?

Exactly. But wrong version string was the cause of troubles with debugging it.

> Also, rather than editing random library files, why not just look at the
> output of python -v bin/trial?

I forgot about it, so I've just used python bin/trial --version
..and it showed me the version..
..it was 11.0.0..
..but 11.0.0 is the released version I've installed..
..and the version in the trunk/ (i.e. my working copy)..
..so I decided to modify these versions to differentiate copies somehow..
..because it was 1 minute fix..
..because I forgot about python -v bin/trial..
..which is 1 second test..
..so I've looked up where the script reads version..
..and it appeared that it imports copyright.py..
..which in turn imports version from _version.py..
..so I've modified _version.py in my working copy..
..and got the same 11.0.0 version in bin/trial --version...
.."AHA!", - said I to myself..
..but decided to check ..
.."just in case"..
..because I like to be sure..
..and because you never know who listens to your trac.core.Component..
..or zope.interface..
..or whatever..
..unless you run it..
..so, I've modified _version.py in my installation..
..and..
..guess that?..
..still got the 11.0.0..
..$%#!, - said I to myself..
..[$%#!] * 3, - said I to myself three minutes later..
..or five..
..or more..
..I don't remember..
..but if took less than three minutes, I wouldn't be writing this letter..
..so..
..I compared source trees..
..and found..
..that there is an extra version assignment..
..at the end of copyright.py

So, I wasted some more time (I won't tell how much) to find where is
this funny piece of code in release toolchain that inserts this
version string? After looking at some note that .msi is downloaded
from buildbot, I though "No, that's impossible", but, alas, it was
there. Not even open sourced as it appears.

So, now I am curious why this copyright.py patch is required?

My ultimate goal is to run a complete build of Twisted will all tests
that results in .msi installer on my Vista machine - the machine with
operating system that was in the list of NeededBuildSlaves 30 minutes
ago. =)
--
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Where is buildslave configuration?

2011-04-04 Thread anatoly techtonik
On Mon, Apr 4, 2011 at 7:32 AM,   wrote:
>>
>>I tried to find where build slave configuration is stored to see when
>>7th step was added and remove it
>>http://buildbot.twistedmatrix.com/builders/winxp32-py2.6-msi/builds/356/steps/shell_3
>>perhaps together with the 2nd step
>>http://buildbot.twistedmatrix.com/builders/winxp32-py2.6-msi/builds/356/steps/shell
>>
>>Why? Well, because when I change version in  _version.py, the command
>>`python27 twistd --version` still reports the old value.
>
> I don't understand this.  Why do you want to change this configuration?
> Why do you want to change the version?

I want to stop the version string from being forcefully added to
copyright.py file during distribution build process. It is already
imported from twisted module.

Why? I changed version to check that bin/trial uses the correct
twisted checkout (which it didn't), and to my surprise `bin/trial
--version` still gave me the number before it was edited in both
checkout and working copy. That was weird, because in my working copy
copyright.py doesn't have forceful version override hack and I
couldn't find it there.

--
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


Re: [Twisted-Python] Where is buildslave configuration?

2011-04-04 Thread anatoly techtonik
pardon, s/checkout and working copy/checkout version and installed version/

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


[Twisted-Python] Where is buildslave configuration?

2011-04-03 Thread anatoly techtonik
Hi everybody,

I tried to find where build slave configuration is stored to see when
7th step was added and remove it
http://buildbot.twistedmatrix.com/builders/winxp32-py2.6-msi/builds/356/steps/shell_3
perhaps together with the 2nd step
http://buildbot.twistedmatrix.com/builders/winxp32-py2.6-msi/builds/356/steps/shell

Why? Well, because when I change version in  _version.py, the command
`python27 twistd --version` still reports the old value.
--
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python


[Twisted-Python] Mailman broken images

2011-04-03 Thread anatoly techtonik
JFY images from Mailman installation are broken.

http://twistedmatrix.com/cgi-bin/mailman/subscribe/twisted-python
--
anatoly t.

___
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python