Skip to content

Commit

Permalink
Merge pull request olivierlacan#1 from olivierlacan/master
Browse files Browse the repository at this point in the history
Update fork version
  • Loading branch information
azkidenz authored Jul 1, 2017
2 parents aae188a + 92db66e commit 5aa2c4b
Show file tree
Hide file tree
Showing 5 changed files with 909 additions and 53 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
- French translation from @zapashcanon.
- Brazilian Portugese translation from @aisamu.
- Polish translation from @amielucha.
- Russian translation from @aishek.

### Changed
- Start using "changelog" over "change log" since it's the common usage.
Expand Down
258 changes: 258 additions & 0 deletions source/es-ES/1.0.0/index.html.haml
Original file line number Diff line number Diff line change
@@ -0,0 +1,258 @@
---
description: Mantenga un Changelog
title: Mantenga un Changelog
language: es-ES
version: 1.0.0
---

- changelog = "https://github.com/olivierlacan/keep-a-changelog/blob/master/CHANGELOG.md"
- gemnasium = "https://gemnasium.com/"
- gh = "https://github.com/olivierlacan/keep-a-changelog"
- issues = "https://github.com/olivierlacan/keep-a-changelog/issues"
- semver = "http://semver.org/"
- shields = "http://shields.io/"
- thechangelog = "http://5by5.tv/changelog/127"
- vandamme = "https://github.com/tech-angels/vandamme/"
- iso = "http://www.iso.org/iso/home/standards/iso8601.htm"
- ghr = "https://help.github.com/articles/creating-releases/"

.header
.title
%h1 Mantenga un Changelog
%h2 No dejes que tus amigos copien y peguen git logs en los CHANGELOGs™

= link_to changelog do
Versión
%strong= current_page.metadata[:page][:version]

%pre.changelog= File.read("CHANGELOG.md")

.answers
%h3#what
%a.anchor{ href: "#what", aria_hidden: "true" }
¿Qué es un registro de cambios (change log)?

%p
Un registro de cambios o “change log” de ahora en adelante, es un archivo que contiene una lista en orden cronológico sobre los cambios que vamos haciendo en cada release (o versión) de nuestro proyecto.

%h3#why
%a.anchor{ href: "#why", aria_hidden: "true" }
¿Cuál es el propósito del change log?

%p
Que les sea más fácil a los usuarios y contribuyentes, ver exactamente los cambios notables que se han hecho entre cada versión (o versiones) del proyecto.

%h3#who
%a.anchor{ href: "#who", aria_hidden: "true" }
¿Quién necesita un change log?

%p
Las personas. Ya sean consumidores o desarrolladores, los usuarios finales del software son seres humanos que les importa que hay en el software. Cuando el software cambia, la gente quiere saber el porqué y el cómo.

.good-practices
%h3#how
%a.anchor{ href: "#how", aria_hidden: "true" }
¿Como hago un buen change log?

%h4#principles
%a.anchor{ href: "#principles", aria_hidden: "true" }
Directrices

%ul
%li
Están hecho para los seres humanos, no para las máquinas.
%li
Debe haber una entrada para cada versión.
%li
Los mismos tipos de cambios deben ser agrupados.
%li
Versiones y secciones deben ser enlazables.
%li
La última versión viene primero.
%li
La fecha de publicación de cada versión es mostrada.
%li
Se menciona explícitamente si el proyecto sigue la convención del #{link_to "Versionamiento Semántico", semver}.

%a.anchor{ href: "#types", aria_hidden: "true" }
%h4#types Tipos de cambios

%ul
%li
%code Added
para funcionalidades nuevas.
%li
%code Changed
para los cambios en las funcionalidades existentes.
%li
%code Deprecated
para indicar que una característica está obsoleta y que se eliminará en las próximas versiones.
%li
%code Removed
para las características en desuso que se eliminaron en esta versión.
%li
%code Fixed
para correcciones y bugs.
%li
%code Security
en caso de vulnerabilidades.

.effort

%h3#effort
%a.anchor{ href: "#effort", aria_hidden: "true" }
¿Cómo puedo minimizar el esfuerzo requerido?

%p
Siempre mantén una sección con el nombre <code>Unreleased</code> para hacer un seguimiento sobre los próximos cambios.

%p Esto nos puede servir para dos cosas:

%ul
%li
La gente puede ver qué cambios podrían esperar en los próximos releases.
%li
Una vez que queramos hacer un release, sólo habría que mover la sección <code>Unreleased</code> y sus cambios en una nueva sección con la respectiva versión.

.bad-practices
%h3#bad-practices
%a.anchor{ href: "#bad-practices", aria_hidden: "true" }
¿Pueden los change logs ser malos?
%p Si. Aquí hay unas maneras en las que pueden ser muy poco útiles.
%h4#log-diffs
%a.anchor{ href: "#log-diffs", aria_hidden: "true" }
Usar un diff de los logs de los commits

%p
Usar un diff de los logs de los commits es una mala idea: están llenos de ruido. Cosas como hacer <em>merge</em> de los commits, commits con títulos oscuros, cambios de documentación, entre otros.

%p
El propósito de un commit es documentar un paso en la evolución del código fuente. Algunos proyectos limpian los commits, en otros no.

%p
El propósito de una entrada del change log es documentar la notable diferencia, usualmente entre múltiples commits, para comunicarlos claramente a los usuarios finales.

%h4#ignoring-deprecations
%a.anchor{ href: "#ignoring-deprecations", aria_hidden: "true" }
Ignorando Deprecaciones
%p
Cuando las personas actualizan de una versión a otra, debería ser extremadamente claro cuando algo se romperá. Debería ser posible actualizar a una versión que liste deprecaciones, remover que está deprecado, luego actualizar a la versión donde las deprecaciones sean remociones.
%p
Si no haces nada más, lista deprecaciones, remociones, y cualquier cambio sin compatibilidad hacia atrás en tu change log.
%h4#confusing-dates
%a.anchor{ href: "#confusing-dates", aria_hidden: "true" }
Fechas confusas

