Dynamic configuration expression support
- Lenguaje dominante
- Go
- Estrellas
- 6.1k
- Forks
- 327
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
1. Define evaluation context that is passed across the codebase via context.Context.
2. Replace some (most?) configuration values with generic dynamic like:
```go
type DynamicString struct {
...
}
func (ds DynamicString) Evaluate(ctx context.Context) (string, error)
```
3. Add support for single-quote escaping in maddy configuration syntax.
```
modify {
replace_rcpt expr 'address_username(key)'
}
```
4. Define configuration syntax (like above) for dynamic expressions.
Guía de contribución
Línea de trabajo
No se nombran archivos, pruebas ni puntos de entrada. Empieza por mapear la evaluación de la configuración en todo el código e identificar dónde tendría que propagarse context.Context; después revisa el analizador de configuración existente antes de definir la sintaxis de las expresiones dinámicas y el comportamiento del escapado. Se considera terminado cuando el diseño está acordado y los valores dinámicos, la sintaxis de expresiones y el escapado de comillas simples tienen soporte coherente.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- go
- Área
- backend
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 20/100