We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Errors when installed munkres is > 1.0.x
### Problem

When invoking beets, beets errors out on munkres versions newer than 1.0.x. This was introduced by https://github.com/beetbox/beets/pull/3146.

Running this command in verbose (`-vv`) mode:

```python-traceback
> beet -vv import .
Traceback (most recent call last):
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 583, in _build_master
    ws.require(__requires__)
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 900, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 791, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (munkres 1.1.2 (/usr/lib/python3.7/site-packages), Requirement.parse('munkres~=1.0.0'), {'beets'})

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/bin/beet", line 6, in <module>
    from pkg_resources import load_entry_point
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3191, in <module>
    @_call_aside
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3175, in _call_aside
    f(*args, **kwargs)
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3204, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 585, in _build_master
    return cls._build_from_requirements(__requires__)
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 598, in _build_from_requirements
    dists = ws.resolve(reqs, Environment())
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 786, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'munkres~=1.0.0' distribution was not found and is required by beets
```

### Setup

* OS: Linux (Arch Linux)
* Python version: 3.7.2
* beets version: 1.4.7.r359.g80f4f0a0-1 (from `pacman -Qi` output, `beet --version` also break due to munkres dependency)
* Turning off plugins made problem go away (yes/no): Didn't try.

My configuration (output of `beet config`) is:

Not relevant.
Errors when installed munkres is > 1.0.x
### Problem

When invoking beets, beets errors out on munkres versions newer than 1.0.x. This was introduced by https://github.com/beetbox/beets/pull/3146.

Running this command in verbose (`-vv`) mode:

```python-traceback
> beet -vv import .
Traceback (most recent call last):
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 583, in _build_master
    ws.require(__requires__)
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 900, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 791, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (munkres 1.1.2 (/usr/lib/python3.7/site-packages), Requirement.parse('munkres~=1.0.0'), {'beets'})

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/bin/beet", line 6, in <module>
    from pkg_resources import load_entry_point
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3191, in <module>
    @_call_aside
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3175, in _call_aside
    f(*args, **kwargs)
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3204, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 585, in _build_master
    return cls._build_from_requirements(__requires__)
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 598, in _build_from_requirements
    dists = ws.resolve(reqs, Environment())
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 786, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'munkres~=1.0.0' distribution was not found and is required by beets
```

### Setup

* OS: Linux (Arch Linux)
* Python version: 3.7.2
* beets version: 1.4.7.r359.g80f4f0a0-1 (from `pacman -Qi` output, `beet --version` also break due to munkres dependency)
* Turning off plugins made problem go away (yes/no): Didn't try.

My configuration (output of `beet config`) is:

Not relevant.

