Re: [Twisted-Python] Using six for Python3 porting

2015-04-24 Thread Glyph

> On Apr 24, 2015, at 02:41, Adi Roiban  wrote:
> 
> Hi,
> 
> I feel that twisted.python.compat is slowly duplicating / reinventing
> an important part of the six code.
> 
> Code which does not import from  twisted.python.compat will have all
> kind of ad-hoc / in module code to handle differences between py2 and
> py3 and many if _PY3 conditional blocks.
> 
> What do you say if we add six as dependency for twisted ?
> 
> In case you don't want six as a dependency, it can be copied in
> twisted code base and make it available from twisted.python.six or a
> similar package.

I think that this is basically the right thing to do, since almost all of our 
optional dependencies depend on it.  I'm somewhat surprised that zope.interface 
hasn't forced this on us already, honestly; what are they doing for a 
compatibility layer?

I don't want to ssh in to 25 builders and manually install six on each one 
though.  We should figure out a better dependency management solution for the 
build fleet so this doesn't have to be a hassle.  (And also to make coverage of 
certain things easier; for example, the tests fail currently if you install 
sphinx.)  The first step in this is probably removing me as a bottleneck for 
administrative tasks, which we are already working on (thank you adi and 
hawkowl).

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


Re: [Twisted-Python] twisted and twisted-infra organizations on GitHub

2015-04-24 Thread Adi Roiban
On 3 April 2015 at 01:43,   wrote:
> On 2 Apr, 12:37 pm, a...@roiban.ro wrote:
>>
>> Hi,
>>
>> I would like suggest the following changes regarding the way repos are
>> organized in GitHub.
>>
>> Move all twisted-infra repos into Twisted organization.. and maybe
>> merge many twisted-infra repos into braid.
>>
>> Move treq, klein, txmongo, filepath... divmod projects into a new
>> organization dedicated to projects which are part of Twisted
>> ecosystem. Any project which imports Twisted can be part of it.
>>
>> What do you say?
>
>
> Perhaps you can explain why someone would want to do this.  As is, it sounds
> like a lot of busy work that, at best, will confuse and disrupt people.  If
> you explain what benefit would come from making this change, maybe it will
> be easier to see why it's a good idea.

The goal is for Twisted developers to monitor a single organization.

Right now, if I check all issues [1] or pull request from Twisted
organization I have filter a lot of repos.

When wearing the Twisted core dev hat I should only care about twisted
/ twistedcheckers / twisted-dev-tools / news-builder / pydoctor.

Why should I care about txmongo or need to create a custom filter to
exclude such projects?

As a twisted core dev I should also care for the twisted-infra since
it its results are used by every dev.

[1] https://github.com/issues?user=twisted

-- 
Adi Roiban

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


Re: [Twisted-Python] twisted and twisted-infra organizations on GitHub

2015-04-24 Thread Glyph

> On Apr 24, 2015, at 03:10, Adi Roiban  wrote:
> 
> On 3 April 2015 at 01:43,   wrote:
>> On 2 Apr, 12:37 pm, a...@roiban.ro wrote:
>>> 
>>> Hi,
>>> 
>>> I would like suggest the following changes regarding the way repos are
>>> organized in GitHub.
>>> 
>>> Move all twisted-infra repos into Twisted organization.. and maybe
>>> merge many twisted-infra repos into braid.
>>> 
>>> Move treq, klein, txmongo, filepath... divmod projects into a new
>>> organization dedicated to projects which are part of Twisted
>>> ecosystem. Any project which imports Twisted can be part of it.
>>> 
>>> What do you say?
>> 
>> 
>> Perhaps you can explain why someone would want to do this.  As is, it sounds
>> like a lot of busy work that, at best, will confuse and disrupt people.  If
>> you explain what benefit would come from making this change, maybe it will
>> be easier to see why it's a good idea.
> 
> The goal is for Twisted developers to monitor a single organization.
> 
> Right now, if I check all issues [1] or pull request from Twisted
> organization I have filter a lot of repos.
> 
> When wearing the Twisted core dev hat I should only care about twisted
> / twistedcheckers / twisted-dev-tools / news-builder / pydoctor.
> 
> Why should I care about txmongo or need to create a custom filter to
> exclude such projects?
> 
> As a twisted core dev I should also care for the twisted-infra since
> it its results are used by every dev.
> 
> [1] https://github.com/issues?user=twisted 
> 

Many developers don't care about working on the tooling themselves either.  Why 
should they have to create a custom filter rather than you?

This is not to be dismissive of your interest in our development tooling.  The 
fact that you are working on maintaining it is of great benefit to all other 
twisted developers, but the reason it is of great benefit is expressly because 
they do not have to care so much about it any more :).

The idea behind the current structure is that the twisted org includes 
application code that users use, so if a user looks at it they get a coherent 
listing of things (including twisted itself) that they might want to use.  The 
infra repository lists tools that we use to develop twisted, not things that 
users would be interested in downloading themselves, unless they want to 
develop another project like Twisted (which is quite a different thing from 
_using_ twisted or its ecosystem).

In any case, while I hate to say this because, again, it sounds really 
dismissive, it sounds to me like you need to configure your github client 
somehow to match your personal tastes, rather than restructure the project to 
accommodate them.  The alternative sounds like a terrible confusing mess to me 
for first-time contributors and new users, and I think they are inherently less 
able to create filters and customize their experience, so they should see the 
orgs as they are presently.

