Introduced a new GitHub workflow to automate the build process for a
Python package on Ubuntu. The workflow triggers on push and pull
requests and includes steps for updating the package list, installing
essentials like git, setting up Python 3.10, and handling dependencies.
It also includes the package installation and a post-install test to
confirm successful import. This automation ensures code integrity with
each update and simplifies the integration process for contributors.
updated pip install flag
The project's CI configuration experienced two main updates:
- The Ubuntu-specific Python package build workflow was entirely
removed, likely due to standardization across different environments or
redundancy with other existing workflows.
- Python package installation in the main workflow was amended to
include the `--break-system-packages` pip flag, which indicates a shift
in handling dependencies that may conflict with system packages.
These changes may streamline the CI/CD process and address dependency
conflicts during package installation.
Refactored the CI workflows to include package installation and import
testing. Ensured package is importable after installation by creating a
new '__main__.py' module to check imports. This adds an extra validation
step to the CI process, catching potential import issues early. Import
statements in '__init__.py' have also been updated to use 'as' for
clarity and namespace control.
Ensured that liblimesuite-dev package is installed as part of the
dependencies for our GitHub Actions workflow. This is to address missing
development headers required for interfacing with LimeSuite in our
Python package build process.
Ensure the Python version is specified as a string in the Ubuntu
workflow configuration to prevent potential parsing issues by the
setup-python GitHub Action. This update aligns with the recommended
practices for YAML file consistency and compatibility.
Upgraded the GitHub Actions workflow to explicitly set up Python 3.10.
Simplified the installation process by using pip to upgrade and install
necessary Python packages such as h5py, setuptools, wheel, and build,
rather than installing individual Python and pip packages via apt-get.
This ensures a more standardized and up-to-date environment for CI
processes. Removed explicit python3 references in favor of the
actions/setup-python environment, aligning with the GitHub Actions best
practices.
build step
Modified the build command in the CI workflow to explicitly call Python
3 to ensure compatibility and avoid potential conflicts with systems
where Python 2 is the default. This change aligns the build process with
modern Python practices and reduces ambiguity in environments where
multiple Python versions are available.
alias
Enhanced the GitHub Actions workflow for the Ubuntu environment by
including python3-venv to facilitate virtual environment management.
Additionally, established python-is-python3 to standardize the Python
command, ensuring consistency and avoiding potential versioning issues
across different setups.
Upgraded our GitHub Actions CI Python package workflow for Ubuntu by
including the `python3-build` package during the dependency installation
phase. This addition ensures compatibility with projects that require
this specific package for building Python applications.
token, update submodule
Introduced a new GitHub Actions workflow to automate Python package
builds on Ubuntu environments upon push or pull request events. This
addition ensures the compatibility of the package on the Ubuntu platform
and streamlines the continuous integration process.
Updated the limedriver submodule to the latest commit, keeping the
project in sync with recent upstream changes and maintaining the
integrity of external dependencies.