We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Drop bodhi.server.services.zz_redirects
This module exists to redirect legacy Bodhi 1 URLs to the Bodhi 2 counterparts, but I don't think we need it anymore. Bodhi 2 is not backwards compatible with Bodhi 1, and Bodhi 4 will also be further incompatible.

--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `bodhi/server/services/zz_redirects.py`
Content:
```
1 # Copyright © 2015-2017 Red Hat, Inc.
2 #
3 # This file is part of Bodhi.
4 #
5 # This program is free software; you can redistribute it and/or
6 # modify it under the terms of the GNU General Public License
7 # as published by the Free Software Foundation; either version 2
8 # of the License, or (at your option) any later version.
9 #
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 # GNU General Public License for more details.
14 #
15 # You should have received a copy of the GNU General Public License
16 # along with this program; if not, write to the Free Software
17 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
18 """
19 Handle general redirect stuff.
20 
21 This module name gets a 'zz_' tacked on the front so that it comes last.
22 We need to catch /updates/{id}/request and /updates/{id}/edit first and those
23 get defined in the other service modules.
24 """
25 
26 from cornice import Service
27 from pyramid.httpexceptions import HTTPFound
28 
29 import bodhi.server.security
30 
31 
32 zz_bodhi1_update_redirect = Service(
33     name='bodhi1_update_redirect', path='/updates/{id}/{title}',
34     description='Redirect to old updates/ALIAS/TITLE urls',
35     cors_origins=bodhi.server.security.cors_origins_rw)
36 
37 
38 @zz_bodhi1_update_redirect.get()
39 def zz_get_bodhi1_update_redirect(request):
40     """
41     Redirect users from the Bodhi 1 update URL to the new path.
42 
43     Args:
44         request (pyramid.request): The current web request.
45     Returns:
46         pyramid.httpexceptions.HTTPFound: A redirect to the same update in Bodhi's current URL
47             heirarchy.
48     """
49     return HTTPFound("/updates/{0}".format(request.matchdict['id']))
50
```
--- 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/bodhi/server/services/zz_redirects.py b/bodhi/server/services/zz_redirects.py
deleted file mode 100644
--- a/bodhi/server/services/zz_redirects.py
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright © 2015-2017 Red Hat, Inc.
-#
-# This file is part of Bodhi.
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
-"""
-Handle general redirect stuff.
-
-This module name gets a 'zz_' tacked on the front so that it comes last.
-We need to catch /updates/{id}/request and /updates/{id}/edit first and those
-get defined in the other service modules.
-"""
-
-from cornice import Service
-from pyramid.httpexceptions import HTTPFound
-
-import bodhi.server.security
-
-
-zz_bodhi1_update_redirect = Service(
-    name='bodhi1_update_redirect', path='/updates/{id}/{title}',
-    description='Redirect to old updates/ALIAS/TITLE urls',
-    cors_origins=bodhi.server.security.cors_origins_rw)
-
-
-@zz_bodhi1_update_redirect.get()
-def zz_get_bodhi1_update_redirect(request):
-    """
-    Redirect users from the Bodhi 1 update URL to the new path.
-
-    Args:
-        request (pyramid.request): The current web request.
-    Returns:
-        pyramid.httpexceptions.HTTPFound: A redirect to the same update in Bodhi's current URL
-            heirarchy.
-    """
-    return HTTPFound("/updates/{0}".format(request.matchdict['id']))

{"golden_diff": "diff --git a/bodhi/server/services/zz_redirects.py b/bodhi/server/services/zz_redirects.py\ndeleted file mode 100644\n--- a/bodhi/server/services/zz_redirects.py\n+++ /dev/null\n@@ -1,49 +0,0 @@\n-# Copyright \u00a9 2015-2017 Red Hat, Inc.\n-#\n-# This file is part of Bodhi.\n-#\n-# This program is free software; you can redistribute it and/or\n-# modify it under the terms of the GNU General Public License\n-# as published by the Free Software Foundation; either version 2\n-# of the License, or (at your option) any later version.\n-#\n-# This program is distributed in the hope that it will be useful,\n-# but WITHOUT ANY WARRANTY; without even the implied warranty of\n-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n-# GNU General Public License for more details.\n-#\n-# You should have received a copy of the GNU General Public License\n-# along with this program; if not, write to the Free Software\n-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n-\"\"\"\n-Handle general redirect stuff.\n-\n-This module name gets a 'zz_' tacked on the front so that it comes last.\n-We need to catch /updates/{id}/request and /updates/{id}/edit first and those\n-get defined in the other service modules.\n-\"\"\"\n-\n-from cornice import Service\n-from pyramid.httpexceptions import HTTPFound\n-\n-import bodhi.server.security\n-\n-\n-zz_bodhi1_update_redirect = Service(\n-    name='bodhi1_update_redirect', path='/updates/{id}/{title}',\n-    description='Redirect to old updates/ALIAS/TITLE urls',\n-    cors_origins=bodhi.server.security.cors_origins_rw)\n-\n-\n-@zz_bodhi1_update_redirect.get()\n-def zz_get_bodhi1_update_redirect(request):\n-    \"\"\"\n-    Redirect users from the Bodhi 1 update URL to the new path.\n-\n-    Args:\n-        request (pyramid.request): The current web request.\n-    Returns:\n-        pyramid.httpexceptions.HTTPFound: A redirect to the same update in Bodhi's current URL\n-            heirarchy.\n-    \"\"\"\n-    return HTTPFound(\"/updates/{0}\".format(request.matchdict['id']))\n", "issue": "Drop bodhi.server.services.zz_redirects\nThis module exists to redirect legacy Bodhi 1 URLs to the Bodhi 2 counterparts, but I don't think we need it anymore. Bodhi 2 is not backwards compatible with Bodhi 1, and Bodhi 4 will also be further incompatible.\n", "before_files": [{"content": "# Copyright \u00a9 2015-2017 Red Hat, Inc.\n#\n# This file is part of Bodhi.\n#\n# This program is free software; you can redistribute it and/or\n# modify it under the terms of the GNU General Public License\n# as published by the Free Software Foundation; either version 2\n# of the License, or (at your option) any later version.\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n# GNU General Public License for more details.\n#\n# You should have received a copy of the GNU General Public License\n# along with this program; if not, write to the Free Software\n# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\n\"\"\"\nHandle general redirect stuff.\n\nThis module name gets a 'zz_' tacked on the front so that it comes last.\nWe need to catch /updates/{id}/request and /updates/{id}/edit first and those\nget defined in the other service modules.\n\"\"\"\n\nfrom cornice import Service\nfrom pyramid.httpexceptions import HTTPFound\n\nimport bodhi.server.security\n\n\nzz_bodhi1_update_redirect = Service(\n    name='bodhi1_update_redirect', path='/updates/{id}/{title}',\n    description='Redirect to old updates/ALIAS/TITLE urls',\n    cors_origins=bodhi.server.security.cors_origins_rw)\n\n\n@zz_bodhi1_update_redirect.get()\ndef zz_get_bodhi1_update_redirect(request):\n    \"\"\"\n    Redirect users from the Bodhi 1 update URL to the new path.\n\n    Args:\n        request (pyramid.request): The current web request.\n    Returns:\n        pyramid.httpexceptions.HTTPFound: A redirect to the same update in Bodhi's current URL\n            heirarchy.\n    \"\"\"\n    return HTTPFound(\"/updates/{0}\".format(request.matchdict['id']))\n", "path": "bodhi/server/services/zz_redirects.py"}], "after_files": [{"content": null, "path": "bodhi/server/services/zz_redirects.py"}]}