Change by Dave Shawley :
--
nosy: +dave-shawley
___
Python tracker
<https://bugs.python.org/issue43112>
___
___
Python-bugs-list mailing list
Unsubscribe:
New submission from Dave Evans :
It's not currently possible to use `singledispatch` with a function annotated
with a Union type, although the desired behaviour is clear.
Example:
```
from functools import singledispatch
from typing import Union
@singledispatch
def test(arg
Dave McNulla added the comment:
I understand. It's a thing I often forget in python that some parameters are
passed by value while others are passed by reference (language for parameters I
remember from C class about 30 years ago).
I do not think I would have caught that with docs, unless
New submission from Dave McNulla :
https://gist.github.com/dmcnulla/ecec8fc96a2fd07082f240eeff6888d9
I'm trying to reproduce an error in a call to a method, forcing a second call
to the method. In my test, the call_args_list is showing incorrectly (both in
debugging or running unittest
Dave Tapley added the comment:
I don't know if it helps, but I just ran in to this when I followed the advice
at (1) because I wanted to type hint a method with the type of the enclosing
class.
This broke a package I'm working on in parallel (2) because it uses
dataclasses.fields
New submission from Dave Rove :
The correct handling of ANSI escape codes by the print() function may or may
not be enabled in the Windows 10 command prompt window, depending on previous
system calls. The following is quite repeatable. Comment-out the apparently
meaningless os.system
Dave Liptack added the comment:
Like goto, right-click also exhibits this behavior. Should selection_clear
also be added to right-click code?
--
___
Python tracker
<https://bugs.python.org/issue39
Dave Liptack added the comment:
OS: Windows 10 Pro
Version: 1909
OS Build: 18363.657
Python 2.7.17 and 3.8.1 were installed from https://www.python.org/downloads/
using the Windows x86-64 executable installer (3.8.1) and Windows x86-64 MSI
installer (2.7.17)
Both line numbers and code
New submission from Dave Liptack :
Python 3.8.1
IDLE 3.8.1
When COPYing text in IDLE, right-click and PASTE behaves like CUT/PASTE
This also occurs with COPY -> Go to Line -> PASTE
This does not occur with COPY -> left-click -> PASTE
--
assignee: terry.reedy
comp
Dave Lawrence added the comment:
traced to be a duplicate of https://bugs.python.org/issue28267
--
resolution: -> not a bug
stage: -> resolved
status: open -> closed
___
Python tracker
<https://bugs.python.or
Dave Lawrence added the comment:
by redefinining the Py_DECREF macro in my application:
#define Py_DECREF(op) do { if (--op->ob_refcnt == 0) fprintf(stderr, "DECREF
%s %d %p %d %s %p\n", __FILE__, __LINE__, op, Py_SIZE(op),
Py_TYPE(op)->tp_name,Py_TYPE(op)->tp_deallo
Dave Lawrence added the comment:
further investigation seems to point to this being something to do with mingw
and the dll. I have tried compiling the same test example on 64-bit linux and
in the Ubuntu WSL on windows and it works. Tests also show that the refcount of
'1' is correct
New submission from Dave Lawrence :
I am calling a python method from C using the attached code.
The Site.py file is:
import os
def find_site():
path = os.path.abspath(".")
return path
Cross compiled to Windows from Linux using mxe.cc and python 2.7.17
On 32-bit
Dave Lotton added the comment:
Mark, you are absolutely correct. I'm an idiot.
Focused on wrong thing. Thank you.
--
resolution: -> not a bug
stage: -> resolved
status: open -> closed
___
Python tracker
<https://bugs.python.or
New submission from Dave Lotton :
Using struct.pack it is not possible (Python 3.6.8 and 2.7.15) to pack more
than 256 bytes at a time.
This seems like an arbitrarily small number, and seems to be inconsistent with
the capabilities of the unpack function, which is able to unpack a larger
Dave Johansen added the comment:
I can't. I just know that I'm running this process and this crash happens. Any
recommendations on how to diagnose that?
--
___
Python tracker
<https://bugs.python.org/issue38
New submission from Dave Johansen :
We're using SQLAlchemy 1.3.10 with pyodbc 4.0.27 in the python:3.7.5-alpine
docker image to connect to a MySQL 13.0.5026.0 database and it's crashing with
the following error:
python: malloc.c:2406: sysmalloc: Assertion `(old_top == initial_top (av
New submission from dave :
The following example code fails in Python 3.7.3 64 bit (both lines are
displayed in black).
It works correctly in 3.7.2 and earlier.
import tkinter as tk
import tkinter.ttk as ttk
root = tk.Tk()
ttk.Label(root, text='This is a RED label', foreground='red').pack
Dave Malcolm added the comment:
I think when I wrote this I was over-optimistically thinking that we could just
add more patterns, but if it's becoming a pain, then your approach looks good
to me.
--
nosy: +dmalcolm
___
Python tracker
<ht
New submission from Dave Johansen :
Using LoggerAdapter is a convenient way to add extra info to all logs, but it
doesn't have the fatal() method like Logger, so it isn't a drop in replacement
like it should be.
--
components: Library (Lib)
messages: 343941
nosy: Dave Johansen
Dave Page added the comment:
The submitted patch from websurfer5 resolves the issue for me.
--
___
Python tracker
<https://bugs.python.org/issue35070>
___
___
Change by Dave Nguyen :
--
keywords: +patch
pull_requests: +12796
stage: needs patch -> patch review
___
Python tracker
<https://bugs.python.org/issu
Dave Page added the comment:
I'm seeing what appears to my uneducated eyes to be the same failure on Mojave,
on a brand new machine which is entirely standalone:
12:16:00 0:00:07 load avg: 4.24 [133/416/1] test_posix failed
12:16:00 test test_posix failed -- Traceback (most recent call last
Dave Shawley added the comment:
PR 10296 is my implementation of a unittest.TestCase subclass solution to this
issue. This comment explains the approach and rationale in detail. Let's
discuss this and see if the implementation meets expectations or should be
abandoned.
I refactored
Dave Shawley added the comment:
Hi everyone, I'm trying to reboot conversation on this issue since I would love
for this to land in Python 3.8. At the recommendation of Terry Jan Reedy, here
is my summary of where I think that the discussion is currently. If anything
is misrepresented
Dave Shawley added the comment:
I added a different implementation for consideration
(https://github.com/python/cpython/pull/10296).
--
pull_requests: +9606
___
Python tracker
<https://bugs.python.org/issue32
Change by Dave Shawley :
--
keywords: +patch
pull_requests: +9605
stage: -> patch review
___
Python tracker
<https://bugs.python.org/issue32971>
___
___
Py
Dave Shawley added the comment:
Hi all, I took a slightly different direction for adding async/await support to
the unittest library. I summarized the approach that I took in a message to
python-ideas
(https://mail.python.org/pipermail/python-ideas/2018-October/054331.html) and a
branch
Dave Malcolm added the comment:
Thanks!
--
___
Python tracker
<https://bugs.python.org/issue9263>
___
___
Python-bugs-list mailing list
Unsubscribe:
New submission from Dave Opstad :
In 3.6 I get this:
>>> x = (100 * 20)
>>> x is 2000
False
>>> (100 * 20) is 2000
False
But in 3.7, I get this:
>>> x = (100 * 20)
>>> x is 2000
False
>>> (100 * 20) is 2000
True
This isn't necessaril
Dave Malcolm <dmalc...@redhat.com> added the comment:
On Fri, 2018-02-23 at 00:16 +, Cheryl Sabella wrote:
> Cheryl Sabella <chek...@gmail.com> added the comment:
>
> Did PEP553 make this issue obsolete?
I *think* they have slightly different scope: if I'm reading it r
Dave Opstad <dave.ops...@monotypeimaging.com> added the comment:
I think this was my mistake; when I used pydoc3 instead of pydoc it ran to
completion. Please feel free to close this; sorry for the noise.
--
___
Python tracke
New submission from Dave Opstad <dave.ops...@monotypeimaging.com>:
I'm running 3.6.4 on Mac OS X 10.13.2, bash shell. Doing:
$ pydoc modules
causes:
Please wait a moment while I gather a list of all available modules...
Fatal Python error: PyThreadState_Get: no current thread
Abort t
Dave Challis <sui...@gmail.com> added the comment:
My mistake, it appears to be related to the OS it's running on rather than the
version (I just happened to test with different versions on different OSes).
On Mac OS X (with 3.6.2):
>>>
New submission from Dave Challis <sui...@gmail.com>:
Tested in python 3.6.2:
>>> import datetime
>>> datetime.datetime.min.strftime('%Y')
'1'
Expected output:
'0001'
This means that strftime and strptime aren't necessarily symmetric, e.g.:
>&g
Dave Malcolm added the comment:
The problem is that there are so many variables:
* which version of which compiler
* optimization flags
* which version of gdb
* which CPU architecture
etc (and the compiler and/or gdb could be carrying patches from downstream
distributors...)
All of these can
Dave Johansen added the comment:
Ok, so I understand the issue now. `timestamp()` for naive datetime instances
applies the local timezone offset (
https://docs.python.org/3.6/library/datetime.html#datetime.datetime.timestamp
). This is surprising because naive datetime instances usually
Dave Johansen added the comment:
The use case was parsing user input of ISO 8601 date strings and converting
them to UNIX epochs. The input "0001-01-01T00:00:00" is valid, parses to a
valid `datetime` and it seems like a reasonable expectation that all of the
functions should work
Dave Johansen added the comment:
That's a valid `datetime` (i.e. within the min and max values) and `tzinfo` is
`None` so I think it's completely reasonable to assume that `timestamp()` will
return the correct value.
--
___
Python tracker <
New submission from Dave Johansen:
This worked in Python 3.6.0 and before:
```
from datetime import datetime
d = datetime(1, 1, 1, 0, 0, 0)
d.timestamp()
```
The error output is:
```
ValueError: year 0 is out of range
```
But it used to return `-62135658000.0`.
Appears to be related to https
Dave Anderson added the comment:
Sorry, should have shown sudo ls -l output for 3.6:
[vagrant@developer tmp]$ sudo ls -l Python-3.6.0
total 1016
-rw-r--r-- 1 caturra games 10910 Dec 22 18:21 aclocal.m4
-rwxr-xr-x 1 caturra games 42856 Dec 22 18:21 config.guess
-rwxr-xr-x 1 caturra games
New submission from Dave Anderson:
Downloaded https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz
Extracted on CentOS6 with sudo tar -xf Python-3.6.0.tgz
Result:
[vagrant@developer tmp]$ ls -l Python-3.6.0
ls: cannot access Python-3.6.0/Tools: Permission denied
ls: cannot access Python
Dave Brondsema added the comment:
Yes, exactly.
--
___
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue29443>
___
___
Python-bugs-list
Dave Brondsema added the comment:
A colleague has pointed out to me that this is available in the 2nd step within
"Modify". I didn't realize there were more options after the first "Modify"
screen. So perhaps the UI could be improved, b
New submission from Dave Brondsema:
If you miss the checkbox to set the "PATH" when installing Python for the first
time, there isn't any easy way to set it again. (And for new programmers,
having it set automatically is extremely useful). Uninstalling and
re-installing does w
Dave Jones added the comment:
I confess I'm going to have to read a bit more about Python internals before I
can understand Eryk's analysis (this is my first encounter with "cell
objects"), but many thanks for the rapid analysis and patch!
I'm not too concerned about the state be
New submission from Dave Jones:
While investigating a bug report in one of my libraries
(https://github.com/waveform80/picamera/issues/355) I've come across a
behaviour that appears in Python 3.6 but not prior versions. Specifically,
calling super() in a sub-class of a ctypes scalar type
New submission from Dave Jones:
While attempting to diagnose something (unrelated to this issue) under python
3.6, I used the following steps to clone and build a non-root python
installation:
$ mkdir py36
$ hg clone https://hg.python.org/cpython
$ cd cpython
$ hg update 3.6
Dave T added the comment:
Its on a windows 10
It doesn't come with the run application but the debug
--
nosy: +Dave T
versions: +Python 2.7 -Python 3.5
Added file: http://bugs.python.org/file45298/Py 2.7.JPG
___
Python tracker <
Dave Sawyer added the comment:
No problem. I did a pull and reposted with additional fixes suggested by
Berker and one copy/paste error I spotted.
On Sat, Jun 4, 2016 at 11:34 PM, SilentGhost <rep...@bugs.python.org> wrote:
>
> SilentGhost added the comment:
>
> Thanks f
Dave Sawyer added the comment:
Updated optional parameters. Fixed executescript which takes a single
parameter. The English is correct - one needs to looks at the verbs to be sure
they match in tense and number. Like "He OPENS the fridge, GRABS the milk, and
DRINKS it." This meth
Dave Sawyer added the comment:
hurray! My first commit
--
___
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue27113>
___
___
Python-bugs-
Dave Sawyer added the comment:
This can go into bugfix branches. In fact, it's most likely to be helpful there
because they are more likely to be running with a version of sqlite 10 years
old. I use the sqlite3_libversion_number() call because I'm testing against the
version of sqlite
New submission from Dave Sawyer:
Starting in sqlite version 3.3.1 (Jan 2006) multiple threads can share the same
connection. Python allows you do use this with the check_same_thread parameter
of sqlite3.connect() method. It's almost certain users have a late enough
version of sqlite
Dave Sawyer added the comment:
Hi Thomas and Senthil, for the serialized setting I mentioned earlier "The
serialized mode is default on both Mac and Windows so we can probably skip
validating that. I did like mentioning the user needs to serialize the writes.
They could use one t
New submission from Dave Sawyer:
The three execute methods of the connection object return the created cursor.
The term "intermediate" implies the cursor is totally handled by the execute
method, not that the user will get ownership of the object.
When the user doesn't
Dave Sawyer added the comment:
Changed doc to note that not only must it be used on 1 thread if true, but that
thread must be the thread that created it.
--
___
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/i
Dave Sawyer added the comment:
The user probably has a recent enough version. This is guaranteed on Windows
since Python bundles 3.6 or later. On mac or Linux it will use the version
installed on the machine. I'll make a separate patch to check the version in
sqlite3.py so it will give
Dave Sawyer added the comment:
The revised patch says "connections" plural for true and "connection" singular
for false. How about "the connection" since the method returns a connection.
I'm wondering though about the lack of explanation or WHY for this parame
Changes by Dave Sawyer <kingsaw...@gmail.com>:
--
title: sqlite3 open parameter "check_same_thread" not documented -> sqlite3
connect parameter "check_same_thread" not documented
___
Python tracker <rep...@bugs.pyt
New submission from Dave Sawyer:
The sqlite3.connect method has 6 parameters. 5 of them are documented. See
below and search for "check_same_thread". Patch adds documentation for this
parameter.
sqlite3.connect(database[, timeout, detect_types, isolation_level,
check_same_threa
New submission from Dave Hibbitts:
__len__() always returns an int which on windows machines is tied to the size
of a c long and is always 32 bits even if it's compiled for 64 bit. len()
however returns an int for values less than sys.maxint and a long above that.
Returning an int in __len__
Dave Jones added the comment:
Ah, sorry about that - force of habit. I did wonder if it was preferable to
have a nicely wrapped patch, or to have a clean diff but obviously figured
wrong! I'll know for future :)
--
___
Python tracker <
Dave Jones added the comment:
As suggested, doc patch attached to new issue 25615.
--
___
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/i
New submission from Dave Jones:
As suggested in issue 21748, this is a minor documentation change to make
explicitly clear that glob.glob returns unsorted results (on the basis that the
existing specification references shell behaviour which is always sorted).
--
assignee: docs@python
Dave Jones added the comment:
>From the bash man-page: "... If one of these characters appears, then the word
>is regarded as a pattern, and replaced with an *alphabetically sorted* list of
>filenames matching the pattern".
I would agree that glob.glob shouldn't sort its re
Dave Hein added the comment:
Thanks. I installed py34-readline and rebuilt my virtualenv; all is well now.
I put in a MacPorts ticket when their bugtracker gets back online.
--
___
Python tracker rep...@bugs.python.org
http://bugs.python.org
New submission from Dave Hein:
With 3.4.3 from an OS X terminal prompt, if I just enter the interactive Python
REPL environment (by just entering the command python from the command line)
and then exit (via exit() or Ctrl-D), then stdout appears to be broken ... I
see no stdout output
Dave Sawyer added the comment:
Maybe it takes a little longer than a week. I have a final signed agreement
from Ewa
(https://secure.echosign.com/public/viewAgreement?aid=X88L4EVP5IXC289eid=X88M6DGQ93J5K38;)
signed on
04/17/2014 6:48 PM
Wow, exactly one year ago
Dave Sawyer added the comment:
The zipfile way to delete or rename would be to just change the index. It
really doesn't want to be re-written as it is designed to span disks. Many old
versions of files can be scattered within the zip. In addition self-extracting
zip files will have executable
Dave Sawyer added the comment:
I can add some more tests to bring up the coverage, but wanted to get reviewer
opinion on the direction of this before doing more work.
--
hgrepos: +305
Added file: http://bugs.python.org/file39063/zipfile_filter.patch
Dave Sawyer added the comment:
I'd be interested in taking up the zip portion at Pycon 2015 this year. I
recently had need to delete file(s) from a zipfile.
To do it today with the existing API requires you to unpack the zip and repack
it. The unpack is slow and you need enough free disk
New submission from Dave Notman:
# Python 3.3.1 (default, Sep 25 2013, 19:30:50)
# Linux 3.8.0-35-generic #50-Ubuntu SMP Tue Dec 3 01:25:33 UTC 2013 i686 i686
i686 GNU/Linux
import re
splitter = re.compile( r'(\s*[+/;,]\s*)|(\s+and\s+)' )
ll = splitter.split( 'Dave Sam, Jane and Zoe' )
print
Dave Tian added the comment:
Alright. The issued URL of my case is here: www.5giay.vn
Nor am I a ssl dev...Here is what happens after further debugging:
PySSL_SSLread() returns 1/2 bytes without any error/timeout per call.
readline() in socket.py keeps looping. Occasionally, it may break out
Dave Tian added the comment:
Hi David,
Thanks for your quick response. I have tried Python 3.4.2 using
urllib.request.urlopen() - still not working. Below is the backtrace. I am not
sure if this is a bug of PySSL_SSLread, which returns nothing yet without
timeout. If you want me to dig
New submission from Dave Tian:
Hi there,
Recent urlopen with timeout did not work. Below is the back trace. After
digging into the Python lib, the root cause is found - within the socket.py,
self._sock.recv(), under a 'while True' loop, tried to retrieve sth from the
under-layer SSL socket
Changes by Dave Malcolm dmalc...@redhat.com:
--
nosy: +dmalcolm
___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue21590
___
___
Python-bugs-list
Dave Malcolm added the comment:
On Mon, 2014-05-19 at 11:10 +, Bohuslav Slavek Kabrda wrote:
Bohuslav Slavek Kabrda added the comment:
Hi,
I'd like to take this over after Dave Malcolm. I don't see any issues that
haven't been resolved, so my question is: What else can I do to make
Dave Malcolm added the comment:
On Mon, 2014-05-19 at 14:15 +, Dave Malcolm wrote:
Dave Malcolm added the comment:
On Mon, 2014-05-19 at 11:10 +, Bohuslav Slavek Kabrda wrote:
Bohuslav Slavek Kabrda added the comment:
Hi,
I'd like to take this over after Dave Malcolm. I
Dave Sawyer added the comment:
Thanks Zach, I'm used to Git and this was my first foray with Hg and trying
to rebase (I knew I shoulda branched before starting on another patch). BTW,
the devs at PyCon Montreal said Zach's a good guy. One of maybe 4 Windows
devs.
-Dave
New submission from Dave Sawyer:
With Python 3.5, some refactoring of the documentation structure has been done.
Building the documentation targets directly works, but using the supplied
make.bat fails, not finding the sphinx python file.
--
assignee: docs@python
components
Changes by Dave Sawyer dsaw...@box.com:
--
type: compile error - behavior
___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue21289
___
___
Python-bugs
Changes by Dave Sawyer dsaw...@box.com:
--
keywords: +patch
Added file: http://bugs.python.org/file34954/mywork.patch
___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue21289
Dave Sawyer added the comment:
Removed the use of python in the make, calling the sphinx-build executable.
Also the Doc directory was called Docs in the readme.txt
--
___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue21289
Dave Sawyer added the comment:
http://bugs.python.org/issue1669539 has been partially fixed. On Windows
os.path.join('foo', 'a:bar') gives 'a:bar' not 'foo\\a:bar'. However
os.path.isabs('a:bar') returns False yet it causes a reset in the join like an
absolute path.
'\foo' is considered
Changes by Dave Sawyer dsaw...@box.com:
--
keywords: +patch
Added file: http://bugs.python.org/file34956/joindoc.patch
___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue15414
Changes by Dave Sawyer dsaw...@box.com:
--
versions: +Python 3.4, Python 3.5 -Python 2.7, Python 3.2, Python 3.3
___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue15414
Changes by Dave Sawyer dsaw...@box.com:
Added file: http://bugs.python.org/file34957/mywork.patch
___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue21289
Dave Sawyer added the comment:
Thanks Zach! The bug tracker was nice enough to prompt me to go look in my
email for the agreement too.
--
___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue21289
Dave Odell added the comment:
Patch works on my end.
--
___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue21151
___
___
Python-bugs-list mailing list
New submission from Dave Odell:
Here's a small program that crashes Python 3.
import winreg
winreg.SetValueEx(winreg.HKEY_CURRENT_USER, 'Value', 0, 3, None)
I get a 0xC374 exception (STATUS_HEAP_CORRUPTION) when trying to run this.
Here's a stack dump:
(snip)
ntdll.dll!RtlpLogHeapFailure
Dave Malcolm added the comment:
On Tue, 2014-01-07 at 16:30 +, Yury V. Zaytsev wrote:
Yury V. Zaytsev added the comment:
After lots of fiddling, I can tell you what's wrong with the macro:
apparently it's a compiler bug, visible at -O2 and disappearing at -O1.
Can you reduce
Dave Malcolm added the comment:
[FWIW, this looks similar to an issue I ran into on Fedora:
https://bugzilla.redhat.com/show_bug.cgi?id=913732
which was due to a mismatch between the kernel headers on the system vs the
actually running kernel. I patched around it there with a downstream-only
Dave Malcolm added the comment:
FWIW, I feel that it's worth just expecting failures with an *optimized* build:
with an optimizing compiler, there's likely to always be some program counter
location where the debugger is going to get confused for some variables. Given
umpteen different
Dave Malcolm added the comment:
Antoine's patch looks reasonable to me, FWIW.
--
___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue18772
Dave Malcolm added the comment:
On Mon, 2013-07-29 at 14:01 +, Ronald Oussoren wrote:
Ronald Oussoren added the comment:
The attached patch for the benchmark README.txt should document the status
quo.
--
Added file: http://bugs.python.org/file31073/issue-18181-full-v3.txt
New submission from Dave Angel:
Python 3.3.0 (default, Mar 7 2013, 00:24:38)
[GCC 4.6.3] on linux
q = open('/dev/null')
help(q.close)
the entire output is:
---
Help on built-in function close:
close(...)
(END)
---
But close
Dave Malcolm added the comment:
pmuldoon: did you truncate the output of bt? (or did the superior gdb you're
using do this behind the scenes? I know you hack on gdb itself, and this looks
a superior gdb debugging an inferior gdb).
The reason for this error:
Python Exception type
New submission from Dave Challis:
This occurred when attempting to decode invalid UTF-8 bytes using
errors='replace', then attempting to lowercase the produced unicode string.
This was also tested in python 2.7, but it doesn't occur there.
Code to reproduce:
x =
b'\xe2\xb3\x99\xb3\xd1\x9f
New submission from Dave Challis:
When attempting to detect the presence of CSV headers, delimiters are passed to
a regex function without escaping, which causes an exception if a delimiter
which has meaning in a regex (e.g. '+', '*' etc.) is used.
Code to reproduce:
import csv
s
1 - 100 of 625 matches
Mail list logo