TurfMeasurement#length method cannot handle empty lists
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 35/100
- Type d'issue
- Bug
- Clarté
- À clarifier
- Activité
- À l'abandon
- Stack technique
- java
- Domaine
- backend-api-design
Piste de recherche
Commencez dans services-turf/src/main/java/com/mapbox/turf/TurfMeasurement.java, autour de la méthode length indiquée dans le lien, et reproduisez l’échec avec une liste vide. Vérifiez comment la méthode traite les listes normales de points et examinez les utilisations voisines afin d’établir le contrat prévu pour une entrée vide. Le travail est considéré comme terminé lorsque le comportement est convenu, que le cas d’une liste vide ne lève plus d’exception inattendue et que la couverture de régression le vérifie.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
The other day, I encountered what I regard as an issue in the following Code snippet: https://github.com/mapbox/mapbox-java/blob/4ae8b78746fb37b2673364bdd4c8702057f3e7f3/services-turf/src/main/java/com/mapbox/turf/TurfMeasurement.java#L227
The scenario is the following: We have a list of GPS points of which some or all are invalid which is denoted by the coordinates being (0 , 0) - which IS bad Design, but our Team cannot change this... 🙄. Thus, we filter out those points before passing it to the length method. We just encountered an IndexOutOfBoundsException when the list is empty because there is no length check on the list. I guess the fix here is relatively easy, but the question ist - what should be returned in this case. We built in a check before hand returning 0 in this particular case. Maybe even a checked exception might be a feasible idea.
- Langage dominant
- Java
- Étoiles
- 438
- Forks
- 117
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de mapbox/mapbox-java
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
mapbox/mapbox-java#1640 ·
-
Difficulté 4/5 3-5 jours Accessibilité débutants 55/100
mapbox/mapbox-java#1635 ·
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 15/100
mapbox/mapbox-java#1619 ·
-
Mapbox-java incompatible with gson 2.13.0 and up - call to internal GSON classes that were renamed Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 48/100
mapbox/mapbox-java#1614 · 2 commentaires · 1 réaction ·
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 20/100
mapbox/mapbox-java#1612 · 1 réaction ·
Toutes les issues de mapbox/mapbox-java
Issues similaires
-
executions.Query — startDate and timeRange filters are sent with inverted comparison operators Ouvertearea/plugin
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
kestra-io/plugin-kestra#190 ·
-
litertlm-android AAR ships no consumer ProGuard rules → "mid == null" SIGABRT in minified apps Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
google-ai-edge/LiteRT-LM#3739 ·
-
Add canonical URLs and a sitemap Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
integra-team-red/meet-map#249 ·
-
[Studio][Bug] Cancelled create-user dialog keeps the password and admin switch for the next attempt Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
apache/rocketmq-dashboard#5064 ·
-
Consent portal: creating a duplicate Purpose shows a generic error instead of "already exists" Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
wso2/dpdp-accelerator#287 ·