[Python-Dev] Re: My take on multiple interpreters (Was: Should we be making so many changes in pursuit of PEP 554?)

2020-06-19 Thread Jim J. Jewett
There are the usual concurrency problems of "read a value, change it, store it 
back without checking whether it already changed".  The only thing special 
about lifecycle happens at refcount 0, which should not happen when more than 
one interpreter has a reference.

Similarly, C code can mess things up if it does something unsupported -- but 
that is already the case.  C code *could* set the refcount to something random, 
but that wouldn't be considered a bug in python, because there isn't much 
python can do to prevent it -- and that doesn't change with a second 
interpreter.
___
Python-Dev mailing list -- python-dev@python.org
To unsubscribe send an email to python-dev-le...@python.org
https://mail.python.org/mailman3/lists/python-dev.python.org/
Message archived at 
https://mail.python.org/archives/list/python-dev@python.org/message/XANKD3QYOH5KON2UVYY534EMKUB7O7SZ/
Code of Conduct: http://python.org/psf/codeofconduct/


[Python-Dev] Re: How to specify optional support of arguments

2020-06-19 Thread Jim J. Jewett
Even without platform differences, limits on the value of parameters really 
ought to be in the docstring, which is available to inspect.  If you're asking 
for a more specific convention that could actually be used, that still probably 
still needs to be written.
___
Python-Dev mailing list -- python-dev@python.org
To unsubscribe send an email to python-dev-le...@python.org
https://mail.python.org/mailman3/lists/python-dev.python.org/
Message archived at 
https://mail.python.org/archives/list/python-dev@python.org/message/KJBWGYKMSMQPQOIKGYAON7CHEXS5S6J6/
Code of Conduct: http://python.org/psf/codeofconduct/


[Python-Dev] Summary of Python tracker Issues

2020-06-19 Thread Python tracker

ACTIVITY SUMMARY (2020-06-12 - 2020-06-19)
Python tracker at https://bugs.python.org/

To view or respond to any of the issues listed below, click on the issue.
Do NOT respond to this message.

Issues counts and deltas:
  open7476 (+29)
  closed 45305 (+47)
  total  52781 (+76)

Open issues with patches: 3026 


Issues opened (61)
==

#39949: truncating match in regular expression match objects repr
https://bugs.python.org/issue39949  reopened by eric.smith

#40890: Dict views should be introspectable
https://bugs.python.org/issue40890  reopened by serhiy.storchaka

#40964: Connection to IMAP server cyrus.andrew.cmu.edu hangs
https://bugs.python.org/issue40964  opened by christian.heimes

#40965: Segfault when importing unittest module via C API
https://bugs.python.org/issue40965  opened by The Comet

#40967: asyncio.Task.all_tasks() and asyncio.Task.current_task() must 
https://bugs.python.org/issue40967  opened by remi.lapeyre

#40968: urllib does not send http/1.1 ALPN extension
https://bugs.python.org/issue40968  opened by pmenzel

#40970: Error in Python Datamodel Documentation
https://bugs.python.org/issue40970  opened by chrisyeh96

#40971: Documentation still mentions 'u' string formatting option
https://bugs.python.org/issue40971  opened by gphemsley

#40974: possible optimization: SHRINK_STACK(n)
https://bugs.python.org/issue40974  opened by shrink_stack

#40975: contextlib.AsyncExitStack enter_async_context and aclose shoul
https://bugs.python.org/issue40975  opened by naglis

#40977: asyncio.trsock.TransportSocket says some APIs will be prohibit
https://bugs.python.org/issue40977  opened by ronaldoussoren

#40978: Document that typing.SupportsXXX protocols are runtime checkab
https://bugs.python.org/issue40978  opened by ramalho

#40979: typing module docs: keep text, add subsections
https://bugs.python.org/issue40979  opened by ramalho

#40980: group names of bytes regexes are strings
https://bugs.python.org/issue40980  opened by matpi

#40982: copytree example in shutil
https://bugs.python.org/issue40982  opened by Alberto Torres Barrán

#40984: re.compile's repr truncates patterns at 200 characters
https://bugs.python.org/issue40984  opened by matpi

#40986: Async generators are not garbage collected
https://bugs.python.org/issue40986  opened by vytas

#40987: Add tests to test_interpreters to import C extension modules c
https://bugs.python.org/issue40987  opened by vstinner

#40988: singledispatchmethod significantly slower than singledispatch
https://bugs.python.org/issue40988  opened by CaselIT

