On 3 Oct, 11:09 pm, wolfgang....@rohdewald.de wrote:
I now have a local git branch with about 70 commits, always
rebased onto current trunk.

It makes me sad to learn you're carrying so many patches to Twisted. It might be useful to the project if you could share why this development was easier to do outside the tree rather than contributing it to the project as you developed it.
Those test suites pass with Python2 and Python3:

test_banana, test_jelly, test_pb, test_pbfailure, test_persisted

I also have a real app using PB (kajongg, a KDE game). Running
the server and the client with any combination of Python 2 and
Python 3 works but more testing is needed there. Especially
transferring failures with non-ascii test, so I need to inject
random errors.

For testing?  Probably not random - instead, comprehensive.
spread.banana is now fully covered by tests (was at 85% before).
There is still a lot of code in twisted.spread which has no
tests yet.
I do not think I want to add missing tests for everything,
only for those regions where I do changes or where it is not
too difficult. And of course if an application triggers a bug
yet uncovered by tests.

The coding standard only requires you to add tests for code you're changing. Python 3 mixes things up a bit though - by changing everything. Calling a module "Python 3 compatible" without changing it at all still changes lots of things how about it works.

I think that before the Twisted project wants to call a particular module ported, we want it to have test coverage that can run on Python 3.
Can you point me to other PB applications I could use for testing?
Preferrably ones that are already mostly compatible with PY3
themselves,

I'll let other people volunteer projects they know of - but I strongly suspect there are few or no such applications.
but that is not a _must_, I would try porting them
unless it turns out to be too much work. And preferrably ones
developed by people with a non-ascii native language. I do not
yet trust Failures and logging with non-ascii.


Below is the current list of commits. Everything you see
there is still much in flux. This includes shuffling code
between commits, combining and splitting commits, changing order.
I want to open one ticket per commit. Simple things hopefully
not needing much discussion first.

Estimating one week per review/commit to trunk, this process
will take more than one year. Often I can only add a new ticket
after the previous one has been integrated because they
depend on each other.

If twisted.spread were completely supported on Python 3 in only another year I'll be very impressed. :)
So if it really seems to take that long, at some point I might
just decide to put what I have to github and not care anymore.
Which of course means I might have to distribute a patched
twisted version with my application. I really want to leave
Python2 behind, and only twisted is in the way. Latest versions
of KDE do not have Python2 bindings anymore (KDE Frameworks 5).

That's too bad.
This log of course includes things being in tickets up for review.

git log --pretty='format:%s' --reverse trunk..pb3
<snip>

Again, it seems unfortunate that you have all of this work ... somewhere. Somewhere only you (as far as I can tell) can see it. Somewhere only you can test it. Somewhere only you can work on it and get it contributed to Twisted.

Jean-Paul

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

Reply via email to