[issue39142] logging.config.dictConfig will convert namedtuple to ConvertingTuple

2019-12-27 Thread Henrique


New submission from Henrique :

While passing

{
"version": 1,
"disable_existing_loggers": False,
"formatters": {
"verbose": {"format": "%(levelname)s %(asctime)s %(module)s 
%(message)s"}
},
"handlers": {
"stackdriver": {
"class": "google.cloud.logging.handlers.CloudLoggingHandler",
"client": client,
"resource": resource,
},
},
"root": {"level": "INFO", "handlers": ["stackdriver"]},
}

to logging.config.dictConfig it will convert resource, which is a namedtuple to 
ConvertingTuple, this will make 
google.cloud.logging.handlers.CloudLoggingHandler break down the line.

I am having to create a wrapper class like 

class Bla:
resource = logging.resource.Resource(
type="cloud_run_revision",
labels={},
)

def _to_dict(self):
return self.resource._to_dict()

to go around this

--
messages: 358914
nosy: hcoura
priority: normal
severity: normal
status: open
title: logging.config.dictConfig will convert namedtuple to ConvertingTuple
type: crash
versions: Python 3.7

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



[issue39142] logging.config.dictConfig will convert namedtuple to ConvertingTuple

2019-12-28 Thread Henrique


Henrique  added the comment:

Sorry for not sending a proper reproducible script when submitting the issue. 
End of the day and quite frustrated with the bug, anyway, I attached a full 
script that will show the error.

This is the custom handler I used:

class MyHandler(logging.StreamHandler):
def __init__(self, resource, *args, **kwargs):
super().__init__(*args, **kwargs)
self.resource: namedtuple = resource

def emit(self, record):
record.msg += f" {self.resource.type}"
return super().emit(record)


self.resource.type will throw and AttributeError when logging, because resource 
gets converted from a namedtuple to a ConvertingTuple.

--
Added file: https://bugs.python.org/file48806/bug.py

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



[issue9305] Don't use east/west of UTC in date/time documentation

2010-11-20 Thread Henrique Bastos

Henrique Bastos  added the comment:

Here goes a patch to replace east/west references on datetime documentation.

As spoken with fdrake we think the datetime documentation could be improved 
extracting the timezone subclassing details to specific section. We'll be 
filling a new issue for that patch.

--
nosy: +Rodolpho.Eckhardt, henriquebastos

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



[issue9305] Don't use east/west of UTC in date/time documentation

2010-11-20 Thread Henrique Bastos

Henrique Bastos  added the comment:

Here goes a patch to replace east/west references on datetime documentation.

As spoken with fdrake we think the datetime documentation could be improved 
extracting the timezone subclassing details to specific section. We'll be 
filling a new issue for that patch.

--
keywords: +patch
Added file: http://bugs.python.org/file19694/datetime_doc_remove_east_west.diff

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



[issue9305] Don't use east/west of UTC in date/time documentation

2010-11-20 Thread Henrique Bastos

Henrique Bastos  added the comment:

To clarify:

1) "we" means henriquebastos, rbp, Rodolpho.Eckhardt.

2) Mentioning fdrake I was trying to say that we followed his suggestion to 
only submit the specific changes on this patch, leaving further documentation 
changes to another issue.

Sorry about any inconvenience.

--

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



[issue1745035] DoS smtpd vulnerability

2010-11-21 Thread Henrique Bastos

Changes by Henrique Bastos :


--
nosy: +henriquebastos

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



[issue2236] Distutils' mkpath implementation ignoring the "mode" parameter

2008-03-04 Thread Henrique Romano

New submission from Henrique Romano:

The default value for mkpath's mode parameter is 0777 but it isn't used
at any place; attached is a patch that just pass the parameter to
os.mkdir call, this seems to fix the problem.

--
components: Library (Lib)
files: python2.5-distutils_mkpath_filemode.v1.diff
keywords: patch
messages: 63259
nosy: henrique
severity: normal
status: open
title: Distutils' mkpath implementation ignoring the "mode" parameter
type: resource usage
versions: Python 2.5
Added file: 
http://bugs.python.org/file9605/python2.5-distutils_mkpath_filemode.v1.diff

__
Tracker <[EMAIL PROTECTED]>
<http://bugs.python.org/issue2236>
__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue32732] LoggingAdapter ignores extra kwargs of Logger#log()

2021-06-30 Thread Samuel Henrique

Samuel Henrique  added the comment:

Hello Vinay Sajip,

I would like to kindly ask you to please reconsider and give your thoughts on 
my description of the issue here.

Let me try to work based on your last reply:
> ...has been around since Jan 2008, and it seems that no one in that time has 
> raised this as a must-have

This is a fair statement and it certainly shows that this is not a big enough 
issue for enough people to complain about. I believe it falls into the 
"papercut" category of issues and people just override the "process" method 
when they hit it.

> 1. If you want to pass different kwargs in every time, use a logger.
> 2. If you want to pass particular contextual information in which fits the 
> "extra" parameter approach, use a LoggerAdapter.
> 3. If that doesn't do it for you, subclass LoggerAdapter and implement what 
> you need.

We could improve the logging library by removing the limitation #1 with no 
apparent downsides, so please bear with me for my example below.

