No hackear el núcleo de MediaWiki
This is an essay. It expresses the opinions and ideas of some mediawiki.org users, but may not have wide support. Feel free to update this page as needed, or use the discussion page to propose major changes. |
Esta página en pocas palabras: Aunque se anima a todos los desarrolladores a envíar mejoras al núcleo de MediaWiki al repositorio de código — editar los archivos del núcleo de MediaWiki de una instalación individual de la wiki, a menudo conduce a más problemas que soluciones. El uso de extensiones o el envío de tu mejora al repositorio de código son soluciones más preferidas y estables. |
Mientras que piratear el núcleo de MediaWiki es a menudo una solución propuesta en otros foros de soporte de MediaWiki, no es una solución ideal. En general, causará más problemas de los que resuelve y sólo hará que las futuras actualizaciones sean más difíciles de instalar.
Para los propósitos de este ensayo, "núcleo" quiere decir que incluye todos los archivos que pertenecen a la instalación original de MediaWiki. Es decir, todos los archivos excepto LocalSettings.php, docker-compose.override.yml, los de su carpeta "extensiones" o "skins", u otras carpetas que ha añadido desde su instalación.
Por qué no debe modificar los archivos del núcleo
No importa lo fácil que sea modificar los archivos del núcleo para que MediaWiki haga lo que usted quiere que haga, resista la tentación.
- Si lo hace, hará que sea más complicado, difícil o casi imposible de aplicar actualizaciones de la web tales como correcciones de errores y de seguridad.
- Va a hacer que sea difícil para los que vengan después de mantener el sitio.
- Usted podría dejar su sitio vulnerable a exploits.
- Otros desarrolladores están menos inclinados a ayudar a usted si ha hackeado su núcleo - si no por otra razón que es difícil para ellos saber qué se ha hecho.
El núcleo de MediaWiki ha sido diseñado para ser modular, por lo que no debería haber ninguna razón para hackearlo. Si hay una funcionalidad que desea y no se puede conseguir sin modificar el núcleo, considere desarrollar una extensión o enviar su pirateo como un parche. Envíe un informe de errores y dígale a la comunidad la funcionalidad que deseas implementar. Luego se probará y su característica podrá convertirse en parte del núcleo de MediaWiki.
Problemas que enfrentan las wikis que piratean su núcleo
- Los tiempos de actualización de MediaWiki van de 30 minutos a 6 horas o incluso 6 semanas si su
diff
muestra que 13650 líneas han sido cambiadas. - Aumento de spam y otros ataques no deseados debido a los agujeros de seguridad
- Perderse de nuevas características, debido a cortes en conflicto a los archivos centrales
- Incapacidad para utilizar la documentación de MediaWiki.org - todos los cuales se han escrito bajo la suposición de que usted no ha hackeado sus archivos principales (a menos que por supuesto, usted escriba la documentación especificamente para la forma de operar MediaWiki cuando ese truco en particular esta siendo usado).
- La repetición del problema original - como un informe de error es una de manera más fiable para resolver un problema de un hack núcleo - si no por otra razón que un grupo de desarrolladores se estudia el problema y puede descubrir código necesario cambia te perdiste
- Quejarse a los desarrolladores acerca de su núcleo archivos no funciona - y no encontrar mucha simpatía - si hackear archivos principales - un apoyo técnico eficaz es casi imposible
Excepciones
¿Hay excepciones a esta regla?
No.
De acuerdo, muy, muy raramente. Pero esto es generalmente para wikis específicos o implementaciones por personas que están extremadamente familiarizadas con el código base de MediaWiki, las prácticas de desarrollo y el modelo de seguridad. Aquellos que documentan adecuadamente sus cambios y practican un control de revisión apropiado con su código. Si tiene que preguntar, es probable que no deba hacerlo.
Extensiones
Tenga en cuenta que la mayor parte de esta página también se aplica a las extensiones importantes. Es una mala idea empezar a piratear directamente las extensiones semánticas de MediaWiki, o cualquiera de las extensiones usadas en Wikipedia y otros sitios Wikimedia.
Una excepción podría ser si una extensión se instala principalmente copiando su código desde esta wiki (en lugar de obtenerlo desde un repositorio de software). Significa que no se le da un mantenimiento muy serio.
Qué hacer en vez de eso
En lugar de piratear el núcleo de MediaWiki, hay varias soluciones alternas a considerar, más o menos en este orden:
- MediaWiki es una bestia poderosa recién sacada de la caja, puede hacer mucho con los mensajes de interfaz de MediaWiki, tales como
MediaWiki:Sidebar
y muchos muchos otros, también vea otras páginas en esta wiki, por ejemplo, adiciones y cambios de JavaScript y CSS. - Desarrolle una extensión para lograr lo que su pirateo pretendía hacer, o simplemente use uno de los hooks existentes.
- Enviar un informe de errores
- Contribuya con su mejora del núcleo mediante el repositorio de código, para que otros puedan beneficiarse de su revisión.
Véase también
- {{Extension by patch warning }} — plantilla para añadir a las páginas de las extensiones que requieren modificaciones en el núcleo de MediaWiki.