aboutcode-org / aboutcode-org/license-expression

Convert regular exceptions into ExpressionError

Aberta
#97 0 comentários 0 reações 0 responsáveis Ver no GitHub
Linguagem predominante
Python
Estrelas
73
Forks
33
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

I currently try to run validation of SPDX expression from arbitrary inputs. If something is wrong with the expression, I would have expected it to always populate the `errors` attribute instead of raising exceptions. Apparently, this is not the case in every situation.

Let's consider the following snippet:

```python3
from license_expression import get_spdx_licensing

licensing = get_spdx_licensing()
expression = '(Apache-2.0) AND ()'
result = licensing.validate(expression)
print(result.errors)
```

This fails with an *IndexError* during validation:

```
[...]
File "/home/user/lib/python3.9/site-packages/license_expression/__init__.py", line 778, in validate
parsed_expression = self.parse(expression, strict=strict)
File "/home/user/lib/python3.9/site-packages/license_expression/__init__.py", line 545, in parse
expression = super(Licensing, self).parse(tokens)
File "/home/user/lib/python3.9/site-packages/boolean/boolean.py", line 316, in parse
ast[0].append(ast[2])
IndexError: list index out of range
```

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Avaliação

Esta issue ainda não foi avaliada.

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.