Skip to content

pyfiglet version has hidden depedency that causes edr cli to fail for python versions > 3.11Β #1773

@jcarpenter12

Description

@jcarpenter12

Describe the bug

pyfiglet version in elementary has a hidden dependency on setuptools on some versions of python (I believe > 3.11) that causes edr cli to fail with the following error message

ModuleNotFoundError: No module named 'pkg_resources'

This looks like it relates to this issue on pyfiglet repo here that has been fixed pwaller/pyfiglet#124

To Reproduce
Steps to reproduce the behavior:

(1) Clone repo

git clone https://github.com/elementary-data/elementary.git
cd elementary

(2) Create then activate a virtual environment using a python version above 3.11, for example using pyenv you could do the following

pyenv virtualenv 3.12.1 edr-issue
pyenv activate edr-issue

(3) Install requirements

pip install -r dev-requirements.txt
pip install -e .

(4) Run

edr

This should then return the error

Traceback (most recent call last):
  File "/Users/my_username/.pyenv/versions/elementary/bin/edr", line 5, in <module>
    from elementary.cli.cli import cli
  File "/Users/my_username/Repos/elementary/elementary/cli/cli.py", line 5, in <module>
    from pyfiglet import Figlet
  File "/Users/my_username/.pyenv/versions/3.12.1/envs/elementary/lib/python3.12/site-packages/pyfiglet/__init__.py", line 11, in <module>
    import pkg_resources
ModuleNotFoundError: No module named 'pkg_resources'

Expected behavior

EDR command should run without failure and display elementary logo and a list of commands to get started

Screenshots
If applicable, add screenshots to help explain your problem.

Environment (please complete the following information):

  • Elementary CLI (edr) version: 0.16.1
  • Elementary dbt package version: N/A
  • dbt version you're using: N/A
  • Data warehouse: N/A
  • Infrastructure details: Mac OS

Additional context
Add any other context about the problem here.

Would you be willing to contribute a fix for this issue?

Yes I have tested a fix for this that I will raise a PR for shortly

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions