Releases: powerapi-ng/smartwatts-formula
Releases · powerapi-ng/smartwatts-formula
v2.3.0
v2.3.0 (2024-09-24)
Bug Fixes
- Correct prometheus configuraton
- Correct csv configuration
- Correct csv configuration
- Correct influxdb2 configuration
- Correct mongodb configuration
- Correct prometheusdb configuration
- docker: Add missing
.env
file to Docker deployment files (#126)
Build System
- Move Ruff configuration to its own file
- Disable
too-many-positional-arguments
pylint warning - Dockerfile: Use PowerAPI global virtualenv
- deps: Bump docker/setup-buildx-action from 3.3.0 to 3.4.0
- deps: Bump codecov/codecov-action from 4.3.0 to 4.3.1
- deps: Bump pypa/gh-action-pypi-publish from 1.10.0 to 1.10.1
- deps: Bump powerapi[everything] from 2.7.0 to 2.8.0
- deps: Bump powerapi/powerapi from 2.7.0 to 2.8.0
- deps: Bump pypa/gh-action-pypi-publish from 1.9.0 to 1.10.0
- deps: Bump docker/build-push-action from 6.6.1 to 6.7.0
- deps: Bump docker/build-push-action from 6.5.0 to 6.6.1
- deps: Bump docker/setup-buildx-action from 3.5.0 to 3.6.1
- deps: Bump docker/login-action from 3.2.0 to 3.3.0
- deps: Bump docker/setup-qemu-action from 3.1.0 to 3.2.0
- deps: Bump docker/build-push-action from 6.4.1 to 6.5.0
- deps: Bump docker/setup-buildx-action from 3.4.0 to 3.5.0
- deps: Bump docker/build-push-action from 6.1.0 to 6.2.0
- deps: Bump softprops/action-gh-release from 2.0.6 to 2.0.7
- deps: Bump docker/build-push-action from 6.4.0 to 6.4.1
- deps: Bump docker/build-push-action from 6.3.0 to 6.4.0
- deps: Bump pypa/gh-action-pypi-publish from 1.10.1 to 1.10.2
- deps: Bump docker/setup-buildx-action from 3.2.0 to 3.3.0
- deps: Bump codecov/codecov-action from 4.1.1 to 4.2.0
- deps: Bump softprops/action-gh-release from 2.0.7 to 2.0.8
- deps: Bump docker/build-push-action from 6.0.2 to 6.1.0
- deps: Bump docker/build-push-action from 6.0.1 to 6.0.2
- deps: Bump softprops/action-gh-release from 2.0.5 to 2.0.6
- deps: Bump docker/build-push-action from 6.0.0 to 6.0.1
- deps: Bump docker/build-push-action from 5.4.0 to 6.0.0
- deps: Bump pypa/gh-action-pypi-publish from 1.8.14 to 1.9.0
- deps: Bump codecov/codecov-action from 4.4.1 to 4.5.0
- deps: Bump docker/build-push-action from 5.3.0 to 5.4.0
- deps: Bump powerapi[everything] from 2.6.0 to 2.7.0
- deps: Bump powerapi/powerapi from 2.6.0 to 2.7.0
- deps: Bump docker/login-action from 3.1.0 to 3.2.0
- deps: Bump softprops/action-gh-release from 2.0.4 to 2.0.5
- deps: Bump docker/build-push-action from 6.2.0 to 6.3.0
- deps: Bump powerapi[everything] from 2.5.0 to 2.6.0
- deps: Bump powerapi/powerapi from 2.5.0 to 2.6.0
- deps: Bump codecov/codecov-action from 4.2.0 to 4.3.0
- deps: Bump docker/setup-qemu-action from 3.0.0 to 3.1.0
- pyproject: Update python minimal version and classifiers
Code Refactoring
- Use built-in collection types in type annotations
- Remove network parameters
- Remove sensor and formula types as paremeters, Usage of lastest versions for different dependencies
- Define formula and sensor version via environment variabes, latest is now the default value
- Put correct sensor version, defini mongodb as default source/destination
- Remove useless filedb image
- Remove unnecessary filedb configuration files
- Remove version and filedb service
- Remove filedb as destination, define mongodb as default source/destination
- Use
add_dispatch_rule
method ofRouteTable
Documentation
- Update README with usage of environment variables for versions configuration
- Update deployment documentation according to changes on scripts
Features
- Add docker deployments files
Miscellaneous Chores
- release: Bump SmartWatts package version to 2.3.0
v2.2.0
v2.2.0 (2024-03-28)
Bug Fixes
- cli: Wrong prefix Error History parameters name
- handler: Fix
ValueError
when no HWPCReport left for the sample - handler: Fix wrong input report format in global power predict
Build System
- Bump SmartWatts package version to 2.2.0
- Dockerfile: Pin PowerAPI base image tag to sha256 digest
- deps: Bump docker/metadata-action from 5.5.0 to 5.5.1
- deps: Bump powerapi/powerapi from
2f0afe6
tod81766e
- deps: Bump codecov/codecov-action from 4.1.0 to 4.1.1
- deps: Bump powerapi/powerapi from 2.3.0 to 2.4.0
- deps: Bump pypa/gh-action-pypi-publish from 1.8.8 to 1.8.10
- deps: Bump docker/setup-buildx-action from 3.1.0 to 3.2.0
- deps: Bump docker/build-push-action from 5.2.0 to 5.3.0
- deps: Bump docker/login-action from 3.0.0 to 3.1.0
- deps: Bump softprops/action-gh-release from 2.0.3 to 2.0.4
- deps: Bump softprops/action-gh-release from 2.0.2 to 2.0.3
- deps: Fix version number comment for softprops/action-gh-release
- deps: Bump docker/build-push-action from 5.1.0 to 5.2.0
- deps: Bump softprops/action-gh-release from 1 to 2
- deps: Bump pypa/gh-action-pypi-publish from 1.8.12 to 1.8.14
- deps: Bump pypa/gh-action-pypi-publish from 1.8.11 to 1.8.12
- deps: Bump docker/setup-buildx-action from 3.0.0 to 3.1.0
- deps: Bump powerapi/powerapi from 2.4.0 to 2.5.0
- deps: Bump codecov/codecov-action from 4.0.1 to 4.0.2
- deps: Bump powerapi/powerapi from 2.2.0 to 2.3.0
- deps: Bump codecov/codecov-action from 4.0.0 to 4.0.1
- deps: Bump docker/setup-buildx-action from 2.9.1 to 2.10.0
- deps: Bump codecov/codecov-action from 3.1.6 to 4.0.0
- deps: Bump codecov/codecov-action from 3.1.5 to 3.1.6
- deps: Bump actions/checkout from 3 to 4
- deps: Bump codecov/codecov-action from 4.0.2 to 4.1.0
- deps: Bump codecov/codecov-action from 3.1.4 to 3.1.5
- deps: Bump docker/metadata-action from 5.4.0 to 5.5.0
- deps: Bump docker/metadata-action from 5.3.0 to 5.4.0
- deps: Bump github/codeql-action from 2 to 3
- deps: Bump docker/build-push-action from 4.1.1 to 4.2.1
- deps: Bump powerapi/powerapi from 2.1.0 to 2.2.0
- deps: Bump actions/setup-python from 4 to 5
- deps: Bump docker/metadata-action from 5.2.0 to 5.3.0
- deps: Bump docker/metadata-action from 5.0.0 to 5.2.0
- deps: Bump pypa/gh-action-pypi-publish from 1.8.10 to 1.8.11
- deps: Bump docker/build-push-action from 5.0.0 to 5.1.0
- deps: Bump docker/build-push-action from 4.2.1 to 5.0.0
- deps: Bump docker/metadata-action from 4.6.0 to 5.0.0
- deps: Bump docker/login-action from 2.2.0 to 3.0.0
- deps: Bump docker/setup-buildx-action from 2.10.0 to 3.0.0
- deps-dev: Bump powerapi[everything] from 2.1.0 to 2.2.0
- deps-dev: Bump powerapi[everything] from 2.2.0 to 2.3.0
- deps-dev: Bump powerapi[everything] from 2.3.0 to 2.4.0
- deps-dev: Bump powerapi[everything] from 2.4.0 to 2.5.0
- pyproject: Add Python 3.12 support to classifiers
- ruff: Fix deprecated top-level linter settings
Code Refactoring
- Use callable objects instead of nested functions for actors factory
- Use
clf
instead ofmodel
for sklearn regressor - actor: Rename formula factory class and parameters
- actor: Add docstring to formula factory class
- handler: Access power model methods from Frequency Layer
- handler: Remove metadata default value in PowerReport generator
- handler: Use a generator in _get_nearest_frequency_layer method
- model: Rename report history file
- model: Rename samples history module
- model: Rename attributes name of report history
- model: Use integer instead of float for the frequencies in CPU topology
- model: Use the
samples_history
terminology everywhere - model: Remove unused typing dependency
- model: Fix ruff no-else-return warning in
ErrorHistory
Continuous Integration
- release: Add Docker image build for arm64 target platform
- release: Fix warning about deprecation of print_hash for pypa/gh-action-pypi-publish
- release: Disable generation of provenance attestation for container image
- release: Remove container image signature
- release: Use vars instead of secrets to get the Docker Hub username
- release: Sign the container image digest once per repository
Features
- actor: Add Error History configuration parameters
- cli: Add support of PowerAPI Pre-Processors
- cli: Add CLI arguments for Error History configuration
- handler: Use Error History to trigger new power model learning
- model: Clear error history when learning a new power model
- model: Add Error History support to Frequency Layer
- model: Add Error History class
- model: Add Frequency Layer to manage model and reports history
Miscellaneous Chores
- Use the same license format in every files
Tests
- model: Fix Sonar S1244 error about equality on floating points values
- model: Remove redundant test of reports history
- model: Update CPU topology tests to use integer instead of float for frequencies
v2.1.2
v2.1.2 (2023-07-19)
Build System
- Bump SmartWatts package version to 2.1.2
- Disable line-too-long Pylint warning
- deps: Bump powerapi/powerapi from 2.0.4 to 2.1.0
- deps: Bump pypa/gh-action-pypi-publish from 1.8.7 to 1.8.8
- deps: Bump pypa/gh-action-pypi-publish from 1.8.6 to 1.8.7
- deps-dev: Bump powerapi[everything] from 2.0.4 to 2.1.0
Code Refactoring
- Adapt CLI arguments definition to the PowerAPI 2.1.0 changes
Continuous Integration
- Make Dependabot check GitHub actions versions daily
- release: Sign container image with cosign
- release: Use Docker buildx for container image builds
v2.1.1
v2.1.1 (2023-06-14)
Build System
- deps: Bump docker/build-push-action from 4.1.0 to 4.1.1
- deps: Bump docker/metadata-action from 4.5.0 to 4.6.0
- deps: Bump powerapi/powerapi from 2.0.3 to 2.0.4
- deps: Bump docker/build-push-action from 4.0.0 to 4.1.0
- deps: Bump docker/login-action from 2.1.0 to 2.2.0
- deps: Bump docker/metadata-action from 4.4.0 to 4.5.0
- deps: Bump codecov/codecov-action from 3.1.3 to 3.1.4
- deps: Bump pypa/gh-action-pypi-publish from 1.8.5 to 1.8.6
Code Refactoring
- Adapt main and config_validator for using PowerAPI 2.0.4
v2.1.0
v2.1.0 (2023-05-05)
Bug Fixes
- handler: Use an OrderedDict for ticks storage
Build System
- Bump PowerAPI version to 2.0.2
- Switch to Ruff for code linting
- Remove unused pytest asyncio and timeout dependencies
- Update pylint configuration file
- Bump SmartWatts package version to 2.1.0
- Update dockerignore file for src-layout support
- Migrate from setup.(py|cfg) to pyproject.toml
- Remove influxdb_client dependency that now is inside influxdb
- Bump SmartWatts package version to 2.0.1
- deps: Bump powerapi/powerapi from 2.0.2 to 2.0.3
- deps: Bump docker/metadata-action from 4.3.0 to 4.4.0
- deps: Bump pypa/gh-action-pypi-publish from 1.8.3 to 1.8.5
- deps-dev: Bump powerapi[everything] from 2.0.2 to 2.0.3
Code Refactoring
- Cleanup formula main
- Cleanup HwPC report handler
- Move scripts into their own directory
- Move actor, handler and model code in their own module
- Move the formula configuration in the actor module
- Use the Formula report of PowerAPI instead of our own
- Move power model code in the model module
- Fix invalid-name pylint warning for logging level/format constants
- Remove unused scripts directory
- Rename exceptions file
- Adapt tests to PowerAPI 2.0.1 refactoring
- Switch project to src-layout
- Fix pylint error about unused **kwargs parameter in formula factories
- handler: Fix arguments-renamed pylint warning for handle method
- handler: Cleanup send report(s) to pusher(s) loop
- model: Rename History class to ReportHistory
- model: Add type hints to the methods of the CPUTopology class
- model: Move report history into its own file
- model: Filter sklearn warnings when training the model
- model: Add type hints to the methods of the PowerModel and ReportHistory classes
- model: Remove the apply_intercept_share method
- report: Use f-string for repr method of formula report
Continuous Integration
- Update codebase paths in workflows for the src-layout
- Switch to Trusted Publishing (OIDC auth) for pypa/gh-action-pypi-publish
- Add CodeQL workflow
- Add dependabot configuration file
- Update secrets of docker/login-action for release workflow
- Rework release workflow
- Rework build/test workflow
- build: Add upload of coverage reports to Codecov
- build: Use ruff instead of flake8 in code lint step
- build: Add pytest step to run unit tests with coverage
Features
- Declare exposed names in all list for each modules
- Add support of FormulaReport (model debug)
- Use more concise logging messages format
- cli: Improve cli arguments value checks
Miscellaneous Chores
- Update project description in README
- Add CITATION.cff file
- Update dockerignore to support pyproject.toml
Tests
- Add power model unit tests module
- Add unit test module
- Remove broken acceptation tests
- Fix pylint not-an-iterable error in acceptation tests utils
- model: Remove redundant test of _extract_events_value method
- model: Add power model unit tests
- model: Add reports history unit tests
- model: Add CPU topology unit tests
v2.0.1
v2.0.0
2.0.0 (2023-02-24)
Bug Fixes
- remove useless parameters from pylint configuratiobn (fb24e05)
- solve issue related to formula in post-morten mode (48e618f)
- solve issues with flake8 (4117c08)
- solve pylint issues, remove useless parameters from pylint configuratiobn (3719e6e)
BREAKING CHANGES
- TheSpian library is no longer used