-
Notifications
You must be signed in to change notification settings - Fork 9
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
Rework tooling #664
Rework tooling #664
Conversation
Warning Rate limit exceeded@CoMPaTech has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 0 minutes and 12 seconds before requesting another review. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. 📒 Files selected for processing (1)
WalkthroughThe pull request includes significant updates to the Changes
Sequence Diagram(s)sequenceDiagram
participant Workflow
participant Cache
participant PythonEnv
participant Tests
Workflow->>Cache: Update CACHE_VERSION
Workflow->>PythonEnv: Restore Python environment
PythonEnv->>Cache: Check cache hit
alt Cache hit
PythonEnv-->>Workflow: Load environment
else Cache miss
PythonEnv-->>Cache: Create new cache
end
Workflow->>Tests: Run tests with coverage
Possibly related PRs
Suggested labels
Suggested reviewers
Poem
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
🧹 Outside diff range and nitpick comments (6)
tests/data/anna/anna_elga_2.json (1)
40-40
: Consider documenting valid array values.Since this is test data, it would be helpful to document the complete set of valid values for
available_schedules
andpreset_modes
to assist other developers in creating test cases.Consider adding a comment in the JSON or a separate documentation file listing all valid values and their purposes.
Also applies to: 48-48
tests/test_legacy_generic.py (1)
Line range hint
12-20
: Consider enhancing the test docstring.While the test implementation is solid, the docstring could be more descriptive about the specific failure scenario being tested.
- """Test erroneous legacy stretch system.""" + """Test error handling when connecting to a faulty legacy stretch system. + + Verifies that InvalidXMLError is raised when attempting to connect + to a misconfigured legacy system. + """scripts/tests_and_coverage.sh (1)
38-39
: Consider making the biome path configurable.The hard-coded path
./tmp/biome
might be fragile. Consider using a variable or environment variable for the biome executable path.+BIOME_PATH="${BIOME_PATH:-./tmp/biome}" echo "... biome-ing (prettier) ..." -./tmp/biome check plugwise/ tests/ --files-ignore-unknown=true --no-errors-on-unmatched --indent-width=2 --indent-style=space --write +"$BIOME_PATH" check plugwise/ tests/ --files-ignore-unknown=true --no-errors-on-unmatched --indent-width=2 --indent-style=space --writetests/test_generic.py (1)
Line range hint
12-67
: Consider standardizing test method docstrings.While the test implementations are solid, the docstrings could follow a more consistent format across all test methods. Consider adopting a standard template that includes:
- Purpose of the test
- Expected behavior
- Type of error being tested
Example format for one of the methods:
- """Test P1 with invalid credentials setup.""" + """Test authentication failure handling for P1 setup. + + Verifies that: + - InvalidAuthentication is raised for incorrect credentials + - Error is properly logged at debug level + """pyproject.toml (2)
60-74
: Consider simplifying the init-hookThe init-hook configuration is quite complex and could potentially be simplified. Consider moving the plugin path setup to a separate configuration file or environment variable.
-init-hook = """\ - from pathlib import Path; \ - import sys; \ - - from pylint.config import find_default_config_files; \ - - sys.path.append( \ - str(Path(next(find_default_config_files())).parent.joinpath('pylint/plugins')) - ) \ - """ +init-hook = "import os, sys; sys.path.append(os.path.join(os.path.dirname(next(pylint.config.find_default_config_files())), 'pylint/plugins'))"
Line range hint
452-457
: Consider enabling ISC001The
ISC001
rule (implicitly concatenated string literals) is commented out. Consider enabling it to catch potential string concatenation issues.- # "ISC001", # Implicitly concatenated string literals on one line + "ISC001", # Implicitly concatenated string literals on one line
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
📒 Files selected for processing (49)
.github/workflows/verify.yml
(1 hunks).pre-commit-config.yaml
(2 hunks)fixtures/p1v4/all_data.json
(0 hunks)plugwise/__init__.py
(10 hunks)plugwise/common.py
(7 hunks)plugwise/constants.py
(2 hunks)plugwise/data.py
(7 hunks)plugwise/helper.py
(13 hunks)plugwise/legacy/data.py
(1 hunks)plugwise/legacy/helper.py
(6 hunks)plugwise/legacy/smile.py
(4 hunks)plugwise/smile.py
(6 hunks)plugwise/util.py
(4 hunks)pyproject.toml
(5 hunks)scripts/tests_and_coverage.sh
(1 hunks)tests/data/adam/adam_heatpump_cooling.json
(21 hunks)tests/data/adam/adam_jip.json
(9 hunks)tests/data/adam/adam_multiple_devices_per_zone.json
(9 hunks)tests/data/adam/adam_onoff_cooling_fake_firmware.json
(3 hunks)tests/data/adam/adam_plus_anna.json
(2 hunks)tests/data/adam/adam_plus_anna_new.json
(5 hunks)tests/data/adam/adam_plus_anna_new_UPDATED_DATA.json
(1 hunks)tests/data/adam/adam_plus_anna_new_regulation_off.json
(5 hunks)tests/data/adam/adam_zone_per_device.json
(10 hunks)tests/data/anna/anna_elga_2.json
(1 hunks)tests/data/anna/anna_elga_2_cooling.json
(1 hunks)tests/data/anna/anna_elga_2_cooling_UPDATED_DATA.json
(1 hunks)tests/data/anna/anna_elga_2_schedule_off.json
(1 hunks)tests/data/anna/anna_elga_no_cooling.json
(1 hunks)tests/data/anna/anna_heatpump_cooling.json
(1 hunks)tests/data/anna/anna_heatpump_cooling_fake_firmware.json
(1 hunks)tests/data/anna/anna_heatpump_heating.json
(1 hunks)tests/data/anna/anna_loria_cooling_active.json
(2 hunks)tests/data/anna/anna_loria_driessens.json
(2 hunks)tests/data/anna/anna_loria_heating_idle.json
(2 hunks)tests/data/anna/anna_v4.json
(1 hunks)tests/data/anna/anna_v4_dhw.json
(1 hunks)tests/data/anna/anna_v4_no_tag.json
(1 hunks)tests/data/anna/anna_without_boiler_fw441.json
(1 hunks)tests/data/anna/legacy_anna.json
(1 hunks)tests/data/anna/legacy_anna_2.json
(1 hunks)tests/data/stretch/stretch_v23.json
(1 hunks)tests/test_adam.py
(4 hunks)tests/test_anna.py
(3 hunks)tests/test_generic.py
(1 hunks)tests/test_init.py
(13 hunks)tests/test_legacy_anna.py
(1 hunks)tests/test_legacy_generic.py
(1 hunks)tests/test_legacy_stretch.py
(2 hunks)
💤 Files with no reviewable changes (1)
- fixtures/p1v4/all_data.json
✅ Files skipped from review due to trivial changes (29)
- tests/data/adam/adam_plus_anna_new_UPDATED_DATA.json
- tests/test_legacy_anna.py
- tests/data/anna/anna_elga_2_cooling.json
- tests/data/anna/anna_heatpump_cooling.json
- tests/data/anna/anna_v4_dhw.json
- tests/data/anna/anna_elga_2_schedule_off.json
- tests/data/anna/anna_heatpump_cooling_fake_firmware.json
- tests/data/anna/legacy_anna.json
- tests/data/anna/anna_elga_2_cooling_UPDATED_DATA.json
- tests/data/anna/anna_without_boiler_fw441.json
- tests/data/anna/anna_elga_no_cooling.json
- tests/data/anna/anna_v4.json
- tests/data/adam/adam_plus_anna_new.json
- tests/test_legacy_stretch.py
- tests/data/anna/anna_heatpump_heating.json
- tests/data/anna/legacy_anna_2.json
- tests/test_anna.py
- tests/data/anna/anna_v4_no_tag.json
- tests/data/adam/adam_multiple_devices_per_zone.json
- tests/data/adam/adam_onoff_cooling_fake_firmware.json
- tests/data/adam/adam_plus_anna_new_regulation_off.json
- tests/data/adam/adam_jip.json
- tests/data/adam/adam_heatpump_cooling.json
- tests/data/adam/adam_plus_anna.json
- tests/data/adam/adam_zone_per_device.json
- tests/test_adam.py
- tests/data/anna/anna_loria_driessens.json
- tests/data/anna/anna_loria_cooling_active.json
- tests/data/anna/anna_loria_heating_idle.json
🔇 Additional comments (37)
tests/test_legacy_generic.py (1)
8-8
: LGTM! Clean class definition formatting.
The class definition is well-formatted and includes appropriate pylint directive.
plugwise/legacy/data.py (1)
5-7
: LGTM! Type hints enhance code clarity.
The addition of __future__.annotations
and type hints improves code maintainability and IDE support without affecting runtime behavior.
.pre-commit-config.yaml (2)
13-13
: LGTM! Added ruff-format for consistent code formatting.
The addition of ruff-format
hook enhances code formatting consistency across the project.
100-101
: LGTM! Improved biome configuration with explicit formatting rules.
The updated biome configuration with explicit indentation rules (--indent-width=2 --indent-style=space
) ensures consistent formatting across the codebase.
plugwise/util.py (4)
2-4
: LGTM! Enhanced type safety with future annotations.
The addition of __future__.annotations
improves type hinting support.
Line range hint 45-50
: LGTM! Improved string formatting.
The string formatting in check_alternative_location
is now more readable and maintainable.
69-73
: LGTM! Enhanced conditional readability.
The boolean conditions in in_alternative_location
are now more clearly structured.
224-225
: LGTM! Improved conditional logic.
The use of the walrus operator in skip_obsolete_measurements
makes the code more concise while maintaining readability.
tests/data/stretch/stretch_v23.json (2)
308-308
: LGTM!
The formatting change to the members array maintains the same functionality while improving readability.
Line range hint 309-332
: LGTM!
The new heater_central_plug device entry follows the established pattern and contains all required fields with reasonable values.
plugwise/legacy/smile.py (3)
142-144
: LGTM!
The added section header improves code organization and makes API and service-related functions more discoverable.
185-187
: LGTM!
The method signature reformatting improves readability while maintaining functionality.
Also applies to: 192-194
213-215
: LGTM!
The error message formatting is now more consistent with the codebase style.
plugwise/data.py (2)
81-87
: LGTM!
The conditional blocks have been reformatted for improved readability while maintaining the same logic.
Also applies to: 107-111, 245-248
292-294
: LGTM!
The climate mode assignment has been reformatted for better readability without changing the functionality.
plugwise/common.py (5)
87-87
: LGTM! Clean ternary operator usage.
The refactoring improves readability while maintaining the same logic.
92-94
: LGTM! Clean method signature formatting.
The reformatting improves readability while maintaining proper type hints.
101-103
: LGTM! Clean condition formatting.
The reformatting improves readability while maintaining the same logic.
114-116
: LGTM! Clean method signature formatting.
The reformatting improves readability while maintaining proper type hints and default values.
274-276
: LGTM! Clean method signature formatting.
The reformatting improves readability while maintaining proper type hints and default values.
.github/workflows/verify.yml (1)
7-7
: Verify cache invalidation impact.
The cache version increment will invalidate existing caches. Ensure this is intentional and that all jobs have been tested with the new cache version.
✅ Verification successful
Cache version increment is justified
The cache version increment from 11 to 12 is warranted due to significant changes in the codebase:
- Updates to
.pre-commit-config.yaml
configuration, including changes to Biome linting parameters - Removal of CI auto-update configuration
- These changes affect the development environment setup and validation process
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Check for cache hits/misses in recent workflow runs
# Get recent workflow runs and their cache usage
gh api -X GET /repos/$GITHUB_REPOSITORY/actions/runs \
--jq '.workflow_runs[] | select(.name=="Latest commit") | {id: .id, status: .status, conclusion: .conclusion}'
Length of output: 261
Script:
#!/bin/bash
# Let's check for recent changes in the workflow file and related cache configurations
git log -n 5 --oneline -- .github/workflows/verify.yml
# Also check the current workflow file content to understand cache usage
cat .github/workflows/verify.yml
Length of output: 15866
Script:
#!/bin/bash
# Let's check for changes in dependency files that might justify cache invalidation
git diff HEAD^1 requirements_test.txt setup.py requirements_commit.txt .pre-commit-config.yaml 2>/dev/null || true
# Also check for any recent changes in Python version
git diff HEAD^1 .github/workflows/verify.yml | grep -A 5 -B 5 "DEFAULT_PYTHON"
Length of output: 1271
plugwise/constants.py (1)
171-171
: LGTM! Clean constant definition with helpful comment.
The reformatting improves readability while maintaining the same functionality. The comment clearly indicates when this measurement is available.
plugwise/__init__.py (2)
129-178
: LGTM! Improved readability of API initialization.
The reformatting of the _smile_api
initialization improves readability by:
- Clearly separating SmileAPI and SmileLegacyAPI instantiation
- Vertically aligning parameters for better visual scanning
- Using a conditional expression for cleaner branching
Line range hint 341-452
: LGTM! Enhanced error handling readability.
The error handling has been reformatted consistently across multiple methods, improving readability while maintaining the same functionality. The changes include:
- Breaking long error messages into multiple lines
- Consistent formatting of error message construction
plugwise/legacy/helper.py (3)
173-173
: LGTM! Simplified conditional logic.
The conditional checks have been simplified and made more readable:
- Removed unnecessary parentheses
- Improved case statement formatting
Also applies to: 213-221
232-234
: LGTM! Improved function call readability.
The _get_module_data
function call has been reformatted for better readability by:
- Breaking parameters into multiple lines
- Consistent indentation
458-460
: LGTM! Enhanced condition check readability.
The condition check for directives has been reformatted to improve readability by:
- Breaking the condition into multiple lines
- Consistent indentation
plugwise/smile.py (5)
135-144
: LGTM! Improved assignment readability.
The assignment to self._cooling_enabled
has been reformatted for better readability by:
- Breaking the nested dictionary access into multiple lines
- Consistent indentation
153-155
: LGTM! Added clear section separator.
Added a clear section separator comment to improve code organization and readability.
227-229
: LGTM! Enhanced method signature readability.
The set_select
method signature has been reformatted for better readability by:
- Breaking parameters into multiple lines
- Consistent indentation
261-266
: LGTM! Improved time calculation readability.
The time calculation has been reformatted for better readability by:
- Breaking the chain of operations into multiple lines
- Consistent indentation
460-461
: LGTM! Enhanced error message readability.
The error message has been reformatted for better readability by:
- Breaking the long message into multiple lines
- Consistent indentation
pyproject.toml (1)
50-58
: Well-documented configuration changes
The added comments clearly explain the rationale behind disabling specific pylint rules, making it easier for future maintainers to understand the decisions.
tests/test_init.py (2)
629-635
: Consistent multi-line expression formatting
The multi-line expression formatting is now more consistent with the project's style. The indentation and line breaks improve readability.
694-699
: Consistent try-except block formatting
The try-except blocks have been reformatted consistently throughout the file, improving readability and maintainability.
Also applies to: 754-761, 822-829, 908-915, 939-941, 970-977, 1019-1026
plugwise/helper.py (2)
891-894
: Consistent dictionary initialization formatting
The dictionary initializations have been reformatted consistently throughout the file, improving readability and maintainability.
Also applies to: 1036-1040, 1042-1046, 1063-1067, 1069-1073
815-817
: Consistent multi-line expression formatting
The multi-line expressions have been reformatted consistently throughout the file, improving readability.
Also applies to: 833-835, 839-841, 934-936
Note: pre-commit.ci disabled for this repo as well |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #664 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 20 20
Lines 3436 3439 +3
=========================================
+ Hits 3436 3439 +3 ☔ View full report in Codecov by Sentry. |
Quality Gate passedIssues Measures |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Outside diff range and nitpick comments (2)
scripts/tests_and_coverage.sh (1)
31-34
: Consider adding error message customization.While the
biome_format
function works well, it could be more flexible by allowing custom error messages.biome_format() { ./tmp/biome check fixtures/ plugwise/ tests/ --files-ignore-unknown=true --no-errors-on-unmatched --indent-width=2 --indent-style=space --write - handle_command_error "biome formatting" + handle_command_error "${1:-biome formatting}" }.pre-commit-config.yaml (1)
108-109
: Consider using environment variables for biome configuration.The biome configuration could benefit from using environment variables for formatting settings to maintain consistency across different tools.
- entry: ./tmp/biome check fixtures/ plugwise/ tests/ --files-ignore-unknown=true --no-errors-on-unmatched --json-formatter-indent-width=2 --json-formatter-indent-style=space + entry: ./tmp/biome check fixtures/ plugwise/ tests/ --files-ignore-unknown=true --no-errors-on-unmatched --json-formatter-indent-width=${INDENT_WIDTH:-2} --json-formatter-indent-style=${INDENT_STYLE:-space}
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
📒 Files selected for processing (35)
.github/workflows/verify.yml
(2 hunks).pre-commit-config.yaml
(3 hunks)fixtures/adam_heatpump_cooling/all_data.json
(21 hunks)fixtures/adam_jip/all_data.json
(9 hunks)fixtures/adam_multiple_devices_per_zone/all_data.json
(9 hunks)fixtures/adam_onoff_cooling_fake_firmware/all_data.json
(3 hunks)fixtures/adam_plus_anna/all_data.json
(2 hunks)fixtures/adam_plus_anna_new/all_data.json
(5 hunks)fixtures/adam_plus_anna_new_regulation_off/all_data.json
(5 hunks)fixtures/adam_zone_per_device/all_data.json
(10 hunks)fixtures/anna_elga_2/all_data.json
(1 hunks)fixtures/anna_elga_2_cooling/all_data.json
(1 hunks)fixtures/anna_elga_2_schedule_off/all_data.json
(1 hunks)fixtures/anna_elga_no_cooling/all_data.json
(1 hunks)fixtures/anna_heatpump_cooling/all_data.json
(1 hunks)fixtures/anna_heatpump_cooling_fake_firmware/all_data.json
(1 hunks)fixtures/anna_heatpump_heating/all_data.json
(1 hunks)fixtures/anna_loria_cooling_active/all_data.json
(2 hunks)fixtures/anna_loria_driessens/all_data.json
(2 hunks)fixtures/anna_loria_heating_idle/all_data.json
(2 hunks)fixtures/anna_v4/all_data.json
(1 hunks)fixtures/anna_v4_dhw/all_data.json
(1 hunks)fixtures/anna_v4_no_tag/all_data.json
(1 hunks)fixtures/anna_without_boiler_fw441/all_data.json
(1 hunks)fixtures/legacy_anna/all_data.json
(1 hunks)fixtures/legacy_anna_2/all_data.json
(1 hunks)fixtures/m_adam_cooling/all_data.json
(5 hunks)fixtures/m_adam_heating/all_data.json
(5 hunks)fixtures/m_adam_jip/all_data.json
(9 hunks)fixtures/m_adam_multiple_devices_per_zone/all_data.json
(9 hunks)fixtures/m_anna_heatpump_cooling/all_data.json
(1 hunks)fixtures/m_anna_heatpump_idle/all_data.json
(1 hunks)fixtures/stretch_v23/all_data.json
(1 hunks)scripts/tests_and_coverage.sh
(2 hunks)tests/test_init.py
(14 hunks)
✅ Files skipped from review due to trivial changes (31)
- fixtures/anna_elga_2_cooling/all_data.json
- fixtures/adam_plus_anna_new_regulation_off/all_data.json
- fixtures/anna_elga_2/all_data.json
- fixtures/anna_heatpump_heating/all_data.json
- fixtures/anna_without_boiler_fw441/all_data.json
- fixtures/anna_v4_no_tag/all_data.json
- fixtures/m_anna_heatpump_cooling/all_data.json
- fixtures/m_adam_heating/all_data.json
- fixtures/anna_elga_2_schedule_off/all_data.json
- fixtures/anna_v4_dhw/all_data.json
- fixtures/anna_loria_heating_idle/all_data.json
- fixtures/anna_v4/all_data.json
- fixtures/legacy_anna_2/all_data.json
- fixtures/m_anna_heatpump_idle/all_data.json
- fixtures/anna_heatpump_cooling_fake_firmware/all_data.json
- fixtures/anna_loria_driessens/all_data.json
- fixtures/stretch_v23/all_data.json
- fixtures/anna_loria_cooling_active/all_data.json
- fixtures/anna_elga_no_cooling/all_data.json
- fixtures/legacy_anna/all_data.json
- fixtures/adam_plus_anna/all_data.json
- fixtures/adam_onoff_cooling_fake_firmware/all_data.json
- fixtures/adam_zone_per_device/all_data.json
- fixtures/adam_jip/all_data.json
- fixtures/adam_plus_anna_new/all_data.json
- fixtures/anna_heatpump_cooling/all_data.json
- fixtures/adam_multiple_devices_per_zone/all_data.json
- fixtures/m_adam_jip/all_data.json
- fixtures/m_adam_cooling/all_data.json
- fixtures/adam_heatpump_cooling/all_data.json
- fixtures/m_adam_multiple_devices_per_zone/all_data.json
🧰 Additional context used
🪛 actionlint (1.7.4)
.github/workflows/verify.yml
104-104: shellcheck reported issue in this script: SC2086:info:5:83: Double quote to prevent globbing and word splitting
(shellcheck)
104-104: shellcheck reported issue in this script: SC2086:info:6:14: Double quote to prevent globbing and word splitting
(shellcheck)
104-104: shellcheck reported issue in this script: SC2086:info:8:17: Double quote to prevent globbing and word splitting
(shellcheck)
🪛 GitHub Check: codecov/patch
tests/test_init.py
[warning] 57-57: tests/test_init.py#L57
Added line #L57 was not covered by tests
🔇 Additional comments (14)
scripts/tests_and_coverage.sh (3)
24-29
: LGTM: Well-structured error handling function.
The handle_command_error
function provides consistent error handling and exit behavior across the script.
47-47
: LGTM: Comprehensive error handling integration.
Error handling has been consistently integrated across all critical commands.
Also applies to: 56-56, 59-59, 63-63, 67-67
74-77
: 🛠️ Refactor suggestion
Consider adding error handling for manual fixtures generation.
The manual fixtures section should include error handling for the Python script execution.
echo "... Crafting manual fixtures ..."
- PYTHONPATH=$(pwd) python3 scripts/manual_fixtures.py
+ PYTHONPATH=$(pwd) python3 scripts/manual_fixtures.py
+ handle_command_error "manual fixtures generation"
echo "... (re) biome-ing (prettier) ..."
biome_format
Likely invalid or redundant comment.
.pre-commit-config.yaml (2)
11-15
: LGTM: Well-structured ruff configuration.
The addition of the ruff-format
hook and clear naming improves the pre-commit workflow.
20-20
: LGTM: Clear and consistent hook naming.
The addition of descriptive names to all hooks improves maintainability and clarity.
Also applies to: 23-23, 30-31, 37-37, 43-43, 53-53, 61-61
.github/workflows/verify.yml (3)
7-7
: LGTM: Cache version increment.
The cache version increment ensures clean cache updates for the modified workflow.
101-101
: LGTM: Updated ruff commands.
The ruff commands have been appropriately updated to use the new format command.
Also applies to: 106-106
104-104
:
Fix shellcheck issues in the script.
The static analysis tools identified potential globbing and word splitting issues.
- GITHUB_REF##*/
+ "${GITHUB_REF##*/}"
Likely invalid or redundant comment.
🧰 Tools
🪛 actionlint (1.7.4)
104-104: shellcheck reported issue in this script: SC2086:info:5:83: Double quote to prevent globbing and word splitting
(shellcheck)
104-104: shellcheck reported issue in this script: SC2086:info:6:14: Double quote to prevent globbing and word splitting
(shellcheck)
104-104: shellcheck reported issue in this script: SC2086:info:8:17: Double quote to prevent globbing and word splitting
(shellcheck)
tests/test_init.py (6)
117-123
: LGTM! Improved route definitions readability
The route definitions have been consolidated into single lines per route, making the code more readable and maintainable.
Also applies to: 125-129
633-635
: LGTM! Improved dictionary access readability
The dictionary access has been split across multiple lines for better readability while maintaining the same functionality.
Also applies to: 637-639
698-703
: LGTM! Consistent exception handling format
The exception handling blocks have been reformatted consistently across multiple methods, improving code readability while maintaining the same error handling logic.
Also applies to: 758-760, 796-798, 826-828, 912-914, 943-945, 974-976, 1023-1025
788-790
: LGTM! Improved method call readability
The method call parameters have been split across multiple lines for better readability.
961-965
: LGTM! Improved list definition readability
The list definition has been split across multiple lines for better readability.
55-58
: Consider adding test coverage for NO_FIXTURES check
The new environment variable check for NO_FIXTURES
is not covered by tests. Consider adding test cases to verify this functionality.
🧰 Tools
🪛 GitHub Check: codecov/patch
[warning] 57-57: tests/test_init.py#L57
Added line #L57 was not covered by tests
Added additional checks for review in checklist form at the top ^^^ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! Agreed let's take it step by step.
Review-note: this (again) reformats our JSONs ... we should decide on how much we want to re-work (or just accept as is)
We might need to add another issue for fixing JSON (i.e. maybe not fix it in this already big PR)
Summary by CodeRabbit
New Features
Bug Fixes
Documentation
Refactor
Chores
pyproject.toml
for linting and formatting tools.