Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Wrong input should result into an exception

Ouverte
#766 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
3/5
Temps estimé
1-2 jours
Accessibilité débutants
45/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
À l'abandon
Stack technique
python
Domaine
backend

Piste de recherche

Commencez dans spdx.py au niveau de is_compound_expression et suivez la gestion des exceptions pour les caractères invalides et les expressions de licence partiellement inconnues. Examinez comment le paramètre validate est géré ailleurs, puis faites en sorte qu’une entrée invalide propage une exception appropriée, tout en permettant la vérification d’expressions composées avec ou sans validation des éléments de licence. Le travail est terminé lorsque les appelants peuvent distinguer une entrée invalide d’une expression composée valide contenant des éléments inconnus.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

breaking change

The code in spdx.py function is_compound_expression may run into an exception for several cases, and this results into a return False.

This is semantically overloaded.
In case of False we cannot distinguish between

  • the value cannot be interpreted at all (invalid characters)
  • it is a compound expression, but consists of partially unknown, but maybe valid simple (e.g. LicenseRef-*) expression(s)

So it may not be clear what is feasible of how to proceed in case of False.

In case of invalid characters the exception should not be caught, but (re)raised so that an appropriate exception handling can be applied.

The validate parameter should be made available in the is_compound_expression function to allow either both license item validation along with the compound check or compound check only.

Langage dominant
Python
Étoiles
117
Forks
67
Merge moyen
3 j 9 h
PR mergées (30 j)
4

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de CycloneDX/cyclonedx-python-lib

Toutes les issues de CycloneDX/cyclonedx-python-lib

Issues similaires

Plus d'issues Python

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.