Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

CloudEvent serializes invalid extension attribute names without validation

Abierto Apto para principiantes
#300 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
68/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Tranquilo
Stack tecnológico
python
Área
api

Línea de trabajo

Comienza con la construcción de CloudEvent y el punto de entrada conversion.to_structured mostrado en el repro; después, sigue el recorrido hasta donde se serializan los atributos de extensión. Vuelve a ejecutar el ejemplo proporcionado para confirmar que se rechazan los nombres que contienen caracteres como el guion, mientras que los nombres válidos con letras minúsculas y dígitos se siguen serializando.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

bug

CloudEvent serializes invalid extension attribute names without validation

Repro:

from cloudevents.v1.http import CloudEvent
from cloudevents.v1.conversion import to_structured

event = CloudEvent(
  {
      "type": "example.event",
      "source": "/test",
      "example-extension": "123",
  },
  {"ok": True},
)

_, body = to_structured(event)
print(body)

Expected: construction or serialization rejects example-extension, because CloudEvents attribute names must only contain lowercase ASCII letters and digits.

Actual: the SDK serializes it successfully, producing an invalid CloudEvent. This can fail at runtime with stricter receivers such as Knative Eventing, which rejects the request with 400 Bad Request.

Lenguaje dominante
Python
Estrellas
342
Forks
65
Métricas de merge de PR
Sin PR fusionados en 30 d

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de cloudevents/sdk-python

Todos los issues de cloudevents/sdk-python

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.