diff --git a/MANIFEST.in b/MANIFEST.in
index eb10a8da6b078cbdab95effd9c83f08fb525d0de..1aba38f67a2211cf5b09466d7b411206cb7223bf 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -1,2 +1 @@
 include LICENSE
-include fastentrypoints.py
diff --git a/fastentrypoints.py b/fastentrypoints.py
deleted file mode 100644
index 9707f74a3f87eb4cd38b9e15fa59a053abc43cf7..0000000000000000000000000000000000000000
--- a/fastentrypoints.py
+++ /dev/null
@@ -1,112 +0,0 @@
-# noqa: D300,D400
-# Copyright (c) 2016, Aaron Christianson
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# 1. Redistributions of source code must retain the above copyright
-#    notice, this list of conditions and the following disclaimer.
-#
-# 2. Redistributions in binary form must reproduce the above copyright
-#    notice, this list of conditions and the following disclaimer in the
-#    documentation and/or other materials provided with the distribution.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
-# IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
-# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
-# PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
-# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-'''
-Monkey patch setuptools to write faster console_scripts with this format:
-
-    import sys
-    from mymodule import entry_function
-    sys.exit(entry_function())
-
-This is better.
-
-(c) 2016, Aaron Christianson
-http://github.com/ninjaaron/fast-entry_points
-'''
-from setuptools.command import easy_install
-import re
-TEMPLATE = '''\
-# -*- coding: utf-8 -*-
-# EASY-INSTALL-ENTRY-SCRIPT: '{3}','{4}','{5}'
-__requires__ = '{3}'
-import re
-import sys
-
-from {0} import {1}
-
-if __name__ == '__main__':
-    sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
-    sys.exit({2}())'''
-
-
-@classmethod
-def get_args(cls, dist, header=None):  # noqa: D205,D400
-    """
-    Yield write_script() argument tuples for a distribution's
-    console_scripts and gui_scripts entry points.
-    """
-    if header is None:
-        # pylint: disable=E1101
-        header = cls.get_header()
-    spec = str(dist.as_requirement())
-    for type_ in 'console', 'gui':
-        group = type_ + '_scripts'
-        for name, ep in dist.get_entry_map(group).items():
-            # ensure_safe_name
-            if re.search(r'[\\/]', name):
-                raise ValueError("Path separators not allowed in script names")
-            script_text = TEMPLATE.format(
-                ep.module_name, ep.attrs[0], '.'.join(ep.attrs),
-                spec, group, name)
-            # pylint: disable=E1101
-            args = cls._get_script_args(type_, name, header, script_text)
-            for res in args:
-                yield res
-
-
-# pylint: disable=E1101
-easy_install.ScriptWriter.get_args = get_args
-
-
-def main():
-    import os
-    import re
-    import shutil
-    import sys
-    dests = sys.argv[1:] or ['.']
-    filename = re.sub('\.pyc$', '.py', __file__)
-
-    for dst in dests:
-        shutil.copy(filename, dst)
-        manifest_path = os.path.join(dst, 'MANIFEST.in')
-        setup_path = os.path.join(dst, 'setup.py')
-
-        # Insert the include statement to MANIFEST.in if not present
-        with open(manifest_path, 'a+') as manifest:
-            manifest.seek(0)
-            manifest_content = manifest.read()
-            if 'include fastentrypoints.py' not in manifest_content:
-                manifest.write(('\n' if manifest_content else '') +
-                               'include fastentrypoints.py')
-
-        # Insert the import statement to setup.py if not present
-        with open(setup_path, 'a+') as setup:
-            setup.seek(0)
-            setup_content = setup.read()
-            if 'import fastentrypoints' not in setup_content:
-                setup.seek(0)
-                setup.truncate()
-                setup.write('import fastentrypoints\n' + setup_content)
diff --git a/setup.py b/setup.py
index 41b2c758323f3d6936b48a326e551d64416acfd4..ad08782557033421d423606c9bd3b7c9e5b618d3 100644
--- a/setup.py
+++ b/setup.py
@@ -10,8 +10,6 @@ from setuptools.command.test import test as TestCommand
 from codecs import open
 from os import path
 
-import fastentrypoints  # noqa: F401
-
 
 class PyTest(TestCommand):
     user_options = [('pytest-args=', 'a', 'Arguments to pass to pytest')]