[issue42367] Restore os.makedirs ability to apply mode to all directories created

2021-05-04 Thread JustAnotherArchivist


Change by JustAnotherArchivist :


--
nosy: +JustAnotherArchivist

___
Python tracker 
<https://bugs.python.org/issue42367>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue43634] Extensions build does not respect --jobs setting

2021-03-26 Thread JustAnotherArchivist


New submission from JustAnotherArchivist :

The extension building does not respect the --jobs option passed to make. 
Specifically, in that step, `python setup.py build` always spawns as many gcc 
processes as there are CPU cores available regardless of that option. This 
caused problems for me because I have a VM that sees all host machine CPU cores 
but only has a limited amount of RAM. Despite running `make -j 4`, many more 
gcc processes are spawned, and this immediately causes memory starvation and a 
system freeze after a few seconds.

The reason for this is that setup.py blindly enables parallelism in the 
extension compilation if '-j' appears in the MAKEFLAGS at 3.9.2/setup.py:355. 
Later on, distutils uses os.cpu_count to set the worker count, i.e. the '-j' 
*value* is ignored. This behaviour was first introduced with #5309 as far as I 
can see, though I haven't tested anything other than version 3.9.2.

Hacky workaround: patching the above setup.py line to `self.parallel = 4`.

Cf. https://github.com/pyenv/pyenv/issues/1857

--
components: Build
messages: 389558
nosy: JustAnotherArchivist
priority: normal
severity: normal
status: open
title: Extensions build does not respect --jobs setting
type: resource usage
versions: Python 3.9

___
Python tracker 
<https://bugs.python.org/issue43634>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue18233] SSLSocket.getpeercertchain()

2020-08-19 Thread JustAnotherArchivist


Change by JustAnotherArchivist :


--
nosy: +JustAnotherArchivist

___
Python tracker 
<https://bugs.python.org/issue18233>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue32528] Change base class for futures.CancelledError

2020-07-14 Thread JustAnotherArchivist


Change by JustAnotherArchivist :


--
pull_requests: +20619
pull_request: https://github.com/python/cpython/pull/21474

___
Python tracker 
<https://bugs.python.org/issue32528>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue32528] Change base class for futures.CancelledError

2020-07-10 Thread JustAnotherArchivist


JustAnotherArchivist  added the comment:

As another datapoint, this also broke some of my code on 3.8 because I was 
using `concurrent.futures.CancelledError` rather than `asyncio.CancelledError` 
to handle cancelled futures. And I'm certainly not the only one to have done 
this given that it's mentioned in at least two Stack Overflow answers: 
https://stackoverflow.com/a/38655063 and https://stackoverflow.com/a/36277556

While I understand the rationale behind this change, it would've been good to 
include this inheritance detail in the 3.8 release notes.

------
nosy: +JustAnotherArchivist

___
Python tracker 
<https://bugs.python.org/issue32528>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41275] Clarify whether Futures can be awaited multiple times

2020-07-10 Thread JustAnotherArchivist


New submission from JustAnotherArchivist :

While the situation is clear regarding coroutine objects (#25887), as far as I 
can see, the documentation doesn't specify whether asyncio.Futures can be 
awaited multiple times. The code has always (at least since the integration 
into CPython) allowed for it since Future.__await__ simply returns 
Future.result() if it is already done. Is this guaranteed/intended behaviour, 
as also implied by some of the comments on #25887, or is it considered an 
implementation detail?

Here are the only two things I found in the documentation regarding this:

> library/asyncio-task: When a Future object is awaited it means that the 
> coroutine will wait until the Future is resolved in some other place.

> library/asyncio-future: Future is an awaitable object. Coroutines can await 
> on Future objects until they either have a result or an exception set, or 
> until they are cancelled.

Neither of these say anything about awaiting a Future that is already resolved, 
i.e. has a result, has an exception, or was cancelled.

If this is intended to be guaranteed, it should be mentioned in the Future 
documentation. If it is considered an implementation detail, it's probably not 
necessary to explicitly mention this anywhere, but it might be a good idea to 
add another line to e.g. the asyncio.wait example on how to correctly retrieve 
the result of an already-awaited Future/Task.

--
components: asyncio
messages: 373504
nosy: JustAnotherArchivist, asvetlov, yselivanov
priority: normal
severity: normal
status: open
title: Clarify whether Futures can be awaited multiple times
type: enhancement

___
Python tracker 
<https://bugs.python.org/issue41275>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com