Mister Download Manager
  1. Inicio
  2. Contribuir

Contribuir a Mister Download Manager

Los informes de errores, las ideas, las correcciones de traducción y las solicitudes de extracción son bienvenidos. Todo se hace de forma abierta en GitHub.

Configuración

Necesitas Windows 10 u 11 y Rust estable 1.95 o posterior (la cadena de herramientas MSVC).

cargo build
cargo run -p mdm-app

Para probar los cambios sin afectar tus propias descargas, asigna a la aplicación una carpeta de datos separada:

set MDM_DATA_DIR=C:\some\empty\folder
cargo run -p mdm-app

cargo run -p mdm-labserver -- --faults "rate=2M"inicia un servidor de prueba local que sirve archivos generados con los problemas que le pidas (conexiones lentas, cortes, respuestas ocupadas, sin rangos; GET / los enumera), para que las descargas puedan probarse sin internet.

Antes de abrir una solicitud de extracción

Estas son las comprobaciones que ejecuta CI; cada una funciona en un clon limpio:

cargo fmt --all --check
cargo clippy --workspace --all-targets -- -D warnings
cargo test --workspace
python tools/i18n/extract.py      # then: git diff --exit-code i18n/en.tsv
node tools/extension/test.mjs

Mantén los cambios enfocados y que coincidan con el código que los rodea. Algunas reglas se aplican en todas partes:

Traducciones

La interfaz está en todos los idiomas que ofrece Windows 11. Los catálogos en i18n/ se hicieron con traducción automática, y cada fila marcada #, machine espera a un hablante nativo:

  1. Abre i18n/<code>.tsv (los códigos están en i18n/languages.tsv).
  2. Corrige la traducción en la tercera columna de la fila y elimina su línea #, machine.
  3. Mantén {placeholders} y la & (la letra del atajo de teclado) tal como están.

cargo test -p mdm-app every_catalogcomprueba todos los catálogos. Para ver si tus textos encajan, establece MDM_FIT_AUDIT en un archivo y toma las capturas de pantalla en tu idioma (tools\lab\docs-shots.ps1 ... -Lang <code>): cada texto que se sale de su ventana o se superpone a otro se lista allí. Consulta Idiomas para saber cómo encajan la lista de idiomas, el instalador y el diseño de derecha a izquierda.

La web también está en 20 idiomas, traducida automáticamente. Sus textos están en i18n/site/<code>.json, una fila por frase: corrige el "text" de una fila (mantén las etiquetas como <g1>…</g1> y <x2/> tal cual, son los enlaces e iconos). python tools/website/translate_site.py --status muestra lo que le falta a cada idioma, y la misma herramienta con --langs <code> traduce solo eso.

Informar de problemas

Usa Ayuda → Informar de un problema en la aplicación: abre el formulario de informe de errores con tu versión, sistema, cómo se instaló MDM y su idioma ya rellenados. El formulario pide lo mismo cuando lo abres tú mismo. Problemas de seguridad: consulta SECURITY.md.

Las solicitudes de extracción se aceptan bajo la licencia del proyecto, la GNU GPL, versión 3 o posterior.