I noticed that every now and then my Discourse site send me an email telling that a new version is available to install, but every time the version is “x.y.z.beta something”, so I’d like to know: is Discourse always some “beta” version? Is it good to install in a production environment (i.e. to serve hundreds, maybe thowsands people)? Or does this concerns only free and not “cloud” versions?
There’s a good explanation of the branches we use here:
So Discourse is in a perpetual beta state, meaning that we’re always working on new features and refinement. In our case beta does not mean unstable; we host sites with millions of monthly pageviews on our tests-passed and beta versions.
To add to what @awesomerobot posted:
Our nomenclature is a bit different than other software companies, but what it means when we release a beta is we’re releasing a new incremental version. We’ve said, “That’s enough changes for now. Let’s notify sites about new updates.”
So for us, a beta is a minor version bump, and a version is a major version bump. They’re checkpoints we give ourselves to celebrate the work we’ve done. We tend to release two major versions a year, but it all depends on feature development and the like. We’re not really into fake deadlines.
Regarding the branches
Stable/beta are not necessarily any more “stable” than tests-passed. It’s more the idea that the bugs are known. With tests-passed there may be new bugs introduced then fixed a few commits later.
Tests-passed is not much different than most other software releases out there, which usually release small changes every two weeks. We commit new changes almost daily instead, and they’re available via tests-passed.
Estoy en este hilo por la misma razón.
¿Por qué las instrucciones de instalación no nos dicen que instalemos la rama estable?
¿Cómo puedo cambiar a la rama estable o ya es demasiado tarde ya que estoy en una “versión superior”?
¿Se pueden actualizar las instrucciones?
Si ya es demasiado tarde, ¿cómo me mantengo en la rama estable una vez que se actualice?
¿Necesito seguir actualizando incrementalmente hasta llegar allí?
No puedes cambiar a estable hasta que se ponga al día. Discourse no admite degradaciones.
Una mejor pregunta es: ¿por qué querrías hacerlo?
Estable no se usa tanto, el enfoque del desarrollo está en las pruebas superadas.
Suponiendo que no estás actualizando ciegamente un sitio de producción y estás probando cada actualización antes de implementarla, la versión con más funciones y mejor soporte será la predeterminada.
Lo siento, debe ser un problema de barrera idiomática, pero ¿el enfoque significa
- el desarrollo del propio Discourse y cómo se construyen las ramas
- que todos los demás están haciendo principalmente el desarrollo de Discourse
El primero significa que los sitios de producción que se centran en foros funcionales y estables deberían usar test-passed.
El segundo significa que un sitio de producción, que produce foros, no código, debería usar stable.
Sí. Necesito desesperadamente clases de inglés porque estos matices no están totalmente claros para mí.
Pero si la primera suposición es correcta, ¿por qué existe la rama stable si no está pensada para ser utilizada?
Ejecutamos tests-passed en producción en nuestro hosting. Está 100% pensado para sitios de producción.
Stable significa que todos los errores de software son conocidos. No obtendrás nada nuevo (incluyendo nuevos errores, pero también correcciones de errores) hasta que se lance la próxima versión estable. Es simplemente una preferencia del sitio: ¿quieres características a medida que llegan? Usa tests-passed. ¿Quieres una compilación absolutamente estable que no cambie excepto en las actualizaciones de versión principal? Usa stable.
A eso añadiría: “¿quieres esperar de 6 a 8 meses para que se corrija un error que no se considera un riesgo de seguridad?” Usa stable.
Eso no es del todo cierto. Hay muchas correcciones de errores retroportadas a versiones estables.
Bueno, eso es muy cierto, estoy seguro.
¡Pero la hipérbole es lo mejor que existe!
Cierto, las que detienen el espectáculo. Los errores menores no.
Sería bueno si hubiera una opción en las instrucciones generales, algo así como las opciones de descarga de LibreOffice o Debian.
Estoy alojando el sitio en DO, pero mi copropietario era originalmente de discoursehosting.net como subdominio, y él ve todo este mantenimiento y dice: “¿Por qué no usamos simplemente discourse hosting?”.
Le dije que tenemos nuestro propio nombre, servidor, plugins de nivel superior (como “emoji likes” e inicio de sesión con Google) y otras cosas. Le dije que probablemente estaba usando una versión antigua de Discourse y que tampoco la había actualizado.
Yo también preferiría simplemente usar la versión estable y olvidarme de ella hasta dentro de seis meses. Soy un usuario habitual de Ubuntu, pero me pongo un poco nervioso al escribir esos pocos comandos de compilación. Además, el servidor se cae durante 5 minutos cuando reconstruyo.
Por otro lado, voy a solicitar que se integre una función de copia de seguridad y me apuntaría a la beta para probarla ![]()
Solo para evitar cualquier tipo de especulación: en Communiteq (anteriormente discoursehosting.net) obtienes tu propio nombre de host, plugins de tu elección en el plan Profesional y superior, y nosotros respaldamos y actualizamos tu foro por ti. Así que sí, la mayoría de tus problemas se resolverán efectivamente utilizando alojamiento gestionado.
El problema original era solicitar una opción de compilación estable en las instrucciones de instalación de GitHub. Veo que proporciona versiones estables para sus clientes. ¿Quizás podría explicar amablemente cómo clonar e instalar una versión estable? Esa también fue mi pregunta original.
Como grupo pequeño y semiprivado, no hay justificación para nada menos que el servidor DO de $5. Sin embargo, tiene un gran servicio por $40 por mes para el plan profesional o el plan básico. Le deseo la mejor de las suertes. Es una buena oferta en comparación con los planes oficiales de Discourse. Todas las opciones son geniales para quienes pueden permitírselo. Esa es la gran parte de FOSS.
Creía que la decisión de instalar en pruebas-superadas por defecto es bastante intencional.
Es mucho más fácil dar soporte a nuevas instalaciones a un solo nivel de software. Dado que el soporte proporcionado aquí se basa en la comunidad y, en su mayor parte, es 100% gratuito, no hay ninguna buena razón para complicarlo.
Las instrucciones de instalación estándar se simplifican por una razón.
Ejecutar stable se considera una configuración avanzada, por lo que necesita editar app.yml manualmente. Puede buscar “version” y ver documentado allí qué hacer.
Modificar discourse-setup para incluir esto como una opción sería confuso para la mayoría de las personas, por lo que no creo que se agregue allí.
Quizás una metáfora útil sea que la rama “estable” es como Microsoft Office basado en disco, mientras que la rama “tests-passed” es como Office 365 basado en la nube. Ambas son opciones viables y ambas reciben actualizaciones eventualmente, pero para un producto que ya está fundamentalmente en línea y que tiene un pequeño equipo de soporte, es más productivo poder indicar a las personas que actualicen sus instalaciones al código actual, para que los errores puedan ser probados y corregidos de manera oportuna. Como administrador del foro, es genial poder informar de un error y actualizar a una versión que lo soluciona en unos pocos días, a veces incluso al día siguiente. No he utilizado ninguna otra aplicación web que sea tan receptiva como esa. (No es que todos los errores se corrijan instantáneamente, pero muchos sí).
@pfaffman, seguí el enlace y el que me llevó, pero no vi nada sobre la configuración de stable. ¿Qué me estoy perdiendo? ¿Quiere decir “buscar en el archivo app.yml la palabra "version"”?
pero no creo que puedas pasar de test-passed a stable (ya que retrocederías en el commit y probablemente necesitarías revertir algunas migraciones en la base de datos, a menos que tu versión test-passed sea lo suficientemente antigua como para que la más nueva estable la haya superado, supongo
)
¡Gracias por la rápida respuesta!
Esperaba que la actualización simplemente se suspendiera hasta el próximo ciclo de lanzamiento estable.
¿Alguna idea sobre esto? ¿Por qué cambiaría algo inmediatamente al cambiar el interruptor #version?