> You haven't really explained why you need this to work in this particular 
> way, so I suspect it could be an XY problem.

So Steffen Schuldenzucker already provided an use case, I have one which is 
very similar and hopefully easily recognizable as a common (or at least not 
rare) usage pattern of logging:

As a logging user, I would like to have a set of extra keys in the formatter, 
some required and some optional, such that I can make use of LoggerAdapter to 
set the constant extra values only once, and still pass the dynamic extra 
values on each "log" method.

Pseudo code:
# assume logger is a logger object with a formatter that allows for dynamic 
extra keys (dynamic = optional extra keys)
adapted_logger = logging.LoggerAdapter(logger, extra={"invocation_id": 
"invocation_id_value"})
adapted_logger.info("test", extra={"resource_owner": "resource_owner_value"})

In this example I expect the log entry to contain both extra keys: 
"invocation_id" and "resource_owner". invocation_id is reused in every log 
entry but resource_owner changes based on what's being processed.

For reference, this is an example of a Formatter which allows for dynamic extra 
keys and formats log entries to json serialized strings:

class ExtraFormatter(logging.Formatter):
"""
Dynamically adds any extra key to a json-like output.
"""

def format(self, record: logging.LogRecord) -> str:
default_attrs = vars(
logging.LogRecord(None, None, None, None, None, None, None)
).keys()
extras = set(record.__dict__.keys()) - set(default_attrs)

log_items = {"message": "%(message)s"}
for attr in extras:
log_items[attr] = f"%({attr})s"
format_str = json.dumps(log_items)
self._style._fmt = format_str

return super().format(record)

The reason I believe this is a papercut type of issue is that I would expect 
the Formatter to control whether or not to show the extra key, not the 
LoggerAdapter. It is counter intuitive to me that the LoggerAdapter would 
silently drop any extra keys provided to the log methods, and I would expect 
that LoggerAdapter would at least not allow for the parameter to be passed then 
(I don't like this alternative either, but it removes the feeling of being 
tricked).

Again, this is a problem that can easily be workaround-ed by overriding the 
"process" method. But there seems to be a very good opportunity to improve the 
Adapter instead and avoid letting other people hit this issue. I'm curious 
about your opinion on any downsides to this change as I couldn't come up with 
anything.

There is also a problem with the current documentation, in which the 
LoggerAdapter doc led me (and other people, when we had to debug this issue) to 
believe the Adapter would not silently drop the extra parameters. The only 
place where this behavior is mentioned is in the logging-cookbook, in the 
following part:
"Of course, if you had passed an ‘extra’ keyword argument in the call to the 
adapter, it will be silently overwritten."

The "Of course" part is a little bit weird cause it implies it's an obvious 
behavior, whereas the sentence just before this one says: "The default 
implementation of this method leaves the message alone, but inserts an ‘extra’ 
key in the keyword argument whose value is the dict-like object passed to the 
constructor.". Note how it uses the word "inserts" instead of "overrides".

So the documentation has to be updated, either to mention this behavior in the 
LoggerAdapter documentation or to remove the part about extra being silently 
overwritten in the cookbook, the only place this is mentioned (if this gets 
changed).

[issue41546] pprint() gives exception when ran from pythonw

2020-08-15 Thread Henrique Gj


Henrique Gj  added the comment:

> Debug prints should not crash a program.

> 'Not a bug'

wait

--
nosy: +henriquesdj0

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



[issue33081] multiprocessing Queue leaks a file descriptor associated with the pipe writer

2018-03-15 Thread Henrique Andrade

New submission from Henrique Andrade :

A simple example like such demonstrates that one of the file descriptors 
associated with the underlying pipe will be leaked:

>>> from multiprocessing.queues import Queue
>>> x = Queue()
>>> x.close()

Right after the queue is created we get (assuming the Python interpreter is 
associated with pid 8096 below):

> ll /proc/8096/fd
total 0
dr-x-- 2 hcma hcma  0 2018-03-15 14:03:23.210089578 -0400 .
dr-xr-xr-x 9 hcma hcma  0 2018-03-15 14:03:23.190089760 -0400 ..
lrwx-- 1 hcma hcma 64 2018-03-15 14:03:33.145998954 -0400 0 -> /dev/pts/25
lrwx-- 1 hcma hcma 64 2018-03-15 14:03:33.145998954 -0400 1 -> /dev/pts/25
lrwx-- 1 hcma hcma 64 2018-03-15 14:03:23.210089578 -0400 2 -> /dev/pts/25
lr-x-- 1 hcma hcma 64 2018-03-15 14:03:33.145998954 -0400 3 -> 
pipe:[44076946]
l-wx-- 1 hcma hcma 64 2018-03-15 14:03:33.145998954 -0400 4 -> 
pipe:[44076946]
lr-x-- 1 hcma hcma 64 2018-03-15 14:03:33.145998954 -0400 5 -> /dev/urandom

After close():

