Skip to content

Multi python commits #4144

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 8 commits into from
May 20, 2025
Merged

Multi python commits #4144

merged 8 commits into from
May 20, 2025

Conversation

agl29
Copy link
Collaborator

@agl29 agl29 commented May 20, 2025

What changes were proposed in this pull request?

  • (Please fill in changes proposed in this fix)

How was this patch tested?

  • (Please explain how this patch was tested. Ex: unit tests, manual tests)
  • (If this patch involves UI changes, please attach a screen-shot; otherwise, remove this)

Please review Hue Contributing Guide before opening a pull request.

ranade1 and others added 8 commits May 20, 2025 20:02
(cherry picked from commit e40c8701835e2f2d96356b9f83f0ae49f3ca5c4a)
Change-Id: I24c6bf419fce403f39247ae894644f899296f115
Change-Id: I4a7a63fdcdab5a41b6f52475a6f4d86fe617d6d7
(cherry picked from commit 2dc6482f6d6a84bdd080f3bc49397027be81f22e)
(cherry picked from commit b03a1580c9275150ba4d3ba0e7e85542ab9122e1)
… environment consistency

- Standardized Python environment setup for python3.8, python3.9, and python3.11 across RedHat, Ubuntu, and SLES.
- Introduced helper functions `setup_python_env`, `install_prerequisite`, and `should_build_python` for modular environment configuration.
- Updated Makefile to use proper virtualenv creation with `--system-site-packages` and corrected binary usage (`ENV_PYTHON` vs `SYS_PYTHON`).
- Corrected VIRTUAL_ENV_VERSION mappings:
  - Pinned python3.8 to virtualenv 20.19.0 for compatibility.
  - Upgraded python3.11 to virtualenv 20.30.0 for latest features.
- Added missing `Markdown` dependency per Python version in `generate_requirements.py`.
- Simplified and modularized OS-specific dependency installations (build_hue_cloudera.sh):
  - Added dynamic sqlite3 build from source where necessary.
  - Corrected PATH and LD_LIBRARY_PATH exports.
- Improved consistency for environment detection (is_supported_os) and python version validation (is_supported_python_version).
- Enhanced release Makefile target to build with python3.8 or python3.11 based on OS compatibility.

Overall improves reproducibility, clarity, and multi-Python build support across different OS distributions.

(cherry picked from commit 68d7906dc6a45ddd36302f69ddc2908f45a23c68)
Change-Id: I9f3a3749a9bf97162ce05e5ee218c07461b74831
(cherry picked from commit 74fe7015e855b5f07790d8939e567174ebe2db99)
…compatibility across OSes

Change-Id: I2e1f662eb6f432afeb62e69bed6956f2c60c0ad0
(cherry picked from commit 56db8a22fd3f3cd98371b3b77e603846ef54aedd)
… handling and SQLite installation

- Simplified install_prerequisite() to consistently pass OS argument to all per-OS install functions.
- Split responsibilities by creating:
  - install_build_dependencies(): install system-level packages only.
  - install_sqlite3(): install SQLite 3.35.5 if missing.
  - install_python38(), install_python39(), install_python311(): individual Python installers.
  - install_sqlite_python(): orchestrates installing SQLite and appropriate Python version.
- General code cleanup: removed redundancy, unified style, improved modularity, and added error handling.

Change-Id: If17af9ea2c1ca99c575a937f767e5e1d7b016194
(cherry picked from commit ed9cfb0723e618f155b3e96d61a53aa03e2909ac)
…iginal version.

Change-Id: Ia3f318a6302fb808e3d8925a122150f04510cafa
(cherry picked from commit 33fd8930ff28786f8812d1729e8b82d37fb17eb9)
(cherry picked from commit 5e540eaf3a6828be039e7ca6361ca982fa7a2a68)
… library No module named 'decorator'

Change-Id: Id8af5f31894c5ebb971a35cae84e903e75e00ac6
(cherry picked from commit 2d2a30bef7a8d3004b89a2204cbf2834adb442d2)
Change-Id: I52ade9334b6a861d5b9bdfe89ce8cc2e5258d06b
@Copilot Copilot AI review requested due to automatic review settings May 20, 2025 14:36
Copy link

⚠️ No test files modified. Please ensure that changes are properly tested. ⚠️

Copy link

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

Updates package requirement lists across architectures, standardizes Markdown versions, and removes legacy dependencies.

  • Removed debug tools (django-debug-panel, django-debug-toolbar) and PyTorch requirements integration.
  • Bumped django_prometheus to 2.3.1 and aligned Markdown versions per Python variant.
  • Added decorator==5.1.1 for Python 3.9 on x86_64 and aarch64.
Files not reviewed (3)
  • Makefile: Language not supported
  • Makefile.vars: Language not supported
  • tools/cloudera/build_hue_cloudera.sh: Language not supported
Comments suppressed due to low confidence (2)

desktop/core/generate_requirements.py:195

  • No tests appear to cover the new architecture-specific and Python version-specific requirement mappings; consider adding unit tests to verify correct requirements file generation for each scenario.
def generate_requirements(self):

desktop/core/generate_requirements.py:136

  • The SASL dependency was removed from the ppc64le default requirements block, which could break authentication support on ppc64le builds; please re-add it if this removal was unintentional.
sasl==0.3.1

Copy link

Python Code Coverage

Python Coverage Report •
FileStmtsMissCoverMissing
TOTAL537342701349% 
report-only-changed-files is enabled. No files were changed during this commit :)

Pytest Report

Tests Skipped Failures Errors Time
1090 106 💤 0 ❌ 0 🔥 6m 3s ⏱️

@agl29 agl29 merged commit 16be4ad into master May 20, 2025
7 of 8 checks passed
@agl29 agl29 deleted the multi-python-commits branch May 20, 2025 15:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants