58 lines
1.7 KiB
Diff
58 lines
1.7 KiB
Diff
Fix compatibility issue with Python 3.7:
|
|
|
|
https://github.com/beetbox/beets/issues/2978
|
|
|
|
Patch copied from upstream source repository:
|
|
|
|
https://github.com/beetbox/beets/commit/15d44f02a391764da1ce1f239caef819f08beed8
|
|
|
|
From 15d44f02a391764da1ce1f239caef819f08beed8 Mon Sep 17 00:00:00 2001
|
|
From: Adrian Sampson <adrian@radbox.org>
|
|
Date: Sun, 22 Jul 2018 12:34:19 -0400
|
|
Subject: [PATCH] Fix Python 3.7 compatibility (#2978)
|
|
|
|
---
|
|
beets/autotag/hooks.py | 8 +++++++-
|
|
docs/changelog.rst | 2 ++
|
|
2 files changed, 9 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/beets/autotag/hooks.py b/beets/autotag/hooks.py
|
|
index 3615a9333..1c62a54c5 100644
|
|
--- a/beets/autotag/hooks.py
|
|
+++ b/beets/autotag/hooks.py
|
|
@@ -31,6 +31,12 @@
|
|
|
|
log = logging.getLogger('beets')
|
|
|
|
+# The name of the type for patterns in re changed in Python 3.7.
|
|
+try:
|
|
+ Pattern = re._pattern_type
|
|
+except AttributeError:
|
|
+ Pattern = re.Pattern
|
|
+
|
|
|
|
# Classes used to represent candidate options.
|
|
|
|
@@ -433,7 +439,7 @@ def _eq(self, value1, value2):
|
|
be a compiled regular expression, in which case it will be
|
|
matched against `value2`.
|
|
"""
|
|
- if isinstance(value1, re._pattern_type):
|
|
+ if isinstance(value1, Pattern):
|
|
return bool(value1.match(value2))
|
|
return value1 == value2
|
|
|
|
#diff --git a/docs/changelog.rst b/docs/changelog.rst
|
|
#index be6de2904..d487f31f5 100644
|
|
#--- a/docs/changelog.rst
|
|
#+++ b/docs/changelog.rst
|
|
#@@ -19,6 +19,8 @@ New features:
|
|
#
|
|
# Fixes:
|
|
#
|
|
#+* Fix compatibility Python 3.7 and its change to a name in the ``re`` module.
|
|
#+ :bug:`2978`
|
|
# * R128 normalization tags are now properly deleted from files when the values
|
|
# are missing.
|
|
# Thanks to :user:`autrimpo`.
|