From 8f2877267ba557a9e80153ac15bc98bfeeb90cff Mon Sep 17 00:00:00 2001
From: "Kian-Meng, Ang" <kianmeng@cpan.org>
Date: Wed, 20 Oct 2021 23:48:24 +0800
Subject: [PATCH] Fix typos

---
 HISTORY.rst        | 4 ++--
 MySQLdb/_mysql.c   | 2 +-
 MySQLdb/cursors.py | 4 ++--
 doc/user_guide.rst | 2 +-
 tests/dbapi20.py   | 2 +-
 5 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/HISTORY.rst b/HISTORY.rst
index 0b39d23a..8bd4c2cc 100644
--- a/HISTORY.rst
+++ b/HISTORY.rst
@@ -94,7 +94,7 @@ Release: 2019-08-09
 
 * ``--static`` build supports ``libmariadbclient.a``
 * Try ``mariadb_config`` when ``mysql_config`` is not found
-* Fixed warning happend in Python 3.8 (#359)
+* Fixed warning happened in Python 3.8 (#359)
 * Fixed ``from MySQLdb import *``, while I don't recommend it. (#369)
 * Fixed SEGV ``MySQLdb.escape_string("1")`` when libmariadb is used and
   no connection is created. (#367)
@@ -294,7 +294,7 @@ More tests for date and time columns. (#41)
 
 Fix calling .execute() method for closed cursor cause TypeError. (#37)
 
-Improve peformance to parse date. (#43)
+Improve performance to parse date. (#43)
 
 Support geometry types (#49)
 
diff --git a/MySQLdb/_mysql.c b/MySQLdb/_mysql.c
index 0f6e9f5c..f10cd015 100644
--- a/MySQLdb/_mysql.c
+++ b/MySQLdb/_mysql.c
@@ -310,7 +310,7 @@ _mysql_ResultObject_Initialize(
             PyObject *fun2=NULL;
             int j, n2=PySequence_Size(fun);
             // BINARY_FLAG means ***_bin collation is used.
-            // To distinguish text and binary, we shoud use charsetnr==63 (binary).
+            // To distinguish text and binary, we should use charsetnr==63 (binary).
             // But we abuse BINARY_FLAG for historical reason.
             if (fields[i].charsetnr == 63) {
                 flags |= BINARY_FLAG;
diff --git a/MySQLdb/cursors.py b/MySQLdb/cursors.py
index 451dab5f..f8a48640 100644
--- a/MySQLdb/cursors.py
+++ b/MySQLdb/cursors.py
@@ -375,7 +375,7 @@ def fetchmany(self, size=None):
         return result
 
     def fetchall(self):
-        """Fetchs all available rows from the cursor."""
+        """Fetches all available rows from the cursor."""
         self._check_executed()
         if self.rownumber:
             result = self._rows[self.rownumber :]
@@ -437,7 +437,7 @@ def fetchmany(self, size=None):
         return r
 
     def fetchall(self):
-        """Fetchs all available rows from the cursor."""
+        """Fetches all available rows from the cursor."""
         self._check_executed()
         r = self._fetch_row(0)
         self.rownumber = self.rownumber + len(r)
diff --git a/doc/user_guide.rst b/doc/user_guide.rst
index a00f292c..555adf15 100644
--- a/doc/user_guide.rst
+++ b/doc/user_guide.rst
@@ -511,7 +511,7 @@ callproc(procname, args)
       can only be returned with a SELECT statement. Since a stored
       procedure may return zero or more result sets, it is impossible
       for MySQLdb to determine if there are result sets to fetch
-      before the modified parmeters are accessible.
+      before the modified parameters are accessible.
 
       The parameters are stored in the server as @_*procname*_*n*,
       where *n* is the position of the parameter. I.e., if you
diff --git a/tests/dbapi20.py b/tests/dbapi20.py
index 4824d9cc..4965c9bf 100644
--- a/tests/dbapi20.py
+++ b/tests/dbapi20.py
@@ -793,7 +793,7 @@ def test_setoutputsize_basic(self):
             con.close()
 
     def test_setoutputsize(self):
-        # Real test for setoutputsize is driver dependant
+        # Real test for setoutputsize is driver dependent
         raise NotImplementedError("Driver need to override this test")
 
     def test_None(self):