Confusing error when forgetting protocol
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 45/100
Línea de trabajo
Comienza reproduciendo los ejemplos de URI.parse en una sesión de IRB o Pry y, después, inspecciona la implementación de URI::Generic mencionada en la llamada open que falla. Determina cuál debe ser el comportamiento para una URI sin protocolo y haz que la finalización produzca un error explicativo en lugar del confuso NoMethodError actual.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Steps to Reproduce
-
Environment:
gems/ruby-3.3.7@x/gems/uri-1.0.3 -
Steps:
Open an Pry/IRB session.
Run:
URI.parse('www.google.com').class
=> URI::Generic
URI.parse('https://www.google.com').class
=> URI::HTTPS
In my production code, I have
URI.parse('www.google.com').open
=> NoMethodError: private method `open' called for an instance of URI::Generic (NoMethodError)
This got me reading the URI source code.
I think that URI::Generic should implement open as a public method and throw an error that explains the issue if its called.
This cost me over an hour. - it must have caught others.
Otherwise. I will need to write a wrapper for URI.parse.
- Lenguaje dominante
- Ruby
- Estrellas
- 125
- Forks
- 65
- Merge medio
- 6 h 4 min
- PR fusionados (30 d)
- 2
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
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/uri
-
Dificultad 3/5 1-2 días Aptitud para principiantes 48/100
-
upstream contact for Debian Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 25/100
-
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
-
Dificultad 3/5 1-2 días Aptitud para principiantes 52/100
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
bug
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
riscv/riscv-unified-db#2626 ·
-
Component: GLib
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
ds-drift
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
we-promise/sure#3693 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
simp/pupmod-simp-simp#395 ·