1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
|
From fa587d171aed1b44ee06af271d718ab6fa73b77a Mon Sep 17 00:00:00 2001
From: Karthikeyan Singaravelan <tir.karthi@gmail.com>
Date: Wed, 26 Feb 2020 22:06:39 +0530
Subject: [PATCH 1/2] Use encodebytes instead of encodestring in Python 3.9.
---
feedparser/http.py | 5 ++++-
feedparser/mixin.py | 5 ++++-
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/feedparser/http.py b/feedparser/http.py
index 272faad6..53511f02 100644
--- a/feedparser/http.py
+++ b/feedparser/http.py
@@ -73,7 +73,10 @@ class request(object):
# Python 3.1 deprecated decodestring in favor of decodebytes.
# This can be removed after Python 2.7 support is dropped.
-_base64decode = getattr(base64, 'decodebytes', base64.decodestring)
+try:
+ _base64decode = base64.decodebytes
+except AttributeError:
+ _base64decode = base64.decodestring
try:
basestring
diff --git a/feedparser/mixin.py b/feedparser/mixin.py
index 1b0dc1ae..549931f5 100644
--- a/feedparser/mixin.py
+++ b/feedparser/mixin.py
@@ -50,7 +50,10 @@
# Python 2.7 only offers "decodestring()".
# This name substitution can be removed when Python 2.7 support is dropped.
-_base64decode = getattr(base64, 'decodebytes', base64.decodestring)
+try:
+ _base64decode = base64.decodebytes
+except AttributeError:
+ _base64decode = base64.decodestring
bytes_ = type(b'')
From 7798957b66c9cee00db9a18f84c518cacf8f14aa Mon Sep 17 00:00:00 2001
From: Karthikeyan Singaravelan <tir.karthi@gmail.com>
Date: Sun, 17 May 2020 14:25:17 +0000
Subject: [PATCH 2/2] Use base64.decodebytes only in Python 3
---
feedparser/http.py | 7 +------
feedparser/mixin.py | 7 +------
2 files changed, 2 insertions(+), 12 deletions(-)
diff --git a/feedparser/http.py b/feedparser/http.py
index 53511f02..1119cb3b 100644
--- a/feedparser/http.py
+++ b/feedparser/http.py
@@ -71,12 +71,7 @@ class request(object):
from .datetimes import _parse_date
from .urls import convert_to_idn
-# Python 3.1 deprecated decodestring in favor of decodebytes.
-# This can be removed after Python 2.7 support is dropped.
-try:
- _base64decode = base64.decodebytes
-except AttributeError:
- _base64decode = base64.decodestring
+_base64decode = base64.decodebytes
try:
basestring
diff --git a/feedparser/mixin.py b/feedparser/mixin.py
index 549931f5..119fa4ca 100644
--- a/feedparser/mixin.py
+++ b/feedparser/mixin.py
@@ -48,12 +48,7 @@
from .urls import _urljoin, make_safe_absolute_uri, resolve_relative_uris
-# Python 2.7 only offers "decodestring()".
-# This name substitution can be removed when Python 2.7 support is dropped.
-try:
- _base64decode = base64.decodebytes
-except AttributeError:
- _base64decode = base64.decodestring
+_base64decode = base64.decodebytes
bytes_ = type(b'')
|