%p
En los EE.UU., la gente pone primero el mes (<code>06-02-2012</code> para el 2 de junio del 2012), mientras que muchas personas en el resto del mundo escriben de una manera muy robótica <code>2 Junio 2012</code>, sin embargo lo pronuncian distinto. <code>2012-06-02</code> funciona logicamente desde el más grande al más pequeño, no se solapa de maneras ambiugas con otros formatos de fecha, y es un #{link_to "Estandar ISO", iso}. Por lo cual, es el formato de fecha recomendado para change logs.

%aside
Hay más. Ayudame a recoger estos anti-patrones
= link_to "abriendo un issue", "#issues"
o un pull request.

.frequently-asked-questions
%h3#frequently-asked-questions
%a.anchor{ href: "#frequently-asked-questions", aria_hidden: "true" }
Preguntas frecuentes
%h4#standard
%a.anchor{ href: "#standard", aria_hidden: "true" }
¿Hay un formato estandar para los change logs?

%p
No realmente. Hay una guía de estilo del GNU, o los dos parrafos del archivo de NOTICIAS <code>guideline</code> del GNU. Ambos son inadecuados o insuficientes.

%p
Este proyecto apunta a ser
= link_to "una mejor convención de change logs.", changelog
Esto se da observando las buenas prácticas en la comunidad open source y recopilando las mismas.

%p
Críticas saludables, discusión y sugerencias para mejoras
= link_to "son bienvenidas.", issues


%h4#filename
%a.anchor{ href: "#filename", aria_hidden: "true" }
¿Cómo debería llamarse el archivo de change log?

%p
Llamalo <code>CHANGELOG.md</code>. Algunos proyectos utilizan
<code>HISTORY</code>, <code>NEWS</code> o <code>RELEASES</code>.

%p
Si bien es fácil pensar que el nombre de tu archivo de change log no importa tanto, ¿Por qué hacer dificil para los usuarios finales conseguir de manera consistente los cambios notables?

%h4#github-releases
%a.anchor{ href: "#github-releases", aria_hidden: "true" }
¿Y qué hay de los releases de Github?
%p
Es una gran iniciativa. #{link_to "Los releases de Github", ghr} pueden ser utilizados para convertir simples etiquetas de git (por ejemplo una etiqueta llamada <code>v1.0.0</code>) en ricas notas de release ya sea añadiendo estas manualmente o trayendo los mensajes anotados de las etiquetas de git y convertirlas en notas.
%p
Los releases de Github crean un change log no portable que solo pueden ser mostrados a usuarios dentro del contexto de Github. Es posible hacer que luzcan muy parecidas al formato de Mantenga un Changelog, pero tiende a ser un poco más involucrado.
%p
La versión actual de los releases de Github es también discutiblemente no muy detectable por los usuarios finales, diferente a los típicos archivos en mayúsculas (<code>README</code>, <code>CONTRIBUTING</code>, entre otros.). Otro problema menor es que la interfaz actualmente no ofrece enlaces a los registros de los commits entre cada release.
%h4#automatic
%a.anchor{ href: "#automatic", aria_hidden: "true" }
¿Se pueden analizar gramaticalmente los change logs?

%p
Es difícil, porque las personas siguen formatos y distintos nombres de archivo muy distintos.

%p
#{link_to "Vandamme", vandamme} es una gema de Ruby creada por el equipo de
#{link_to "Gemnasium", gemnasium} y que analiza gramaticalmente muchos (pero no todos) los change logs de proyectos open source.


%h4#yanked
%a.anchor{ href: "#yanked", aria_hidden: "true" }
¿Qué hay sobre los releases retirados?

%p
"Yanked releases" son versiones que tuvieron que ser retiradas por un error grave o problema de seguridad. Con frecuencia estas versiones ni siquiera aparecen en los change logs. Deberían. Así es como se deberían mostrarse:

%p <code>## 0.0.5 - 2014-12-13 [YANKED]</code>

%p
La etiqueta <code>[YANKED]</code> va entre corchetes por una razón, es importante que destaque, y el hecho de estar rodeado por corchetes lo hace más fácil de localizar programáticamente.


%h4#rewrite
%a.anchor{ href: "#rewrite", aria_hidden: "true" }
¿Deberías volver a escribir un change log?

%p
Por supuesto. Siempre hay buenas razones para mejorar el change log. A veces abro "pull requests" para añadir registros faltantes en el change log de proyectos open source.

%p
También es posible que puedas descubrir que olvidaste comentar sobre un cambio sin compatibilidad hacia atrás en las notas para una versión. En este caso es importante para ti actualizar el change log.


%h4#contribute
%a.anchor{ href: "#contribute", aria_hidden: "true" }
¿Cómo puedo contribuir?

%p
Este documento no es la <strong>verdad absoluta</strong> es mi cuidadosa opinión, junto con información y ejemplos que recogí.

%p
Esto es porque quiero que la comunidad llegue a un consenso. Creo que la discusión es tan importante como el resultado final.

%p
Así que por favor <strong>#{link_to "comienza a colaborar", gh}</strong>.

.press
%h3 Conversaciones
%p
Fuí al #{link_to "The Changelog podcast", thechangelog} para hablar acerca de porqué a los mantenedores y contribuidores deberían importarles los change logs, y también acerca de las motivaciones detrás de este proyecto.
Loading

0 comments on commit 5aa2c4b

Please sign in to comment.