[Python-Dev] Drop/deprecate Tkinter?

Steve Holden steve at holdenweb.com
Thu May 3 08:24:17 EDT 2018


On Thu, May 3, 2018 at 12:12 AM, Ivan Pozdeev via Python-Dev <
python-dev at python.org> wrote:

> On 03.05.2018 1:01, Antoine Pitrou wrote:
>
>> On Wed, 2 May 2018 22:54:04 +0100
>> Paul Moore <p.f.moore at gmail.com> wrote:
>>
>>> On 2 May 2018 at 22:37, Antoine Pitrou <solipsis at pitrou.net> wrote:
>>>
>>>> To elaborate a bit: the OP, while angry, produced both a detailed
>>>> analysis *and* a PR.  It's normal to be angry when an advertised
>>>> feature doesn't work and it makes you lose hours of work (or, even,
>>>> forces you to a wholesale redesign). Producing a detailed analysis and a
>>>> PR is more than most people will ever do.
>>>>
>>> His *other* email seems reasonable, and warrants a response, yes. But
>>> are we to take the suggestion made here (to drop tkinter) seriously,
>>> based on the fact that there's a (rare - at least it appears that the
>>> many IDLE users haven't hit it yet) race condition that causes a crash
>>> in Python 2.7? (It appears that the problem doesn't happen in the
>>> python.org 3.x builds, if I understand the description of the issue).
>>>
>> In 3.x, Tkinter+threads is broken too, albeit in a different way -- see
> https://bugs.python.org/issue33412 (this should've been the 2nd link in
> the initial message, sorry for the mix-up).
>

​The observation in t​hat issue that tkinter and threads should be handled
in specific ways is certainly a given for old hands, who have long put the
GUI code in one thread with one or more concurrent worker threads typically
communicating through queues. But I haven't built anything like that
recently, so I couldn't say how helpful the current documenation might be.

The 2.x bug also shows in 3.x if it's linked with a nonthreaded version of
> Tcl (dunno how rare that is, but the code still supports this setup).
>
>> I and others actually suggested it seriously in the past.  Now,
>> admittedly, at least IDLE seems better maintained than it used to
>> be -- not sure about Tkinter itself.
>>
>> Nor do I think the tone of his message here is acceptable - regardless
>>> of how annoyed he is, posting insults ("no-one gives a damn") about
>>> volunteer contributors in a public mailing list isn't reasonable or
>>> constructive. Call that "playing speech police" if you want, but I
>>> think that being offended or annoyed and saying so is perfectly
>>> reasonable.
>>>
>> Will all due respect, it's sometimes unpredictable what kind of wording
>> Anglo-Saxons will take as an insult, as there's lot of obsequiosity
>> there that doesn't exist in other cultures. To me, "not give a damn"
>> reads like a familiar version of "not care about something", but
>> apparently it can be offensive.
>>
> Confirm, never meant this as an insult.
>
> I had to use emotional language to drive the point home that it's not some
> nitpick, it really causes people serious trouble (I lost a source of
> income, for the record).
> Without the emotional impact, my message could easily be ignored as some
> noise not worth attention. This time, it's just too damn important to allow
> this possibility.
>
> With respect, I would say you CHOSE to use emotional language. I don't see
that much indication that its absence had failed to produce responses,
though they may not have been the responses you wanted.

Unfortunately the developers are rather too used to this kind of gratuitous
abuse and so many of them may have overlooked your detailed analysis of the
issues you were experiencing, since constructive contributions don't
normally accompany such rants.

The module being abandoned and unused is truly the only explanation I could
> think of when seeing that glaring bugs have stayed unfixed for 15 years (an
> infinity in IT), in an actively developed and highly used software.
> This may be flattering for my ego, but if the module really is in any
> production use to speak of, then in all these years, with all this
> humongous user base, someone, somewhere in the world, at some point, should
> have looked into this. I don't even program in C professionally, yet was
> able to diagnose it and make a PR!
>
> ​I think the fact that alarm bells haven't clanged is likely a product of
​tkinter's relatively small user base, perhaps amplified by dwindling
availability of "GYU in one thread" lore. Anyway they have certainly
clanged now.

---
>
> I'll make a PR with the doc warning as Guido suggested unless there are
> any better ideas.
>
> ​In the absence of other actions this would be a good first step. Thank
you.
​


> Meanwhile, I'd really appreciate any response to my other message -- it is
> about actually fixing the issue, and I do need feedback to be able to
> proceed.
> No need to delve all the way in and give an official authorization or
> something. I'm only looking for an opinion poll on which redesign option
> (if any) looks like the most reasonable way to proceed and/or in line with
> the big picture (the last one -- to provide a unifying vision -- is _the_
> job of a BDFL IIRC).
>

​I wouldn't presume to tell Guido his job, given that I've never done it
and wouldn't be capable of it. Do you want the ​£5 opinion poll or the £10
opinion poll?

Let's hope nobody here wants an argument ;-)

regards
 Steve
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20180503/ddc9334e/attachment.html>


More information about the Python-Dev mailing list