(There may still be some call for an "ecosystem" repository; I don't know how 
many Twisted developers really care about txmongo at all.  But I think it's 
nice to see so much ecosystem stuff in one place.)

-glyph

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


Re: [Twisted-Python] twisted and twisted-infra organizations on GitHub

2015-04-24 Thread Adi Roiban
On 24 April 2015 at 08:25, Glyph  wrote:
>
> Many developers don't care about working on the tooling themselves either.
> Why should they have to create a custom filter rather than you?

[snip]

Thanks. No problem!

-- 
Adi Roiban

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


Re: [Twisted-Python] Using six for Python3 porting

2015-04-24 Thread Adi Roiban
On 24 April 2015 at 08:00, Glyph  wrote:
>
>> On Apr 24, 2015, at 02:41, Adi Roiban  wrote:
>>
>> Hi,
>>
>> I feel that twisted.python.compat is slowly duplicating / reinventing
>> an important part of the six code.
>>
>> Code which does not import from  twisted.python.compat will have all
>> kind of ad-hoc / in module code to handle differences between py2 and
>> py3 and many if _PY3 conditional blocks.
>>
>> What do you say if we add six as dependency for twisted ?
>>
>> In case you don't want six as a dependency, it can be copied in
>> twisted code base and make it available from twisted.python.six or a
>> similar package.
>
> I think that this is basically the right thing to do, since almost all of our 
> optional dependencies depend on it.  I'm somewhat surprised that 
> zope.interface hasn't forced this on us already, honestly; what are they 
> doing for a compatibility layer?

They have this:
https://github.com/zopefoundation/zope.interface/blob/master/src/zope/interface/_compat.py

> I don't want to ssh in to 25 builders and manually install six on each one 
> though.  We should figure out a better dependency management solution for the 
> build fleet so this doesn't have to be a hassle.  (And also to make coverage 
> of certain things easier; for example, the tests fail currently if you 
> install sphinx.)  The first step in this is probably removing me as a 
> bottleneck for administrative tasks, which we are already working on (thank 
> you adi and hawkowl).

I am happy to help with updating the builders as long as there is
someone willing to review the changes.

At this stage I just want to know if we want six in Twisted.

We can also start with distributing six together with Twisted code and
move it outside twisted once builders are fixed.

-- 
Adi Roiban

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


Re: [Twisted-Python] twisted and twisted-infra organizations on GitHub

2015-04-24 Thread Gelin Yan
>
>
> Many developers don't care about working on the tooling themselves
> either.  Why should they have to create a custom filter rather than you?
>
> This is not to be dismissive of your interest in our development tooling.
> The fact that you are working on maintaining it is of *great* benefit to
> all other twisted developers, but the *reason* it is of great benefit is
> expressly because they do not have to care so much about it any more :).
>
> The idea behind the current structure is that the twisted org includes
> application code that users use, so if a user looks at it they get a
> coherent listing of things (including twisted itself) that they might want
> to use.  The infra repository lists tools that we use to develop twisted,
> not things that users would be interested in downloading themselves, unless
> they want to develop another project like Twisted (which is quite a
> different thing from _using_ twisted or its ecosystem).
>
> In any case, while I hate to say this because, again, it sounds really
> dismissive, it sounds to me like you need to configure your github client
> somehow to match your personal tastes, rather than restructure the project
> to accommodate them.  The alternative sounds like a terrible confusing mess
> to me for first-time contributors and new users, and I think they are
> inherently less able to create filters and customize their experience, so
> they should see the orgs as they are presently.
>
> (There may still be some call for an "ecosystem" repository; I don't know
> how many Twisted developers really care about txmongo at all.  But I think
> it's nice to see so much ecosystem stuff in one place.)
>
> -glyph
>
>
> ___
> Twisted-Python mailing list
> Twisted-Python@twistedmatrix.com
> http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
>
>
Hi Glyph

 off-topic a bit. I care about txmongo. I actually plan to use it in
production soon.

Regards

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


Re: [Twisted-Python] Using six for Python3 porting

2015-04-24 Thread Hynek Schlawack

On 24 Apr 2015, at 8:41, Adi Roiban wrote:


I feel that twisted.python.compat is slowly duplicating / reinventing
an important part of the six code.


I’m +1 on this too.  I was a bit hesitant in the past but duplicating 
compatibility code everywhere is becoming ridiculous and a hassle.


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


Re: [Twisted-Python] Using six for Python3 porting

2015-04-24 Thread Ralph Meijer
On 2015-04-24 08:41, Adi Roiban wrote:
> Hi,
> 
> I feel that twisted.python.compat is slowly duplicating / reinventing
> an important part of the six code.
> 
> Code which does not import from  twisted.python.compat will have all
> kind of ad-hoc / in module code to handle differences between py2 and
> py3 and many if _PY3 conditional blocks.
> 
> What do you say if we add six as dependency for twisted ?
> 
> In case you don't want six as a dependency, it can be copied in
> twisted code base and make it available from twisted.python.six or a
> similar package.

I vaguely remembered working on this at PyCon in 2014:
https://twistedmatrix.com/trac/ticket/7177

-- 
ralphm

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