> ll /proc/8096/fd
total 0
dr-x-- 2 hcma hcma  0 2018-03-15 14:03:23.210089578 -0400 .
dr-xr-xr-x 9 hcma hcma  0 2018-03-15 14:03:23.190089760 -0400 ..
lrwx-- 1 hcma hcma 64 2018-03-15 14:03:33.145998954 -0400 0 -> /dev/pts/25
lrwx-- 1 hcma hcma 64 2018-03-15 14:03:33.145998954 -0400 1 -> /dev/pts/25
lrwx-- 1 hcma hcma 64 2018-03-15 14:03:23.210089578 -0400 2 -> /dev/pts/25
lr-x-- 1 hcma hcma 64 2018-03-15 14:03:33.145998954 -0400 3 -> 
pipe:[44076946]
l-wx-- 1 hcma hcma 64 2018-03-15 14:03:33.145998954 -0400 4 -> 
pipe:[44076946]
lr-x-- 1 hcma hcma 64 2018-03-15 14:03:33.145998954 -0400 5 -> /dev/urandom

--
components: Library (Lib)
messages: 313899
nosy: Henrique Andrade
priority: normal
severity: normal
status: open
title: multiprocessing Queue leaks a file descriptor associated with the pipe 
writer
versions: Python 2.7

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



[issue33081] multiprocessing Queue leaks a file descriptor associated with the pipe writer

2018-03-15 Thread Henrique Andrade

Henrique Andrade  added the comment:

Correcting my original - after close():

> ll /proc/8096/fd
total 0
dr-x-- 2 hcma hcma  0 2018-03-15 14:03:23.210089578 -0400 .
dr-xr-xr-x 9 hcma hcma  0 2018-03-15 14:03:23.190089760 -0400 ..
lrwx-- 1 hcma hcma 64 2018-03-15 14:03:33.145998954 -0400 0 -> /dev/pts/25
lrwx-- 1 hcma hcma 64 2018-03-15 14:03:33.145998954 -0400 1 -> /dev/pts/25
lrwx-- 1 hcma hcma 64 2018-03-15 14:03:23.210089578 -0400 2 -> /dev/pts/25
l-wx-- 1 hcma hcma 64 2018-03-15 14:03:33.145998954 -0400 4 -> 
pipe:[44076946]
lr-x-- 1 hcma hcma 64 2018-03-15 14:03:33.145998954 -0400 5 -> /dev/urandom

--

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



[issue33081] multiprocessing Queue leaks a file descriptor associated with the pipe writer

2018-03-15 Thread Henrique Andrade

Henrique Andrade  added the comment:

Pablo, but there is no way to close the other side.

Indeed, if you look in the implementation, you will see that the writer file 
descriptor can't be closed.

--

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



[issue33081] multiprocessing Queue leaks a file descriptor associated with the pipe writer

2018-03-15 Thread Henrique Andrade

Henrique Andrade  added the comment:

Unfortunately this is not the case.

I will shrink my repro down to a more manageable size and post it here.

--

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



[issue33081] multiprocessing Queue leaks a file descriptor associated with the pipe writer

2018-03-17 Thread Henrique Andrade

Henrique Andrade  added the comment:

Here is the repro (I am running this on Ubuntu 16 with the stock Python 
 version 2.7.12):



#!/usr/bin/env python  

import os  
import subprocess   
import sys

from multiprocessing import Process, Queue  
from multiprocessing.queues import _sentinel


def run_external_application(application_name, queue):  
"""Runs an Oxygen application""" 
exit_status = 10
queue.put(exit_status) 
# none of the following help as far as making the pipe go away   
queue.put(_sentinel) 
queue.close() 
  

def run(application_name="external_application"):   

print "Starting '%s'" % application_name


  
queue = Queue() 
  
application_process = Process(target=run_external_application, 
args=(application_name, queue))  

  
application_process.start() 
 
try: 
application_process.join() 
except KeyboardInterrupt:  
application_process.terminate()  
   
exit_status = queue.get()   
 
print "exit status", exit_status
 

   
queue.close()   
  
# the deletion below has no effect  

del queue   

# the only thing that will make the pipe go away is to uncomment the below 
statement  
# queue._writer.close() 



print "\nthe '%s' application finished with exit status '%s'...\n" % 
(application_name, exit_status)  
 
print "Note the file descriptor #4 below" 
subprocess.call(["ls", "-la", "/proc/%d/fd" % os.getpid()])  

return exit_status  

   

   
if __name__ == "__main__":  
   
print "starting ", os.getpid()  
   
exit_status = run() 
   
sys.exit(exit_status)

--

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



[issue33081] multiprocessing Queue leaks a file descriptor associated with the pipe writer

2018-03-18 Thread Henrique Andrade

Henrique Andrade  added the comment:

@pablo: I am using Python 2.7.12 (distributed with Ubuntu 16), what are you 
using? This might explain the difference between what we see.

Yet, irrespective of this difference, imho, it would be a better design to have 
"close" actually closing the underlying resources.

In general, if one has to delete and/or invoke the garbage collector on an 
object, it's an indication that the design needs a bit of polish. Just picture 
the small scenario I described amplified to a situation where a large number of 
queues is used, which is perhaps an artificial scenario, but one would end up 
with a bunch of file descriptors hanging around for no reason.

This is what files and sockets, for example, would do.

--

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



[issue33081] multiprocessing Queue leaks a file descriptor associated with the pipe writer

2018-03-18 Thread Henrique Andrade

Henrique Andrade  added the comment:

