CSenshi / Validator

Easy-to-use, Highly Configurable Python Data Validator. Inspired by Laravel Validator
https://pypi.org/project/validator/
MIT License
46 stars 23 forks source link

Cannot import validate #120

Closed greyfade closed 4 years ago

greyfade commented 4 years ago

Bug Description: Unable to import or use validate. None of the examples work.

Expected Behavior: After a clean install of Python, and running only pip install validator lxml untangle, a script containing a minimal set of imports should run without error:

import untangle
import re
import os
import sys
from lxml import etree
from validator import validate

Error Fragment: Even the most trivial imports fail with the same error as the larger scripts:

Python 3.8.3 (default, May 17 2020, 18:15:42) 
[GCC 10.1.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from validator import validate
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/greyfade/.local/lib/python3.8/site-packages/validator/__init__.py", line 1, in <module>
    from .validator import Validator, validate, validate_many
  File "/home/greyfade/.local/lib/python3.8/site-packages/validator/validator.py", line 1, in <module>
    from validator.parser.parser import Parser
  File "/home/greyfade/.local/lib/python3.8/site-packages/validator/parser/__init__.py", line 1, in <module>
    from .parser import Parser
  File "/home/greyfade/.local/lib/python3.8/site-packages/validator/parser/parser.py", line 1, in <module>
    from validator.parser.translator import Translator
  File "/home/greyfade/.local/lib/python3.8/site-packages/validator/parser/translator.py", line 1, in <module>
    from validator import rules as R
ImportError: cannot import name 'rules' from partially initialized module 'validator' (most likely due to a circular import) (/home/greyfade/.local/lib/python3.8/site-packages/validator/__init__.py)
>>> 

pip show validator says:

Name: validator
Version: 0.5.2
Summary: Python Validator
Home-page: https://github.com/CSenshi/Validator
Author: Saba Pockhua
Author-email: saba.pochkhua@gmail.com
License: MIT
Location: /home/greyfade/.local/lib/python3.8/site-packages
Requires: 
Required-by: 
CSenshi commented 4 years ago

Thank you @greyfade for bug report! Validator is still in pre-release state. We will look for the bug and fix it in the following releases! :rocket:

CSenshi commented 4 years ago

This issue has been fixed in the version 0.6. Please reinstall validator (suggested version is 0.7 or higher, because of its optimizations)