Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Draft. * Update CI/CD workflows and project metadata Updated the Python versions under test in the CI/CD workflows to include Python 3.12. Also, made changes in the pyproject.toml and setup.py files, reflecting the updated metadata, including authors, readme, classifiers, etc. The setuptools calls in setup.py were significantly simplified. * Replace README.adoc with README.md Removed the adoc formatted README file and replaced it with a markdown version (README.md). The new README file maintains the original content but uses markdown language, which is more widely supported and easier to read. * Refactor agrirouter to src in all imports Removed agrirouter module and replaced it with the src module in import statements across the codebase. This change was made to better align the module names with its functions, and improve readability and organization of code structure. The change also covers respective adaptations in the file system and addition of new '__init__.py' files for the package structure. Ensured that all existing references to the old 'agrirouter' name are updated to 'src'. * Wrap setup call in main function in setup.py The setup function in setup.py now only runs if the script is run directly. This modification prevents unnecessary operations from taking place when the module is imported, improving efficiency and avoiding potential issues. * Remove unnecessary imports from __init__.py Unnecessary imports were removed from __init__.py, greatly cleaining it up. This change makes the code cleaner, improves understandability, and potentially increases the execution efficiency. * Correct invalid test in test_validate_toml.py The removed line of code did not contribute to the testing process of validating the toml file. The adjustment corrects the test logic, making the test case more effective and meaningful. Now, the test will run as intended.1 * Add missing dependencies in requirements.txt Two new dependencies, google and toml, were added to the project's requirements.txt. This ensures that all needed packages for the application to work properly will be installed. * Update continuous-integration.yml for wheel build Added a new step in the continuous-integration.yml file for a dry run of the wheel build. This change ensures that the wheel build is functioning as expected before each deployment, reducing potential failure points. * Update Python versions and script versions in workflows The Python version and action scripts in the GitHub workflows have been updated. The supported Python version constraints have also been adjusted in pyproject.toml to reflect these changes and ensure compatibility in all contexts. * Add dry run build to linting workflow A dry run build step to wheel package creation has been added to the GitHub linting workflow. With this change, along with the flake8 linting, a source distribution and wheel distribution will be created natively in Python, ensuring code quality and functionality before deployment. * Add wheel and setuptools to CI workflows The continuous integration and linting workflows have been updated to include the installation of 'wheel' and 'setuptools'. These packages are essential for the creation of a Python wheel distribution, enabling a dry run build which ensures code quality and functionality before the actual deployment. * Fix typo in pip install command in CI workflows The pip install command for 'wheel' and 'setuptools' in both continuous integration and linting workflows contained a typo. This typo has been corrected to ensure that the necessary packages are installed correctly. These packages are critical for creating Python wheel distributions and for running quality assurance checks before deployment. * Remove setup.py and unnecessary pip install commands Removed setup.py and unnecessary pip installs for flake8, pytest, wheel, and setuptools from CI workflow files. Dependencies are now managed using the requirements.txt file. The 'build' package was added to the requirements.txt to help create Python distributions. * Update Python package build method in CI workflows The package building command in CI workflows has been updated from using setup.py to the 'build' package. This change has been made in both 'continuous-integration.yml' and 'linting-for-all-versions.yml' files. This change simplifies managing dependencies via the requirements.txt file. * Update Python versions for linting workflow Removed Python version "3.7" from the linting GitHub actions configuration. Now, the linting will only run for Python versions "3.8", "3.9", "3.10", and "3.11".
- Loading branch information