# documentación de Django - 6.0.7

# Cómo informar de errores y solicitar funcionalidades

Importante

Please report security issues only to `security@djangoproject.com`. This is a private list only open to long-time, highly trusted Django developers, and its archives are not public. For further details, please see our security policies.

## Informe de errores

Before reporting a bug on the ticket tracker consider these points:

- Check that someone hasn’t already filed the bug report by searching or running custom queries in the ticket tracker.

- No utilices el sistema de tickets para hacer preguntas de soporte. Utiliza el Django Forum o el Django Discord server para ello.

- No reabras temas que hayan sido marcados como «wontfix» sin encontrar consenso para hacerlo en el Foro Django.

- Don’t reopen issues that have been marked «needsnewfeatureprocess» without shepherding an issue through the new feature ideas GitHub project.

- No utilices el rastreador de tickets para discusiones largas, porque es probable que se pierdan. Si un ticket en particular es controvertido, por favor mueve la discusión al Foro de Django.

Los informes de errores bien escritos son muy útiles. Sin embargo, hay una cierta cantidad de sobrecarga involucrada en trabajar con cualquier sistema de seguimiento de errores, de modo que su ayuda para mantener nuestro rastreador de tickets tan útil como sea posible es apreciada. En particular:

- Lea las FAQ para ver si su problema puede ser una pregunta frecuente.

- Pregunta en el Django Forum o en el Django Discord server primero si no estás seguro de si lo que ves es un bug.

- Escriba informes de errores completos, reproducibles y específicos. Debe incluir una descripción clara y concisa del problema, y una serie de instrucciones para replicarlo. Añada tanta información de depuración que pueda: fragmentos de código, casos de prueba, trazas de excepciones, capturas de pantalla, etc. Un buen y pequeño caso de prueba es la mejor manera de informar de un error, ya que nos ofrece una manera provechosa de confirmar el error rápidamente.

- **No publiques en Django Forum sólo para anunciar que has enviado un informe de error. Todos los tickets se envían a otra lista, django-updates, que es rastreada por desarrolladores y miembros interesados de la comunidad; los vemos a medida que se presentan.

To understand the lifecycle of your ticket once you have created it, refer to Flujo de trabajo de clasificación.

### Reportando errores en el interfaz de usario

Si tu reporte de error impacta algo visual, hay algunas pautas adicionales que seguir

- Incluya capturas de pantalla en tus tickets, son el equivalente visual de un mínimo caso de uso. Destaque el problema, no las impresionantes personalizaciones que le ha aplicado a su navegador.

- Si el problema es difícil de mostrar utilizando una imagen fija, considere la captura de un video de tipo screencast de corta duración. Si el software lo permite, capture sólo el área correspondiente de la pantalla.

- Si ha proporcionado un parche que cambia la apariencia o el comportamiento de la UI de Django, debe adjuntar capturas de pantalla o grabaciones del antes y el después. Los tickets que no las incluyen son difíciles de valorar por aquellos que intervienen.

- Las capturas de pantalla no lo eximen de utilizar otras buenas prácticas de presentación de informes. Asegúrese de incluir direcciones URL, fragmentos de código e instrucciones paso a paso sobre cómo reproducir el comportamiento que se observa en las capturas de pantalla.

- Asegúrese de fijar el marcador de UI / UX en el reporte de tickets de manera que los interesados ​​puedan encontrar su reporte.

- If the issue relates to accessibility, please link to the relevant accessibility standard if applicable.

## Solicitando funcionalidades

Siempre estamos tratando de mejorar Django, y sus solicitudes de funcionalidades son una parte de crucial importancia para ello. Estos son algunos consejos sobre cómo hacer una solicitud de forma más eficaz:

- Evaluate whether the feature idea requires changes in Django’s core. If your idea can be developed as an independent application or module — for instance, you want to support another database engine — we’ll probably suggest that you develop it independently. Then, if your project gathers sufficient community support, we may consider it for inclusion in Django.

