`RDoc::Parser::ChangeLog` doesn't handle keep-a-changelog style CHANGELOG correctly
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- markdown, ruby
- Área
- documentation
Línea de trabajo
Comienza en RDoc::Parser::ChangeLog y reproduce el comportamiento del comando rdoc con el fragmento de keep-a-changelog de CHANGELOG.md proporcionado. Compara el análisis actual al estilo GNU con los enlaces Markdown esperados y determina si un único parser o un parser separado debería admitir ambos estilos. La tarea estará terminada cuando enlaces como v3.0.0 se rendericen correctamente y se haya resuelto la inclusión deseada de los changelogs en los documentos generados.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Background
This is not a "bug", because it says
This parser is meant to parse the MRI ChangeLog, but can be used to parse any # {GNU style ChangeLog}[http://www.gnu.org/prep/standards/html_node/Style-of-Change-Logs.html].
However, when we run rdoc command, it automatically parses CHANGELOG.md file and outputs some wrong results. This is done by default so it's not a desired behavior.
Problem
When parsing a markdown snippet like below:
## [3.0.0] 2023-10-11
### IMPORTANT
**This release contains an important bug fix that can cause data corruption.**
**If you're using Ruby 3, it's highly recommended to upgrade to [v3.0.0](https://rubygems.org/gems/alba/versions/3.0.0)**
**If you're using Ruby 2, please upgrade to [v2.4.2](https://rubygems.org/gems/alba/versions/2.4.2) that contains bug fix only as soon as possible.**
it should create a link for v3.0.0 since it's a valid markdown syntax (GitHub renders it as a link, for example, see https://github.com/okuramasafumi/alba/blob/main/CHANGELOG.md#300-2023-10-11).
However, the resulted HTML is:
<h2 id="label-5B3.0.0-5D+2023-10-11">[3.0.0] 2023-10-11<span><a href="#label-5B3.0.0-5D+2023-10-11">¶</a> <a href="#top">↑</a></span></h2>
<h3 id="label-IMPORTANT">IMPORTANT<span><a href="#label-IMPORTANT">¶</a> <a href="#top">↑</a></span></h3>
<p><strong>This release contains an important bug fix that can cause data corruption.</strong> <strong>If you’re using Ruby 3, it’s highly recommended to upgrade to {v3.0.0}[https://rubygems.org/gems/alba/versions/3.0.0]</strong> <strong>If you’re using Ruby 2, please upgrade to {v2.4.2}[https://rubygems.org/gems/alba/versions/2.4.2] that contains bug fix only as soon as possible.</strong></p>
The link parts are not rendered correctly.
Solution
The comment in this parser says it's for GNU style changelog only, but I believe most projects use keep a changelog style. They don't look compatible.
So we have two ways. One is to improve the current changelog parser so that it can parse both styles. Another is to create another parser for keep-a-changelog style specific.
We can also discuss if including changelog into a resulted documents is desired or not. YARD doesn't include it, so maybe nobody wants it.
- Lenguaje dominante
- Ruby
- Estrellas
- 928
- Forks
- 470
- Merge medio
- 2 d 4 min
- PR fusionados (30 d)
- 13
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de ruby/rdoc
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
RDoc 8.0.0 gem omits `doc/rdoc/example.rb`, which is referenced by the packaged markup documentationPosiblemente ocupada @OskarEichler la tomó hace 67 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
ruby/rdoc#1759 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
markdown html excerpt includes link partsPosiblemente ocupada @anyingiit la tomó hace 13 días. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 66/100
Los mantenedores suelen responder en 1 día
-
Regexp generated from unescaped input in #expand_classPosiblemente ocupada @jaynetics la tomó hace 26 días. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 25/100
Los mantenedores suelen responder en 1 día
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
nesquena/steward-os#79 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
[Bug] Time search attributes lose sub-second precision, and raise NoMethodError without `require 'time'`Posiblemente ocupada @RaphaelFakhri la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
temporalio/sdk-ruby#653 ·
Los mantenedores suelen responder en 1 día
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 67/100
bridgetownrb/bridgetown#1134 ·
-
Go: a namespaced model's fixture file is loaded through `NewAdmin::Note()`, which doesn't parseAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
rubys/roundhouse#1820 ·