removesuffix helper returns an empty string for an empty suffix
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 82/100
Línea de trabajo
Comienza en src/browserbase/_utils/_utils.py:368-375 e inspecciona la implementación de removesuffix junto con el helper relacionado para prefijos. Ejecuta la suite de pruebas existente y después añade cobertura para los casos de prefijo y sufijo de cadena vacía; se considera terminado cuando removesuffix("abc", "") devuelve "abc" y coincide con el comportamiento de la biblioteca estándar.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Description
The internal removesuffix helper claims to backport str.removesuffix, but it returns an empty string when the requested suffix is empty.
Code reference
src/browserbase/_utils/_utils.py:368-375
The implementation executes string[:-len(suffix)]; for an empty suffix this becomes string[:-0], which is string[:0].
Reproduction
from browserbase._utils._utils import removesuffix
print(repr(removesuffix("abc", "")))
print(repr("abc".removesuffix("")))
Actual:
''
'abc'
Expected behavior
To match the documented stdlib behavior, an empty suffix should leave the original string unchanged.
Why it matters
This shared helper silently corrupts input for a valid edge case and has no direct test coverage. Even though current in-repo call sites are limited, it is exported through browserbase._utils and may be reused by generated or manual code later. The fix is small (if suffix and string.endswith(suffix): ...) and should include empty-string tests for both prefix/suffix helpers.
- Lenguaje dominante
- Python
- Estrellas
- 93
- Forks
- 16
- Merge medio
- 11 min
- PR fusionados (30 d)
- 3
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 browserbase/sdk-python
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
browserbase/sdk-python#180 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
browserbase/sdk-python#179 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
browserbase/sdk-python#178 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
browserbase/sdk-python#176 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
browserbase/sdk-python#175 ·
Todos los issues de browserbase/sdk-python
Issues similares
-
documentation help wanted
Dificultad 2/5 1-3 horas Aptitud para principiantes 90/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 90/100
simonw/sqlite-utils#872 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100