I don't want to "close the pipes but maintain the queue alive" - I want to
terminate the queue and make sure that no resources are leaked. It's that
simple.

When one closes a file or a socket, there is no underlying OS resource
being held. That's what I would like to have here too.

Apparently the design does not support that and, if that's the case, it's
fine, it's just that it goes against most of the norm afaict.

On Sun, Mar 18, 2018 at 12:46 PM, Pablo Galindo Salgado <
rep...@bugs.python.org> wrote:

>
> Pablo Galindo Salgado  added the comment:
>
> Notice that the documentation for close says:
>
> > Indicate that no more data will be put on this queue by the current
> process. The background thread will quit once it has flushed all buffered
> data to the pipe. This is called automatically when the queue is garbage
> collected.
>
> The method does not promise to close any pipe, just "Indicate that no more
> data will be put on this queue by the current process". Closing prematurely
> the writer side could lead to issues. I still do not understand why you
> would want to close the pipes but maintain the queue alive.
>
> I could be missing something, so let's see if other people think
> differently about this.
>
> --
>
> ___
> Python tracker 
> <https://bugs.python.org/issue33081>
> ___
>

-- 

Henrique Andrade | +1-530-426-2123 | h...@unscrambl.com |
https://unscrambl.com

--

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



[issue33081] multiprocessing Queue leaks a file descriptor associated with the pipe writer

2018-03-18 Thread Henrique Andrade

Henrique Andrade  added the comment:

Your comparison is not correct.

RAII in C++ ensures that, on object destruction, resources that have been
acquired will be closed and deallocated.

The closest analogy in Python is the use of a context manager, which, btw,
a Queue does not provide.

Indeed, such a design (with a context manager) would have been cleaner
because, on exit, both pipes would have been closed and file descriptors
would not hang around.

And, yes, that is what I'd prefer too - but one can't have everything. :)

With the current design, which is more akin to Java, one is exposed to the
vagaries of the garbage collector. Note that, even in Java,
try-with-resources and the auto-closeable interface would also take care of
this. In fact, most the Java classes that require external resources have
migrated to this model.

For these reasons, I think the design could be substantially improved
(i.e., with a context manager or with the provision of a method that really
terminates the queue, so resources are properly closed immediately).

On Sun, Mar 18, 2018 at 1:12 PM, Pablo Galindo Salgado <
rep...@bugs.python.org> wrote:

>
> Pablo Galindo Salgado  added the comment:
>
> >"I want to terminate the queue and make sure that no resources are leaked.
>
> Then you don't need to do anything special, those will be cleared on
> object destruction. This is not an unusual pattern even in other languages.
> For example, RAII in C++ is one of the most used patterns for acquiring
> resources and that works cleaning those resources on object destruction.
>
> --
>
> ___
> Python tracker 
> <https://bugs.python.org/issue33081>
> ___
>

-- 

Henrique Andrade | +1-530-426-2123 | h...@unscrambl.com |
https://unscrambl.com

--

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



[issue33081] multiprocessing Queue leaks a file descriptor associated with the pipe writer

2018-03-18 Thread Henrique Andrade

Henrique Andrade  added the comment:

You're a missing the fact that in C++, there is no garbage collector. The
destructor both releases resources and deallocates memory.

There is no window between releasing resources and object destruction.

Python, while not exactly like Java, is similar to Java in the sense that
there is a window of time between an object no longer having a reference
and its being reaped by the garbage collector. During that window,
resources can be held even if no longer in use.

In extreme cases, a lot of these resources can be held (think hundreds of
Queues being created and closed in succession without an intervening GC
run), even if not used. Sure, at some point, they will be reaped, but it
might be a while.

And that's one of the reasons Python and Java have mechanisms to
acquire/release resources in a more timely fashion. Context managers in the
former and try-with-resources in the latter.

The mere presence of a proper close/shutdown method can make this work in
an improved way in the case of a Queue, allowing OS resources (pipes) to be
released in a more timely fashion.

But, sure, let's hear what the community thinks.

On Sun, Mar 18, 2018, 14:01 Pablo Galindo Salgado 
wrote:

>
> Pablo Galindo Salgado  added the comment:
>
> > RAII in C++ ensures that, on object destruction, resources that have
> been acquired will be closed and deallocated.
>
> Which is exactly what is happening here. When the queue gets destroyed
> (because the reference count reaches 0 or because of the garbage collector)
> resources that have been acquired by the queue will be closed an
> deallocated.
>
> Sadly, I don't think I have anything different to apport to this
> discussion, so let's see what other people opinions are on this.
>
> Of course, feel free to start a thread on python-dev or python-ideas on
> how to improve the design. :)
>
> --
>
> ___
> Python tracker 
> <https://bugs.python.org/issue33081>
> ___
>

--

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



[issue33117] asyncio example uses non-existing/documented method

2018-03-21 Thread Henrique Fingler

New submission from Henrique Fingler :