#40989: [C API] Remove _Py_NewReference() and _Py_ForgetReference() fr
https://bugs.python.org/issue40989  opened by vstinner

#40990: Make http.server support SSL
https://bugs.python.org/issue40990  opened by remi.lapeyre

#40992: Wrong warning in asyncio debug mode
https://bugs.python.org/issue40992  opened by Alex Alex

#40994: Very confusing documenation for abc.Collections
https://bugs.python.org/issue40994  opened by Sydney Pemberton

#40995: reprlib.Repr.__init__ should accept arguments
https://bugs.python.org/issue40995  opened by remi.lapeyre

#40996: urllib should fsdecode percent-encoded parts of file URIs on U
https://bugs.python.org/issue40996  opened by mjacob

#40998: Compiler warnings in ubsan builds
https://bugs.python.org/issue40998  opened by christian.heimes

#40999: implicit-int-float-conversion warnings in time and math code
https://bugs.python.org/issue40999  opened by christian.heimes

#41000: IDLE: only allow single instance
https://bugs.python.org/issue41000  opened by epaine

#41001: Provide wrapper for eventfd
https://bugs.python.org/issue41001  opened by christian.heimes

#41002: HTTPResponse.read with amt is slow
https://bugs.python.org/issue41002  opened by bmerry

#41004: Hash collisions in IPv4Interface and IPv6Interface
https://bugs.python.org/issue41004  opened by nnewram

#41005: Permission denied: 'xdg-settings' when executing 'jupyter note
https://bugs.python.org/issue41005  opened by SBC King

#41007: test_importlib logs ResourceWarning: test_path.CommonTests.tes
https://bugs.python.org/issue41007  opened by vstinner

#41008: multiprocessing.Connection.poll raises BrokenPipeError on Wind
https://bugs.python.org/issue41008  opened by zanchey

#41009: @support.requires_*_version broken for classes
https://bugs.python.org/issue41009  opened by christian.heimes

#41010: email.message.EmailMessage.get_body
https://bugs.python.org/issue41010  opened by patrick totzke

#41011: [venv] record which executable and command were used to create
https://bugs.python.org/issue41011  opened by brett.cannon

#41012: Some code comments refer to removed initfsencoding()
https://bugs.python.org/issue41012  opened by mjacob

#41013: test_os.test_memfd_create() fails on AMD64 FreeBSD Shared 3.x
https://bugs.python.org/issue41013  opened by vstinner

#41014: warning: 'sqlite3_trace' is deprecated
https://bugs.python.org/issue41014  opened by svaddi

#41015: wa

[Python-Dev] Re: Accepting PEP 618: zip(strict=True)

2020-06-19 Thread Serhiy Storchaka

19.06.20 02:57, Guido van Rossum пише:
On Thu, Jun 18, 2020 at 2:36 PM Eric Fahlgren > wrote:


We've implemented the new zip in our sitecustomize.py, and think the
keyword makes it easier.  I've instructed our development staff to
examine all use of zip as they come across them and add either
"strict=True" or "strict=False" when they've determined which is
appropriate.  Any zip calls without an explicit "strict=" will be
deemed "unknown" and requiring further investigation.


That's actually a really nice validation of the choice to use a keyword 
-- none of the other options debated (which were all variations on "give 
the alternate behavior a different name") would offer the opportunity to 
state "I've thought about it and it's definitely okay that the iterables 
have different lengths at this call site." Sure, in most places this 
would just look redundant, but in large corporate code bases that's 
exactly the kind of thing that people like to do.


I did not participate in the recent debates, but in the initial 
discussion it was proposed to add zip_equal() and zip_shortest() as an 
alias of zip() (with possibility of changing the behavior of zip() in 
distant future).


There are several advantages of a different name over a boolean keyword 
argument.


1. It is easier to search in the code.
2. It is easier to replace.
3. It looks more distinguishable.
4. It is faster to call function with positional arguments that with 
keyword arguments (at the level of bytecode and at the level of parsing 
arguments).

5. And the implementation is simpler.

Of course the ship is already sailed, but I was surprised that the 
keyword variant won, while it was not popular initially.

___
Python-Dev mailing list -- python-dev@python.org
To unsubscribe send an email to python-dev-le...@python.org
https://mail.python.org/mailman3/lists/python-dev.python.org/
Message archived at 
https://mail.python.org/archives/list/python-dev@python.org/message/NIT7I6SIXBXUBR3HUAW7DLMAQUYUPHM6/
Code of Conduct: http://python.org/psf/codeofconduct/