atlassian-api / atlassian-python-api

Atlassian Python REST API wrapper
https://atlassian-python-api.readthedocs.io
Apache License 2.0
1.29k stars 642 forks source link

Version: 3.41.5 is failing with error ModuleNotFoundError: No module named 'bs4' #1295

Closed sushilkar closed 5 months ago

sushilkar commented 5 months ago

https://pypi.org/project/atlassian-python-api/3.41.5/

11:34:03     from atlassian import Jira
11:34:03   File "/opt/vz/1.0/lib/python3.8/site-packages/atlassian/__init__.py", line 5, in <module>
11:34:03     from .confluence import Confluence
11:34:03   File "/opt/vz/1.0/lib/python3.8/site-packages/atlassian/confluence.py", line 10, in <module>
11:34:03     from bs4 import BeautifulSoup
11:34:03 ModuleNotFoundError: No module named 'bs4'
ragchuck commented 5 months ago

Same for me! Our Pipelines failed this morning because of this.

Lenormju commented 5 months ago

I added !=3.41.5 to my version constraints. Using Poetry for my project management :

[tool.poetry.dependencies]
atlassian-python-api = "^3.39.0, !=3.41.5"  # https://github.com/atlassian-api/atlassian-python-api/issues/1295
PopoviciMarian commented 5 months ago

Same for me!

FCamborda commented 5 months ago

Our pipelines are also broken. The usage of bs4 (https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/confluence.py#L10) is not properly declared: https://github.com/atlassian-api/atlassian-python-api/blob/master/setup.py#L28

Please add it and deploy a new release.

Improvement suggestion: Use https://github.com/tweag/FawltyDeps

gonchik commented 5 months ago

Hello, sorry for that release, I have not known issue with bs4. I will release ASAP with that PR https://github.com/atlassian-api/atlassian-python-api/pull/1296

gonchik commented 5 months ago

@FCamborda thanks for the https://github.com/tweag/FawltyDeps

moonrail commented 5 months ago

Hey @gonchik,

this did not fix it completely.

Installs via PyPi currently lead to incomplete installations, as setup.py does not reference beautifulsoup4 as dependency: https://github.com/atlassian-api/atlassian-python-api/blob/3.41.5/setup.py#L28

Therefore pip does not install package beautifulsoup4 and usage of this client leads to:

venv/lib/python3.11/site-packages/atlassian/confluence.py:10: in <module>
    from beautifulsoup4 import BeautifulSoup
ModuleNotFoundError: No module named 'beautifulsoup4'

Please add it as a dependency and release a hotfix.

Edit: lxml is also missing in setup.py - there seems to be a definition gap between package dependencies and thos documented in requirements.txt.

marc-woerner-idexx commented 5 months ago

I am facing the same issue as @moonrail . Please provide a workaround.

schroeni96 commented 5 months ago

The same issue appears to be in 3.41.6. with python 3.10, which one of our build jobs just picked up

tichavskym commented 5 months ago

The problem isn't just about installing the dependency, but also about importing it, as @gsemet already mentioned in #1296.

On my installation of Fedora 39 (corporate build), Python 3.12.1, I install BeautifulSoup as pip install beautifulsoup4, but I have to import it as from bs4 import .... Which means, I cannot use this package as of right now, because it is doing from beautifulsoup4 import ..., see output bellow

(venv) [mtichavs@t14csb middleware-cve-mapping (linking-jiras *)]$ python
Python 3.12.1 (main, Dec  8 2023, 00:00:00) [GCC 13.2.1 20231205 (Red Hat 13.2.1-6)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from atlassian import Jira
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/mtichavs/middleware-cve-mapping/venv/lib/python3.12/site-packages/atlassian/__init__.py", line 5, in <module>
    from .confluence import Confluence
  File "/home/mtichavs/middleware-cve-mapping/venv/lib/python3.12/site-packages/atlassian/confluence.py", line 10, in <module>
    from beautifulsoup4 import BeautifulSoup
ModuleNotFoundError: No module named 'beautifulsoup4'
>>> from beautifulsoup4 import BeautifulSoup
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'beautifulsoup4'
>>> from bs4 import BeautifulSoup
>>>

Package versions (from pip list):

Lenormju commented 5 months ago

Yes the new version is still broken. Recommending blocking any further version until definitely fixed.

[tool.poetry.dependencies]
atlassian-python-api = "^3.39.0, <3.41.5"  # https://github.com/atlassian-api/atlassian-python-api/issues/1295
bagerard commented 5 months ago

what's missing now is

moonrail commented 5 months ago

I cannot understand how there can be automatic tests and such basic issues go through undetected. Then why the overhead of testing in the first place? To look good at first glance? At least the import error should have been detected by automatic testing.

In my opinion at least this should be done to prevent this issue from being repeated:

MultiLi commented 5 months ago

image That's what happened after updating to 3.41.6

zbika73 commented 5 months ago

About requirements.txt file: please check this PR https://github.com/atlassian-api/atlassian-python-api/pull/1298

wwakabobik commented 5 months ago

Same here,

image

gonchik commented 5 months ago

Hi! I see I am going to upload to do it.

vineetpandey commented 5 months ago

for me the same error, failing our pipelines due to this:

from atlassian import Jira Traceback (most recent call last): File "", line 1, in File "C:\Python\lib\site-packages\atlassian__init__.py", line 5, in from .confluence import Confluence File "C:\Python\lib\site-packages\atlassian\confluence.py", line 10, in from beautifulsoup4 import BeautifulSoup ModuleNotFoundError: No module named 'beautifulsoup4'

gonchik commented 5 months ago

Merged all changes, in 30 min I will release it

gonchik commented 5 months ago

Hi!

I am really sorry for that mistake. I have uploaded the 3.41.7 version with hotfix version.

I will be happy to see more pull requests.

Cheers, GT

FCamborda commented 5 months ago

Our pipelines are not broken anymore. Thanks a lot for reacting to this @gonchik !

sushilkar commented 5 months ago

Thank you @gonchik

bagerard commented 5 months ago

Thanks for the fix and quick resolution, that's appreciated :+1:

Note that there is a side effect here (extra dependency) https://github.com/atlassian-api/atlassian-python-api/issues/1301