In the documentation of asyncio.run_coroutine_threadsafe(coro, loop), in 
Section 19.5.3.6 
(https://docs.python.org/3/library/asyncio-task.html#asyncio.run_coroutine_threadsafe),
 the example code does the following:

future = asyncio.run_coroutine_threadsafe(coro, loop)
# Wait for the result with an optional timeout argument
assert future.result(timeout) == 3

 The problem is that the result method of a future, according to the 
documentation doesn't take parameters. It's in Section 19.5.3.4 
(https://docs.python.org/3.8/library/asyncio-task.html#asyncio.Future.done)

result()
Return the result this future represents.


 The same function is used in Section 18.5.9.3 
(https://docs.python.org/3/library/asyncio-dev.html#concurrency-and-multithreading)


 This error is present in all Python 3.* docs.

 From the asyncio source code 
(https://github.com/python/cpython/blob/master/Lib/asyncio/futures.py), we have 
this in the Future class definition:

class Future:
"""This class is *almost* compatible with concurrent.futures.Future.
Differences:
- This class is not thread-safe.
- result() and exception() do not take a timeout argument and
  raise an exception when the future isn't done yet.



So this example needs to be reworked, I'd do it if I knew more about asyncio. 
My ideas involve either using a add_done_callback with a flag or just busy 
waiting until future.done().

--
assignee: docs@python
components: Documentation
messages: 314223
nosy: Henrique Fingler, docs@python
priority: normal
severity: normal
status: open
title: asyncio example uses non-existing/documented method
versions: Python 3.5, Python 3.6, Python 3.7, Python 3.8

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



[issue1128] msilib.Directory.make_short only handles file names with a single dot in them

2009-05-02 Thread Henrique Baggio

Henrique Baggio  added the comment:

Sorry, I don't know how create a patch, but just change the line with 

parts = file.split(".") to parts = os.path.splitext(file)

and the problem is fixed.

--
nosy: +hnrqbaggio

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



[issue1128] msilib.Directory.make_short only handles file names with a single dot in them

2009-05-02 Thread Henrique Baggio

Henrique Baggio  added the comment:

I create a patch using the os.path.splitext function.

--
Added file: http://bugs.python.org/file13846/msilib.__init__.patch

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



[issue1128] msilib.Directory.make_short only handles file names with a single dot in them

2009-05-04 Thread Henrique Baggio

Henrique Baggio  added the comment:

@Amaury,

Sorry my mistake. I forgot splitext returns a tuple. =/

About your question, if the file name has less then 8 characters, then 
the function don't change it. Else, it return tha name with 8 chars.

e.g., make_short(foo.2.txt) returns FOO.2.TXT
and make_short(foo.longer_name.txt) returns FOO.LO~1.TXT

--

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



[issue25459] EAGAIN errors in Python logging module

2015-10-22 Thread Henrique Andrade

New submission from Henrique Andrade:

There is a particular bug we hit when using the Python logging module very 
consistently under the particular settings in which we run one of our 
applications.

We are using Python 2.7.10 on RHEL7/RHEL6/Ubuntu14.04.

Anyways, here is the symptom:

Traceback (most recent call last):
  File "/opt/continuum/anaconda/lib/python2.7/logging/__init__.py", line 880, 
in emit
stream.write(fs % msg)
IOError: [Errno 11] Resource temporarily unavailable

Here is the suggested fix:

26c26
< import sys, os, time, cStringIO, traceback, warnings, weakref, collections, 
errno
---
> import sys, os, time, cStringIO, traceback, warnings, weakref, collections
880,886c880
< while True:
<   try:
< stream.write(fs % msg)
<   break
< except IOError as e:
< if e.errno != errno.EAGAIN:
<  raise
---
> stream.write(fs % msg)

--
components: Extension Modules
messages: 253329
nosy: henrique_andrade
priority: normal
severity: normal
status: open
title: EAGAIN errors in Python logging module
versions: Python 2.7

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



[issue25459] EAGAIN errors in Python logging module

2015-10-22 Thread Henrique Andrade

Henrique Andrade added the comment:

The stream in this case (where I hit the bug) is just the console, but I
suspect the same issue will affect other streams too.

A key piece of information is that this is probably triggered by having a
custom SIGPIPE handler, which my particular application has.

When a SIGPIPE handler is in place, errors such as EAGAIN and EWOULDBLOCK
might be generated and the logging module wasn't resilient to it.

Here is the unified patch output:

11:00:38|sequoia|/opt/continuum/anaconda> diff -u
/opt/continuum/anaconda/pkgs/python-2.7.8-0/lib/python2.7/logging/__init__.py
/opt/continuum/anaconda/pkgs/python-2.7.8-1/lib/python2.7/logging/__init__.py
---
/opt/continuum/anaconda/pkgs/python-2.7.8-0/lib/python2.7/logging/__init__.py
2014-07-02
19:08:57.0 -0400
+++
/opt/continuum/anaconda/pkgs/python-2.7.8-1/lib/python2.7/logging/__init__.py
2015-09-22
13:57:39.196032267 -0400
@@ -23,7 +23,7 @@
 To use, simply 'import logging' and log away!
 """

-import sys, os, time, cStringIO, traceback, warnings, weakref, collections
+import sys, os, time, cStringIO, traceback, warnings, weakref,
collections, errno

 __all__ = ['BASIC_FORMAT', 'BufferingFormatter', 'CRITICAL', 'DEBUG',
'ERROR',
'FATAL', 'FileHandler', 'Filter', 'Formatter', 'Handler',
'INFO',
@@ -877,7 +877,13 @@
 #An extra encoding step seems to be needed.
 stream.write((ufs %
msg).encode(stream.encoding))
 else:
-stream.write(fs % msg)
+while True:
+try:
+stream.write(fs % msg)
+break
+except IOError as e:
+if e.errno != errno.EAGAIN:
+raise
 except UnicodeError:
 stream.write(fs % msg.encode("UTF-8"))
 self.flush()

On Thu, Oct 22, 2015 at 10:01 AM, STINNER Victor 
wrote:

>
> STINNER Victor added the comment:
>
> What is the type of the stream? Is is a pipe or a regular file? Or a
> socket?
>
> Can you please format the patch as an unified patch please?
>
> --
> nosy: +haypo
>
> ___
> Python tracker 
> <http://bugs.python.org/issue25459>
> ___
>

--

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



[issue25459] EAGAIN errors in Python logging module

2016-03-08 Thread Henrique Andrade

Henrique Andrade added the comment:

Vinay, apologies for the long time you took me to respond (the notification
was stuck in my Spam folder, thanks Gmail!). Indeed, both of your comments
are spot on. In my particular case, I ended up implementing what your first
suggestion alludes to (a retry capped by a maximum).

The reason for my reporting this is because the existing (mainlined)
implementation has shortcomings, which might be affecting others out there.

I contacted the module developer, but no response. So assuming we have a
consensus from whomever "owns" the module, I can volunteer to do a proper
patch.

On the issue of maximum retries, I would go with a reasonable
(configurable) max as well as a (configurable) back-off sleep.

On Sun, Feb 7, 2016 at 1:57 PM, Vinay Sajip  wrote:

>
> Vinay Sajip added the comment:
>
> The problem with your suggested fix is that if you keep getting EAGAIN,
> the handler will appear to hang. If you want to suggest that maybe we limit
> the number of tries, then what number of retries would you pick, and why?
> Also, a caller might want to know about EAGAIN, so I'm not sure you'd want
> to (effectively) swallow it in the handler.
>
> Perhaps a different strategy (than just trying for ever) would be better.
> If you know the application is unusual in having a SIGPIPE handler and you
> think this is a contributory factor, why not just subclass the handler, add
> a more resilient emit() and use that in your application?
>
> --
> status: open -> pending
>
> ___
> Python tracker 
> <http://bugs.python.org/issue25459>
> ___
>

-- 

Henrique Andrade | +1-530-426-2123 | h...@unscrambl.com |
http://unscrambl.com

--
status: pending -> open

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



[issue46417] Clear static types in Py_Finalize() for embedded Python

2022-01-18 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
nosy: +phsilva

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



[issue2236] Distutils' mkpath implementation ignoring the "mode" parameter

2010-09-14 Thread Carlos Henrique Romano

Carlos Henrique Romano  added the comment:

Patch updated, now it includes test.

--
nosy: +chromano
Added file: 
http://bugs.python.org/file18885/python-distutils_mkpath_filemode-v1.diff

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



[issue2236] Distutils' mkpath implementation ignoring the "mode" parameter

2010-09-14 Thread Carlos Henrique Romano

Changes by Carlos Henrique Romano :


Removed file: 
http://bugs.python.org/file18885/python-distutils_mkpath_filemode-v1.diff

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



[issue2236] Distutils' mkpath implementation ignoring the "mode" parameter

2010-09-14 Thread Carlos Henrique Romano

Carlos Henrique Romano  added the comment:

Improving tests

--
Added file: 
http://bugs.python.org/file18887/python-distutils_mkpath_filemode-v2.diff

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



[issue2236] Distutils' mkpath implementation ignoring the "mode" parameter

2010-09-18 Thread Carlos Henrique Romano

Carlos Henrique Romano  added the comment:

Updating test in order to consider umask, this is supposed to fix buildbot 
issues.

--
Added file: 
http://bugs.python.org/file18927/python-distutils_mkpath_filemode-test-update.diff

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



[issue2459] speedup loops with better bytecode

2008-03-27 Thread P. Henrique Silva

Changes by P. Henrique Silva <[EMAIL PROTECTED]>:


--
nosy: +phsilva

__
Tracker <[EMAIL PROTECTED]>
<http://bugs.python.org/issue2459>
__
___
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue36876] Global C variables are a problem.

2019-08-21 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
nosy: +phsilva

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



[issue36854] GC operates out of global runtime state.

2019-08-21 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
nosy: +phsilva

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



[issue24554] GC should happen when a subinterpreter is destroyed

2019-08-21 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
nosy: +phsilva

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



[issue36877] [meta] Move fields from _PyRuntimeState to PyInterpreterState.

2019-08-21 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
nosy: +phsilva

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



[issue36710] Pass _PyRuntimeState as an argument rather than using the _PyRuntime global variable

2019-08-21 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
nosy: +phsilva

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



[issue34690] Store startup modules as C structures for 20%+ startup speed improvement

2019-08-21 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
nosy: +phsilva

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



[issue37955] mock.patch incorrect reference to Mock

2019-08-26 Thread Paulo Henrique Silva


New submission from Paulo Henrique Silva :

When explaining the usage of keyword arguments on mock.patch:

```
patch() takes arbitrary keyword arguments. These will be passed to the Mock (or 
new_callable) on construction.
```

default new_callable is MagicMock and it should be mentioned here instead of 
Mock (even tough MagickMock inherits from it).

--
assignee: docs@python
components: Documentation
messages: 350537
nosy: docs@python, phsilva
priority: normal
severity: normal
status: open
title: mock.patch incorrect reference to Mock
versions: Python 3.9

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



[issue37955] mock.patch incorrect reference to Mock

2019-08-26 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
keywords: +patch
pull_requests: +15204
stage:  -> patch review
pull_request: https://github.com/python/cpython/pull/15521

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



[issue38116] Make select module PEP-384 compatible

2019-09-18 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
nosy: +phsilva

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



[issue44135] issubclass documentation doesn't explain tuple semantic

2021-05-14 Thread João Henrique Pimentel

New submission from João Henrique Pimentel :

The second parameter (classinfo) of the issubclass built-in function can be a 
Tuple and, starting from 3.10, it can be a Union Type as well.

The documentation states that in these cases "every entry in classinfo will be 
checked", but it doesn't explain if the check is AND (all) or OR (any). In 
contrast, the documentation of isinstance is clear: "return True if object is 
an instance of *any* of the types".


Here's a possible rewriting that reduces the odds of incorrect interpretations, 
based on the text of isinstance:
ORIGINAL: "in which case every entry in classinfo will be checked"
PROPOSAL: "in which case return True if class is a subclass of any entry in 
classinfo"

--
assignee: docs@python
components: Documentation
messages: 393684
nosy: docs@python, joaozinho
priority: normal
severity: normal
status: open
title: issubclass documentation doesn't explain tuple semantic
type: enhancement
versions: Python 3.10, Python 3.11, Python 3.6, Python 3.7, Python 3.8, Python 
3.9

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



[issue45544] Close 2to3 issues and list them here

2021-10-20 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
nosy: +phsilva
nosy_count: 5.0 -> 6.0
pull_requests: +27387
pull_request: https://github.com/python/cpython/pull/18654

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



[issue38500] Provide a way to get/set PyInterpreterState.frame_eval without needing to access interpreter internals

2019-11-28 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
nosy: +phsilva

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



[issue10915] Make the PyGILState API compatible with multiple interpreters

2019-12-09 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
nosy: +phsilva

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



[issue15751] Support subinterpreters in the GIL state API

2019-12-09 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
nosy: +phsilva

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



[issue39511] [subinterpreters] Per-interpreter singletons (None, True, False, etc.)

2020-02-24 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
nosy: +phsilva

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



[issue39683] 2to3 fix_exitfunc suggests duplicated import of atexit module

2020-02-25 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
keywords: +patch
nosy: +phsilva
nosy_count: 1.0 -> 2.0
pull_requests: +18015
stage:  -> patch review
pull_request: https://github.com/python/cpython/pull/18654

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



[issue1635741] Py_Finalize() doesn't clear all Python objects at exit

2020-02-25 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
nosy: +phsilva

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



[issue39984] Move some ceval fields from _PyRuntime.ceval to PyInterpreterState.ceval

2020-03-16 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
nosy: +phsilva

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



[issue1635741] Py_Finalize() doesn't clear all Python objects at exit

2020-03-21 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
pull_requests: +18468
pull_request: https://github.com/python/cpython/pull/19107

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



[issue37207] Use PEP 590 vectorcall to speed up calls to range(), list() and dict()

2020-03-21 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
nosy: +phsilva

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



[issue1635741] Py_Finalize() doesn't clear all Python objects at exit

2020-03-22 Thread Paulo Henrique Silva


Paulo Henrique Silva  added the comment:

About half of the remaining refs are related to encodings. I noticed that 
caches on Lib/encodings/__init__.py and codec_search_cach of PyInterpreterState 
are the places holding the refs. I removed those caches and number went do to:

Before: 4382 refs left
After : 2344 refs left (-46%)

The way to destroy codec_search_cache was recently changed on #36854 and $38962.

(Not proposing to merge this, but my changes are at 
https://github.com/python/cpython/compare/master...phsilva:remove-codec-caches).

--

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



[issue1635741] Py_Finalize() doesn't clear all Python objects at exit

2020-03-23 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
pull_requests: +18483
pull_request: https://github.com/python/cpython/pull/19122

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



[issue1635741] Py_Finalize() doesn't clear all Python objects at exit

2020-03-24 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
pull_requests: +18511
pull_request: https://github.com/python/cpython/pull/19150

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



[issue1635741] Py_Finalize() doesn't clear all Python objects at exit

2020-03-24 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
pull_requests: +18512
pull_request: https://github.com/python/cpython/pull/19151

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



[issue1635741] Py_Finalize() doesn't clear all Python objects at exit

2020-03-24 Thread Paulo Henrique Silva


Paulo Henrique Silva  added the comment:

Updating on my findings on msg364833.

It looks like encodings module is not being destoyed at all and keeping all the 
encoding refs alive. Looks like some cycle but I am not sure yet how to solve 
it.

To validate this, I:
 - removed codec_search_cach of PyInterpreterState.
 - Py_DECREFd(encodings) after loading it on codecs.c.

Before: 4376 refs left (37fcbb65d4)
After :  352 refs left (-92%)

I've updated the changes at 
https://github.com/python/cpython/compare/master...phsilva:remove-codec-caches 
(not a proposed patch, just to validate the idea)

--

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



[issue1635741] Py_Finalize() doesn't clear all Python objects at exit

2020-03-24 Thread Paulo Henrique Silva


Paulo Henrique Silva  added the comment:

Thanks for the clarifications. I will keep looking for simple modules, no state 
and easy to migrate but also dedicate more time to work on the more complex 
like datetime. I'm working on PR19122 corrections.

--

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



[issue40071] test__xxsubinterpreters leaked [1, 1, 1] references: test_ids_global()

2020-03-25 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
keywords: +patch
nosy: +phsilva
nosy_count: 1.0 -> 2.0
pull_requests: +18529
stage:  -> patch review
pull_request: https://github.com/python/cpython/pull/19151

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



[issue40071] test__xxsubinterpreters leaked [1, 1, 1] references: test_ids_global()

2020-03-25 Thread Paulo Henrique Silva


Paulo Henrique Silva  added the comment:

I've got it, will investigate asap.

--

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



[issue40071] test__xxsubinterpreters leaked [1, 1, 1] references: test_ids_global()

2020-03-26 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
pull_requests: +18532
pull_request: https://github.com/python/cpython/pull/19172

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



[issue40071] test__xxsubinterpreters leaked [1, 1, 1] references: test_ids_global()

2020-03-26 Thread Paulo Henrique Silva


Paulo Henrique Silva  added the comment:

The module still uses static state. Fixed the leak and will convert it to use 
per-module state in a separate issue.

--

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



[issue33608] Add a cross-interpreter-safe mechanism to indicate that an object may be destroyed.

2020-03-26 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
nosy: +phsilva

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



[issue40077] Convert static types to PyType_FromSpec()

2020-03-26 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
nosy: +phsilva

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



[issue40071] test__xxsubinterpreters leaked [1, 1, 1] references: test_ids_global()

2020-03-31 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
pull_requests: +18628
pull_request: https://github.com/python/cpython/pull/19273

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



[issue40071] test__xxsubinterpreters leaked [1, 1, 1] references: test_ids_global()

2020-03-31 Thread Paulo Henrique Silva


Paulo Henrique Silva  added the comment:

As discussed on PR19172, this module uses a global state in functions that do 
not receive a PyModule* and right now converting such cases to per-module state 
is not trivial. I will wait for PEP-573 implementation that will hopefully make 
this easier.

Pushed PR19273 to avoid the potential crash induced by the original change.

--

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



[issue40137] TODO list when PEP 573 "Module State Access from C Extension Methods" will be implemented

2020-04-01 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
nosy: +phsilva

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



[issue1635741] Py_Finalize() doesn't clear all Python objects at exit

2020-12-29 Thread Paulo Henrique Silva


Paulo Henrique Silva  added the comment:

Repeated msg355187 testing on master[056c08211b].

---
#include 

void func()
{
Py_Initialize(); Py_Finalize();
Py_ssize_t cnt = _Py_GetRefTotal();
printf("sys.gettotalrefcount(): %zd\n", cnt);
}

int main(int argc, char *argv[])
{
Py_SetProgramName(L"./_testembed");
for (int i=0; i < 10; i++) {
func();
}
}
---

No refs leaking anymore!?

---
sys.gettotalrefcount(): 10241
sys.gettotalrefcount(): 10241
sys.gettotalrefcount(): 10241
sys.gettotalrefcount(): 10241
sys.gettotalrefcount(): 10241
sys.gettotalrefcount(): 10241
sys.gettotalrefcount(): 10241
sys.gettotalrefcount(): 10241
sys.gettotalrefcount(): 10241
sys.gettotalrefcount(): 10241

---

--

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



[issue10399] AST Optimization: inlining of function calls

2020-11-18 Thread Paulo Henrique Silva


Change by Paulo Henrique Silva :


--
nosy: +phsilva

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



[issue7946] Convoy effect with I/O bound threads and New GIL

2010-07-13 Thread P. Henrique Silva

Changes by P. Henrique Silva :


--
nosy: +phsilva

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



[issue40731] CWI url's protocol on LICENSE file from http to https

2020-05-22 Thread Vinicius Henrique Silva Bastos


New submission from Vinicius Henrique Silva Bastos :

CWI url's protocol on LICENSE file from http to https

from: http://www.cwi.nl
to: https://www.cwi.nl

Obs.: Learning about pull requests and how it works.

--
assignee: docs@python
components: Documentation
files: LICENSE
hgrepos: 388
messages: 369610
nosy: bastosvinicius, docs@python
priority: normal
severity: normal
status: open
title: CWI url's protocol on LICENSE file from http to https
type: enhancement
versions: Python 3.10
Added file: https://bugs.python.org/file49181/LICENSE

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



[issue40731] CWI url's protocol on LICENSE file from http to https

2020-05-22 Thread Vinicius Henrique Silva Bastos


Change by Vinicius Henrique Silva Bastos :


--
keywords: +patch
pull_requests: +19586
stage:  -> patch review
pull_request: https://github.com/python/cpython/pull/20317

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