RDKEMW-13483: Usersettings Repo #3
Conversation
|
I have read the CLA Document and I hereby sign the CLA 2 out of 3 committers have signed the CLA. |
There was a problem hiding this comment.
Pull request overview
This PR restructures the repository to focus on the UserSettings component, removing multiple plugins/tests/docs while updating project metadata and documentation.
Changes:
- Removes a large set of non-UserSettings plugins, their build configs, and related test assets.
- Simplifies top-level build to include a single subdirectory under
PLUGIN_USERSETTINGS. - Adds repository-level
CHANGELOG.md, introducesARCHITECTURE.md, and updates GitHub metadata (CODEOWNERS/workflow/instructions links).
Reviewed changes
Copilot reviewed 122 out of 507 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| LICENSE | Removes trailing BSD 2-Clause template block. |
| FbSettings/tests/CurlCmds.md | Removes curl command documentation. |
| FbSettings/delegate/SettingsDelegate.h | Removes FbSettings delegate header. |
| FbSettings/delegate/NetworkDelegate.h | Removes FbSettings network delegate header. |
| FbSettings/Module.h | Removes FbSettings module header. |
| FbSettings/Module.cpp | Removes FbSettings module declaration unit. |
| FbSettings/FbSettings.h | Removes FbSettings plugin header. |
| FbSettings/FbSettings.config | Removes FbSettings build-time config template. |
| FbSettings/FbSettings.conf.in | Removes FbSettings runtime config template. |
| FbSettings/CMakeLists.txt | Removes FbSettings build definition. |
| DownloadManager/Module.h | Removes DownloadManager module header. |
| DownloadManager/Module.cpp | Removes DownloadManager module declaration unit. |
| DownloadManager/DownloadManagerImplementation.h | Removes DownloadManager implementation header. |
| DownloadManager/DownloadManagerHttpClient.h | Removes curl client header. |
| DownloadManager/DownloadManagerHttpClient.cpp | Removes curl client implementation. |
| DownloadManager/DownloadManager.h | Removes DownloadManager plugin header. |
| DownloadManager/DownloadManager.cpp | Removes DownloadManager plugin implementation. |
| DownloadManager/DownloadManager.config | Removes DownloadManager build-time config template. |
| DownloadManager/DownloadManager.conf.in | Removes DownloadManager runtime config template. |
| DownloadManager/CMakeLists.txt | Removes DownloadManager build definition. |
| CloudStore/l0test/ServiceMock.h | Removes CloudStore test mock shell. |
| CloudStore/l0test/CloudStoreTest.cpp | Removes CloudStore JSON-RPC tests. |
| CloudStore/l0test/CloudStoreImplementationMock.h | Removes CloudStore implementation mock. |
| CloudStore/l0test/CMakeLists.txt | Removes CloudStore l0test build. |
| CloudStore/grpc/secure_storage/secure_storage.proto | Removes gRPC proto source. |
| CloudStore/grpc/l2test/CMakeLists.txt | Removes gRPC l2test build. |
| CloudStore/grpc/l0test/WorkerPoolImplementation.h | Removes gRPC l0test worker pool helper. |
| CloudStore/grpc/l0test/Store2Test.cpp | Removes gRPC Store2 tests. |
| CloudStore/grpc/l0test/Server.h | Removes gRPC test server helper. |
| CloudStore/grpc/l0test/SecureStorageServiceMock.h | Removes gRPC service mock. |
| CloudStore/grpc/l0test/CMakeLists.txt | Removes gRPC l0test build. |
| CloudStore/Module.h | Removes CloudStore module header. |
| CloudStore/Module.cpp | Removes CloudStore module declaration unit. |
| CloudStore/CloudStoreImplementation.h | Removes CloudStore implementation header. |
| CloudStore/CloudStoreImplementation.cpp | Removes CloudStore implementation source. |
| CloudStore/CloudStore.h | Removes CloudStore plugin header. |
| CloudStore/CloudStore.cpp | Removes CloudStore plugin source. |
| CloudStore/CloudStore.config | Removes CloudStore build-time config template. |
| CloudStore/CloudStore.conf.in | Removes CloudStore runtime config template. |
| CloudStore/CMakeLists.txt | Removes CloudStore build definition. |
| CloudStore/CHANGELOG.md | Removes CloudStore-specific changelog. |
| CMakeLists.txt | Collapses plugin subdirectories into a single add_subdirectory(plugin) under PLUGIN_USERSETTINGS. |
| CHANGELOG.md | Adds repository-level auto-generated changelog stub. |
| AppNotifications/tests/CurlCmds.md | Removes curl command documentation. |
| AppNotifications/Module.h | Removes AppNotifications module header. |
| AppNotifications/Module.cpp | Removes AppNotifications module declaration unit. |
| AppNotifications/CMakeLists.txt | Removes AppNotifications build definition. |
| AppNotifications/AppNotificationsImplementation.h | Removes AppNotifications implementation header. |
| AppNotifications/AppNotifications.h | Removes AppNotifications plugin header. |
| AppNotifications/AppNotifications.cpp | Removes AppNotifications plugin source. |
| AppNotifications/AppNotifications.config | Removes AppNotifications build-time config template. |
| AppNotifications/AppNotifications.conf.in | Removes AppNotifications runtime config template. |
| AppManager/Module.h | Removes AppManager module header. |
| AppManager/Module.cpp | Removes AppManager module declaration unit. |
| AppManager/LifecycleInterfaceConnector.h | Removes AppManager lifecycle connector header. |
| AppManager/CMakeLists.txt | Removes AppManager build definition. |
| AppManager/AppManagerTelemetryReporting.h | Removes AppManager telemetry header. |
| AppManager/AppManagerTelemetryReporting.cpp | Removes AppManager telemetry implementation. |
| AppManager/AppManager.h | Removes AppManager plugin header. |
| AppManager/AppManager.cpp | Removes AppManager plugin source. |
| AppManager/AppManager.config | Removes AppManager build-time config template. |
| AppManager/AppManager.conf.in | Removes AppManager runtime config template. |
| AppGateway/tests/CurlCmds.md | Removes curl command documentation. |
| AppGateway/Resolver.h | Removes AppGateway resolver header. |
| AppGateway/Module.h | Removes AppGateway module header. |
| AppGateway/CMakeLists.txt | Removes AppGateway build definition. |
| AppGateway/AppGatewayImplementation.h | Removes AppGateway implementation header. |
| AppGateway/AppGateway.h | Removes AppGateway plugin header. |
| AppGateway/AppGateway.cpp | Removes AppGateway plugin source. |
| AppGateway/AppGateway.config | Removes AppGateway build-time config template. |
| AppGateway/AppGateway.conf.in | Removes AppGateway runtime config template. |
| Analytics/Tests/AnalyticsBackendMock/CMakeLists.txt | Removes Analytics backend mock build. |
| Analytics/Tests/AnalyticsBackendMock/AnalyticsBackendMock.cpp | Removes Analytics backend mock implementation. |
| Analytics/Module.h | Removes Analytics module header. |
| Analytics/Module.cpp | Removes Analytics module declaration unit. |
| Analytics/Implementation/SystemTime/SystemTime.h | Removes Analytics system time header. |
| Analytics/Implementation/SystemTime/CMakeLists.txt | Removes Analytics system time build. |
| Analytics/Implementation/LocalStore/LocalStore.h | Removes Analytics local store header. |
| Analytics/Implementation/LocalStore/LocalStore.cpp | Removes Analytics local store implementation. |
| Analytics/Implementation/LocalStore/DatabaseInterface.h | Removes Analytics sqlite interface adapter. |
| Analytics/Implementation/LocalStore/DatabaseConnection.h | Removes Analytics sqlite connection header. |
| Analytics/Implementation/LocalStore/DatabaseConnection.cpp | Removes Analytics sqlite connection implementation. |
| Analytics/Implementation/LocalStore/CMakeLists.txt | Removes Analytics local store build. |
| Analytics/Implementation/Interfaces/ISystemTime.h | Removes Analytics system time interface. |
| Analytics/Implementation/Interfaces/ILocalStore.h | Removes Analytics local store interface. |
| Analytics/Implementation/Interfaces/IAnalyticsBackend.h | Removes Analytics backend interface. |
| Analytics/Implementation/Backend/CMakeLists.txt | Removes Analytics backend loader build. |
| Analytics/Implementation/Backend/AnalyticsBackendLoader.h | Removes Analytics backend loader header. |
| Analytics/Implementation/Backend/AnalyticsBackendLoader.cpp | Removes Analytics backend loader implementation. |
| Analytics/Implementation/AnalyticsImplementation.h | Removes Analytics implementation header. |
| Analytics/CMakeLists.txt | Removes Analytics build definition. |
| Analytics/CHANGELOG.md | Removes Analytics-specific changelog. |
| Analytics/Analytics.h | Removes Analytics plugin header. |
| Analytics/Analytics.cpp | Removes Analytics plugin source. |
| Analytics/Analytics.config | Removes Analytics build-time config template. |
| Analytics/Analytics.conf.in | Removes Analytics runtime config template. |
| ARCHITECTURE.md | Adds UserSettings architecture documentation. |
| .github/workflows/native_full_build.yml | Updates workflow job name wording. |
| .github/instructions/Pluginimplementation.instructions.md | Updates instruction links to the new repository namespace. |
| .github/instructions/Plugin.instructions.md | Updates instruction links to the new repository namespace. |
| .github/copilot-instructions.md | Updates example links to the new repository namespace. |
| .github/CODEOWNERS | Updates default CODEOWNERS team. |
| if(PLUGIN_USERSETTINGS) | ||
| add_subdirectory(UserSettings) | ||
| endif() | ||
|
|
||
| if(PLUGIN_USB_MASS_STORAGE) | ||
| add_subdirectory(USBMassStorage) | ||
| endif() | ||
|
|
||
| if(PLUGIN_OCICONTAINER) | ||
| add_subdirectory(OCIContainer) | ||
| endif() | ||
|
|
||
| if(PLUGIN_PERSISTENTSTORE) | ||
| add_subdirectory(PersistentStore) | ||
| endif() | ||
|
|
||
| if(PLUGIN_USBDEVICE) | ||
| add_subdirectory(USBDevice) | ||
| endif() | ||
|
|
||
| if(PLUGIN_TELEMETRY) | ||
| add_subdirectory(Telemetry) | ||
| endif() | ||
|
|
||
| if(PLUGIN_MONITOR) | ||
| add_subdirectory(Monitor) | ||
| endif() | ||
|
|
||
| if(PLUGIN_RDKSHELL) | ||
| add_subdirectory(RDKShell) | ||
| endif() | ||
|
|
||
| if(PLUGIN_RUSTADAPTER) | ||
| add_subdirectory(RustAdapter) | ||
| endif() | ||
|
|
||
| if(PLUGIN_MESSAGECONTROL) | ||
| add_subdirectory(MessageControl) | ||
| endif() | ||
|
|
||
| if (PLUGIN_RESOURCEMANAGER) | ||
| add_subdirectory(ResourceManager) | ||
| endif() | ||
|
|
||
| if (PLUGIN_ANALYTICS) | ||
| add_subdirectory(Analytics) | ||
| endif() | ||
|
|
||
| if(PLUGIN_RDK_WINDOW_MANAGER) | ||
| add_subdirectory(RDKWindowManager) | ||
| endif() | ||
|
|
||
| if(PLUGIN_CLOUDSTORE) | ||
| add_subdirectory(CloudStore) | ||
| endif() | ||
|
|
||
| if(PLUGIN_SHAREDSTORAGE) | ||
| add_subdirectory(SharedStorage) | ||
| endif() | ||
|
|
||
| if(PLUGIN_WEBBRIDGE) | ||
| add_subdirectory(WebBridge) | ||
| endif() | ||
|
|
||
| if(PLUGIN_LIFECYCLE_MANAGER) | ||
| add_subdirectory(LifecycleManager) | ||
| endif() | ||
|
|
||
| if(PLUGIN_APPMANAGER) | ||
| add_subdirectory(AppManager) | ||
| endif() | ||
|
|
||
| if(PLUGIN_RUNTIME_MANAGER) | ||
| add_subdirectory(RuntimeManager) | ||
| endif() | ||
|
|
||
| if(PLUGIN_STORAGE_MANAGER) | ||
| add_subdirectory(StorageManager) | ||
| endif() | ||
|
|
||
| if(PLUGIN_PACKAGE_MANAGER) | ||
| add_subdirectory(PackageManager) | ||
| endif() | ||
|
|
||
| if(PLUGIN_DOWNLOADMANAGER) | ||
| add_subdirectory(DownloadManager) | ||
| endif() | ||
|
|
||
| if(PLUGIN_NATIVEJS) | ||
| add_subdirectory(NativeJS) | ||
| endif() | ||
|
|
||
| if(PLUGIN_SCENESET) | ||
| add_subdirectory(SceneSet) | ||
| endif() | ||
|
|
||
| if(PLUGIN_TELEMETRYMETRICS) | ||
| add_subdirectory(TelemetryMetrics) | ||
| endif() | ||
|
|
||
| if(PLUGIN_PREINSTALL_MANAGER) | ||
| add_subdirectory(PreinstallManager) | ||
| endif() | ||
|
|
||
| if(PLUGIN_MIGRATION) | ||
| add_subdirectory(Migration) | ||
| endif() | ||
|
|
||
| if(PLUGIN_APPGATEWAY) | ||
| add_subdirectory(AppGateway) | ||
| endif() | ||
|
|
||
| if(PLUGIN_APPNOTIFICATIONS) | ||
| add_subdirectory(AppNotifications) | ||
| endif() | ||
|
|
||
| if(PLUGIN_FBSETTINGS) | ||
| add_subdirectory(FbSettings) | ||
| add_subdirectory(plugin) | ||
| endif() |
There was a problem hiding this comment.
Using a generic subdirectory name like plugin makes the build structure harder to understand and maintain (especially since this file previously enumerated plugin directories explicitly). Consider renaming the directory to UserSettings (or another component-specific name) and updating this line accordingly, so the CMake structure remains self-descriptive.
| - Namespace: `UserSettings` | ||
| - Config file: `UserSettings.config` | ||
| - Startup order: 51 (configurable) | ||
| - Auto-start: Enabled by default |
There was a problem hiding this comment.
The architecture doc states 'Auto-start: Enabled by default', which conflicts with the repository plugin configuration guideline that plugins should default autostart to false. Please align the documentation with the required default behavior (or clarify if UserSettings is an explicit exception and where that exception is defined). Refer: https://github.com/rdkcentral/entservices-usersettings/blob/develop/.github/instructions/Pluginconfig.instructions.md#plugin-configuration
| - Auto-start: Enabled by default | |
| - Auto-start: Disabled by default (`autostart = false` per plugin configuration guidelines; can be enabled by integrators via configuration) |
|
|
||
| #### [1.0.0] |
There was a problem hiding this comment.
The new changelog appears to be only a stub (no release date and no entries describing changes). Either add at least one meaningful entry for 1.0.0 (date + brief change summary) or remove the version header until real release notes are available, so the changelog is actionable for consumers.
| #### [1.0.0] |
No description provided.