Skip to content

Commit fe9b806

Browse files
authored
Merge pull request #342 from OpenVoiceOS/release-2.1.0a1
Release 2.1.0a1
2 parents 45f2144 + 5f71682 commit fe9b806

File tree

12 files changed

+866
-644
lines changed

12 files changed

+866
-644
lines changed

.github/workflows/release_workflow.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
name: Release Alpha and Propose Stable
22

33
on:
4+
workflow_dispatch:
45
pull_request:
56
types: [closed]
67
branches: [dev]
78

89
jobs:
910
publish_alpha:
10-
if: github.event.pull_request.merged == true
1111
uses: TigreGotico/gh-automations/.github/workflows/publish-alpha.yml@master
1212
secrets: inherit
1313
with:

CHANGELOG.md

Lines changed: 53 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,62 @@
11
# Changelog
22

3-
## [1.0.3a1](https://github.com/OpenVoiceOS/ovos-plugin-manager/tree/1.0.3a1) (2025-06-10)
3+
## [2.1.0a1](https://github.com/OpenVoiceOS/ovos-plugin-manager/tree/2.1.0a1) (2025-11-04)
44

5-
[Full Changelog](https://github.com/OpenVoiceOS/ovos-plugin-manager/compare/1.0.2...1.0.3a1)
5+
[Full Changelog](https://github.com/OpenVoiceOS/ovos-plugin-manager/compare/2.0.1a1...2.1.0a1)
66

77
**Merged pull requests:**
88

9-
- refactor: simplify pipeline factory, missed in previous PR [\#327](https://github.com/OpenVoiceOS/ovos-plugin-manager/pull/327) ([JarbasAl](https://github.com/JarbasAl))
9+
- feat: ww verifier [\#341](https://github.com/OpenVoiceOS/ovos-plugin-manager/pull/341) ([JarbasAl](https://github.com/JarbasAl))
10+
11+
## [2.0.1a1](https://github.com/OpenVoiceOS/ovos-plugin-manager/tree/2.0.1a1) (2025-10-07)
12+
13+
[Full Changelog](https://github.com/OpenVoiceOS/ovos-plugin-manager/compare/2.0.0a2...2.0.1a1)
14+
15+
**Fixed bugs:**
16+
17+
- Latest git tag is invalid [\#235](https://github.com/OpenVoiceOS/ovos-plugin-manager/issues/235)
18+
19+
**Closed issues:**
20+
21+
- \[BUG\] TTS template checks for backwards-incompatible property [\#304](https://github.com/OpenVoiceOS/ovos-plugin-manager/issues/304)
22+
- make available\_languages a classproperty [\#269](https://github.com/OpenVoiceOS/ovos-plugin-manager/issues/269)
23+
24+
**Merged pull requests:**
25+
26+
- fix: let ovos-audio know the actual text associated with each audio c… [\#338](https://github.com/OpenVoiceOS/ovos-plugin-manager/pull/338) ([JarbasAl](https://github.com/JarbasAl))
27+
28+
## [2.0.0a2](https://github.com/OpenVoiceOS/ovos-plugin-manager/tree/2.0.0a2) (2025-07-22)
29+
30+
[Full Changelog](https://github.com/OpenVoiceOS/ovos-plugin-manager/compare/2.0.0a1...2.0.0a2)
31+
32+
**Merged pull requests:**
33+
34+
- Update requests requirement from ~=2.26 to ~=2.32 in /requirements [\#330](https://github.com/OpenVoiceOS/ovos-plugin-manager/pull/330) ([dependabot[bot]](https://github.com/apps/dependabot))
35+
36+
## [2.0.0a1](https://github.com/OpenVoiceOS/ovos-plugin-manager/tree/2.0.0a1) (2025-07-22)
37+
38+
[Full Changelog](https://github.com/OpenVoiceOS/ovos-plugin-manager/compare/1.0.4a2...2.0.0a1)
39+
40+
**Breaking changes:**
41+
42+
- feat!: add collections and batch operations support to embeddings plu… [\#333](https://github.com/OpenVoiceOS/ovos-plugin-manager/pull/333) ([JarbasAl](https://github.com/JarbasAl))
43+
44+
## [1.0.4a2](https://github.com/OpenVoiceOS/ovos-plugin-manager/tree/1.0.4a2) (2025-07-22)
45+
46+
[Full Changelog](https://github.com/OpenVoiceOS/ovos-plugin-manager/compare/1.0.4a3...1.0.4a2)
47+
48+
## [1.0.4a3](https://github.com/OpenVoiceOS/ovos-plugin-manager/tree/1.0.4a3) (2025-07-22)
49+
50+
[Full Changelog](https://github.com/OpenVoiceOS/ovos-plugin-manager/compare/1.0.4a1...1.0.4a3)
51+
52+
**Merged pull requests:**
53+
54+
- Update langcodes requirement from ~=3.3.0 to ~=3.5.0 in /requirements [\#332](https://github.com/OpenVoiceOS/ovos-plugin-manager/pull/332) ([dependabot[bot]](https://github.com/apps/dependabot))
55+
- Update combo-lock requirement from ~=0.2 to ~=0.3 in /requirements [\#331](https://github.com/OpenVoiceOS/ovos-plugin-manager/pull/331) ([dependabot[bot]](https://github.com/apps/dependabot))
56+
57+
## [1.0.4a1](https://github.com/OpenVoiceOS/ovos-plugin-manager/tree/1.0.4a1) (2025-06-18)
58+
59+
[Full Changelog](https://github.com/OpenVoiceOS/ovos-plugin-manager/compare/1.0.3...1.0.4a1)
1060

1161

1262

downstream_report.txt

Lines changed: 101 additions & 114 deletions
Large diffs are not rendered by default.

ovos_plugin_manager/embeddings.py

Lines changed: 74 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,78 +1,126 @@
1-
from ovos_plugin_manager.templates.embeddings import EmbeddingsDB, TextEmbeddingsStore, FaceEmbeddingsStore, VoiceEmbeddingsStore
1+
from ovos_plugin_manager.templates.embeddings import EmbeddingsDB, ImageEmbedder, TextEmbedder, VoiceEmbedder, FaceEmbedder
22
from ovos_plugin_manager.utils import PluginTypes
33

44

5-
def find_embeddings_plugins() -> dict:
5+
def find_embeddings_db_plugins() -> dict:
66
"""
7-
Find all installed plugins
8-
@return: dict plugin names to entrypoints
7+
Discover all installed general embeddings database plugins.
8+
9+
Returns:
10+
dict: A mapping of plugin names to their entrypoints for general embeddings database plugins.
911
"""
1012
from ovos_plugin_manager.utils import find_plugins
1113
return find_plugins(PluginTypes.EMBEDDINGS)
1214

1315

14-
def load_embeddings_plugin(module_name: str) -> type(EmbeddingsDB):
16+
def load_embeddings_db_plugin(module_name: str) -> type(EmbeddingsDB):
1517
"""
16-
Get an uninstantiated class for the requested module_name
17-
@param module_name: Plugin entrypoint name to load
18-
@return: Uninstantiated class
18+
Load and return the uninstantiated class of a general embeddings database plugin by its module name.
19+
20+
Parameters:
21+
module_name (str): The entrypoint name of the embeddings database plugin to load.
22+
23+
Returns:
24+
type(EmbeddingsDB): The plugin class corresponding to the specified module name.
1925
"""
2026
from ovos_plugin_manager.utils import load_plugin
2127
return load_plugin(module_name, PluginTypes.EMBEDDINGS)
2228

2329

2430
def find_voice_embeddings_plugins() -> dict:
2531
"""
26-
Find all installed plugins
27-
@return: dict plugin names to entrypoints
32+
Discover all installed voice embeddings plugins.
33+
34+
Returns:
35+
dict: A mapping of plugin names to their entrypoints for available voice embeddings plugins.
2836
"""
2937
from ovos_plugin_manager.utils import find_plugins
3038
return find_plugins(PluginTypes.VOICE_EMBEDDINGS)
3139

3240

33-
def load_voice_embeddings_plugin(module_name: str) -> type(VoiceEmbeddingsStore):
41+
def load_voice_embeddings_plugin(module_name: str) -> type(VoiceEmbedder):
3442
"""
35-
Get an uninstantiated class for the requested module_name
36-
@param module_name: Plugin entrypoint name to load
37-
@return: Uninstantiated class
43+
Load and return the uninstantiated class of a voice embeddings plugin by its module name.
44+
45+
Parameters:
46+
module_name (str): The entrypoint name of the voice embeddings plugin to load.
47+
48+
Returns:
49+
type(VoiceEmbedder): The uninstantiated class of the specified voice embeddings plugin.
3850
"""
3951
from ovos_plugin_manager.utils import load_plugin
4052
return load_plugin(module_name, PluginTypes.VOICE_EMBEDDINGS)
4153

4254

55+
def find_image_embeddings_plugins() -> dict:
56+
"""
57+
Discover all installed image embeddings plugins.
58+
59+
Returns:
60+
dict: A mapping of plugin names to their entrypoints for image embeddings plugins.
61+
"""
62+
from ovos_plugin_manager.utils import find_plugins
63+
return find_plugins(PluginTypes.IMAGE_EMBEDDINGS)
64+
65+
66+
def load_image_embeddings_plugin(module_name: str) -> type(ImageEmbedder):
67+
"""
68+
Load and return the uninstantiated class of an image embeddings plugin specified by its module name.
69+
70+
Parameters:
71+
module_name (str): The entrypoint name of the image embeddings plugin to load.
72+
73+
Returns:
74+
type(ImageEmbedder): The uninstantiated class of the requested image embeddings plugin.
75+
"""
76+
from ovos_plugin_manager.utils import load_plugin
77+
return load_plugin(module_name, PluginTypes.IMAGE_EMBEDDINGS)
78+
4379
def find_face_embeddings_plugins() -> dict:
4480
"""
45-
Find all installed plugins
46-
@return: dict plugin names to entrypoints
81+
Find all installed face embeddings plugins.
82+
83+
Returns:
84+
dict: A mapping of plugin names to their entrypoints for face embeddings plugins.
4785
"""
4886
from ovos_plugin_manager.utils import find_plugins
4987
return find_plugins(PluginTypes.FACE_EMBEDDINGS)
5088

5189

52-
def load_face_embeddings_plugin(module_name: str) -> type(FaceEmbeddingsStore):
90+
def load_face_embeddings_plugin(module_name: str) -> type(FaceEmbedder):
5391
"""
54-
Get an uninstantiated class for the requested module_name
55-
@param module_name: Plugin entrypoint name to load
56-
@return: Uninstantiated class
92+
Load and return the uninstantiated class of a face embeddings plugin by its module name.
93+
94+
Parameters:
95+
module_name (str): The entrypoint name of the face embeddings plugin to load.
96+
97+
Returns:
98+
type(FaceEmbedder): The uninstantiated class of the specified face embeddings plugin.
5799
"""
58100
from ovos_plugin_manager.utils import load_plugin
59101
return load_plugin(module_name, PluginTypes.FACE_EMBEDDINGS)
60102

61103

62104
def find_text_embeddings_plugins() -> dict:
63105
"""
64-
Find all installed plugins
65-
@return: dict plugin names to entrypoints
106+
Discover all installed text embeddings plugins.
107+
108+
Returns:
109+
dict: A mapping of plugin names to their entrypoints for text embeddings plugins.
66110
"""
67111
from ovos_plugin_manager.utils import find_plugins
68112
return find_plugins(PluginTypes.TEXT_EMBEDDINGS)
69113

70114

71-
def load_text_embeddings_plugin(module_name: str) -> type(TextEmbeddingsStore):
115+
def load_text_embeddings_plugin(module_name: str) -> type(TextEmbedder):
72116
"""
73-
Get an uninstantiated class for the requested module_name
74-
@param module_name: Plugin entrypoint name to load
75-
@return: Uninstantiated class
117+
Load and return the uninstantiated class of a text embeddings plugin specified by its module name.
118+
119+
Parameters:
120+
module_name (str): The entrypoint name of the text embeddings plugin to load.
121+
122+
Returns:
123+
type(TextEmbedder): The uninstantiated class of the specified text embeddings plugin.
76124
"""
77125
from ovos_plugin_manager.utils import load_plugin
78126
return load_plugin(module_name, PluginTypes.TEXT_EMBEDDINGS)

0 commit comments

Comments
 (0)