-
Notifications
You must be signed in to change notification settings - Fork 11
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
0.1.0 #146
Conversation
* derprecated util * derprecated util * defaults/transformer_plugins document transformer plugins and enable utterance normalizer by default
* update/stop_pipeline add stop to the pipeline by default companion to OpenVoiceOS/ovos-core#391 * Update mycroft.conf * Update mycroft.conf
* readd low adapt matches * adjust common_qa * adjust pipeline
* fix/remove_broken_patch patch for mycroft-era `Configuration.get` (now `Configuration()`) is broken and causes .get to behave weirdly ``` self.config = dict(Configuration()) # below is False, like in mycroft.conf self.config = Configuration() # below is None ???? self.audio_enabled = self.config.get("enable_old_audioservice") ``` * bad test * signal breaking change ripping out a broken patch that we dont use anywhere, but technically a breaking change. who knows how many places are not actually reading config... bumping to 0.1.0 in case anything depends on the broken behaviour * Update version.py
reprioritize pipeline components
* Update meta.py improve env vars handling * typo * os.env priority * Update meta.py
…ements (#106) Updates the requirements on [ovos-bus-client](https://github.com/OpenVoiceOS/ovos-bus-client) to permit the latest version. - [Release notes](https://github.com/OpenVoiceOS/ovos-bus-client/releases) - [Changelog](https://github.com/OpenVoiceOS/ovos-bus-client/blob/dev/CHANGELOG.md) - [Commits](OpenVoiceOS/ovos-bus-client@V0.0.3...V0.0.8) --- updated-dependencies: - dependency-name: ovos-bus-client dependency-type: direct:production ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
document "fake_barge_in"
* deprecate/ovos_conf move exclusively to env vars, ovos.conf file is of very limited use, also not a standard pattern and very uncommon in other projects, it just causes confusion to users and distro packagers (i also simply don't like it and don't want to maintain it :P ) * tests * fix test
WalkthroughThe changes encompass updates to configuration files, GitHub workflows, dependency management, and version control. Key modifications include the introduction of a Dependabot configuration for automated package updates, enhancements to GitHub Actions for testing workflows, and adjustments to various configuration settings across multiple files. Additionally, versioning information has been updated, and deprecated methods have been removed to streamline the codebase. Changes
Sequence Diagram(s)sequenceDiagram
participant User
participant GitHub Actions
participant Dependabot
participant Python Packages
User->>GitHub Actions: Trigger CI/CD workflow
GitHub Actions->>Python Packages: Install dependencies
GitHub Actions->>Dependabot: Check for package updates
Dependabot->>Python Packages: Update to latest versions
Python Packages-->>GitHub Actions: Confirm updates
GitHub Actions-->>User: Complete CI/CD process
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 (
|
@coderabbitai review |
Actions performedReview triggered.
|
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, codebase verification and nitpick comments (2)
ovos_config/meta.py (1)
Line range hint
94-105
: Move thedirname
function call within the function body.The static analysis tool Ruff has flagged a valid hint for the
set_default_config
function. It suggests not performing thedirname
function call in the argument defaults. Instead, it recommends moving the call within the function body or reading the default from a module-level singleton variable.To address this, consider applying the following change:
-def set_default_config(file_path=f"{dirname(__file__)}/mycroft.conf"): +def set_default_config(file_path=None): """ full path to default config file to be used NOTE: this is a full path, not a directory! "config_filename" parameter is not used here different derivative cores may change this file, this value is derived from ovos.conf NOTE: this value will be set globally, per core overrides in ovos.conf take precedence """ from ovos_utils.log import LOG + if file_path is None: + file_path = f"{dirname(__file__)}/mycroft.conf" + LOG.info(f"default config file changed to: {file_path}") os.environ["OVOS_DEFAULT_CONFIG"] = file_pathThis change moves the
dirname
function call within the function body, addressing the Ruff hint and improving the code quality.CHANGELOG.md (1)
100-100
: Fix the spelling of "blacklist".The word "blacklist" should be spelled as one word, not two.
-trying to black list a skill. throws error +trying to blacklist a skill. throws errorTools
LanguageTool
[uncategorized] ~100-~100: The verb “blacklist” is spelled as one word.
Context: ....0.13a17) Fixed bugs: - trying to black list a skill. throws error [#118](https://...(BLACK_LIST_COMPOUND)
Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files selected for processing (20)
- .github/dependabot.yml (1 hunks)
- .github/workflows/build_tests.yml (1 hunks)
- .github/workflows/install_tests.yml (2 hunks)
- .github/workflows/unit_tests.yml (2 hunks)
- .gitignore (1 hunks)
- CHANGELOG.md (1 hunks)
- LICENSE (1 hunks)
- ovos_config/main.py (5 hunks)
- ovos_config/config.py (8 hunks)
- ovos_config/locations.py (2 hunks)
- ovos_config/meta.py (6 hunks)
- ovos_config/models.py (5 hunks)
- ovos_config/mycroft.conf (13 hunks)
- ovos_config/utils.py (2 hunks)
- ovos_config/version.py (1 hunks)
- requirements/extras.txt (1 hunks)
- requirements/requirements.txt (1 hunks)
- requirements/tests.txt (1 hunks)
- test/unittests/test_configuration.py (1 hunks)
- test/unittests/test_locations.py (3 hunks)
Files skipped from review due to trivial changes (5)
- .github/dependabot.yml
- .gitignore
- LICENSE
- ovos_config/utils.py
- test/unittests/test_configuration.py
Additional context used
LanguageTool
requirements/tests.txt
[locale-violation] ~11-
11: 'bus' é un xenismo. É preferíbel dicir "faixa-bus"=0.0.8
Context: ...ugin-vosk>=0.1.3 python-vlc==1.1.2 ovos-bus-client(GL_BARBARISM_REPLACE)
CHANGELOG.md
[uncategorized] ~100-~100: The verb “blacklist” is spelled as one word.
Context: ....0.13a17) Fixed bugs: - trying to black list a skill. throws error [#118](https://...(BLACK_LIST_COMPOUND)
Ruff
ovos_config/meta.py
94-94: Do not perform function call
dirname
in argument defaults; instead, perform the call within the function, or read the default from a module-level singleton variable(B008)
Additional comments not posted (50)
requirements/extras.txt (1)
1-1
: Verify the compatibility of the updated dependency version.Ensure that the updated
ovos_backend_client
dependency version (< 0.2.0
) is compatible with the rest of the codebase and doesn't introduce any breaking changes.Run the following script to verify the compatibility:
requirements/requirements.txt (1)
3-3
: Verify compatibility with the updatedpython-dateutil
version.The version update of
python-dateutil
from~=2.6
to~=2.9
is approved. However, please ensure that:
- The code is compatible with the new version.
- All the tests pass after the version update.
Run the following script to verify compatibility:
ovos_config/version.py (2)
3-3
: LGTM!The change to
VERSION_MINOR
is consistent with the PR objective of introducing version 0.1.0. Incrementing the minor version suggests the addition of new features or enhancements that are backward-compatible.
4-4
: LGTM!Resetting the build number to
0
is a common practice when introducing a new minor version. It signifies a fresh start for the build cycle under the new minor version.requirements/tests.txt (2)
11-11
: LGTM!The
ovos-bus-client
dependency update looks good.Tools
LanguageTool
[locale-violation] ~11-
11: 'bus' é un xenismo. É preferíbel dicir "faixa-bus"=0.0.8
Context: ...ugin-vosk>=0.1.3 python-vlc==1.1.2 ovos-bus-client(GL_BARBARISM_REPLACE)
3-3
: Verify the compatibility of existing tests with the newpytest
version.The
pytest
version has been upgraded from5.2.4
to8.2.2
, which is a major version upgrade. Ensure that the existing tests are compatible with the new version and make necessary adjustments if required.Run the following script to verify the compatibility:
.github/workflows/build_tests.yml (1)
16-18
: LGTM! The comments provide a clear justification for ignoring the vulnerabilities.The changes to the
pipaudit_ignored
parameter are approved for the following reasons:
PYSEC-2023-228
is a pip vulnerability that only exists in the pipeline, so it can be safely ignored in this context.GHSA-9wx4-h78v-vm56
is an upstream issue that is considered problematic, but it cannot be fixed in this project. Ignoring it is a pragmatic decision until the issue is resolved upstream.The comments added to the configuration file provide valuable context for future maintainers, explaining the rationale behind ignoring these specific vulnerabilities.
.github/workflows/install_tests.yml (4)
14-14
: LGTM!The update to the
python-version
matrix looks good. It includes the latest Python version 3.11 and removes the older 3.7 version.
17-17
: LGTM!The update to the
actions/checkout
action version from v2 to v4 looks good. It ensures the workflow is using the latest version of the action.
19-19
: LGTM!The update to the
actions/setup-python
action version from v1 to v5 looks good. It ensures the workflow is using the latest version of the action.
22-22
: LGTM!The addition of the pip caching option looks good. It should help optimize the installation process by caching dependencies.
.github/workflows/unit_tests.yml (6)
7-15
: LGTM!The change from single quotes to double quotes for the
paths-ignore
patterns improves the uniformity of the YAML syntax without affecting the functionality.
37-37
: LGTM!Updating the Python version matrix to include newer versions 3.10 and 3.11 while removing the older 3.7 version is a good change. It ensures the project supports the latest Python versions and may enhance compatibility and performance.
40-40
: LGTM!Upgrading the
actions/checkout
action from version 2 to version 4 is a good change. It likely includes improvements and bug fixes from the action maintainers, which could lead to better performance and reliability of the CI/CD pipeline.
42-42
: LGTM!Upgrading the
actions/setup-python
action from version 2 to version 5 is a good change. It likely includes improvements and bug fixes from the action maintainers, which could lead to better performance and reliability of the CI/CD pipeline.
45-45
: LGTM!Setting the
cache
parameter to"pip"
is a good change. It enables caching of pip packages, which can speed up the workflow by reducing the time spent on installing dependencies.
66-66
: LGTM!Upgrading the
codecov/codecov-action
action from version 2 to version 4 is a good change. It likely includes improvements and bug fixes from the action maintainers, which could lead to better performance and reliability of the CI/CD pipeline.ovos_config/meta.py (4)
12-21
: LGTM!The changes to the
get_ovos_config
function enhance clarity and efficiency by promoting the use of environment variables for configuration management. The function has been simplified to return a dictionary containing environment variable values or defaults, which is a cleaner approach compared to the previous implementation.
23-28
: Deprecation Approved.The
save_ovos_config
function has been appropriately marked as deprecated, with a warning indicating that theovos.conf
file is no longer used. This change signals a transition away from the reliance on theovos.conf
file, which aligns with the overall shift towards a more environment-centric configuration strategy.
30-35
: Deprecation Approved.The
get_ovos_default_config_paths
function has been appropriately marked as deprecated, with a warning indicating that theovos.conf
file is no longer used. This change aligns with the overall shift towards a more environment-centric configuration strategy and the move away from the reliance on theovos.conf
file.
38-44
: Deprecation Approved.The
is_using_xdg
function has been appropriately marked as deprecated, with a warning indicating that XDG specs are always honored. This change reflects the simplification of the configuration process and the move towards a more consistent approach in honoring XDG specifications.test/unittests/test_locations.py (4)
58-63
: LGTM!The changes to the expected output of
get_config_locations
in the test case are approved. The updated paths reflect the changes in the configuration management logic.
69-73
: LGTM!The changes to the
test_globals
test method are approved. Setting the environment variable directly within the test and removing the mock formod_check
simplifies the test setup.
90-92
: LGTM!The addition of the
DISTRIBUTION_CONFIG
import is approved. It aligns with the changes made to the test method, where theOVOS_DISTRIBUTION_CONFIG
environment variable is set and asserted.
Line range hint
103-116
: LGTM!The additional assertions for testing the default config override are approved. These changes improve the test coverage and validate the behavior of the default config override using the
OVOS_DEFAULT_CONFIG
environment variable.ovos_config/locations.py (4)
58-59
: LGTM!The code changes are approved.
67-68
: LGTM!The code changes are approved.
74-75
: LGTM!The code changes are approved.
109-111
: LGTM!The code changes are approved.
ovos_config/models.py (5)
24-24
: LGTM!The import statement change is approved as it is necessary to support the new
OvosDistributionConfig
class.
99-99
: LGTM!The code change is approved as it provides a clear error message for the in-memory configuration scenario.
105-105
: LGTM!The code changes are approved as they enhance compatibility with various file formats by ensuring proper handling of character encodings when reading and writing files.
Also applies to: 138-138, 142-142
123-125
: LGTM!The code changes are approved as they improve the robustness of the reload logic by preventing potential errors when
_last_loaded
isNone
.
188-190
: LGTM!The new
OvosDistributionConfig
class is approved as it enhances the overall functionality by providing a structured way to handle distribution configurations separately from user and system configurations.ovos_config/__main__.py (4)
163-163
: LGTM!The change to use the list comprehension directly instead of wrapping it with
len()
is more concise and efficient.
257-257
: LGTM!Stripping leading slashes from the
key
parameter is a good practice to normalize the key format and avoid potential issues.
279-279
: LGTM!The simplification of the error message improves readability while preserving the content.
296-297
: Clarify the purpose of initializing_value
toNone
and any potential impact of defininglocal_conf
earlier.
- What is the reason for initializing
_value
toNone
? Is it used later in the function?- Are there any potential side effects or changes in behavior by defining
local_conf
earlier in the function?ovos_config/config.py (4)
20-21
: LGTM!The code changes are approved.
45-45
: LGTM!The code changes are approved.
161-169
: LGTM!The code changes are approved.
186-186
: LGTM!The code changes are approved.
Also applies to: 277-278, 294-295
ovos_config/mycroft.conf (8)
127-137
: LGTM!The new "utterance_transformers" section looks good. The included plugins provide useful functionality for normalizing and correcting utterances between the STT and Intent stages.
139-141
: LGTM!The empty "metadata_transformers" section has been added as a placeholder for future plugins. No issues found.
145-179
: LGTM!The expanded "intents" section provides more granular control over the intent pipelines. The confidence thresholds and other parameters seem reasonable. No issues found.
182-205
: LGTM!The updated "OCP" section provides more control over the media request handling. The parameters seem reasonable and are well documented. No issues found.
Line range hint
454-564
: LGTM!The updated "listener" section streamlines the configuration. Enabling "instant_listen" improves the user experience by skipping checks after the wake word is recognized. No issues found.
Line range hint
592-630
: LGTM!The expanded "hotwords" section provides a robust fallback mechanism for hotword detection. Multiple detection engines are configured in a fallback chain, ensuring reliable hotword activation. No issues found.
641-649
: LGTM!The updated "gui" section configures the idle display skill and enables homescreen support in the generic GUI extension. No issues found.
Line range hint
754-805
: LGTM!The updated "Audio" section provides a smooth migration path to ovos-media by enabling the old audio service and configuring the default backend. The legacy OCP configuration and volume settings for VLC and MPV seem reasonable. No issues found.
Changelog
V0.0.13a27 (2024-08-16)
Full Changelog
Breaking changes:
V0.0.13a26 (2024-08-05)
Full Changelog
Merged pull requests:
V0.0.13a25 (2024-08-03)
Full Changelog
Merged pull requests:
V0.0.13a24 (2024-07-17)
Full Changelog
Merged pull requests:
V0.0.13a23 (2024-07-11)
Full Changelog
Merged pull requests:
V0.0.13a22 (2024-06-25)
Full Changelog
Fixed bugs:
V0.0.13a21 (2024-06-22)
Full Changelog
Implemented enhancements:
V0.0.13a20 (2024-06-22)
Full Changelog
Fixed bugs:
Merged pull requests:
V0.0.13a19 (2024-06-18)
Full Changelog
Fixed bugs:
ovos-config set
doesn't take the path syntax thatovos-config get
outputs #73Closed issues:
V0.0.13a18 (2024-06-11)
Full Changelog
Implemented enhancements:
V0.0.13a17 (2024-06-08)
Full Changelog
Fixed bugs:
V0.0.13a16 (2024-06-06)
Full Changelog
Merged pull requests:
V0.0.13a15 (2024-06-06)
Full Changelog
Fixed bugs:
V0.0.13a14 (2024-06-04)
Full Changelog
Merged pull requests:
V0.0.13a13 (2024-05-30)
Full Changelog
Merged pull requests:
V0.0.13a12 (2024-02-26)
Full Changelog
V0.0.13a11 (2024-02-26)
Full Changelog
Merged pull requests:
V0.0.13a10 (2024-02-26)
Full Changelog
Merged pull requests:
V0.0.13a9 (2024-02-26)
Full Changelog
Implemented enhancements:
Merged pull requests:
V0.0.13a8 (2024-02-24)
Full Changelog
Merged pull requests:
V0.0.13a7 (2024-02-07)
Full Changelog
Fixed bugs:
V0.0.13a6 (2024-01-23)
Full Changelog
Merged pull requests:
V0.0.13a5 (2024-01-23)
Full Changelog
Implemented enhancements:
V0.0.13a4 (2024-01-23)
Full Changelog
V0.0.13a3 (2024-01-23)
Full Changelog
Implemented enhancements:
Merged pull requests:
V0.0.13a2 (2024-01-19)
Full Changelog
Implemented enhancements:
Closed issues:
V0.0.13a1 (2023-12-29)
Full Changelog
Merged pull requests:
* This Changelog was automatically generated by github_changelog_generator
Summary by CodeRabbit
New Features
Bug Fixes
Documentation
Chores