prompt: You will be provided with a partial code base and an issue statement explaining a problem to resolve.
  <issue>
  `/articles` has different url and does not show article previews
  On OldCantus, `/news` is a valid url and returns a page showing a list of articles with titles and article details/previews.
  
  On NewCantus, `/news` (http://206.12.88.113/news) returns a 404Error and the resulting list of articles at `/articles` does not contain previews of article contents. 
  
  Additionally, the page on OldCantus paginates the list of articles, while on NewCantus it does not (very possible it has this behaviour programmed but just doesn't have enough articles...)
  
  OldCantus:
  <img width="960" alt="image" src="https://github.com/DDMAL/CantusDB/assets/11023634/153c9a31-5ea1-4e8a-a646-cde3bd7982f7">
  
  
  NewCantus:
  
  <img width="923" alt="image" src="https://github.com/DDMAL/CantusDB/assets/11023634/0b59df5a-b195-49d1-9c77-6cb920f23958">
  
  
  
  </issue>
  <code>
  [start of django/cantusdb_project/articles/urls.py]
  1 from django.urls import path
  2 from articles.views import ArticleDetailView
  3 from articles.views import ArticleListView
  4 
  5 urlpatterns = [
  6     path("articles/", ArticleListView.as_view(), name="article-list"),
  7     path("article/<int:pk>", ArticleDetailView.as_view(), name="article-detail"),
  8 ]
  9
  [end of django/cantusdb_project/articles/urls.py]
  [start of django/cantusdb_project/articles/views.py]
  1 from django.shortcuts import render
  2 from django.views.generic import DetailView, ListView
  3 from articles.models import Article
  4 
  5 
  6 class ArticleDetailView(DetailView):
  7     model = Article
  8     context_object_name = "article"
  9     template_name = "article_detail.html"
  10 
  11 
  12 class ArticleListView(ListView):
  13     model = Article
  14     queryset = Article.objects.order_by("-date_created")
  15     paginate_by = 100
  16     context_object_name = "articles"
  17     template_name = "article_list.html"
  18
  [end of django/cantusdb_project/articles/views.py]
  </code>
  
  I need you to solve this issue by generating a single patch file that I can apply directly to this repository using git apply. Please respond with a single patch file in the following format.
  <patch>
  diff --git a/file.py b/file.py
  --- a/file.py
  +++ b/file.py
  @@ -1,27 +1,35 @@
   def euclidean(a, b):
  -    while b:
  -        a, b = b, a % b
  -    return a
  +    if b == 0:
  +        return a
  +    return euclidean(b, a % b)
   
   
   def bresenham(x0, y0, x1, y1):
       points = []
       dx = abs(x1 - x0)
       dy = abs(y1 - y0)
  -    sx = 1 if x0 < x1 else -1
  -    sy = 1 if y0 < y1 else -1
  -    err = dx - dy
  +    x, y = x0, y0
  +    sx = -1 if x0 > x1 else 1
  +    sy = -1 if y0 > y1 else 1
   
  -    while True:
  -        points.append((x0, y0))
  -        if x0 == x1 and y0 == y1:
  -            break
  -        e2 = 2 * err
  -        if e2 > -dy:
  -            err -= dy
  -            x0 += sx
  -        if e2 < dx:
  -            err += dx
  -            y0 += sy
  +    if dx > dy:
  +        err = dx / 2.0
  +        while x != x1:
  +            points.append((x, y))
  +            err -= dy
  +            if err < 0:
  +                y += sy
  +                err += dx
  +            x += sx
  +    else:
  +        err = dy / 2.0
  +        while y != y1:
  +            points.append((x, y))
  +            err -= dx
  +            if err < 0:
  +                x += sx
  +                err += dy
  +            y += sy
  +
  +    points.append((x, y))
       return points
  
  </patch>
golden_diff: diff --git a/django/cantusdb_project/articles/urls.py b/django/cantusdb_project/articles/urls.py
  --- a/django/cantusdb_project/articles/urls.py
  +++ b/django/cantusdb_project/articles/urls.py
  @@ -1,8 +1,12 @@
   from django.urls import path
  -from articles.views import ArticleDetailView
  -from articles.views import ArticleListView
  +from articles.views import (
  +    ArticleDetailView,
  +    ArticleListView,
  +    article_list_redirect_from_old_path,
  +)
   
   urlpatterns = [
       path("articles/", ArticleListView.as_view(), name="article-list"),
       path("article/<int:pk>", ArticleDetailView.as_view(), name="article-detail"),
  +    path("news/", article_list_redirect_from_old_path),
   ]
  diff --git a/django/cantusdb_project/articles/views.py b/django/cantusdb_project/articles/views.py
  --- a/django/cantusdb_project/articles/views.py
  +++ b/django/cantusdb_project/articles/views.py
  @@ -1,4 +1,5 @@
  -from django.shortcuts import render
  +from django.shortcuts import render, redirect
  +from django.urls.base import reverse
   from django.views.generic import DetailView, ListView
   from articles.models import Article
   
  @@ -12,6 +13,10 @@
   class ArticleListView(ListView):
       model = Article
       queryset = Article.objects.order_by("-date_created")
  -    paginate_by = 100
  +    paginate_by = 10
       context_object_name = "articles"
       template_name = "article_list.html"
  +
  +
  +def article_list_redirect_from_old_path(request):
  +    return redirect(reverse("article-list"))
  
verification_info: {"golden_diff": "diff --git a/django/cantusdb_project/articles/urls.py b/django/cantusdb_project/articles/urls.py\n--- a/django/cantusdb_project/articles/urls.py\n+++ b/django/cantusdb_project/articles/urls.py\n@@ -1,8 +1,12 @@\n from django.urls import path\n-from articles.views import ArticleDetailView\n-from articles.views import ArticleListView\n+from articles.views import (\n+    ArticleDetailView,\n+    ArticleListView,\n+    article_list_redirect_from_old_path,\n+)\n \n urlpatterns = [\n     path(\"articles/\", ArticleListView.as_view(), name=\"article-list\"),\n     path(\"article/<int:pk>\", ArticleDetailView.as_view(), name=\"article-detail\"),\n+    path(\"news/\", article_list_redirect_from_old_path),\n ]\ndiff --git a/django/cantusdb_project/articles/views.py b/django/cantusdb_project/articles/views.py\n--- a/django/cantusdb_project/articles/views.py\n+++ b/django/cantusdb_project/articles/views.py\n@@ -1,4 +1,5 @@\n-from django.shortcuts import render\n+from django.shortcuts import render, redirect\n+from django.urls.base import reverse\n from django.views.generic import DetailView, ListView\n from articles.models import Article\n \n@@ -12,6 +13,10 @@\n class ArticleListView(ListView):\n     model = Article\n     queryset = Article.objects.order_by(\"-date_created\")\n-    paginate_by = 100\n+    paginate_by = 10\n     context_object_name = \"articles\"\n     template_name = \"article_list.html\"\n+\n+\n+def article_list_redirect_from_old_path(request):\n+    return redirect(reverse(\"article-list\"))\n", "issue": "`/articles` has different url and does not show article previews\nOn OldCantus, `/news` is a valid url and returns a page showing a list of articles with titles and article details/previews.\r\n\r\nOn NewCantus, `/news` (http://206.12.88.113/news) returns a 404Error and the resulting list of articles at `/articles` does not contain previews of article contents. \r\n\r\nAdditionally, the page on OldCantus paginates the list of articles, while on NewCantus it does not (very possible it has this behaviour programmed but just doesn't have enough articles...)\r\n\r\nOldCantus:\r\n<img width=\"960\" alt=\"image\" src=\"https://github.com/DDMAL/CantusDB/assets/11023634/153c9a31-5ea1-4e8a-a646-cde3bd7982f7\">\r\n\r\n\r\nNewCantus:\r\n\r\n<img width=\"923\" alt=\"image\" src=\"https://github.com/DDMAL/CantusDB/assets/11023634/0b59df5a-b195-49d1-9c77-6cb920f23958\">\r\n\r\n\n", "before_files": [{"content": "from django.urls import path\nfrom articles.views import ArticleDetailView\nfrom articles.views import ArticleListView\n\nurlpatterns = [\n    path(\"articles/\", ArticleListView.as_view(), name=\"article-list\"),\n    path(\"article/<int:pk>\", ArticleDetailView.as_view(), name=\"article-detail\"),\n]\n", "path": "django/cantusdb_project/articles/urls.py"}, {"content": "from django.shortcuts import render\nfrom django.views.generic import DetailView, ListView\nfrom articles.models import Article\n\n\nclass ArticleDetailView(DetailView):\n    model = Article\n    context_object_name = \"article\"\n    template_name = \"article_detail.html\"\n\n\nclass ArticleListView(ListView):\n    model = Article\n    queryset = Article.objects.order_by(\"-date_created\")\n    paginate_by = 100\n    context_object_name = \"articles\"\n    template_name = \"article_list.html\"\n", "path": "django/cantusdb_project/articles/views.py"}]}