- Propose the feature in the new feature ideas GitHub project (not in the ticket tracker) by creating a new item in the Idea column. This is where the community and the Steering Council evaluate new ideas for the Django ecosystem. This step is especially important for large or complex proposals. We prefer to discuss any significant changes to Django’s core before any development begins. In some cases, a feature may be better suited as a third-party package, where it can evolve independently of Django’s release cycle.

- Describa de forma clara y concisa cuál es la funcionalidad que falta y cómo le gustaría que fuera implementada. Incluya ejemplo de código (si es no funcional está bien) si es posible.

- Explique por qué le gustaría la funcionalidad. Explicar un mínimo caso de uso ayudará al resto comprender dónde se debe incluir, y si ya hay otras maneras de realizar lo mismo.

Consulte también: :ref: documentando nuevas funcionalidades.

## Solicitar optimizaciones de rendimiento

Los informes de una regresión de rendimiento, o las optimizaciones de rendimiento sugeridas, deben proporcionar puntos de referencia y comandos para que el triager del ticket los reproduzca.

Consulta la django-asv benchmarks para más detalles de los benchmarks existentes de Django.

## Cómo tomamos decisiones

Whenever possible, we aim for rough consensus. Emoji reactions are used on issues within the new feature ideas GitHub project to track community feedback. The following meanings are assigned to each reaction:

- 👍: I support this feature and would use it

- 👎: I oppose this feature or believe it would cause issues for me or Django

- 😕: I have no strong opinion on this feature

- 🎉: This feature seems like a straightforward and beneficial addition

The Steering Council will regularly review the ideas in the project, moving those with community support through the following stages:

- Idea

- Approved - Idea refinement - Team creation

- En progreso

- Working solution - Review - Feedback

- Necesita mantenedor (solo Django)

- Hecho

Occasionally, discussions on feature ideas or the direction of Django may take place on the Django Forum. These discussions may include informal votes, which follow the voting style invented by Apache and used on Python itself, where votes are given as +1, +0, -0, or -1. Roughly translated, these votes mean:

- +1: «Me encanta la idea y estoy firmemente comprometido con ella.»

- +0: «Me parece bien.»

- -0: «No me gusta, pero no me interpondré en el camino.»

- -1: «Estoy totalmente en desacuerdo y estaría muy descontento de ver que la idea se haga realidad.»

Aunque estas votaciones son informales, se tomarán muy en serio. Tras un periodo de votación adecuado, si surge un consenso evidente seguiremos las votaciones.

## How to test pre-release versions of Django

Testing pre-releases is a great way to contribute to Django. Early testers help catch bugs before the final release, ensuring a smoother upgrade experience for everyone.

### Prerequisites

Before testing a pre-release, it is important that your project is running smoothly on the latest stable release of Django. That way, any regressions can be attributed to the pre-release. See the How to upgrade Django to a newer version guide for instructions on getting up to date.

To ensure your project is ready, you should also:

- Read the release notes: Review the Release notes for the upcoming version to learn about upgrade paths for deprecated features or about minor backward-incompatible changes.

- Resolve deprecation warnings: Run your tests with deprecation warnings enabled to become aware of required follow-up actions:

      $ python -Wa manage.py test

### Testing your project

You can install the latest pre-release using `pip`:

    $ python -m pip install --pre Django

Once installed, run your project’s test suite. Rather than just checking if tests pass, try the following:

- Check dependency support: Determine whether major dependencies support the new version by checking Django version classifiers on PyPI. Since those projects also value early bug reports, don’t let a lack of support prevent you from testing.

- Monitor performance: You can run your tests with the `test --durations` flag to identify potential performance regressions.

- Automate tests in CI: Consider running your Continuous Integration (CI) pipeline with the pre-release version.

- Test manually: While automated tests are great, manually testing your application’s main workflows is an important part of verifying compatibility with a new release.

### Reporting issues

If you discover a bug, please report it via the Django issue tracker so it can be fixed before the final release. When creating the ticket, be sure to set the Django version field to the exact pre-release version you are testing.

If you suspect a regression, it’s helpful to report the specific commit that caused it. See Bisecting a regression for instructions.

You can also discuss any issues or share feedback in the Pre-releases category on the Django Forum.