prompt: We are currently solving the following issue within our repository. Here is the issue text:
  --- BEGIN ISSUE ---
  Format JSON keys in camel case
  Endpoints consumed by the clients should have the JSON keys in camel case. By having them camel case, it follows the formatting that we have in other services. 
  
  --- END ISSUE ---
  
  Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
  --- BEGIN FILES ---
  Path: `src/config/settings.py`
  Content:
  ```
  1 """
  2 Django settings for safe_client_config_service project.
  3 
  4 Generated by 'django-admin startproject' using Django 3.2.
  5 
  6 For more information on this file, see
  7 https://docs.djangoproject.com/en/3.2/topics/settings/
  8 
  9 For the full list of settings and their values, see
  10 https://docs.djangoproject.com/en/3.2/ref/settings/
  11 """
  12 import os
  13 from distutils.util import strtobool
  14 from pathlib import Path
  15 
  16 # Build paths inside the project like this: BASE_DIR / 'subdir'.
  17 BASE_DIR = Path(__file__).resolve().parent.parent
  18 
  19 # Quick-start development settings - unsuitable for production
  20 # See https://docs.djangoproject.com/en/3.2/howto/deployment/checklist/
  21 
  22 # SECURITY WARNING: keep the secret key used in production secret!
  23 SECRET_KEY = os.getenv("SECRET_KEY", None)
  24 
  25 # SECURITY WARNING: don't run with debug turned on in production!
  26 DEBUG = bool(strtobool(os.getenv("DEBUG", "false")))
  27 
  28 # https://docs.djangoproject.com/en/3.2/ref/settings/#std:setting-ALLOWED_HOSTS
  29 allowed_hosts = os.getenv("DJANGO_ALLOWED_HOSTS", ".localhost,127.0.0.1,[::1]")
  30 ALLOWED_HOSTS = [allowed_host.strip() for allowed_host in allowed_hosts.split(",")]
  31 
  32 # Application definition
  33 
  34 default_renderer_classes = os.getenv(
  35     "REST_DEFAULT_RENDERER_CLASSES", "rest_framework.renderers.JSONRenderer"
  36 )
  37 REST_FRAMEWORK = {
  38     # https://www.django-rest-framework.org/api-guide/renderers/
  39     "DEFAULT_RENDERER_CLASSES": [
  40         default_renderer_class.strip()
  41         for default_renderer_class in default_renderer_classes.split(",")
  42     ]
  43 }
  44 
  45 INSTALLED_APPS = [
  46     "safe_apps.apps.AppsConfig",
  47     "django.contrib.admin",
  48     "django.contrib.auth",
  49     "django.contrib.contenttypes",
  50     "django.contrib.sessions",
  51     "django.contrib.messages",
  52     "django.contrib.staticfiles",
  53     "rest_framework",
  54 ]
  55 
  56 MIDDLEWARE = [
  57     "config.middleware.LoggingMiddleware",
  58     "django.middleware.security.SecurityMiddleware",
  59     "django.contrib.sessions.middleware.SessionMiddleware",
  60     "django.middleware.common.CommonMiddleware",
  61     "django.middleware.csrf.CsrfViewMiddleware",
  62     "django.contrib.auth.middleware.AuthenticationMiddleware",
  63     "django.contrib.messages.middleware.MessageMiddleware",
  64     "django.middleware.clickjacking.XFrameOptionsMiddleware",
  65 ]
  66 
  67 CACHES = {
  68     "default": {
  69         "BACKEND": "django.core.cache.backends.locmem.LocMemCache",
  70     },
  71     "safe-apps": {
  72         "BACKEND": "django.core.cache.backends.locmem.LocMemCache",
  73     },
  74 }
  75 
  76 LOGGING = {
  77     "version": 1,
  78     "disable_existing_loggers": False,
  79     "formatters": {
  80         "short": {"format": "%(asctime)s %(message)s"},
  81         "verbose": {
  82             "format": "%(asctime)s [%(levelname)s] [%(processName)s] %(message)s"
  83         },
  84     },
  85     "handlers": {
  86         "console": {
  87             "class": "logging.StreamHandler",
  88             "formatter": "verbose",
  89         },
  90         "console_short": {
  91             "class": "logging.StreamHandler",
  92             "formatter": "short",
  93         },
  94     },
  95     "root": {
  96         "handlers": ["console"],
  97         "level": os.getenv("ROOT_LOG_LEVEL", "INFO"),
  98     },
  99     "loggers": {
  100         "LoggingMiddleware": {
  101             "handlers": ["console_short"],
  102             "level": "INFO",
  103             "propagate": False,
  104         },
  105     },
  106 }
  107 
  108 ROOT_URLCONF = "config.urls"
  109 
  110 TEMPLATES = [
  111     {
  112         "BACKEND": "django.template.backends.django.DjangoTemplates",
  113         "DIRS": [],
  114         "APP_DIRS": True,
  115         "OPTIONS": {
  116             "context_processors": [
  117                 "django.template.context_processors.debug",
  118                 "django.template.context_processors.request",
  119                 "django.contrib.auth.context_processors.auth",
  120                 "django.contrib.messages.context_processors.messages",
  121             ],
  122         },
  123     },
  124 ]
  125 
  126 WSGI_APPLICATION = "config.wsgi.application"
  127 
  128 # Database
  129 # https://docs.djangoproject.com/en/3.2/ref/settings/#databases
  130 
  131 DATABASES = {
  132     "default": {
  133         "ENGINE": "django.db.backends.postgresql",
  134         "NAME": os.getenv("POSTGRES_NAME", "postgres"),
  135         "USER": os.getenv("POSTGRES_USER", "postgres"),
  136         "PASSWORD": os.getenv("POSTGRES_PASSWORD", "postgres"),
  137         "HOST": os.getenv("POSTGRES_HOST", "db"),
  138         "PORT": os.getenv("POSTGRES_PORT", "5432"),
  139     }
  140 }
  141 
  142 # Password validation
  143 # https://docs.djangoproject.com/en/3.2/ref/settings/#auth-password-validators
  144 
  145 AUTH_PASSWORD_VALIDATORS = [
  146     {
  147         "NAME": "django.contrib.auth.password_validation.UserAttributeSimilarityValidator",
  148     },
  149     {
  150         "NAME": "django.contrib.auth.password_validation.MinimumLengthValidator",
  151     },
  152     {
  153         "NAME": "django.contrib.auth.password_validation.CommonPasswordValidator",
  154     },
  155     {
  156         "NAME": "django.contrib.auth.password_validation.NumericPasswordValidator",
  157     },
  158 ]
  159 
  160 # Internationalization
  161 # https://docs.djangoproject.com/en/3.2/topics/i18n/
  162 
  163 LANGUAGE_CODE = "en-us"
  164 
  165 TIME_ZONE = "UTC"
  166 
  167 USE_I18N = True
  168 
  169 USE_L10N = True
  170 
  171 USE_TZ = True
  172 
  173 # Static files (CSS, JavaScript, Images)
  174 # https://docs.djangoproject.com/en/3.2/howto/static-files/
  175 
  176 STATIC_URL = "/static/"
  177 
  178 # Default primary key field type
  179 # https://docs.djangoproject.com/en/3.2/ref/settings/#default-auto-field
  180 
  181 DEFAULT_AUTO_FIELD = "django.db.models.BigAutoField"
  182
  ```
  --- 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()
  
  ```
  
golden_diff: diff --git a/src/config/settings.py b/src/config/settings.py
  --- a/src/config/settings.py
  +++ b/src/config/settings.py
  @@ -31,14 +31,10 @@
   
   # Application definition
   
  -default_renderer_classes = os.getenv(
  -    "REST_DEFAULT_RENDERER_CLASSES", "rest_framework.renderers.JSONRenderer"
  -)
   REST_FRAMEWORK = {
       # https://www.django-rest-framework.org/api-guide/renderers/
       "DEFAULT_RENDERER_CLASSES": [
  -        default_renderer_class.strip()
  -        for default_renderer_class in default_renderer_classes.split(",")
  +        "djangorestframework_camel_case.render.CamelCaseJSONRenderer",
       ]
   }
  
verification_info: {"golden_diff": "diff --git a/src/config/settings.py b/src/config/settings.py\n--- a/src/config/settings.py\n+++ b/src/config/settings.py\n@@ -31,14 +31,10 @@\n \n # Application definition\n \n-default_renderer_classes = os.getenv(\n-    \"REST_DEFAULT_RENDERER_CLASSES\", \"rest_framework.renderers.JSONRenderer\"\n-)\n REST_FRAMEWORK = {\n     # https://www.django-rest-framework.org/api-guide/renderers/\n     \"DEFAULT_RENDERER_CLASSES\": [\n-        default_renderer_class.strip()\n-        for default_renderer_class in default_renderer_classes.split(\",\")\n+        \"djangorestframework_camel_case.render.CamelCaseJSONRenderer\",\n     ]\n }\n", "issue": "Format JSON keys in camel case\nEndpoints consumed by the clients should have the JSON keys in camel case. By having them camel case, it follows the formatting that we have in other services. \n", "before_files": [{"content": "\"\"\"\nDjango settings for safe_client_config_service project.\n\nGenerated by 'django-admin startproject' using Django 3.2.\n\nFor more information on this file, see\nhttps://docs.djangoproject.com/en/3.2/topics/settings/\n\nFor the full list of settings and their values, see\nhttps://docs.djangoproject.com/en/3.2/ref/settings/\n\"\"\"\nimport os\nfrom distutils.util import strtobool\nfrom pathlib import Path\n\n# Build paths inside the project like this: BASE_DIR / 'subdir'.\nBASE_DIR = Path(__file__).resolve().parent.parent\n\n# Quick-start development settings - unsuitable for production\n# See https://docs.djangoproject.com/en/3.2/howto/deployment/checklist/\n\n# SECURITY WARNING: keep the secret key used in production secret!\nSECRET_KEY = os.getenv(\"SECRET_KEY\", None)\n\n# SECURITY WARNING: don't run with debug turned on in production!\nDEBUG = bool(strtobool(os.getenv(\"DEBUG\", \"false\")))\n\n# https://docs.djangoproject.com/en/3.2/ref/settings/#std:setting-ALLOWED_HOSTS\nallowed_hosts = os.getenv(\"DJANGO_ALLOWED_HOSTS\", \".localhost,127.0.0.1,[::1]\")\nALLOWED_HOSTS = [allowed_host.strip() for allowed_host in allowed_hosts.split(\",\")]\n\n# Application definition\n\ndefault_renderer_classes = os.getenv(\n    \"REST_DEFAULT_RENDERER_CLASSES\", \"rest_framework.renderers.JSONRenderer\"\n)\nREST_FRAMEWORK = {\n    # https://www.django-rest-framework.org/api-guide/renderers/\n    \"DEFAULT_RENDERER_CLASSES\": [\n        default_renderer_class.strip()\n        for default_renderer_class in default_renderer_classes.split(\",\")\n    ]\n}\n\nINSTALLED_APPS = [\n    \"safe_apps.apps.AppsConfig\",\n    \"django.contrib.admin\",\n    \"django.contrib.auth\",\n    \"django.contrib.contenttypes\",\n    \"django.contrib.sessions\",\n    \"django.contrib.messages\",\n    \"django.contrib.staticfiles\",\n    \"rest_framework\",\n]\n\nMIDDLEWARE = [\n    \"config.middleware.LoggingMiddleware\",\n    \"django.middleware.security.SecurityMiddleware\",\n    \"django.contrib.sessions.middleware.SessionMiddleware\",\n    \"django.middleware.common.CommonMiddleware\",\n    \"django.middleware.csrf.CsrfViewMiddleware\",\n    \"django.contrib.auth.middleware.AuthenticationMiddleware\",\n    \"django.contrib.messages.middleware.MessageMiddleware\",\n    \"django.middleware.clickjacking.XFrameOptionsMiddleware\",\n]\n\nCACHES = {\n    \"default\": {\n        \"BACKEND\": \"django.core.cache.backends.locmem.LocMemCache\",\n    },\n    \"safe-apps\": {\n        \"BACKEND\": \"django.core.cache.backends.locmem.LocMemCache\",\n    },\n}\n\nLOGGING = {\n    \"version\": 1,\n    \"disable_existing_loggers\": False,\n    \"formatters\": {\n        \"short\": {\"format\": \"%(asctime)s %(message)s\"},\n        \"verbose\": {\n            \"format\": \"%(asctime)s [%(levelname)s] [%(processName)s] %(message)s\"\n        },\n    },\n    \"handlers\": {\n        \"console\": {\n            \"class\": \"logging.StreamHandler\",\n            \"formatter\": \"verbose\",\n        },\n        \"console_short\": {\n            \"class\": \"logging.StreamHandler\",\n            \"formatter\": \"short\",\n        },\n    },\n    \"root\": {\n        \"handlers\": [\"console\"],\n        \"level\": os.getenv(\"ROOT_LOG_LEVEL\", \"INFO\"),\n    },\n    \"loggers\": {\n        \"LoggingMiddleware\": {\n            \"handlers\": [\"console_short\"],\n            \"level\": \"INFO\",\n            \"propagate\": False,\n        },\n    },\n}\n\nROOT_URLCONF = \"config.urls\"\n\nTEMPLATES = [\n    {\n        \"BACKEND\": \"django.template.backends.django.DjangoTemplates\",\n        \"DIRS\": [],\n        \"APP_DIRS\": True,\n        \"OPTIONS\": {\n            \"context_processors\": [\n                \"django.template.context_processors.debug\",\n                \"django.template.context_processors.request\",\n                \"django.contrib.auth.context_processors.auth\",\n                \"django.contrib.messages.context_processors.messages\",\n            ],\n        },\n    },\n]\n\nWSGI_APPLICATION = \"config.wsgi.application\"\n\n# Database\n# https://docs.djangoproject.com/en/3.2/ref/settings/#databases\n\nDATABASES = {\n    \"default\": {\n        \"ENGINE\": \"django.db.backends.postgresql\",\n        \"NAME\": os.getenv(\"POSTGRES_NAME\", \"postgres\"),\n        \"USER\": os.getenv(\"POSTGRES_USER\", \"postgres\"),\n        \"PASSWORD\": os.getenv(\"POSTGRES_PASSWORD\", \"postgres\"),\n        \"HOST\": os.getenv(\"POSTGRES_HOST\", \"db\"),\n        \"PORT\": os.getenv(\"POSTGRES_PORT\", \"5432\"),\n    }\n}\n\n# Password validation\n# https://docs.djangoproject.com/en/3.2/ref/settings/#auth-password-validators\n\nAUTH_PASSWORD_VALIDATORS = [\n    {\n        \"NAME\": \"django.contrib.auth.password_validation.UserAttributeSimilarityValidator\",\n    },\n    {\n        \"NAME\": \"django.contrib.auth.password_validation.MinimumLengthValidator\",\n    },\n    {\n        \"NAME\": \"django.contrib.auth.password_validation.CommonPasswordValidator\",\n    },\n    {\n        \"NAME\": \"django.contrib.auth.password_validation.NumericPasswordValidator\",\n    },\n]\n\n# Internationalization\n# https://docs.djangoproject.com/en/3.2/topics/i18n/\n\nLANGUAGE_CODE = \"en-us\"\n\nTIME_ZONE = \"UTC\"\n\nUSE_I18N = True\n\nUSE_L10N = True\n\nUSE_TZ = True\n\n# Static files (CSS, JavaScript, Images)\n# https://docs.djangoproject.com/en/3.2/howto/static-files/\n\nSTATIC_URL = \"/static/\"\n\n# Default primary key field type\n# https://docs.djangoproject.com/en/3.2/ref/settings/#default-auto-field\n\nDEFAULT_AUTO_FIELD = \"django.db.models.BigAutoField\"\n", "path": "src/config/settings.py"}], "after_files": [{"content": "\"\"\"\nDjango settings for safe_client_config_service project.\n\nGenerated by 'django-admin startproject' using Django 3.2.\n\nFor more information on this file, see\nhttps://docs.djangoproject.com/en/3.2/topics/settings/\n\nFor the full list of settings and their values, see\nhttps://docs.djangoproject.com/en/3.2/ref/settings/\n\"\"\"\nimport os\nfrom distutils.util import strtobool\nfrom pathlib import Path\n\n# Build paths inside the project like this: BASE_DIR / 'subdir'.\nBASE_DIR = Path(__file__).resolve().parent.parent\n\n# Quick-start development settings - unsuitable for production\n# See https://docs.djangoproject.com/en/3.2/howto/deployment/checklist/\n\n# SECURITY WARNING: keep the secret key used in production secret!\nSECRET_KEY = os.getenv(\"SECRET_KEY\", None)\n\n# SECURITY WARNING: don't run with debug turned on in production!\nDEBUG = bool(strtobool(os.getenv(\"DEBUG\", \"false\")))\n\n# https://docs.djangoproject.com/en/3.2/ref/settings/#std:setting-ALLOWED_HOSTS\nallowed_hosts = os.getenv(\"DJANGO_ALLOWED_HOSTS\", \".localhost,127.0.0.1,[::1]\")\nALLOWED_HOSTS = [allowed_host.strip() for allowed_host in allowed_hosts.split(\",\")]\n\n# Application definition\n\nREST_FRAMEWORK = {\n    # https://www.django-rest-framework.org/api-guide/renderers/\n    \"DEFAULT_RENDERER_CLASSES\": [\n        \"djangorestframework_camel_case.render.CamelCaseJSONRenderer\",\n    ]\n}\n\nINSTALLED_APPS = [\n    \"safe_apps.apps.AppsConfig\",\n    \"django.contrib.admin\",\n    \"django.contrib.auth\",\n    \"django.contrib.contenttypes\",\n    \"django.contrib.sessions\",\n    \"django.contrib.messages\",\n    \"django.contrib.staticfiles\",\n    \"rest_framework\",\n]\n\nMIDDLEWARE = [\n    \"config.middleware.LoggingMiddleware\",\n    \"django.middleware.security.SecurityMiddleware\",\n    \"django.contrib.sessions.middleware.SessionMiddleware\",\n    \"django.middleware.common.CommonMiddleware\",\n    \"django.middleware.csrf.CsrfViewMiddleware\",\n    \"django.contrib.auth.middleware.AuthenticationMiddleware\",\n    \"django.contrib.messages.middleware.MessageMiddleware\",\n    \"django.middleware.clickjacking.XFrameOptionsMiddleware\",\n]\n\nCACHES = {\n    \"default\": {\n        \"BACKEND\": \"django.core.cache.backends.locmem.LocMemCache\",\n    },\n    \"safe-apps\": {\n        \"BACKEND\": \"django.core.cache.backends.locmem.LocMemCache\",\n    },\n}\n\nLOGGING = {\n    \"version\": 1,\n    \"disable_existing_loggers\": False,\n    \"formatters\": {\n        \"short\": {\"format\": \"%(asctime)s %(message)s\"},\n        \"verbose\": {\n            \"format\": \"%(asctime)s [%(levelname)s] [%(processName)s] %(message)s\"\n        },\n    },\n    \"handlers\": {\n        \"console\": {\n            \"class\": \"logging.StreamHandler\",\n            \"formatter\": \"verbose\",\n        },\n        \"console_short\": {\n            \"class\": \"logging.StreamHandler\",\n            \"formatter\": \"short\",\n        },\n    },\n    \"root\": {\n        \"handlers\": [\"console\"],\n        \"level\": os.getenv(\"ROOT_LOG_LEVEL\", \"INFO\"),\n    },\n    \"loggers\": {\n        \"LoggingMiddleware\": {\n            \"handlers\": [\"console_short\"],\n            \"level\": \"INFO\",\n            \"propagate\": False,\n        },\n    },\n}\n\nROOT_URLCONF = \"config.urls\"\n\nTEMPLATES = [\n    {\n        \"BACKEND\": \"django.template.backends.django.DjangoTemplates\",\n        \"DIRS\": [],\n        \"APP_DIRS\": True,\n        \"OPTIONS\": {\n            \"context_processors\": [\n                \"django.template.context_processors.debug\",\n                \"django.template.context_processors.request\",\n                \"django.contrib.auth.context_processors.auth\",\n                \"django.contrib.messages.context_processors.messages\",\n            ],\n        },\n    },\n]\n\nWSGI_APPLICATION = \"config.wsgi.application\"\n\n# Database\n# https://docs.djangoproject.com/en/3.2/ref/settings/#databases\n\nDATABASES = {\n    \"default\": {\n        \"ENGINE\": \"django.db.backends.postgresql\",\n        \"NAME\": os.getenv(\"POSTGRES_NAME\", \"postgres\"),\n        \"USER\": os.getenv(\"POSTGRES_USER\", \"postgres\"),\n        \"PASSWORD\": os.getenv(\"POSTGRES_PASSWORD\", \"postgres\"),\n        \"HOST\": os.getenv(\"POSTGRES_HOST\", \"db\"),\n        \"PORT\": os.getenv(\"POSTGRES_PORT\", \"5432\"),\n    }\n}\n\n# Password validation\n# https://docs.djangoproject.com/en/3.2/ref/settings/#auth-password-validators\n\nAUTH_PASSWORD_VALIDATORS = [\n    {\n        \"NAME\": \"django.contrib.auth.password_validation.UserAttributeSimilarityValidator\",\n    },\n    {\n        \"NAME\": \"django.contrib.auth.password_validation.MinimumLengthValidator\",\n    },\n    {\n        \"NAME\": \"django.contrib.auth.password_validation.CommonPasswordValidator\",\n    },\n    {\n        \"NAME\": \"django.contrib.auth.password_validation.NumericPasswordValidator\",\n    },\n]\n\n# Internationalization\n# https://docs.djangoproject.com/en/3.2/topics/i18n/\n\nLANGUAGE_CODE = \"en-us\"\n\nTIME_ZONE = \"UTC\"\n\nUSE_I18N = True\n\nUSE_L10N = True\n\nUSE_TZ = True\n\n# Static files (CSS, JavaScript, Images)\n# https://docs.djangoproject.com/en/3.2/howto/static-files/\n\nSTATIC_URL = \"/static/\"\n\n# Default primary key field type\n# https://docs.djangoproject.com/en/3.2/ref/settings/#default-auto-field\n\nDEFAULT_AUTO_FIELD = \"django.db.models.BigAutoField\"\n", "path": "src/config/settings.py"}]}