﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
13291	Allow `color_style()` and `parse_color_setting()` to be used with custom colour palettes.	Tai Lee	nobody	"I want to add new roles and change the default terminal colours that ship with Django, for use in my own project's management commands, but I want to retain the ability for these to be overridden with a `DJANGO_COLORS` environment variable. I also don't want to repeat myself by copying the entire `color_style()` and `parse_color_setting()` functions, which are hard coded to use `django.utils.termcolor.PALETTES` and which ignore any roles specified in `DJANGO_COLORS` which are not also present in `django.utils.termcolors.PALETTES[NOCOLOR_PALETTE]`.

It turns out that it's fairly trivial to add a `palettes` argument to both functions, which will allow me to simply define my own dictionary of palettes somewhere (or import and extend the ones that ship with Django) and then call `color_style(my_palettes)` to get a style object with roles and default colours that are appropriate for my project, and also retain the ability for users to customise the colours for my roles with a `DJANGO_COLORS` environment variable.
"	New feature	new	Core (Management commands)	dev	Normal		management command customize color roles		Accepted	1	0	0	1	0	0
