Releases
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
You can’t perform that action at this time.