Re: Sad news: Fredrik Lundh ("Effbot") has passed away

2021-12-12 Thread Skip Montanaro
Like many others, I'm saddened to hear of Fredrik Lundh's passing. I
vaguely recall meeting him just once, probably at a Python workshop,
before they grew big enough to be called conferences. Effbot.org was
my Tkinter, ElemenTree, and PIL reference and cheat sheet.

My attention to Python development has waxed and waned over the years.
Most of the time, the trip through the Python folder in my mail
program was generally pretty quick, hitting the 'd' key far more often
than I'd stop to read a message. There are only a few people whose
messages I'd always read. Effbot was one. In my opinion, Fredrik ranks
up there with Guido, Tim Peters and Barry Warsaw.

I went to effbot.org and saw the "on hiatus" message. Searching
through The Wayback Machine, it seems it went on hiatus in late
November, 2020. The 11 November 2020 snapshot appears to be the last
usable version:

https://web.archive.org/web/2020145627/http://effbot.org/

Probably worth a bookmark in your browser.

Rest easy /F ...

Skip
-- 
https://mail.python.org/mailman/listinfo/python-list


Isn't TypeError built in?

2021-12-12 Thread Mike Dewhirst via Python-list
Obviously something is wrong elsewhere but I'm not sure where to look. 
Ubuntu 20.04 with plenty of RAM.


    def __del__(self):
    try:
    for context_obj in self._context_refs:
    try:
    delattr(context_obj, self._attr_name)
    except AttributeError:
    pass

    except TypeError:        # THIS IS LINE 96 IN THE APACHE2 ERROR 
LOG BELOW


    # WeakSet.__iter__ can crash when interpreter is shutting 
down due

    # to _IterationGuard being None.
    pass

[Mon Dec 13 01:15:49.875993 2021] [mpm_event:notice] [pid 1033:tid 
140446449658944] AH00493: SIGUSR1 received.  Doing graceful restart
[Mon Dec 13 01:15:49.878443 2021] [so:warn] [pid 1033] AH01574: module 
dav_module is already loaded, skipping
[Mon Dec 13 01:15:49.885659 2021] [mpm_event:notice] [pid 1033:tid 
140446449658944] AH00489: Apache/2.4.41 (Ubuntu) SVN/1.13.0 
OpenSSL/1.1.1f mod_wsgi/4.6.8 Python/3.8 configured -- resuming normal 
operations
[Mon Dec 13 01:15:49.885664 2021] [core:notice] [pid 1033:tid 
140446449658944] AH00094: Command line: '/usr/sbin/apache2'

Exception ignored in: 
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/dist-packages/asgiref/local.py", line 
96, in __del__

NameError: name 'TypeError' is not defined
Exception ignored in: 
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/dist-packages/asgiref/local.py", line 
96, in __del__

NameError: name 'TypeError' is not defined

Any hints welcome ...

Thanks

Mike

--
Signed email is an absolute defence against phishing. This email has
been signed with my private key. If you import my public key you can
automatically decrypt my signature and be sure it came from me. Just
ask and I'll send it to you. Your email software can handle signing.



OpenPGP_signature
Description: OpenPGP digital signature
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Isn't TypeError built in?

2021-12-12 Thread Paul Bryan
Yes, TypeError is built in. The only thing I can think of is that
something has deleted `TypeError` from `__builtins__`? It would be
interesting to see what's in `__builtins__` when `__del__` is called.

