streamalert
streamalert copied to clipboard
Module conflicts in dependencies declaring in the requirements.txt.
Background
Dependencies in requirements.txt
have module conflicts.
Description
There are two dependencies mentioned in the requirements.txt
file: aliyun-python-sdk-core and aliyun-python-sdk-core-v3. Without knowing their specific differences, it’s certain that there are module conflicts between these two packages. This means that if both of them are declared in the dependencies and installed using “pip install -r requirements.txt,” the later-installed package will overwrite some modules of the previous one (since this is the default behavior during the pip installation process when modules have the same path). It is certain that module conflicts can lead to file overwriting, but it may not necessarily have a direct impact on the project.
Steps to Reproduce
pip install -r requirements.txt
Desired Change
Indeed, it is not an ideal behavior for modules to be overwritten, even if they are not actively used or if the overwritten module is the one being called. It introduces uncertainty and can cause issues in the long run, especially if there are changes or updates to the overwritten modules in future development. It is generally recommended to avoid such conflicts and ensure that only the necessary and compatible dependencies are declared in the requirements to maintain a stable and predictable environment for the project.