Regexp generated from unescaped input in #expand_class
Mantenedores costumam responder em até 1 dia
Avaliação
- Dificuldade
- 1/5
- Tempo estimado
- Menos de uma hora
- Facilidade para iniciantes
- 25/100
Direção de pesquisa
The unescaped input is interpolated into a regexp in #expand_class in lib/rdoc/ri/driver.rb, near line 972, and #expand_name (around line 998) calls it. Other regexps in that file escape their input, so compare with those. Pull request #1846 is already open against this issue, so review it before starting. Done means $\ no longer triggers the 'has ']' without escape' warning in tab completion, and the input is escaped the same way as elsewhere in driver.rb.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
It happens here:
For example, when typing $ into IRB and then hitting tab to go through the autocomplete suggestions, this prints the following warning once $\ is reached.
rdoc/ri/driver.rb:972: warning: regular expression has ']' without escape: /\A$\[^:]*\z/
Backtrace:
rdoc-8.1.0/lib/rdoc/ri/driver.rb:998:in 'RDoc::RI::Driver#expand_name'
irb-1.18.0/lib/irb/input-method.rb:410:in 'IRB::RelineInputMethod#rdoc_dialog_contents'
irb-1.18.0/lib/irb/input-method.rb:378:in 'block in IRB::RelineInputMethod#show_doc_dialog_proc'
This happens because $\ is embedded unescaped into the regexp, generating /\A$\[...].../.
Perhaps a crafty actor could even inject a Regexp that times out or raises a RegexpError.
All other regexps generated in driver.rb use escaped input, so I assume it is just an oversight in this case.
- Linguagem predominante
- Ruby
- Estrelas
- 928
- Forks
- 471
- Merge médio
- 1d 10h
- PRs com merge (30d)
- 13
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Sem modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de ruby/rdoc
-
RDoc 8.0.0 gem omits `doc/rdoc/example.rb`, which is referenced by the packaged markup documentationTalvez já em andamento @OskarEichler assumiu há 60 dias. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 85/100
ruby/rdoc#1759 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
markdown html excerpt includes link partsTalvez já em andamento @anyingiit assumiu há 7 dias. Aberta
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 66/100
Mantenedores costumam responder em até 1 dia
-
enhancement
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 68/100
ruby/rdoc#1823 · 5 comentários ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 58/100
Mantenedores costumam responder em até 1 dia
Issues semelhantes
-
documentation
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
alphagov/tech-docs-gem#580 ·
Mantenedores costumam responder em até 1 dia
-
Onboarding form: instructor radio never pre-selected "Yes" (permission vs permissions typo)Talvez já em andamento @ThakuraAnki assumiu hoje. Abertabug
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 72/100
WikiEducationFoundation/WikiEduDashboard#7235 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
Mantenedores costumam responder em até 1 dia
-
enhancement priority: low
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
davidteren/mutineer#361 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 86/100
zerocracy/judges-action#3021 ·
Mantenedores costumam responder em até 2 dias