--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `setup.py`
Content:
```
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3 
4 # This file is part of beets.
5 # Copyright 2016, Adrian Sampson.
6 #
7 # Permission is hereby granted, free of charge, to any person obtaining
8 # a copy of this software and associated documentation files (the
9 # "Software"), to deal in the Software without restriction, including
10 # without limitation the rights to use, copy, modify, merge, publish,
11 # distribute, sublicense, and/or sell copies of the Software, and to
12 # permit persons to whom the Software is furnished to do so, subject to
13 # the following conditions:
14 #
15 # The above copyright notice and this permission notice shall be
16 # included in all copies or substantial portions of the Software.
17 
18 from __future__ import division, absolute_import, print_function
19 
20 import os
21 import sys
22 import subprocess
23 import shutil
24 from setuptools import setup
25 
26 
27 def _read(fn):
28     path = os.path.join(os.path.dirname(__file__), fn)
29     return open(path).read()
30 
31 
32 def build_manpages():
33     # Go into the docs directory and build the manpage.
34     docdir = os.path.join(os.path.dirname(__file__), 'docs')
35     curdir = os.getcwd()
36     os.chdir(docdir)
37     try:
38         subprocess.check_call(['make', 'man'])
39     except OSError:
40         print("Could not build manpages (make man failed)!", file=sys.stderr)
41         return
42     finally:
43         os.chdir(curdir)
44 
45     # Copy resulting manpages.
46     mandir = os.path.join(os.path.dirname(__file__), 'man')
47     if os.path.exists(mandir):
48         shutil.rmtree(mandir)
49     shutil.copytree(os.path.join(docdir, '_build', 'man'), mandir)
50 
51 
52 # Build manpages if we're making a source distribution tarball.
53 if 'sdist' in sys.argv:
54     build_manpages()
55 
56 
57 setup(
58     name='beets',
59     version='1.4.8',
60     description='music tagger and library organizer',
61     author='Adrian Sampson',
62     author_email='adrian@radbox.org',
63     url='http://beets.io/',
64     license='MIT',
65     platforms='ALL',
66     long_description=_read('README.rst'),
67     test_suite='test.testall.suite',
68     include_package_data=True,  # Install plugin resources.
69 
70     packages=[
71         'beets',
72         'beets.ui',
73         'beets.autotag',
74         'beets.util',
75         'beets.dbcore',
76         'beetsplug',
77         'beetsplug.bpd',
78         'beetsplug.web',
79         'beetsplug.lastgenre',
80         'beetsplug.metasync',
81     ],
82     entry_points={
83         'console_scripts': [
84             'beet = beets.ui:main',
85         ],
86     },
87 
88     install_requires=[
89         'six>=1.9',
90         'mutagen>=1.33',
91         'munkres~=1.0.0',
92         'unidecode',
93         'musicbrainzngs>=0.4',
94         'pyyaml',
95     ] + (
96         # Use the backport of Python 3.4's `enum` module.
97         ['enum34>=1.0.4'] if sys.version_info < (3, 4, 0) else []
98     ) + (
99         # Pin a Python 2-compatible version of Jellyfish.
100         ['jellyfish==0.6.0'] if sys.version_info < (3, 4, 0) else ['jellyfish']
101     ) + (
102         # Support for ANSI console colors on Windows.
103         ['colorama'] if (sys.platform == 'win32') else []
104     ),
105 
106     tests_require=[
107         'beautifulsoup4',
108         'flask',
109         'mock',
110         'pylast',
111         'rarfile',
112         'responses',
113         'pyxdg',
114         'pathlib',
115         'python-mpd2',
116         'discogs-client'
117     ],
118 
119     # Plugin (optional) dependencies:
120     extras_require={
121         'absubmit': ['requests'],
122         'fetchart': ['requests'],
123         'chroma': ['pyacoustid'],
124         'discogs': ['discogs-client>=2.2.1'],
125         'beatport': ['requests-oauthlib>=0.6.1'],
126         'lastgenre': ['pylast'],
127         'mpdstats': ['python-mpd2>=0.4.2'],
128         'web': ['flask', 'flask-cors'],
129         'import': ['rarfile'],
130         'thumbnails': ['pyxdg'] +
131         (['pathlib'] if (sys.version_info < (3, 4, 0)) else []),
132         'metasync': ['dbus-python'],
133     },
134     # Non-Python/non-PyPI plugin dependencies:
135     # convert: ffmpeg
136     # bpd: python-gi and GStreamer
137     # absubmit: extractor binary from http://acousticbrainz.org/download
138 
139     classifiers=[
140         'Topic :: Multimedia :: Sound/Audio',
141         'Topic :: Multimedia :: Sound/Audio :: Players :: MP3',
142         'License :: OSI Approved :: MIT License',
143         'Environment :: Console',
144         'Environment :: Web Environment',
145         'Programming Language :: Python',
146         'Programming Language :: Python :: 2',
147         'Programming Language :: Python :: 2.7',
148         'Programming Language :: Python :: 3',
149         'Programming Language :: Python :: 3.4',
150         'Programming Language :: Python :: 3.5',
151         'Programming Language :: Python :: 3.6',
152         'Programming Language :: Python :: 3.7',
153         'Programming Language :: Python :: Implementation :: CPython',
154     ],
155 )
156
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/setup.py b/setup.py
--- a/setup.py
+++ b/setup.py
@@ -88,10 +88,14 @@
     install_requires=[
         'six>=1.9',
         'mutagen>=1.33',
-        'munkres~=1.0.0',
         'unidecode',
         'musicbrainzngs>=0.4',
         'pyyaml',
+    ] + [
+        # Avoid a version of munkres incompatible with Python 3.
+        'munkres~=1.0.0' if sys.version_info < (3, 5, 0) else
+        'munkres!=1.1.0,!=1.1.1' if sys.version_info < (3, 6, 0) else
+        'munkres>=1.0.0',
     ] + (
         # Use the backport of Python 3.4's `enum` module.
         ['enum34>=1.0.4'] if sys.version_info < (3, 4, 0) else []

{"golden_diff": "diff --git a/setup.py b/setup.py\n--- a/setup.py\n+++ b/setup.py\n@@ -88,10 +88,14 @@\n     install_requires=[\n         'six>=1.9',\n         'mutagen>=1.33',\n-        'munkres~=1.0.0',\n         'unidecode',\n         'musicbrainzngs>=0.4',\n         'pyyaml',\n+    ] + [\n+        # Avoid a version of munkres incompatible with Python 3.\n+        'munkres~=1.0.0' if sys.version_info < (3, 5, 0) else\n+        'munkres!=1.1.0,!=1.1.1' if sys.version_info < (3, 6, 0) else\n+        'munkres>=1.0.0',\n     ] + (\n         # Use the backport of Python 3.4's `enum` module.\n         ['enum34>=1.0.4'] if sys.version_info < (3, 4, 0) else []\n", "issue": "Errors when installed munkres is > 1.0.x\n### Problem\r\n\r\nWhen invoking beets, beets errors out on munkres versions newer than 1.0.x. This was introduced by https://github.com/beetbox/beets/pull/3146.\r\n\r\nRunning this command in verbose (`-vv`) mode:\r\n\r\n```python-traceback\r\n> beet -vv import .\r\nTraceback (most recent call last):\r\n  File \"/usr/lib/python3.7/site-packages/pkg_resources/__init__.py\", line 583, in _build_master\r\n    ws.require(__requires__)\r\n  File \"/usr/lib/python3.7/site-packages/pkg_resources/__init__.py\", line 900, in require\r\n    needed = self.resolve(parse_requirements(requirements))\r\n  File \"/usr/lib/python3.7/site-packages/pkg_resources/__init__.py\", line 791, in resolve\r\n    raise VersionConflict(dist, req).with_context(dependent_req)\r\npkg_resources.ContextualVersionConflict: (munkres 1.1.2 (/usr/lib/python3.7/site-packages), Requirement.parse('munkres~=1.0.0'), {'beets'})\r\n\r\nDuring handling of the above exception, another exception occurred:\r\n\r\nTraceback (most recent call last):\r\n  File \"/usr/bin/beet\", line 6, in <module>\r\n    from pkg_resources import load_entry_point\r\n  File \"/usr/lib/python3.7/site-packages/pkg_resources/__init__.py\", line 3191, in <module>\r\n    @_call_aside\r\n  File \"/usr/lib/python3.7/site-packages/pkg_resources/__init__.py\", line 3175, in _call_aside\r\n    f(*args, **kwargs)\r\n  File \"/usr/lib/python3.7/site-packages/pkg_resources/__init__.py\", line 3204, in _initialize_master_working_set\r\n    working_set = WorkingSet._build_master()\r\n  File \"/usr/lib/python3.7/site-packages/pkg_resources/__init__.py\", line 585, in _build_master\r\n    return cls._build_from_requirements(__requires__)\r\n  File \"/usr/lib/python3.7/site-packages/pkg_resources/__init__.py\", line 598, in _build_from_requirements\r\n    dists = ws.resolve(reqs, Environment())\r\n  File \"/usr/lib/python3.7/site-packages/pkg_resources/__init__.py\", line 786, in resolve\r\n    raise DistributionNotFound(req, requirers)\r\npkg_resources.DistributionNotFound: The 'munkres~=1.0.0' distribution was not found and is required by beets\r\n```\r\n\r\n### Setup\r\n\r\n* OS: Linux (Arch Linux)\r\n* Python version: 3.7.2\r\n* beets version: 1.4.7.r359.g80f4f0a0-1 (from `pacman -Qi` output, `beet --version` also break due to munkres dependency)\r\n* Turning off plugins made problem go away (yes/no): Didn't try.\r\n\r\nMy configuration (output of `beet config`) is:\r\n\r\nNot relevant.\nErrors when installed munkres is > 1.0.x\n### Problem\r\n\r\nWhen invoking beets, beets errors out on munkres versions newer than 1.0.x. This was introduced by https://github.com/beetbox/beets/pull/3146.\r\n\r\nRunning this command in verbose (`-vv`) mode:\r\n\r\n```python-traceback\r\n> beet -vv import .\r\nTraceback (most recent call last):\r\n  File \"/usr/lib/python3.7/site-packages/pkg_resources/__init__.py\", line 583, in _build_master\r\n    ws.require(__requires__)\r\n  File \"/usr/lib/python3.7/site-packages/pkg_resources/__init__.py\", line 900, in require\r\n    needed = self.resolve(parse_requirements(requirements))\r\n  File \"/usr/lib/python3.7/site-packages/pkg_resources/__init__.py\", line 791, in resolve\r\n    raise VersionConflict(dist, req).with_context(dependent_req)\r\npkg_resources.ContextualVersionConflict: (munkres 1.1.2 (/usr/lib/python3.7/site-packages), Requirement.parse('munkres~=1.0.0'), {'beets'})\r\n\r\nDuring handling of the above exception, another exception occurred:\r\n\r\nTraceback (most recent call last):\r\n  File \"/usr/bin/beet\", line 6, in <module>\r\n    from pkg_resources import load_entry_point\r\n  File \"/usr/lib/python3.7/site-packages/pkg_resources/__init__.py\", line 3191, in <module>\r\n    @_call_aside\r\n  File \"/usr/lib/python3.7/site-packages/pkg_resources/__init__.py\", line 3175, in _call_aside\r\n    f(*args, **kwargs)\r\n  File \"/usr/lib/python3.7/site-packages/pkg_resources/__init__.py\", line 3204, in _initialize_master_working_set\r\n    working_set = WorkingSet._build_master()\r\n  File \"/usr/lib/python3.7/site-packages/pkg_resources/__init__.py\", line 585, in _build_master\r\n    return cls._build_from_requirements(__requires__)\r\n  File \"/usr/lib/python3.7/site-packages/pkg_resources/__init__.py\", line 598, in _build_from_requirements\r\n    dists = ws.resolve(reqs, Environment())\r\n  File \"/usr/lib/python3.7/site-packages/pkg_resources/__init__.py\", line 786, in resolve\r\n    raise DistributionNotFound(req, requirers)\r\npkg_resources.DistributionNotFound: The 'munkres~=1.0.0' distribution was not found and is required by beets\r\n```\r\n\r\n### Setup\r\n\r\n* OS: Linux (Arch Linux)\r\n* Python version: 3.7.2\r\n* beets version: 1.4.7.r359.g80f4f0a0-1 (from `pacman -Qi` output, `beet --version` also break due to munkres dependency)\r\n* Turning off plugins made problem go away (yes/no): Didn't try.\r\n\r\nMy configuration (output of `beet config`) is:\r\n\r\nNot relevant.\n", "before_files": [{"content": "#!/usr/bin/env python\n# -*- coding: utf-8 -*-\n\n# This file is part of beets.\n# Copyright 2016, Adrian Sampson.\n#\n# Permission is hereby granted, free of charge, to any person obtaining\n# a copy of this software and associated documentation files (the\n# \"Software\"), to deal in the Software without restriction, including\n# without limitation the rights to use, copy, modify, merge, publish,\n# distribute, sublicense, and/or sell copies of the Software, and to\n# permit persons to whom the Software is furnished to do so, subject to\n# the following conditions:\n#\n# The above copyright notice and this permission notice shall be\n# included in all copies or substantial portions of the Software.\n\nfrom __future__ import division, absolute_import, print_function\n\nimport os\nimport sys\nimport subprocess\nimport shutil\nfrom setuptools import setup\n\n\ndef _read(fn):\n    path = os.path.join(os.path.dirname(__file__), fn)\n    return open(path).read()\n\n\ndef build_manpages():\n    # Go into the docs directory and build the manpage.\n    docdir = os.path.join(os.path.dirname(__file__), 'docs')\n    curdir = os.getcwd()\n    os.chdir(docdir)\n    try:\n        subprocess.check_call(['make', 'man'])\n    except OSError:\n        print(\"Could not build manpages (make man failed)!\", file=sys.stderr)\n        return\n    finally:\n        os.chdir(curdir)\n\n    # Copy resulting manpages.\n    mandir = os.path.join(os.path.dirname(__file__), 'man')\n    if os.path.exists(mandir):\n        shutil.rmtree(mandir)\n    shutil.copytree(os.path.join(docdir, '_build', 'man'), mandir)\n\n\n# Build manpages if we're making a source distribution tarball.\nif 'sdist' in sys.argv:\n    build_manpages()\n\n\nsetup(\n    name='beets',\n    version='1.4.8',\n    description='music tagger and library organizer',\n    author='Adrian Sampson',\n    author_email='adrian@radbox.org',\n    url='http://beets.io/',\n    license='MIT',\n    platforms='ALL',\n    long_description=_read('README.rst'),\n    test_suite='test.testall.suite',\n    include_package_data=True,  # Install plugin resources.\n\n    packages=[\n        'beets',\n        'beets.ui',\n        'beets.autotag',\n        'beets.util',\n        'beets.dbcore',\n        'beetsplug',\n        'beetsplug.bpd',\n        'beetsplug.web',\n        'beetsplug.lastgenre',\n        'beetsplug.metasync',\n    ],\n    entry_points={\n        'console_scripts': [\n            'beet = beets.ui:main',\n        ],\n    },\n\n    install_requires=[\n        'six>=1.9',\n        'mutagen>=1.33',\n        'munkres~=1.0.0',\n        'unidecode',\n        'musicbrainzngs>=0.4',\n        'pyyaml',\n    ] + (\n        # Use the backport of Python 3.4's `enum` module.\n        ['enum34>=1.0.4'] if sys.version_info < (3, 4, 0) else []\n    ) + (\n        # Pin a Python 2-compatible version of Jellyfish.\n        ['jellyfish==0.6.0'] if sys.version_info < (3, 4, 0) else ['jellyfish']\n    ) + (\n        # Support for ANSI console colors on Windows.\n        ['colorama'] if (sys.platform == 'win32') else []\n    ),\n\n    tests_require=[\n        'beautifulsoup4',\n        'flask',\n        'mock',\n        'pylast',\n        'rarfile',\n        'responses',\n        'pyxdg',\n        'pathlib',\n        'python-mpd2',\n        'discogs-client'\n    ],\n\n    # Plugin (optional) dependencies:\n    extras_require={\n        'absubmit': ['requests'],\n        'fetchart': ['requests'],\n        'chroma': ['pyacoustid'],\n        'discogs': ['discogs-client>=2.2.1'],\n        'beatport': ['requests-oauthlib>=0.6.1'],\n        'lastgenre': ['pylast'],\n        'mpdstats': ['python-mpd2>=0.4.2'],\n        'web': ['flask', 'flask-cors'],\n        'import': ['rarfile'],\n        'thumbnails': ['pyxdg'] +\n        (['pathlib'] if (sys.version_info < (3, 4, 0)) else []),\n        'metasync': ['dbus-python'],\n    },\n    # Non-Python/non-PyPI plugin dependencies:\n    # convert: ffmpeg\n    # bpd: python-gi and GStreamer\n    # absubmit: extractor binary from http://acousticbrainz.org/download\n\n    classifiers=[\n        'Topic :: Multimedia :: Sound/Audio',\n        'Topic :: Multimedia :: Sound/Audio :: Players :: MP3',\n        'License :: OSI Approved :: MIT License',\n        'Environment :: Console',\n        'Environment :: Web Environment',\n        'Programming Language :: Python',\n        'Programming Language :: Python :: 2',\n        'Programming Language :: Python :: 2.7',\n        'Programming Language :: Python :: 3',\n        'Programming Language :: Python :: 3.4',\n        'Programming Language :: Python :: 3.5',\n        'Programming Language :: Python :: 3.6',\n        'Programming Language :: Python :: 3.7',\n        'Programming Language :: Python :: Implementation :: CPython',\n    ],\n)\n", "path": "setup.py"}], "after_files": [{"content": "#!/usr/bin/env python\n# -*- coding: utf-8 -*-\n\n# This file is part of beets.\n# Copyright 2016, Adrian Sampson.\n#\n# Permission is hereby granted, free of charge, to any person obtaining\n# a copy of this software and associated documentation files (the\n# \"Software\"), to deal in the Software without restriction, including\n# without limitation the rights to use, copy, modify, merge, publish,\n# distribute, sublicense, and/or sell copies of the Software, and to\n# permit persons to whom the Software is furnished to do so, subject to\n# the following conditions:\n#\n# The above copyright notice and this permission notice shall be\n# included in all copies or substantial portions of the Software.\n\nfrom __future__ import division, absolute_import, print_function\n\nimport os\nimport sys\nimport subprocess\nimport shutil\nfrom setuptools import setup\n\n\ndef _read(fn):\n    path = os.path.join(os.path.dirname(__file__), fn)\n    return open(path).read()\n\n\ndef build_manpages():\n    # Go into the docs directory and build the manpage.\n    docdir = os.path.join(os.path.dirname(__file__), 'docs')\n    curdir = os.getcwd()\n    os.chdir(docdir)\n    try:\n        subprocess.check_call(['make', 'man'])\n    except OSError:\n        print(\"Could not build manpages (make man failed)!\", file=sys.stderr)\n        return\n    finally:\n        os.chdir(curdir)\n\n    # Copy resulting manpages.\n    mandir = os.path.join(os.path.dirname(__file__), 'man')\n    if os.path.exists(mandir):\n        shutil.rmtree(mandir)\n    shutil.copytree(os.path.join(docdir, '_build', 'man'), mandir)\n\n\n# Build manpages if we're making a source distribution tarball.\nif 'sdist' in sys.argv:\n    build_manpages()\n\n\nsetup(\n    name='beets',\n    version='1.4.8',\n    description='music tagger and library organizer',\n    author='Adrian Sampson',\n    author_email='adrian@radbox.org',\n    url='http://beets.io/',\n    license='MIT',\n    platforms='ALL',\n    long_description=_read('README.rst'),\n    test_suite='test.testall.suite',\n    include_package_data=True,  # Install plugin resources.\n\n    packages=[\n        'beets',\n        'beets.ui',\n        'beets.autotag',\n        'beets.util',\n        'beets.dbcore',\n        'beetsplug',\n        'beetsplug.bpd',\n        'beetsplug.web',\n        'beetsplug.lastgenre',\n        'beetsplug.metasync',\n    ],\n    entry_points={\n        'console_scripts': [\n            'beet = beets.ui:main',\n        ],\n    },\n\n    install_requires=[\n        'six>=1.9',\n        'mutagen>=1.33',\n        'unidecode',\n        'musicbrainzngs>=0.4',\n        'pyyaml',\n    ] + [\n        # Avoid a version of munkres incompatible with Python 3.\n        'munkres~=1.0.0' if sys.version_info < (3, 5, 0) else\n        'munkres!=1.1.0,!=1.1.1' if sys.version_info < (3, 6, 0) else\n        'munkres>=1.0.0',\n    ] + (\n        # Use the backport of Python 3.4's `enum` module.\n        ['enum34>=1.0.4'] if sys.version_info < (3, 4, 0) else []\n    ) + (\n        # Pin a Python 2-compatible version of Jellyfish.\n        ['jellyfish==0.6.0'] if sys.version_info < (3, 4, 0) else ['jellyfish']\n    ) + (\n        # Support for ANSI console colors on Windows.\n        ['colorama'] if (sys.platform == 'win32') else []\n    ),\n\n    tests_require=[\n        'beautifulsoup4',\n        'flask',\n        'mock',\n        'pylast',\n        'rarfile',\n        'responses',\n        'pyxdg',\n        'pathlib',\n        'python-mpd2',\n        'discogs-client'\n    ],\n\n    # Plugin (optional) dependencies:\n    extras_require={\n        'absubmit': ['requests'],\n        'fetchart': ['requests'],\n        'chroma': ['pyacoustid'],\n        'discogs': ['discogs-client>=2.2.1'],\n        'beatport': ['requests-oauthlib>=0.6.1'],\n        'lastgenre': ['pylast'],\n        'mpdstats': ['python-mpd2>=0.4.2'],\n        'web': ['flask', 'flask-cors'],\n        'import': ['rarfile'],\n        'thumbnails': ['pyxdg'] +\n        (['pathlib'] if (sys.version_info < (3, 4, 0)) else []),\n        'metasync': ['dbus-python'],\n    },\n    # Non-Python/non-PyPI plugin dependencies:\n    # convert: ffmpeg\n    # bpd: python-gi and GStreamer\n    # absubmit: extractor binary from http://acousticbrainz.org/download\n\n    classifiers=[\n        'Topic :: Multimedia :: Sound/Audio',\n        'Topic :: Multimedia :: Sound/Audio :: Players :: MP3',\n        'License :: OSI Approved :: MIT License',\n        'Environment :: Console',\n        'Environment :: Web Environment',\n        'Programming Language :: Python',\n        'Programming Language :: Python :: 2',\n        'Programming Language :: Python :: 2.7',\n        'Programming Language :: Python :: 3',\n        'Programming Language :: Python :: 3.4',\n        'Programming Language :: Python :: 3.5',\n        'Programming Language :: Python :: 3.6',\n        'Programming Language :: Python :: 3.7',\n        'Programming Language :: Python :: Implementation :: CPython',\n    ],\n)\n", "path": "setup.py"}]}