On Mon, 2021-12-13 at 12:22 +1100, Mike Dewhirst via Python-list wrote:
> Obviously something is wrong elsewhere but I'm not sure where to
> look. 
> Ubuntu 20.04 with plenty of RAM.
> 
>  def __del__(self):
>  try:
>  for context_obj in self._context_refs:
>  try:
>  delattr(context_obj, self._attr_name)
>  except AttributeError:
>  pass
> 
>  except TypeError:        # THIS IS LINE 96 IN THE APACHE2
> ERROR 
> LOG BELOW
> 
>  # WeakSet.__iter__ can crash when interpreter is
> shutting 
> down due
>  # to _IterationGuard being None.
>  pass
> 
> [Mon Dec 13 01:15:49.875993 2021] [mpm_event:notice] [pid 1033:tid 
> 140446449658944] AH00493: SIGUSR1 received.  Doing graceful restart
> [Mon Dec 13 01:15:49.878443 2021] [so:warn] [pid 1033] AH01574:
> module 
> dav_module is already loaded, skipping
> [Mon Dec 13 01:15:49.885659 2021] [mpm_event:notice] [pid 1033:tid 
> 140446449658944] AH00489: Apache/2.4.41 (Ubuntu) SVN/1.13.0 
> OpenSSL/1.1.1f mod_wsgi/4.6.8 Python/3.8 configured -- resuming
> normal 
> operations
> [Mon Dec 13 01:15:49.885664 2021] [core:notice] [pid 1033:tid 
> 140446449658944] AH00094: Command line: '/usr/sbin/apache2'
> Exception ignored in: 
> Traceback (most recent call last):
>    File "/usr/local/lib/python3.8/dist-packages/asgiref/local.py",
> line 
> 96, in __del__
> NameError: name 'TypeError' is not defined
> Exception ignored in: 
> Traceback (most recent call last):
>    File "/usr/local/lib/python3.8/dist-packages/asgiref/local.py",
> line 
> 96, in __del__
> NameError: name 'TypeError' is not defined
> 
> Any hints welcome ...
> 
> Thanks
> 
> Mike
> 
> -- 
> Signed email is an absolute defence against phishing. This email has
> been signed with my private key. If you import my public key you can
> automatically decrypt my signature and be sure it came from me. Just
> ask and I'll send it to you. Your email software can handle signing.
> 

-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Isn't TypeError built in?

2021-12-12 Thread Chris Angelico
On Mon, Dec 13, 2021 at 12:31 PM Mike Dewhirst via Python-list
 wrote:
>
> Obviously something is wrong elsewhere but I'm not sure where to look.
> Ubuntu 20.04 with plenty of RAM.
>
>  def __del__(self):
>  try:
>  for context_obj in self._context_refs:
>  try:
>  delattr(context_obj, self._attr_name)
>  except AttributeError:
>  pass
>
>  except TypeError:# THIS IS LINE 96 IN THE APACHE2 ERROR
> LOG BELOW
>
>  # WeakSet.__iter__ can crash when interpreter is shutting
> down due
>  # to _IterationGuard being None.
>  pass
>
> [Mon Dec 13 01:15:49.875993 2021] [mpm_event:notice] [pid 1033:tid
> 140446449658944] AH00493: SIGUSR1 received.  Doing graceful restart
> [Mon Dec 13 01:15:49.878443 2021] [so:warn] [pid 1033] AH01574: module
> dav_module is already loaded, skipping
> [Mon Dec 13 01:15:49.885659 2021] [mpm_event:notice] [pid 1033:tid
> 140446449658944] AH00489: Apache/2.4.41 (Ubuntu) SVN/1.13.0
> OpenSSL/1.1.1f mod_wsgi/4.6.8 Python/3.8 configured -- resuming normal
> operations
> [Mon Dec 13 01:15:49.885664 2021] [core:notice] [pid 1033:tid
> 140446449658944] AH00094: Command line: '/usr/sbin/apache2'
> Exception ignored in: 
> Traceback (most recent call last):
>File "/usr/local/lib/python3.8/dist-packages/asgiref/local.py", line
> 96, in __del__
> NameError: name 'TypeError' is not defined
> Exception ignored in: 
> Traceback (most recent call last):
>File "/usr/local/lib/python3.8/dist-packages/asgiref/local.py", line
> 96, in __del__
> NameError: name 'TypeError' is not defined
>
> Any hints welcome ...

During interpreter shutdown, all kinds of things can go weird. The
order that things get destroyed isn't always clearly defined.

Is it possible to do the cleanup work before interpreter shutdown?
Alternatively: maybe take a local reference to the exception types you
need to refer to (just "AttributeError = AttributeError" at top level
should do it), which should keep them alive longer (I think). Worst
case, capture *all* exceptions, then look at e.__class__.__name__ and
match on that.

ChrisA
-- 
https://mail.python.org/mailman/listinfo/python-list